基于CORBA的协同CAD系统研究
2014-10-20廖斌
廖斌
摘 要:一个对于信息系统的重要的方法,是关注于基本特性,对执行约束和表现细节的抽象。这种方法提供了一个基于抽象层的处理问题的方法。本文从工程设计人员的角度和强调几何总线作用实现目的方面考虑,提出了一个实用的基于CORBA的协同CAD系统。
关键词:CORBA 几何总线 CAD系统
中图分类号:TP3 文献标识码:A 文章编号:1672-3791(2014)08(b)-0011-02
当前,要实现一个功能完备的集成CAD系统,存在的主要问题是如何在不同的组件之间提供一个集成的功能强大的标准,如何在专业团队的不同开发行为之间实现数据和对象共享。
集成CAD系统一般都采用了一些传统的要素,比如,数据库、工作流和实体造型系统等。但是,集成CAD的数据模型需要处理更为复杂的结构。这是因为:深入的分层结构,多种数据表示类型,不同数据表示方法的关联,不同时间段数据的联系。而且,设计过程的特性是相当独特的,即重复性和探索性的设计行为以及需要活动的历史数据。对工程设计中的复杂对象使用传统的关系数据模型已经无法直接支持,因而应考虑使用对关系模型进行了扩展的面向对象的工程数据库系统。目前,数据库设计人员在考虑共享对象机制或异构系统的总体方面时,没有考虑工程设计过程和处理复杂的工程数据所要求的功能特性;另一方面,CAD研究人员则注重于PDM系统和AI协同设计等方面。对集成三维CAD系统中的数据模型进行研究是极其必要。相比较以前的工作,本文从工程设计人员的角度和强调几何总线作用实现目的方面考虑,提出了一个实用的关于协同CAD系统的分布式对象数据模型。
1 对象数据模型
在该模型中,对象和属性相关,并且根据它们的特性进行分类。并且属性和链接也是对象。在CAD系统中,联系属性到一个分层的树的根的对象的一系列对象,被称为设计实体。图1阐述了一个设计实体,主要包括两个属性类:概念特性和空间特性。在这个模型中,概念特性可以是基本的或概念可选的,空间特性是拓扑的或空间可选的,并且所有这些特性都是几何性的。在CAD系统中,从设计者直到显示在屏幕上的三维部件的所有要素都是一个设计实体。例如,一个设计者被系统表示为具有基本特性而且没有三维表示的实体。虽然这个模型可以创建很多对象,但它可以很容的追溯属性和关系的发展,这是一个必要的条件实现追溯需求发展。这个数据模型充分考虑了功能和形式的问题。
在这个模型中,两个对象之间的链接也是一个对象。为了在成对的对象之间建立联系,他们之间的链接被定义为源或目标对象和在联系中所使用的关系类型。而且,两个对象的链接的行为在目标对象来表现,而无论来源目标的表现形式。这些机制保证了:(1)一个实体对象的特性对应于对不同零件的规范。(2)在链接中包括的对象,可以观察各自的邻居,而无需考虑它们在对象树的位置。
每一个设计实体都有一个设计历史,如下表示:
Historyi(t)=<{State}I,{Verion}I,Entityi>。
即,一个实体的设计历史有一系列状态和一系列版本。在每一瞬间,一个设计实体如一个唯一的版本和其生命周期中的一系列状态相联系。设计者可以回朔历史,创建一个新的零件版本,相对应于他的权力。
2 分布式系统
从系统的角度来看,采用了分层机制,来处理细节功能。一个对于信息结构的重要的方法,是关注于基本特性,对执行约束和表现细节的抽象。这种方法提供了一个基于抽象层的处理问题的方法。在这里组件是一个自我管理和独立的部分,嵌入到一个复杂的系统中。一个组件可以由一系列类组成,对于需求功能来进行组织信息和开发程序。
在分布式系统中,这个系统的架构采用了支持设计行为。与图2所示。这个架构采用了客户端/服务器模式,配合与CORBA总线(ORB)来支持分布式处理的机制。每个模块都具有独立操作层实现。消息机制提供资源实现各层的交互作用。和外部环境的通信,通过各层寻求与设计者的交互,完成提交给系统的请求和响应。在一种情况下,通信将被完成,系统要共享要与设计者之间共享内部事件。
图3阐述了本文提供分布式对象图,整个对象树是一个虚拟结构对应着分布在网络上的数据库表的联合体。当一个客户端请求这个树的子集,链接和对象列表存储在主内存中。在这种情况下,在主内存中,树的每个节点对应特殊的传统数据库表的唯一的列。在分布式系统中,设计人员将鼠标指向3D虚拟部件,可以被另外设计组的成员所修改,求特殊属性的值。在这种情况下,客户端能寻找一个服务器能从它的数据系统中重新得到它的值。另一个例子,当设计人员执行对属于另一个设计组的一个部件进行一个特殊几何操作。在这种情况下,如果一个事务策略被允许,客户端将从远程服务器获得几何模式,并在本地执行。
分布式系统的一个重要的特点是与分布式对象中间件保持高度层次独立性。由于这个原因,该系统只使用基本的CORBA架构,允许通信层很容易被替换CORBA,例如COM。因此,CORBA的命名机制将不能被使用。在这个系统中,对于服务器和客户端(SOrb和COrb)的IDL接口都有它们同样的声明模式,即:
SOrb接口
{string ReceiverMsg(in string comstring)}
COrb接口
{string ReceiverMsg(in string comstring)}
接下来的代码在标准CORBA文件中被阐述如何指向对象SOrb(位于服务器端),是从客户端获得。
CORBA_Object_var obj=orb->string_to_object(Sorb_IOR)
Sorb_var sorb=Sorb::_narrow(obj)endprint
Sorb_IOR响应服务器端IOR的问题。IOR被保存成一个文件,是一个对所有对象的参考。
3 集成CAD系统模型
一个设计系统是一个软件集成,用来创建或合成设计,分析它的准确性,存储管理,数据组织,就好像流过程管理。从组织功能方面来看,关系到设计团队的开发,可以被认为在协作规则上工作,关系到几个学科。在这种情况下,设计中的组织任务被划分成两个部分:(1)原始产品工作,将有价值的元素直接加入产品规范。(2)协调工作,有利于产品的生产。
这个集成模型主要考虑到以下几点:(1)专业人员的组织,根据它们的能力和职责,在一个分层结构中。(2)开发行为,按照行为之间的依赖规则进行。(3)对象树由完成的工作所生成,被描述成产品规范。图4阐述了一个集成CAD系统模型。当一个规范有几何和拓扑属性,通过3D实体造型,一个实体就可视化。
4 虚拟原型
从设计者的角度出发,三维集成CAD系统面临的核心问题是操纵所谓虚拟原型的能力。虚拟原型的目标是为分布式协同环境提供讨论设计和制造问题的环境。在多个产品开发组协同设计环境中,分布在不同地点、不同部门的专业人员围绕逼真的虚拟原型,从不同角度、不同需求出发,对虚拟原型进行测试、仿真和评价,并改进和完善.他们也可通过虚拟原型达到相互交流和共享信息的目的.这就可以确保在产品设计开发的早期消除设计隐患,提高产品设计质量,缩短产品开发时间。虚拟原型的对象有以下几个属性类,比如几何值,设计意图,制造规范,成本数据,零件数量和参考文档。而且,这些对象在工作流管理、组织工程、需求回溯的上下文中被定义。
虚拟原型分布于不同的网络,不同的平台,操作系统,设计团队和非CAD用户。设计过程需要在几个团队之间协同工作。在设计过程完成后,产品草图被认同后,这些部件被存储到一个中央数据库,并被保存为Product Structure文件和STEP文件。很显然,Product Structure是3D造型和2D图形的指针的集合。在整个设计过程中,通过Web浏览器,数据在不同的数据库系统和网络之上被操作。在实时分布式工程数据系统中,分布式CAD对象数据模型允许团队通过获取和改变信息进行协同工作,目前的工作采用ACIS,作为几何总线,虽然其他的核心也可以被使用。一个几何总线有下面三条组成:标准的面向对象的几何数据库;采用组件结构;采用标准的几何数据格式。除了ACIS几何总线,COD的初始版本是用C++实现为Windows平台。通过Lua语言解释代码,采用SOL Server作为数据库。为了在集中模型中,管理好组织对象,如下的成分要提供给系统:(1)组织结构。(2)与产品相关活动的描述。(3)系统功能的描述。在图5中,当客户模式开始活动,首先触发参与者登陆和认证,然后其相应的权利和对应的活动可以开始。权力定义信息,以便冲突可以被管理,在协同工作产生的冲突。
5 结论
协同CAD系统要实现高效率的设计过程要采用动态分布式对象。本文提出了一个分布式动态数据模型,与设计概念相联系来解决问题和设计历史。分布式对象的动态方面,通过一个机制来实现,而不是依靠CORBAs DII来实现。而且,本文提出了一个解决问题的方法在异构网络实现数据分布。
参考文献
[1] 尹卫星,胡青泥,齐晓松,等.改进CAD模型数据质量的研究[J].机械工程师,2006(2).
[2] 孙玉林,孔宪庶,韩雪,等.基于ISO13584标准的管螺纹三维实体模型的实现[J].机械工程师,2007(12).
[3] 牟小云.面向工程应用的逆向工程建模技术研究[J].新技术新工艺,2008(8).
[4] 冯兴邦.配管CAD模型数据库结构分析[J].工程设计CAD与智能建筑,1999(10).
[5] 袁满,于海洋.基于ArcGIS Mobile的油田移动GIS系统架构与实现[J].科学技术与工程,2011(20).endprint
Sorb_IOR响应服务器端IOR的问题。IOR被保存成一个文件,是一个对所有对象的参考。
3 集成CAD系统模型
一个设计系统是一个软件集成,用来创建或合成设计,分析它的准确性,存储管理,数据组织,就好像流过程管理。从组织功能方面来看,关系到设计团队的开发,可以被认为在协作规则上工作,关系到几个学科。在这种情况下,设计中的组织任务被划分成两个部分:(1)原始产品工作,将有价值的元素直接加入产品规范。(2)协调工作,有利于产品的生产。
这个集成模型主要考虑到以下几点:(1)专业人员的组织,根据它们的能力和职责,在一个分层结构中。(2)开发行为,按照行为之间的依赖规则进行。(3)对象树由完成的工作所生成,被描述成产品规范。图4阐述了一个集成CAD系统模型。当一个规范有几何和拓扑属性,通过3D实体造型,一个实体就可视化。
4 虚拟原型
从设计者的角度出发,三维集成CAD系统面临的核心问题是操纵所谓虚拟原型的能力。虚拟原型的目标是为分布式协同环境提供讨论设计和制造问题的环境。在多个产品开发组协同设计环境中,分布在不同地点、不同部门的专业人员围绕逼真的虚拟原型,从不同角度、不同需求出发,对虚拟原型进行测试、仿真和评价,并改进和完善.他们也可通过虚拟原型达到相互交流和共享信息的目的.这就可以确保在产品设计开发的早期消除设计隐患,提高产品设计质量,缩短产品开发时间。虚拟原型的对象有以下几个属性类,比如几何值,设计意图,制造规范,成本数据,零件数量和参考文档。而且,这些对象在工作流管理、组织工程、需求回溯的上下文中被定义。
虚拟原型分布于不同的网络,不同的平台,操作系统,设计团队和非CAD用户。设计过程需要在几个团队之间协同工作。在设计过程完成后,产品草图被认同后,这些部件被存储到一个中央数据库,并被保存为Product Structure文件和STEP文件。很显然,Product Structure是3D造型和2D图形的指针的集合。在整个设计过程中,通过Web浏览器,数据在不同的数据库系统和网络之上被操作。在实时分布式工程数据系统中,分布式CAD对象数据模型允许团队通过获取和改变信息进行协同工作,目前的工作采用ACIS,作为几何总线,虽然其他的核心也可以被使用。一个几何总线有下面三条组成:标准的面向对象的几何数据库;采用组件结构;采用标准的几何数据格式。除了ACIS几何总线,COD的初始版本是用C++实现为Windows平台。通过Lua语言解释代码,采用SOL Server作为数据库。为了在集中模型中,管理好组织对象,如下的成分要提供给系统:(1)组织结构。(2)与产品相关活动的描述。(3)系统功能的描述。在图5中,当客户模式开始活动,首先触发参与者登陆和认证,然后其相应的权利和对应的活动可以开始。权力定义信息,以便冲突可以被管理,在协同工作产生的冲突。
5 结论
协同CAD系统要实现高效率的设计过程要采用动态分布式对象。本文提出了一个分布式动态数据模型,与设计概念相联系来解决问题和设计历史。分布式对象的动态方面,通过一个机制来实现,而不是依靠CORBAs DII来实现。而且,本文提出了一个解决问题的方法在异构网络实现数据分布。
参考文献
[1] 尹卫星,胡青泥,齐晓松,等.改进CAD模型数据质量的研究[J].机械工程师,2006(2).
[2] 孙玉林,孔宪庶,韩雪,等.基于ISO13584标准的管螺纹三维实体模型的实现[J].机械工程师,2007(12).
[3] 牟小云.面向工程应用的逆向工程建模技术研究[J].新技术新工艺,2008(8).
[4] 冯兴邦.配管CAD模型数据库结构分析[J].工程设计CAD与智能建筑,1999(10).
[5] 袁满,于海洋.基于ArcGIS Mobile的油田移动GIS系统架构与实现[J].科学技术与工程,2011(20).endprint
Sorb_IOR响应服务器端IOR的问题。IOR被保存成一个文件,是一个对所有对象的参考。
3 集成CAD系统模型
一个设计系统是一个软件集成,用来创建或合成设计,分析它的准确性,存储管理,数据组织,就好像流过程管理。从组织功能方面来看,关系到设计团队的开发,可以被认为在协作规则上工作,关系到几个学科。在这种情况下,设计中的组织任务被划分成两个部分:(1)原始产品工作,将有价值的元素直接加入产品规范。(2)协调工作,有利于产品的生产。
这个集成模型主要考虑到以下几点:(1)专业人员的组织,根据它们的能力和职责,在一个分层结构中。(2)开发行为,按照行为之间的依赖规则进行。(3)对象树由完成的工作所生成,被描述成产品规范。图4阐述了一个集成CAD系统模型。当一个规范有几何和拓扑属性,通过3D实体造型,一个实体就可视化。
4 虚拟原型
从设计者的角度出发,三维集成CAD系统面临的核心问题是操纵所谓虚拟原型的能力。虚拟原型的目标是为分布式协同环境提供讨论设计和制造问题的环境。在多个产品开发组协同设计环境中,分布在不同地点、不同部门的专业人员围绕逼真的虚拟原型,从不同角度、不同需求出发,对虚拟原型进行测试、仿真和评价,并改进和完善.他们也可通过虚拟原型达到相互交流和共享信息的目的.这就可以确保在产品设计开发的早期消除设计隐患,提高产品设计质量,缩短产品开发时间。虚拟原型的对象有以下几个属性类,比如几何值,设计意图,制造规范,成本数据,零件数量和参考文档。而且,这些对象在工作流管理、组织工程、需求回溯的上下文中被定义。
虚拟原型分布于不同的网络,不同的平台,操作系统,设计团队和非CAD用户。设计过程需要在几个团队之间协同工作。在设计过程完成后,产品草图被认同后,这些部件被存储到一个中央数据库,并被保存为Product Structure文件和STEP文件。很显然,Product Structure是3D造型和2D图形的指针的集合。在整个设计过程中,通过Web浏览器,数据在不同的数据库系统和网络之上被操作。在实时分布式工程数据系统中,分布式CAD对象数据模型允许团队通过获取和改变信息进行协同工作,目前的工作采用ACIS,作为几何总线,虽然其他的核心也可以被使用。一个几何总线有下面三条组成:标准的面向对象的几何数据库;采用组件结构;采用标准的几何数据格式。除了ACIS几何总线,COD的初始版本是用C++实现为Windows平台。通过Lua语言解释代码,采用SOL Server作为数据库。为了在集中模型中,管理好组织对象,如下的成分要提供给系统:(1)组织结构。(2)与产品相关活动的描述。(3)系统功能的描述。在图5中,当客户模式开始活动,首先触发参与者登陆和认证,然后其相应的权利和对应的活动可以开始。权力定义信息,以便冲突可以被管理,在协同工作产生的冲突。
5 结论
协同CAD系统要实现高效率的设计过程要采用动态分布式对象。本文提出了一个分布式动态数据模型,与设计概念相联系来解决问题和设计历史。分布式对象的动态方面,通过一个机制来实现,而不是依靠CORBAs DII来实现。而且,本文提出了一个解决问题的方法在异构网络实现数据分布。
参考文献
[1] 尹卫星,胡青泥,齐晓松,等.改进CAD模型数据质量的研究[J].机械工程师,2006(2).
[2] 孙玉林,孔宪庶,韩雪,等.基于ISO13584标准的管螺纹三维实体模型的实现[J].机械工程师,2007(12).
[3] 牟小云.面向工程应用的逆向工程建模技术研究[J].新技术新工艺,2008(8).
[4] 冯兴邦.配管CAD模型数据库结构分析[J].工程设计CAD与智能建筑,1999(10).
[5] 袁满,于海洋.基于ArcGIS Mobile的油田移动GIS系统架构与实现[J].科学技术与工程,2011(20).endprint