6. 机器人状态查询

6.1. 获取机器人安装角度

原型

GetRobotInstallAngle()

描述

获取机器人安装角度

必选参数

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)[yangle,zangle] yangle-倾斜角,zangle-旋转角

6.1.1. 代码示例

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

6.2. 获取系统变量值

原型

GetSysVarValue(id)

描述

获取系统变量值

必选参数

  • id:系统变量编号,范围[1~20]

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回) var_value:系统变量值

6.2.1. 代码示例

1from fairino import Robot
2import time
3# 与机器人控制器建立连接,连接成功返回一个机器人对象
4robot = Robot.RPC('192.168.58.2')
5for i in range(1,21):
6    error = robot.GetSysVarValue(i)
7    print("系统变量编号:",i,"值", error)

6.3. 获取当前关节位置(角度)

原型

GetActualJointPosDegree(flag = 1)

描述

获取关节当前位置(角度)

必选参数

  • flag:0-阻塞,1-非阻塞

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回) joint_pos=[j1,j2,j3,j4,j5,j6]

6.3.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetActualJointPosDegree()
5print("获取当前关节位置 (角度)", ret)

6.4. 获取当前关节位置(弧度)

原型

GetActualJointPosRadian(flag = 1)

描述

获取关节当前位置(弧度)

必选参数

默认参数

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

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回) joint_pos=[j1,j2,j3,j4,j5,j6]

6.4.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetActualJointPosRadian()
5print("获取当前关节位置 (弧度)", ret)

6.5. 获取关节反馈速度-deg/s

原型

GetActualJointSpeedsDegree (flag = 1 )

描述

获取关节反馈速度-deg/s

必选参数

默认参数

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

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回) speed=[j1,j2,j3,j4,j5,j6]

6.5.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetActualJointSpeedsDegree()
5print("获取关节反馈速度-deg/s", ret)

6.6. 获取TCP指令合速度

原型

GetTargetTCPCompositeSpeed (flag = 1)

描述

获取TCP指令合速度

必选参数

默认参数

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

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)[tcp_speed,ori_speed] tcp_speed 线性合速度 ori_speed 姿态合速度

6.6.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetTargetTCPCompositeSpeed()
5print("获取TCP指令合速度", ret)

6.7. 获取TCP反馈合速度

原型

GetActualTCPCompositeSpeed (flag = 1)

描述

获取TCP反馈合速度

必选参数

默认参数

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

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)[tcp_speed,ori_speed] tcp_speed 线性合速度 ori_speed 姿态合速度

6.7.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetActualTCPCompositeSpeed()
5print("获取TCP反馈合速度", ret)

6.8. 获取TCP指令速度

原型

GetTargetTCPSpeed (flag = 1)

描述

获取TCP指令速度

必选参数

默认参数

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

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)speed [x,y,z,rx,ry,rz]

6.8.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetTargetTCPSpeed()
5print("获取TCP指令速度", ret)

6.9. 获取TCP反馈速度

原型

GetActualTCPSpeed (flag = 1)

描述

获取TCP反馈速度

必选参数

默认参数

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

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)speed [x,y,z,rx,ry,rz]

6.9.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetActualTCPSpeed()
5print("获取TCP反馈速度", ret)

6.10. 获取当前工具位姿

原型

GetActualTCPPose (flag = 1)

描述

获取当前工具位姿

必选参数

默认参数

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

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)tcp_pose=[x,y,z,rx,ry,rz]

6.10.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetActualTCPPose()
5print("获取当前工具位姿", ret)

6.11. 获取当前工具坐标系编号

原型

GetActualTCPNum (flag = 1)

描述

获取当前工具坐标系编号

必选参数

默认参数

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

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)tool_id:工具坐标系编号

6.11.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetActualTCPNum()
5print("获取当前工具坐标系编号", ret)

6.12. 获取当前工件坐标系编号

原型

GetActualWObjNum (flag = 1)

描述

获取当前工件坐标系编号

必选参数

默认参数

flag:0-阻塞,1-非阻塞 默认1

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)wobj_id:工件坐标系编号

6.12.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetActualWObjNum()
5print("获取当前工件坐标系编号", ret)

6.13. 获取当前末端法兰位姿

原型

GetActualToolFlangePose (flag = 1)

描述

获取当前末端法兰位姿

必选参数

默认参数

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

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)flange_pose=[x,y,z,rx,ry,rz]

6.13.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetActualToolFlangePose()
5print("获取当前末端法兰位姿", ret)

6.14. 逆运动学求解

原型

GetInverseKin(type,desc_pos,config)

描述

逆运动学,笛卡尔位姿求解关节位置

必选参数

  • type:0-绝对位姿(基坐标系),1-相对位姿(基坐标系),2-相对位姿(工具坐标系)

  • desc_pose:[x,y,z,rx,ry,rz],工具位姿,单位[mm][°]

