数控程序的分类与趋势

2013-10-11 14:09西安东风仪表厂陕西710065刘一博刘芳荣
金属加工(冷加工) 2013年7期
关键词:坐标值样条点位

西安东风仪表厂 (陕西 710065) 刘一博 刘芳荣

数控程序,按照表述对象(指程序的内容及含义)通常可分为两大类:一是面向加工对象,程序描述的是待加工零件的几何要素、单元的信息数据,控制系统依据这些数据和参数计算刀路,具体的计算过程均在系统内部完成,编程者无法看到相关细节,MAZATROL就是这种程序的典型代表,西门子的shopmill程序也属于此类。第二种是面向运动过程,即程序语句由描述机床顺序动作的指令(如 G1、G2、G3、M3…每种指令对应唯一的驱动方式)组成,常见的有FANUC、HEIDENHAIN及SIEMENS等系统。

1.面向加工对象的NC程序

MAZATROL操作系统程序是一种高度智能、强导向的人机对话式编程,根据表头内容及每行提示可以快速地直接填写,手动完成程序编写,过程中人工计算量很小。通过表格填写即可描述出一份尺寸完整、逻辑清晰的平面图,无需计算机辅助,且程序简炼、高效、可读性好,与传统的控制系统完全不同,如附图所示。

MAZATROL操作系统程序图

图1填写表格方式的程序,导向性很强,能清晰指导编程者下一步做什么、如何做,做错了会提示错在哪里。该系统自带强大的CAD功能,只要逻辑条件充分,系统可以自动计算出某个点位数据且用颜色加以区分。

2.面向运动过程的NC程序

FANUC、SIEMENS、华中数控等系统的程序在格式、含义、功能方面都很接近,都是在标准的通用指令(俗称G代码)的基础上扩展、变种发展而来,如常用的直线、圆弧等指令,大同小异,均以直角坐标、极坐标或者增量坐标值表示终点。

以下为FANUC程序,表示一句直线指令,终点的直角坐标值(X/Y/Z),再加上A/B轴的角度值。

至于HEIDENHAIN操作系统,同样表示的也是终点的坐标,这个坐标可以是直角坐标系、极坐标系、增量直角坐标系及增量极坐标系。以下为为HEIDENHAIN程序,较FANUC程序而言,只是G1被L替代,其他指令大多也来源于英文缩写或者单词的首字母。标准G代码则是G加上数字构成,如G1、G2、G3等,及辅助其他代码构成辅助代码,如M加上数字,构成M代码(如M0、M3等)。

3.面向过程程序类型数据细分

(1)点位程序与样条曲线程序 按照数据类型(插补)可将程序分为点位(直线圆弧)程序和样条曲线(样条插补)程序两种。两者在原理、特点及适用范围等方面均有不同。点位程序如下:

上述语句是最常见的三轴点位程序格式,其含义为“驱动刀具中心点产生相对运动,以到达程序指定的坐标点(不考虑刀补因素)”,表示刀具中心点从起点坐标点以直线或圆弧运动且以某个运动方向(圆弧运动时有顺圆弧或逆圆弧)运动到终点坐标点。

(2)点位程序的种类 上面例子采用的是直角坐标系,也可用增量直角坐标系表示(即,当前点相对于上一个点坐标值的增量,有正负之分)。HEIDENHAIN系统同时还兼容极坐标系、增量极坐标系,对于表达呈圆周分布的几何单元的位置极为便捷,且更加符合设计图样 [一般图样对圆系位置多采用(r,θ)表示],很方便检查正误,系统内部会自动计算转换数据。

直角坐标系与极坐标系及其衍生的增量坐标系构成的四种不同类型的数据,可以在同一个程序中混和应用。但由于直角坐标系与极坐标系原理不尽相同,在同一行指令中不可同时出现,只能是直角坐标+增量直角坐标,或者极坐标+增量极坐标。

(3)点位程序的优劣 上面提到的四种坐标值程序,都属点位坐标程序,多适合于直线、圆弧的表示与加工,在实际应用过程中有一定的局限性。

