《电子技术应用》

基于离线编程技术的喷涂机器人第七轴开发

2017年电子技术应用第5期 作者:郑 悠1,2,方丹丹2,曾春年2
2017/6/2 10:53:00

郑  悠1,2,方丹丹2,曾春年2

(1.宁波工程学院 电子与信息工程学院,浙江 宁波315000;2.武汉理工大学 自动化学院,湖北 武汉430070)


    摘  要: 基于离线编程技术喷涂机器人轨迹生成已成为喷涂机器人控制方法的发展趋势。通过对现有的六轴机器人轨迹生成方案的分析和研究,提出了在喷涂轨迹设计中增加第七轴的方案。该方案通过改变六轴机器人的运动方式扩展了机器人的可达空间,使其能够完成复杂工件曲面的喷涂。实验结果表明,与传统的六轴机器人轨迹生成方案相比,所提出的方案对于复杂曲面的喷涂效果更好,更适于实际工业应用。

    关键词: 离线编程技术;喷涂机器人;第七轴

    中图分类号: TP241;TP249

    文献标识码: A

    DOI:10.16157/j.issn.0258-7998.2017.05.003


    中文引用格式: 郑悠,方丹丹,曾春年. 基于离线编程技术的喷涂机器人第七轴开发[J].电子技术应用,2017,43(5):15-20.

    英文引用格式: Zheng You,Fang Dandan,Zeng Chunnian. Development of 7th axis of spray robot based on off-line programming[J].Application of Electronic Technique,2017,43(5):15-20.

0 引言

    随着“中国制造2025”的进一步深化,行业自动化生产线的改造将朝着智能化生产方向发展,而这其中工业机器人的行业应用开发至关重要[1]。由于热喷涂的工况极其恶劣,通常伴随有高温、高压、有毒气体,而且工艺上对工件上涂层厚度的均匀度有着很高的要求,因此机器人已被广泛用于热喷涂生产中,代替人工以保证涂层的质量与喷涂的效率。

    工业机器人编程主要有在线编程(On-line Programming)和离线编程(Off-line Programming)两种方式[2]。与在线编程相比,离线编程技术可以脱离现场环境进行机器人控制程序开发,无需中断生产,同时通过离线的仿真验证和优化,提高生产效率和质量。因此,国外许多机器人制造厂商均为自己生产的机器人提供了离线编程仿真软件,如瑞典ABB 公司的Robot Studio、德国KUKA公司的KUKA SimPro、日本Fanuc公司的RoboGuide、日本安川公司的motosim-EG等。也有一些自动化系统集成商提供了Robot Art、Robot Master、Robot Works等第三方工业机器人的离线编程软件[3-5]

    对于喷涂机器人离线编程的研究中,喷涂机器人喷涂轨迹生成与优化是一个非常具有挑战的难题[6]。国内外主流的离线编程软件的发开商和机器人制造厂商只是提供一个离线编程开发平台或仅仅针对一些普通行业提出了相关解决方案,并未给喷涂这类特殊行业提供专门方案设计。目前,喷涂机器人喷涂轨迹生成与优化的研究大多来自于高校或者研究所,研究成果也集中在根据喷枪和涂料的特性建立喷涂模型、根据机器人运动学特点设计和优化喷涂轨迹生成算法和碰撞检测算法等方面[7-9]

    随着喷涂技术越来越多应用于航天航空、生物医疗等领域,喷涂工件也越来越复杂,例如,喷涂在工件的背面或喷涂在一个狭窄的工作腔体内,而现有的方案都是基于六轴机器人提出的,由于机器人工作空间的限制,仅能完成一些较为简单或者单一的工件曲面的喷涂轨迹,不能用于上述的复杂场景。因此,本文提出在喷涂轨迹设计中在外部增加机器人第七个旋转轴的方案,通过改变六轴机器人的运动方式扩展机器人的可达空间,克服机器人在热喷涂过程中轴的运动限制,使其能够完成复杂工件曲面的喷涂。

1 喷涂机器人的坐标体系

    为了更好地理解第七轴的运动特性,首先必须引入机器人的坐标系统。在机器人系统,机器人程序中的所有位置存储相关系统的笛卡尔坐标系。本文讨论的对象是ABB六轴机器人,图1是坐标系定义[10]

