ROSLander 2024(麦轮):更换舵机并重新编号后,2/3/4/5/10 待机不复位,4/10 号在对准与夹取时无响应

产品型号 / 套件

ROSLander 多模态机器人(2024 版),麦轮底盘,6 自由度总线舵机机械臂 机型标识:ROSLanderMecanum

版本 / 规格

镜像版本 V1.0.12(2024-12-31)

购买渠道

淘宝

控制板 / 主板

主控:Jetson Nano(Ubuntu 18.04) 下位机:随车控制板,串口设备 /dev/rrc

系统 / 软件 / 固件版本

  • 系统:Ubuntu 18.04

  • ROS:Melodic(catkin 工作空间 ~/ros_ws)

  • Python:3.6(rospy 侧)+ 2.7(部分 SDK)

  • 使用功能包:~/ros_ws/src/competition

  • 舵机驱动:driver/servo(servo_manager + servo_controllers)

镜像版本

V1.0.12(2024-12-31),未重刷,仍为出厂镜像

参考的教程或步骤

  • 《3 机械臂偏差调节(选看).pdf》

  • 《实验 1 基于 ROS 机械臂的关节运动控制实验.pdf》(第 1 页舵机 ID 分布图、第 10 页示例 [[1,700],[2,700],[3,100],[4,300],[5,500],[10,500]])

  • 竞赛流程:voice_control_navigation.py → 到位后调用 post_calibration 校准 → 进入夹取

问题描述

机械臂整体异常,具体分两部分:

问题 1:2、3、4、5、10 号舵机在待机状态全部没有反应

开机前后机械臂姿态完全没有变化,不再有原来的「上电自动回位到竖直」动作。1 号云台舵机(未更换,保持原装)外观上未见异常。现象为静默不动,终端无任何报错。

问题 2:执行「校准对齐夹取平台」和「夹取功能校准」时,4 号和 10 号舵机无任何反应

  • 视觉侧工作正常:post_calibration 返回 success: True,图像流正常,能稳定输出 x/y/angle(例如 x: 558 y: 282 angle: 90.0),色块识别正常

  • 参数也能正常保存:日志出现「正在保存参数 pick_stop_pixel_coordinate」和「ramp_calibration[0]」

  • 但机械臂本体完全没有动作:4 号(腕部俯仰)不调姿,10 号(夹爪)不张合

  • 因此对准流程走到最后一步无法完成,夹取也无法执行

报错信息 / 日志 / 截图

无任何 ERROR / WARN 输出。已附 3 张截图:

  1. IMG-1:ros_robot_controller_sdk 直连测试,board.bus_servo_read_id(254) 返回 当前 ID: [4]

  2. IMG-2:post_calibration 返回 success: True,视觉坐标持续输出,机械臂无动作

  3. IMG-3:夹取校准阶段,参数保存正常(pick_stop_pixel_coordinate、ramp_calibration[0]),机械臂无动作

复现步骤

  1. 上电开机,等待 start_app_node.service 启动完成 → 机械臂停在原地,无任何回位动作

  2. 启动竞赛功能包,小车导航到夹取平台前

  3. 执行「校准对齐夹取平台」(rosservice call /post_calibration)-> 视觉返回成功,4 号舵机不动

  4. 执行「夹取功能校准」-> 参数可保存,10 号夹爪不动

已经尝试过的操作

  1. 排查并确认过:4 号舵机曾因堵转过热烧毁(冒白烟),已更换

  2. 已更换 2、3、4、5、10 号舵机(共 5 个)为同型号新舵机

  3. 对 2、3、4、5 号新舵机重新做了编号

  4. 10 号夹爪新舵机未编号(接线数量不够,没有单独接到总线上做 ID 写入),目前为出厂默认状态

  5. 用 ros_robot_controller_sdk 直连 /dev/rrc 读取 ID,广播读(id=254)返回 [4]

  6. 重启过服务,舵机仍无反应

补充说明

  1. 故障前一切正常,机械臂可以正常上电回位、正常夹取。变化点只有两个:机械臂使用次数增多 + 4 号舵机烧毁冒烟后整组更换

  2. 怀疑 10 号夹爪新舵机未编号是主因之一(出厂默认 ID 可能为 1),但不确定它会不会连带影响 2/3/4/5 号

  3. 想确认三件事:

    • ① 更换新舵机后,是否必须逐个重新编号?10 号夹爪的编号是多少?

    • ② 新舵机出厂默认 ID 是多少?如果 10 号仍是默认值,与 1 号云台同号,是否会导致整条总线通信异常、进而让 2/3/4/5 号也不响应?

    • ③ 「上电待机自动回位」这个动作是由哪个节点/服务触发的?是 servo_manager 启动时下发,还是 APP 侧下发动作组?(便于定位是「指令没发出」还是「舵机没收到」)

  4. 另外请确认:servo_controller.yaml 中 connected_ids: [1, 2, 3, 4, 5, 6, 10] 是否需要随实际编号同步修改?如果新舵机被编成了白名单以外的号(如 7、8、9、11),驱动是否会直接忽略该舵机且不报错?

  5. 4 号舵机烧毁前有堵转发热迹象,请协助判断腕部俯仰轴是否存在装配干涉或负载过大问题,避免新舵机再次烧毁。