APP下载

STEP-NC 程序结构分析及信息提取

2013-04-09吕德凯钟建琳陈秀梅李树春

机械制造与自动化 2013年2期
关键词:工件实体程序

吕德凯,钟建琳,陈秀梅,李树春

(北京信息科技大学 机电学院,北京 100192)

0 引言

长期以来,数控加工一直采用基于ISO6983[1](G/M代码)标准的编程方式,这种标准规定下的数控加工程序是通过指定机床轴的运动,实现加工。随着CAD/CAM 系统和CNC 系统性能的提高,ISO6983 协议日益暴露出其不可克服的缺点[2],如G/M 代码只定义了机床的运动和开关动作,不包含产品数据的其他信息,现场编程和修改非常困难,厂商之间不同控制系统不兼容等等。这已成为制约数控技术智能化、集成化、网络化发展的“瓶颈”。

国际标准化组织ISO 于1984 年提出的产品数据的交换标准STEP(standard exchange of product data model),是一种不依赖具体系统,能够描述产品全生命周期数据的中性机制,在产品的全生命周期做到信息共享。STEP 标准定义了CAD 设计数据标准(包括几何工件数据、设计特征),STEP-NC 标准通过定义CAD 工艺规划与NC 控制系统的接口,将STEP 数据格式扩展到制造领域,即STEPNC 是用于为数控(NC)设备定义数据而扩充的STEP 标准。与采用G/M 代码编写的程序相比,基于STEP-NC 的程序可大幅度地减少传统的CAD/CAM 系统加工零件的时间,消除了在加工制造过程中所需的后处理器,并且能够支持将在今后出现的更快、更安全、更加智能的加工设备。

1 基于STEP-NC 的程序结构分析

STEP-NC 程序文件按照ISO-10303-21 标准规定的文件格式编写,文件以“ISO-10303-21;”开始,以“END-ISO-10303-21;”结束。其文件格式也同STEP 一样,从结构上主要分为:文件头和数据段两部分。1)头文件用关键词“HEADER”标注,主要用来说明文件描述、文件名、文件模式等信息;2)数据段用关键词“DATA”标注,是程序的主体部分,包含了加工零件所需的有关几何形状、特征以及制造任务的所有信息。每个STEP-NC 程序的数据段都以工程(PROJECT)为切入点,并且规定每个STEP-NC 的加工程序中有且只有一个工程。程序以工程为入口,自上而下继承开来,描述了工件状况和主要工作计划,接着具体分成三部分进行描述:加工计划与可执行操作(workplan and executables)、几何信息描述(geometry description)、工艺信息描述(technology description)。STEP-NC 程序结构如图1 所示。

2 STEP-NC 数控程序的信息提取方法

STEP-NC 文件是用EXPRESS 语言来描述的,但EXPRESS 本身并不是计算机编程语言,用它定义的数据模型,不能直接进行程序设计。因此,信息提取是STEP-NC实现首要解决的关键技术问题,STEP-NC 研究中,提出了多种信息提取方法,如可以使用STIX(STEP Index)库中的函数处理文件数据。

图1 STEP-NC 程序结构图

本文从STEP-NC 程序的结构特点分析信息提取方法,将采用EXPRESS 语言描述的实体、类型、模式等映射到程序设计语言。程序的关键部分数据段以“DATA”开始,按“实体标识=实体名(属性值);”的格式列出,如“#2=WORKPLAN(’’,(#10,#11),&);”,其中“#2”是实体标识;“WORKPLAN”即实体名来源于EXPRESS 语言定义,并且在STEP-NC 中都有唯一的实体标识;“(’’,(#10,#11),&)”属性值可以是简单数据支或结构类型数据,也可以是嵌入式的实体,属性之间有严格的顺序,多个属性之间用“,”分隔。

STEP-NC 程序中的结构实体主要包括:工程(PROJECT),工作计划(WORKPLAN),工件(WORKPIECE),加工步骤(WORKSTEP),工艺描述、几何特征。工程(PROJECT)包含工作计划和工件信息,是程序起点;工作计划(WORKPLAN)包含可执行操作,可执行操作启动机床动作,有三类可执行操作:加工步骤(WORKSTEP),程序结构和NC 功能。STEP-NC 用可执行操作的顺序给出制造操作的执行顺序;加工步骤代表制造任务的主要成分,每个加工步骤描述用一种切削刀具的一个单一制造操作,包含零件的几何特征和制造特征;NC 功能包括工件坐标系和安全面设定、程序停止和选择停机等辅助命令。

