2系统设计目标支持并行设计的液压CAD与仿真系统总体目标是建立一个支持并行设计的分布式产品数据管理环境,为产品设计人员提供一个高度集成化的、易于掌握和使用的软件系统,使设计者可以在计算机辅助技术支持下,针对不同产品的功能和结构,进行产品设计、工艺设计以及工作流程管理的并行化,并对产品设计与工艺设计数据进行有效管理,从而尽可能减少产品设计时间,提高工作效率。系统设计的架构所示,主要内容有包括:(1)CAD设计平台,将液压系统用树状数据结构表达,提供向液压系统树状结构上添加、删除、编辑液压元件等操作。液压系统树状结构存储在PDM系统中。
(2)并行设计的工作流程管理。工作流程管理是支持并行设计的一个难点,系统采用了2个技术手段,液压系统树状结构和设计员的树状管理所示,以及总工程师按照并行设计要求的任务划分,为多个设计员进行并行设计提供了基础。
( 3)产品数据管理。基于数据的管理是支持并行设计的重要内容,在开发过程中结合了成功的商用PDM系统,将用户和角色的管理、网络数据库管理技术、数据访问的并发和冲突控制更可靠集成在一起。
3液压系统CAD设计平台
1)液压系统结构树产品信息模型决定了软件的扩展性、兼容性和稳定性,应该能覆盖液压系统整个生命周期,方便应用于液压系统CAD设计、仿真、现场控制等等环节。统一的产品信息模型是实施并行设计的基础,产品设计过程是一个产品信息由少到多、由粗到细不断创作、积累和完善的过程。因此,并行设计的产品信息模型应能将来自不同部门、不同内容、不同表述形式、不同抽象程度、不同关系、不同结构的产品信息包容在一个统一的信息模型之中。本系统中产品结构树清楚表达了产品的各项数据,与液压系统惟一映射,无二义,无歧义,其结构所示。产品结构树由项目总工程师建立,规划出树的大概结构,将各子树归并成子任务块,并和相应的开发组对应起来。这个自顶向下的过程,由系统提供的系统树设计界面完成。系统树设计界面主要完成3个功能,一是定义树的结构和设计开始、结束时间,二定义树上每个节点的性能指标、技术要求等,三是把多个节点的设计组成一个子任务块,并且能够定义子任务块间的时间顺序。
2)液压系统CAD
液压系统的绘制其实主要是液压元件的绘制。液压元件的绘制一般采用元件图形符号库的方法,让用户拖拉图形符号向液压系统中增加元件。这种方法的缺点是图形只是一个符号,在数据结构上与元件是分开的,没有采用面向对象的思路,还是过程化的程序+数据方式。如果采用完全的面向对象方法,把向液压系统中增加元件,看成向产品结构树中加入元件对象,元件对象的绘制由元件自身的行为完成,这样就能把图形的绘制集成为元件的操作,便于仿真。
元件是对实际物理上液压元件的抽象表达。液压元件的多种多样,决定了元件是内容庞大的类库。元件类库是个树状的层次所示,*顶层是元件基类,从CObject派生,概括了所有液压元件的共同属性和全部操作。按照面向对象的派生和虚拟函数、多态性和重载等手段,每种具体的元件处于叶子层,其属性经过层层扩充,已经能具体地表达元件性能指标;而操作也具体到对自己的绘制、属性合理性检测、对文件的序列化、对数据库的序列化、状态转换、构造和析构等。
元件类不但要处理前期设计的输入信息,还应能处理仿真过程的中间信息和结果信息,因此信息模型会随着用户使用过程的推进逐渐丰富和完善。元件中信息内容的变化可以总结成6种状态,用户设计时元件对象就在这6种状态间转换。
油路类的绘制操作与其他元件不同,需要考虑相互避让。油路的2个端口间如果没有障碍,则用一条水平线和一条垂直线就可以完成绘制。如果有障碍,就存在多条可能的路径,需要从中选择*优的路径。
*优的路径转折*少,与另外的油路交叉*少,而且转折与交叉冲突时先求转折的*优所示。
4并行化设计
并行设计把产品整个生命周期所涉及的人员都集中起来,使各专业的设计人员甚至包括客户都汇集在专门小组里,协同工作,以便从一开始就能够设计出便于使用、便于装配、便于维修、便于回收的产品,而不象传统的串行方式中上下游间信息单向传递,下游被动接收任务而无法反馈。但是由于子任务间的互为条件,并行设计中也可能存在串行的过程。只有尽量减少串行过程,才能*大效率地发挥并行的优势。在系统树设计界面中,经验丰富的总工程师所设定的任务间的制约关系确定了各个子任务占用的时间段,各个子任务就能有序进行。而在设计过程中,单一的产品树数据、锁定机制、版本控制和短消息功能等手段,合理地发挥团队效能,保证了并行设计顺利进行,得以在*短时间内设计出性能优良的液压系统。
1)设计子任务的划分设计任务划分是基于产品结构树模型,按照产品的功能结构和人员状况将设计任务划分为多个部件设计子任务,而部件的设计任务还可以根据需要划分为更小的零件或部件设计子任务。每个子任务是工作流程中的一个节点,对每个节点要定义其接口。接口定义包括零部件的编号、名称、技术说明、出图日期、数量、性能指标如*高压力和*低压力等信息,便于该子任务的设计人员可以*大限度地领会总体设计的意图,减小偏差,提高设计效率。其中涉及到设计人员、审定人员、库管人员、标准化人员等人员角色,角色设定在PDM中完成。
2)并发控制当用户对数据进行添加、编辑、修改等操作时,他通过下传的方式将总树的数据复制到自己的工作站,而只有有权限的子树能够进行设计,对其余总树的部分,只能进行浏览和仿真。这时,其他用户仍然可以对总树进行读取等操作,对相应的子树进行修改。下传后的数据在完成编辑和修改后,通过签入将文档转到PDM.
并行设计系统在协同工作的过程中会出现多个用户对同一数据进行修改操作的情况,这就需要一种管理机制来保证数据的统一性即并发控制问题。在多个用户同时访问同一数据时就产生并发问题,特别是一些用户对数据库有添加、删除或者修改等操作时,那么其他用户所获得的数据可能是已经过期的不正确数据,从而引发系统发生混乱以至崩溃。采用锁定的办法解决,分为共享锁和排它锁两种类型。共享锁是指同时有几个客户共享一个锁定,都能对数据进行读取。排他锁是用户在修改一个数据之前设置了锁定,在一定的时间里其他用户是不能访问到该数据的,只有等待锁定解除才能进行访问到它。当然在计算机处理的时候,其他的用户一般是感觉不到有这个等待时间的。
3)版本控制版本管理分两种:时间序列版本管理和引用版本管理。版本间的时间先后关系,是*基本的关系,一般用版本号表示。引用版本管理只是逻辑上虚拟的概念,实际引用的是该对象的副本。
当一个对象经过出库操作再进行入库操作时,用户可以选择是形成新版还是替换旧版本。如果用户选择形成新版,那么系统自动将该对象的序号加1,从而形成新版。当有新版存在时,用户不能对旧版进行操作;如果用户选择替换旧版本,那么系统不产生新版,而是用当前对象替换旧版本,同时版本号加上0. 1.
4)信息传递的实现方法设计信息的反馈与交流是并行设计实现的基础,是不同设计用户进行思想交流和群体决策的重要手段。信息反馈主要通过数据版本进行发布。数据的版本已经改变,系统会向拥有此数据副本的用户发出数据改变的通知。例如,详细设计人员也可以对于划分给自己的设计任务向总体设计人员提出自己的意见,协同人员可以通过反馈通知详细设计人员数据中的不妥之处,并提出自己的建议,甚至可以将修改过的数据直接发给设计人员。
5系统实现
为了满足液压系统并行设计的要求,我们采用了一种新的设计方法:界面及CAD设计模块自行开发HyJack;液压仿真模块使用了MathWorks的simulink仿真器, PDM模块使用某公司的Pro/ INTRALINK软件。
整个系统采用COM的方法将各个模块集成为一体,用户从界面上只能感觉到, HyJack稳定运行,提高了开发速度,也保证了仿真计算的精确和底层数据库的稳定,取得了良好的效益。
6总结
产品的设计可以看作是一个受多方条件约束的求*优解的过程,每一约束表示影响产品生命周期的因素如性能、成本、可制造性、可维护性等,而这些制约因素之间又相互影响。某个方案可能在一些条件下是很好的,但有了其他因素的制约,就有可能成为不可行方案。在设计中,每一个设计员都有自己的强项,由于受知识与主观愿望的制约,总是会过多地考虑产品某一方面的指标,而忽略了产品的综合指标。并行的产品设计已经设定了各个设计小组的任务目标和性能指标,设计过程中也有消息沟通,能够部分平衡个人的主观偏向。协同设计将单机环境转变为异地分布的网络环境,把传统的串行处理方式转变为并行处理方式,把人机交互转变为人人直接交互,解决了设计中上下游孤立的问题,提高了设计效率。
有些任务由计算机完成比由人完成相对容易;而也有些任务由人完成比由计算机完成要容易。在由计算机取代人的进程中,不段地出现一些技术困难,耗费了研究人员大量的心力,也没有取得很好的效果。从期望无人参与到变为充分发挥人的作用,这种思路与目前大多的学者专家背道而驰,却不失为另一种思考方式。并行设计能充分发挥人的作用,减小了一些技术问题由于要完全摆脱人的干预而带来的难度。
本系统将面向对象的思想彻底贯彻在液压系统的CAD设计中,抛弃了过去用程序操作图形符号库的方式,将面向对象和关系数据库有效结合在一起,把复杂的数据结构存储到PDM中,也能从PDM中恢复出原来的对象,有利于仿真任务的完成,没使用面向对象数据库就完成了面向对象数据库的功能。