当前加工对象日趋复杂,含有规则曲面、异形曲面类的零部件已占到加工总量的60%左右(模具加工中曲面比例更高)。对于样条曲线、不规则曲面的表述,点位程序是有缺陷的。因其表述原理是,将样条曲线按照要求的精度,以某一算法截分成有限个直线段,点位程序描述的便是这些线段的端点的坐标值。同理,对于不规则曲面,首先也是按照某种算法将其分解为有限的曲线,之后再将曲线分解成直线。因此生成的程序往往体积都相当庞大,硬件(设备)每秒钟要处理多条指令,但其计算能力是有限的(虽然现在设备的处理器功能很强大,但具体到某台设备,该属性是固有的),当单位时间待处理的指令条数接近或达到其(机床计算机处理器)极限值时,操作系统的反应速度会明显迟滞,具体表现就是机床运动速度降低,运动不流畅(通常所谓的“卡”);设备在执行某一条指令时,通常存在加减速度问题,起点加速达到要求的进给(速度),当接近终点瞬间时则会减速,以便对下一条指令作出准备,并准备执行(可能同时还会改变方向)。以上两点原因往往导致设备在运行曲面程序时,总体速度下降,走刀时间加长。更重要的则是刀路(运动)不流畅,加工表面质量明显下降。对于高精度的光学器件的加工很难满足要求,同时效率较低,因此派生出另外的一种插补方式。

当前,新生代机床的操作系统拥有强大的前窥(预读)功能,能提前规划路径,顺畅刀路并减少迟滞,在一定程度上会弥补上述缺陷,但尚不能完全克服。

(4)样条曲线程序 针对点位程序的上述缺陷,操作系统研制商及机床厂家开发出各种样条(插补)曲线程序,该程序描述样条曲线的特征包括拐点等必要信息数据。机床在实际走刀过程中,系统内部会自动根据信息数据插补中间值,并预读准备后面的刀路,中间无需停顿且速度均衡,形成的刀路光滑流畅,而且程序短小精悍,表面质量大幅提高。如下是HEIDENHAIN系统的B样条曲线的三轴数控程序,这种程序完全不同于传统点位程序,每行的数据信息更加丰富,紧跟SPL后的三个数据是坐标值,K(n)则表示某轴的阶数。这里不深究其插补原理。

这些高级功能需要设备操作系统强有力的支持,目前在高版本的FANUC、HEIDENHAIN、SIEMENS等系统中已有广泛应用。

国内外专家学者研究开发出了各种样条曲线的插补,如A(AKIMA)样条曲线插补,C(CUBIC)样条曲线插补,贝奇尔(BEZIER)样条曲线插补,PH(PYTHAGOREAN-HODOGRAPH)曲线插补,B 样条曲线 NURBS(Non-Uniform.Rational B-Spline)曲线插补。由于NURBS曲线具有良好的直观性,且在局部性及收敛、逼近性方面占有优势,已经成为当前最为通用的列表曲线拟合方法。利用NURBS在CAD/CAM系统中可以使所有的曲线具有统一的数学表达式,国际标准化组织(ISO)在其正式颁布的工业产品几何定义STEP标准中,亦将NURBS作为产品交换的国际标准。

4.五轴点位程序与矢量程序

若按照控制轴数量来分类,程序一般分为三轴程序与五轴程序(四轴程序严格讲是五轴程序的简化版,可归类于五轴程序范畴)。而五轴程序根据数据结构又可分为点位五轴程序与矢量程序两种。

(1)五轴点位程序 所谓五轴点位程序,就是在三轴点位程序的基础上,增加两个旋转轴的坐标值,其量值单位是(角)度,有正负,以表示旋转方向。如:

由于五轴数控设备结构的多样性,以及设备各旋转轴轴线空间位置关系的复杂性,五轴点位程序通用性很差(三轴设备则因其三轴正交的结构特点,程序间彼此的兼容性良好,仅通过修改程序开头、结尾及少量辅助指令即可)。依据某台设备编写的NC程序几乎不可能直接在其他设备上运行。换句话说就是,同样一种零件,若更换机床加工,需要运用不同的后置处理文件重新生成符合指定机床的程序,这些后置需要专业厂家定制或购买。

(2)五轴矢量程序(不含刀补) 基于五轴点位程序的缺陷,又衍生(开发)出了一种通用的五轴程序,适合不同结构的机床,就是五轴矢量程序。该程序完全不受机床的结构限制,每行有六个数据,由(X、Y、Z)三个坐标值与该点刀轴矢量在三个轴上的投影矢量值构成,格式如下所示,“LN”后的X、Y、Z数值表示坐标值,TX、TY、TZ表示坐标值的矢量方向,这个方向就是刀轴相对工件的方向。也可以形象理解成一条空间里的射线,刀具的中心就是射线端点,刀具的轴线与射线重合;或者可更简单理解为,这条射线就是刀具本身(将刀具简化为一条射线)。程序如下:

