Skip to main content

通道兼容说明(PCAN + slcan + Damiao 串口桥)

  • Linux SocketCAN 直接使用网卡名:can0can1slcan0
  • 串口类 USB-CAN 需先创建并拉起 slcan0sudo slcand -o -c -s8 /dev/ttyUSB0 slcan0 && sudo ip link set slcan0 up
  • 仅 Damiao 可选独立 CAN-FD 链路:--transport socketcanfd(与经典 socketcan 并存)。
  • 仅 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 后缀。
传输标识:
  • [STD-CAN] => --transport auto|socketcan
  • [CAN-FD] => --transport socketcanfd
  • [DM-SERIAL] => --transport dm-serial
[CAN-FD] 说明:目前是“链路已接入”,电机验证矩阵尚未声明完成。

调试入口

构建

通用参数

  • --vendor damiao|robstride|hightorque|myactuator|hexfellow|all
  • --transport auto|socketcan|socketcanfd|dm-serialdm-serial 仅 Damiao;socketcanfd 用于 Hexfellow)
  • --channel can0
  • --serial-port /dev/ttyACM0 --serial-baud 921600(配合 --transport dm-serial
  • --motor-id <id>
  • --loop <n> --dt-ms <ms>

Damiao 示例

[STD-CAN]
[DM-SERIAL]
[CAN-FD]

Hexfellow 示例

[CAN-FD]
[CAN-FD]

RobStride 示例

RobStride 支持 rs-00rs-06。请始终传真实电机型号:控制命令的 CLI 形态一致,但 read-param / write-param 会使用第 4 章通用运行参数表。

RobStride 零点校准(Python 包 CLI)

当前 motorbridge-cli 使用子命令结构,置零必须写成 motorbridge-cli run ...。 RobStride 置零还必须带 --zero-exp 1;不带时只打印警告,不发送置零帧。

HighTorque(原生 ht_can v1.5.5)

支持模式:
  • scan
  • read / ping
  • mit(统一接口)
  • pos / vel / tqe
  • pos-vel-tqe
  • volt / cur
  • stop / brake / rezero / conf-write / timed-read
统一单位接口(与其他电机保持一致):
  • --pos:弧度(rad)
  • --vel:弧度每秒(rad/s)
  • --tau:扭矩(Nm)
  • --kp--kd:为统一 MIT 参数签名保留,ht_can 协议本身不使用
底层原始接口(调试):
  • --raw-pos--raw-vel--raw-tqe
示例:

MyActuator 示例

全品牌扫描

RobStride 单独扫描:
RobStride 输出中,probe / device_id 是电机 ID;feedback_id / host_id(如 0xFD)是上位机侧 ID,不是电机 ID。 RobStride motor_id / device_id 会校验为 1..255feedback_id / host_id 会校验为 0..255。 RobStride 请继续使用真实 RS 型号作为限值/日志提示;参数读写使用第 4 章通用运行参数表。