【请登录】【免费注册】

首页新闻技术产品供应二手培训展会物流维修求购招商招标招聘企业

技术

搜索
技术文章机械知识技术技巧论文试题维修知识招投标知识
您的位置:盘古机械网>技术文章>机械知识>详情

基于XML的CAPP模板定制研究

时间:2008年11月01日浏览:853次收藏分享:
CAPP的研究与开发为工艺设计提供了有效的辅助工具,是衔接设计过程和制造过程的关键。在工艺设计中,工艺卡片是指导工人完成现场加上的依据:不同企业的工艺卡片不仅种类繁多,而且各不相同;同时随着企业的发展、产品类型的丰富以及工艺水平的进步,工艺卡片的格式还在不断的变化。传统的CAPP交互技术已不能满足这种格式变换的要求,因此,制定适合企业的工艺卡片格式,并能够随着企业的发展对这些文件格式进行方便灵活的修改,就成了CAPP系统应具有的一个非常重要的功能,也是日前CAPP系统研究的重要内容。

针对以上问题,本文提出一种基于XML的模板定制技术,允许工艺人员根据自己需要的格式绘制出相应的工艺卡片,并能够对生成的工艺模板进行调整和修改,从而为同一类型的工艺文件提供了一致的交互平台,也为实现CAPP系统的通用性和实用性打下重要基础。

1 模板组成对象分析

由于工艺卡片是工艺人员工作的主要对象,因此CAPP系统必须能够实现工艺卡片的计算机描述,即所谓的"工艺文件模板"。

模板是对工艺文件格式的抽象,因此在确定模板的组成对象之前,必须对工艺文件进行深人的分析。尽管CAPP工艺卡片类型繁多,但对工艺卡片进行分析后可以看出,卡片是由一系列单元格组成的。单元格可以分为固定格、变量格、对象格和循环格四种。包含单位名称等固定内容的单元格定义为固定格;包含产品名称、产品工号、零件名称、零件图号等内容,随产品、零件的不同而变化的单元格定义为变量格;包含工序图或其它复杂数据的单元格定义为对象格;包含工序、工步等多行记录内容的单元格定义为循环格。固定格的内容在卡片设计时确定,变量格、对象格和循环格的内容在工艺设计时由用户填写。在设计卡片时用户可以对每一个单元格进行定义。

以锻压工艺卡为例,如图1所示,说明工艺文件模板的元素分解。

工艺文件模板的元素分解

由于每张工艺卡片均可以看成是方框型单元格的集合,按照区域分治的原则对其进行抽象,可以将一张卡片划分成五个区域:表头区、表中区、版本区、编校区和附件区.

(1)表中区是卡片中需要填人多行数据的,如工序部;(2)版本区包括版本、修订号、编号和修改栏等;(3)编校区包括编制、校对、标审、审核等;(4)附件区是需要插人图片的单元格,如工艺简图部分和热处理规范部分;(5)不属于以上四个区域的单元格就归为表头区,通常包括产品名称、产品工作号、部件名称和部件图号等。

经过这样的抽象以后,在CAPP系统中,并不存在任何一张真正意义上的工艺卡片,也不以文件的形式将任何已生成好的工艺卡片保存在磁盘上,所有的数据皆存储于后台数据库中,包括工艺库、资源库、报表模板库以及其它各种共享数据库。结合一定的编码规则,将一张张工艺卡片与其所需的产品数据及工艺数据一一关联起来,从而形成"虚拟工艺卡片",并将其存储于虚拟上艺卡片库中。当需要显示或输出工艺卡片时,系统自动激活所有的链接关系,并将数据填人报表模板的相应栏位中,从而显示或打印出真正的工艺文档。

"虚拟工艺卡片"的概念充分体现了数据库技术的优越性,后台数据库中的各种数据既互相关联又相互独立。当某一卡片的格式改变时,系统会自动更新与该模板有关的所有虚拟工艺文件,这种改变只会影响到数据库中的某一张二维表,而不会影响其它任何数据。同时"虚拟工艺卡片"极大地节省了硬盘空间,而且不存在新旧工艺卡片之间的转换问题,避免了大量的重复劳动.

2 模板的数据描述

