Skip to content

接线与上电 ​

推荐系统是 Ubuntu 22.04。macOS 和 Windows 可以用 CANable 串口连接桌面面板或网页控制。SDK 需要在实际运行的电脑上安装,不要把另一台电脑里的 .venv 或 cpp/build 直接拷过来运行。

1. 供电 ​

  1. 红色线接直流电源正极,黑色线接 GND。电压为 DC 24 V~48 V,不要接交流电。
  2. 上电后心跳灯闪烁。板端先恢复已保存的零点。位置仍有效时手指不动。
  3. 某路位置丢失,或整手从未归零时,该路会找两端极限,大约几秒到十几秒,期间手指会动。请留出空间。

2. 接 CANable ​

  1. CANable 插到电脑 USB。
  2. CAN_H、CAN_L、GND 接到灵巧手的 CAN 口,极性不要反,必须共地。
  3. CANable 的 120 Ω 终端电阻拨到 ON。手端终端电阻已内置。
  4. 查看端口:
bash
ls -l /dev/ttyACM* /dev/ttyUSB*
lsusb

后文示例写成 /dev/ttyACM0。名字不同时,换成这条命令看到的设备。

Linux 若提示没有串口权限:

bash
sudo usermod -aG dialout "$USER"

注销并重新登录后,groups 里应能看到 dialout。

3. 两种传输,只开一种 ​

SLCAN 和 SocketCAN 是同一根 CANable 的两种用法,不是两只手。

  • SLCAN:程序直接打开串口。串口波特率 115200,CAN 总线仍是 1 Mbps。面板传输选 can_slcan。
  • SocketCAN:用 slcand 把串口挂成网口 can0,程序改走 can0。挂上之后串口被占用,面板不要再选 can_slcan。
bash
sudo slcand -o -c -s8 /dev/ttyACM0 can0
sudo ip link set can0 up
ip -details link show can0

can0 的 state 是 UP 才算挂上。slcand 下 bitrate 显示 0 可以忽略,总线仍是 1 Mbps。

回到 SLCAN:先关掉占用 can0 的程序,再执行:

bash
sudo ip link set can0 down
sudo ip link delete can0
sudo pkill slcand

同一时刻只能有一个程序打开这根适配器。网页控制、桌面面板和 ROS 2 不要一起开。

4. 确认能通信 ​

连接后读取固件版本。有返回,说明线路正常。再读编码器状态:六路都是已归零(homed_mask 为 0x3F)且故障掩码为 0,就可以下发开合度。

第一次可以先全开,再全合。顺序是拇、虎口、食、中、无名、小:

text
100 100 100 100 100 100
0 0 0 0 0 0

open_all / close_all 不含虎口。要虎口一起动,用六个开合度。六路同时收到闭合目标时,虎口有时会停在张开附近;其余手指到位后再发一次全 0。

桌面面板见 桌面控制面板。不装 SDK、只用浏览器时见 网页控制。

峦启机器人(天津)有限公司