设备执行此类程序时,操作系统会自动将其分解、转换为适用于本设备的五轴点位程序。也就是说,此程序相当于一个中间(过渡)点位文件,需要被机床系统翻译/转换成本机床适用的数据类型和适用的两个旋转轴(或A/C、或A/B、或B/C)的旋转角度。

每台机床都对其旋转轴的运动/加工范围有具体规定,一般A/B轴运动范围都会大于90°。如当A轴的运动范围是(-97°,+12°)时,这样在某个区域内(±12°)就会有两个解,在特殊情况下(当矢量为(0,0,1)时)有无穷多解。通常,遇到特殊情况会选择旋转轴不动(路径最短原则);当有双解时,就需要机床操作系统拥有优先选择算法,一般由系统或者机床厂家设定。

矢量程序也存在一定的局限性。因为它需要将矢量转换为旋转轴的度数值,增加了机床处理器的负担,需要功能强劲的设备处理器作为支持。曾经做过试验对比,将一个刀路分别生成五轴点位程序和五轴矢量程序,同时设置相同的程序参数,在同一台设备(2005年出厂的HERMLEC1200U)上运行。结果显示,点位程序运行非常流畅,而矢量程序有微微停顿及迟缓现象,进给速度变慢。对于新生代的机床,处理器足够强大,这种矢量程序应用没有任何问题。

(3)五轴插补矢量程序(3D插补矢量程序)鉴于五轴程序运动的复杂性,一般很少使用刀补(三轴程序大多有刀补),对于刀具磨损无法通过刀补来(精细补偿)补偿。那么究竟有没有带刀补的五轴矢量程序呢?答案是肯定的。3D插补就是矢量程序的扩展,每行有九个数据,如下所示,N后面三个数据是刀具接触点的矢量。这种程序更复杂,但具有更好的兼容性与灵活性,且能提高加工精度,减少刀具复磨次数,降低刀具成本。

当然,这种3D插补的矢量程序,具有矢量程序的所有优缺点,而且对于处理器的功能要求更加苛刻,需要运算更多的数据。

5.未来多轴(五轴以上)程序趋势(预测)

综上所述,五轴点位程序不仅体积庞大,且不适用于曲面加工;样条曲线程序擅长曲面加工,却仅有三轴程序;五轴矢量程序,从严格意义上来讲,仍然是点位程序。

能否集合各类数据程序的优点呢?能否将五轴程序与样条曲线程序相结合,产生五轴的样条曲线程序?又或者将样条曲线程序和五轴矢量程序相融合?甚至考虑将样条曲线与带刀补的矢量程序相嫁接……这些问题的解决,将会对五轴以上数控设备的进一步推广与应用产生革命性的影响。

未来五轴点位程序+样条曲线程序,依据三轴样条曲线的原理,需要增加两个旋转轴的控制点及权重值等必要数据,每行最少新增6个数据,即每行需要不少于15个数据。

未来样条曲线+五轴矢量程序,估计需要增加9个数据,达到每行至少18个数据。

未来程序需要更多的信息数据做支撑,依据现有的程序格式做出的推测,试着分析一下其构成,刀尖点的数据3个,每个轴的权重点、阶数9个数据,3个矢量及3个矢量的权重阶数,再加上接触点的矢量等等。若是样条曲线与带刀补的五轴矢量程序相结合,那信息量就更大了。

面向对象的加工,描述的是被加工单元的要素。而五轴矢量程序虽然描述的是加工过程,但却同时含有面向加工对象的一些特征,甚至可以理解成工件表面的要素。五轴空间样条曲线程序,也更像面向对象的程序。样条曲线+五轴矢量程序,则更进一步接近面向对象,每行程序含有更多的零件信息,过程刀路则由机床依据算法插补。

6.结语

对于高级的五轴程序,面向过程跟面向对象两者似乎走向了融合,不同于面向对象,又不同于面向过程。对于如此复杂的程序,采用传统的手工编程是无法实现的,现有的CAM软件则需要加大数据量,或开发全新的CAM软件,同时辅以强大的后处理系统,方可实现生成、模拟及分析功能,并将面向加工对象与面向运动过程的优势完美结合。

猜你喜欢
坐标值样条点位
一元五次B样条拟插值研究
机器人快速示教方法及示教点位姿变换的研究
机器人点位控制速度规划算法选择策略
基于二分法迭代的凸模数控铣削加工编程*
三次参数样条在机床高速高精加工中的应用
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
基于样条函数的高精度电子秤设计
垂直面内建立基线的特殊点位高程测量法
基于宏程序的数控车削加工应用
2013年全国将建成440余个国家空气监测点位