Skip to content

系统配置controllerConfig

控制器状态获取、电源控制、错误清除、有线网口IP地址配置、软件信息获取。

获取控制器状态rm_get_controller_state()

  • 方法原型:
C
int rm_get_controller_state(rm_robot_handle * handle,float * voltage,float * current,float * temperature,int * err_flag )

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
voltage输出参数返回的电压。
current输出参数返回的电流。
temperature输出参数返回的温度。
err_flag输出参数控制器运行错误代码。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//获取控制器状态
float voltage = 0;                                                            
float current = 0;                                                            
float temperature = 0;                                                        
int sys_err = 0;                                                         
ret = rm_get_controller_state(robot_handle, &voltage, &current, &temperature, &sys_err);

设置机械臂电源rm_set_arm_power()

  • 方法原型:
C
int rm_set_arm_power(rm_robot_handle * handle,int arm_power)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
arm_power输入参数1-上电状态,0 断电状态。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//控制机械臂上电
ret = rm_set_arm_power(robot_handle, 1);

读取机械臂电源状态rm_get_arm_power_state()

  • 方法原型:
C
int rm_get_arm_power_state(rm_robot_handle * handle,int * power_state)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
power_state输出参数获取到的机械臂电源状态,1-上电状态,0 断电状态。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//读取机械臂电源状态
int power;
ret = rm_get_arm_power_state(robot_handle,&power);

读取控制器的累计运行时间rm_get_system_runtime()

  • 方法原型:
C
int rm_get_system_runtime(rm_robot_handle * handle,int * day,int * hour,int * min,int * sec
)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
day输出参数读取到的时间。
hour输出参数读取到的时间。
min输出参数读取到的时间。
sec输出参数读取到的时间。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//获取控制器的累计运行时间
char state = 0;
int day;
int hour;
int min;
int sec;
ret = rm_get_system_runtime(robot_handle, &day, &hour, &min, &sec);

清零控制器的累计运行时间rm_clear_system_runtime()

  • 方法原型:
C
int rm_clear_system_runtime(rm_robot_handle * handle)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//清空控制器累计运行时间
ret = rm_clear_system_runtime(robot_handle);

读取关节的累计转动角度rm_get_joint_odom()

  • 方法原型:
C
int rm_get_joint_odom(rm_robot_handle * handle,float * joint_odom)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
joint_odom输出参数存放各关节累计的转动角度的数组。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//获取关节累计转动角度
float odom[7];
ret = rm_get_joint_odom(robot_handle,odom);

清零关节累计转动的角度rm_clear_joint_odom()

  • 方法原型:
C
int rm_clear_joint_odom(rm_robot_handle * handle)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//清除关节累计转动角度
ret = rm_clear_joint_odom(robot_handle);

配置有线网口IP地址rm_set_NetIP()

  • 方法原型:
C
int rm_set_NetIP(rm_robot_handle * handle,const char * ip)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
ip输出参数有线网口 IP 地址。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//配置有线网卡IP地址
ret = rm_set_NetIP(robot_handle,(char*)"192.168.1.19");

清除系统错误rm_clear_system_err()

  • 方法原型:
C
int rm_clear_system_err(rm_robot_handle * handle)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//清除系统错误代码
ret = rm_clear_system_err(robot_handle);

读取机械臂软件信息rm_get_arm_software_info()

  • 方法原型:
C
int rm_get_arm_software_info(rm_robot_handle * handle,rm_arm_software_version_t * software_info)

可以跳转rm_robot_handlerm_arm_software_version_t查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
software_info输入参数机械臂软件信息结构体。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//读取机械臂软件信息
rm_arm_software_version_t info;
ret = rm_get_arm_software_info(robot_handle, &info);

查询控制器RS485模式rm_get_controller_RS485_mode()

  • 方法原型:
C
int rm_get_controller_RS485_mode(rm_robot_handle * handle,int * mode,int * baudrate,int * timeout)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
mode输出参数存放模式。0-代表默认 RS485 串行通讯,1-代表 modbus-RTU 主站模式,2-代表 modbus-RTU 从站模式。
baudrate输出参数存放波特率。
timeout输入参数modbus 协议超时时间,单位 100ms,仅在 modbus-RTU 模式下提供此字段。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
int mode;
int baudrate;
int timeout;
ret = rm_get_controller_RS485_mode(robot_handle, &mode, &baudrate, &timeout);

查询工具端RS485模式rm_get_tool_RS485_mode()

  • 方法原型:
C
int rm_get_tool_RS485_mode(rm_robot_handle * handle,int * mode,int * baudrate,int * timeout)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
mode输出参数存放模式。0-代表默认 RS485 串行通讯,1-代表 modbus-RTU 主站模式,2-代表 modbus-RTU 从站模式。
baudrate输出参数存放波特率。
timeout输入参数modbus 协议超时时间,单位 100ms,仅在 modbus-RTU 模式下提供此字段。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
int mode;
int baudrate;
int timeout;
ret = rm_get_tool_RS485_mode(robot_handle, &mode, &baudrate, &timeout);

查询关节软件版本号rm_get_joint_software_version()

  • 方法原型:
C
int rm_get_joint_software_version(rm_robot_handle * handle,int * version)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
version输出参数获取到的各关节软件版本号数组。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。

注意:获取到的关节软件版本号需转换为十六进制,例如获取某关节版本为54536,转换为十六进制为D508,则当前关节的版本号为 Vd5.0.8。

  • 使用示例
C
//获取关节软件版本号
float ver[6] = {0};
ret = rm_get_joint_software_version(robot_handle,ver);

查询末端接口板软件版本号rm_get_tool_software_version()

  • 方法原型:
C
int rm_get_tool_software_version(rm_robot_handle * handle,int * version)

可以跳转rm_robot_handle查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
version输出参数获取到的各关节软件版本号数组。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。

注意:获取到的末端接口板软件版本号需转换为十六进制,例如获取到版本号393,转换为十六进制为189,则当前关节的版本号为 V1.8.9。

  • 使用示例
C
//查询末端接口板软件版本号    
int ver = 0;                                                                       
ret = rm_get_tool_software_version(robot_handle,&ver);