并行设计是近几十年成长起来的一种先进的设计方法,其核心在于群体工作中相互之间的交互与协调,即在设计阶段就要考虑产品开发过程中所涉及到的所有环节和因素。产品设计的发展总是要依托于产品设计理论的进步和设计工具的更新。将新兴的设计理念不断融于产品设计中去,对于产品开发的成功起着至关重要的作用。这种并行设计的思想同样可以应用到汽车内饰布的产品设计中。传统的汽车内饰布设计是一种典型的串行模式:即先进行图样花案设计,再按设计图纸打样,生产出真实样品后,送给用户进行整车试装以观整体实际效果;然后根据反馈信息进行修改、再打样,直至用户满意后礼品才投入批量生产。很明显,这种设计方法周期长,成本高,不能适应社会发展需要和日趋激烈的市场竞争。针对汽车内饰布是一种订单式生产的方式、是以用户需求为设计指南的产品,本文提出了一种立足于实现不同设计人员、销售人员、制造人员、用户之间(尤其是处在不同地理位置)的信息共享和合理协同的汽车内饰布设计系统并行模式,从而以一种并行和实时交互的方式来提高产品的设计质量,缩短产品开发周期,降低成本,增强响应市场需求的快速性。
1 汽车内饰布并行设计系统
1.1 系统功能分析
本并行设计系统的主要目的是实现异地不同人员(包括设计人员、销售人员、制造人员、用户以及其他相关人员)进行产品在线并行设计,在产品开发设计过程中及时吸纳各方信息,接收反馈。对此系统,必须首先实现各成员之间产品数据的共享,而且能访问异地服务器上一些与产品功能、开发过程密切相关的数据与方法;同时由于此系统是以基于网络的交互式设计为基础、以客户为中心的应用型系统,除了结合网络技术、CAD技术之外,最关键的一点是必须建立一个基于网络的并行设计。
借助于这一设计环境,设计人员一方面可以实现与其他成员之间的交互,接收各方面的信息反馈,以便及时对设计作出修改;另一方面,其他成员可以对整个设计以及与设计相关的数据库系统进行实时访问。在此过程中,异地设计人员可以对设计方案作出相应修改,提出自己的建议;销售人员可以提供市场最新的信息;用户可以传送对汽车内饰布设计整体效果的判断结果,并选择自己满意的产品。
即建立一个具有群体性、交互性、分布性、动态性、协作性的人机网络工作环境来协助多个地理分散的设计人员、制造人员、销售人员、用户以及其他相关人员来共同完成对汽车内饰布的设计任务。
1.2 并行设计环境的建立
本文所提出的并行设计环境实际上是一种典型的通信结构(以下简称为BX)。BX主要由Java的Applet程序来实现。针对系统中用户需求的不同分别构造专业人员和非专业人员的BX体系结构,如图1、图2所示。此结构基于一个三层客户/服务器的体系;该体系能提供多个成员对同一服务器进行访问。图1中用CORBA连接使得BX可以插入到一个CAD系统中,以便实现对CAD几何图形的访问。而非专业人员(图2)则仅仅只需要一个适合Java的浏览器,为其提供对储存在网络内的设计信息的简单访问J。因为在汽车内饰布的并行设计中,专业人员之间的交互性更强,使用COBRA可以实现各自应用软件间的互操作性、发送请求的透明性;而非专业人员(比方说用户)只须对传送过来的设计结果进行浏览、根据自己的选择作出简单的反馈,因此针对他们的BX结构就相对简单。
nload="javascript:if(>500)=500" align=center border=0>
nload="javascript:if(>500)=500" align=center border=0>
图1和图2中的第一层是“客户端”,由Java applet程序和不同成员的应用软件组成(如设计人员的CAD系统等);借助于商业网络浏览器,用户可将Java applet从服务器下载到他所在的客户端;由于Java与平台无关的特点,该Java applet可以不用重新编码,就能在任何平台上实现(如在UNIX,Windows,Macintosh上);VRML浏览器可以作为一个插入的应用程序在网络浏览器内运行,以便显示零部件几何图形的三维浏览;通过COR—BA(互连网Inter—ORB协议,或IOP)可以实现CAD系统与applet间,或者CAD系统与DFX间的目标通信。
第二层是第一层的入口,可通过互连网传送和接收通信协议;作为中间件,它可按用户的要求激活DFX模块,并将有问题的结果和数据库中的设计数据返回。在此层中,Java的编码储存在www服务器中,编码的配置,任一功能的改变以及维护因此都是非常容易的;JDBC(Java Database Connectivity)驱动程序提供了对数据管理系统(DBMS)的直接访问;第二层的另一个组件是应用服务器,其作用是连通到客户机中运行的applet程序,以便管理第三层组件的活动。
第三层包含了BX中的数据和相关知识。汽车内饰布设计方面的知识(如内饰图案、材质设计等)进行编码后存储在知识库中,可供DFX模块进行访问。VRML生成器将一个三维CAD设计转换成VRML格式,再将此设计显示给其他的成员。VRML发生器的另一个重要的作用就是将DFX模拟结果(象工艺和成本方面的)中的纯几何信息联接成一个VRML文件。
由上述可知,通过所建立的客户/服务器模型,能够有效地同时服务于多个用户。在这个模型中,服务器包含了具有许多不同功能的DFX模块。在汽车内饰布设计中,这些设计模块主要是指面向图案、材质、成本、制造、销售、用户等,而不同成员利用各自的应用软件又能通过互连网来达到对服务器进行访问的目的。例如,专业人员可以将相关DFX模块连接到适合于自己的CAD或其它软件工具系统中,而非专业人员则只须通过VRML浏览器获取设计信息以及传送反馈的信息。
2 实现汽车内饰布并行设计系统的关键技术
2.1 Java与CORBA技术
Java是一种结构合理、面向对象、分布式、多线程和动态的网络开发语言,按照高性能、跨平台、解释执行的原则,提供面向对象的编程语言和运行环境,它具有鲁棒性、健壮性、安全性、平台无关性等优点,非常适合网络应用程序的开发。COBRA是分布式面向对象应用系统的开发规范,也是一种面向对象的中间件和分布处理平台。它具有平台、语言、网络协议无关性,其对象位置、对象实现、对象执行状态、对象通信机制的透明性;可以跨越不同网络、不同操作系统,实现分布对象之间的互操作,充分体现了分布对象计算系统的异构性、互操作性、可迁移性和可重用性。本文采用用Java集成COBRA和Web的思想建立分布式共享信息空间并开发分布式基于组件对象的应用系统,提供分布式环境下各子系统之间的无缝连接、集成和互操作;系统利用Java提供可移植性,消除系统对平台的依赖性,利用COBRA建立分布对象的联系方式,为Java增添分布式服务;将每个模块从应用系统中独立出来,并为应用系统提供简单的应用接口,再将各种COBRA组件和应用各种语言编写的模块、子系统包装成Web服务并予以发布,这样其他用户就可以获悉并调用该Web服务;各个分布对象之间采用异步消息传递机制。
2.2 VRML技术
本系统对于异地二维图形以及各模块计算和分析所得各种图形显示结果的传输、交互及操作采用Java 3D,对汽车内饰设计时所用到的三维模型,则采用作为符合ISO标准的用于在web上表示3D模型的VRML语言和Java3D技术,利用虚拟现实技术的交互性、沉浸性和想象性达到异地汽车内饰布产品并行设计环境的高度逼真化,使专业设计、制造人员可以对汽车内饰布三维虚拟环境直接进行交互操作。基于VRML的虚拟现实协同设计系统是CSCW(计算机支持协同设计)系统未来的发展方向。将现有的互连网应用开发技术结合到VRML技术中去,可以提高互连网上协同环境的可感知性和交互性,是将协同系统从二维转到三维的关键,也是基于虚拟现实的协同设计系统的实现基础。
VRML,作为一种与平台无关的中间格式,既可以传送DFX结果,又可以存取设计的几何图形,因此同样可以充当非设计人员的浏览工具,即便没有高端工作站,任何用户(非专业人员)都可以在个人电脑上观察到与汽车内饰布相关的零部件的设计,而且能在一定程度上与之交互,将自己所要传送的信息反馈给设计人员。总之,通过互连网使用VRML是一种交流设计和其他相关信息的高度有效的方式。
2.3 网络应用技术(Socket技术)
本系统不仅要实现产品数据以及其它相关信息的共享,还必须访问或调用异地服务器上一些与产品功能和开发过程密切相关的数据与方法,因此需要采用分布式对象技术来实现基于网络的互访与调用,对此可用JavaSocket技术予以实现。Socket是Java语言的套接字,可以用来实现互连网上不同主机或相同主机的不同应用程序之间的可靠、双向、点到点的基于流的连接。使用套接字,可以将Java的I/O系统与本地或互连网上的任意一台计算机相连,从而实现客户端与服务器端之间的可靠、永久性连接。
Socket类是Java语言的java.net包提供的用于编写客户端程序的类,它提供了独立于平台的套接字连接的客户方实现。使用Socket类能编写的Java程序以一种独立于平台的方式来实现网络通信;在创建Socket对象的同时也在互连网地址间创立了连接,因而并不需要其它方法显示地与服务器端进行连接。
2.4 数据库管理系统(DBMS)
在网络化设计过程中,需要采用集成化和并行化的方法来设计产品及其相关过程,其核心是各协作个体共享信息和资源以达到协同工作的目的。处在不同地理位置的不同成员利用协同工作环境通过浏览器互相访问各个本地服务器的信息,因此各服务器的内容必须要实时、动态地更新。为保证汽车内饰布产品信息共享的有效性和正确性,必须采用可靠的网络数据库设计技术,保证异地各成员相互间能及时准确地提供设计、制造、销售等各方面的信息与帮助,保证产品数据的表达和交换是准确、完全和无二义的。本系统主要是利用SQL Server 7.0建立各子系统所需的数据库系统,用于存储数据信息和图形信息,而JDBC(Java Database Connectivity)驱动程序则提供了对数据管理系统的直接访问。
3 结束结
本文对汽车内饰布并行设计系统进行了有意义的探索和研究。该系统将先进的汽车内饰布设计技术和先进的并行设计和管理思想相结合,将网络协同设计技术和方法的研究与实际汽车内饰设计背景相结合,强调汽车内饰布设计过程的并行、交互与集成。系统针对专业人员和非专业人员,采用了相应的多层体系结构,将软件技术、网络技术以及分布对象技术等应用到并行设计系统中,实现了信息共享以及对系统资源的访问透明化,充分体现设计的团体性、交互性、协作性和分布性,可以高效、快捷地完成汽车内饰布的设计任务。