基于MachineWorks的复杂数控加工环境仿真的研究

2015-12-30 03:15翁孝波,吴文江,王品
组合机床与自动化加工技术 2015年9期
关键词:数控系统机床部件

基于MachineWorks的复杂数控加工环境仿真的研究*

翁孝波1,2,吴文江2,3,王品2,3

(1.中国科学院 研究生院,北京100049;2.中国科学院 沈阳计算技术研究所,沈阳110171;3.沈阳高精数控技术有限公司 高档数控国家工程研究中心,沈阳110171)

摘要:当前存在的一些商品化数控加工仿真系统通常作为一个独立于数控系统的程序而很难集成入当前数控系统中,为此有些情况下需要依据数控系统的实际情况开发数控加工仿真系统,但是当前存在的一些开发方案都或多或少存在一些问题,如开发周期长、灵活性差。本文仔细研究了数控加工仿真系统的几个关键技术和几类常用开发方案,采用了基于专用的数控加工仿真系统库——MachineWorks的开发方案, 结果显示这种方案对开发量过大和灵活性不足的问题做出相应折衷,能方便的集成入当前的数控系统中,同时能够减少开发工作量。并且本文针对一般CAM或加工仿真软件只进行零件刀具轨迹或中间文件的模拟,无法满足复杂加工环境下的加工仿真需求的问题,在此开发方案基础上对复杂数控加工环境仿真的开发思路、过程及相关关键技术做了阐述。

关键词:MachineWorks;数控加工仿真;加工环境

文章编号:1001-2265(2015)09-0114-04

收稿日期:2014-11-10;修回日期:2014-12-12

基金项目:*国产高档数控机床、系统及其技术在航空领域的综合应用验证及工艺研究(2014ZX04001051)

作者简介:翁孝波(1990—),男,浙江义乌人,中国科学院沈阳计算技术研究所硕士研究生,研究方向为数控仿真技术,(E-mail)wengxiaobo@sict.ac.cn。

中图分类号:TH165;TH659

Research on MachineWorks-Based Simulation of Complex Numerical

Control Machining Environment

WENG Xiao-bo1,2,WU Wen-jiang2,3,WANG pin2,3

(1.Graduate University of Chinese Academy of Sciences,Beijing 100049,China;2.Shenyang Institute of Computing Technology,Chinese Academy of Sciences,Shenyang 110171,China)

Abstract:Although there exist some commercial NC machining simulation systems at present,but these systems are hard to be integrated into numerical control systems which already exist,so in some situations we have to develop NC machining simulation systems in according to numerical control systems which is developing.Although there exist some methods to develop a NC machining simulation system,but these methods have some problems more or less such as the amount of work is too huge or the flexibility is not very good .This paper explores some key technologies which are used by machining simulation system and some schemes which are used to develop machining simulation system,we use a method which is based on special-purposed library to develop the system.The result shows that this method can satisfy the demand which requires to decrease the amount of work and keep some-level of flexibility.In consideration of the general CAM or machining simulation system only simulate the cutter-location based-on part and cutter,the virtual machining environment is simple,so based on the method we describe the process of simulation of complex NC machining environment.

Key words: MachineWorks;NC machining simulation;machining environment

0引言

当前存在的一些加工仿真系统很难集成入系统中,并且当前常用开发方案都或多或少存在一些不足。故本文从数控加工仿真系统开发的常用方法出发,重点研究了复杂数控加工环境的结构和关键技术,尤其是虚拟机床的建模方法包括几何模型、运动模型和控制系统模型。提出了利用专用库的开发方案,对开发工作量和灵活性做出相应折衷,在方便的集成入当前的数控系统同时,能够减少开发工作量。

