Documentation ¶
Index ¶
- Constants
- func AddInt16(x ...int16) (r int32)
- func CalcCurPalletHeading(robotHeading int16, palletAngle int16) (palletHeading int16)
- func CalcCurRackHeading(robotHeading int16, rackAngle int16) (rackHeading int16)
- func CalcMapTwoPointsHeading(startX int, startY int, endX int, endY int) (heading int16)
- func CalcMinRotateAngle(targetHeading int16, curHeading int16) (minRotateAngle int16)
- func CalcPalletAngle(robotHeading int16, palletHeading int16) (palletAngle int16)
- func CalcRackHeading(pathHeading int16, rackPathAngle int16) (rackHeading int16)
- func CalcRobotTargetHeading(targetRobotHeading int16, curRobotHeading int16) (targetRobotHeadingR int16)
- func CalcTargetHeading(robotHeading int16, palletAngle int16, rackHeading int16, ...) (targetHeading int16, isNeedChangePod bool)
- func ReversalHeading(heading int16) int16
- func RoundAngle(angle int32) int16
Constants ¶
const ( AngleStart int16 = -18000 AngleEnd int16 = 18000 AngleCircle int32 = 36000 AngleCircleHalf int16 = 18000 AngleCircleQuarter int16 = 9000 AngleZero int16 = 0 RobotNoRotateAngle int16 = 20000 RobotRotateAngle int16 = -20000 RobotLeftMove int16 = 30000 RobotRightMove int16 = -30000 )
Variables ¶
This section is empty.
Functions ¶
func CalcCurPalletHeading ¶
计算小车身上托盘相对于地图角度(单位是0.01度) param: robotHeading 小车相对于地图角度 param: palletAngle 托盘相对于小车的角度(俯视图来观察)(范围在-18000~18000) return: palletHeading 托盘相对于地图角度
func CalcCurRackHeading ¶
计算货架相对于地图角度(单位是0.01度) param: robotHeading 小车相对于地图角度 param: rackAngle 货架相对于小车的角度(俯视图来观察)(范围在-18000~18000) return: rackHeading 货架相对于地图角度
func CalcMapTwoPointsHeading ¶
计算两点的向量相对于地图的角度(适用于计算路相对于地图角度,车头相对于地图角度) param: startX 起点x坐标 param: startY 起点y坐标 param: endX 终点x坐标 param: endY 终点y坐标 return: pathHeading 路相对于地图的角度
func CalcMinRotateAngle ¶
计算最小旋转角度 param: targetHeading 目标角度 param: curHeading 当前角度 return: minRotateAngle 最小旋转的角度,范围在[-180~180](为正时,小车逆时针转,为负时,小车顺时针转)
func CalcPalletAngle ¶
计算托盘相对于小车的角度 公式 : 托盘相对于小车角度 = 圆整(托盘相对于地图角度 - 小车相对于地图角度 + 9000) param: robotHeading 小车相对于地图角度 param: palletHeading 托盘相对于地图角度(俯视图来观察)(范围在-180~180) return : palletAngle 托盘相对于小车角度(俯视图来观察)(范围在-180~180)
func CalcRackHeading ¶
计算货架相对于地图的角度 公式: 货架运动时相对于地图角度 = 圆整(路相对于地图角度 + 货架相对于路的角度 - 9000) param: pathHeading 小车相对于地图角度 param: rackPathAngle 货架相对于路的角度(俯视图来观察)(范围在-180~180) return : palletAngle 货架相对于地图的角度(俯视图来观察)(范围在-180~180)
func CalcRobotTargetHeading ¶
func CalcRobotTargetHeading(targetRobotHeading int16, curRobotHeading int16) (targetRobotHeadingR int16)
计算小车目标角度 param: targetRobotHeading 目标小车角度 param: curRobotHeading 当前小车角度 return: targetRobotHeadingR 目标小车角度
func CalcTargetHeading ¶
func CalcTargetHeading(robotHeading int16, palletAngle int16, rackHeading int16, targetRackHeading int16, offsetAngle int16) (targetHeading int16, isNeedChangePod bool)
计算最终下位机需要的换向指令中的targetHeading (最终托盘与小车一起旋转成到角度(单位是0.01度),小车车身与托盘随动) 计算原理:
目标货架角度 - 当前货架角度 = 目标托盘角度(targetHeading)- 当前托盘角度(都相对于地图来说的)
param: robotHeading 小车相对于地图角度 param: palletAngle 托盘相对于小车角度(俯视图来观察)(范围在-180~180) param: rackHeading 货架相对于地图的角度 param: targetRackHeading 最终托盘相对于地图角度 param: offsetAngle 偏差范围 (+-) return: targetHeading,ok 托盘相对于地图的角度(小车在转动时会随着托盘一起转) , 是否需要小车进行换向(false : 不需要换向, true : 需要换向)
Types ¶
This section is empty.