控制方式为 CAN 总线控制,使用的是 ISO11898 标准。CAN 参数默认设置波特率:500k bps;帧格式:标准帧;帧类型:数据帧;帧 ID: 0x30B;终端匹配电阻 120Ω。
CAN 总线控制命令详见附件
ID 字段使用标准 11 位地址,使用 CANOpen 的地址格式,详见下表。
| 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|---|---|
| CAN-ID | ||||||||||
| Function code | Node-ID | |||||||||
| MSB | LSB | |||||||||
Function code 字段(也叫 COB-ID)主要用于区别 PDO2 命令的发送和接受,PDO2 发送(TPDO 生产者推进器发送信息)为 0101,PDO2 接收(RPDO 消费者控制器请求信息)为 0110。
Node-ID 为推进器的节点 ID,地址范围从 1~127。
数据字段一般为 8Byte 或 4Byte (DLC=8 或 4),携带数据时使用 8Byte 字段,不携带数据 (即发送命令或请求数据时) 使用 4Byte 字段 (删减掉后面 4Byte 即 32Bit 的数据)。如下所示,数据字段高 4 字节为控制命令,低 4 字节为携带数据 (int 或 float),详见下表。
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
|---|---|---|---|---|---|---|---|
| 控制命令 | 携带数据 | ||||||
| 命令2Byte | 预留0x00 | 数据类型 | |||||
| LSB | MSB | ||||||
命令:2Byte 的字符型命令,例如:TC 既 0x5443 代表控制信号命令,后续携带数据代表推进器的期望输出信号值。
预留:保留字段,始终为 0x00。
数据类型:0x00 表示携带数据为整型 (int_32),0x80 表示携带数据为浮点型 (float_32)。
携带数据:大端模式,整型和浮点均用 32 位。