国外方面,文献[2]对加工仿真系统所采用的模型做了初步研究,采用一些通用数据模型和标准来方便的集成入CAD/CAPP/CAM系统中。文献[3]对复杂数控加工仿真系统的运动模型的构建做了研究,但整个系统的开发基于VC++技术,开发工作量较大。文献[4]描述了利用CATIA V5实现加工仿真系统,但是系统中的加工仿真环境比较简单。国内方面,文献[5]对利用Vericut进行加工仿真系统的开发做了研究,但是开发的系统很难集成入当前的数控系统中,弹性不足。国内外对于利用一些专用的数控加工仿真系统库如MachineWorks开发加工仿真系统的研究相对较少。

本文研究主要以计算机图形学、前向运动学及基本的编译原理作为理论基础,采用基于仿真系统库MachineWorks的方法,在此开发方案基础上开发了一个复杂数控加工环境仿真原型系统,利用专用库的方法能够明显减少重复性工作量,提升效率。

利用该方案开发加工仿真系统,以期能够降低开发难度、缩短开发周期,且能方便的集成入数控系统中。这对于实际开发数控加工仿真系统具有一定的参考价值,且能提高开发效率,满足复杂数控加工环境下的加工仿真需求。

1常用数控加工仿真系统

常用的数控加工仿真系统主要有以下几种:

(1)应用程序框架如Qt、VC等结合OpenGL技术。

(2)利用现有的造型系统实现基本造型并输出相应的文件格式如广泛应用的STL格式,然后导入系统中。

(3)在现有软件功能基础上利用提供的开发接口和开发语言对软件功能进行二次开发,实现系统功能定制和扩展。

第一种开发方案的灵活性是最好的,但开发工作量也是最大的。第二种开发方案灵活性上差一些但是它减少了一部分工作量。最后一种方案的工作量是最少的,但它必须依赖于特定的现有软件及其所提供的接口和功能,而且这种方案的最大一个缺点就是很难集成入当前的数控系统中。

在实际情况中必须依照具体的现实状况和条件来选择相应的开发方案,同时也希望能有一种开发方案能同时结合以上几种方案的优点并克服它们的缺点,在一定程度上基于数控加工仿真系统专用库的开发方案实现了上述的期望。

2基于MachineWorks的数控加工仿真系统

2.1MachineWorks简介

图1 MachineWorks 库的层次结构

MachineWorks是一种组件级应用程序开发接口工具包[10]。提供了一系列专门用于开发数控加工仿真系统的库,以提高开发效率。

MachineWorks包含了一系列的库,总体层次结构如图1所示。

2.2开发方案优点

相对于前面所介绍的第四种方案而言,具有很大的灵活性,不必依赖于具体现有软件的功能和接口,而且能方便的集成入当前的数控系统中。

同时因为它是特定领域的软件库,因此对于开发数控加工仿真软件系统的支持在一个比较高的层次上,开发过程中可以较少的关注底层的一些具体细节,而专注于实现系统的各个功能,减少了开发工作量。

2.3复杂数控加工环境仿真总体结构

整个数控加工环境主要包括毛坯模型、夹具模型、运动模型、控制模块等,总体结构如图2所示。

图2 总体结构

3虚拟加工环境的建模

虚拟模型是物理模型在计算机系统内部的映射,它们之间的一致性是仿真结果可靠与否的重要保证。虚拟加工环境的建模主要包括两个部分:几何模型和运动模型。

虚拟加工环境中的模型包括由零件设计模型组成的机床模型、毛坯模型及其他相关物体的模型。构建几何模型就是从这些模型的几何关系出发,在系统内部建立模型的几何信息如各自的几何特征、互相之间的位置关系等,是进一步建立运动模型的基础。构建运动模型就是在几何模型的基础上,从模型之间的运动关系出发,建立模型之间的运动链接关系。本文以典型虚拟数控机床模型的构建方法为例来说明,其余模型相对比较简单。

3.1几何模型

虚拟数控机床是一个由各个零部件组合而成的整体,这些零部件相互之间存在着装配关系和位置关系。