因此,以实体定义为基础的STEP-NC 程序,通过实体属性与限制的标识引用,将各实体联系起来,最终达到描述产品信息的目的。因此,信息提取的基本内容与原则即为将实体标识、实体名、实体属性按顺序提取并保存。

3 STEP-NC 程序信息提取映射实例

STEP-NC 程序文件是用EXPRESS 语言描述的,文件的信息都是以实体为核心来定义的。信息提取就是将程序中以实体及其属性来描述的产品所有信息提取出来,并映射为计算机能直接运行的语言。因此,本文选择同样是面向对象的C++语言进行映射,STEP-NC 程序中实体与C++的映射对应关系如图2 所示,信息提取过程如图3 所示。

3.1 头文件信息提取映射

STEP-NC 头文件主要描述了程序的一些通用信息,这部分包含了三个实体:文件描述、文件名、文件的模式。这三个实体名的属性值中包含了文件名、编程者、日期和注释等信息。通过对实例头文件信息的提取可得到如图4所示的结果。

图4 头文件信息提取图

3.2 数据段信息提取映射

数据段部分是整个STEP-NC 程序的主体部分,包含了加工所需的加工计划、特征信息、工艺信息、刀具信息等各种信息。它们之间的关系主要是实体嵌套引用,可以采用序列树形式显示。

STEP-NC 程序文件数据段部分的标准格式为“#整形数字标识符=关键词(属性1,属性2,(聚合性属性31,聚合性属性32,...),...);”。该实例程序包含了一个主要工作计划#2 和工件#4,如“#1=PROJECT ('EXECUTE EXAMPLE1',#2,(#4),$,$,$);”表示实体,“#2=WORKPLAN ('MAIN WORKPLAN',(#10,#11,#12,#13,#14),$,#8,$);”表示工作计划、可执行对象顺序(#10,#11,#12,#13,#14),“#4=WORKPIECE('SIMPLE WORKPIECE',#6,0.010,$,$,$,(#66,#67,#68,#69));”表示工件、零件材料#6、零件公差0.010、工件表面夹具设备的位置(#66,#67,#68,#69)。实体之间是遍历引用的关系,由此可得到如下的程序结构树如图5 所示。

图5 程序结构树

4 结语

STEP-NC 标准的出现对现有数控技术发展是一项巨大的进步,不仅能够完全取代G/M 代码的编程方式,而且还有其固有的优势。但当今国际上关于STEP-NC 的研究还处于起步阶段,各项标准制定需完善。程序信息提取是STEP-NC 数控系统的核心部分,其功能是对STEP-NC 程序文件进行读取、分析、对加工所需的信息进行提取,并依据各实体的关系将其映射为计算机能识别的语言。本文给出了STEP-NC 程序信息提取的一种方法,并验证了其可行性,为今后数控系统的开发奠定了基础。

[1]朱晓明,富宏亚,王永章,等.STEP-NC 数控系统若干关键实现技术研究[J].计算机集成制造系统,2009(6):1122-1124.

[2]夏链,胡静,赵韩,M Wosnik,P Klemm.基于STEP-NC 的数控新标准[J].合肥工业大学学报(自然科学版),2008(1):134-134.

[3]陈伟雄,姚锡凡.基于STEP-NC 的CAD/CAPP/CNC 系统集成及应用研究[J].机械设计与制造,2010(1):79-80.

[4]张礼兵,吴婷.基于STEP-NC 数控编程方法的研究[J].煤矿机械,2009(12):207-209.

[5]孙军,张晓磊,王军,等.基于STEP-NC 车削解释器及刀具轨迹生成器的研究[J].机械设计与制造,2009(10):246-248.

猜你喜欢

工件实体程序
前海自贸区:金融服务实体
考虑非线性误差的五轴工件安装位置优化
试论我国未决羁押程序的立法完善
三坐标在工件测绘中的应用技巧
“程序猿”的生活什么样
实体的可感部分与实体——兼论亚里士多德分析实体的两种模式
两会进行时:紧扣实体经济“钉钉子”
振兴实体经济地方如何“钉钉子”
英国与欧盟正式启动“离婚”程序程序
创卫暗访程序有待改进