988CAPP技术研究的发展现状随着CAPP技术的逐渐成熟,CAPP的效益已在生产中得到证实,从而促使其蓬勃发展,在国内外均有不少CAPP系统问世并投入使用。同时又由于柔性制造系统(FMS)、计算机集成制造系统(CIMS)、智能制造系统(IntelligentManufacturingSystem,IMS)、并行工程(ConcurrentEngineering,CE)和虚拟制造系统(VirtualManufacturingSystem,VMS)等许多新思想、新概念、新方法的提出与发展,CAPP正朝着集成化、智能化、网络化、工具化、实用化和多功能化的方向发展。在设计技术上采用分布式和面向对象技术。8.1集成化计算机辅助设计(CAD)、计算机辅助工艺过程设计(CAPP)和计算机辅助制造(CAM)之间的集成是计算机集成制造系统(CIMS)的信息集成主体和关键技术。在CIMS中,CAD是CAPP的输入,其注意力主要是在机械零件的设计上,因此涉及机械零件的绘图及几何造型。它的输出主要是零件的几何信息(图形、尺寸、公差)和加工工艺信息(材料、热处理、批量等)。CAPP是利用计算机来制定零件的加工工艺过程,把毛坯加工成图纸上所要求的零件。它的输入是零件信息,有两种情况,一是由CAD系统直接输入;二是根据零件图通过人机交互输入。前者显然易于实现信息和功能的集成。它的输出是零件的工艺过程和工序内容。CAM从广义来说,是通过一个计算机分级结构网络来控制、管理和监测制造过程各个阶段的工作。它包括生产管理与控制、工程分析与设计、财会与供销等方面。在集成制造系统中(从狭义来说),主要指数控加工,它的输入是零件的工艺过程和工序内容,其输出是刀位文件和数控加工程序。刀位文件表示了刀具运动轨迹,与夹具、工件在一起可进行加工过程仿真以防运动干涉。同时它又是编制数控加工程序的根据,刀位文件通过后置处理便可获得某数控机床的数控加工程序。工艺过程设计是设计与制造之间的桥梁,设计信息只有通过工艺过程设计才能形成制造信息,因此,在集成制造系统中,自动化的工艺过程设计是一个关键环节,占有很重要的地位。图8—1是采用IDEF0方法绘制的CAD、CAPP、CAM之间的集成关系。图8—1CAD、CAPP、CAM三者的集成关系998.1.1CAD、CAPP与CAM之间的集成过程CAD、CAPP与CAM之间的集成过程可以分为以下两个部分:(1)CAD与CAPP之间的集成在计算机辅助设计时,其输出主要是零件的几何信息,缺少工艺信息,这是由于传统的设计和工艺的分工,设计人员不熟悉工艺而造成的,从而使在进行工艺过程设计时,CAPP系统由于缺少工艺信息而不能进行。另一方面,由于CAD和CAPP系统分别由不同的人员开发,使用了不同的零件描述方式和不同的数据结构,从而使CAD系统的输出信息的数据内涵和格式不能被CAPP系统所接受。以上两点造成了CAD和CAPP系统集成的困难,至今未能很好的解决,成为集成的关键技术问题。(2)CAPP和CAM之间的集成由于CAPP和CAM都是制造工艺方面的问题,信息上易于集成;同时两者大多是由工艺技术人员开发的,数据内涵和格式易于统一,因此两者之间的集成易于解决。8.1.2CAD、CAPP与CAM之间的集成途径(1)采用统一数据交换标准进行相互间的直接交换初始图形交换规范(InitialGraphicsExchangeSpecification,IGES)是美国制定的中性格式数据交换标准,可以用它来进行集成,但由于它主要是传输几何图形及其尺寸标注,即几何信息,缺少工艺信息,因此不能满足集成要求。解决的办法是在计算机辅助设计中,自行开发符合IGES的工艺信息,提供给计算机辅助工艺过程设计进行集成,这是一种可行方法,早期的信息集成有所采用。产品模型数据交换标准(StandardfortheExchangeofProductModelData,STEP)是近年来由国际标准化组织ISO制定的一个比较理想的国际标准,现正在进一步开发中,它采用应用层(信息结构)、逻辑层(数据结构)、物理层(数据格式)三级模式,定义了EXPRESS语言作为描述产品数据的工具;它包含了几何信息、制造信息、检测和商务信息等,在当前的集成制造系统中已广泛采用。它不仅使所有的集成环节均有统一的数据标准,而且在进行计算机辅助设计中,可输出几何信息和工艺信息,解决了计算机辅助设计与工艺过程设计之间的信息集成问题。采用统一的产品模型数据交换标准是解决信息集成的根本出路。(2)采用数据格式变换模块来进行相互间的数据交换在两个集成环节之间,开发一个数据格式变换模块,并通过它进行数据交换。例如:在计算机辅助设计之后,开发一个后置处理模块或在计算机辅助工艺过程设计之前,开发一个前置处理模块,进行相互间的数据格式变换,其关键问题是,数据不得丢失和失真。这一办法是可行的但比较麻烦,不尽理想。上述两种办法的数据交换情况如图8—2所示。8.1.3基于STEP的CAD/CAPP集成系统的研究与实现(1)系统集成的设计思想和设计方案目前,大多数的CAD软件都支持STEP,IGES和DXF等标准转换格式。由于DXF格100式主要支持二维图形的转换;IGES格式虽然支持三维图形信息转换,但不支持产品开发的后继过程设计。故采用CAD软件普遍支持的STEP标准,通过提取STEP中性文件中数据来实现集成系统的信息传输和共享。CAD/CAPP集成系统的总体设计思想是:将STEP格式的零件模型文件作为特征自动识别系统的输入文件,经识别处理后,从中提取有关的几何形状、技术精度等特征,同时通过人机交互方式,补充输入该模块文件中没有且后继系统又需要的某些加工工艺信息,从而生成完整而中性的零件定义数据;最后运用一系列的映射规则和知识,将这种中性结构的零件定义数据转换成CAPP系统所需的零件制造特征模型。为充分利用现有的系统资源,CAD/CAPP集成方案是基于CAD系统实体造型来开发的特征识别和提取系统。集成系统总体结构如图8-3所示。(2)CAD-CAPP接口CAD-CAPP接口主要由特征识别模块、特征映射模块和工艺信息补充模块组成。特征识别模块将STEP中性文件中的零件信息进行预处理和规则匹配,产生相应的设计特征;零件信息补充模块用于添加转换文件中所缺的工艺特征信息;特征信息模块把完整的零件设计特征映射为CAPP专家系统所需要的制造特征,其组成结构如图8-4所示。(a)点对点的数据交换(b)基于数据文件的数据交换图8—2集成环节之间的数据交换图8-3集成系统结构图8-4CAD-CAPP接口的组成结构101(3)STEP信息集成文件STEP是国际标准化组织ISO正在组织开发制定的产品数据表达与交换标准,因其规范的标准体系,无二义性的形式化表达和严格一致性要求的实现方法,为CIMS中的数据交换和信息集成提供一种中性表达机制,可用于描述整个生命周期中的产品数据。STEP中性文件与具体的CAD系统无关,它可以直接用于表达CAD系统生成的零件模型信息,其文件结构由WSN句法定义。STEP文件由ISO-10303-21开始,END-ISO-10303-21结束,按其数据功能分为头段和数据段,每段则可能包括一个或多个实体。头段主要提供有关文件的描述信息,数据段主要包含一系列描述零件信息实体,各实体的格式可归纳为:#标识数字=关键字(ID,⋯,⋯,⋯,⋯)其中,标识数字为不超过9位的整数;关键字在模型描述语言EXPRESS中定义;属性可以是一种简单的数值,或是一个结构模型的数据,或是一个嵌入式的实体。下列为由Solidworks2000生成的“用于描述一个XOZ平面上以(0,0,0)为圆心,30mm为半径的圆沿Y轴拉伸80mm的圆柱体”的部分STEP文件。#27=CIRCLE(′NONE′,#28,30.000);#28=AXIS2_PLACEMENT_3D(′NONE′,#29,#30,#31);#29=CARTESIAN_POINT(′NONE′,(0.000,0.000,0.000));#30=DIRECTION(′NONE′,(0.000,0.000,1.000));#31=DIRETCTION,(′NONE′,(1.000,0.000,0.000));⋯⋯#41=CYLINDRCAL_SURFACE(′NONE′,#42,30.000);#42=AXIS2_PLACEMENT_3D(′NONE′,#43,#44,#45);#43=CARTESIAN_POINT(′NONE′,(0.000,80.000,0.000));(4)特征定义和造型特征是一组与零件描述相关的信息集合。零件的特征描述是其设计和制造等方面的信息。用特征描述的产品信息模型具有形态、材料、功能、规则和约束等内容,并且是能量化的,一个零件包括多个特征,零件的创建过程就是其特征的生成和造型过程。在经分析零件特征关系的基础上,可将零件特征分为设计特征和制造特征,设计特征又分为3大类,如图8-5所示。图8-5设计特征分类102其中几何形状特征是最重要及最基础的特征,它常常也是其它特征的载体。为了减少特征造型映射过程的困难,可将形状特征分类为主要特征和辅助特征,主要特征用于构造零件的基本形体,辅助特征附在主特征上,也可以附在另一辅助特征上。在零件特征信息描述上,主要以回转类零件为例来研究CAD/CAPP集成中零件特征的识别和提取,采用面向对象编程思想中类的概念,即将特征分别抽象为类或类的属性。如定义圆柱类(Cylinder)时,以它相应的形状公差特征、位置公差特征和粗糙度等作为该类的属性来记录,而Cylinder类又是从主要特征(MainFeature)继承而来,如下所述。ClassCylinder:publicMainFeature{public:charCylinderNum,CylinderName://圆柱体名称和编号doubleCylinderDiameter,DiamUpper,DiamLower;//直径及偏差doubleCylinderHigh,HighUpper,HighLower;//高度及偏差doublePositionX,PositionY,POsitionZ;//定位点坐标doubleVectorX,VectorY,VectorZ;//方向矢量doubleCylinderRa,CylinderIT;//公差及等级⋯⋯Private:⋯⋯Protected:⋯⋯};此方法适用于其它类零件(如箱体类、板类等)。描述时,只需将所定义的各个类实例化就可。用这种描述方法可以很容易地把特征的几何/拓扑、管理和技术精度信息集合在一起,使特征对象不仅具备特征的属性,还包括一组对特征属性的操作方法。(5)特征识别与特征映射在STEP中性文件中,实体与零件特征并不完全是一一对应的,系统要获得零件的特征信息,就必须识别并提取出各个实体的各种数据信息。特征识别的基本流程如图8-6所示。系统遍历STEP中性文件,得到各段实体实例的总数,以确定循环次数。借助于循环,系统通过函数getEntity()又可分别提取出头段和数据段中各个实体实例的相关数据,及根据所输入的实体实例名查询数据库中的实体关键字表,并检索出该实体实例对应的实体类型名。随后系统调用相应的构造函数来为该实体实例建立实体节点,同时获得其各项属性值,对所得到的各个实体节点进行分类、拓扑关系分析、重新定义起始和终止状态等处理,并对分类后的实体节点进行排序,存入数据链表,把静态的几何信息置换成易于处理的动态实体链表。例如,前述的STEP文件经识别后,就可以用以下语句得到一个Cylinder类的对象MyCylinder。CylinderMyCylinder://创建Cylinder对象MyCylinder.CylinderDiameter=40;图8-6特征识别的基本流程103MyCylinder.CylinderHigh=50;MyCylinder.PositionX=0;MyCylinder.PositionY=0;