欢迎来到天天文库
浏览记录
ID:38711225
大小:343.50 KB
页数:8页
时间:2019-06-18
《基于ISO14649标准的STEP-NC程序生成器》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于ISO14649标准的STEP-NC程序生成器摘要:为了实现与产品模型数据交换标准兼容的数控数据接口(theSTandardfortheExchangeofProductmodeldata–compliantNumericalControldatainterface,STEP-NC)程序的自动生成,开发了STEP-NC程序生成器。首先介绍了程序生成器的工作原理,将程序生成器按照逻辑关系分为6个功能模块,阐述了各个模块的功能和实现方法。详细论述了STEP-NC程序生成器实现中的3项关键技术:基于AP203文件的特征识别方法、实体属性设置顺序
2、和STEP-NC程序行号的设置方法。最后,结合一个包含平面、孔和型腔特征的AP203文件,利用所开发的STEP-NC程序生成器生成符合ISO14649标准的完整的STEP-NC程序,并通过STEP-NC铣削仿真系统对所生成的程序进行切削仿真,仿真结果表明:所开发的STEP-NC程序生成器是正确可行的。关键词:与STEP兼容的数控数据接口;程序生成器;模块化结构;特征识别0引言与产品模型数据交换标准兼容的数控数据接口(theSTandardfortheExchangeofProductmodeldata–compliantNumericalCo
3、ntroldatainterface,STEP-NC)是计算机辅助设计(ComputerAidedDesign,CAD)/计算机辅助制造(ComputerAidedManufacturing,CAM)与CNC之间进行数据交换的新型数据模型,它采用面向对象的方式,克服了传统G代码的诸多缺点,成为现如今数控领域的研究热点[1-3]。STEP-NC程序包含了工件全生命周期需要的所有数据,涉及到了ISO10303、ISO286和ISO841等多个国际标准,而且程序中的各个实体是相互关联、层层嵌套的[4],因此,STEP-NC程序的手工编制是非常复杂的
4、。国内一些作者对于STEP-NC程序的生成进行了一些探索,但大多是在国外ST-Developer软件上进行的二次开发[5]。针对于此,本文开发了基于ISO14649标准的STEP-NC程序生成器,可以读取AP203文件,识别出特征信息,再设置相关的工件、操作、坐标系、工步、工作计划和工程等属性,最后生成完整的符合ISO14649标准的STEP-NC程序。这对于STEP-NC在数控系统中的应用会起到有益的作用。1STEP-NC程序生成器的工作原理STEP-NC程序生成器的本质任务是读取CAD软件生成的AP203文件,根据其中包含的工件几何信息,
5、识别出其中的特征信息,再设置相关的工件、操作、坐标系、工步、工作计划和工程等属性,最后生成完整的符合ISO14649标准的STEP-NC程序。AP203文件仅包含工件的几何描述信息,而STEP-NC程序中需要的是特征信息;STEP-NC程序包含了工件全生命周期需要的所有数据,而且程序中的各个实体是相互关联、层层嵌套的。以上两点决定了STEP-NC程序的生成过程是非常复杂的。本文开发的STEP-NC程序生成器分为译码、基本参数设置、特征设置、操作规划、任务设置和输出等6个功能模块,其模块化结构如图1所示。8图1STEP-NC程序生成器的模块化结
6、构1.1译码模块AP203文件表达了零件的几何信息,采用的是体-面-线-点的层层细化的方式,详细的表达了零件所具备的几何元素的信息,但并未表达出零件所具有的特征,因此需要对AP203文件进行特征识别。译码模块的功能就是对AP203文件进行译码,从而得到文件中所包含的特征及其详细参数。AP203文件译码模块的工作原理如图2所示。图2AP203文件译码模块的工作原理1.1.1输入子模块AP203文件与基于ISO14649标准的STEP-NC文件一样,都是采用符合ISO13003-21标准的文件结构,即文件包括头段和数据段两部分。因头段仅列出了文件
7、名、作者、组织、单位等一般信息,因此本文的研究仅针对于数据段。AP203文件的数据段的程序每行均以“#”开头,以“;”结束。该模块的功能是建立一个vector型变量,将所输入的AP203文件程序的每个程序行以“#”开头,以“;”为间隔符顺序读入vector中。全部程序行读取完毕后,vector中的每个元素均代表AP203程序的一个程序行。1.1.2信息提取子模块8该模块的功能是将输入模块所得到的所有AP203程序行按统一结构进行分解整理。由于每个程序行均代表一个实体,而每个实体都具有相同的格式,即包括实体ID、实体名称和实体属
8、性列表三个部分,因此在该模块中设计一个结构对程序行进行分解整理,该结构如图3所示。typedefstruct{string_lineNum;//程序行号,对应实体I
此文档下载收益归作者所有