Documentation Index
Fetch the complete documentation index at: https://motorbridge.seeedstudio.com/llms.txt
Use this file to discover all available pages before exploring further.
Source:
docs/zh/hightorque_protocol_analysis.mdHighTorque 协议说明(2026-03 更新)
通道兼容说明(PCAN + slcan + Damiao 串口桥)
- Linux SocketCAN 直接使用网卡名:
can0、can1、slcan0。 - 串口类 USB-CAN 需先创建并拉起
slcan0:sudo slcand -o -c -s8 /dev/ttyUSB0 slcan0 && sudo ip link set slcan0 up。 - 仅 Damiao 可选串口桥链路:
--transport dm-serial --serial-port /dev/ttyACM0 --serial-baud 921600。 - Linux SocketCAN 下
--channel不要带@bitrate(例如can0@1000000无效)。 - Windows(PCAN 后端)中,
can0/can1映射PCAN_USBBUS1/2,可选@bitrate后缀。
rust_dm 当前 HighTorque 支持状态,避免与旧版本“兼容层”描述混淆。
1. 当前实现状态
rust_dm 现在已经实现 HighTorque 的原生 ht_can v1.5.5 直连 CAN 路径,包含:
- Rust CLI:
motor_cli --vendor hightorque - C ABI:
motor_controller_add_hightorque_motor(...) - Python 绑定:
Controller.add_hightorque_motor(...) - C++ 绑定:
Controller::add_hightorque_motor(...)
- 位置:
rad - 速度:
rad/s - 力矩:
Nm
pos_raw = rad / (2π) * 10000vel_raw = rad/s / (2π) / 0.00025tqe_raw = Nm * 100
2. 已验证的直连 CAN 指令族
当前实现按ht_can v1.5.5 处理:
- 扫描/读取状态:
0x17 0x01(8 字节) - 反馈判定:
0x27 0x01 - 位置/速度/力矩联合控制:
0x07 0x35 - 速度控制:
0x07 0x07 - 停机:
0x01 0x00 0x00
- 扫描命中 ID 以回复帧 CAN ID 的高字节提取(例如
0x100 -> id=1)。 - 默认
motor_id有效范围建议1..127。
3. 与旧“兼容层”说明的关系
旧文档曾描述hightorque 通过复用 RobStride 协议的兼容方案。该描述已过时。
现在仓库主线已切换为 HighTorque 原生协议实现,不再依赖 RobStride 协议兼容层来完成 HighTorque 控制。
4. 串口 CANboard 路径(独立链路)
HighTorque 官方生态中仍存在一条常见链路:- 上位机 -> USB 虚拟串口 -> CANboard -> 电机 CAN/CAN-FD
0xF7 头的私有串口封包(CRC8/CRC16)。
它与 rust_dm 当前的 SocketCAN 直连实现是两条不同传输层。
换言之:
- 现在你可以直接用
can0跑原生 HighTorque 控制。 - 若未来需要“等价官方串口 SDK”能力,可再新增串口传输后端,而不影响现有 CAN 直连接口。