6.1. Setting Tool Reference Points - Six-Point Method
Prototype | SetToolPoint(point_num) |
Description | Setting Tool Reference Points - Six Point Method |
Mandatory parameters |
|
Default parameters | NULL |
Return Value | Error Code Success-0 Failure- errcode |
6.2. Calculation tool coordinate system - six-point method
Prototype | ComputeTool() |
Calculate the tool coordinate system - six-point method (after setting the six tool reference points) | |
Mandatory parameters | NULL |
Default parameters | NULL |
Return Value |
|
6.3. Setting Tool Reference Points - Four Point Method
Prototype | SetTcp4RefPoint(point_num) |
Description | Setting Tool Reference Points - Four Point Method |
Mandatory parameter | point_num: point number, range [1~4] |
Default parameters | NULL |
Return Value |
|
6.4. Calculation Tool Coordinate System - Four Point Method
prototype | ComputeTcp4() |
Description | Calculate tool coordinate system - four-point method (after setting the four tool reference points) |
Mandatory parameters | NULL |
Default parameters | NULL |
Return Value |
|
6.5. Calculate the tool coordinate system based on the point information
New in version python: SDK-v2.0.8
Prototype | ComputeToolCoordWithPoints(method, pos) |
Description | Calculate the tool coordinate system based on the point information |
Mandatory parameters |
|
Default parameters | NULL |
Return Value |
|
6.6. Setting the tool coordinate system
Prototype | SetToolCoord(id,t_coord,type,install,toolID,loadNum) |
Description | Setting the tool coordinate system |
Mandatory parameters |
|
Default parameters | NULL |
Return Value | Error Code Success-0 Failure- errcode |
6.7. Setting the tool coordinate system list
Prototype | SetToolList(id,t_coord ,type, install, loadNum) |
Description | Set up a list of tool coordinate systems |
Mandatory parameters |
|
Default parameters | NULL |
Return Value | Error Code Success-0 Failure- errcode |
6.8. Get the current tool coordinate system
Prototype | GetTCPOffset(flag=1) |
Description | Get current tool coordinate system |
Mandatory parameters | NULL |
Default parameters | flag: 0-blocking, 1-non-blocking Default 1 |
Return Value |
|
6.9. Robot tool coordinate system manipulation code example
from fairino import Robot
import time
# Establish a connection with the robot controller and return a robot object if the connection is successful
robot = Robot.RPC('192.168.58.2')
p1Desc = [186.331, 487.913, 209.850, 149.030, 0.688, -114.347]
p2Desc = [69.721, 535.073, 202.882, -144.406, -14.775, -89.012]
p3Desc = [146.861, 578.426, 205.598, 175.997, -36.178, -93.437]
p4Desc = [136.284, 509.876, 225.613, 178.987, 1.372, -100.696]
p5Desc = [138.395, 505.972, 298.016, 179.134, 2.147, -101.110]
p6Desc = [105.553, 454.325, 232.017, -179.426, 0.444, -99.952]
p1Joint = [-127.876, -75.341, 115.417, -122.741, -59.820, 74.300]
p2Joint = [-101.780, -69.828, 110.917, -125.740, -127.841, 74.300]
p3Joint = [-112.851, -60.191, 86.566, -80.676, -97.463, 74.300]
p4Joint = [-116.397, -76.281, 113.845, -128.611, -88.654, 74.299]
p5Joint = [-116.814, -82.333, 109.162, -118.662, -88.585, 74.302]
p6Joint = [-115.649, -84.367, 122.447, -128.663, -90.432, 74.303]
exaxisPos = [0, 0, 0, 0]
offdese = [0, 0, 0, 0, 0, 0]
posJ = [p1Joint, p2Joint, p3Joint, p4Joint, p5Joint, p6Joint]
rtn,coordRtn = robot.ComputeToolCoordWithPoints(1, posJ)
print(f"ComputeToolCoordWithPoints {rtn} coord is {coordRtn[0]} {coordRtn[1]} {coordRtn[2]} {coordRtn[3]} {coordRtn[4]} {coordRtn[5]}")
robot.MoveJ(joint_pos=p1Joint,tool=0, user=0, vel=100)
robot.SetToolPoint(1)
robot.MoveJ(joint_pos=p2Joint,tool=0, user=0, vel=100)
robot.SetToolPoint(2)
robot.MoveJ(joint_pos=p3Joint,tool=0, user=0, vel=100)
robot.SetToolPoint(3)
robot.MoveJ(joint_pos=p4Joint,tool=0, user=0, vel=100)
robot.SetToolPoint(4)
robot.MoveJ(joint_pos=p5Joint,tool=0, user=0, vel=100)
robot.SetToolPoint(5)
robot.MoveJ(joint_pos=p6Joint,tool=0, user=0, vel=100)
robot.SetToolPoint(6)
rtn,coordRtn = robot.ComputeTool()
print(f"6 Point ComputeTool {rtn} coord is {coordRtn[0]} {coordRtn[1]} {coordRtn[2]} {coordRtn[3]} {coordRtn[4]} {coordRtn[5]}")
robot.SetToolList(1, coordRtn, 0, 0, 0)
robot.MoveJ(joint_pos=p1Joint,tool=0, user=0, vel=100)
robot.SetTcp4RefPoint(1)
robot.MoveJ(joint_pos=p2Joint,tool=0, user=0, vel=100)
robot.SetTcp4RefPoint(2)
robot.MoveJ(joint_pos=p3Joint,tool=0, user=0, vel=100)
robot.SetTcp4RefPoint(3)
robot.MoveJ(joint_pos=p4Joint,tool=0, user=0, vel=100)
robot.SetTcp4RefPoint(4)
rtn,coordRtn = robot.ComputeTcp4()
print(f"4 Point ComputeTool {rtn} coord is {coordRtn[0]} {coordRtn[1]} {coordRtn[2]} {coordRtn[3]} {coordRtn[4]} {coordRtn[5]}")
robot.SetToolCoord(2, coordRtn, 0, 0, 1, 0)
rtn,getCoord = robot.GetTCPOffset(0)
print(f"GetTCPOffset {rtn} coord is {getCoord[0]} {getCoord[1]} {getCoord[2]} {getCoord[3]} {getCoord[4]} {getCoord[5]}")
robot.CloseRPC()
6.10. Setting External Tool Reference Points-Six-Point Method
Prototype | SetExTCPPoint(point_num) |
Description | Setting the external tool reference point - three-point method |
Mandatory parameters |
|
Default parameters | NULL |
Return Value | Error Code Success-0 Failure- errcode |