任务3.8 ABB工业机器人基本操作
1.任务引入
1)ABB公司简介
ABB公司总部位于瑞士苏黎世,它是全球电力和自动化技术领域的领导企业,致力于为电力、工业、交通和基础设施客户提供解决方案,帮助客户提高生产效率和能源效率,同时减小对环境的不良影响。
ABB公司致力于研发工业机器人已有50多年,拥有全球200000多套工业机器人的安装经验。作为工业机器人的先行者和世界领先的工业机器人制造厂商,ABB公司在瑞典、挪威和中国等多地设有工业机器人研发、制造和销售基地。ABB公司于1969年售卖出全球第一台喷涂工业机器人,后于1974年发明了世界上第一台电动工业机器人,并拥有当今最多种类、最全面的工业机器人产品、技术和服务。
2)ABB工业机器人的中国化历程
随着中国工业行业的迅猛发展,第二产业对工业机器人的需求量也日益增加。ABB公司通过不断研发适合市场需求的工业机器人自动化解决方案,帮助客户提高生产效率、改善产品质量、提升安全水平。在我国,ABB公司不仅服务于诸多知名跨国公司,而且正与越来越多的本土优秀企业,如吉利、长城汽车、比亚迪上汽集团、一汽集团、富士康、娃哈哈、蒙牛等建立起密切的联系。
ABB公司与中国的关系可以追溯到20世纪初的1907年,当时ABB公司向中国提供了第一台蒸汽锅炉。1974年,ABB公司在中国香港设立中国业务部;1979年,在北京设立办事处;1992年,在厦门投资建立第一家合资企业。1994年,ABB公司将中国总部迁至北京,并于1995年正式注册了投资性控股公司ABB(中国)有限公司。2005年,ABB公司在中国建立了全球七大研发中心之一。
经过多年的快速发展,ABB公司在中国已拥有40多家企业,在近150个城市设有销售与服务分公司及办事处,拥有研发、生产、工程、销售与服务等全方位业务。2015年,ABB公司在中国的销售收入超过330亿元人民币,中国保持ABB公司全球第二大市场的地位。秉持“在中国,为中国和世界”的发展战略,ABB公司积极推动技术研发的本土化,通过持续投入和优化研发布局,不断提高本土研发与创新能力。
凭借全球领先的产品技术和解决方案,ABB公司参与了南水北调、西电东送、青藏铁路、北京奥运会和上海世博会等众多国家重点项目的建设。ABB公司不断帮助客户节能增效,为实现电力、工业、交通和基础设施的升级做出贡献,实现产业链高附加值和建设美好生态环境的智慧跨越。ABB工业机器人也在中国市场得到越来越广泛的应用。
2.任务目标
1)知识目标
(1)了解ABB工业机器人的型号和特点。
(2)掌握ABB工业机器人的指令应用。
2)技能目标
能够对ABB工业机器人进行示教操作。
3)素养目标
培养学生对专业及以后从事职业、岗位的认同感,树立职业自信。
3.任务分析
典型ABB工业机器人介绍如下。
1)IRB 140工业机器人
IRB 140是一种动力强劲的紧凑型6轴工业机器人,其显著特点是加速快、工作空间大和承载能力强,在弧焊、装配、切割/去毛刺、模铸、上胶密封、注塑、机械管理、物料搬运、拾料、包装、喷涂领域应用。
可靠性强———正常运行时间长。自1999年成功投入市场以来,IRB 140如今已成为以平均故障间隔时间(MTBF)长、维护要求低、维护时间短而著称的工业机器人。
速度快———操作周期短,在同类工业机器人中操作速度最快。IRB 140机器人配备ABB公司独有的运动控制功能QuickMove,操作速度快、加速性能好,显著缩短了工作循环时间。
精度高———零件生产质量稳定,具有极高的重复定位精度(±0.03 mm)和轨迹精度。
功率大———适用范围广,具高达5 kg的有效载荷和长达810 mm的到达距离。
坚固耐用———适合恶劣生产环境。IRB 140工业机器人具有标准版、铸造专家型、洁净室版(10级)和清洗版等多种版本,所有机械臂均全面采用IP67级防护。
通用性佳———可进行柔性化集成和生产。标准旋转功能以及多种安装选项等都有效扩大了IRB 140工业机器人的工作区域半径。
IRB 140工业机器人能够以任意角度安装在地面上或墙体上,也可以进行悬挂安装,使生产线总体布局具有很大的灵活性。
2)IRB 1410工业机器人
IRB 1410工业机器人在弧焊、物料搬运和过程应用领域历经考验,自1992年以来,全球安装数量已超过14000台。IRB 1410工业机器人性能卓越、经济效益显著、资金回收周期短。应用于弧焊、上胶、注塑、包装、机械管理、物料搬运领域。
可靠性强———IRB 1410工业机器人以其坚固可靠的结构著称,而由此带来的其他优势是噪声水平低、例行维护间隔时间长、使用寿命长。
准确性好———卓越的控制水平和循径精度(+0.05 mm)确保了出色的工作质量。
IRB 1410工业机器人工作范围大、到达距离长(最长1.44 m),承重能力为5 kg,上臂可承受18 kg的附加载荷,这在同类工业机器人中绝无仅有。
其配备的快速精确的IRC5控制器有效缩短了工作周期。
3)IRB 1600工业机器人
IRB 1600是一种通用的高性能工业机器人,共有4种版本。由于有效载荷较大,IRB 1600工业机器人在市场上所有同级别工业机器人中结构最牢固、动力最强劲。除此之外,IRB 1600工业机器人还非常适合在许多应用领域执行灵活性强且极具成本效益的操作任务,如弧焊、装配、压铸、注塑、机械管理、物料搬运、包装等领域。
可靠性强———正常运行时间长。IRB 1600工业机器人集成熟技术和经严格测试的创新技术于一身,具有平均故障间隔时间(MTBF)长、维护要求低、维护时间短等多项优点。
速度快———工作循环时间短,在同类工业机器人中操作速度最快。
精度高———零件生产质量稳定,具有极高的重复定位精度(±0.05 mm)和轨迹精度。
功率大———适用范围广,有效载荷选项为5 kg或7 kg(“无手腕”时可达10 kg)。
坚固耐用———适合恶劣生产环境,具有IP67防护等级,可蒸汽清洗,有“铸造专家型”备选。
通用性佳———可进行柔性化集成和生产,采用后弯式设计,提供多种安装选项(墙面安装、地面安装、倒置安装和倾斜安装)。
4)IRB 2400工业机器人
IRB 2400工业机器人有多种不同版本备选,拥有极高的作业精度,在物料搬运、机械管理和过程应用等方面均有出色表现。IRB 2400工业机器人可提高生产效率、缩短生产提前期、加快交货速度,应用于弧焊、装配、铸件清洗、切割/去毛刺、模铸、上胶/密封、研磨/抛光、机械管理、物料搬运、包装领域。
可靠性强———正常运行时间长。IRB 2400工业机器人是全球应用最广泛的工业机器人,该工业机器人坚固耐用,使用零部件数量降至最少,可靠性强、维护间隔时间长。
速度快———操作周期短。采用ABB公司独有的运动控制技术,优化了加减速性能,使工作循环时间降至最短。
精度高———零件生产质量稳定,具有最佳的轨迹精度和重复定位精度(0.06 mm)。
功率大———适用范围广,有效载荷选项为7~20 kg,最大到达距离达1.810 m。
坚固耐用———适合恶劣生产环境,具有IP67防护等级,可蒸汽清洗,备有洁净室型(100级)和“铸造专家型”备选。
通用性———可行性柔性化集成和生产,所有型号均可倒置安装。
5)IRB 4600工业机器人
IRB 4600工业机器人是目前市场上速度最快、可到达距离最长、最精确、精简度高、防护等级高的工业机器人,应用于材料搬运、弧焊、切割、注塑机上/下料、数控机床上/下料、压铸等领域。
IRB 4600工业机器人采用尖端工作站设计,设计精密,活动架高度灵活,具有突出的可到达性,有效使用地面空间,周期短、产出高、精确度高、加工组件质量高,使用户得到最优生产力。
第二代QuickMove&TrueMove能有效缩短20%的生产周期,同时使长臂工业机器人具有更大的有效载荷。落地式、倾斜式、下探式和倒置式的固定设计概念以及平稳简洁的底部设计,提高了车间地面利用率。
4.相关知识
1)ABB工业机器人控制柜简介
ABB工业机器人主要可以分为工业机器人本体、控制柜和示教器3个部分。在此对控制柜作简要介绍。控制柜是工业机器人的控制系统,主要包括主计算机、串口测量板、I/O电源板、电源分配板、轴计算机、安全面板、6轴驱动器、电容等部分。
(1)主计算机:用于存放系统和数据。
(2)串口测量板:一般是工业机器人标配的I/O板,通常挂在控制柜的门上,可以直接把输出点或输入点接到外部设备上,从而与工业机器人进行交互和对工业机器人进行控制。
(3)I/O电源板:给I/O板提供电源。
(4)电源分配板:给工业机器人各轴运动提供电源。
(5)轴计算机:进行各轴的转数计算。
(6)安全面板:当控制柜正常工作时,其上所有指示灯点亮,急停按钮从此接入。
(7)6轴驱动器:用于驱动各轴的电动机。
(8)电容:用于关闭电源,保存数据后再断电,相当于延时断电。
2)ABB工业机器人的示教操作
在生产线现场,工业机器人的重复作业是按照人们赋予它的指令执行的。人们赋予工业机器人指令的过程就是编制程序的过程。编程技术分为在线编程技术和离线编程技术两种。
(1)用示教器控制ABB工业机器人。
示教器实际上是一个以微处理器为核心的手持操作单元,它用电缆与控制装置相连,一般采用串行通信方式。示教器面板有数字显示字符和许多按键,以便操作人员移动工业机器人手臂或输入各种功能、数据,手持操作时如同使用电视遥控器。
示教器用于手动控制工业机器人时的示教、编程、调试和运行。通过示教器手动控制工业机器人运动的方式主要有3种,分别是手动关节操纵、手动线性操纵以及手动重定位操纵。下面以IRB 120工业机器人为例说明。
①手动关节操纵。
IRB 120工业机器人共有6个运动关节,而示教器的操纵杆同一时刻只能控制最多3个变量,因此在手动操纵关节运动时需要选择轴1~3或轴4~6。
手动关节操纵情况下,操作人员通过示教器的操纵杆控制对应轴的动作,这是一种绝对运动。
②手动线性操纵。
手动线性操纵是指手动控制工业机器人沿设定坐标系的X轴、Y轴和Z轴方向进行直线运动。
手动线性操纵时,线性运动的方向也可以通过选择不同的参考坐标系来改变,常用的坐标系有基坐标系、工具坐标系、工件坐标系等。
③手动重定位操纵。
工业机器人在工作时,很多时候不仅需要调整工具的位置,也需要重新定位工具的方向,使其与工件保持特定的角度,如在焊接、切割、铣削等应用中,工具的方向与产品的加工精度等息息相关。
(2)示教编程。
把作业要求预先教给工业机器人,这种操作叫作示教。工业机器人把示教的内容保存下来叫作存储或记忆。工业机器人按照示教的内容进行动作叫作再现。
示教编程是目前采用的主要编程方法。示教时操作人员按照工艺要求仔细移动工业机器人手臂到最佳位置,同时协调有关外部设备,以达到作业步骤的统一。这种方法容易满足现场作业要求,操作简便,容易掌握。
示教编程的缺点是需要“在线”,即在编程时必须停工。
目前给工业机器人示教有两种办法,一种是用示教器示教,另一种是手把手示教。
在示教中,工业机器人的控制装置要起到学习作用,其任务如下。
第一,标记运动点的坐标,并存储到工业机器人的控制器中。这些坐标可以是工业机器人的关节坐标、机座坐标或工具坐标。
第二,在适当的点标记要执行的功能,如运动速度、输入和输出信号、定时等待、跳步和调用子程序的步号及中断子程序等。
①用示教器示教。
操作示教器编程时,一般是边移动工业机器人手臂边逐步完成位置和功能示教,这个过程除了向控制装置提供所需的点坐标外,还要对许多编程点输入相应的功能数据,即在示教的同时利用示教器按键移动工业机器人手臂到所需位置,然后输入示教器上所示的功能数据,最后用记录键把该步的位置和功能信息全部存储在控制装置的程序存储器中。如果有分支程序,示教时要示教全部分支程序。
对于有些工业机器人,也可以通过控制柜上的键盘进行以上操作。
②手把手示教。
操作人员手把手引导工业机器人末端执行器通过所要求轨迹的示教称为手把手示教。
工业机器人在接受手把手示教时,各关节上的位置传感器就检测其坐标或角度,控制装置则记录这些信息。当自动再现这些数字化的信息时就能精确地再现操作人员示教的连续运动、轨迹和操作技能。
手把手示教主要用于连续轨迹控制的工业机器人,它适用于喷漆、弧焊、密封和抛光等作业。手把手示教也能使工业机器人实现P-T-P运动控制,但在这种示教模式中,只记录每个轨迹程序段的端点位置。轨迹速度一般作为与每个轨迹程序段对应的功能数据输入。
手把手示教与用示教器示教相比,其主要优点是编程容易、易学、能直接由从事生产作业的人员进行。其缺点是示教时操作工业机器人手臂很费劲,因此要在制造工业机器人时采用平衡机构对工业机器人手臂进行运动学平衡。也有些工业机器人生产厂在制造工业机器人时,同时制造了质量小的编程手臂,其运动同实际的操作手一样,操作人员操纵编程手臂时,相应的关节位置数据就被记录下来。
手把手示教编程软件系统包含了基本的程序编辑的特点,所要求的轨迹程序可以分解为许多轨迹程序段,而每个轨迹程序段可分开示教,然后并入所要求的程序。由于工业机器人控制装置保持每个轨迹程序段为分开的实体,所以用户可以删除不需要的轨迹程序段,再编制适当的轨迹程序段。
3)ABB工业机器人的基本指令应用
(1)点位控制方式(point to point)。
这种控制方式的特点是只控制工业机器人末端执行器在作业空间中某些规定的离散点上的位姿。控制时只要求工业机器人快速、准确地实现相邻各点之间的运动,而对达到目标点的运动轨迹则不做任何规定。这种控制方式主要应用于工业机器人在工作站中的大范围点位移动,其主要技术指标是定位精度和运动所需的时间。该控制方式由于易于实现、定位精度要求不高,所以常被应用在上/下料、搬运、点焊和在PCB上安插元件等只要求目标点处末端执行器位姿准确的作业中。一般来说,这种控制方式比较简单,但是要达到2~3μm的定位精度是相当困难的。
(2)连续轨迹控制方式(continuous point)。
这种控制方式的特点是连续地控制工业机器人末端执行器在作业空间中的位姿。要求其严格按照预定的轨迹和速度在一定的精度范围内运动,而且速度可控,轨迹光滑,运动平稳。工业机器人各关节连续、同步地进行相应的运动,其末端执行器即可形成连续的轨迹。这种控制方式的主要技术指标是工业机器人末端执行器位姿的轨迹跟踪精度及平稳性。通常进行弧焊、喷漆、去毛边和检测作业的工业机器人都采用这种控制方式。
(3)常用轨迹运动控制指令。
①MoveL———让工业机器人做直线运动。
MoveL指令用来让工业机器人TCP直线运动到给定的目标位置。当TCP仍固定的时候,该指令也可以重新给工具定方向。该指令只能用于主任务T_ROB1,或者多运动系统的运动任务。
在使用飞点时,该指令可以用来避免由CPU过载引起的不想要的停止。当需要高速度并且编程点相距较近时这是很有用的。当不要求工业机器人与外部设备通信或外部设备和工业机器人通信同步的时候,该指令也很有用。使用项目“\Conc”的时候,连续的运动指令的数量限制为5个。在包括StorePath-RestorcPath的程序段中不允许使用带有“\Conc”项目的运动指令,如果不使用该项目,并且ToPoint不是停止点,在工业机器人到达程序区域之前的一段时间,后续指令就开始执行了。
MoveL指令各项目如下。
ToPoint:数据类型为roblarget。
该项目用来指定工业机器人和外部轴的目标位置。定义为一个命名的位置或者直接存储在指令中(在指令中用“*”标记)。
[\ID]:同步ID,数据类型为identno。
该项目必须使用在多运动系统中,如果并列了同步运动,则不允许在其他任何情况下使用。指定的ID号在所有协同的程序任务中必须相同,该ID号保证在routine中运动不会混乱。
Speed:数据类型为speeddaia。
该项目用来指定应用到运动中的速度数据,定义TCP、工具重新定向或者外部轴的速度。
[\V]:速度,数据类型为num。
该项目用来在指令中直接指定TCP的速度,单位为mm/s。它用来代替速度数据中相应的速度。
[\T]:时间,数据类型为num。
该项目用来指定外部轴运动的总时间,单位为s。它代替相应的速度数据。
Zone:数据类型为zonedata。
该项目用来指定运动的Zone数据。它描述产生的转角路径的大小。
[\Z]:Zone,数据类型为num。
该项目用来在指令中直接指定工业机器人TCP的位置精度。转角路径的长度单位是mm,它代替Zone数据中相应的Zone。
[\Inpos]:到位,数据类型为stoppointdata(停止点数据)。
该项目用来指定工业机器人TCP在停止点位置的收敛性判别标准。该停止点数据代替在Zone参数中指定的Zone。
Tool:数据类型为tooldata。
该项目说明当工业机器人运动的时候使用的工具TCP是移动到指定目标的点。
[\Wob]:工作对象,数据类型为wobjdata。
该项目用来指定指令中与工业机器人位置相关的工作对象(坐标系)。该项目可以忽略,如果忽略,则位置相关到世界坐标系。另外,如果使用了静态TCP或者并列了外部轴,该项目必须指定。(https://www.daowen.com)
[\Corr]:改正,数据类型为switch。
如果使用该项目,则通过CorrWrite指令写到改正入口的改正数据将被添加到路径和目标位置。
工业机器人和外部设备按照下列步骤运动。
a.工具的TCP按照程序中的速度匀速直线运动;
b.工具沿着路径以相等的间隔重新定向;
c.为了和工业机器人的轴在同一时间到达目标位置,非并列的外部轴匀速运动。
当重新定向或外部轴不能达到程序中的速度时,TCP的速度将减小。
当运动路径转到下一段时,通常会产生转角路径。如果在Zone数据中指定了停止点,只有当工业机器人和外部轴到达合适的位置时,程序才会继续执行。
②MoveJ———通过关节移动移动工业机器人。
当运动不必是直线的时候,MoveJ指令用来快速将工业机器人从一个点运动到另一个点。工业机器人和外部轴沿着一个非直线的路径移动到目标点,所有轴同时到达目标点。该指令只能用在主任务T_ROB1或者多运动系统的运动任务中。
MoveJ指令书写格式为:
MoveJ[\Conc]ToPoint[\ID]Speed[\V]I[\T]
Zone[\Z][\Inpos]Tool[\WObj]
相关参数说明见MoveL指令。
工业机器人和外部设备按照下列步骤运动。
工业机器人TCP用轴角度插补移动到目标点,即每一个轴都使用一个固定的轴速度并且所有轴同时到达目标点,其所走的是一个非线性的路径。
总的来说,TCP按照大约的编程速度运动(无论是否并列了外部轴)。在TCP运动的同时,工具重新定向,外部轴也在运行。如果不能达到工具重新定向的速度或者外部轴的编程速度,TCP的速度将减小。
当运动路径转到下一段时,通常会产生转角路径,如果在Zone数据中指定了停止点,只有当工业机器人和外部轴到达合适的位置时,程序才会继续执行。
③MoveC———让工业机器人做圆弧运动。
该指令用来让工业机器人TCP沿圆弧运动到一个给定的目标点。在运动过程中,相对圆的方向通常保持不变。该指令只能在主任务T_ROB1以及多运动系统的运动任务中使用。
MoveC指令书写格式为:
MoveC[\Conc]CirPoim
ToPoint[\ID]Speed[\V]I[\T]Zone[\z][\Inpos]
Tool[\Wobj][\Corr]
CirPoim的数据类型为robtarget。它是工业机器人的圆轴上的中间点。这是圆轴上处于起点和终点之间的点。为了获得最好的精度,尽量选择起点和终点的中间位置附近的点。如果太接近起点或者终点,工业机器人将会报警。中间点定义为一个命名的位置或者直接存储在指令中(在指令中用“*”标记)。不使用外部轴的位置。
其他参数说明见MoveL指令。
工业机器人和外部设备按照下列步骤运动。
a.工具的TCP按照程序中的定常速度做圆周运动。
b.工具按照定常速度重新定向(从开始位置的方向到目标点的方向)。
c.重新定向相对于圆周路径执行。因此,如果开始点和目标点的方向相对于路径是相同的,则在移动过程中相对方向保持不变。
圆周点的方向没有到达,它只是用来区别重新定向中两个可能的方向。沿着路径重新定向的精度只取决于开始点和目标点的方向。
圆周运动过程中的工具方向的不同模式在指令CirPathMode中有描述。
非并列的外部轴以定常速度执行,目的是和工业机器人的轴同时到达目标点。如果重新定向或者外部轴不能达到程序中的速度,TCP的速度将减小。
当运动转换到路径中的下一段时,通常会产生转角路径。如果停止点在Zone数据中指定,则在工业机器人和外部轴到达合适的位置时,程序才会继续执行。
④MoveAbsJ———把工业机器人移动到绝对位置。
MoveAbsJ指令中除To Point的数据类型为jointtarget外,其余项目与MoveJ指令相同。
MoveAbsJ指令用来把工业机器人或者外部轴移动到一个绝对位置,该位置在轴定位中定义。工业机器人和外部轴沿着一个非直线的路径移动到目标位置,所有轴在同一时间运动到目标位置。
MoveAbsJ指令中工业机器人的最终位置既不受工具或者工作对象的影响,也不受激活程序更换的影响,但是工业机器人要用这些数据来计算负载、TCP速度和转角点。相同的工具可以用在相邻的运动指令中。该指令只能用在主任务T_ROB1或者多运动系统的运动任务中。
4)ABB工业机器人的自动运行
(1)初识程序数据。
程序数据是在程序模块或系统模块中设定的值和定义的一些环境数据。用户创建的程序数据可以供同一个模块或其他模块中的指令引用。
(2)程序数据的类型。
ABB工业机器人程序数据的类型目前有102个之多,可在示教器的“程序数据”界面查看。
下面介绍几个典型的程序数据的类型。
①变量数据VAR。
在程序执行的过程中和程序执行停止时,变量数据会保持当前的值,但如果程序指针被移到主程序,则变量数据数的值会丢失。
举例说明:
VAR num count:=0;名称为count的数字类型数据
VAR string city:="Beijing";名称为city的字符类型数据
VAR bool endflag:=TRUE;名称为endflag的布尔类型数据
*注意:VAR表示存储类型为变量,num、string、bool表示程序数据类型。
在工业机器人执行的RAPID程序中也可以对变量数据进行赋值操作。
举例说明:
MODULE testabb
VAR num count:=0;
VAR string city:="Beijing";
VAR bool endflag;=TRUE;
PROCmain()
count:=8+1;
city:="Shanghai";
endflag:=FALSE;
ENDPROC
ENDMODULE
*注意:在定义数据时,可以定义变量数据的初始值。如count的初始值为0,city的初始值为"Beijing",endflag的初始值为TRUE。
若在程序中执行变量数据的赋值操作,则在指针复位后变量数据将恢复为初始值。
②可变量数据PERS
在程序执行过程中,无论程序的指针如何变化,可变量数据都会保持最后被赋予的值,这是可变量数据的一大特点。
举例说明:
PERS num number: =0;名称为number的数字类型数据
PERS string country:="China";名称为country的字符类型数据
在工业机器人执行的RAPID程序中也可以对可变量数据进行赋值操作。
举例说明:
MODULE testabb
PERS num number:=0;
PERS string country:="China";
PR0Cmain()
number:=1;
country:="Japan";
ENDPROC
ENDMODULE
程序执行以后,赋值的结果会一直保持不变,直到对其进行重新赋值。
*注意:PERS表示存储类型为可变量,num.string表示程序数据类型。
③常量数据CONST
常量数据的最大特点是在定义时已经被赋予了固定值,无法在程序中进行修改,除非手动修改。
举例说明:
CONST num gravity:=9.81;名称为gravity的数字类型数据
CONST string province:="Hebei";名称为province的字符类型数据
*注意:存储类型为常量的程序数据,不允许在程序中进行赋值操作,如以下语句是错误的。
MODULE testabb
CONST num gravity:=9.81;
CONST string province:="Hebei";
PR0Cmain()
gravity:=9.8;
province:="Shandong";
ENDPROC
ENDMODULE
(3)3个关键的程序数据。
在编写RAPID程序之前,需要构建必要的ABB工业机器人编程环境,其中工具数据tooldata、工件坐标数据wobjdata、负荷数据loaddata这三个必须的程序数据需要在编程前进行定义。
①工具数据tooldata。
工具数据tooldata用于描述安装在工业机器人第6轴上的工具的工具坐标系中心、质量、重心等参数数据。一般不同工作环境下的工业机器人需要配置不同的工具,比如用于弧焊的工业机器人就使用弧焊枪作为工具,而用于搬运板材的工业机器人就使用吸盘式的夹具作为工具。
所有工业机器人在法兰盘的中心点处都有一个预定义坐标系(默认TCP),该坐标系称为tool0。执行程序时,工业机器人将TCP移至编程位置,程序中所描述的速度与位置就是TCP在对应工件坐标系中的速度与位置,转移TCP实际上是将一个或多个工具中心设定为tool0的偏移值。
设定TCP的原理如下。
a.在工业机器人的工作范围内找一个固定点作为参考点,要求此固定点要非常精确。
b.在工具上确定一个参考点(可以选择TCP)。
c.在示教器上用手动操纵工业机器人的方法,移动工具上的参考点,以不同的工业机器人姿态尽可能与固定点刚好碰上,最终确定TCP。为了获得更准确的TCP,使用六点法进行手动操纵,其中,第四点是工具的参考点与固定点呈垂直姿态,第五点是工具参考点从固定点向将要设定为TCP的X方向移动,第六点是工具参考点从固定点向将要设定为TCP的Z方向移动。
d.工业机器人通过前4个位置点的位置数据计算求得TCP的数据,然后把TCP的数据保存在tooldata这个程序数据中被程序调用。
*注意:TCP取点数量的区别是:四点法不改变tool0的坐标方向;五点法改变tool0的Z方向;六点法改变tool0的X和Z方向(在焊接应用中最为常用)。使用六点法确定TCP时,为了提高TCP精度,前3个点的姿态相差应尽量大些。
②工件坐标数据wobjdata。
工件坐标系定义了工件相对于大地坐标系或其他坐标系的位置。工业机器人可以拥有若干工件坐标系,或表示不同工件,或表示同一工件在不同位置的若干副本。对工业机器人进行编程就是在工件坐标系中创建目标和路径。其优点如下。
a.重新定位工作站中的工件时,只需要更改工件坐标的位置,所有路径即刻随之更新。
b.允许操作以外轴或传送导轨移动的工件,因为整个工件可连同其路径一起移动。
③有效载荷数据loaddata。
对于搬运应用的工业机器人,应该正确设定夹具的质量、重心数据tooldata以及搬运对象的质量和重心数据loaddata。
(4)RAPID程序的建立。
RAPID程序是ABB工业机器人自动运行时执行的程序,只有编写RAPID程序才能供ABB工业机器人执行。
①建立模块和例行程序。
RAPID程序分为模块和例行程序两个等级。其中,模块是一个大类,一般在编程时使用模块存放完成一个任务或一套工艺的例行程序;例行程序是直接包含编程指令的程序文件,打开以后直接调用指令进行编程。
新建模块时,需要首先设置手动操纵模式,单击ABB菜单,选择“程序编辑器”选项,进入界面,创建新模块,命名为“Moudell”。
进入模块列表,选中新建的模块“Moudell”,然后单击“显示模块”按钮,进入模块中的例行程序列表。若当前例行程序列表为空,则单击“例行程序”按钮,进行例行程序的创建。
②添加编程指令。
通过单击“添加指令”按钮可以调出指令列表,通过对应的指令名称,对指令参数和目标点进行示教即可完成编程指令的添加。
5.任务评价
任务评价见表3-9。
表3-9 任务评价