默认参数

  • config:关节配置,[-1]-参考当前关节位置求解,[0~7]-依据关节配置求解 默认-1

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回) joint_pos=[j1,j2,j3,j4,j5,j6]

6.14.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4J1=[95.442,-101.149,-98.699,-68.347,90.580,-47.174]
5P1=[75.414,568.526,338.135,-178.348,-0.930,52.611]
6ret = robot.GetInverseKin(0,P1,config=-1)
7print("逆运动学,笛卡尔位姿求解关节位置", ret)

6.15. 逆运动学求解-指定参考位置

原型

GetInverseKinRef(type,desc_pos,joint_pos_ref)

描述

逆运动学,工具位姿求解关节位置,参考指定关节位置求解

必选参数

  • type:0-绝对位姿(基坐标系),1-相对位姿(基坐标系),2-相对位姿(工具坐标系)

  • desc_pos:[x,y,z,rx,ry,rz]工具位姿,单位[mm][°]

  • joint_pos_ref:[j1,j2,j3,j4,j5,j6],关节参考位置,单位[°]

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回) joint_pos=[j1,j2,j3,j4,j5,j6]

6.15.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4J1=[95.442,-101.149,-98.699,-68.347,90.580,-47.174]
5P1=[75.414,568.526,338.135,-178.348,-0.930,52.611]
6ret = robot.GetInverseKinRef(0,P1,J1)
7print("逆运动学,工具位姿求解关节位置,参考指定关节位置求解", ret)

6.16. 逆运动学求解-是否有解

原型

GetInverseKinHasSolution(type,desc_pos,joint_pos_ref)

描述

逆运动学,工具位姿求解关节位置 是否有解

必选参数

  • type:0-绝对位姿(基坐标系),1-相对位姿(基坐标系),2-相对位姿(工具坐标系)

  • desc_pos:[x,y,z,rx,ry,rz]工具位姿,单位[mm][°]

  • joint_pos_ref:[j1,j2,j3,j4,j5,j6],关节参考位置,单位[°]

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回) result:“True”-有解,“False”-无解

6.16.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4J1=[95.442,-101.149,-98.699,-68.347,90.580,-47.174]
5P1=[75.414,568.526,338.135,-178.348,-0.930,52.611]
6ret = robot.GetInverseKinHasSolution(0,P1,J1)
7print("逆运动学,工具位姿求解关节位置是否有解", ret)

6.17. 正运动学求解

原型

GetForwardKin(joint_pos)

描述

正运动学,关节位置求解工具位姿

必选参数

  • joint_pos:[j1,j2,j3,j4,j5,j6]:关节位置,单位[°]

默认参数

返回值

  • 错误码 成功-0 失败- errcode

  • 返回值(调用成功返回)desc_pos=[x,y,z,rx,ry,rz]

6.17.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4J1=[95.442,-101.149,-98.699,-68.347,90.580,-47.174]
5ret = robot.GetForwardKin(J1)
6print("正运动学,关节位置求解工具位姿", ret)

6.18. 获取当前关节转矩

原型

GetJointTorques (flag = 1)

描述

获取当前关节转矩

必选参数

默认参数

flag:0-阻塞,1-非阻塞 默认1

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)torques=[j1,j2,j3,j4,j5,j6]

6.18.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetJointTorques()
5print("获取当前关节转矩", ret)

6.19. 获取当前负载的重量

原型

GetTargetPayload (flag = 1)

描述

获取当前负载的质量

必选参数

默认参数

flag:0-阻塞,1-非阻塞 默认1

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)weight 单位 [kg]

6.19.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetTargetPayload(0)
5print("获取当前负载的质量", ret)

6.20. 获取当前负载的质心

原型

GetTargetPayloadCog (flag = 1)

描述

获取当前负载的质心

必选参数

默认参数

flag:0-阻塞,1-非阻塞 默认1

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)cog=[x,y,z]: 质心坐标,单位 [mm]

6.20.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetTargetPayloadCog(0)
5print("获取当前负载的质心", ret)

6.21. 获取当前工具坐标系

原型

GetTCPOffset (flag = 1)

描述

获取当前工具坐标系

必选参数

默认参数

flag:0-阻塞,1-非阻塞 默认1

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)tcp_offset=[x,y,z,rx,ry,rz]: 相对位姿,单位 [mm][°]

6.21.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetTCPOffset()
5print("获取当前工具坐标系", ret)

6.22. 获取当前工件坐标系

原型

GetWObjOffset (flag = 1)

描述

获取当前工件坐标系

必选参数

默认参数

flag:0-阻塞,1-非阻塞 默认1

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)wobj_offset=[x,y,z,rx,ry,rz]: 相对位姿,单位 [mm][°]

6.22.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetWObjOffset()
5print("获取当前工件坐标系", ret)

6.23. 获取关节软限位角度

原型

GetJointSoftLimitDeg (flag = 1)