jsr3-t1.gif

    在机器人轨迹设计中,轨迹被定义为工具中心点(Tool Center Point,TCP)的移动路径。在喷涂中,工具中心点一般定义在喷枪嘴的正前方对喷涂表面产生影响位置。因此,喷涂轨迹上每个点的位置实际就是工具中心点的位置,也就是说机器人的位置及其运动总是与工具中心点相联系。在机器人编程中,通常使用坐标系或用户定义的坐标系进行元素和对象的相互关联。机器人通常包括世界坐标系、基座坐标系、用户坐标系和对象坐标系[8]

2 喷涂机器人第七轴的选择

    目前在喷涂行业,主要采用六轴机器人进行喷涂。以ABB六自由度的关节型工业机器人IRB2400/16为例,其机身结构图如图2所示[11]

jsr3-t2.gif

    Axis1、Axis2和Axis3控制着机器人末端执行器手腕的位置,而Axis4、Axis5和Axis6控制着机器人末端执行器手腕的姿态。因此如果要通过增加第七轴扩展喷涂机器人的工作空间,只能通过在机器人外部增加运动轴的方式实现。

    常用的工业机器人第七轴有导轨型第七轴和变位机型第七轴两大类。导轨型第七轴即由机器控制的传送带,如图3所示,机器人与导轨能同步运动。带导轨第七轴通常应用于搬运、制造等领域[12]

jsr3-t3.gif

    变位机型第七轴即由机器控制的变位机,如图4所示,工件可放在变位机转盘上,通过旋转可改变工件的姿态,从而大大增加机器人的工作范围。变位机型第七轴比较适用于喷涂行业,本文中用到的也是此类型的第七轴[13]

jsr3-t4.gif

    变位机型第七轴也存在两种运动类型:(1)第一种运动类型是变位机型第七轴由一个单独的电气调节器驱动,不受机器人控制器控制;(2)第二种运动类型是变位机型第七轴受机器人控制器控制,其运动与机器人的运动协调进行。

    在第一种运动类型中,第七轴只能以恒定的速度或预设的速度旋转,这导致整个机器人运动空间的扩展极其有限,因此只能用于对简单曲面的轴对称工件的喷涂中,例如圆筒形工件、长方体工件等。对于自由度较高的非对称的复杂曲面的工件,需要变位机型第七轴可以被完全编程为特定的速度或角度,即协调的变位机型第七轴。本文也针对于此运动类型的变位机型第七轴进行应用开发的研究。

3 喷涂机器人第七轴的开发

3.1 开发环境

    根据项目的需求及实验条件要求,文中所实现的喷涂机器人第七轴的开发针对于ABB六自由度的关节型工业机器人在热喷涂中的应用,其离线编程开发环境是RobotStudio机器人仿真平台。为了提高开发效率,喷涂机器人第七轴的开发基于热喷涂工具软件包进行,该软件包的说明可以在文献[14]中找到。该软件包能根据预设的喷涂路径参数,对于复杂的平面工件或简单的曲面工件,在喷涂工件的CAD模型上自动生成针对ABB六自由度的喷涂机器人的喷涂轨迹。

3.2 影响喷涂质量的重要运动学参数

    在设计和优化喷涂轨迹中,喷涂角度、喷涂距离、工具中心点速度和路径间隔距离等几个影响喷涂质量的重要运动学参数是首要考虑的因素。图5描述了各个运动学参数的含义。

jsr3-t5.gif

    喷涂角度是指喷涂射流轴线与工件表面切线之间的夹角。喷涂角度不能够小于45°,否则会产生“遮蔽效应”,降低涂层的结合度,影响喷涂效果,故喷涂角度一般控制为60°~90°。喷涂距离是指喷嘴端面到工件表面的直线距离。工具中心点速度也就是喷枪移动速度,是指在喷涂过程中喷枪沿工件表面移动的速度。为了得到最大的沉积效率,机器人工具中心点的方向应该与喷涂工件路径上每个点的方向垂直,但有时迫于机器人自身六个轴的局限性,机器人无法到达个别点,可以适当调整工具中心点的方向,使喷涂角度略小于90°。喷涂的距离和机器人的移动速度由工件表面形貌参数和对工件涂层的要求来确定。路径间隔距离直接影响涂层的厚薄。对于同一个喷涂工件,在喷涂过程中机器人的运动学参数的稳定性直接影响着涂层的质量和效果。

