基于ISO14649标准的STEP-NC程序生成器.doc_第1页
基于ISO14649标准的STEP-NC程序生成器.doc_第2页
基于ISO14649标准的STEP-NC程序生成器.doc_第3页
基于ISO14649标准的STEP-NC程序生成器.doc_第4页
基于ISO14649标准的STEP-NC程序生成器.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于ISO14649标准的STEP-NC程序生成器摘要:为了实现与产品模型数据交换标准兼容的数控数据接口(the STandard for the Exchange of Product model data compliant Numerical Control data interface,STEP-NC)程序的自动生成,开发了STEP-NC程序生成器。首先介绍了程序生成器的工作原理,将程序生成器按照逻辑关系分为6个功能模块,阐述了各个模块的功能和实现方法。详细论述了STEP-NC程序生成器实现中的3项关键技术:基于AP203文件的特征识别方法、实体属性设置顺序和STEP-NC程序行号的设置方法。最后,结合一个包含平面、孔和型腔特征的AP203文件,利用所开发的STEP-NC程序生成器生成符合ISO14649标准的完整的STEP-NC程序,并通过STEP-NC铣削仿真系统对所生成的程序进行切削仿真,仿真结果表明:所开发的STEP-NC程序生成器是正确可行的。关键词:与STEP兼容的数控数据接口;程序生成器;模块化结构;特征识别0 引言与产品模型数据交换标准兼容的数控数据接口(the STandard for the Exchange of Product model data compliant Numerical Control data interface,STEP-NC)是计算机辅助设计(Computer Aided Design,CAD)/计算机辅助制造(Computer Aided Manufacturing,CAM)与CNC之间进行数据交换的新型数据模型,它采用面向对象的方式,克服了传统G代码的诸多缺点,成为现如今数控领域的研究热点1-3。STEP-NC 程序包含了工件全生命周期需要的所有数据,涉及到了ISO10303、ISO286和ISO841等多个国际标准,而且程序中的各个实体是相互关联、层层嵌套的4,因此,STEP-NC程序的手工编制是非常复杂的。国内一些作者对于STEP-NC程序的生成进行了一些探索,但大多是在国外ST-Developer软件上进行的二次开发5。针对于此,本文开发了基于ISO14649标准的STEP-NC程序生成器,可以读取AP203文件,识别出特征信息,再设置相关的工件、操作、坐标系、工步、工作计划和工程等属性,最后生成完整的符合ISO14649标准的STEP-NC 程序。这对于STEP-NC在数控系统中的应用会起到有益的作用。1 STEP-NC程序生成器的工作原理STEP-NC 程序生成器的本质任务是读取CAD软件生成的AP203文件,根据其中包含的工件几何信息,识别出其中的特征信息,再设置相关的工件、操作、坐标系、工步、工作计划和工程等属性,最后生成完整的符合ISO14649标准的STEP-NC 程序。AP203文件仅包含工件的几何描述信息,而STEP-NC程序中需要的是特征信息;STEP-NC 程序包含了工件全生命周期需要的所有数据,而且程序中的各个实体是相互关联、层层嵌套的。以上两点决定了STEP-NC程序的生成过程是非常复杂的。本文开发的STEP-NC程序生成器分为译码、基本参数设置、特征设置、操作规划、任务设置和输出等6个功能模块,其模块化结构如图1所示。图1 STEP-NC程序生成器的模块化结构1.1译码模块AP203文件表达了零件的几何信息,采用的是体面线点的层层细化的方式,详细的表达了零件所具备的几何元素的信息,但并未表达出零件所具有的特征,因此需要对AP203文件进行特征识别。译码模块的功能就是对AP203文件进行译码,从而得到文件中所包含的特征及其详细参数。AP203文件译码模块的工作原理如图2所示。图2 AP203文件译码模块的工作原理1.1.1输入子模块AP203文件与基于ISO14649标准的STEP-NC文件一样,都是采用符合ISO13003-21标准的文件结构,即文件包括头段和数据段两部分。因头段仅列出了文件名、作者、组织、单位等一般信息,因此本文的研究仅针对于数据段。AP203文件的数据段的程序每行均以“#”开头,以“;”结束。该模块的功能是建立一个vector型变量,将所输入的AP203文件程序的每个程序行以“#”开头,以“;”为间隔符顺序读入vector中。全部程序行读取完毕后,vector中的每个元素均代表AP203程序的一个程序行。1.1.2信息提取子模块该模块的功能是将输入模块所得到的所有AP203程序行按统一结构进行分解整理。由于每个程序行均代表一个实体,而每个实体都具有相同的格式,即包括实体ID、实体名称和实体属性列表三个部分,因此在该模块中设计一个结构对程序行进行分解整理,该结构如图3所示。typedef structstring _lineNum; / 程序行号,对应实体ID string _lineNam; / 程序行名,对应实体名 vector _lineContext; / 程序行内容,对应实体属性列表 PrgLine; / 程序行结构图3 AP203文件的程序行结构信息提取模块运行时,依次读取每个程序行,对程序行进行扫描分析,依次识别出三个组成部分:ID、名称和属性列表,然后将其存入如上数据结构的对应成员变量中,形成一个程序行结构实体。再建立一个抽象容器类型变量,将所有程序行结构实体顺序存入该变量中。1.1.3特征识别子模块该子模块的功能就是根据所获取的AP203文件中描述的工件几何信息,识别出工件中所具有的特征及其相关参数信息。AP203文件表达零件几何信息的数据模型如图4所示6。图4 AP203文件表达零件几何信息的数据模型由图4可见,AP203文件对于零件几何信息的表达是一个自上而下、层层细化的过程,几何信息的提取和特征的识别都应严格按照图4所示的数据模型依次进行。形状表示法关系实体是整个数据模型的入口,而封闭壳实体是数据模型的核心部分,零件的几何信息定义由此开始。封闭壳由一个面的集合定义,通过读取这些面的信息,即可以确定出封闭壳实体也就是工件上所具有的特征及其具体参数。通过特征识别,可以得出STEP-NC中规定的特征的基本参数,包括特征的长度、宽度、半径、位置和深度等。1.2基本参数设置模块该模块的功能是设置STEP-NC文件的头段、工件参数和坐标系参数。其中头段包括文件名、作者和单位等基本的信息,工件参数包括ID、材料、公差、尺寸和箝位点等信息,设置相对简单。而STEP-NC程序中涉及到的坐标系包括多个层次,主要包括机床坐标系、安装坐标系、工件坐标系、特征坐标系和路径坐标系。该模块的主要任务是设置安装坐标系、工件坐标系以及安全面的详细参数,为以后的规划任务做准备。1.3特征参数设置模块特征参数的设置是STEP-NC程序生成的基础。特征参数可以通过AP203文件直接读取,也可以通过人机对话框进行直接设置。以平面为例,特征参数的设置主要包括:特征ID、所属工件、所用操作、方位、深度、长、宽、面轮廓和凸台等。值得注意的是,关于特征的基本参数如长度、宽度、半径、方位和深度等可以直接从AP203文件获得,而特征的操作属性则需要通过人机对话直接设置,实际上这也属于操作规划模块的功能范畴。1.4操作规划模块该模块的功能是得到特征参数设置中的确定的具体操作,并对其参数进行详细规划。操作必须与特征相关联,但几个特征可以使用同一个操作,一个特征也可以对应多个操作。这样做的好处是使操作实体可以共享,降低数据交换的工作量。以平面精加工操作为例,在操作规划模块中需要设置的参数包括刀轨、刀具方向、ID、退刀面、开始点、所用刀具、所用工艺、机床功能、过切长度、进刀策略、退刀策略、加工策略、轴向切深和底部余量等。其中进退刀策略和加工策略是操作规划的重点,每个策略都包含多个具体的策略,在此不再赘述。平面精加工操作参数设置对话框如图5所示。图5 平面精加工操作参数设置对话框1.5任务设置模块该模块的任务是确定工步、工作计划和工程。工程是一个STEP-NC程序的入口,它有两个重要的属性:主工作计划和从属的工件。工作计划中最重要的属性是its_element(所包含的元素),它是一个可执行结构的列表,指出本STEP-NC程序中所要执行的内容及其线性执行顺序,其中最主要的就是工步。工步是STEP-NC程序的基本结构单元,既可以是快进或探通等独立的操作,也可以是与铣削、车削或钻削等相关的加工操作。工步中应用最多也是最重要的是加工工步,它是特征和操作的结合体。任务设置模块的功能就是获得之前所确定的工件、坐标系、特征和操作等信息,对其进行规划整理,规划各个工步的内容,继而确定工作计划和工程。1.6输出模块以上模块所确定的工件、坐标系、特征、操作、工步、工作计划和工程等信息确定之后,均以程序行的形式存入各自的抽象容器类型的成员变量中。输出模块的功能是按顺序提取各个成员变量的信息并输出到文本文件中,生成完整的STEP-NC文件。2关键技术2.1基于AP203文件的特征识别方法如图4所示,工件的几何信息定义由封闭壳(CLOSED_SHELL)实体开始,它定义了一组组成封闭壳的高级面(ADVANCED_FACE)。特征识别的关键就是对高级面及其属性类型的判断。高级面具有3个主要的属性:面边界、初等平面和方向。初等平面和方向属性用来确定待加工表面,而面边界属性则用来确定特征及其具体参数。值得注意的是,面边界分为内面边界和外面边界两种。根据面边界的边环(EDGE_LOOP)属性和方向属性可以判断出边环的方向,由于边环的方向根据“当沿着边界环绕时实体材料总是位于其左边”的原则来确定,因此一个表面的外边界环总是逆时针方向,而内边界环则为顺时针方向7。2.1.1特征存在表面(待加工表面)的判断对于2.5D加工来说,工件的上表面为加工表面,因此工件的特征也表现在上表面。所以,特征识别的第1步即要判断出工件的上表面。首先判断初等平面的方位属性的第一个方向D,再根据高级面的方向属性(布尔值)对D进行取正或取反,即得到高级面的法线方向。若该方向与Z正向一致,则该高级面为待加工表面,亦即特征存在的表面。2.1.2特征的判断特征的判断建立在待加工表面已确定的基础上,以平底盲孔特征的判断为例,说明内部特征的识别方法。首先判断高级面的面边界属性,如果该属性既包含内面边界(FACE_BOUND),又包含面外部边界(FACE_OUTER_BOUND),那么该面上必定具有内部特征,而该面边界则是内部特征的主要轮廓,一般为特征的上表面。按照图4所示的逻辑关系顺序向下查找,如果边曲线的始顶点和终顶点为同一点,且边曲线的曲线属性为圆(CIRCLE),则可判断出此处存在孔特征,且该面为孔的上表面。STEP-NC中规定,所有的加工特征都是通过去除材料获得,因此必须具有一个深度的属性。而该深度属性在AP203文件中也可以得到,即通过查找与上面所提到的面边界所对应的另一个面边界,亦即内部特征的下表面。值得注意的是,内部特征的上表面的面边界为内面边界,而下表面的面边界为外面边界。因此判断下表面的方法为仍然按照图XXXXXX所示的逻辑关系顺序查找,如果一个面外部边界下的边曲线的始顶点和终顶点为同一点,边曲线的曲线属性为圆,并且该圆圆心的X和Y坐标与孔上表面的圆心坐标相同,则可判断该面为盲孔特征的下表面,且该面的Z坐标值即为STEP-NC所规定的深度。2.2实体属性设置顺序对于一个STEP-NC程序,要想获取程序中的信息,应该由程序的入口工程所在行开始,顺序读取工作计划,工步,特征和操作等8。由于STEP-NC程序的实体属性是相互关联,层层嵌套的,因此在STEP-NC程序自动生成中,采用与读取程序完全相反的顺序。先设置特征,再设置相应的操作,然后将特征和操作进行规划,从而得出工步信息,最后配置工作计划和工程,生成完整的STEP-NC程序。值得注意的是,由于工件的信息在工程、工件坐标系和特征的程序行中均用到,因此工件的信息应在特征参数之前进行设置。在设置特征参数之前,还应该对各个坐标系的参数进行设置。STEP-NC程序生成过程中实体属性的设置顺序如图6所示。图6 STEP-NC程序生成过程中实体属性的设置顺序2.3STEP-NC程序行号的设置方法目前常见的STEP-NC程序行号都是以整数1开始依次递增,虽可读性尚可,但条理性较差。本文将一个STEP-NC程序分为4个部分:(1)工件及坐标系;(2)工程、工作计划及工步;(3)特征;(4)操作。每个部分单独编号,每个行号均用4位整数表示。其中工件及坐标系部分的行号均以“1”开头,“10XX”表示与工件信息相关的程序,“11XX”表示工件坐标系,“12XX”表示安装坐标系;工程、工作计划及工步的行号均以“2”开头,其中“2201”表示第一个工步,“2202”表示第二个工步,依此类推;特征程序行行号均以“3”开头,其中“31XX”表示第一个特征,“32XX”表示第二个特征,依此类推;同理,操作程序行行号以“4”开头,“41XX”表示第一个操作,“42XX”表示第二个操作,依此类推。这样设置行号的好处是可读性强,更具有条理性,一个STEP-NC程序所包含的任务、特征和操作等信息一目了然。3实例验证3.1可行性验证为了验证所开发的STEP-NC程序生成器的可行性,本文在UG NX4环境下,对包括一个平面、孔和型腔和工件进行实体造型,输出AP203文件。然后将该文件读入STEP-NC程序生成器,获得其中的特征信息,配置工件、坐标系、操作和工步等属性参数,生成的符合ISO14649标准的STEP-NC程序(仅列出数据段部分代码)如图7所示。#2000=PROJECT(,#2100,(#1000),$,$,$);/工程#2100=WORKPLAN(,(#2201),$,#1300,$);/工作计划#2201=MACHINING_WORKINGSTEP(WS FINISH PLANAR FACE1,#1100,#3100,#4100,$);/工步#1000=WORKPIECE(SIMPLE WORKPIECE,#1001,0.010,$,$,$,(#1002,#1003,#1004,#1005);/工件#1100=ELEMENTARY_SURFACE(SECURITY PLANE,#1101);/安全面#1200=WORKPIECE_SETUP(#1000,#1201,$,$,( );/工件坐标系#1300=SETUP(SETUP1,#1301,#1100,(1200);/安装坐标系#3100=PLANAR_FACE(PLANAR FACE1,#1000,(#4100),#3101,#3102,#3103,#3104,$,();/平面特征#4100=PLANE_FINISH_MILLING($,$,FINISH PLANAR FACE1,10.000,$,#4101,#4102,#4103,$,#4104,#4105,#4106,2.500,$);/平面精加工操作图7 基于STEP-NC生成器生成的STEP-NC程序3.2正确性验证为了验证STEP-NC程序生成器的正确性,本文基于Visual C+和OpenGL建立了STEP-NC铣削仿真系统,将所生成的STEP-NC程序输入到仿真系统进行切削加工仿真。本文所生成的STEP-NC程序中,平面操作采用平面精铣(Plane finish milling),加工策略采用双向铣削(Bidirectional milling);型腔操作采用底侧精铣(Bottom and side finish milling),加工策略采用轮廓平行铣削(Contour parallel milling);盲孔的操作采用钻削。STEP-NC铣削仿真系统所生成的刀轨如图8所示,工件的实体图如图9所示。 a) 平面操作 b)孔和型腔操作图8 STEP-NC铣削仿真系统所生成的刀轨 a) UG NX4造型结果 b) STEP-NC铣削仿真系统的仿真结果图9 工件实体图4结论本文按照符合ISO14649标准的STEP-NC程序文件结构,开发了模块化的STEP-NC程序生成器,并结合所建立STEP-NC铣削仿真系统对所生成的STEP-NC程序进行仿真验证。仿真试验结果表明:所开发的STEP-NC程序生成器能够读取AP203文件、提取其中的几何信息并进行特征识别,对STEP-NC所要求的操作、工步和工作计划等属性进行设置后,能够正确生成完整的符合ISO14649标准的STEP-NC程序,是正确可行的。所提出的STEP-NC程序生成方法对于STEP-NC在数控系统中的应用具有一定的参考价值。参考文献1 HARDWICK M, LOFFREDO D. STEP into NC. Manufacturing Engineering. 2001, 126(1): 38-50.2 SUH S H, LEE B E, CHUNG D H, et al. Architecture and implementation of a shop-floor programming system for STEP-compliant CNCJ. Computer-Aided Design, 2003, 35(12): 1069-1083.3 XU X W, HE Q. Striving for a total integration of CAD, CAPP, CAM and CNCJ. Robotics and Computer-Integrated Manufacturing,2004,20(2):101-109.4 LIU Tao, WANG Yongzhang, FU Hongya. The research of open numerical control system based on STEP-NCJ. Machine Tool & Hydraulics, 2006,13(3):78-80(in Chinese). 刘涛, 王永章, 富宏亚. 基于STEP-NC开放式数控系统的研究. 机床与液压, 2006,13(3):78-805 WANG Jun, LI liang, SUN Jun, et al. The implementing method research based on the STEP-NCJ. Journal of Shenyang Jianzhu University (Natural Science), 2006,22(4):681-685 (in Chinese).王军,李亮,孙军等.基于STEP-NC 数控程序生成方法研究. 沈阳建筑大学学报(自然科学版),2006,22(4):681-6856 China State Bureau of Quality and Technical Supervision. Industrial automation systems and integration Product data representation and exchange Part 42:Integrated generic resources: Geometric and topological representationS. Beijing: Standards Press of China,1986(in Chinese). 国家质量技术监督局. GB/T 16656.42-1998工业自动化系统和集成 产品数据表达与交换 第42部分:集成通用资源:几何与拓扑表达S. 北京:中国标准出版社,1986.7 DU Juan, TIAN Xitian, ZHU Mingquan, et al. Integration technology of CAD/CAPP/CAM/ CNC system based on STEP & STEP-NCJ. Computer Integrated Manufacturing Systems, 2005,11(4):487-491(in Chinese). 杜鹃, 田锡天, 朱名铨等. 基于STEP和STEP-NC的CAD/CAPP/CAM/CNC系统集成技术研究. 计算机集成制造系统,2005,11(4):487-491.8 LIU Tao, WANG Yongzhang, FU Hongya. STEP-NC controller and its toolpath planning methodJ. Computer Integrated Manufacturing Systems,2006,12(9):1490-1494(in Chinese). 刘涛, 王永章, 富宏亚. STEP-NC控制器及其刀轨规划方法研究. 计算机集成制造系统,2006,12(9):1490-1494STEP-NC program generator based on ISO14649Abstract: To achieve automation generation of STEP-NC(the STandard for the Exchange of Product model data compliant Numerical

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论