描述

获取关节软限位角度

必选参数

默认参数

flag:0-阻塞,1-非阻塞 默认1

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)[j1min,j1max,j2min,j2max,j3min,j3max, j4min,j4max,j5min, j5max, j6min,j6max]: 轴 1~ 轴 6 关节负限位与正限位,单位 [mm]

6.23.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetJointSoftLimitDeg()
5print("获取关节软限位角度", ret)

6.24. 获取系统时间

原型

GetSystemClock()

描述

获取系统时间

必选参数

默认参数

返回值

-错误码 成功-0 失败- errcode - 返回值(调用成功返回)t_ms: 单位 [ms]

6.24.1. 代码示例

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

6.25. 获取机器人当前关节配置

原型

GetRobotCurJointsConfig()

描述

获取机器人当前关节配置

必选参数

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)config: 范围 [0~7]

6.25.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetRobotCurJointsConfig()
5print("获取机器人当前关节配置", ret)

6.26. 获取默认速度

原型

GetDefaultTransVel()

描述

获取默认速度

必选参数

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)vel: 单位 [mm/s]

6.26.1. 代码示例

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

6.27. 查询机器人运动是否完成

原型

GetRobotMotionDone()

描述

查询机器人运动是否完成

必选参数

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)state:0-未完成,1-完成

6.27.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetRobotMotionDone()
5print("查询机器人运动是否完成", ret)

6.28. 查询机器人错误码

原型

GetRobotErrorCode()

描述

查询机器人错误码

必选参数

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)[maincode subcode] maincode 主错误码 subcode 子错误码

6.28.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetRobotErrorCode()
5print("查询机器人错误码", ret)

6.29. 查询机器人示教管理点位数据

原型

GetRobotTeachingPoint(name)

描述

查询机器人示教管理点位数据

必选参数

name:点位名

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)点位数据[x,y,z,rx,ry,rz,j1,j2,j3,j4,j5,j6,tool, wobj,speed,acc,e1,e2,e3,e4]

6.29.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.GetRobotTeachingPoint("11")
5print("查询机器人示教管理点位数据错误码", ret)

6.30. 获取SSH公钥

原型

GetSSHKeygen()

描述

获取SSH公钥

必选参数

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)keygen 公钥

6.30.1. 代码示例

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

6.31. 计算指定路径下文件的MD5值

原型

ComputeFileMD5(file_path)

描述

计算指定路径下文件的MD5值

必选参数

  • file_path:文件路径包含文件名,默认Traj文件夹路径为:/fruser/traj/,如/fruser/traj/trajHelix_aima_1.txt

默认参数

返回值

错误码 成功-0 失败- errcode - 返回值(调用成功返回)keygen 公钥

6.31.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4ret = robot.ComputeFileMD5("/fruser/201.lua")   #计算指定路径下文件的MD5值
5print("计算指定路径下文件的MD5值", ret)

6.32. 获取机器人版本信息

在 python 版本加入: SDK-v2.0.1

原型

GetSoftwareVersion()

描述

获取机器人版本信息

必选参数

默认参数

返回值

  • 错误码 成功-0 失败- errcode

  • Return:(if success)robotModel, webVersion, controllerVersion

6.32.1. 代码示例

1from fairino import Robot
2# 与机器人控制器建立连接,连接成功返回一个机器人对象
3robot = Robot.RPC('192.168.58.2')
4
5ret = robot.GetSoftwareVersion()
6print("GetSoftwareVersion():", ret)

6.33. 获取机器人硬件版本信息

在 python 版本加入: SDK-v2.0.1

原型

GetSlaveHardVersion()

描述

获取机器人硬件版本信息

必选参数

默认参数

返回值

  • 错误码 成功-0 失败- errcode

  • Return:(if success)ctrlBoxBoardVersion, driver1Version, driver2Version , driver3Version, driver4Version, driver5Version, driver6Version, endBoardVersion

6.33.1. 代码示例

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

6.34. 获取机器人固件版本信息

在 python 版本加入: SDK-v2.0.1

原型

GetSlaveFirmVersion()

描述

获取机器人固件版本信息

必选参数

默认参数

返回值

  • 错误码 成功-0 失败- errcode

  • Return:(if success)ctrlBoxBoardVersion, driver1Version, driver2Version , driver3Version, driver4Version, driver5Version, driver6Version, endBoardVersion

6.34.1. 代码示例

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

6.35. 获取DH补偿参数

在 python 版本加入: SDK-v2.0.1

原型

GetDHCompensation()

描述

获取DH补偿参数

必选参数

默认参数

返回值

  • 错误码 成功-0 失败- errcode

  • Return:(if success)dhCompensation 机器人DH参数补偿值(mm) [cmpstD1,cmpstA2,cmpstA3,cmpstD4,cmpstD5,cmpstD6]

6.35.1. 代码示例

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