3.3 第七轴的编程

    在对喷涂机器人第七轴编程之前,首先需要在RobotStudio中创建机器人的第七轴。对于与ABB机器人配套的第七轴,RobotStudio可自动创建。只需要在RobotStudio中创建一个新的工作站,然后导入相应虚拟机器人和第七轴型号即可,如图6所示[15]

jsr3-t6.gif

    如果所使用的第七轴没有在RobotStudio库中,需要手动创建器人的第七轴。利用RobotStudio的建模功能,对机器人第七轴的部件如旋转轴和旋转盘进行3D模型创建;再利用RobotStudio里面“创建机械装置”功能创建第七轴,然后将有机器人第七轴参数的文件添加到虚拟机器人系统里面,第七轴的坐标系中心一般设在旋转盘正中间的位置,如图7所示[13]

jsr3-t7.gif

    完成第七轴的创建后,可在RobotStudio中编程实现第七轴的调用,具体算法和步骤如下:

    (1)创建喷涂物体坐标系,并与机器人第七轴旋转中心点位置重合。通过编程将该物体坐标系与机器人第七轴连接起来,确保第七轴移动过程中,机器人路径跟随被喷涂物体移动,从而路径上每个点的三维坐标值保持不变。在RobotStudio中实现的核心代码如下:

    RsWorkObject  wobj=stn.ActiveTask.ActiveWorkObject;

    (2)接下来计算路径上每个点的三维坐标值。假设pos1和pos2为喷涂路径上相邻的两个点。软件生成一条闭合曲线,利用API的GetPointOnBodyWire函数,可以得到第一个点pos1的三维坐标值。在RobotStudio中实现的核心代码如下:

    pos1=GetPointOnBodyWire(Edge, numbertarget,FirstStartPoint);

    第二个点pos2的三维坐标可以通过空间关系由pos1计算得到,其代码如下:

    Pos2.x=pos1.x; Pos2.y=pos1.y;Pos2.z=pos1.z-H;

其中H为pos1和pos2在z轴方向的差值,喷涂面的剩余点坐标均可通过该办法计算出。

    (3)然后计算路径上每个喷涂点的方向,喷涂点的方向(x,y,z)用3×3矩矩阵表示,其代码如下:

    Vector x=[0 0 -1];Vector b=GetNormaltoSurface;

    Vector z=-b;Vector y=z.cross(x);

    计算每个点的四元矩阵,确定点在空间的位置,pos1点实现代码如下:

    Matrix4 targetori1 = new Matrix4(x, y, z, pos1);

    (4)计算第七轴值并设计第七轴角度。机器人第七轴总共可以启用6个轴,即用来计算第七轴值API:

    ExternalAxisValues(Eax_a Eax_b Eax_c Eax_d Eax_e Eax_f);

    本实验中,启用了第5个第七轴Eax_e,通过API函数设定第七轴旋转的角度,其实现代码如下:

    ExternalAxisValues.Eax_e = Angle;

    在使用协调第七轴时,为了使第七轴的转动不影响喷涂质量,通常在工具中心点离开喷涂面时才转动第七轴。也就是说第七轴的转动角度可定义为器人路径上在旋转平面上相邻两点沿喷枪的方向的夹角。因为当工件固定在转盘上时,相邻两点和工件的旋转中心点的坐标轴即可已知,因此可通过余弥定理来计算相邻两点间第七轴应该转动的角度。RobotStudio中基于第七轴的复杂曲面路径生成的流程图如图8所示。

jsr3-t8.gif

4 实验和分析

    为了分析第七轴的引入对喷涂效果的影响,设计了两组实物喷涂对照实验。两组实验的被喷涂工件一致,试验场地、机器人运动学参数、热喷涂工艺参数、热喷涂材料等实验条件也都保持一致,区别仅在于对工件进行喷涂中是否使用协调的变位机型第七轴。

    被喷涂工件的结构如图9所示,俯视呈水滴形,长为242 mm,最大宽为121 mm,高为96 mm。此工件仅在俯视面中心轴线对称,喷涂面为不规则曲面,是一个较复杂的工件。工件的材质为铁基材料,以方便利用铁基涂层测厚仪测试非磁性涂层的厚度。

