电机基础
说明:
- 在使用前必须先启动所有 CAN 接口
- 依赖库 openarmx_arm_driver
- 每个电机之间有 10ms 延时,避免总线拥塞
- 脚本位置
/home/openarmx/openarmx_ws/src/openarmx_motor_manager/scripts
使能所有电机¶
脚本名: en_all_motors.py
功能: 自动搜索可用 can 通道,并向 ID 为(1-8)的电机发送使能指令,该功能无论 can 通道上有无电机都会发送使能命令,所以在没有电机连接时也会依然发送,可在使能目标电机后按 CTRL + C 退出脚本。
使用方法:
python3 ./en_all_motors.py
说明:
- 发送使能指令 (0x0300) 到所有电机
失能所有电机¶
脚本名: dis_all_motors.py
功能: 自动搜索可用 can 通道,并向 ID 为(1-8)的电机发送失能指令,该功能无论 can 通道上有无电机都会发送失能命令,所以在没有电机连接时也会依然发送,可在使能目标电机后按 CTRL + C 退出脚本。
使用方法:
python3 ./dis_all_motors.py
说明:
- 发送失能指令 (0x0400) 到所有电机
查看电机状态¶
脚本名: check_motor_status.py
功能: 自动搜索可用 can 通道,扫描并显示 can 通道上 ID 为(1-8)的电机的状态信息,该功能无论 can 通道上有无电机都会发送读取电机状态的命令,所以在没有电机连接时也会依然发送,可在使能目标电机后按 CTRL + C 退出脚本。
使用方法:
python3 ./check_motor_status.py
显示信息:
- CAN ID
- 当前角度(弧度)
- 当前速度(弧度/秒)
- 当前力矩(Nm)
- 电机温度(°C)
- 控制模式(Reset/Cali/Motor)
- 故障状态(正常/各类故障)
注意事项:
- 不要在 MoveIt 运行时执行,可能导致电机失能,坠落
设置电机零位¶
脚本名: set_motor_zero.py
功能: 自动搜索可用 can 通道,并向 ID 为(1-8)的电机发送设置零位指令,设置当前位置为零位,该功能无论 can 通道上有无电机都会发送设置零位命令,所以在没有电机连接时也会依然发送,可在使能目标电机后按 CTRL + C 退出脚本。
使用方法:
./set_motor_zero.py
注意事项:
- 在设置零位前,确保机械臂处于期望的零位姿态
- 此操作会覆盖电机的原零位信息