2.2 动作指令详解
2.2.1 关节插补
(1)功能
Mov(Move)—从“起点(当前点)”向“终点”做关节插补运行。以各轴旋转等量的角度进行的插补运行简称为“关节插补”(插补就是各轴联动运行)。
(2)指令格式
Mov□<终点>□[,<近点>][轨迹类型<常数1>,<常数2>][<附随语句>]
(3)例句
Mov(Plt 1,10),100 Wth M_Out(17)=1
(4)说明
Mov语句是关节插补。从起点到终点,各轴以等量旋转的角度实现插补运行,其运行轨迹因此无法准确描述。
①终点:指“目标点”。
②“近点”:指接近“终点”的一个点。
在实际工作中,往往需要快进到终点的附近(快进),再慢速运动到终点。“近点”在“终点”的Z轴方向位置,根据符号确定是上方或下方。使用近点设置,是一种快速定位的方法。
③“类型常数”:用于设置运行轨迹。例如:
Type 1=1 绕行;Type 1=0 捷径运行
绕行是指按示教轨迹,可能大于180°轨迹运行。捷径指按最短轨迹,即小于180°轨迹运行。
④附随语句:例如Wth、WthIf,指在执行本指令时,同时执行其他的指令。
(5)样例程序
Mov P1′——移动到P1点。 Mov P1+P2′——移动到P1+P2的位置点。 Mov P1*P2′——移动到P1*P2位置点。 Mov P1,-50′——移动到P1点上方50mm的位置点。 Mov P1 Wth M_Out(17)=1′——向P1点移动同时指令输出信号(17)=ON。 Mov P1 WthIf M_In(20)=1,Skip′——向P1移动的同时,如果输入信号(20)=ON,就跳到下一行。 Mov P1 Type 1,0′——指定运行轨迹类型为“捷径型”。
如图2-3所示的运行轨迹的运动程序如下:
图2-3 程序及移动路径
1 Mov P1′——移动到P1点。 2 Mov P2,-50′——移动到P2点上方50mm位置点。 3 Mov P2′——移动到P2点。 4 Mov P3,-100,Wth M_Out(17)=1′——移动到P3点上方100mm位置点,同时指令输出信号(17)=ON。 5 Mov P3′——移动到P3点。 6 Mov P3□-100′——移动到P3点上方100mm位置点。 7 End′——程序结束。
注意
近点位置以TOOL坐标系的Z轴方向确定。
2.2.2 直线插补
(1)功能
本指令为直线插补指令,从起点向终点做插补运行,运行轨迹为“直线”。
(2)指令格式1
Mvs□<终点>□,<近点距离>,[<轨迹类型常数1>,<插补类型常数2>][<附随语句>]
(3)指令格式2
Mvs□<离开距离>□[<轨迹类型常数1>,<插补类型常数2>][<附随语句>]
(4)对指令格式的说明
①<终点>—目标位置点。
②<近点距离>—以TOOL坐标系的Z轴为基准,到“终点”的距离(实际是一个“接近点”)。往往用作快进、工进的分界点。
③<轨迹类型常数1>:
Type 1=1 绕行;Type 1=0 捷径运行。
④插补类型:
常数=0 关节插补;常数=1 直角插补;常数=2 通过特异点
⑤在指令格式2中的<离开距离>是便捷指令,以TOOL坐标系的Z轴为基准,离开“终点”的距离。
指令的移动轨迹如图2-4所示。
图2-4 Mvs指令的移动轨迹
(5)指令例句1
向终点做直线运动:
1 Mvs P1
(6)指令例句2
向“接近点”做直线运动,实际到达“接近点”,同时指令输出信号(17)=ON:
1 Mvs P1,-100.0 Wth M_Out(17)=1
(7)指令例句3
向终点做直线运动,(终点=P4+P5,“终点”经过加运算),实际到达“接近点”,同时如果输入信号(18)=ON,则指令输出信号(20)=ON:
1 Mvs P4+P5,50.0 WthIf M_In(18)=1,M_Out(20)=1
(8)指令例句4
从当前点,沿TOOL坐标系Z轴方向移动100mm:
Mvs,-100
2.2.3 三维真圆插补指令
(1)功能
本指令的运动轨迹是一完整的真圆,需要指定起点和圆弧中的两个点。运动轨迹如图2-5所示。
图2-5 Mvc—三维真圆插补指令的运行轨迹
(2)指令格式
Mvc□<起点>,<通过点1>,<通过点2>□附随语句
①<起点>,<通过点1>,<通过点2>—圆弧上的3个点。
②<起点>—真圆的“起点”和“终点”
(3)运动轨迹
从“当前点”开始到“P1”点,是直线轨迹。真圆运动轨迹为<P1>—<P2>—<P3>—<P1>。
(4)指令例句
1 Mvc P1,P2,P3′——真圆插补。 2 Mvc P1,J2,P3′——真圆插补。 3 Mvc P1,P2,P3 Wth M_Out(17)=1′——真圆插补同时输出信号(17)=ON。 4 Mvc P3,(Plt 1,5),P4 WthIf M_In(20)=1,M_Out(21)=1′——真圆插补同时如果输入信号(20)=1,则输出信号(21)=ON。
(5)说明
①本指令的运动轨迹由指定的3个点构成完整的真圆。
②圆弧插补的“形位(POSE)”为起点“形位(POSE)”,通过其余2点的“形位”不计。
③从“当前点”开始到“P1”点,是直线插补轨迹。
2.2.4 连续轨迹运行
(1)功能
连续轨迹运行是指在运行通过各位置点时,不做每一点的加减速运行,而是以一条连续的轨迹通过各点,如图2-6所示(对于非连续轨迹运行,其运行轨迹和速度曲线见图2-7)。
图2-6 连续轨迹运行时的运行轨迹和速度曲线
图2-7 非连续轨迹运行时的运行轨迹和速度曲线
(2)指令格式
Cnt□<1/0>[,<数值1>][,<数值2>]
(3)术语解释
①<1/0>:Cnt 1—连续轨迹运行;Cnt 0—连续轨迹运行无效。
②<数值1>:过渡圆弧尺寸1。
③<数值2>:过渡圆弧尺寸2。
在连续轨迹运行,通过“某一位置点”时,其轨迹不实际通过位置点,而是一过渡圆弧,这过渡圆弧轨迹由指定的数值构成,如图2-8所示。
图2-8 连续运行轨迹及过渡尺寸
(4)程序样例
1 Cnt 0′——连续轨迹运行无效。 2 Mvs P1′——移动到P1点。 3 Cnt 1′——连续轨迹运行有效。 4 Mvs P2′——移动到P2点。 5 Cnt 1,100,200′——指定过渡圆弧数据100mm/200mm。 6 Mvs P3′——移动到P3点。 7 Cnt 1,300′——指定过渡圆弧数据300mm/300mm。 8 Mov P4′——移动到P4点。 9 Cnt 0′——连续轨迹运行无效。 10 Mov P5′——移动到P5点。
(5)说明
①从Cnt1到Cnt0的区间为连续轨迹运行有效区间。
②系统初始值为:Cnt0(连续轨迹运行无效)。
③如果省略“数值1”“数值2”的设置,其过渡圆弧轨迹如图2-8虚线所示,圆弧起始点为“减速开始点”,圆弧结束点为“加速结束点”。
2.2.5 加减速时间与速度控制
(1)加减速时间与速度控制相关指令
各机器人的最大速度由其技术规范确定。以下指令除Spd外均为“速度倍率”指令。
①Accel:加减速度倍率指令(%),设置加减速度的百分数。
②Ovrd:速度倍率指令(%),设置全部轴的速度百分数。
③JOvrd:关节运行速度的倍率指令(%)。
④Spd:抓手运行速度(mm/s)。
⑤Oadl:选择最佳加减速模式有效或无效。
(2)指令样例
Accel′——加减速度为100%。 Accel,60,80′——加速度倍率=60%,减速度倍率=80%。 Ovrd 50′——运行速度倍率=50%。 JOvrd 70′——关节插补速度倍率=70%。 Spd 30′——设置抓手基准点速度=30mm/s。 Oadl ON′——最佳加减速模式有效。
(3)程序样例(参见图2-9)
图2-9 动作轨迹及速度倍率
1 Ovrd 100′——设置速度倍率=100%。 2 Mvs P1′——前进到P1点。 3 Mvs P2,-50′——前进到 4 Ovrd 50′——设置速度倍率=50%。 5 Mvs P2′——前进到P1点。 6 Spd 120′——设置抓手基准点速度=120mm/s,由于倍率=50%,所以实际速度=60mm/s。 7 Ovrd 100′——设置速度倍率=100%。 8 Accel 70,70′——设置加减速度倍率=70%。 9 Mvs P3′——前进到P3点。 10 Spd M_NSpd′——设置抓手基准点速度=初始值。 11 JOvrd 70′——设置关节插补速度倍率=70%。 12 Accel′——设置加减速度倍率=100%。 13 Mvs,-50′——退回到P3点的近点。 14 Mvs P1′——前进到P1点。 15 End′——程序结束。
2.2.6 Fine定位精度
(1)功能
定位精度用脉冲数表示,即指令脉冲与反馈脉冲的差值。脉冲数越小,定位精度越高。
(2)指令格式
Fine□<脉冲数>,<轴号>
(3)术语解释
<脉冲数>:表示定位精度,用常数或变量设置。
<轴号>:设置轴号。
(4)程序样例
1 Fine 300′——设置定位精度为300脉冲,全轴通用。 2 Mov P1′——前进到P1点。 3 Fine 100,2′——设置第2轴定位精度为100脉冲。 4 Mov P2′——前进到P1点。 5 Fine 0,5′——第5轴定位精度设置无效。 6 Mov P3′——前进到P3点。 7 Fine 10 0′——定位精度设置为100脉冲。 8 Mov P4′——前进到P4点。
2.2.7 高精度轨迹控制
(1)功能
高精度控制是指启用机器人高精度运行轨迹的功能。
(2)指令格式
Prec□ On—高精度轨迹运行有效。 Prec□ Off—高精度轨迹运行无效。
(3)程序样例(见图2-10)
图2-10 高精度运行轨迹
1 Mov P1,-50′——前进到P1点的近点。 2 Ovrd50′——设置速度倍率为50%。 3 Mvs P1′——前进到P1点。 4 Prec,On′——高精度轨迹运行有效。 5 Mvs P2′——从P1到P2以高精度轨迹运行。 6 Mvs P3′——从P2到P3以高精度轨迹运行。 7 Mvs P4′——从P3到P4以高精度轨迹运行。 8 Mvs P1′——从P4到P1以高精度轨迹运行。 9 Prec Off′——关闭高精度轨迹运行功能。 10 Mvs P1,-50′——前进到P1点的近点。 11 End′——程序结束。
2.2.8 抓手控制
(1)功能
抓手控制指令实际上是控制抓手的开启、闭合指令(必须在参数中设置输出信号控制抓手。通过指令相关的输出信号ON/OFF也可以达到相同的效果)。
(2)指令格式
HOpen—抓手张开。 HClose—抓手闭合。 Tool—设置 TOOL坐标系。
(3)指令样例
HOpen 1′——抓手1张开。 HOpen 2′——抓手2张开。 HClose 1′——抓手1闭合。 HClose 2′——抓手2闭合。 Tool(0,0,95,0,0,0)′——设置新的 TOOL坐标系。
(4)程序样例(见图2-11)
图2-11 抓手控制
1 Tool(0,0,95,0,0,0)′——设置新的 TOOL坐标系原点,距离机械法兰面Z轴95mm。 2 Mvs P1,-50′——前进到P1点的近点。 3 Ovrd 50′——设置速度倍率为50%。 4 Mvs P1′——前进到P1点。 5 Dly 0.5′——暂停0.5s。 6 HClose 1′—抓手闭合1。 7 Dly 0.5′——暂停0.5s。 8 Ovrd 100′——设置速度倍率为100%。 9 Mvs,-50′——退回到P1点的近点。 10 Mvs P2,-50′——前进到P1点的近点。 11 Ovrd 50′——设置速度倍率为50%。 12 Mvs P2′——前进到P2点。 13 Dly 0.5′——暂停0.5s。 14 HOpen 1′——抓手1张开。 15 Dly 0.5′——暂停0.5s。 16 Ovrd 100′——设置速度倍率为100%。 17 Mvs,-50′——退回到P2点的近点。 18 End′——程序结束。