自主充电接口
通信地址:向感知主机 192.168.1.105:3333 发送 UDP 指令。
充电状态说明
Section titled “充电状态说明”自主充电功能包括以下状态:
- 空闲状态:充电功能未被激活时的状态。
- 充电任务状态:机器人接收到开始充电指令后,返回充电桩的过程。
- 正在充电状态:机器人趴在充电桩上,检测到充电电流的状态。
- 结束充电状态:机器人接收到结束充电指令后,起立并退出充电桩的过程。
- 充电桩断电:机器人在充电过程中未能检测到充电电流,将会进入该状态,直至再次检测到充电电流后,会自动返回到正在充电状态。
- 充电异常状态:机器人执行充电任务时出现异常的状态。
各个状态之间的转化关系如下图所示:

充电请求指令
Section titled “充电请求指令”自主充电指令采用请求-响应的交互机制。感知主机在收到请求后处理,并返回包含当前充电状态值的响应消息。
| 指令名称 | 指令码 | 指令值 | 指令类型 | 指令功能 |
|---|---|---|---|---|
| 开始充电 | 0x91910250 | 1 | 0 | 请求开始充电 |
| 结束充电 | 0x91910250 | 0 | 0 | 请求结束充电 |
| 重置任务 | 0x91910250 | 2 | 0 | 清除充电状态,恢复到空闲状态 |
| 查询状态 | 0x91910253 | 0 | 0 | 查询自主充电状态 |
感知主机在收到指令码为 0x91910250 的请求后,会返回响应消息,其中指令值 charge_manager_state 的含义如下:
| 指令值 | 充电状态 |
|---|---|
| 0x0000 | idle(空闲状态) |
| 0x0001 | do_charge_task(充电任务状态) |
| 0x0002 | charging(正在充电状态) |
| 0x0003 | do_over_charge_task(结束充电状态) |
| 0x0004 | pile_error(充电桩断电) |
| 0x0005 | safety_warning(请先拔掉充电器) |
| 指令值 | 错误说明 |
|---|---|
| 0x1002 | TAGRECETIMEOUT — 获取定位信息超时 |
| 0x1003 | MARKLAUNCHFAILED — 定位算法开启失败 |
| 0x1004 | GOTOSTACKFAILED — 到达超时 |
| 0x1005 | TAGNOVALUE — 没有定位信息 |
| 0x1006 | TAGPOSEJUMP — 定位信息跳变 |
| 0x1007 | NOCHARGEPLUG — 检测充电电流失败,趴在充电桩 |
| 0x100a | NOCHARGEPLUG_STEP_BACK — 检测充电电流失败,退出充电桩 |
TCP 协议中的充电状态
Section titled “TCP 协议中的充电状态”通过 TCP 本体监控协议获取实时基础状态(Type=1002)时,响应中包含以下充电相关字段:
| 参数项 | 含义 | 说明 |
|---|---|---|
| ChargeState | 自主充电状态 | 未在充电=0,正在充电=1 |
| OnDockState | 是否趴在充电桩上 | 不在桩上=0,趴在桩上=1 |