ABB机器人编程你所需要了解的一切!
注:本文章文字、图片部分来自网络
版权归原作者,侵删。
您是否对将工业自动化集成到您的设施中感兴趣?如果是这样,那么您应该致电工业自动化和集成领域的领导者工博士。工博士是包括FANUC,Yaskawa,KUKA,Kawasaki和ABB在内的多家不同机器人公司的认证集成商。我们的员工致力于帮助您为您的行业和预算构建和定制完美的自动化系统。
一、程序储存器(Programmemory)的组成:应用程序(Program) 系统模块(Systemmodules) 机器人程序储存器中,只允许存在一个主程序;所有例行程序与数据无论存在于哪个模块,全部被系统共享;所有例行程序与数据除特殊定义外,名称必须是**的。
1、应用程序(Program)的组成: ·主模块(Mainmodule) 主程序(Mainroutine) 程序数据(Programdata) 例行程序(Routines) ·程序模块(Programmodules) 程序数据(Programdata) 例行程序(Routines)
2、系统模块(Systemmodules)的组成: ·系统数据(Systemdata) ·例行程序(Routines) 所有ABB机器人都自带两个系统模块,USER模块与BASE模块,根据机器人应用不同,有些机器人会配备相应应用的系统模块。建议不要对任何自动生成的系统模块进行修改。
二、编程窗口:
1、菜单键File: 1、 Open:打开一个现有文件。(程序.prg或模块.mod) 2、 New:新建一个程序。 3 、Saveprogram :存储更改后的现有程序。 4 、Saveprogramas:存储一个新程序。 5 、Print: 打印程序,现已经不使用。 6、 Preferences:定义用户化指令集。 7、 Checkprogram :检验程序,光标会提示错误。 8 、Close:在程序储存器中关闭程序。 9、 Savemodule :存储更改后的现有模块。(只在Module窗口中存在) 10、 Savemoduleas : 存储一个新模块。(只在Module窗口中存在)
2、菜单键Edit: 1、 Cut:剪切,可能会丢失指令或数据。 2 、Copy :复制。 3 、Paste :粘贴,将剪切或复制的指令或数据粘贴到相应位置。 4、 GotoTop:将光标移至顶端。 5、 GotoBottom :将光标移至底端。 6 、Mark :定义一块,涂黑部分。 7、 ChangeSelected :修改指令中数据,可直接将光标移至相应位置按回车键。 8 、Showvalue: 输入数据,可直接将光标移至相应数据按回车键。 9、 Modpos :修改机器人位置,功能键上有。 10、 Search:寻找指令,程序复杂时很有用。 11、功能键:Copy、Paste、Modpos在菜单键Edit中可以找到。
三、指令: 1、基本运动指令: MoveL:线性运动 (Linear) MoveJ:关节轴运动 (Joint) MoveC :圆周运动 (Circular) p1:目标位置。(robtarget) v100:运行速度mm/s。(speeddata) z10:转弯区尺寸mm。(zonedata) tool1:工具中心点TCP。(tooldata)
(1)速度选择:mm/s ·将光标移至速度数据处,按回车键,进入选择窗口,选择所需速度。 ·机器人运行速度属于数据类型speeddata。 ·常用运行速度在Base模块中已经定义。 ·特殊速度可自行定义。 ·max速度为v5000,Base模块中定义*大速度为v7000,*大速度机器人未必能达到。
(2)转弯区尺寸选择:mm ·将光标移至转弯区尺寸数据处,按回车键,进入选择窗口,选择所需转弯区尺寸。 ·机器人转弯区尺寸属于数据类型zonedata。 ·常用转弯区尺寸在Base模块中已经定义。 ·特殊转弯区尺寸可自行定义。 ·fine指机器人TCP达到目标点,并在目标点速度降为零,连续运行时,机器人动作有停顿。 ·zone指机器人TCP不达到目标点,连续运行时,机器人动作圆滑、流畅。 ·Base模块中已经定义的转弯区尺寸*小为z1,*大为z200。 ·尽量使用较大的转弯区尺寸。
(3)参变量: 光标指在当前指令时,按功能键OptArg,可选择参变量。 ·[\Conc](switch) 协作运动。机器人未移动至目标点,已经开始执行下一个指令。 ·[ToPoint](robtarget) 在采用新指令时,目标点自动生成*。 ·[\V](num) 定义速度mm/s。 ·[\T](num) 定义时间s。通过时间决定速度。 ·[\Z](num) 定义转弯区尺寸mm。 ·[\Wobj](wobjdata) 采用工件系座标系统。
(4)函数Offs(): MoveLp1,v100,… MoveLp2v100,… MoveLp3,v100,… MoveLp4,v100,… MoveLp1,v100,…
·为了**确定p1、p2、p3、p4点,可以使用函数Offs()。 ·Offs(p1,x,y,z)代表一个离p1点X轴偏差量为x,Y轴偏差量为y,Z轴量为z的点。 ·将光标移至目标点,按回车键,进入目标点选择窗口,在功能键上选择Func,采用切换选择所用函数Offs()。
MoveLp1,v100,… MoveLOffs(p1,100,0,0),v100,… MoveLOffs(p1,100,-50,0),v100,… MoveLOffs(p1,0,-50,0),,v100,… MoveLp1,v100,…
2、输入输出群指令: ·do指机器人输出信号。 ·di指输入机器人信号。 ·输入输出信号必须在系统参数中定义。 ·输入输出信号有两种状态,1(High)为接通,0(Low)为断开。
(1)输出信号指令: A、输出输出信号指令:set dol do1:输出信号名。(signaldo)将一个输出信号赋值为1。 B、复位输出信号指令:Reset do1 do1:输出信号名。(signaldo)将一个输出信号赋值为0。 C、输出脉冲信号指令:PulseDO\PLength:=0.2,do1 do1:输出信号名。(signaldo)输出一个脉冲信号,脉冲长度为0.2s。 参变量: ·[\PLength](num) 脉冲长度,0.1s-32s。
(2)输入信号指令: WaitDI di1, 1 di1:输入信号名。(signaldi)
3、参变量: ·[\MaxTime](num)等待输入信号*长时间s。 ·[\TimeFlag](bool)逻辑量,TRUE或FALSE。 如果只选用参变量[\MaxTime],等待超过*长时间后,机器人停止运行,并显示相应出错信息。如果同时选用参变量[\MaxTime]与参变量[\TimeFlag],等待超过*长时间后,无论是满足等待的状态,机器人将自动执行下一句指令。如果在*长等待时间内得到相应信号,将逻辑量置为FALSE,如果超过*长等待时间,逻辑量置为TRUE。
4、通信指令(人机对话): (1)清屏指令:TPErase (2)写屏指令:PWrite String tring:显示的字符串。(string)在示教器显示屏上显示字符串数据,也可以用"……"形式直接定义字符串,每一个写屏指令*多显示80个字符。 (3)功能键读取指令:TPReadFK, 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。
5、程序运行停止指令: (1)停止指令Stop:机器人停止运行,软停止指令(Soft Stop),直接在下一句指令启动机器人。 (2)停止指令Exit:机器人停止运行,并且复位整个运行程序,将程序运行指针移至主程序**行。机器人程序必须从头运行。 (3)停止指令Break:机器人立刻停止运行,有冲击,直接在下一句指令启动机器人。
6、计时指令: (1)时钟复位指令:ClKReset Clock Clock:机器人时钟名称。(clock) (2)时钟启动指令:ClKStart Clock Clock:机器人时钟名称。(clock) (3)时钟停止指令:ClKStop Clock Clock:机器人时钟名称。(clock)
7、速度控制指令:VelSet , Override, Max Override:机器人运行速率%。(num) Max:机器人*大速度mm/s。(num) 每个机器人运动指令均有一个运行速度,在执行速度控制指令后,机器人实际运行速度为运动指令规定运行速度乘以机器人运行速率(Override),并且不超过机器人*大运行速度(Max)。
8、等待指令: WaitTime , Time Time:机器人等待时间s。(num) 等待指令只是让机器人程序运行停顿片刻。
9、赋值指令: Data:=Value Data:被赋值的数据。(All) Value:数据被赋予的值。 举例: ABB:=FALSE;(bool) ABB:=reg1+reg3;(num) ABB:="WELCOME";(string) Home:=p1;(robotarget) tool1.tframe .trans.x:=tool1.tframe .trans.x+20;(tooldata)
10、负载定义指令: GripLoad Load Load:机器人当前负载,数据类型为Loaddata。
- 下一篇:工业机器人基础知识介绍
- 上一篇:ABB工业机器人如何系统备份与恢复