运动指令: PTP点到点运动 PTP P20 CONT Vel=100% PDAT20 LIN直线运动 LIN P21 CONT Vel=100% PDAT21 CIRC圆弧运动 圆形轨迹程序参考如下: LIN P1 CONT Vel=100% PDAT20 CIRC P2 P3 Vel=2 m/s CPDAT1 Tool[0] Base[0]; CIRC P4 P1 Vel=2 m/s CPDAT1 Tool[0] Base[0]; 样条SPTP\SLIN\SCIRC SPTP P20 CONT Vel=100% PDAT20 SLIN P21 CONT Vel=100% PDAT21 SCIRC P2 P3 Vel=2 m/s CPDAT1 Tool[0] Base[0]; 相对运动指令 PTP_Rel点到点相对运动 PTP_REL {X 100,Z -200} LIN_Rel直线相对运动 LIN_REL {X -100} CIRC_Rel圆弧相对运动 CIRC_REL {X 100,Y 30,Z -20},{Y 50},CA 500 C_VEL} 机器人6个轴回原点指令 PTP{A1 0,A2 -90,A3 90,A4 0,A5 0, A6 0} 偏移指令(计算绝对目标位置 ) ;EXAMPLE1:
XP1.x = 200 ; P1点新的 X 值200mm XP1.z = 30*distance ; 计算P1点新新的 Z 值 PTP XP1赋值后运动到新的P1点位置 ;EXAMPLE2:
DEF TEST1( ) DECL POS PICK DECL INT REG1 INI REG1=0 PTP P3 CONT Vel=100% PDAT20 incr REG1 REG1自加1。 XPICK = XP3 P3点赋值给PICK点。 XPICK.x = XP3.x + 100 P3点的 x 值加上 100mm赋值给到PICK点的X方向。 XPICK.z = XP3.z + 10*REG1 P3点的 z值加上10*REG1赋值给到PICK点的z方向。 LIN XPICK 运动到赋值偏移后的PICK点 逻辑指令 OUT数字输出指令 $OUT[1]=TRUE PULSE脉冲指令
PULSE ($OUT[50], TRUE, 1.5) ; 正脉冲
PULSE ($OUT[51], FALSE, 1.5) ; 负脉冲
TRUE 表示正脉冲 (高平),FALSE 表示负脉冲(低平)1.5秒是脉冲宽度。 WAIT等待延时指令 WAIT SEC 1等待延时1秒 WAIT FOR等待输入信号 WAIT FOR ( $IN[1] ) 等待输入信号1为TRUE. 6.TRIGGER WHEN DISTANCE动作触发指令 TRIGGER WHEN DISTANCE=位置 DELAY=时间 DO 指令 <PRIO=优先级> 位置:规定在哪个点触发指令。可能的值: 0:指令在动作语句的起点处被触发。 1:指令在目标点处被触发。如果目标点是轨迹逼近形式,则指令将在该轨迹逼近 弧形的中点处被触发。 时间:以此可确定所选位置的延迟时间 可应用正值和负值 时间以毫秒 (ms) 为 单位表示 可毫无问题地应用 10,000,000 ms 及以下的时间值 时间值过大或过小时最迟或最早将于切换极限处切换 指令:可行的方式有: 给一个变量赋值(不能对运行时间变量赋值。) OUT 指令 PULSE 指令 调出一个子程序。在此情况下,必须给明优先级。 优先级 (仅当调出一个子程序时): 有优先级 1、2、4 - 39 以及 81 - 128 可供选择。 优先级 40 - 80 预留给优先级由系统自动分配的情况。如果优先级应由系统自动给 出,则应如下进行编程:PRIO = -1 LIN XP1 LIN XP2 TRIGGER WHEN DISTANCE = 0 DELAY = 20 DO duese = TRUETRIGGER WHEN DISTANCE = 1 DELAY = -25 DO UP1() PRIO=75 LIN XP3 LIN XP4
7.系统变量的说明 AXIS / E6AXIS - 轴角 (A1...A6,也可能是 E1...E6)。 POS / E6POS - 位置 (X, Y, Z),姿态 (A, B, C) 以及状态和转角方向 (S, T) FRAME - 仅位置 (X, Y, Z),姿态 (A, B, C)。 变量 (E6POS) 指明 TCP 基于基坐标系的额定位置。 变量 (E6AXIS) 包含当前的轴角或轴位置。 $POS BACK/$AXIS BACK 当前运动块的起始运动点的笛卡尔坐标系/轴坐标系的坐标 $POS INT/SAXIS INT 中断程序执行时的笛卡尔坐标系/轴坐标系的坐标 $POS RET/$AXIS_RET 机器人离开路径时的笛卡尔坐标系/轴坐标系的坐标 $POS ACT/SAXIS ACT 当前机器人设定位置的笛卡尔坐标系/轴坐标系的坐标 $POS FOR/SAXIS FOR 当前运动块的目标运动点的笛卡尔坐标系/轴坐标系的坐标 $POS ACT MES/SAXIS ACT MEAS 当前机器人位置实际测量的笛卡尔坐标系/轴坐标系的坐标 $AXIS MOT 当前机器人电机的位置 $ANIN[] 模拟输入 $ANOUT[] 模拟输出 BRAKE 刹车 CIRC 圆弧运动 CIRC_REL 圆弧相对运动 CONTINUE 预读 DECL 声明关键字 DEF...END 模块声明 DEFFCT … ENDFCT 函数声明 EXIT 跳出 FOR … TO … ENDFOR 计数循环 FALSE 假 GOTO 跳转 GLOBAL 全局关键字 HALT 停止 IF … THEN ...ELSE… ENDIF 分支 $IN[] 数字输入 INTERRUPT … DECL … WHEN… DO... 中断声明 INTERRUPT ON/OFF 中断启动/停止 INTERRUPT DISABLE/ENABLE 中断不激活/激活 LIN 直线运动 LIN_REL 直线相对运动 LOOP … ENDLOOP 无限循环 $OUT[] 数字输出 PULSE 脉冲 PTP 点到点运动 PTP_REL 点到点相对运动 REPEAT … UNTIL 直到型循环 RESUME 终止程序(中断) RETURN 终止程序(模块) SCIRC 圆弧运动8.5 SCIRC_REL 圆弧相对运动8.5 SLIN 直线8.5 SLIN_REL 直线相对运动8.5 SPTP 点到点运动8.5 SPTP_REL 点到点相对运动8.5 SWITCH … CASE … ENDSWITCH 分支 SIGNAL 信号声明 $timer[] $timer_stop[] $timer_flag[] TRIGGER WHEN DISTANCE 运动过程触发 TRIGGER WHEN PATH 运动过程触发 TRUE 真 WAIT FOR 循环等待 WAIT SEC 时间等待 WHILE … ENDWHILE 当型循环
|