割草机器人
  • CLEAR割草机器人用户手册
  • 重要安全信息 Safety Information
  • 1 CLEAR割草机器人简介
  • 2 基本介绍 The Basics
  • 3 使用与开发 Getting Started
  • 4 注意事项 Attention
  • 5 常见问题与解决 Q&A
  • 6 产品尺寸 Product Dimensions
Powered by GitBook
On this page
  • 3.1 使用与操作
  • 3.2 充电
  • 3.3 开发

Was this helpful?

3 使用与开发 Getting Started

本部分主要介绍CLEAR割草机器人平台的基本操作与使用,介绍如何通过外部CAN口,通过CAN总线协议来对车体进行二次开发。

3.1 使用与操作

检查

检查车体状态。检查车体是否有明显异常;如有,请联系 售后支持;

检查急停开关状态。确认两个急停按钮均处于释放状态;

启动

旋转旋钮开关(电器面板中Q1),正常情况下,电压表正常显示 电池电压;

检查电池电压,如未有“滴-滴-滴…”连续蜂鸣器声音,表示电 池电压正常,若电量低,请充电;

关闭操作

旋转旋钮开关,即可切断电源。

急停

按下CLEAR割草机器人车体左右两侧的急停开关即可。

遥控控制基本操作流程

正常启动CLEAR割草机器人后,启动遥控器,将控制模式选择为遥控控制模式,即可通过遥控器控制CLEAR割草机器人。

3.2 充电

CLEAR割草机器人产品默认随车配备一个25A的充电器,可满足客户的充电需求。默认关机充电,正常充电时,底盘没有指示灯说 明。具体指示灯请看充电器上说明。

3.2.1充电具体操作流程

确保CLEAR割草机器人处于停机断电状态。充电前请确认尾部电气控制台中Q1(旋钮开关)处于关闭状态,把电池端和割草机器 人端插头拔掉;将充电器的插头插入电池仓的充电接口中;

将充电器连接电源,将充电器开关打开,即可进入充电状态。(请注意先插上接插头再开启充电器上电源)

3.2.2 更换电池

CLEAR割草机器人为了方便用户采取了可拆卸电池方案,在 一些特殊情况下直接可以更换电池,操作步骤和示意图如下 (操作之前确保CLEAR割草机器人是断电状态):

把CLEAR割草机器人电池上插头拔掉,然后将锁扣打开取出电池。

将电池上插头和车上插头链接,把电池插入电池仓。关闭锁扣。

确认连接无误之后然后上电测试;

3.3 开发

CLEAR割草机器人产品针对用户的开发提供了CAN接口,用户可以进行指令控制。

3.3.1 CAN线的连接

CLEAR割草机器人随车提供了一个航空插头公头如图3.3所示,线束定义参考图2.4下的表。

3.3.2 CAN指令控制的实现

正常启动CLEAR割草机器人,打开遥控器,然后将控制模式切换至 指令控制,即将遥控器SWB模式选择拨至最上方,此时CLEAR割草 机器人会接受来自CAN接口的指令,同时主机也可以通过CAN总线 回馈的实时数据,解析当前底盘的状态,具体协议内容参考CAN通 讯协议。

3.3.3 CAN接口协议

CLEAR割草机器人产品中CAN通信标准采用的是CAN2.0B标准,通讯波特率为500K,报文格式采用MOTOROLA 格式。通过外部CAN总线接口可以控制底盘移动的线速度以及旋转的角速度;CLEAR割草机器人会实时反馈当前 的运动状态信息以及CLEAR割草机器人的状态信息等。

协议包含系统状态回馈帧、运动控制回馈帧、控制帧,协议内容具体如下:

系统状态回馈指令包含了当前车体状态回馈、控制模式状态回馈、电池电压回馈以及故障回馈等,协议内容下表所示。

表格 3.1 CLEAR割草机系统状态回馈帧

指令名称

系统状态回馈指令

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

线控底盘

决策控制单元

0x211

100ms 无

数据长度

0x08

位置

功能

数据类型

说明

byte [0]

当前车体状态

unsigned int8

0x00 系统正常

0x01 紧急停车模式

0x02 系统异常

byte [1]

模式控制

unsigned int8

0x00 待机模式

0x01 CAN指令控制模式

0x03遥控控制模模式

byte [2]

byte [3]

电池电压高八位

电池电压低八位

unsigned int16

实际电压X 10 (精确到0.1V)

byte [4]

byte [5]

故障信息高八位

故障信息低八位

unsigned int16

详见如下表格[故障信息说明]

byte [6]

当前运动模型

signed int8

0×00-四轮差速 0×01-阿克曼

byte [7]

计数校验 (count)

unsigned int8

0~255循环计数,每发送一条指令计数加一次

表格 3.2 故障信息说明表

故障信息说明

字节

位

含义

bit [0]

驱动器状态错误(0:无故障1:故障)

bit [1]

上层通讯连接状态(0: 无故障 1: 故障)

bit [2]

预留,默认0

byte [4]

