五轴机床的RTCP功能开发与应用研究
2021-06-18刘静文黄玉彤
刘 沛 刘静文 黄玉彤
(科德数控股份有限公司,辽宁 大连116600)
五轴机床是包含有2个旋转轴和3个直线轴的机床。相比于普通三轴机床,五轴机床多了2个旋转轴,使得刀具轴线的控制更加灵活,从而保持最佳的切削状态,有效避免刀具干涉[1]。因此,五轴机床的应用范围比普通三轴机床更广泛,加工质量更高。
五轴机床多用于复杂自由曲面的加工,在航空航天领域得到了广泛的应用,多用来加工叶轮叶盘、飞机结构件等复杂零件。另外,在汽车等行业也有着广泛的应用[2]。
五轴机床是重要的加工设备,关系到国家国防安全等重要方面。由于其特殊地位,西方工业发达国家一直把五轴数控系统作为战略物资实行出口许可证制度[3],因此我国需要加快发展自己的五轴机床来替代进口。
对于五轴机床来讲,具有RTCP(rotation tool center point)功能是其能否真正发挥五轴结构优势必不可少的一种功能。RTCP[4]旋转刀具中心点编程功能是五轴机床的标志性功能,只有具有该功能的五轴机床才能称之为“真”五轴机床。具有该功能的五轴机床相比于不具有该功能的五轴机床,在使用上有更佳的便利性和更好的加工表现,更能提高机床的使用效率。
1 数学描述
数控系统控制机床运动时,需要1个控制点用来指定机床的位置。例如普通三轴机床一般使用主轴端面的中心点作为机床的控制点,五轴机床也会使用类似的点作为控制点。控制点的选择标准是旋转轴旋转时不会改变控制点的位置。因此,一般五轴机床根据机床类型的不同选择不同的控制点。例如,双转台结构的机床,控制点的选择和普通三轴机床一致,均为主轴端面的控制点。而带摆头的机床则选择摆头的旋转轴线上的一点作为控制点。
不具有RTCP功能的五轴机床进行后处理编程时,只能使用机床的控制点进行编程[5]。而具有RTCP功能的五轴机床则可以直接使用刀尖点作为控制点进行编程,这就大大降低了编程的难度,提高了后处理编程的灵活性,由此提高了机床的使用效率。
数控系统需要做的,就是根据机床的实际结构来计算当前刀尖点坐标和姿态对应的机床控制点的坐标和相应姿态。姿态指的是旋转轴的角度,对于刀尖点和控制点而言旋转轴的角度是一致的。
根据旋转轴类型的不同,五轴机床主要分为3大种类,共12种结构。旋转轴分为摆头和转台2种不同形式,摆头是旋转刀具的旋转轴,转台是旋转工件的旋转轴。因此,五轴机床主要分为双摆头、双转台以及一摆头一转台3大种类[6]。
旋转轴根据其旋转矢量与哪个直线轴平行可以分为3种:A、B、C轴。根据旋转轴安装关系的不同,五轴机床在3大种类上可以细分为12种结构。旋转轴的安装关系主要是把旋转轴确定好第4轴和第5轴。第4轴的旋转会影响到第5轴的旋转,第5轴的旋转不会影响到第4轴的旋转。具体的分类由表1可知。
表1 五轴机床主要分类
对于一摆一转结构的机床,第4轴是转台轴,第5轴是摆头轴。
1.1 旋转矩阵法
正因为五轴机床加入了旋转轴,才带来了性能上的优势,数控系统所需要解决的主要是补偿旋转轴旋转时引起的刀尖点位置和刀具矢量发生的改变。
RTCP功能的表现是当只有旋转轴旋转时,刀尖相对于工件的位置保持不变。因此摆头机型旋转的是刀具的矢量,转台机型旋转的是刀尖的位置坐标。一般文章介绍时,是以旋转矩阵法为主的。
绕X轴的旋转矩阵,设旋转角度为A,则旋转矩阵为:
绕Y轴的旋转矩阵,设旋转角度为B,则旋转矩阵为:
绕Z轴的旋转矩阵,设旋转角度为C,则旋转矩阵为:
在理想状况下,2个旋转轴,则刀具矢量直接乘以2个旋转矩阵即可。例如假设双摆头CA结构的机床刀具矢量为[0 0 -L],其中L为刀具长度。则双摆头旋转C和A角度后得到的刀具矢量为:
得到新的刀具矢量后,刀尖点坐标减去该矢量就得到了机床控制点的坐标。
对于拥有双转台的机型而言,上述计算中的刀具矢量改成刀尖点在初始姿态下转台坐标系内的坐标即可,系统计算出刀尖点跟随两个转台旋转后在机床坐标系下的坐标即可。
对于一摆一转结构的机床,需要处理一个摆头和一个旋转轴,这时既需要计算刀尖点跟随转台旋转的坐标,也需要计算摆头旋转后刀具矢量的变化。表面看起来这样的计算更加复杂,但是这种结构的机床不需要考虑两个旋转轴之间的位置相对关系,最终的计算反而简单些。
1.2 矢量旋转法
一般情况下使用旋转矩阵法是足够的,但是当需要处理倾斜旋转轴结构的机床时,使用矢量绕空间中的任意矢量旋转的算法就更为方便和直接。
使用罗德里格旋转公式:
针对所有结构的机床,都可以使用该公式计算2个旋转轴旋转造成的矢量的变化,从而实现RTCP功能。
使用该方法可以比较方便直观地处理倾斜旋转轴的相关RTCP计算,尤其在旋转轴的旋转矢量不与X、Y、Z轴平行时计算更为方便。
1.3 实际开发遇到的问题
实际的机床由于制造和装配的关系,2个旋转轴是永远不可能正交和相交的,数控系统需要处理这样的情况。
对于普通非设计倾斜旋转轴的机床,数控系统可以认为,2个旋转轴是正交的,其精度通过机械装配来保证。
2个旋转轴之间的位置关系则需要通过测量手段来标定,写入到数控系统的参数中去。
数控系统的RTCP功能开发需根据2个旋转轴的位置差来进行RTCP计算。2个旋转轴的位置差指的是初始状态下即旋转轴都为0时,第4轴控制点到第5轴控制点在机床坐标系下的矢量。
双转台的第4轴控制点到第5轴控制点的矢量可以理解成第5轴的轴矢量在第4轴的轴矢量上的投影交点到台面中心点的矢量。
如果是双摆头结构的机床,可以理解成第4轴轴线和第5轴轴线在机床坐标系下Y方向的距离,如图1所示。
对于第5个旋转轴是摆头的机床,还需要标定初始状态下第5个控制点到主轴端面中心点在机床坐标系下的矢量。这是由于第5个旋转轴旋转时,系统需要知道刀尖点到第5旋转轴的轴线的矢量,才能进行RTCP的计算。
这个矢量可以理解成刀具矢量在第5轴的矢量上的投影点到主轴端面中心的距离。
实际机床的RTCP参数标定过程中,都是根据上述概念,通过特点的方法来找出这些机床的结构参数值的。
从原理上来讲,各家数控系统的RTCP功能在使用上都是一致的。不同点在于各家对于需要标定的RTCP的参数值不同。
例如对于AC双转台结构的机床GNC系列数控系统需要设置的是第5轴控制点到第4轴控制点的矢量,以及转台中心点在机床坐标系下的坐标值,如图2所示。
相同的机床,西门子数控系统需要设置的是第4轴控制点到第5轴控制点的矢量,和转台中心指向机床坐标系原点的矢量。两者基本一致,值的符号上很可能不同,如图3所示。
2 RTCP的扩展功能
只具有基本RTCP功能的数控系统是无法满足用户各种需求的,机床在实际加工中需要更加完善的3+2功能和矢量编程功能等其他功能,组成完整的RTCP功能包供用户使用。
2.1 斜面加工功能
3+2功能指的是斜面加工功能,使用者任意指定一个空间坐标系,NC加工程序在该坐标系内执行。该功能是五轴机床非常重要的一个功能,在五轴机床的加工工件中,90%以上的加工件属于3+2加工。
3+2功能除了在任意空间坐标系到机床坐标系的转换功能,还需要具有让刀具垂直于指定平面的功能,以便于用户使用。
刀具自动垂直于斜面的功能牵扯到两个方面的计算,一是机床旋转角的计算,刀具矢量可以垂直于倾斜坐标系的指定平面。二是对于带有转台的五轴机床,由于转台旋转后工件会跟随转台旋转,数控系统需要计算出倾斜坐标系的原点在转台旋转后在机床坐标系下的坐标值。更新计算坐标系的原点坐标值是3+2功能的一个重点。
2.2 刀具矢量编程功能
矢量编程功能是五轴机床RTCP的一个重要功能,是五轴RTCP高级插补的基础。例如大圆弧插补[8],圆锥插补,虚拟轴插补等高级插补功能都是在矢量插补的基础上进行开发的。
五轴机床通过使用旋转轴来控制刀具相对于工件的旋转,归根到底的是得到一个刀具矢量。CAM软件提供了刀尖中心的位置坐标X、Y、Z和该点的刀具矢量的3个分量I、J、K,在很多情况下使用机床或者编程使用刀具矢量更容易实现目标,而且使用刀具矢量系统可以对刀具矢量做更多的计算,可以更好地约束刀具矢量的运动,从而得到更精确的刀具运动轨迹。
正交结构的五轴机床的矢量计算角度比较容易求得,以CA结构为例,初始刀具矢量为[0 0 1],下面给出对应的计算公式。
展开得到:
根据公式可以求出4组解来,再根据角度连续性可以选出其中一组解。如图4所示,刀具矢量从初始矢量旋转到目标矢量,一般有4个途径,就是4个解。根据上一个周期的CA轴的位置,选出一个最短路径的解作为最终结果。
拥有倾斜旋转轴的五轴机床,在计算原理上和普通五轴机床一致,需要额外关注的是倾斜旋转轴相关的计算。
简单起见,可以认为只有一个倾斜旋转轴,双摆头结构的机床该轴多为第五轴,双转台结构的机床该轴多为第4轴,一摆一转结构的该轴多为摆头轴。在这样的假设条件下,进行矢量角度的转换计算就会简单很多。
想在任意空间坐标系下运行五轴RTCP程序,数控系统需要对刀具矢量进行从任意空间坐标系到机床坐标系下的转换计算,再使用矢量编程功能控制机床的旋转轴运动。当叶轮处于偏置安装的状态下加工,就需要用到该功能。
2.3 高级插补功能
高级插补功能是RTCP功能的一个重要部分,它包含了大圆弧插补、圆锥插补、虚拟角插补以及双样条插补等功能。从使用目的上来说,是为了对刀具矢量直接的约束。
2.3.1 大圆弧插补
该功能需要刀具在程序段内运行时,刀具矢量严格运行在该程序段首末矢量限定的圆弧平面内。系统需要计算在首末矢量决定的圆弧上每个周期的刀具矢量,并且根据刀具矢量计算出机床的旋转轴的坐标值,才能控制刀具到达该姿态。这说明矢量插补是大圆弧插补功能的基础。
在插补计算时,由图5所示的角度a和刀尖点的轨迹保持线性关系,当刀尖点运行到微段的终点时,a走的角度增量也和大圆弧的圆心角大小一致了。设大圆弧的圆心角和刀尖点微段长度的比值为ak,那么每个插补周期的Fa=F×ak,对应的刀具矢量为:
设VC=Vs×VE,Vs为初始矢量,VE为终点矢量,则VC为大圆弧所在平面的法矢。使用矢量绕矢量旋转的算法,设VC=[nxnynz]可以得到刀具矢量为:
在得到刀具矢量后,通过计算对应的机床物理旋转轴的角度就可以控制机床的运动了。
2.3.2 圆锥插补
如图6所示,这种功能要求刀具矢量在圆锥的外表面上运行,这就需要计算出一个圆锤来,然后让刀具矢量在圆锤的外侧面上运行。而且需要知道的是这个圆锥的轴线矢量、初始矢量、终点矢量、圆锥角度、逆时针还是顺时针运行等信息,才可以完整地建立起一个圆锥来。
主要的计算过程:使用刀具的初始矢量姿态,绕中轴矢量旋转一个角度后得到的新的目标矢量的过程。这个目标矢量就是我们在插补过程中想要得到的矢量,这个算法也能保证该矢量一直是在这个圆锥的外侧面上进行运动。
在插补计算时,目标矢量围绕中轴矢量旋转的角度和刀尖点的微段长度成线性比例关系,当计算得到每个插补周期的刀尖点运动距离后,就可以计算出对应的角度,这样才能计算得到最终的矢量。
假设圆锥的的圆心角和刀尖点的长度的比例为Kb,则Fb=F×Kb。从而可以计算得到b的具体数值。
假设初始矢量为Vs,中轴矢量Vc=[nxnynz],则通过角度b计算得到的刀具矢量为:
再使用该矢量计算出对应的机床的实际物理轴的旋转角度值,即可用来控制机床运动了。
根据NC程序给定信息的不同,圆锥插补可以分为好多种,有给定初始矢量、中轴矢量、圆锥圆心角度的;有给出初始矢量、中间矢量、终点矢量的;有给出圆锥角、圆锥圆心角度、中轴矢量的等等。
在各种情况下,都需要计算出所需圆锥的各种信息。它所需的核心信息包含中轴矢量、初始矢量、圆锥的圆心角度b和圆锥的旋转方向,这4个信息是主要的信息。不论NC程序中给出怎样的信息,数控系统都要根据NC程序中的信息计算出这4个主要的核心信息,才能最终计算出正确的圆锥插补轨迹来。
2.3.3 双样条插补
如图7所示,双样条插补使用两条NURBS曲线,一条NURBS曲线描述刀尖点的运动,另一条NURBS曲线描述刀具上另一点的运动。由CNC系统自动计算所需的刀尖点位置和刀具矢量,再通过矢量计算旋转轴的位置,控制机床运动。
由于双NURBS样条的NC程序中已经包含了整个空间曲面的信息,那么CNC系统完全可以根据这个信息,和刀具的半径自动计算出需要补偿的向量,进行刀具的空间半径补偿,如图8所示。
通过双样条的空间刀具半径补偿技术,可以在只有两个NURBS样条的情况下,使用任意半径的圆柱型刀具加工出一个薄壁件。
圆锥插补、虚拟轴插补、双样条插补等高级插补功能,都是要计算出每个插补周期的刀具矢量,再根据刀具矢量计算出对应的机床旋转轴的位置。
2.4 极点附近的处理
在矢量[0 0 1]的附近,CAM软件生成刀具矢量并计算旋转角时会产生不连续的情况,系统需要根据角度连续性的原则对NC程序进行处理,以满足机床运动的连续性,这也是数控系统对极点位置的处理。
例如程序中出现A-0.001C180,下一行出现A-0.001C0的情况,即程序中矢量的姿态变化很小,但是反应到角度上对C轴的位置影响特别大。这时,需要数控系统对第二行的A-0.001C0进行处理,转换为-A0.001C180来满足机床的连续运动性。
3 实际应用
实验环境:科德400型双转台AC结构机床,GNC62数控系统。试验模型:标准S型试件。加工程序为双样条格式。使用该格式的S样件加工(见图9),可以一起验证双样条插补,矢量角度的换算,还可以方便地加入刀具的空间半径补偿功能。实际加工效果见图10。
笔者公司的五轴机床出厂时均需要合格加工S样件,任意选取其中一张S样件的加工合格检测报告,如图11所示。
配有笔者开发的RTCP功能的GNC系列数控系统支持市面上大多数结构的五轴机床,如立式双摆头龙门、立式双转台机床、卧式一摆一转车铣复合机床(见图12)等,所加工的典型零件如车灯模具、叶轮(见图13)等。
4 结语
本文比较全面地介绍了五轴机床的RTCP相关功能。通过从整体上阐述五轴机床.的RTCP功能开发的整个过程和各方面的工作内容,说明了RTCP功能的开发要点和需要注意的事项,对数控系统RTCP功能的开发具有一定指导意义。