把特征的概念延伸到数控加工领域,能够有效地解决数控编程/计算机数控(NCP/CNC)的信息集成问题。在NCP中可以采用特征分解技术,用特征的结构和表示形式来定义数控加工几何形状和控制信息。我们把这种数控特征结构称为数控特征单元(numerical control feature unit,NCFU)。通过NCFU,可以把对一个复杂零件的数控加工活动,分解成对若干个NCFU加工过程的总和,并以NCFU为信息单位传递给CNC系统,实现NCP/CNC系统在更高层次上的信息集成。另一方面,从自动控制理论的角度来看,整个数控加工是按一种开环控制模式工作。其特点是,集中一次性完成刀具轨迹计算并输入到CNC系统中,CNC系统只能根据事先编制好的指令进行插补计算。在插补控制过程中,只允许对进给速度和主轴转速进行有限的调整,因此很难保证CNC机床工作在最佳或合理的状态下。改善这种开环控制模式的一个有效的方法是,设法使数控加工的基本过程不再按顺序方式独立完成,而是使其相互交叉重叠,使得刀具轨迹计算及控制能够实时完成,以便通过自动反馈或人工调整,动态修正刀具轨迹[1]。
1 NCFU的信息和功能需求
根据以上分析,可以归纳出定义NCFU所必须满足的基本条件:
可继承性 从概念上讲,NCFU是特征概念在数控加工领域的延伸;从O-O方法学上看,NCFU应该是设计特征和制造特征的派生子类。因此,NCFU应能继承其父类特征中关于产品设计和制造的高层信息。
可集成性 作为NCP系统和CNC系统之间信息交换的载体,NCFU不仅包含了数控加工所需的几何形状信息,还应该包含相应的加工控制信息。从O-O的实现方法上,要求NCFU封装对NCFU进行控制的处理方法。
可视性 NCFU的可视性可通过计算机对其进行观察、操作和仿真,可方便地辅助捕捉加工对象更高层次的设计信息和工艺信息,以便在并行工程环境下信息共享。
可控性 NCFU作为刀具轨迹计算过程的一个中间控制节点,应具备能够控制刀具轨迹输出的控制参变量,而这些参变量应具有很好的工艺性和直观性。在实际应用中,我们选择基本切削参数作为控制参变量,如切削行距、切削深度和切削余量等。
典型性 NCFU与刀具轨迹的计算过程有关,而刀具轨迹的计算方法与加工方法有关。因此,由于数控加工方法的多样性,必然带来NCFU的多样性。这就要求在归纳和定义NCFU时要考虑其代表性,应使其覆盖更多的数控加工活动。
实时性 实时性是指通过NCFU来计算最终刀具轨迹时所用的算法应该简单有效。计算中不应再有诸如干涉检查、求曲面法矢和交线等费时的复杂处理和判断,以保证算法能够在实时环境下运行。
可操作性 可操作性是指NCFU应易于用计算机表达、存储、传递和操作。
可实现性 NCFU是对数控加工过程进行分解计算的直接结果,因此在定义NCFU的同时,应该考虑生成NCFU的分解算法的可行性。至少要保证能够找到一种有效的分解算法产生NCFU。
2 NCFU的定义
2.1 NCFU的基本组成
NCFU的定义采用面向对象的EXPRESS语言描述。用EXPRESS-G描述的NCFU基本组成结构见图1。
图1 NCFR的组成结构 首先定义一个加工对象[2]作为NCFU的超类,其属性包括所有与刀具轨迹计算有关的产品数据及控制参数,如加工方法、切削对象、约束条件、进退方式、刀具参数、切削参数等。在加工对象类中封装生成NCFU子类对象实例的操作函数。
把NCFU定义成一个超类,其属性包括两个方面:其一是描述NCFU的几何特征类;其二是对NCFU进行操作的控制参数类。几何特征类和控制参数类的具体定义与所采用的加工方法有关。NCFU也可派生出一个子类刀具轨迹。刀具轨迹类的对象实例就是对NCFU进行操作的结果。按照O-O的方法,生成刀具轨迹子类对象实例的操作函数也被封装到NCFU类中。
刀具轨迹类的属性包括最终计算出的刀具轨迹,通常它由一系列直线段或圆弧段组成。刀具轨迹类又可派生出插补子类。对插补子类对象的操作实际上就是CNC系统中的插补计算。
2.2 几种典型NCFU的定义
下面以数控铣削加工为例,定义适合于2.5轴加工和3D曲面加工的NCFU。
2.2.1 环切特征单元和行切特征单元[3]
用EXPRESS-G同时定义了环切特征单元和行切特征单元两种2.5轴铣削加工中使用的NCFU,见图2。这两种NCFU具有相同的几何特征属性,即平面封闭曲线。封闭曲线可以作为NCFU操作和显示的初始边界曲线。该封闭曲线所包围的平面几何区域限定了对NCFU的切削范围,而且刀具在这个限定的范围进行切削移动时,不需要作干涉检查。
图2 环切特征单元和行切特征单元 实际上在对被加工零件的某一个部位进行加工时,待切削加工部分可能是一个复杂的实体。刀具在对这个部分进行切削加工时可能会发生干涉和碰撞。根据NCFU的概念,把对整个复杂零件的数控加工活动,分解成对若干个NCFU加工过程的总和,因此要求分解计算能够根据指定的刀具参数和加工方法,对待加工部位进行计算和判断,划分一些小的区域,使刀具在对这些小区域进行切削加工时,不会产生干涉和碰撞问题。这些小的区域就是NCFU。环切特征单元的控制参数属性包括切削行距、切削余量、切削深度和切削范围等,见图3。实际用环切特征单元计算最终的刀具轨迹时,只需根据当时特征单元的切削参数逐次地计算初始边界曲线的等距线,直到达到切削参数限定的范围。改变切削参数即可改变输出的刀具轨迹。
图3 行切特征单元的控制参数属性包括切削行距、切削余量、切削深度和切削方向等,图3。实际用行切特征单元计算最终的刀具轨迹时,先根据当时特征单元的切削行距和切削方向,得到一簇平行的直线,然后再计算这些直线簇与初始边界曲线的交点,即可得到刀具轨迹。
2.2.2 网格曲面特征单元
用EXPRESS-G定义了适合3D曲面铣削加工的网格曲面特征单元,见图4。尽管曲面加工刀具轨迹计算涉及多方面因素,如曲面类型、刀具类型、加工方法、干涉与碰撞等,但由于任何一张曲面都可以在一定的精度条件下用网格显式地表达,所以用网格来定义曲面特征单元的几何特征应该具有广泛的代表性。
图4 网格曲面特征单元 网格曲面特征单元的几何特征由网格母线组成,见图5。网格母线由一系列控制节点连接而成,而控制节点包含了位置、法矢及方向等属性。每一个控制节点记录了被加工曲面上的一个刀具切削接触点的有关信息。控制节点的法矢属性记录了该切削接触点的曲面法矢值;位置属性记录了与该切削接触点对应的刀具中心点坐标值;方向属性记录了网格母线的横向关联指针。网格母线由一系列控制节点串接而成,其连接方向规定了刀具切削的方向。从理论上讲,通过这些网格母线的位置属性(刀具中心点),可以定义一张虚拟网格曲面,这张虚拟网格曲面可以看成是在指定的切削刀具参数下,刀具沿被加工曲面移动时刀具中心点的展开曲面。因此,虚拟网格曲面上的任何一点都可以作为刀具中心轨迹的控制点,并且刀具在该点的切削不会产生任何干涉和碰撞问题。因此这张虚拟的网格曲面就可以作为动态生成刀具轨迹的基础曲面。之所以称之为虚拟网格曲面,是因为实际上并不需要真正产生这张网格曲面,仅仅是希望利用其网格母线作为基础,根据一定的插值算法,实时生成刀具轨迹。
图5 特征单元网格曲面 网格曲面特征单元的控制参数包括行距权值和切削余量。其中行距权值被用来控制输出刀具轨迹的行距。行距权值是与曲面加工精度有关的控制变量,对于曲面加工,切削行距可能不是常值,当生成网格曲面特征单元时,其网格母线之间的行距是根据用户指定的曲面加工精度要求来划分的。为了便于实际刀具轨迹的插值计算,我们用行距权值来控制刀具轨迹插值的密度。我们把生成网格曲面时的行距权值设为1,因此,当利用网格曲面特征单元生成刀具轨迹时,如果当时的行距权值取1,且切削余量不变,则实际输出的刀具轨迹就是所有网格母线本身。如果增大或减小行距权值,则需要在虚拟网格曲面的网格母线之间进行插值计算。插值的方法是,在各相关联的控制节点之间,根据当时的行距权值的取值,按一定的算法计算相应的插值点,然后连接各插值点构成新的刀具轨迹。例如,如果行距权值取0.5,则实际输出的刀具轨迹的密度正好是原来的1倍。如果行距权值取1.3,则大约每10条网格母线之间要输出13条刀具轨迹。所以通过改变行距权值,可以简便有效地改变实际输出的刀具轨迹,并可以控制实际输出刀具轨迹的行距,使其比原来网格母线之间的行距更疏或更密,从而控制了曲面加工的精度。
切削余量也是一个在CNC中可动态修正的值,通过对切削余量值的调整可以动态修正刀具轨迹的实际切削余量。在CNC中实际计算刀具轨迹时始终有2个切削余量值:一个是NCP用户给定的切削余量值,它是不变的,另一个是CNC用户实时修正的切削余量值。对切削余量的修改应该以不产生干涉为原则。刀具轨迹插值计算中刀具参数是不可调整的。
如果由网格曲面特征单元生成刀具轨迹时改变切削余量值,则可根据控制点的曲面法矢值,在各插值点处重新计算刀具中心点偏置,生成新的刀具轨迹。
3 NCFU的算法实现
在特征设计中,特征以参数化的形式事先定义并存放在特征库中,供设计人员在设计中选择。而基于NCFU的特征加工则不同,NCFU是在对零件数控加工活动的分解过程中自动生成的,而且所生成的NCFU类型与所采用的数控加工方法有关。
3.1 平面区域加工环切特征单元分解算法
平面区域定义为由一个且仅有一个外环和零个或多个内环围成的连通区域。对平面区域的铣削加工有环切加工和行切加工两种方法。这里仅介绍环切加工算法。根据所选择的刀具参数和平面区域的形状,对一个平面区域加工过程可分解成一个或多个环切特征单元。具体算法如下:
(1)对平面区域的外边界以刀具半径值向内产生等距线,记为B;对各岛屿边界以刀具半径值向外产生等距线,记为Ii(i=1,2,3,…,m);如果考虑加工时的装夹情况,且装夹具对加工区域有干涉,则对各装夹具投影边界以刀具半径值向外产生等距线,记为Ck(k=1,2,3,…,n)。
(2)如果n>0,则B=B-Ck,(“-”为差运算),其中k=1,2,3,…,n。
(3)如果m>1,则对所有的Ii进行并运算,结果记为IC,IC是具有若干个封闭岛屿环的集合。
(4)如果集合IC中的元素个数大于1,则将集合IC中的各封闭岛屿环进行链接,形成一个新的封闭岛屿环IO;如果IO存在,则将B与IO进行链接,并将结果赋给B。
(5)定义两个NCFU集合,记为TEMP-S={NCFU0={B,thickness=0}},RESU-S=φ,其中TEMP-S为临时NCFU集合,RESU-S为结果NCFU集合。
(6)如果TEMP-S不为NULL,则从TEMP-S中得到当前的NCFU,thickness=thickness+step(step为切削行距),以thickness为等距值作初始边界曲线的等距线,记为offset_profile;如果TEMP-S为NULL转步骤(8)。
(7)如果offset_profile为NULL或包含多个环,则将当前NCFU加入到集合RESU-S中,从offsetprofile中分离出所有环,一个环定义一个NCFU,并以该环为初始边界曲线,设置切削余量为零;将所有新产生的NCFU加入到TEMP-S;设置TEMP-S中下一个NCFU为当前NCFU;转步骤(6)。
(8)结束并返回结果。
3.2 网格曲面特征单元生成算法
网格曲面特征单元生成算法的目的是根据被加工曲面、刀具、加工方法及精度等参数计算网格曲面特征单元的网格母线,计算过程由以下几个计算模块组成:
(1)接触迹曲线计算模块 接触迹曲线指刀具走刀过程中由刀触点(如刀具与被加工曲面的理论接触点)构成的曲线,接触迹曲线的生成由走刀行距和导动规则确定,而导动规则由曲面加工方法确定。接触迹曲线与网格母线之间是一一对应的关系,接触迹曲线的计算与被加工曲面、干涉、刀具、加工方法及精度有关。算法可参照曲面加工的有关算法[4]。接触迹曲线计算的结果是一个接触迹曲线集合A-CURVE={curvei,i=1,2,3,…,n}。
(2)曲线离散模块 曲线离散是将接触迹曲线集合A中的每一条连续的曲线curvei按照一定的精度要求进行离散。离散的结果将得到一个刀触点集合AP-S=={APij,i=1,2,3,…,n,j=1,2,3,…,m}。
(3)刀具偏置模块 刀具偏置指根据刀具形状参数从刀触点APij开始计算刀具中心位置点TCPi。计算的结果得到刀位点的集合TCP-S=={TCPij,i=1,2,3,…,n,j=1,2,3,…,m}。
(4)曲面法矢计算模块 计算每一个刀触点APij处的曲面法矢Vij。
(5)干涉检查模块 检查刀具在每一个刀具位点TCPij处的曲面自干涉和外干涉情况,并把存在干涉的刀具位点TCPij从刀位点集合TCP-S中删除,得到一个去除干涉以后的刀位点的集合TCP-S-C={TCPij,i=1,2,3,…,n′,j=1,2,3,…,m′},其中m′≤m,n′≤n。
(6)生成网格母线模块 按照切削方向重新组织刀位点的集合TCP-S-C,得到网格曲面特征单元的网格母线集合M={P-CURVEi,i=1,2,3,…,nn};其中每一个P-CURVEi又是一个刀位点TCPj的集合P-CURVEi={TCPij,j=1,2,3,…,mm}。
(7)控制节点关联模块 P-CURVEi中的每一个刀位点TCPij就是网格曲面特征单元中网格母线上的控制节点,将每一条网格母线上的控制节点与相邻网格母线上的控制节点建立关联,最终生成网格曲面特征单元。
4 基于NCFU的NCP/CNC集成系统体系结构
基于NCFU的NCP/CNC集成系统体系结构见图6。其中图6a说明了基于NCFU数控加工的活动过程。图6a中的实线方框表示基于NCFU的数控加工产品数据模型的4个不同层次的对象类型。虚线方框表示3种基本的数据输入形式。椭圆框表示基于NCFU数控加工的几种基本操作和控制方法。其中分解计算和密化计算是分布式刀具轨迹计算的2个计算步骤。曲线仿真是传统数控加工中基于刀具轨迹(直线或圆弧)的加工仿真。实体仿真是基于NCFU(实体)的加工仿真。
图6a中有2个控制参数反馈输入端口。其中刀具轨迹框端口处的进给速度F和主轴转速S是传统CNC系统在插补计算中可动态调整的控制参数。而NCFU框端口处的切削参数(切削行距、切削深度、切削余量)是基于NCFU的控制参数。当根据NCFU计算刀具轨迹的同时,可以实时动态改变切削参数值,从而改变刀具轨迹。图6b和图6c分别说明了2种基于NCFU的控制模式。这两种模式的主要区别在于密化计算是离线执行还是在线实时执行。图6b中把密化计算放在NCP中完成,这种控制模式的优点是,在不影响传统CNC系统结构的前提下,通过基于NCFU的数控编程和实体仿真,支持在CIMS和并行工程环境下的信息共享与集成。图6c中把密化计算放在CNC中完成,加强了CNC系统的可控性和可观性。同时由于对NCFU的控制和计算简单,能够满足CNC系统的实时性要求。
图6 基于NCFU的NCP/CNC集成系统体系结构 5 结束语
图6b中所示的基于NCFU的控制模式已经在863/CIMS项目中的“金银花/数控编程系统”中实现。在该系统中实现了2.5D和3D曲面铣削加工的NCFU自动分解计算、基于NCFU的刀具轨迹密化计算和基于NCFU的实体仿真。
对于图6c所示的基于NCFU的控制模式,我们在“金银花/数控编程系统”的基础上,开发了一个基于NCFU、可与NCP系统集成的新型CNC原型实验系统。该系统在PC 586 Window NT 环境下,采用多线程和多媒体定时中断机制,实现了具有多级缓冲的实时刀具轨迹计算及插补计算。实验证明在8ms插补中断设置情况下,能够实现对2.5轴及曲面加工NCFU的切削参数(行距和余量)及进给速度的实时调整。
基金项目:国家863高技术研究发展计划资助项目(863-511-9503-001)
作者简介: 张力,男,1960年生。北京航空航天大学(北京市 100083)制造系统研究所副教授、博士。长期从事CAD/CAM 和CNC系统的研究和开发工作。发表论文10余篇。邓家,男,1935年生。北京航空航天大学制造系统研究所教授、博士研究生导师。
参考文献:
[1] 张力,邓家.刀具轨迹分 布式计算及控制模式研究.计算机辅助工程,1999(3):50~56
[2] 张力,邓家.数控产品模型的研究 与面向集成的NCP系统实现.计算机集成制造系统,1998(4):23~27
[3] 张力,张云海,邓家.环切区域加 工分步式刀具轨迹生成算法研究.计算机辅助设计与图形学学报,1999,11(6):500~503
[4] 唐荣锡.CAD/CAM技术.北京:北京航空航天大学出版社,1994:182~188(end)
|