3. 机器人IO

3.1. 设置控制箱数字量输出

原型

SetDO(id, status, smooth = 0, block = 0)

描述

设置控制箱数字量输出

必选参数

  • id:io编号,范围[0~15];

  • status:0-关,1-开;

默认参数

  • smooth:0-不平滑,1-平滑 默认0;

  • block:0-阻塞,1-非阻塞 默认0

返回值

错误码 成功-0 失败- errcode

3.1.1. 代码示例

 1from fairino import Robot
 2import Robot
 3# 与机器人控制器建立连接,连接成功返回一个机器人对象
 4robot = Robot.RPC('192.168.58.2')
 5# 测试控制箱DO
 6for i in range(0,16):
 7    error = robot.SetDO(i,1)      #打开控制箱DO
 8time.sleep(1)
 9for i in range(0,16):
10    robot.SetDO(i,0)      #关闭控制箱DO

3.2. 设置工具数字量输出

原型

SetToolDO (id, status, smooth = 0, block = 0)

描述

设置工具数字量输出

必选参数

  • id:io编号,范围[0~1];

  • status:0-关,1-开;

默认参数

  • smooth:0-不平滑,1-平滑;

  • block:0-阻塞,1-非阻塞。

返回值

错误码 成功-0 失败- errcode

3.2.1. 代码示例

 1from fairino import Robot
 2# 与机器人控制器建立连接,连接成功返回一个机器人对象
 3robot = Robot.RPC('192.168.58.2')
 4# 测试工具DO
 5error_tooldo = 0
 6for i in range(0,2):
 7    error = robot.SetToolDO(i,1)    #打开工具DO
 8robot.WaitMs(1000)
 9for i in range(0,2):
10    error = robot.SetToolDO(i,0)    #关闭工具DO

3.3. 设置控制箱模拟量输出

原型

SetAO(id,value,block = 0)

描述

设置控制箱模拟量输出

必选参数

  • id:io编号,范围[0~1];

  • value:电流或电压值百分比,范围[0~100%]对应电流值[0~20mA]或电压[0~10V];

默认参数

  • block:[0]-阻塞,[1]-非阻塞 默认0

返回值

错误码 成功-0 失败- errcode

3.3.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4# 测试控制箱AO
5error = robot.SetAO(0,100.0)
6print("设置AO0错误码:", error)
7error = robot.SetAO(1,100.0)
8print("设置AO1错误码:", error)

3.4. 设置工具模拟量输出

原型

SetToolAO(id,value,block = 0)

描述

设置工具模拟量输出

必选参数

  • id:io编号,范围[0];

  • value:电流或电压值百分比,范围[0~100%]对应电流值[0~20mA]或电压[0~10V];

默认参数

  • block:[0]-阻塞,[1]-非阻塞 默认0

返回值

错误码 成功-0 失败- errcode

3.4.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4# 测试末端AO
5error = robot.SetToolAO(0,100.0)
6print("设置ToolAO0错误码:", error)
7Robot.WaitMs(1000)
8error = robot.SetToolAO(0,0.0)
9print("设置ToolAO0错误码:", error)

3.5. 获取控制箱数字量输入

原型

GetDI(id, block = 0)

描述

获取控制箱数字量输入

必选参数

  • id:io编号,范围[0~15];

默认参数

  • block:0-阻塞,1-非阻塞 默认0

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)di: 0-低电平,1-高电平

3.5.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4error = robot.GetDI(0,0)
5print("获取DI0",error)

3.6. 获取工具数字量输入

原型

GetToolDI(id, block = 0)

描述

获取工具数字量输入

必选参数

  • id:io编号,范围[0~1];

默认参数

  • block:0-阻塞,1-非阻塞 默认0

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)di: 0-低电平,1-高电平

3.6.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4tool_di = robot.GetToolDI(1,0)
5print("获取ToolDI",tool_di)

3.7. 等待控制箱数字量输入

原型

WaitDI(id,status,maxtime,opt)

描述

等待控制箱数字量输入

必选参数

  • id:io编号,范围[0~15];

  • status:0-关,1-开;

  • maxtime:最大等待时间,单位[ms];

  • opt:超时后策略,0-程序停止并提示超时,1-忽略超时提示程序继续执行,2-一直等待

