ABBABB机器人编程资料机器人编程资料基本运动指令-MoveL/MoveJMoveL p1, v100, z10, tool1;L-直线运动J-转轴运动目标位置数据类型: robotarget运行速度单位: mm/s数据类型: speeddata转弯区尺寸单位: mm数据类型: zonedata工具中心点 ( TCP )数据类型: tooldata基本运动指令-MoveCMoveC p1, p2, v100, z10, tool1;L-直线运动J-转轴运动C-圆周运动运行速度单位: mm/s数据类型: speeddata转弯区尺寸单位: mm数据类型: zonedata工具中心点 ( TCP )数据类型: tooldata中间位置数据类型 :robotarget目标位置数据类型: robotarget基本运动指令-参变量光标指在当前指令时,按功能键OptArg•[\Conc]( switch )协作运动机器人未移动至目标点,已经开始执行下一个指令•[ToPoint]( robtarget )在采用新指令时,目标点自动生成*•[\V]( num ) 定义速度mm/s。
基本运动指令-参变量光标指在当前指令时,按功能键OptArg•[\T] ( num ) 定义时间s,通过时间决定速度•[\Z] ( num ) 定义转弯区尺寸mm•[\Wobj] ( wobjdata )采用工件系座标系统 基本运动指令-实例基本运动指令-函数MoveL Offs(p1,100,50,0), v100,……将光标移至目标点,按回车键,进入选择窗口,在功能键上选择Func,采用切换键选择所用函数Offs()或RelTool()•Offs(p1,100,50,0)代表一个距离 p1点X 轴偏差量为100mm,Y 轴偏差量为50mm,Z轴偏差量为0的点•函数Offs()座标方向与机器人Wobj座标系一致基本运动指令-函数MoveL RelTool(p1,100,50,0\Rx:=30 \Ry:=-60\Rz:=45), v100,……•RelTool(p1,100,50,0\Rx:=30\Ry:=-60 \Rz:=45) 代表一个距离 p1点X 轴偏差量为100mm,Y 轴偏差量为50mm,Z轴偏差量为0,X 轴偏差角度为30 度,Y 轴偏差角度为-60度,Z轴偏差角度为45 度的点。
•函数RelTool()座标方向与机器人Tool座标系一致基本运动指令-函数•画一个长为100mm,宽为50mm,长方形MoveL p1,v100,… MoveL p2,v100,… MoveL p3,v100,… MoveL p4,v100,… MoveL p1,v100,…•确定p1、p2、p3、p4位置可采用函数MoveL p1,v100,… MoveL Offs(p1,100,0,0),v100,… MoveL Offs(p1,100,-50,0),v100,… MoveL Offs(p1,0,-50,0),,v100,… MoveL p1,v100,…转轴运动指令-MoveAbsJMoveAbsJ jpos1, v100, z10, tool1;运行速度单位: mm/s数据类型: speeddata转弯区尺寸单位: mm数据类型: zonedata工具中心点 ( TCP )数据类型: tooldata目标位置数据类型 :jointtarget输入输出信号DO-指机器人输出信号。
DI-指机器人输入信号•机器人数字输入输出采用直流24V电源•输入输出信号有两种状态–1 ( High )为接通–0 ( Low )为断开•输入输出信号必须在系统参数中定义输出信号指令-SetSet do1;do1:输出信号名 signaldo )将一个输出信号赋值为1,在输出信号名相应 I/O 板的相应信号端口输出直流 24V电压输出信号指令-ResetReset do1;do1:输出信号名 signaldo )将一个输出信号赋值为0,在输出信号名相应 I/O 板的相应信号端口没有直流 24V电压输出输出信号指令-PulseDOPulseDO do1;do1:输出信号名 signaldo )输出一个脉冲信号,脉冲长度为0.2 s [\PLength]-参变量( num ) 脉冲长度,0.1s-32s 输入信号指令-WaitDIWaitDI di1, 1;di1:输入信号名 signaldi ) 1: 状态 dionum )等待一个输入信号达到规定状态参变量:[\MaxTime] ( num )等待输入信号最长时间s[\TimeFlag] ( bool )逻辑量,TRUE 或FALSE。
输入信号指令-WaitDIWaitDI di1, 1\MaxTime:=5\TimeFlag:=flag1;•如果只选用参变量[\MaxTime],机器人等待超过最长时间后,机器人将停止运行,并显示相应出错信息或进入机器人错误处理程序( Error Handler )•如果同时选用参变量[\MaxTime] 与参变量[\TimeFlag],等待超过最长时间后,无论是否满足等待的状态,机器人将自动执行下一句指令如果在最长等待时间内得到相应信号,将逻辑量置为FALSE,如果超过最长等待时间,将逻辑量置为TRUE通信指令(人机对话)-TPEraseTPErase;示教器显示屏清屏指令通信指令(人机对话)-TPWriteTPWrite string;string:显示屏显示的字符串 string )在示教器显示屏上显示字符串数据,也可以用“xxxxxx”形式直接定义字符串,每一个写屏指令最多显示80个字符通信指令(人机对话)-TPReadFKTPReadFK Answer, Text, FK1, FK2, FK3, FK4, FK5;Answer:赋值数字变量 num )Text:显示屏显示的字符串。
string )FK1:功能键1显示的字符串 string )FK2:功能键2显示的字符串 string )FK3:功能键3显示的字符串 string )FK4:功能键4显示的字符串 string )FK5:功能键5显示的字符串 string )在示教器显示屏上显示字符串,在功能键上显示相应字符串,选择按相应的功能键,机器人自动给数字变量赋于相应数值1-5程序流程指令-IFIF THEN符合判断条件,“Yes-part”执行“Yes-part”ENDIF指令IF THEN符合判断条件,“Yes-part”执行“Yes-part”ELSE指令“Not-part”不符合判断条件,ENDIF执行“Not-part”指令程序流程指令-IFIF THEN符合判断条件1,“Yes-part 1”执行“Yes-part 1”ELSEIF THEN 指令 “Yes-part 2”符合判断条件2,ELSE执行“Yes-part 2” “Not-part”指令ENDIF不符合任何判断条件执行“Not-part”指令。
程序流程指令-TESTTEST reg1测试 ( 数字 ) 变量,CASE 1:数字变量值为1, PATH 1;执行CASE 1指令CASE 2:数字变量值为2, PATH 2;执行CASE 2指令……数字变量值无法在DEFAULT:CASE内找到相应值 Error;执行DEFAULTENDTEST内指令程序循环指令-WHILEreg1:=1;循环至不符合判断条WHILE reg1< 5 DO件reg1 < 5,才执行 reg1:=reg1+1;ENDWHILE 以后的ENDWHILE指令循环指令 WHILE运行时,机器人循环至不满足判断条件后,才跳出循环指令,执行ENDWHILE 以后的运行指令当循环指令WHILE 运行时,存在死循环,在编写相应机器人程序时必须注意程序运行停止指令-StopStop;机器人在当前指令行停止运行,属于机器人软停止指令( Soft Stop ),可以直接在下一句指令行启动机器人程序运行停止指令-ExitExit;属于机器人软停止指令( Soft Stop ),机器人在当前指令行停止运行,并且复位整个运行程序,将程序运行指针移至主程序第一行,机器人程序必须从头开始运行。
计时指令-ClkResetClkReset clock1;clock1:机器人时钟名称 clock )将一个机器人时钟复位计时指令-ClkStartClkStart clock1;clock1:机器人时钟名称 clock )将一个机器人时钟打开,开始计时计时指令-ClkStopClkStop clock1;clock1:机器人时钟名称 clock )将一个机器人时钟关闭,停止计时,但仍旧保持时钟数据直至复位运动速度控制指令-VelSetVelSet 100, 5000;100: 机器人运行速率 % num )5000:机器人最大速度mm/s ( num )每个机器人运动指令均有一个运行速度,在执行运动速度控制指令VelSet后,机器人实际运行速度为运动指令规定运行速度乘以机器人运行速率,并且不超过机器人最大运行速度运动加速度控制指令-AccSetAccSet 100, 100;100:机器人加速度百分率% num )100:机器人加速度坡度% num )时间等待指令-WaitTimeWaitTime 5;5:机器人等待时间 s num )等待指令只是让机器人程序运行停顿相应时间。
赋值指令- “ := ”Data:=Value;Data: 被赋值的数据 All )Value:数据被赋予的值 Same as Data )举例: ABB := FALSE;( bool )ABB := reg1+reg3;( num )ABB := “ WELCOME ”; ( string )pHome := p1; ( robotarget )tool1.tframe.trans.x := tool1.tframe.trans.x+20; ( num )负载定义指令-GripLoadGripLoad load0;load0:机器人负载数据 num )设置机器人当前负载 结束语结束语谢谢大家聆听!!!谢谢大家聆听!!!34。