装配关系可以由一个层次结构图来描述,如图3所示。多个基本体素组成零件,多个零件组成部件,多个部件组成机床整体。这种层次关系反映了各个零部件之间的组成关系,由层次结构图可知,表示几何模型的数据结构中必须包含两部分信息:

图3 几何模型的层次结构

(1)各个零部件的几何和拓扑信息。

(2)各个零部件及基本体素之间的装配组成关系。

几何模型的一个重要作用是显示真实机床的几何特征和作为碰撞检测的依据,精度越高,几何特征越接近真实物体,碰撞检测的精度也越高,消耗的计算资源也会越多。因此,在构建几何模型时要兼顾精度与运行效率,在保证运行效率的情况下尽可能提高精度。

为了简化建模过程和降低对计算资源的消耗,需要对由几千个零部件组成的机床模型进行拆解和简化,一些与加工仿真无关的部件可以忽略如排屑系统、保护外罩、冷却系统等。

MachineWorks支持两种几何模型的建立方法,一种是直接调用内部API函数,构造基本体素级的图元(primitive)如圆柱体、球体、长方体等或依据旋转、平移等操作构造不规则基本体素,然后由这些基本体素通过布尔运算生成。优点是较灵活,可以在程序运行过程中生成,但这种方法使用起来比较复杂,同时也会减慢系统运行速度。另一种是利用造型系统构造基本造型,然后导入系统中。优点是系统运行速度较快,但是灵活性较差并且要占用较多的内存空间。

现有的一些造型软件如Pro/E、UG等在实体建模方面具有很大优势,可以降低几何建模难度,故利用造型软件来构建一些复杂的几何模型,生成STL格式文件,再导入系统中,而一些简单的几何模型则通过调用内部API函数的形式直接生成,以此兼顾几何模型构建的灵活性和系统运行效率。

虚拟机床模型作为一个整体,不是由各个零部件随意堆砌而成的,各个零部件之间存在着一定的位置关系,这个位置关系是依据物理模型间的位置关系而来的。由分层结构图来描述位置关系如图4所示,部件集Ci可表示为:

图4 分层结构图

式中cin表示ci的第n个基本部件模型,Pij为组成Ci的基本零件集。Tij表示对模型的平移和转动,可以用一个转换矩阵表示。机床整体M可表示为:

式中mn表示机床整体由n个部件组成。

通过转换矩阵将基本模型按照要求的位置及方向放置,组成机床整体。任意一个转换矩阵T可按照以下形式表示:

T=Tt×Tra×Trb×Trc,

式中Tt表示模型分别沿着x,y,z轴移动tx,ty,tz;Tra表示模型沿着a轴转动α角;Trb表示模型沿着b轴转动β角;Trc表示模型沿着c轴转动γ角。

m个基本零件组成部件Ci可表示为:

式中Tij为表示部件Ci的第j个基本模型方向和位置的转换矩阵。n个部件组成机床整体:

图5 虚拟机床几何模型

式中Ti为表示机床整体M的第i个部件方向和位置的转换矩阵。

当建立了模型间的装配关系及位置关系后即可建立机床整体的几何模型,基于本文方法建立的一个虚拟机床几何模型如图5所示。

3.2运动模型

几何模型中只有各个零部件模型的几何信息,而构建虚拟加工环境的运动模型就是要建立它们之间的运动关系信息。运动关系信息描述了各个部件间存在的相互运动关系,也称为运动链接关系。

机床的加工运动由数控加工代码或刀位文件驱动,加工运动是所有运动部件运动合成的结果,每个运动部件的运动具有如下特点:有限的运动范围(a轴的旋转角度、x轴的平移距离)、每个运动部件只有一种运动类型(旋转、平移),复杂运动由多个部件同时运动实现、运动部件之间具有层次性的运动关系。

加工运动所涉及到的各个运动部件之间存在主从关系,这种运动关系称为前向运动(forwardkinematic)。