默认参数

返回值

错误码 成功-0 失败- errcode

3.7.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4max_waittime = 2000
5#等待控制箱DI
6error = robot.WaitDI(0,1,max_waittime,0)
7print("WaitDI错误码",error)

3.8. 等待控制箱多路数字量输入

原型

WaitMultiDI(mode,id,status,maxtime,opt)

描述

等待控制箱多路数字量输入

必选参数

  • mode:[0]-多路与,[1]-多路或;

  • id:io编号,bit0~bit7对应DI0~DI7,bit8~bit15对应CI0~CI7;

  • status:bit0~bit7对应DI0~DI7状态,bit8~bit15对应CI0~CI7状态位的状态[0]-关,[1]-开;

  • maxtime:最大等待时间,单位[ms];

  • opt:超时后策略,0-程序停止并提示超时,1-忽略超时提示程序继续执行,2-一直等待。

默认参数

返回值

错误码 成功-0 失败- errcode

3.8.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4max_waittime = 2000
5#等待控制箱多路DI
6error = robot.WaitMultiDI(1,3,1,max_waittime,0)
7print("WaitMultiDI错误码",error)

3.9. 等待工具数字量输入

原型

WaitToolDI(id,status,maxtime,opt)

描述

等待末端数字量输入

必选参数

  • id:io编号,范围[0~1];

  • status:0-关,1-开;

  • maxtime:最大等待时间,单位[ms];

  • opt:超时后策略,0-程序停止并提示超时,1-忽略超时提示程序继续执行,2-一直等待

默认参数

返回值

错误码 成功-0 失败- errcode

3.9.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4max_waittime = 2000
5#等待工具DI
6error = robot.WaitToolDI(1,1,max_waittime,0)
7print("WaitToolDI错误码",error)

3.10. 获取控制箱模拟量输入

原型

GetAI(id, block = 0)

描述

获取控制箱模拟量输入

必选参数

  • id:io编号,范围[0~1];

默认参数

  • block:0-阻塞,1-非阻塞 默认0

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)value: 输入电流或电压值百分比,范围 [0~100] 对应电流值 [0~20mA] 或电压 [0~10V]

3.10.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4error = robot.GetAI(0)
5print("获取AI0",error)

3.11. 获取工具模拟量输入

原型

GetToolAI (id, block = 0)

描述

获取末端模拟量输入

必选参数

  • id:io编号,范围[0];

默认参数

  • block:0-阻塞,1-非阻塞 默认0

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)value: 输入电流或电压值百分比,范围 [0~100] 对应电流值 [0~20mA] 或电压 [0~10V]

3.11.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4error = robot.GetToolAI(0)
5print("获取ToolAI0",error)

3.12. 等待控制箱模拟量输入

原型

WaitAI(id,sign,value,maxtime,opt)

描述

等待控制箱模拟量输入

必选参数

  • id:io编号,范围[0~1];

  • sign:0-大于,1-小于

  • value:输入电流或电压值百分比,范围[0~100]对应电流值[0~20mA]或电压[0~10V];

  • maxtime:最大等待时间,单位[ms];

  • opt:超时后策略,0-程序停止并提示超时,1-忽略超时提示程序继续执行,2-一直等待

默认参数

返回值

错误码 成功-0 失败- errcode

3.12.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4max_waittime = 2000
5#等待控制箱AI
6error = robot.WaitAI(0,0,50,max_waittime,1)         #忽略超时提示程序继续执行
7print("WaitAI错误码",error)

3.13. 等待工具模拟量输入

原型

WaitToolAI(id,sign,value,maxtime,opt)

描述

等待末端模拟量输入

必选参数

  • id:io编号,范围[0];

  • sign:0-大于,1-小于

  • value:输入电流或电压值百分比,范围[0~100]对应电流值[0~20mA]或电压[0~10V];

  • maxtime:最大等待时间,单位[ms];

  • 必选参数 `opt`:超时后策略,0-程序停止并提示超时,1-忽略超时提示程序继续执行,2-一直等待

默认参数

返回值

错误码 成功-0 失败- errcode

3.13.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4max_waittime = 2000
5#等待工具AI
6error = robot.WaitToolAI(0,0,50,max_waittime,0)
7print("WaitToolAI错误码",error)