Skip to content

控制器IO配置及查询controllerIOConfig

睿尔曼机械臂的控制器为输入和输出模式共用,本接口用于配置机械臂控制器IO模式和IO电源电压。

设置数字IO模式rm_set_IO_mode()

  • 方法原型:
C
int rm_set_IO_mode(rm_robot_handle * handle,int io_num,int io_mode)

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

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
io_num输入参数IO 端口号,范围:1~4。
io_mode输入参数模式,
0-通用输入模式,
1-通用输出模式、
2-输入开始功能复用模式、
3-输入暂停功能复用模式、
4-输入继续功能复用模式、
5-输入急停功能复用模式、
6-输入进入电流环拖动复用模式、
7-输入进入力只动位置拖动模式(六维力版本可配置)、
8-输入进入力只动姿态拖动模式(六维力版本可配置)、
9-输入进入力位姿结合拖动复用模式(六维力版本可配置)、
10-输入外部轴最大软限位复用模式(外部轴模式可配置)、
11-输入外部轴最小软限位复用模式(外部轴模式可配置)。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//设置数字IO 1号通道输入开始功能复用模式
int io_num = 1;                              
int io_mode = 2;                       
ret = rm_set_IO_mode (robot_handle,io_num,io_mode);

设置数字IO输出rm_set_DO_state()

  • 方法原型:
C
int rm_set_DO_state(rm_robot_handle * handle,int io_num,int state)

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

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
io_num输入参数IO 端口号,范围:1~4。
state输入参数IO 状态,1-输出高,0-输出低。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//设置数字IO 1号通道输出高
int io_num = 1;                              
int state = 1;                       
ret = rm_set_DO_state(robot_handle,io_num,state);

获取数字IO状态rm_get_IO_state()

  • 方法原型:
C
int rm_get_IO_state(rm_robot_handle * handle,int io_num,int * state,int * mode)

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

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
io_num输入参数IO 端口号,范围:1~4。
state输出参数IO 状态,1-输出高,0-输出低。
io_mode输出参数模式,
0-通用输入模式,
1-通用输出模式、
2-输入开始功能复用模式、
3-输入暂停功能复用模式、
4-输入继续功能复用模式、
5-输入急停功能复用模式、
6-输入进入电流环拖动复用模式、
7-输入进入力只动位置拖动模式(六维力版本可配置)、
8-输入进入力只动姿态拖动模式(六维力版本可配置)、
9-输入进入力位姿结合拖动复用模式(六维力版本可配置)、
10-输入外部轴最大软限位复用模式(外部轴模式可配置)、
11-输入外部轴最小软限位复用模式(外部轴模式可配置)。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//查询数字IO输出1号通道状态
int num = 1;
int state;
int mode;
ret = rm_get_IO_state(robot_handle,num,&state,&mode);

获取所有IO输入状态rm_get_IO_input()

  • 方法原型:
C
int rm_get_IO_input(rm_robot_handle * handle,int * DI_state)

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

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
DI_state输出参数1~4端口数字输入状态数组,1:高,0:低,-1:该端口不是输入模式。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//查询所有IO输入状态
int DI_state[4] = {0};
ret = rm_get_IO_input(robot_handle,DI_state);

获取所有IO输出状态rm_get_IO_output()

  • 方法原型:
C
int rm_get_IO_output(rm_robot_handle * handle,int * DO_state)

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

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
DI_state输出参数1~4端口数字输入状态数组,1:高,0:低,-1:该端口不是输出模式。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
//查询所有IO输出状态
int DO_state[4] = {0};
ret = rm_get_IO_output(robot_handle,DO_state);

设置控制器电源输出rm_set_voltage()

  • 方法原型:
C
int rm_set_voltage(rm_robot_handle * handle,int voltage_type)

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

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

获取控制器电源输出rm_get_voltage()

  • 方法原型:
C
int rm_get_voltage(rm_robot_handle * handle,int * voltage_type)

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

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