bit [3]

预留,默认0

bit [4]

预留,默认0

bit [5]

预留,默认0

bit [6]

预留,默认0

bit [7]

预留,默认0

bit [0]

电池欠压故障(0:无故障 1:故障)

bit [1]

电池欠压警告(0:无警告 1:警告) 报警电压为34.5V

bit [2]

遥控器失联保护(0: 无故障 1: 故障)

byte [5]

bit [3]

(1号电机)转向电机驱动器通讯故障(0:无故障 1:故障)

bit [4]

(2号电机)后右电机驱动器通讯故障(0:无故障 1:故障)

bit [5]

(3号电机)后左电机驱动器通讯故障(0:无故障 1:故障)

bit [6]

4号电机驱动器通讯故障(0:无故障 1:故障)

bit [7]

预留,默认0

运动控制回馈帧指令包含了当前车体的运动线速度、运动角速度回馈,协议具体内容如下表所示。

表格 3.3 运动控制回馈帧

指令名称

运动控制回馈指令

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

线控底盘

决策控制单元

0x221

20ms 无

数据长度

0x08

位置

功能

数据类型

说明

byte [0]

byte [1]

移动速度高八位

移动速度低八位

signed int16

实际速度X 1000 (精确到0.001m/s)

byte [2]

byte [3]

旋转速度高八位

旋转速度低八位

signed int16

实际速度X 1000 (精确到0.001rad/s)

byte [4]

保留

--

0x00

byte [5]

保留

--

0x00

byte [6]

byte [7]

转角高八位

转角低八位

signed int16

0x00

0x00

运动控制帧包含了线速度控制开度、角速度控制开度,其具体协议内容如下表所示。

表格 3.4 运动控制指令控制帧

指令名称

控制指令

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

决策控制单元

底盘节点

0x111

20ms 500ms

数据长度

0x08

位置

功能

数据类型

说明

byte [0]

byte [1]

线速度高八位

线速度低八位

signed int16

车体行进速度,单位mm/s,值域 [-1500,1500]

byte [2]

byte [3]

角速度高八位

角速度高八位

signed int16

车体旋转角速度,单位0.001rad/s, 值域[-1000,1000]

byte [4]

保留

--

0x00

byte [5]

保留

--

0x00

byte [6]

保留

--

0x00

byte [7]

保留

--

0x00

模式设定帧用于设定终端的控制接口,其具体协议内容如下表所示。

表格 3.5 控制模式设定帧

指令名称

控制模式设定指令

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

决策控制单元

底盘节点

0x421

无 无

数据长度

0x08

位置

功能

数据类型

说明

byte [0]

CAN控制使能

unsigned int8

0×00待机模式 0×01

can指令控制模式

上电默认进入待机模式

byte [1]

保留

--

0×00

byte [2]

保留

--

0×00

byte [3]

保留

--

0×00

byte [4]

保留

--

0×00

byte [5]

保留

--

0×00

byte [6]

保留

--

0×00

byte [7]

保留

--

0×00

控制模式说明:CLEAR割草车在开机上电,遥控器未连接的情况下,控制模式默认是待机模式,此时底盘只接收控制模式 指令,速度指令不做响应,要使用CAN控制就需要先使能CAN控制模式。若打开遥控器,遥控器具有最高权限,可以屏蔽指 令的控制,可以切换控制模式。

表格 3.6 割草控制指令0x4

指令名称

割草控制指令

节点ID

接收节点

帧ID

周期(ms) 接收超时(ms)

超时时间

底盘节点

0X141

20ms 500ms

数据长度

0x08

字节

描述

数据类型

说明

byte[0]

刀片启动控制

unsigned int8

0-刀片关闭 1-刀片转动

byte[1]

推杆位置

signed int8

不带编码器版本:0 停止 1 正推 -1反推

带编码版本:范围 0-100

byte[2]

保留

--

0x0

byte[3]

保留

--

0x0

byte[4]

保留

--

0x0

byte[5]

保留

--

0x0

byte[6]

保留

--

0x0

byte[7]

保留

--

0x0

注:需要固件版本1.3之后支持

状态置位帧用于清除系统错误,其具体协议内容如下表所示。

表格 3.7状态置位帧

指令名称

状态设定指令

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

决策控制单元

底盘节点

0x441

无 无

数据长度

0x01

位置

功能

数据类型

说明

byte [0]

错误清除指令

unsigned int8

0x00 清除所有错误

0x01 清除电机1错误

0x02 清除电机2错误

0x03 清除电机3错位

0x04 清除电机4错误

[注3]示例数据,以下数据仅供测试使用

1.小车以0.15m/S的速度前进

byte [0]

byte [1]

byte [2]

byte [3]

byte [4]

byte [5]

byte [6]

byte [7]

0x00

0x96

0x00

0x00

0x00

0x00

0x00

0x00

2.小车以0.2RAD/S旋转

byte [0]

byte [1]

byte [2]

byte [3]

byte [4]

byte [5]

byte [6]

byte [7]

0x00