jsr3-t9.gif

    实验场地如图10所示,工件被放置在转盘的中心,工件被喷涂的侧面正对喷枪的喷嘴。实验1是基于传统六轴机器人的工作方式,即喷涂过程中不使用第七轴,转盘保持不动;实验2是基于使用机器人的自身的6个轴和外置的第七轴的工作方式,即喷涂过程中转盘将通过变位机型第七轴与机器人其他6个轴联动。机器人运动学参数和热喷涂参数如表1所示。

jsr3-t10.gif

jsr3-b1.gif

    在喷涂机器人工作过程中,由于粉末浓度、气体流量等热喷涂参数都基本保持固定,因此喷涂质量主要受喷涂角度、喷涂距离、工具中心点速度和路径间隔距离等机器人运动学参数稳定性的影响,即保持机器人运动学参数的稳定能提高涂层厚度的均匀性。一般来说,喷涂距离和路径间隔距离在喷涂轨迹设计中较容易控制稳定,而喷涂角度在实验往往中无法实时地准确地获取,因此通常把工具中心点速度的稳定性作为一个喷涂机器人喷涂轨迹优化效果的评价指标。

    RobotStudio作为专业的ABB机器人仿真平台,能提供与实际运行高度吻合的机器人运动学参数仿真结果。因此本实验通过建立与真实实验环境完全一致的虚拟实验环境,如图11所示,并仿真喷涂过程的方法来获取近似的工具中心点的移动速度的变化。

jsr3-t11.gif

    在RobotStudio开发平台中,基于热喷涂工具软件包,分别生产了实验1和实验2两个不同条件下的喷涂机器人涂轨迹。机器人的涂轨迹通常可选择沿垂直路径移动或沿水平路径移动。对于本实验中的工件,沿垂直路径移动的方案较好。因为通过RobotStudio仿真发现,当喷枪的运动是上下直线运动时,其运行速度相对会保持平稳。此外,根据程序的设定,当协调的第七轴转动时,工具中心点正处在工件的外面的运动缓冲区中,因此机器第七轴的旋转不会影响喷涂的效果。

    图12是实验1的喷涂轨迹。由于机器人六轴的运动空间的限制,无法一次性完成全部曲面的喷涂工作。因此只能在完成一侧曲面的喷涂工作后,人工将工件旋转180°,再以同样的方法完成另一侧的喷涂。

jsr3-t12.gif

    图13是实验2的喷涂轨迹。由于加入了协调的第七轴,机器人的运动空间被扩大,因此可以一次性完成整个曲面的喷涂工作。

jsr3-t13.gif

    在喷涂实验前,工具中心点的移动速度的变化已通过RobotStudio平台仿真近似得到(根据测试,工具中心点的移动速度在仿真中软件平台的输出值与在实际运动中机器人控制器的输出值之间的偏差不超过5%)。图14是在实验2中15个喷涂周期的工具中心点速度的变化情况,采集时间的45 s左右。从图中可以看出,在喷涂时,大部分的工具中心点的速度都能保持在预设值500 mm/s左右,仅有少部分点低于500 mm/s。通过进一步细节分析发现,这些工具中心点的速度基本都是机器人在工件外缓冲区内加速或减速时采集的,因此不会对喷涂质量造成影响。

jsr3-t14.gif

    图15是在实验1中工具中心点速度的变化情况。为了更好地阐述现象,特地选取了一个水平往返运动(即2个喷涂周期)的数据行进分析。从图中可以看出,在喷涂时,由于机器人运动空间的限制,工具中心点运动至工件两侧时,其速度大幅下降至400 mm/s左右。通过进一步分析发现,当工具中心点位于工具喷涂曲面上时,所有采集的速度中有近一半的值低于500 mm/s。而且根据以往的经验,当工具中心点速度下降时,其喷涂角度也往往无法保持90°的最优值。因此通过以上分析可以预测,在实验1中工件两侧的涂层质量应该会比较差。