XML使用文档来表现实体,而文档中的元素代表实体的实例。文档中的每一个标记都是一个新元素(element )的开头。一个XML元素包含一个起始标记,一个结束标记和元素的内容。基于工艺模板的信息分解可知,工艺文件模板可以看成是一个实体,而模板的各种元素可看作是实体的一系列实例,因此可以利用XML技术,设计一套描述工艺卡片表格的通用XML词汇表,在此基础上,用户可以基于这套词汇表和DTD灵活构建所需工艺文件模板。构建好的工艺模板(XML文档)经过表格生成引擎的解析处理之后,展现在客户端浏览器。

针对工艺长片元数据描述卡片内容区的单元格,可以用< Table >元素表示循环格,row和col分别表示行数和列数,x1,y1表示方格的左上角坐标,x2,y2表示方格的右下角坐标,type表示该变量格的布局方式。< Rcet>元素定义列标题,属性name表示字段名,其了元素定义固定格中的一行文字,font , size, mid分别表示文字的字体、大小及位居方式。如图2所示的循环格有3行3列,左上角坐标为(240,61),右下角坐标为(282,82).

由于工艺卡片类型繁多,开发CAPP系统时要求建立工艺卡片之间的关系,以方便检索及与其它系统集成,因此需要统一定义工艺模板的数据字典,在新建模板时以此为依据进行数据关联。

3基于XML的模板定制技术

由模板组成对象分析可知,模板定制实际上就是将一种类型的工艺卡片格式分解成固定格、变量格、对象格、循环格等模板子元素,并借助交互式手段分别生成的过程,因此有必要对各子元素的生成模式及属性定义进行分析。

3.1模板子元素生成模式分析

由于模板被看作是一个XML文档实体,因此生成模板的过程实际上就是新建一个XML文档的过程。而新建模板子元素就对应为创建XML文档的一个节点。

为创建一个新的文档对象,必须建立一个新的Msxml2.DOMDocument范例,相应得C++代码如下:

在创建DOMDocument对象之后,可以为不同类型的语法分析行为和处理行为设置标记,装载XML文档,在文档内部建立新节点以创建不同的模板子元素。

3.2对象属性的定义

为了定制各子元素在工艺模板中的位置和其他一些必要的信息,需要对各子元素对象赋予相应的属性。XML提供的属性操作方法来自IXMLDOMElement,可以通过IXMLDOMEIement的setAttribute方法设置其属性。对象的属性分析如下:
(1)各对象的公共属性。由于各子元素为一系列的单元格,因此都包含表格坐标值、线形等公共属性。此外还需要对各单元格的卡片区域属性进行设置。
(2)固定格。固定格中的内容在表格设计时已经确定,为了实现与数据库的关联,需要设置字段名属性,另外它需要包含"字体"子元素,用来设置文字的属性。
(3)变量格。变量格中的内容是由用户填写的,需要设置表格的布局方式,它包含固定格子元素。
(4)循环格。循环格也包含固定格子元素。另外由于其含有多行记录,因此除了设置表格的布局方式外,还需要对行列属性进行设置。
(5)对象格。对象格是填写工序图或其它复杂数据的单元格,需要对图形或其他复杂数据的来源属性进行设置。

模板各对象生成之后,模板定制的工作基本完成了。构建好的工艺模板以XML文档的形式存储。再次打开该模板时,只要对相应的XML文档进行解析处理,就可以将原工艺卡片展现在客户端浏览器上。

3.3模板格式的交互式修改

当模板各对象生成之后,有时其格式还不能满足要求,需要对其做一系列的调整才能最终形成一个格式良好的工艺模板。这种修改包括表格位置、表格线形、字段名称、固定格文字内容属性等的修改。

在进行表格修改时,只要选中一个单元格,就将弹出相应的表格属性设置对话框,用户可以对其属性进行修改(如图3所示)。

用户点击"修改"后,所做的修改将被保存到相应的XML文档中,同时界面即刻被刷新,显示为修改后的模板内容。

4 结论

通过对工艺卡片的分析,将工艺模板抽象为由固定格、变量格、对象格和循环格组成的实体,借助交互式手段分别生成其子元素,并将构建好的工艺模板保存为XML文档,从而完成了模板定制过程。实践证明,这种交互式模板定制技术对于实现CAPP系统的通用性和商品化具有重要的意义。

热门文章

业务咨询:932174181   媒体合作:2279387437    24小时服务热线:15136468001 盘古机械网 - 全面、科学的机械行业免费发布信息网站 Copyright 2017 PGJXO.COM 豫ICP备12019803号