1 引言(Introduction)
激光焊接作为新的焊接工艺方法在汽车制造领域有大量成功的应用,显示出激光焊接强大的生命力和非常广阔的应用前景.采用并联机构可以进一步提高机器人的负载/自重比,改善机器人的运动特性,使其结构更加灵巧.利用并联机构刚度大、运动惯性小、精度高等优点,实现高精度激光焊接加工,这是并联机器人技术向激光焊接领域的拓展.
传统的数控加工轨迹控制概念都建立在笛卡儿坐标系中,而并联机器人的轨迹控制是由若干杆件的空间运动综合而成的,若使机器人加工末端点实现所需要的运动,则必须在两者之间进行坐标转换.另外,并联机器人的结构和配置形式的多样化使传统数控的封闭式结构不能满足其需求,因此并联机器人的控制系统必须是开放式结构.
本项目研制的并联机器人控制系统是以Linux 24.20+实时内核RTLinux3.1作为实时软件平台的全软件开放式数控系统,该系统以C语言为编程语言编制数控系统软件.由于引入了实时多任务机制,采用开放式的结构框架,因此它可以实现特殊机构构型并联机器人的高速、高精度控制.该系统适用于激光焊接、切割等对精度要求较高的加工应用,其关键难点技术的研究突破,对于进一步开发激光焊接并联机器人系统并实现其产业化具有重要意义.
2 系统组成(Components of the system)
并联机器人数控系统是一个实时多任务软件系统,它可以分为实时任务层和非实时任务层两层.实时任务层包括插补计算模块、位姿正反解模块、速度处理模块、电机控制模块、软PLC模块、故障诊断及处理模块等直接与数控加工相关的、对实时性要求较高的功能模块,此层由RTLinux 实时子系统来处理;除此之外,对实时性要求不高的功能模块,如人机交互模块、参数配置模块、代码解释模块、加工模拟模块、文件管理模块等,为非实时任务层,由普通Linux内核控制,数控系统软件功能结构如图1所示.这样分层的好处是使实时任务和非实时任务运行在不同的进程空间,便于保证系统的实时性,系统层次分明,增强了开放性和灵活性,可以适应多种实际应用.
图1 数控系统软件结构
本数控系统以Linux2.4.20 + RTLinux3.1为操作系统,PC机为平台,上述的各种功能均由软件完成,与外部伺服相连接的轴控制卡只是将PC机的数字量转换以后输出给伺服系统,并将外部的反馈信息送入PC机,并不进行任何的计算.数控系统硬件结构如图2所示.
图2 数控系统硬件结构
3 位置正反解模块的实现(Realization of the forward and inverse displacement modules)
上述功能中,不同于传统数控系统之处在于系统中需要根据机械结构实际的机构模型嵌入特定的位姿正反解模型.因此,建立正确的正反解模型至关重要.
3.1 建立正反解几何模型
机器人机构简图如图3所示,在本文所述的机构中,将光轴位姿参数(虚轴坐标)换算到驱动坐标位置(实轴坐标)称为反解运算.
图3 机器人机构简图
设定L2分支中绕X 轴旋转虎克铰的旋转角度为α,绕Y轴旋转虎克铰的旋转角度为β,3个分支的杆长分别为,串联关节回转转动副和俯仰转动副的转角分别为γ和θ ,则由位姿坐标变换可得到:
(1)
已知机器人末端执行器相对于固定参考坐标系O-XYZ 的位姿矩阵:
(2)
求解此矩阵方程可得α、β 、γ 、θ 、.
根据求解得到的α、β 和,将和求解出来.得到 和 在固定参考坐标系O-XYZ 中的坐标,则得到下式:
(4)
正解过程与反解过程正好相反:已知机器人的关节变量3和γ 、θ ,求解机器人末端位姿矩阵.
根据关节变量、 和,以及、O、 点坐标,列距离方程可以求解到 分支绕X 轴和绕Y轴的旋转角度α和β .其求解方程如下:
根据得到的α和β ,将已知的、γ 、θ 代入到位姿变化矩阵,即可将机器人的末端位姿矩阵求解出来,完成运动学正解.分页
3.2 正反解多解问题
在求解并联机器人正反解方程的过程中存在方程多解问题:在正解计算中一组实轴坐标对应两组虚轴坐标,其中有一组虚轴坐标位于静平台(平面)上方,可舍去;在反解计算中一组虚轴坐标对应两组实轴坐标,由于本系统具有驱动轴(实轴)单轴手动功能,如果直接舍去反解计算的一组实轴解,会造成手自动切换时系统伺服轴跟随误差出界.产生这种情况的原因是:实轴在单轴手动时可能进入被舍弃的实轴解空间,而实轴单轴手动时系统是不进行反解计算的,因此不会发生报警事件;而在切换到自动状态时反解生效,但实轴解为另一组解,由于理论值与实际值相差很大,造成跟随误差出界报警(如图4 所示).
图4 手自动切换过程示意图
为了解决反解多解问题,在反解模块中引入变量来读取实轴实时坐标(),将其与反解计算值() 进行比较,取最接近实轴实时坐标的那组解作为输出,经过处理后驱动实轴运动.为了节省运算时间,此判断过程只在实轴单轴手动切换到自动状态时生效,判断过后一直采用选中的那组解的解析表达式计算实轴坐标,直到下次切换.
3.3 旋转轴“过零”问题
第4 轴(旋转轴)在经过0°点时,会出现突然反转现象:在并联机器人作加工时,在某些位置需要从359.999°运动到0.001°,加工过程只需要旋转轴运动0.002°,而实际情况是旋转轴转动大弧359.998°,产生这种现象的原因是系统将旋转轴当作线性轴来处理,而反解计算只能计算0°到360°的半闭半开区间,旋转轴到360°就会归零.这是加工所不需要的,系统也不可能在一个插补周期内完成一周的转动.
为解决此问题,将第4 轴反解计算值与当前实时坐标相减,然后按下式修正计算值:
式中为修正后的第4轴坐标,为修正前的第4轴坐标计算值,为第4轴的当前实时坐标,| |为向上取整符号.
3.4 加工曲线生成问题
对于5 自由度加工,人工编程有很大难度,而现有的计算机辅助制造(CAM)软件没有针对并联机构的模块.为利用现有的CAM 软件进行加工编程,在位姿正反解模块中加入转换模块,将CAM 中给定的结构和正反解输入输出坐标相互转化.操作者可根据不同的CAM 软件定制不同的转换模块.
以UG的五轴双摆头结构X、Y 、Z、A、B为例说明转换模块的转换过程.首先,为简化转换过程,将第4、第5轴偏置设为0,这样UG在转换时就不考虑刀长,那么UG 输出代码中的X、Y 、Z与并联结构的需求一致,不需要再作转换.我们只需要对刀轴姿态进行转换:设单位刀轴矢量在X 轴的投影为I、在Y轴的投影为J、在Z 轴的投影为K,A为主摆角,B为副摆角,刀具轴在Z轴上,通过数学推导可得出反解模块的刀轴矢量和A、B的关系如下(式中i、j、k依次为矢量I、J、K的模,A、B依次为转角A、B的角度值):
同样可得出正解模块的转换关系为:
4 插补算法的设计(Design of the interpolationalgorithm)
用并联机器人进行激光加工主要是控制激光焦点的运动,并保持激光处于工件当前加工点的法线方向.并联机器人是由复杂的空间机构组成的,激光光轴位姿参数与控制系统驱动坐标位置之间需要经过坐标变换,从而获得控制所需的几何描述.因此,并联机器人的插补方式与传统数控也有所不同.
本系统插补计算将机构末端的运动轨迹离散为一系列首尾相接的小线段:给定一个插补周期(作为系统参数,用户可设定),按照指令中给出的轨迹进给速度,单独计算各轴方向上的位移增量,将连续的轨迹离散为若干离散点序列,然后应用S型加减速算法,对插补步长进行修正.利用反解模块将插补生成的离散点映射到关节空间,系统根据反解模块计算结果驱动伺服电机运动.
5 激光工艺模块设计及实现(Design and realizationof the laser processing module)
并联激光加工数控系统还要包括激光工艺模块,该模块用于设置和调整激光加工工艺参数,包括激光功率控制、离焦量控制、偏距控制、激光器状态等参数,如图5 所示.
图5 激光加工参数界面
激光功率设定参数是通过轴控制板发送给激光器的,激光器将此参数作为输出功率曲线的幅值.离焦量是指焦平面与被焊工件上表面的距离,这里将离焦量作为激光焦点和第5轴旋转中心距离的修正参数,传递给正反解模块.光束中心偏离加工轨迹的距离叫偏距,偏距设置用于XY 、YZ、ZX平面加工.这里规定光束中心在加工轨迹右侧偏距为正值,左侧为负值.
6 实验与结论(Experiment and conclusion)
使用便携式三坐标测量机对并联机器人末端精度进行检测.并联机器人末端由(0;400;0;0;0) 沿直线运动到(1000;400;0;0;0),测出误差如图6 所示(图中横坐标为X 轴位置坐标,纵坐标依次为X、Y 、Z轴位置误差和单位激光光轴矢量在X轴的投影I、在Y 轴的投影J、在Z 轴的投影K 的差).
图6 并联机器人位姿误差曲线
并联机器人具有机械结构简单、控制系统复杂的特点,需要根据不同的结构形式设计不同的控制系统.本系统的开放式设计可提高开发效率,降低开发成本,使并联数控系统的开发、维护和推广变得更加容易.实验证明本文开发的基于RTLinux 的五自由度并联激光焊接数控系统性能达到了激光焊接的实际应用要求.