jsr3-t15.gif

    为了验证以上分析,在实物喷涂实验结束后,利用Elcometer 456涂层测厚仪测量工件上涂层的厚度。工件的侧面水平周长约为58 cm,每间隔0.5 cm取一点,可获得在水平边沿均匀分布的115个间隔点。由于喷涂时工具中心点是沿垂直方向的轨迹运动,因此在每个间隔点沿垂直方向的涂层厚度大致一样。为了降低实验误差和测量误差,在涂层厚度计算中分别选取每个间隔点沿垂直方向上高、中、低3个位置点,每个位置点的涂层厚度测量5次,最后把这15个厚度测量值取平均即为该间隔点的平均测量厚度。由于起始时喷枪相对于工件表面是从右至左移动,因此在实验数据分析中,定义工件左侧的尖端为数据起始端。

    图16和图17分别是实验1中的涂层厚度分布情况和实验2中涂层厚度分布情况。由图可见,实验1中,工件中央的涂层厚度较为均匀,而两侧由于机器人运动空间限制的影响,涂层质量大幅下降。而实验2中涂层厚度较为均匀,厚度基本保持在630 μm左右,仅在工件右侧尖峰处涂层质量有明显的下降,这是因为在工件右侧尖峰处垂直喷涂面极为狭窄,涂料无法有效地附着。这个结论也与之前在工具中心点速度仿真中的分析结论相符。实物喷涂实验结果表明与传统的六轴机器人轨迹生成方案(实验1条件)相比,本文提出的方案(实验2条件)复杂曲面的喷涂效果更好,更适于实际工业应用。

jsr3-t16.gif

jsr3-t17.gif

5 结论

    本文提出了一种基于离线编程技术的喷涂机器人第七轴的喷涂轨迹生成优化方案,旨在通过引入协调的第七轴扩展喷涂机器人的运动空间,使其能够完成复杂工件曲面的喷涂。

    文中介绍了该方案在RobotStudio ABB机器人仿真平台上的应用开发方法,并通过两个热喷涂的对照实验说明了在面对复杂曲面工件时,喷涂机器人第七轴的引入确实能优化工具中心点的速度,从而提高工件的喷涂质量。因为本文提出的喷涂轨迹生成优化方案是基于机器人运动学的特点,因此也适用于其他公司的喷涂机器人,因此具有较高的工程实用性。

参考文献

[1] 王洁.2017年工业物联网的机遇在哪里?[J].电子技术应用,2017,43(2):4-5.

[2] 张轲,谢妤,朱晓鹏.工业机器人编程技术及发展趋势[J].金属加工:热加工,2015(12):16-19.

[3] 魏志丽,宋智广,郭瑞军.工业机器人离线编程商业软件系统综述[J].机械制造与自动化,2016(6):180-183.

[4] 金自立.工业机器人的离线编程和虚拟仿真技术[J].机器人技术与应用,2015(6):44-46.

[5] 唐涛宇.机器人离线编程系统的研究[D].哈尔滨:哈尔滨工业大学,2013.

[6] 林义忠,刘庆国,徐俊,等.工业机器人离线编程系统研究现状与发展趋势[J].机电一体化,2015,21(7):8-10.

[7] 广州致远电子有限公司.焊接机器人如何快速实现DeviceNet通信—基于DeviceNet协议的XGate—DVN10应用[J].电子技术应用,2011,37(7):36-37.

[8] 祁文砚,赵德安.喷涂机器人离线编程的应用和扩展[J].制造业自动化,2013(19):25-27.

[9] 葛浏昊.喷涂机器人作业规划系统研究与开发[D].南京:东南大学,2014.

[10] 叶晖,管小清.工业机器人实操与应用技巧[M].北京:机械工业出版社,2010.

[11] ABB.IRB2400工业机器人数据表[EB/OL].(2016-05-12)[2017-03-12].http://new.abb.com/products/robotic/zh/industrial-robots/irb-2400/irb-2400-data.

[12] 田威,戴家隆,周卫雪,等.附加外部轴的工业机器人自动钻铆系统分站式任务规划与控制技术[J].中国机械工程,2014,25(1):23-27.

[13] 周方伟.ABB机器人弧焊系统的研究与分析[J].汽车实用技术,2010(5):56-58.

[14] FANG D,DENG S,LIAO H,et al.Automatic generation of robot trajectory for free-form surfaces in thermal spraying[C].International Conference on Thermal Spray,Ham-burg,2011:6-11.

[15] ABB.RobotStudio users manual[EB/OL].(2015-03-10)[2017-03-15].http://developercenter.robotstudio.com.

继续阅读>>