加工运动所涉及到的运动部件之间存在着层次关系如图6所示,上层运动部件相对下层运动部件为主部件,下层运动部件相对上层运动部件为从部件。主部件的运动会带动从部件的运动,而从部件的运动则不会影响主部件的运动。整个加工运动某一时刻的运动状态由各个层次运动部件的运动状态所决定,是所有运动部件在某一时刻运动状态的合成。

图6 运动部件 层次关系图

MachineWorks中用物体集合(solidassembly)的概念抽象的表示一个运动部件。一个物体集合内可以包含多个物体,当物体集合内的任何一个物体移动时,集合内的其他物体也会随之移动并且物体之间的相对位置保持不变,这与现实状况的直观印象是相对应的。

在MachineWorks中以树状结构的数据模型表示运动部件之间的层次运动关系。树中的任何一个节点代表一个物体集合,父节点可以拥有两个或两个以上的子节点。父节点移动时,它的所有子节点也会随之移动,而子节点的移动不会影响父节点,这与运动部件之间的主从关系概念是相对应的。建立控制节点并将控制节点与物体集合中的某一物体相关联,即可通过控制节点来控制一个物体集合的运动,包括运动范围和类型。这样所有运动部件的运动特点及其相互之间的关系都统一在了一棵运动树状结构中。

本文建立的一个通用的数控加工环境运动模型树状结构图如图7所示,根节点代表包含有基座的物体集合,基座节点的运动会带动所有

图7 运动模型树状结构图

在基座上的运动部件的运动,这表现为所有其他物体集合节点都是它的子节点。

图8 通过控制节点移动刀具

以y轴运动控制节点为例,通过y轴运动控制节点控制y轴物体集合在y轴的平移运动,y轴物体集合的平移运动会带动所有子节点如包含刀具的物体集合子节点在y轴的运动,如图8所示,刀具向下平移运动。

4控制系统建模

控制系统在整个仿真系统内的地位如图9所示,控制系统读取加工代码并进行相应的分析,将加工代码内的加工信息转化为各个运动部件的运动,驱动整个虚拟加工环境的运作。

图9 控制系统的作用

4.1数控加工代码解析特点及解决方案

数控加工代码是控制系统驱动虚拟加工环境运作的依据,通常对数控加工代码有一个检查过程,包括语法检查和词法分析,提取出其中的加工信息,然后转化为表征虚拟加工环境中运动部件运动的内部数据,采用相关数据结构记录保存这些数据。

难点在于,虽然就各类数控系统来说,大部分系统总体上参照了ISO标准,但是各类系统都对标准做了一定程度的修改,有不同程度的功能扩展。如果对每类系统分别设计一个模块,在运行时载入相应的模块,系统过于冗余、繁琐,而且这样做需要频繁增添模块,不易维护。一个较好的方案是建立一个通用模块,这个通用模块的执行依据两个规则库:一个遵循通用标准的规则库,一个由用户自定义或默认的特殊规则库。特殊规则库保存了不同系统的功能扩展信息,用于记录和识别扩展的加工代码规则。这种方案的优点是整个系统具有可配置、可扩展性,便于维护。

4.2控制系统的总体结构及实现方法

本文建立的控制系统总体结构如图10所示,预处理的主要功能是规范加工代码格式如去除多余空格、替换宏定义等以便进一步的分析处理。语法检查和词法分析是根据相应系统预定义的规则和相关数控加工知识,对加工代码进行语法构词及语义上的检查。检查以预先定义的两个规则库作为依据,若出现不符合预先定义的规则库的情 况,则认为出现错误。出现错误的同时显示错误信息和加工代码便于重新修改。通过词法分析和语法检查后,需要解析加工代码,提取加工代码中的加工信息,转化为各个运动部件的动作、状态和刀位轨迹信息。解析过程是以预先定义的运动模型作为依据的,将运动信息依据运动部件之间树状层次结构分解为各个运动部件各自的位置变化,由此驱动虚拟加工环境内各个运动部件的运动,显示加工过程。

图10 控制系统总体结构

