传统的三轴机床在加工包含复杂表面或是具有各个方向孔的工件时,为了使得刀具从各个方向与工件接触,需要用到特殊的夹具,并且还要进行多次地工序变换。但使用五轴联动数控机床,可以实现在单次装夹下进行复杂形状工件的高速、高精密加工。
也就是说,刀具(或测头)可以从任意方向接近工件,才是机床实现任意角度加工的根本原因。
机床是通过控制刀具(或测头)的位置和姿态来实现工件的加工(或测量)。因此,关键问题或者说前提是如何描述刀具(或测头)的位置和姿态。
三轴数控机床
在三轴数控机床的加工过程中,虽然刀具(或测头)的位置在不断变化,但是刀具(或测头)的姿态却是固定的。例如,一般立式三轴机床的刀轴方向在加工过程中一直沿着机床的
轴的方向。通过
三个直线轴的坐标值即可完全确定刀具(或测头)的位置和姿态。[2]
三轴数控机床示意图五轴数控机床
通常情况下,五轴机床是在三轴机床的基础之上添加了两个旋转轴,通常用
轴来分别代表绕三个直线轴
的旋转轴。五轴机床包含
轴中的任意两个轴。详见:三轴数控加工中心和五轴的区别?(详细点)
注意,上图只是想表达旋转轴和直线轴之间的关系,不要误以为上图是实际五轴机床的配置形式,实际五轴机床的旋转轴只包含上图
轴中的两个,即
轴,或
轴,或
轴。
在五轴加工中,由于这两个旋转轴的存在,导致刀具(或测头)的位置和姿态均会改变。显然,刀具(或测头)的位置在选定了主轴上的某个参考点后,可以通过三个直线轴
的坐标轴进行确定(当然,实际操作中还有考虑旋转中心到刀尖点的距离,及旋转角度的影响)。
但是刀具(或测头)姿态呢?
为了描述加工(或测量)过程中刀具(或测头)的姿态,就衍生出了“刀轴矢量”这个概念。刀轴矢量是一个三维的单位向量
,其中每个元素分别对应刀轴方向的单位向量在直线轴
三个方向的投影值。
刀轴矢量
由于刀轴矢量是一个单位矢量,其模长为
。所以刀轴矢量的顶点在空间中的所有可能的位置构成一个半径为
的球面。
而任意的刀轴矢量方向,都可以通过由空间中的某个矢量绕着空间中两个不共线的轴旋转得到。
这样说有点抽象,但是我们生活中就有一个很好的例子——“经纬度”(其实也就是上图中的
和
)。我们可以通过经纬度确定地球球面上的任意位置。经纬度仅仅包含两个坐标值,而这两个坐标值通过两个互相垂直的旋转轴的转角即可描述。
如下图,在确定球面上某个点的位置时(每个点都与一个刀轴矢量一一对应),可以通过两种坐标系描述。
采用左边的球面坐标系,也称球面坐标的显式表达(即,经纬度,包含两个坐标值,也就对应了两个自由度,因为经度和纬度之间是相互独立的);采用右边的直角坐标系,也称球面坐标的隐式表达(包含了三个坐标值,但依旧对应两个自由度,因为这三个坐标值之间包含一个隐性约束:
)。[3]
球面坐标的显式表达和隐式表达
所以,由两个旋转轴的旋转角度即可描述球面上一个确定的位置。而这个确定的球面位置点朝着直线轴
三个方向的投影值就是用来描述刀具(或测头)姿态的刀轴矢量
。
这样,两个轴的旋转角度和刀轴矢量之间就建立了一一对应的关系。实际五轴加工中,数控系统根据数控程序中的刀轴矢量,通过运动学关系解得到两个旋转轴各自的旋转角度,结合直线轴的坐标值,进而控制两个旋转轴和三个直线轴,使刀具(或测头)运动到预定的位姿(位置和姿态)。
用一个通俗但不太严谨的说法就是,只需要在三轴机床的基础之上再增加两个旋转轴(可以通俗理解为一个确定经度,一个确定纬度)。就能够控制刀具从空间中的任意方向接近被加工工件,实现任意复杂曲面的加工。
而在三轴机床的基础之上再增加两个旋转轴,并且能够依靠数控系统、伺服系统,以及RTCP(Rotation tool center point)等功能实现五轴联动加工的数控机床,自然就是五轴联动数控机床。[4]
关于RTCP功能,请参见:什么是假五轴联动加工中心,什么是真五轴联动加工中心,和三轴加工中心什么区别?
--
关于欧拉角的补充
有人提到了图形学或机器人学,我觉得我有必要在最后补充一下。就是关于图形学中欧拉角的问题。
例如,在描述一个飞机的空间姿态的时候,我们会用到三个欧拉角,即yaw(偏航)、pitch(俯仰)和roll(翻滚),如下图。
为什么描述飞机姿态需要考虑三个旋转角,而刀轴矢量却只需要考虑两个旋转角呢?
因为与描述飞机姿态不同的是,在描述刀轴矢量时,如果将绕刀轴方向定义为roll方向,则该roll方向的角度我们是不关心的。换句话说,刀具绕主轴的旋转并不会影响刀轴矢量,只需要靠yaw和pitch就能得到所谓的经纬度了。这也是为什么描述刀轴矢量只要两个自由度。希望最后这段解释能够帮助相关领域的人理解这之间的区别。
--
关于“为什么五轴机床不采用更多联动轴?”的补充
评论区依然有人说,“五轴是因为不能悬空加工,所以六个自由度中固定了一个自由度”,看到这句话,我感觉我前面说了这么多话都白说了。那么我可以反问:如果真的是因为不能悬空加工而固定一个自由度,然后
,所以是5个联动轴的话,那7轴的机械臂该怎么解释???
五轴机床之所以只采用5个联动轴,一方面,是因为5个联动轴是实现任意角度加工所需要的最少联动轴数,前面已经详细论述了为什么;另一方面,通常只采用5轴,是因为联动轴数越少,机床结构越简单、紧凑,且越容易保证机床的动刚度和静刚度,动、静刚度对于精度要求很高的数控机床而言是非常重要的。但是,这并不妨碍有更多联动轴的特殊机床的出现,之所以有这类机床,主要是为了满足避障或特殊的优化目标(例如实现电机功率最小)等要求,为了满足这些特殊要求,以牺牲动、静刚度为代价增加联动轴的例子比比皆是,下图中就是一个现实的7转轴联动机械臂:[3]
而且,可以想象,我们甚至可以为该机械臂再配上三个直线联动轴,然后把这个机床称为“十轴联动机床”。
--
关于“反驳将此问题归因于‘主轴自转占用了一个自由度’”的补充
有人说,“五轴机床是之所以是五轴联动,是因为刀具自转占了一个自由度”。首先,要明确一点,机床主轴不是联动轴,将其和联动轴混为一谈是不合适的;其次,该观点根本就没有从正面回答本问题。试想:对于五轴连续测头(如下图),测头自身根本就无法自转,但为什么其能实现任意角度的测量呢?
Renishaw 5轴测量系统
仅就本问题而言,关键问题在于解释“五轴机床为什么只需要五轴联动轴就可以实现任意角度的加工?”,核心在于“只需要两个旋转自由度即可表示任意方向刀轴矢量”;如果只是用排除自转轴这个旋转自由度的影响来解释原因的话,显然没有说到该问题的本质。
参考^Sakamoto, S., & Inasaki, I. (1993). Analysis of generating motion for five-axis machining centers. Transactions of the Japan Society of Mechanical Engineers Series C, 59(561), 1553–1559.https://doi.org/10.1299/kikaic.59.1553^Altintas, Y. (2012). Manufacturing Automation: Metal Cutting Mechanics, Machine Tool Vibrations, and CNC Design. Applied Mechanics Reviews (Vol. 54).https://doi.org/10.1115/1.1399383^abModern Robotics: Mechanics, Planning, and Controlhttp://hades.mech.northwestern.edu/index.php/Modern_Robotics^Moriwaki, T. (2008). Multi-functional machine tool. CIRP Annals, 57(2), 736–749.https://doi.org/10.1016/J.CIRP.2008.09.004