论文部分内容阅读
摘要:为解决异构CAD系统集成及协同装配设计过程中的信息共享问题,在分析装配特征语义信息的基础上,提出了面向协同设计的三元装配语义模型,提出采用RDF/XML表达装配语义元模型,并讨论了基于XML的数据集成关键技术。在文章的最后通过具体的CAD系统实现协同设计过程实例,验证了该模型及实现方法的有效性和可行性。
关键词:协同装配设计;信息共享;装配语义模型;可扩展标记语言
0 引言
CSCW(计算机支持的协同工作)通过提供共享资源的访问接口,支持群体成员在共享环境下协同工作完成同一设计任务。其底层支撑技术为计算机技术、多媒体技术和网络通信技术。协同装配设计是协同设计研究的重要内容,它支持异地团队在共享工作空间进行零部件的协同装配活动。这里装配设计信息的共享是关键。
为了解决异构CAD之间以及CAD与CAM、CAPP等系统间产品模型信息的数据交换,先后出现了很多种中性数据交换格式,如IGES、PDES、STEP等。协同环境下的数据共享采用STEP标准是一种理想的办法。在Web领域为解决异地数据共享产生了XML标准,很多学者将XML标准应用到CAD领域。张帆等提出XML的可重构装配模型,将装配结构数据序列化为XML文件,通过XML节点重构来支持装配模型的重构,但没有将装配结构与约束关系分离,因此难于支持协同设计过程。Chen.Li等建立了基于ACIS的协同装配设计系统,服务器端装配模型采用STEP标准,客户端采用面片模型,并且在设计过程中建立一系列协同规则,以协调、同步用户操作,但面片模型无法支持协同装配特征设计,用户也无法对约束关系进行编辑。
本文在协同装配设计环境下,对装配体的数据结构进行了分析,并定义了装配语义,建立了一个基于RDF/XML协同装配设计模型,详细讨论了协同装配设计模型的语义映射方式。最后在具体的CAD系统上建立了原型系统,验证了该方法的可行性,为实现协同装配设计奠定了基础。
1 装配特征语义建模
1.1 装配特征模型
1.1.1 装配特征信息
为完整表达一个装配体,其装配模型必须包含以下信息:装配空间,装配结构,装配约束。其中装配约束(也称配合关系)是装配模型中最复杂的部分,装配约束的表达方式关系到整个装配模型的表达。上述概念我们分别阐述如下:
装配空间指整个装配体绝对坐标的集合。当添加装配组件时,组件的绝对坐标将被转换为本地装配空间中的相对坐标。这个相对位置由坐标原点加上坐标轴矢量决定。
装配结构常用树型结构组织装配体的组件和零件。一个装配结构中仅存在—个装配树,树根惟一,叶子节点不能交叉。
装配约束是协同装配设计模型的关键部分,包含了零件信息,装配特征、装配方向、约束类型、装配参数等信息。零件与零件间的装配约束(也称配合关系)是由一个或多个约束组成的,而且这些组成配合关系的约束之间不能存在几何及逻辑关系上的矛盾,如约束不能循环定义。
1.1.2 装配约束及其数据结构
为使装配信息适合协同设计要求,在参考目前CAD系统中装配模型数据结构的基础上,本文提出了一个适合异构CAD系统的统一的装配约束数据结构。首先介绍相关的基本概念:
(1)基准件与装配件
零件A装配到零件B上,A称为装配件,B称为基准件;当添加一个A到B的装配约束时,基准件B的装配空间不变,而装配件A及其所有子装配将通过坐标变换生成新的装配空间。
(2)约束娄型(Mate type)
常用的装配约束类型有:相对(贴合)、对齐、成角度、距离、平行、垂直、同心、相切等。
要实现零部件之间的有效约束,必须填充如下数据结构:
1.2 装配特征语义表达
传统的中性CAD数据格式(IGES、STEP等),或者基于网格的数据格式(VRML),在进行数据传输及数据交换过程中必然带来设计信息的丢失;而基于特征的装配语义模型以对象的方式存储装配相关信息,拓扑关系容易维护,减少了信息的丢失。从广义角度而言,装配语义是从设计者的角grit设计过程,设计概念的抽象表达,其目的是为了利于知识的检索与重用,具体到装配体,装配语义特征模型与传统的装配模型本质的差别是将二元关系模型扩充到三元。传统的类似于E-R图描述的装配模型只能表达零件的组成关系,也无法表达装配顺序。而语义描述的是主谓宾结构的三元关系,被装配件的装配特征是主语,谓语是装配约束,基准件的装配特征充当宾语。采用三元关系可以将装配体的宾语结合新的谓语和宾语形成新的语义关系,通过层层扩展,构成完整的装配语义模型。而装配参数,装配顺序等工程信息可以作为节点属性包含在语义模型中。简单的装配模型可以表示为图2所示的XML/RDF模型:
在企业级协同环境下,不同专业、不同的领域的设计人员,所使用的CAD系统不尽相同;异构CAD系统对于同一类约束的处理方式是不同的,数据存储格式也不尽相同,例如,在UG中螺纹连接等同于同心约束,SolidWorks则把螺纹连接当作一种约束类型单独处理。而语义表达的设计意图是相同的,与平台无关,因此装配语义实现了异构CAD系统向同一种装配模型的映射,这种映射关系是多对一的。
传统的装配建模大多在几何层对特征进行操作。从装配语义到几何约束,其间经过装配语义的抽象与提取,对常用的配合、联接方式的分类,如螺钉联接、螺栓连接等。其中每种连接类型又可分为几种小类型,如键连接可分为花键、平键连接等,装配关系允许组合与分解。对于特殊的装配关系,允许用户自定义(一种或多种基本约束类型的组合),例如齿轮啮合,可以分解为两个齿轮轴平行约束加齿面贴合约束;反之,多个基本约束类型也可以组成复杂的装配关系。通过以上两种方式的扩充,基本可以满足常见约束类型的抽象表达。
2 基于RDF,XML的装配语义建模
2.1 RDF/XML简介
XML具有适于异构应用间的数据共享、数据检索和提供多语种支持等优点。XML已经成为目前多数信息集成框架的数据传输载体方案的首选。
为提高XML的语义描述能力,RDF(resource Description Framework)标准应运而生。RDF提出简单的模型来表示任意类型的数据。这个数据类型由节点和节点之间带有标记的连接弧所组成。节点表示资源(对象),弧表示资源的属性。
2.2 装配语义扩展
XML标记给文档定义带来了灵活性,但机器无法理解标签下存放内容的具体含义。在协同装配建模过程中,装配语义模型从面向对象角度对约束关系进行抽象,将装配关系映射成具有属性和操作的对象,辅助RDF属性,可以描述任意装配节点的属性信息;装配层次模型属于半结构化的数据,采用XML 描述更为合适。
RDF装配模型中的每个节点可以用零件名称惟一标识,其包含的装配特征可以用全局分配的ID号惟一标识,特征与特征之间的关系(谓语动词)用装配约束表示,约束参数可以描述为对象所包含的属性。在协同装配设计环境中,约束关系可能由不同的用户编辑,并将这种变化抽象为零件对象约束关系的迁移,通过XML节点的重构加以实现。图3所示为通过装配语义本体建立的装配语义模型层次图。
RDF本身不受具体语法表示的限制,但仍然需要一种合适的语义格式来实现在协同装配设计上的应用。RDF Schema(RDFS)通过对象建模的方式来定义装配语义词汇,将装配特征、约束关系转化成RDFS中的类和属性。
2.3 基于XML/RDF的装配语义模型
通过在XML中引用RDF,可以将XML的解析过程与解释过程相结合。举例:提供—个资源的URL,利用ModeLGetResourec方法可以获取该资源对应的对象。也就是说,RDF可以帮助解析器(如传统的XMLDOM)在解析XML的同时,获得XML所要表达的对象,并可以根据它们的关系(schema)进行推理,从而将基于装配属性的检索推进到基于对象的检索。
目前XML已经成为通用的Web数据表示标准,有大量的标准应用接口用于信息的读取、处理,因此将RDF序列化为XML可以使RDF获得更好的Web应用特性,并使得RDF数据可以像XML数据一样的容易使用、传输和存储。
基于特征的协同装配设计模型,它封装了如下装配信息:部分装配特征、父零件(基准件)、子零件(装配件)、自由度、位置信息(指零件在装配空间的局部坐标原点及坐标轴方向,以及转换矩阵)。
3 装配语义模型的应用与验证
为了验证该装配语义模型的可行性,笔者建立了协同装配设计原型系统来模拟协同环境,其装配体的协同建模过程如下:
步骤一:设计者分别从服务器下载主装配模型(单独的XML文件)到客户端,读取XML文件中的零部件名称,并从服务器下载所有三维实体文件(pn格式);
步骤二:系统解析XML文件,读取约束信息,填充装配约束结构;
步骤三:求解约束,将约束加载到装配体上,进行坐标变换,自动更新客户端显示(若系统不能辨识,需设计者交互);
步骤四:添加一个零部件,并且添加约束,这时其他客户端还没有实时更新;
步骤五:更新主装配模型,上传新增加的实体文件到服务器,向服务器发送同步消息;
步骤六:更新其他客户端,后台自动下载新增实体文件,显示更改后的装配体。
以上几步中,约束求解是较难的一步,涉及较多的CAD曲线、曲面算法及人工智能算法。系统采用了UG NX2装配模块的功能,进行了二次开发,调用UG装配函数,获取约束求解结果后再进行坐标变换,更新装配体模型,显示到工作界面上。
4 结束语
协同装配设计模型涉及的数据结构复杂且包含特征信息繁多的半结构化数据结构,其内容涵盖零件、特征、约束等诸多方面数据。装配数据结构的表达方案及装配语义映射是装配建模研究的重点。本文实现的内容有:在研究装配体信息模型的基础上提出了基于语义的装配特征建模方案;通过语义映射实现了协同装配设计数据模型的统一表达;实现了基于XML/RDF的装配数据表达。未来研究内容有:继续集成装配设计、装配规划等装配工程语义信息;将该模型集成到协同装配设计环境中去。
关键词:协同装配设计;信息共享;装配语义模型;可扩展标记语言
0 引言
CSCW(计算机支持的协同工作)通过提供共享资源的访问接口,支持群体成员在共享环境下协同工作完成同一设计任务。其底层支撑技术为计算机技术、多媒体技术和网络通信技术。协同装配设计是协同设计研究的重要内容,它支持异地团队在共享工作空间进行零部件的协同装配活动。这里装配设计信息的共享是关键。
为了解决异构CAD之间以及CAD与CAM、CAPP等系统间产品模型信息的数据交换,先后出现了很多种中性数据交换格式,如IGES、PDES、STEP等。协同环境下的数据共享采用STEP标准是一种理想的办法。在Web领域为解决异地数据共享产生了XML标准,很多学者将XML标准应用到CAD领域。张帆等提出XML的可重构装配模型,将装配结构数据序列化为XML文件,通过XML节点重构来支持装配模型的重构,但没有将装配结构与约束关系分离,因此难于支持协同设计过程。Chen.Li等建立了基于ACIS的协同装配设计系统,服务器端装配模型采用STEP标准,客户端采用面片模型,并且在设计过程中建立一系列协同规则,以协调、同步用户操作,但面片模型无法支持协同装配特征设计,用户也无法对约束关系进行编辑。
本文在协同装配设计环境下,对装配体的数据结构进行了分析,并定义了装配语义,建立了一个基于RDF/XML协同装配设计模型,详细讨论了协同装配设计模型的语义映射方式。最后在具体的CAD系统上建立了原型系统,验证了该方法的可行性,为实现协同装配设计奠定了基础。
1 装配特征语义建模
1.1 装配特征模型
1.1.1 装配特征信息
为完整表达一个装配体,其装配模型必须包含以下信息:装配空间,装配结构,装配约束。其中装配约束(也称配合关系)是装配模型中最复杂的部分,装配约束的表达方式关系到整个装配模型的表达。上述概念我们分别阐述如下:
装配空间指整个装配体绝对坐标的集合。当添加装配组件时,组件的绝对坐标将被转换为本地装配空间中的相对坐标。这个相对位置由坐标原点加上坐标轴矢量决定。
装配结构常用树型结构组织装配体的组件和零件。一个装配结构中仅存在—个装配树,树根惟一,叶子节点不能交叉。
装配约束是协同装配设计模型的关键部分,包含了零件信息,装配特征、装配方向、约束类型、装配参数等信息。零件与零件间的装配约束(也称配合关系)是由一个或多个约束组成的,而且这些组成配合关系的约束之间不能存在几何及逻辑关系上的矛盾,如约束不能循环定义。
1.1.2 装配约束及其数据结构
为使装配信息适合协同设计要求,在参考目前CAD系统中装配模型数据结构的基础上,本文提出了一个适合异构CAD系统的统一的装配约束数据结构。首先介绍相关的基本概念:
(1)基准件与装配件
零件A装配到零件B上,A称为装配件,B称为基准件;当添加一个A到B的装配约束时,基准件B的装配空间不变,而装配件A及其所有子装配将通过坐标变换生成新的装配空间。
(2)约束娄型(Mate type)
常用的装配约束类型有:相对(贴合)、对齐、成角度、距离、平行、垂直、同心、相切等。
要实现零部件之间的有效约束,必须填充如下数据结构:
1.2 装配特征语义表达
传统的中性CAD数据格式(IGES、STEP等),或者基于网格的数据格式(VRML),在进行数据传输及数据交换过程中必然带来设计信息的丢失;而基于特征的装配语义模型以对象的方式存储装配相关信息,拓扑关系容易维护,减少了信息的丢失。从广义角度而言,装配语义是从设计者的角grit设计过程,设计概念的抽象表达,其目的是为了利于知识的检索与重用,具体到装配体,装配语义特征模型与传统的装配模型本质的差别是将二元关系模型扩充到三元。传统的类似于E-R图描述的装配模型只能表达零件的组成关系,也无法表达装配顺序。而语义描述的是主谓宾结构的三元关系,被装配件的装配特征是主语,谓语是装配约束,基准件的装配特征充当宾语。采用三元关系可以将装配体的宾语结合新的谓语和宾语形成新的语义关系,通过层层扩展,构成完整的装配语义模型。而装配参数,装配顺序等工程信息可以作为节点属性包含在语义模型中。简单的装配模型可以表示为图2所示的XML/RDF模型:
在企业级协同环境下,不同专业、不同的领域的设计人员,所使用的CAD系统不尽相同;异构CAD系统对于同一类约束的处理方式是不同的,数据存储格式也不尽相同,例如,在UG中螺纹连接等同于同心约束,SolidWorks则把螺纹连接当作一种约束类型单独处理。而语义表达的设计意图是相同的,与平台无关,因此装配语义实现了异构CAD系统向同一种装配模型的映射,这种映射关系是多对一的。
传统的装配建模大多在几何层对特征进行操作。从装配语义到几何约束,其间经过装配语义的抽象与提取,对常用的配合、联接方式的分类,如螺钉联接、螺栓连接等。其中每种连接类型又可分为几种小类型,如键连接可分为花键、平键连接等,装配关系允许组合与分解。对于特殊的装配关系,允许用户自定义(一种或多种基本约束类型的组合),例如齿轮啮合,可以分解为两个齿轮轴平行约束加齿面贴合约束;反之,多个基本约束类型也可以组成复杂的装配关系。通过以上两种方式的扩充,基本可以满足常见约束类型的抽象表达。
2 基于RDF,XML的装配语义建模
2.1 RDF/XML简介
XML具有适于异构应用间的数据共享、数据检索和提供多语种支持等优点。XML已经成为目前多数信息集成框架的数据传输载体方案的首选。
为提高XML的语义描述能力,RDF(resource Description Framework)标准应运而生。RDF提出简单的模型来表示任意类型的数据。这个数据类型由节点和节点之间带有标记的连接弧所组成。节点表示资源(对象),弧表示资源的属性。
2.2 装配语义扩展
XML标记给文档定义带来了灵活性,但机器无法理解标签下存放内容的具体含义。在协同装配建模过程中,装配语义模型从面向对象角度对约束关系进行抽象,将装配关系映射成具有属性和操作的对象,辅助RDF属性,可以描述任意装配节点的属性信息;装配层次模型属于半结构化的数据,采用XML 描述更为合适。
RDF装配模型中的每个节点可以用零件名称惟一标识,其包含的装配特征可以用全局分配的ID号惟一标识,特征与特征之间的关系(谓语动词)用装配约束表示,约束参数可以描述为对象所包含的属性。在协同装配设计环境中,约束关系可能由不同的用户编辑,并将这种变化抽象为零件对象约束关系的迁移,通过XML节点的重构加以实现。图3所示为通过装配语义本体建立的装配语义模型层次图。
RDF本身不受具体语法表示的限制,但仍然需要一种合适的语义格式来实现在协同装配设计上的应用。RDF Schema(RDFS)通过对象建模的方式来定义装配语义词汇,将装配特征、约束关系转化成RDFS中的类和属性。
2.3 基于XML/RDF的装配语义模型
通过在XML中引用RDF,可以将XML的解析过程与解释过程相结合。举例:提供—个资源的URL,利用ModeLGetResourec方法可以获取该资源对应的对象。也就是说,RDF可以帮助解析器(如传统的XMLDOM)在解析XML的同时,获得XML所要表达的对象,并可以根据它们的关系(schema)进行推理,从而将基于装配属性的检索推进到基于对象的检索。
目前XML已经成为通用的Web数据表示标准,有大量的标准应用接口用于信息的读取、处理,因此将RDF序列化为XML可以使RDF获得更好的Web应用特性,并使得RDF数据可以像XML数据一样的容易使用、传输和存储。
基于特征的协同装配设计模型,它封装了如下装配信息:部分装配特征、父零件(基准件)、子零件(装配件)、自由度、位置信息(指零件在装配空间的局部坐标原点及坐标轴方向,以及转换矩阵)。
3 装配语义模型的应用与验证
为了验证该装配语义模型的可行性,笔者建立了协同装配设计原型系统来模拟协同环境,其装配体的协同建模过程如下:
步骤一:设计者分别从服务器下载主装配模型(单独的XML文件)到客户端,读取XML文件中的零部件名称,并从服务器下载所有三维实体文件(pn格式);
步骤二:系统解析XML文件,读取约束信息,填充装配约束结构;
步骤三:求解约束,将约束加载到装配体上,进行坐标变换,自动更新客户端显示(若系统不能辨识,需设计者交互);
步骤四:添加一个零部件,并且添加约束,这时其他客户端还没有实时更新;
步骤五:更新主装配模型,上传新增加的实体文件到服务器,向服务器发送同步消息;
步骤六:更新其他客户端,后台自动下载新增实体文件,显示更改后的装配体。
以上几步中,约束求解是较难的一步,涉及较多的CAD曲线、曲面算法及人工智能算法。系统采用了UG NX2装配模块的功能,进行了二次开发,调用UG装配函数,获取约束求解结果后再进行坐标变换,更新装配体模型,显示到工作界面上。
4 结束语
协同装配设计模型涉及的数据结构复杂且包含特征信息繁多的半结构化数据结构,其内容涵盖零件、特征、约束等诸多方面数据。装配数据结构的表达方案及装配语义映射是装配建模研究的重点。本文实现的内容有:在研究装配体信息模型的基础上提出了基于语义的装配特征建模方案;通过语义映射实现了协同装配设计数据模型的统一表达;实现了基于XML/RDF的装配数据表达。未来研究内容有:继续集成装配设计、装配规划等装配工程语义信息;将该模型集成到协同装配设计环境中去。