如何建立虚拟数控机床加工仿真系统
虚拟数控加工过程物理仿真模型的建立
摘要:该文首先阐述了虚拟数控加工过程物理仿真的研究内容,其次重点讨论了所建立的切削力仿真,刀具磨损仿真与变形仿真,加工误差仿真,振动仿真和切屑形成过程仿真的数学模型。最后,提出了物理仿真今后研究的方向。
1 引言
虚拟数控加工(VNC)过程物理仿真是虚拟制造(VM)单元和虚拟制造系统基础核心技术,越来越受到各国学者的重视。虚拟数控加工过程的仿真包括数控(NC)代码仿真,几何仿真和物理仿真。数控代码仿真是虚拟数控加工过程的一个重要环节,通过它可以检查数控程序的正确性及实现碰撞、干涉检验,大大节省数控程序的调试时间,减少昂贵的试切用度,进步数控机床的安全性等。几何仿真是数控加工过程仿真的条件,通过刀具扫略体和工件模型连续的布尔运算可得切屑的往除加工过程仿真,它也提供了物理仿真评估切削力和加工误差所需的主要参数。物理仿真主要是力学仿真,它是虚拟数控加工过程仿真的核心部分,其内涵就是综合考虑实际切削中的各种因素,建立与实际切削拟合程度高的数学模型,从真正意义上实现虚拟加工与实际加工的“无缝连接”,满足虚拟数控加工的沉醉感和交互性。只有对物理仿真的机理研究透彻,才能真正意义上的满足虚拟制造的目的即实际加工过程在计算机上的真实映射。
2 物理仿真的研究内容体系
物理仿真的主要内容包括切削力仿真、加工误差仿真、切屑的天生过程仿真、刀具的偏移、变形和磨损仿真、及数控切削机床的振动与温度仿真等。其仿真体系结构。
3 虚拟数控加工物理仿真的模型
3.1 切削力仿真模型
在切削力的仿真中,关于切削力的模型,有人以为,刀具受的切削力可以看做是单位时间材料往除率的函数。首先在刀具上建立笛卡儿坐标系,刀刃上受到三个正交力。
Ft=KtSt Fr=KrSr Fa=KaSa (1)
式中:St、Sr、St——切屑在三个坐标平面上的投影面积。
Kt、Kr、Ka——从金属切削中得到的材料和切削速度参数。
上述切削力仿真的方法经过S.Jayaram的研究对于三轴以上的数控机床切削力误差较大,因此此仿真方法只适应于三轴和三轴以下的数控机床的切削力仿真。
Hirohisa基于刀具沿轴向的切削力均匀分布假设的基础上提出了一种将刀具分成很多部分的切削力仿真模型。本文在此基础上利用有限元法(FEM)建立切削力模型,将刀具切削刃划分成若干微元对其中一个微元做受力分析。那么由第j个刀具微元的切向力dFtj(θ, z),径向力dFrj(θ, z)和轴向力dFaj(θ, z)可以得出基本的切削力。
dFtj(θ, z)=[Kte+Ktchj(θ, z)]dz=[Kte+KtcStsinθj]dz
dFrj(θ, z)=[Kre+Krchj(θ, z)]dz=[Kre+KrcStsinθj]dz
dFaj(θ, z)=[Kae+Kachj(θ, z)]dz=[Kae+KacStsinθj]dz (2)
上式中Kte、Kre、Kae,Ktc、Krc、Kac代表切削系数,可由切削测试中的各种进给速度得出。hj(θ, z)=Stsinθj是未切削工件的厚度。dz是刀具的轴向长度微分。St每一刀具微元的进给量。上面(2 )式通过求解微分方程可得出刀具在三个方向的瞬时切削力。刀具在三个方向的受力总和通过所有微元在x、y、z方向瞬时切削力的总和求出。
3.2 加工误差的模型
工件加工误差受到很多因素的影响,这给加工误差仿真带来了很多困难,由于要精确仿真出加工误差,不但要考虑每一单项因素对加工误差的影响而且还得综合考虑各因素的权重。C.Anderssson对定位误差和刀具磨损对工件精度的仿真模型分别作了较为具体的研究,Huaizhong Li对机床热变形和振动对工件加工误差的模型作了深人的研究等。影响加工误差的因素还包括机床运动精度误差、刀具尺寸误差以及主轴偏移、导轨变形、夹紧力、刀具、零件热变形和弹性变形误差及加工方法引起的误差等。基于上述研究对这些单项误差按模糊理论进行模糊综合评判得出影响工件加工精度的总误差模型。
(3)
式中,x(t)、y(t)、z(t)为时刻t 是工件表面上天生点的位置,Wi表示第i个误差叠加时的权重,Ei[x(t), y(t), z(t)]表示第i个误差在时刻t 的误差值。上式又可表达为影响刀具位置和姿态的自变量为时间t的误差函数:
(4)
这样可以在虚拟加工中融人误差并方便的计算出时间t时工件上某点的加工误差。然后将产品的理论模型与毛坯往除材料后得到的加工模型求差可得加工误差模型。在VNC 机床加工过程中,加工误差模型按误差大小用不同的颜色表示加工区域,通过对其进行检查,可对加工误差的大小及其可能产生的原因进行分析评判,并为产品的可制造性评估提供依据。
3.3 切屑天生过程的模型
切屑天生过程的实时仿真是虚拟数控加工与实际加工“无缝连接”和同步显示的主要环节切屑的天生、卷取、折断以及天生的外形受到很多因素的影响,比如与刀具的几何外形、切削液、工件和刀具的材料工件和刀具间的摩擦力以及应力厂司和应变阔、切屑的天生机理和热变形等因素有关,这一研究结果已被很多学者采用。C.Andersson的研究发现当切屑的厚度非常小时(小于2μm)切屑的厚度与切削力是线性关系,关系式为:
Cr=Fr/[(nz+1)·h1n·b1i (5)
由于已经证实了FH和h1n之间的线性关系,所以用Cr代替关系式中的FH得到:
Cr=Cr1+Cr2/H1n (6)
式中,Cr为主切削力,Cr1, Cr2为切削力的系数常量,H1n切屑厚度。
但这一方面研究仍在继续深进。CIRP工作组在1998年的Keynote Paper中的建议从以下几个方面进一步加强研究。
对切削和切屑形成的机理及毛边和碎片的控制、抑制方法作进一步深人的研究。
加强有限元法(FEM)、混沌理论(Choas Theory)、人工神经网络(ANN))、及遗传算法(GA)在切屑天生机理和仿真中应用的研究。
规范切屑的结构分类和标准建立全球同一的切屑试验参数数据库。
3.4 刀具的磨损和偏移
刀具的磨损模型
刀具的磨损仿真是估算刀具寿命的有效方法,它可以省往繁杂的切削试验既经济又省时,它也是选择刀具与切削条件的有洲衣据。根据硬质渗碳钢在数控铣床上的切削实验,刀具的磨损既有坑状磨损又有平面磨损。实验数据表明每单位进给间隔和单位面积的刀具磨损体积dw/dl与切削温度θ和压应力σ有关,即:
dw/dl=c1σtexp(-c2/θ) (7)
式中c1、c2是切削的特征常数,θ是切削的尽对温度。
刀具的变形模型
在磨削刀具变形模型中,刀具的线性变形和非线性变形都应考虑到。为了便于分析在此使用一般的固体力学模型假设切削力作用在刀尖部分。从丈量刀具的变形可以得出刀具和刀具夹头间的接触面积对刀具的变形起很大作用,刀尖到刀具间隔为z的每一点的线性变形都能按下式计算。
εx(z)=Eh·Fx+Er·My(l-z)
εy(z)=Eh·Fy+Er·Mx(l-z) (8)
上式中Fx和Fy是切向力在x, y向的分力,Er和Eh是平移和旋转的系数常量,可通过实验得到,Mx和My刀尖部位的切削力产生的力矩。
Mx=Fy·l My=Fx·l (9)
由于端磨刀具的非线性变形可以被简化成悬臂梁模型,刀具沿z轴的非线性变形按下式计算。
δx(z)=Fx·(l-z)2·(2l+z)/6EJ
δy(z)=Fy·(l-z)2·(2l+z)/6EJ (10)
那么,刀具在沿z轴任意点的总变形可从下式中得到:
Dx(z)=εx(z)+δx(z) Dy(z)=εy(z)+δy(z) (11)
3.5 加工温度模型
磨削和车削的加工过程是连续变化的,持续型的加工温度模型Huaizhong Li已经给出即
Tstatic=T[1-v lg(ε/ε0)] (12)
式中T 是切削点的温度,v是给出的材料参数常量,ε是应变率,ε0是材料特性不受影响的临界应变率。
铣削是间歇切削过程不能直接将(12)式用于铣削加工的温度仿真。在间歇切削中切削温度的预热传递过程随切削时间T(t)变化,为到达与持续切削相同的平稳状态,Tstatic必须考虑。下面给出预热传递过程的温度模型:
T(t)=Tstaticexp(τ/t)+Tmin (13)
式中:τ是常量,t是一个周期中每一铣齿的切削时间;Tmin和Tp是切削周期中的最小和最高温度。
Tmin=Tpexp(-t2/τ)
Tp=Tstatic·[exp(-τ/t1)/(1-exp(-t2/τ))] (14)
式中t1、t2分别指一个周期中切削和非切削时间,由于刀具的旋转周期是60/nR(S),所以有
t1=(60/nR)·(Øgx-Øst)/2π
t2=(60/nR)·[1-(Øgx-Øst)/2π] (15)
式中Øgx、Øst分别指铣削时铣刀的切进角和离开角。
在铣削中切削区的温度首先使用式(12)计算持续切削温度,然后通过(13)~(15)式修正。
3.6 振动模型
在大多数模型中,仅考虑静态切削力动力可能引起的振动也将影响工件的加工表面精度。对振动的实时仿真可以提供避免或减少振动的依据公道地选择加工条件。在这方面学者已做了大量工作并建立了主要的仿真理论。但存在的题目是很多重要的变量参数难以丈量且丈量精度也难以保证。有两方面数据非常重要:
赖于机床、工件及刀具和随切削力向量的位置和方向变化的系统的动力学参数。
与切削力相关的加工材料、刀具外形和材料、切削状况、刀具磨损类型和磨损量等变化的动力学行为。
一个二自由度铣削振动模型,在此模型中假设振动方向是沿相互垂直的X和Y方向,且进给方向是沿X轴。座标系被固定在NC铣床上,轴与主振幅对齐,铣刀有n个齿且均匀分布。铣刀系统的振动模型由下面微分方程给出:
(16)
式中m、c、k是铣床仿真模型在X、Y方向的质量、阻尼系数和弹簧刚性系数,Fxj和Fyj是第j个铣齿上的铣削力在x、y向的分力,n是铣刀的齿数。
3.7 摩擦力模型
切屑和刀具面的摩擦力影响着切屑的外形、系统的温度等物理仿真中的很多因素摩擦力在刀具切削刃进进工件到离开工件的时间内是变化的,切削摩擦力的大小与系统的温度、工件和切屑的塑性变形等之间有相互影响、非常复杂的关系,这就要求收集临界点的数据,建立切屑参数数据库以便更好的建立摩擦力仿真模型,有效控制摩擦力。方程(17 ) 给出了非线性摩擦力仿真模型。
τt/k=1-exp(μσt/k) (17)
式中τt和&sogma;t是刀具面的摩擦力和正压力,k是切屑的剪切力系数,μ是材料的特征参数常量。
4 小结
物理仿真模型的建立是物理仿真的基础与关键。在很多方面已经做了大量的工作,也取得了一定的进展,但笔者以为,现有的VNC加工过程仿真系统不能给用户精确的结果,很唯实现VM的交互性与沉醉感,模型的研究仍有待进一步完善。因此为了使仿真模型的定量计算与实际加工相同,笔者建议必须从以下四个方面加强物理仿真的研究。
实验方面:建立物理仿真全过程的切削实验参数数据库。
机理方面:仿真机理与实际加工机理及两者之间的进一步藕合关系。
仿真领域:向高速切削、硬质合金切削的物理仿真及微细切削的分子力仿真领域扩展。
仿真方法:仿真手段和方法的多样化,如有限元法(FEM)、人工神经网络(ANN)等。
-----------------------------------------
数控铣床加工过程虚拟仿真系统的设计
建立一个真实的数控铣床加工环境,并在此环境下对加工过程进行仿真。对虚拟制造的体系结构和相关技术进行了深入的研究和分析、着重阐述了虚拟数控机床的建模原理及其相关的控制技术,在建立的虚拟数控机床上实现机床各轴的运动控制、程序显示、NC编译、反馈信息显示等功能,实现了虚拟数控铣床最基本的功能。 本系统的目标是建立一个真实的数控加工环境。在这个环境中,需要建立机床模型和加工过程模型。机床模型就是整个加工过程的物理环境,将真实的机床在计算机中以3D画面的形式出现;加工过程模型是一个动画过程,模拟真实机床、刀具、切削等加工过程的运动。 该系统应满足的要求: 1)具有逼真的加工环境; 2)能够对NC代码等进行检测,即具备机床的NC程序编译功能,能发现NC程序的错误,并生成目标文件; 3)能够显示刀具轨迹及切削过程; 4)能调整、修改机床状态参数,实时监控机床的运动状态; 5)有友好的人机界面,能方便用户操作。 它具备的特点有: 1)环境真实,系统的环境和真实的机床环境尽量相同; 2)功能一致,系统的功能要和机床的功能一样; 3)较强的纠正错误能力,能发现各种错误同时给出报警信息; 4)快速完成仿真过程,仿真加工过程需要的时间不能和真实的加工时间一样,否则让人难以忍受,加工过程时问可以根据用户的要求来进行调节。 1 本系统整体构架 仿真过程为:在控制面板上编辑NC程序或调入NC程序,然后对准备好的加工程序进行检查,轨迹仿真,确认无误,准备加工。加工前对整个系统进行必要的设置,刀具参数设置,工件坐标系设置等。进行加工时,显示机床运动动画及工件切削动画,对机床状态进行监测,显示监测的信息,如果有非法操作、越程等信息,发出相应的警报。 系统分为五个模块:人机界面、几何模块、运动模块、编译模块和监测反馈模块。整个系统的模块划分如图l所示。 人机界面用来实现人机交互,即机床的控制面板;几何模块用来实现系统的物理环境,刀具轨迹及工件模型等几何体;NC模块主要功能有数控程序编辑、刀补、插补、编译生成虚拟机床驱动文件等;运动模块用来实现虚拟机床运动,刀具运动及切削运动等;机床参数设鬣、机床状态信息反馈与监测等功能用监测反馈模块来实现。整个系统各个模块关系如图2所示。 2 各个模块的设计 2.1 人机界面(控制面板)的设计 这个模块有两个方面: 一是对面板的各个界面元素进行设计,一一个是对机床等各个虚拟物体进行控制。操作面板上的组件数量很多,但大多数都具有相似性,因此可以将具有相同功能的组件设计为ActiveX控件,利用ActiveX控件的封装性和动态连接性来实现虚拟操作面板上的具有相同功能的组件。界面元素构建三个类CRob、CMyButton、CMyEdilo CRob是用米实现旋转开关。CMyEdit用于实现显示屏。CMyBunon来实现方形按钮。几乎所用的操作,控制都在控制面板上,那么所有的模块都在这里汇集,可以是指针、实体,用来实现整个机床及加工过程的控制。设计一个NcPanel类,这个类提供各个控制变量,用于NC文件检查,机床参数设置,机床运动控制等等。 2.2 几何模块的设计 2.2.1 机床本体模型、刀具模型、切削液喷管等复杂几何模型 这峰模型比较复杂,直接采用绘图编程的方法很难实现这么复杂的图形,即使实现了也需要花费极大的时间和精力,绘制出来的效果也难以达到预期效果。本文采用一些成熟绘图应用软件如3dsMax、UG、Pro/E等来实现这些几何模型。本系统并不能直接调用这些软件生成的几何模型,只能得到这些几何模型的描述性文件。不得不对这些文件进行研究,找出需要的几何信息,然后转化成程序中能够使用的几何实体。有一种标准的文件格式--3DS文件格式,几乎所有的3D绘图软件都支持这种文件格式,能转化成这种文件格式。因此,这个模块的工作便是编写一个文件接口,将3DS二进制文件读入转换成0penGL几何实体。构建的类如下: class C3dsReader;//3DS文件读人类 class8 CTriList;//生成数据链表(用来逼近3DS图形的小三角形片//集合) 将机床各个部件几何模型组成一个机床类class Machine,这个类包括机床的各个组件,如床身、主轴等。 2.2.2 刀具轨迹及零件几何模型 此模块用于刀具轨迹仿真,验证NC程序是否正确及显示加工后刀具轨迹几何模型,可划分为两层: 第一层:基本几何元素层。 点,线,圆弧,平面,直纹面面等几何元素的绘制,点,向量,矩阵的各种运算等。在0penGL环境中,可以相似地构造出一个设备环境类,让它绘制出一些基本的几何元素:直线、圆弧等。 第二层:模型建立层。 整个NC文件形成的刀具轨迹是由各种几何元素构成的,建模即是将各种几何元素构成一个完整的图形。如加工一个字,字体则是由多条直线构成。从中可以构建各个几何模型的类如直线(CLine),圆弧(CAre),圆(CCircIe),直纹曲面(CLin_Are)等。各个无素的绘制则调用上一层glCDC类的成员函数。如直线自我绘制可以写成: pDC->Line(start,end); pDC是glCDC一个实例的一个指针。 2.2.3 工件模型 工件模型用于工件切削运动。采用空间分割法对工件模型进行建模。本文只将工件在X、Y平面上进行分割,Z方向用top值表示,构建的模型的如下: class PexSeL//离散的小方块实体模型 整个工件可表示为:PexSel Box[x][y];//x,y为工件分辨率 2.3 运动模块的设计 运动模型有机床本体运动,刀具运动,加工切削运动,属于动画制作过程。动画可以让一张张相关的图片以较快的速度进行切换,就能得到连续的运动效果。相似地,在一定地时间里绘制N张相关的图片,就能得到计算机动画效果。先设置一个系统时间,让它不停的刷新画面,接下来的工作就是绘制这些相关的图片。 图形的绘制,把它封装成按参数化形式绘制,只要将其参数进行修改就可以实现动画控制。 比如一个正方体绘制可写成: Translated(m_x,m_y,m_z);// DrawBox(length,width,high); 那么只要对m_x,m_y,m_z三个变量进行控制,然后让画图模块不停地按参数绘制即可实现正方体移动动画。接下来的工作需按时间对位置变量进行控制,实现需要的运动。设计一些位置控制器,如直线、圆弧位置控制器等 cIass MoveCircle//实现圆弧运动计算器 class Movenne //实现直线运动计算器 …… 2.4 编译模块的设计 编译模块主要划分为四个部分:词法分析、语法分析、目标代码生成和出错处理。编译过程是输入数控加工程序,输出目标代码或错误信息。本系统采用逐行扫描方式,以词法分析程序和语法分析程序为核心,出错处理作为一个独立的过程,目标代码的生成则在错误为零的情况下生成。 设计一个编译类Compile。 输入:CString m_Nccode;//一段NC代码 功能函数: Wo-check( ) //词法检查 SyntaxCheck( )//语法检查 输出:CString errInfo//错误信息 操作数据对象 ProgramNode NcSegementStruct//编译后生成的中间文件。 CTypedPtrList<C0bList,CPart*>*m_curvelist;//生成的刀具轨迹链表 2.5 监测反馈模块的设计 机床参数系统的没计: 1)设计一个后台数据库CDaoDatabase m_db,后台数据库使用微软公司的ACCESS制作; 2)所有的变量设计一个MachineState类来集中进行管理。 3)状态监测,设计一个类RunErrCheck,实现功能包括非法报警、工件与刀具干涉、非法操作和越程等。 3 小结 数控加工过程本身是一个十分复杂的过程,它是对零部件设计、工艺规划等许多工作的一个检验。本文建立的系统已经具备虚拟机床的基本功能,仍然存在以下几个需要改进的地方: 1)工件模型可以进一步进行研究,找出结构更优秀,显示速度更快的模型,使得切削过程更加逼真、快捷; 2)运动模型需要进一步研究,构造更强大的运动控制器,如高级曲线运动控制、高级曲面运动控制,以满足更高级CNC系统刀位控制要求; 3)本系统只研究了纯几何仿真,对于加工中一些力学因素没有考虑,今后可通过建立加工过程的力学物理仿真模型,进行加工过程切削性能与切削效果仿真。