0x00

0x00

0xc8

0x00

0x00

0x00

0x00

除了底盘的状态信息会进行反馈以外,底盘反馈的信息还包括电机的电流信息、编码器数据以及温度信息。下面的帧反馈 是电机的电流信息、编码器信息以及电机温度信息:

在底盘中四个电机电机编号对应为如下图所示:

表格 3.8 电机转速电流位置信息反馈

指令名称

电机驱动器高速信息反馈帧

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

线控底盘

决策控制单元

0x251~0x254

20ms 无

数据长度

0x08

位置

功能

数据类型

说明

byte [0]

byte [1]

电机转速高八位

电机转速低八位

signed int16

电机当前转速 单位RPM

byte [2]

byte [3]

电机电流高八位

电机电流低八位

signed int16

电机当前电流 单位0.1A

byte [4]

byte [5]

byte [6]

byte [7]

电机当前位置最高位

电机当前位置次高位

电机当前位置次低位

电机当前位置最低位

signed int32

电机当前位置 单位:脉冲数

表格 3.9 电机温度电压及状态信息反馈

指令名称

电机驱动器低速信息反馈帧

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

线控底盘

决策控制单元

0x261~0x264

20ms 无

数据长度

0x08

位置

功能

数据类型

说明

byte [0]

byte [1]

驱动器电压高八位

驱动器电压低八位

unsigned int16

当前驱动器电压 单位0.1V

byte [2]

byte [3]

驱动器温度高八位

驱动器温度低八位

signed int16

单位1℃

byte [4]

电机温度

signed int8

单位1℃

byte [5]

驱动器状态

unsigned int8

详见表3.9

byte [6]

保留

--

0x00

byte [7]

保留

--

0x00

表格 3.10驱动器状态

字节

位

说明

bit[0]

电源电压是否过低(0:正常 1:过低)

bit[1]

电机是否过温(0:正常 1:过温)

bit[2]

电机是否过流(0:正常 1:过流)

byte[5]

bit[3]

驱动器是否过温(0:正常 1:过温)

bit[4]

传感器状态(0:正常 1:异常)

bit[5]

驱动器错误状态(0:正常 1:异常)

bit[6]

驱动器使能状态(0:失能 1:使能)

bit[7]

回零状态(0:没有回零 1:已经回零,或已经回过零)

表格 3.11 里程计信息反馈

指令名称

里程计信息反馈

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

线控底盘

决策控制单元

0x311

20ms 无

数据长度

0x08

位置

功能

数据类型

说明

byte [0]

byte [1]

byte [2]

byte [3]

左轮里程计最高位

左轮里程计低高位

左轮里程计次低位

左轮里程计最低位

signed int32

底盘左轮里程计反馈

单位:mm

byte [4]

byte [5]

byte [6]

byte [7]

右轮里程计最高位

右轮里程计次高位

右轮里程计次低位

右轮里程计最低位

signed int32

底盘右轮里程计反馈

单位:mm

表格 3.12 遥控器信息反馈

指令名称

遥控器信息反馈帧

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

线控底盘

决策控制单元

0x241

20ms 无

数据长度

0x08

位置

功能

数据类型

说明

byte[0]

遥控SW反馈

unsigned int8

bit[0-1]: SWA :2-上档 3-下档

bit[2-3]: SWB:2-上档 1-中档 3-下档

bit[4-5]: SWC:2-上档 1-中档 3-下档

bit[6-7]: SWD:2-上档 3-下档

byte[1]

右边拨杆左右

signed int8

值域:[-100,100]

byte[2]

右边拨杆上下

signed int8

值域:[-100,100]

byte[3]

左边拨杆上下

signed int8

值域:[-100,100]

byte[4]

左边拨杆左右

signed int8

值域:[-100,100]

byte[5]

左边旋钮VRA

signed int8

值域:[-100,100]

byte[6]

保留

--

0x00

byte[7]

计数校验

unsigned int8

0-255循环计数

表格 3.13 BMS信息反馈帧

指令名称

BMS信息反馈帧

发送节点

接收节点

ID

周期(ms) 接收超时(ms)

线控底盘

决策控制单元

0x361

500ms 无

数据长度

0x08

位置

功能

数据类型

说明

byte[0]

电池SOC

unsigned int8

范围 0~100

byte[1]

电池SOH

unsigned int8

范围 0~100

byte[2]

电池电压值高八位

unsigned int16

单位:0.1V

byte[3]

电池电压值低八位

signed int8

值域:[-100,100]

byte[4]

电池电流值高八位

signed int16

单位:0.1A

byte[5]

电池电流值低八位

signed int8

值域:[-100,100]

byte[6]

byte[7]

电池温度高八位

电池温度低八位

signed int16

单位:0.1℃

Previous2 基本介绍 The BasicsNext4 注意事项 Attention

Last updated 3 years ago

Was this helpful?

图 3.1 充电示意图
图 3.2 更换电池示意图
图 3.3 航空插头公头示意图
图3.4 电机反馈ID示意图