跳转到内容

任务下发接口

通信地址:192.168.1.106:30000

机器人收到导航任务请求后,将先执行导航任务(成功/失败/取消),然后返回携带执行结果的响应消息。使用该协议下发导航任务时,机器人会自动切换到导航模式,无需手动操作。

C++ SDK 与示例代码:DeepRoboticsLab/robotserver_sdk

<?xml version="1.0" encoding="UTF-8"?>
<PatrolDevice>
<Type>1003</Type>
<Command>1</Command>
<Time>2023-01-01 00:00:00</Time>
<Items>
<Value>100</Value><MapID>1</MapID>
<PosX>0.0</PosX><PosY>0.0</PosY><PosZ>0.0</PosZ>
<AngleYaw>0.0</AngleYaw>
<PointInfo>0</PointInfo><Gait>0</Gait><Speed>0</Speed>
<Manner>0</Manner><ObsMode>0</ObsMode><NavMode>0</NavMode>
<Terrain>0</Terrain><Posture>0</Posture>
</Items>
</PatrolDevice>

参数分为点属性参数和路径属性参数两类:

点属性参数(定义目标点本身):

参数项含义类型单位说明
Value目标点编号int/
MapID目标点所在栅格地图编号int/
PosX/PosY/PosZ目标点位置坐标floatm
AngleYaw目标点朝向floatrad
PointInfo目标点类型int/过渡点=0,任务点=1,站立点=2,充电点=3

路径属性参数(规定如何从当前位置走到目标点):

参数项含义类型说明
Gait使用的步态int行走=0,越障=1,斜坡=2,楼梯=4,累积帧楼梯=6,45°楼梯=7,L行走=100,山地=101,L楼梯=102
Speed使用的速度int正常=0,低速=1,高速=2
Manner运动方式int前进=0,倒退=1
ObsMode停避障功能int开启=0,关闭=1
NavMode导航方式int直线导航=0,自主导航=1
Terrain地形图模式int实心地面=0,镂空地面=1,无踢面楼梯=2,累积帧=3
Posture身体高度int正常=0,匍匐=1
<?xml version="1.0" encoding="UTF-8"?>
<PatrolDevice>
<Type>1003</Type>
<Command>1</Command>
<Time>2023-01-01 00:01:00</Time>
<Items>
<Result>1</Result>
</Items>
</PatrolDevice>
Result值含义
1导航任务执行成功
2导航任务执行失败
3导航任务被取消
Type字段值消息类型
1004取消导航任务
<?xml version="1.0" encoding="UTF-8"?>
<PatrolDevice>
<Type>1004</Type>
<Command>1</Command>
<Time>2023-01-01 00:00:00</Time>
<Items/>
</PatrolDevice>
Type字段值消息类型
1007查询导航任务执行状态
<?xml version="1.0" encoding="UTF-8"?>
<PatrolDevice>
<Type>1007</Type>
<Command>1</Command>
<Time>2023-01-01 00:00:00</Time>
<Items/>
</PatrolDevice>
<?xml version="1.0" encoding="UTF-8"?>
<PatrolDevice>
<Type>1007</Type>
<Command>1</Command>
<Time>2023-01-01 00:00:01</Time>
<Items>
<NavTaskState>0</NavTaskState>
</Items>
</PatrolDevice>
NavTaskState值含义
0无导航任务
1导航任务执行中

通过 TCP 本体监控协议向导航主机(192.168.1.106:30000)获取感知状态信息。

Type字段值消息类型
2002感知状态信息
参数项含义参数值说明
ObsState距离机器人2米内的规划路径上是否有障碍物无障碍物=0,有障碍物=1