5结论

本文介绍了一种基于专用库开发数控加工仿真系统的方法,并在该方法基础上对复杂数控加工环境的仿真及相关关键技术做了仔细研究,经过实际的开发测试,利用该方法来开发数控加工仿真系统,思路清晰、开发难度相对较小、能够明显降低工作量缩短开发周期,能满足复杂数控加工环境下的加工仿真需求,系统也具有一定的弹性,能方便的集成入数控系统中,对实际开发数控加工仿真系统具有一定的参考价值。但因为MachineWorks对数控加工仿真系统中的控制系统的建模功能支持目前还不是很完善,在大部分情况下需要独立开发一个控制系统,故对于实际的复杂数控加工仿真还有待进一步研究和开发测试。

[参考文献]

[1]JGLi,HZhao,YXYao,etal.Off-lineoptimizationonNCmachiningbasedonvirtualmachining[J].TheInternationalJournalofAdvancedManufacturingTechnology,2008,36(9,10):908-917.

[2]YuZhang,Xiao-LanBai,XunXu,etal.STEP-NCBasedHigh-levelMachiningSimulationsIntegratedwithCAD/CAPP/CAM[J].InternationalJournalofAutomationandComputing,2012,9(5): 506-517.

[3]ZhangJian-Min,FanYu,JiaDong-yun,etal.KinematicsimulationofaparallelNCmachinetoolinthemanufacturingprocess[J].FrontiersofMechanicalEngineeringinChina,2006,1(2):173-176.

[4]RozmarinaDubovska,JaroslavJambor,JozefMajerik.ImplementationofCAD/CAMsystemCATIAV5inSimulationofCNCMachiningProcess[J].ProcediaEngineering,2014,69(2014):638-645.

[5]王中胜,张磊,刘万普,等. 基于Vericut的车铣复合加工中心虚拟仿真研究[J]. 航空制造技术,2011,1(2):106-110.

[6]章善财,夏链,韩江. 通用NC代码编译器的设计与实现[J].组合机床与自动化加工技术,2014(10):53-56.

[7]吴陈燕. 正交型五轴虚拟机床构建及NC刀具路径仿真模拟[J]. 组合机床与自动化加工技术,2013(12):130-132,135.

[8]崔海龙,关立文,滑勇之,等. 基于VERICUT二次开发的数控加工切削力仿真研究[J]. 组合机床与自动化加工技术,2012(5):9-12.

[9]王伟,张鹏,刘庆云. 制造业中虚拟仿真技术的发展研究[J]. 组合机床与自动化加工技术,2013(7):1-4.

[10]MachineWorks Ltd. Programmer’s Guide[M]. Sheffield:MachineWorks Ltd,2012 .

[11]MachineWorks Ltd. Geometry[M]. Sheffield:MachineWorks Ltd,2012.

[12]MachineWorks Ltd. Simulation, Volume 1,2[M]. Sheffield:MachineWorks Ltd,2012.

[13]MachineWorks Ltd. Full Machine Simulation[M]. Sheffield:MachineWorks Ltd,2012.

[14]MachineWorks Ltd. Graphics[M]. Sheffield:MachineWorks Ltd,2012.

[15]孙家广. 计算机图形学 [M].3版.北京:清华大学出版社,1998.

[16]李斌,李曦. 数控技术[M].武汉:华中科技大学出版社,2010.

(编辑李秀敏)

猜你喜欢
数控系统机床部件
机床展会
加工中心若干典型失效部件缺陷的改进
奥迪e-tron纯电动汽车的高电压部件(下)
基于BP与GA对非标部件结构对比研究
2019,中国机床变中求进
基于FANUC 32i A数控系统的外部测量设计
西门子840D sl数控系统在SC125大型车铣镗床技术改造中的应用
基于FANUC Oi mate TD数控系统的手动功能开发
基于通用机床的100%低地板有轨电车轮对旋修
数控系统中GUI软件平台设计和实现