Skip to content

附录:API2错误代码

API2返回值定义

  • C/C++:接口返回值为错误码,返回0为成功,返回其他值可查询下表。
  • Python:接口返回值都是一个元组,接口的返回值形式为(RetVal,data),RetVal 为错误码,返回0为成功,返回其他值可查询下表;data 为获取的数据。

API2错误代码

参数类型说明处理建议
0int成功。-
1int控制器返回false,传递参数错误或机械臂状态发生错误。- 校验JSON指令
①启用API的DEBUG日志,捕获原始JSON数据。
②检查JSON语法:确保括号、引号、逗号等格式正确(可借助JSON校验工具)。
③对照API文档,验证参数名称、数据类型及取值范围是否符合规范。
④修正问题后重新发送指令,检查控制器返回的状态码及业务数据是否正常。
- 检查机械臂状态
①查看机械臂控制器或日志中的实时报错信息(如硬件故障、超限等),根据提示复位、校准或排查硬件问题。
②修正问题后重新发送指令,检查控制器返回的状态码及业务数据是否正常。
-1int数据发送失败,通信过程中出现问题。检查网络连通性
使用ping/telnet等工具检测与控制器的通信链路是否正常。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。- 检查网络连通性
使用ping/telnet等工具检测与控制器的通信链路是否正常。
- 校验版本兼容性
①核对控制器固件版本是否支持当前API功能,具体版本配套关系请参考版本变更说明
②若版本过低需升级控制器或使用适配的API版本。
- 调用ModbusTCP接口:仅在读写控制器ModbusTCP设备时适用,创建机械臂控制句柄后,必须调用rm_set_modbustcp_mode()接口,否则无法接收到返回值。
-3int返回值解析失败,接收到的数据格式不正确或不完整。校验版本兼容性
①核对控制器固件版本是否支持当前API功能,具体版本配套关系请参考版本变更说明
②若版本过低需升级控制器或使用适配的API版本。
-4int当前到位设备校验失败,即当前到位设备不为关节/升降机构/夹爪/灵巧手。- 检测多设备并发控制:检查是否有其他设备给机械臂发送运动指令:包括机械臂、夹爪、灵巧手、升降机的运动;
- 实时监听指令事件:注册回调函数 rm_get_arm_event_call_back
①捕获设备到位事件(如运动完成、超时等);
②通过回调参数 device 判断触发事件的具体设备类型。
-5int单线程阻塞模式超时未接收到返回,请确保超时时间设置合理。- 检查超时时长设置:单线程阻塞模式下,支持配置等待设备运动完成的超时时间,务必确保设置超时时间大于设备运动时间;
- 检查网络连通性
使用ping/telnet等工具检测与控制器的通信链路是否正常。

注意

以下为不适用以上错误代码的接口,请查看对应接口中的错误码列表。

  • 逆解函数rm_algo_inverse_kinematics()C/C++Python
  • 保存拖动示教轨迹rm_save_trajectory()C/C++Python
  • 设置六维力拖动示教模式rm_set_force_drag_mode()C/C++Python
  • 获取六维力拖动示教模式rm_get_force_drag_mode()C/C++Python
  • 松开夹爪rm_set_gripper_release()C/C++Python
  • 夹爪力控夹取rm_set_gripper_pick()C/C++Python
  • 夹爪持续力控夹取rm_set_gripper_pick_on()C/C++Python
  • 设置夹爪达到指定位置rm_set_gripper_position()C/C++Python
  • 运行灵巧手目标手势序列号rm_set_hand_posture()C/C++Python
  • 运行灵巧手动作序列号rm_set_hand_seq()C/C++Python
  • 文件下发rm_send_project()C/C++Python
  • 开始运行指定轨迹rm_set_program_id_run()C/C++Python
  • 初始化线程模式rm_init()C/C++Python
  • 删除指定机械臂实例rm_delete_robot_arm()C/C++Python
  • 获取机械臂基本信息rm_get_robot_info()C/C++Python