7. 机器人轨迹复现
7.1. 设置轨迹记录参数
原型 |
|
---|---|
描述 |
设置轨迹记录参数 |
必选参数 |
|
默认参数 |
|
返回值 |
错误码 成功-0 失败- errcode |
7.1.1. 代码示例
1from fairino import Robot
2import time
3# 与机器人控制器建立连接,连接成功返回一个机器人对象
4robot = Robot.RPC('192.168.58.2')
5type = 1 # 数据类型,1-关节位置
6name = 'tpd2023' # 轨迹名
7period = 4 #采样周期,2ms或4ms或8ms
8di = 0 # di输入配置
9do = 0 # do输出配置
10ret = robot.SetTPDParam(name, period, di_choose=di) #配置TPD参数
11print("配置TPD参数错误码", ret)
12robot.Mode(1) # 机器人切入手动模式
13time.sleep(1)
14robot.DragTeachSwitch(1) #机器人切入拖动示教模式
15ret = robot.GetActualTCPPose()
16print("获取当前工具位姿", ret)
17time.sleep(1)
18ret = robot.SetTPDStart(name, period, do_choose=do) # 开始记录示教轨迹
19print("开始记录示教轨迹错误码", ret)
20time.sleep(15)
21ret = robot.SetWebTPDStop() # 停止记录示教轨迹
22print("停止记录示教轨迹错误码", ret)
23robot.DragTeachSwitch(0) #机器人切入非拖动示教模式
24# robot.SetTPDDelete('tpd2023') # 删除TPD轨迹
7.2. 开始轨迹记录
原型 |
|
---|---|
描述 |
开始轨迹记录 |
必选参数 |
|
默认参数 |
|
返回值 |
错误码 成功-0 失败- errcode |
7.3. 停止轨迹记录
原型 |
|
---|---|
描述 |
停止轨迹记录 |
必选参数 |
无 |
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.4. 删除轨迹记录
原型 |
|
---|---|
描述 |
删除轨迹记录 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.5. 轨迹预加载
原型 |
|
---|---|
描述 |
轨迹预加载 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.5.1. 代码示例
1from fairino import Robot
2import time
3# 与机器人控制器建立连接,连接成功返回一个机器人对象
4robot = Robot.RPC('192.168.58.2')
5# P1=[-321.821, 125.694, 282.556, 174.106, -15.599, 152.669]
6name = 'tpd2023' #轨迹名
7blend = 1 #是否平滑,1-平滑,0-不平滑
8ovl = 100.0 #速度缩放
9ret = robot.LoadTPD(name) #轨迹预加载
10print("轨迹预加载错误码",ret)
11ret,P1 = robot.GetTPDStartPose(name) #获取轨迹起始位姿
12print ("获取轨迹起始位姿错误码",ret,"起始位姿",P1)
13ret = robot.MoveL(P1,0,0) #运动到起始点
14print("运动到起始点错误码",ret)
15time.sleep(10)
16ret = robot.MoveTPD(name, blend, ovl) #轨迹复现
17print("轨迹复现错误码",ret)
7.6. 获取轨迹起始位姿
原型 |
|
---|---|
描述 |
获取轨迹起始位姿 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode - 返回值(调用成功返回)desc_pose [x,y,z,rx,ry,rz] |
7.7. 轨迹复现
原型 |
|
---|---|
描述 |
轨迹复现 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.8. 轨迹预处理
原型 |
|
---|---|
描述 |
轨迹预处理 |
必选参数 |
|
默认参数 |
|
返回值 |
错误码 成功-0 失败- errcode |
7.9. 轨迹复现
原型 |
|
---|---|
描述 |
轨迹复现 |
必选参数 |
无 |
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.10. 获取轨迹起始位姿
原型 |
|
---|---|
描述 |
获取轨迹起始位姿 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode - 返回值(调用成功返回)desc_pose [x,y,z,rx,ry,rz] |
7.11. 获取轨迹点编号
原型 |
|
---|---|
描述 |
获取轨迹点编号 |
必选参数 |
无 |
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode - 返回值(调用成功返回)pnum |
7.12. 设置轨迹运行中的速度
原型 |
|
---|---|
描述 |
设置轨迹运行中的速度 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.13. 设置轨迹运行中的力和扭矩
原型 |
|
---|---|
描述 |
设置轨迹运行中的力和扭矩 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.14. 设置轨迹运行中的沿x方向的力
原型 |
|
---|---|
描述 |
设置轨迹运行中的沿x方向的力 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.15. 设置轨迹运行中的沿y方向的力
原型 |
|
---|---|
描述 |
设置轨迹运行中的沿y方向的力 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.16. 设置轨迹运行中的沿z方向的力
原型 |
|
---|---|
描述 |
设置轨迹运行中的沿z方向的力 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.17. 设置轨迹运行中的绕x轴的扭矩
原型 |
|
---|---|
描述 |
设置轨迹运行中的绕x轴的扭矩 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.18. 设置轨迹运行中的绕y轴的扭矩
原型 |
|
---|---|
描述 |
设置轨迹运行中的绕y轴的扭矩 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.19. 设置轨迹运行中的绕z轴的扭矩
原型 |
|
---|---|
描述 |
设置轨迹运行中的绕z轴的扭矩 |
必选参数 |
|
默认参数 |
无 |
返回值 |
错误码 成功-0 失败- errcode |
7.19.1. 代码示例
1from fairino import Robot
2import time
3# 与机器人控制器建立连接,连接成功返回一个机器人对象
4robot = Robot.RPC('192.168.58.2')
5name = "/fruser/traj/trajHelix_aima_1.txt" #轨迹名
6blend = 1 #是否平滑,1-平滑,0-不平滑
7ovl = 50.0 #速度缩放
8ft =[0.5, 0.5, 0.5, 0.5, 0.5, 0.5]
9ret = robot.LoadTrajectoryJ(name,ovl) #轨迹预加载
10print("轨迹预加载错误码",ret)
11ret,P1 = robot.GetTrajectoryStartPose(name) #获取轨迹起始位姿
12print ("获取轨迹起始位姿错误码",ret,"起始位姿",P1)
13ret = robot.MoveL(P1,1,0) #运动到起始点
14print("运动到起始点错误码",ret)
15ret = robot.GetTrajectoryPointNum() #获取轨迹点编号
16print("获取轨迹点编号错误码",ret)
17time.sleep(10)
18ret = robot.MoveTrajectoryJ() #轨迹复现
19print("轨迹复现错误码",ret)
20time.sleep(10)
21ret = robot.SetTrajectoryJSpeed(ovl) #设置轨迹运行中的速度
22print("设置轨迹运行中的速度错误码",ret)
23time.sleep(1)
24ret = robot.SetTrajectoryJForceTorque(ft) #设置轨迹运行中的力和扭矩
25print("设置轨迹运行中的力和扭矩错误码",ret)
26time.sleep(1)
27ret = robot.SetTrajectoryJForceFx(0) #设置轨迹运行中的沿x方向的力
28print("设置轨迹运行中的沿x方向的力错误码",ret)
29time.sleep(1)
30ret = robot.SetTrajectoryJForceFy(0) #设置轨迹运行中的沿y方向的力
31print("设置轨迹运行中的沿y方向的力错误码",ret)
32time.sleep(1)
33ret = robot.SetTrajectoryJForceFz(0) #设置轨迹运行中的沿z方向的力
34print("设置轨迹运行中的沿z方向的力错误码",ret)
35time.sleep(1)
36ret = robot.SetTrajectoryJTorqueTx(0) #设置轨迹运行中的绕x轴的扭矩
37print("设置轨迹运行中的绕x轴的扭矩错误码",ret)
38time.sleep(1)
39ret = robot.SetTrajectoryJTorqueTy(0) #设置轨迹运行中的绕y轴的扭矩
40print("设置轨迹运行中的绕y轴的扭矩错误码",ret)
41time.sleep(1)
42ret = robot.SetTrajectoryJTorqueTz(0) #设置轨迹运行中的绕z轴的扭矩
43print("设置轨迹运行中的绕z轴的扭矩错误码",ret)
44time.sleep(1)