图1-15机器人姿态1画面
(6)分别利用操纵杆改变机器人姿态,依次修改点2,点3,点4的位置。 (7)点击确定完成对工具坐标系的建立。
二.运动指令
? MoveJ -当该运动无须位于直线中时,MoveJ用于将机械臂迅速地从一点移动至另一点。机械臂和外轴沿非线性路径运动至目的位置。所有轴均同时达到目的位置
样例:MoveJ p1, v500, z30, tool2;数据为z30。
? MoveAbsJ(Move Absolute Joint)用于将机械臂和外轴移动至轴位置中指
定的绝对 位置。
? MoveL用于将工具中心点沿直线移动至给定目的
? MoveC用于将工具中心点(TCP)沿圆周移动至给定目的地。
Offs
MoveLOffs(p2, 0, 0, 10), v1000, z50, tool1;
将机械臂移动至距位置p2(沿z方向)10 mm的一个点。
1.线性运动指令(MoveL)
线性运动指令也称直线运动指令。工具的TCP按照设定的姿态从起点匀速移动到目标位置点,TCP运动路径是三维空间中P1点到P2点的直线运动,如图2-2-4所示。直线运动的起始点是前一运动指令的示教点,结束点是当前指令的示教点。运动特点:(1)运动路径可预见。(2)在指定的坐标系中实现插补运动。
图2-1 直线运动指令示例图
(1)指令格式
MoveL[\\Conc,]ToPoint,Speed[\\V] [\\T],Zone[\\Z] [\\Inpos],Tool[\\Wobj] [\\Corr]; 指令格式说明:
1)[\\Conc,]:当机械臂正在运动时,执行后续指令。通常不使用,用[\\Conc,]可将连续运动指令的数量限制为5;
2)ToPoint:目标点’默认为*。
3)Speed:运动的速度数据。规定了关于工具中心点,工具范围调整和外轴的速度。
4)[\\V]:规定指令中TCP的速率,以mm/s计算。 5)[\\T]:规定机械臂运行的总时间控制,以秒计算。
6)Zone:相关移动的区域数据,区域数据描述了所生成拐角路径的大小。 7)[\\Z]:该参数用于规定指令中机械臂TCP的位置精度其替代区域数据中指定的相关区域。
8)[\\Inpos]:规定停止点中机械臂TCP位置的收敛准则。 9)Tool:工具中心点(TCP)。
10)[\\Wobj]:规定机器人位置关联的工件(坐标系)。
11)[\\Corr]:修正目标点开关,将通过指令CorrWrite而写入修正条目的修正数据添加到路径和目的位置。
12)[ \\TLoad ]:Total load,\\TLoad主动轴描述了移动中使用的总负载。总负载就是相关的工具负载加上该工具正在处理的有效负载。
如果\\TLoad自变数被设置成load0,那么就不考虑\\TLoad自变数,而是以当前tooldata中的loaddata作为代替。
例如:
MoveL p1,v2000,fine,grip1; MoveL \\Conc, p1,v2000,fine,grip1; MoveL p1,v2000\\V:=2200,z40\\z:45,grip1; MoveL p1,v2000,z40,grip1\\Wobj:=wobjTable; MoveL p1,v2000,fine\\ Inpos:=inpos50, grip1; MoveL p1,v2000,z40,grip1\\corr; (2)应用
机器人以线性方式运动至目标点,当前点与目标点两点决定一条直线,机器人运动状态可控,运动路径保持唯一,可能出现死点,常用于机器人在工作状态移动。
2.关节运动指令(MoveJ)
程序一般起始点使用MoveJ指令。机器人将TCP沿最快速轨迹送到目标点,机器人的姿态会随意改变,TCP路径不可预测。机器人最快速的运动轨迹通常不是最短的轨迹,因而关节轴运动不是直线。由于机器人轴的旋转运动,弧形轨迹会比直线轨迹更快。运动示意图如图2-2-5所示。运动特点:(1)运动的具体过程是不可预见的。(2)六个轴同时启动并且同时停止。使用MoveJ指令可以使机器人的运动更加高效快速,也可以是机器人的运动更加柔和,但是关节轴运动轨迹是不可预见的,所以使用该指令务必确认机器人与周边设备不会发生碰撞。
图2-2 运动指令示意图
(1)指令格式
MoveJ[\\Conc,]ToPoint,Speed[\\V] [\\T],Zone[\\Z] [\\Inpos],Tool[\\Wobj];
指令格式说明:
1)[\\Conc,]:当机械臂正在运动时,执行后续指令。通常不使用,用[\\Conc,]可将连续运动指令的数量限制为5;
2)ToPoint:目标点’默认为*。 3)Speed:运行速度数据。 4)[\\V]:特殊运行速度mm/s。 5)[\\T]:运行时间控制s。 6)Zone:运行转角数据。 7)[\\Z]:特殊运行转角mm。 8)[\\Inpos]:运行停止点数据。 9)Tool:工具中心点(TCP)。 10)[\\Wobj]:工件坐标系。 例如:
MoveJ p1,v2000,fine,grip1; MoveJ\\Conc, p1,v2000,fine,grip1; MoveJ p1,v2000\\V:=2200,z40\\z:45,grip1; MoveJ p1,v2000,z40,grip1\\Wobj:=wobjTable; MoveJ\\Conc, p1,v2000,fine\\ Inpos:=inpos50, grip1; (2)应用
机器人以最快捷的方式运动至目标点,机器人运动状态不完全可控,但运动路径保持唯一,常用于机器人在空间大范围移动。
(3)编程实例
根据如图2-2-6所示的运动轨迹,写出其关节指令程序。
图2-3 运动轨迹
图2-2-6所示的运动轨迹的指令程序如下: MoveL p1,v200,z10,tool1; MoveL p2,v100,fine,tool1; MoveJ p3,v500,fine,tool1; 3.圆弧运动指令(MoveC)
圆弧运动指令也称为圆弧插补运动指令。三点确定唯一圆弧,因此,圆弧运动需要示教三个圆弧运动点,起始点P1是上一条运动指令的末端点,P2是中间辅助点,P3是圆弧终点,如图2-2-7所示。
图2-4 圆弧运动轨迹
(1)指令格式
MoveC[\\Conc,] CirPoint,ToPoint,Speed[\\V] [\\T],Zone[\\Z] [\\Inpos],Tool[\\Wobj] [\\Corr];
指令格式说明:
1)[\\Conc,]:当机械臂正在运动时,执行后续指令。通常不使用,用[\\Conc,]可将连续运动指令的数量限制为5;
2)CirPoin:中间点’默认为*。 3)ToPoint:目标点’默认为*。 4)Speed:运行速度数据。 5) [\\V]:特殊运行速度mm/s。 6)[\\T]:运行时间控制s。 7)Zone:运行转角数据。 8)[\\Z]:特殊运行转角mm。 9) [\\Inpos]:运行停止点数据。 10)Tool:工具中心点(TCP)。 11) [\\Wobj]:工件坐标系。