摘 要在對協同設計技術研究的基礎上,對協同設計平臺及多機網絡版協同CAD系統進行了構思,重點介紹了系統的整體架構和協同會議的工作流程,描述了系統關鍵模塊的實現原理。提出了系統的技術實現路線。
關鍵詞 計算機協同設計;協同會議;用戶
中圖分類號:TP393文獻標識碼:A文章編號:1671-489X(2007)01-0054-03
Research and Design of Collaborative Design//Wu Zhiwen
Abstract Through an introduction to Collaborative Design's concept, this paper attempts to show the methodology of constructing a Codesign platform and achieving the non-stand-alone network edition CAD system; it also describes the scheme of achieving the major modules in the system, with emphasis on the overall framework and the working process of Codesign meeting; finally the technological route and difficulties for this system are proposed as well.
Key words computer supported collaborative design(CSCD); collaborative conference; user
Author's address Dept. of Mechanical Electrical Engineering, Guangdong Vocational College of Mechanical Electrical Technology, Guangzhou 510515
信息技術和計算機網絡技術的發展使得制造業面臨著全球性的市場、資源、技術和人員的競爭,快速交貨已成為先進制造模式的特征。計算機協同設計CSCD(Computer Supported Collaborative Design)的目標就是使產品設計可以異地并行,及時地通過計算機網絡交流以縮短產品交貨期,它是協同工作與CAD的交叉領域。其準確定義是指兩個以上來自不同專業領域的設計主體(或稱專家),通過一定的信息交換和相互協同機制,分別完成各自的協作任務,以實現共同的設計目標。
1 協同工作的概念與內涵
計算機支持的協同工作CSCW(Computer Supported Collaborative Work)中指地域分散的群體成員借助計算機及其網絡技術,相互通信、共同協調與協作來完成一項任務。
在CSCW系統中,人們圍繞著共同的任務需要進行交互通信(Interactive/Communication)、協調(Coordination)\\協作(Collaboration)、協同(Cooperration)等基本活動。根據交互雙方的空間位置和應答方式,協同開發的工作方式可分為以下四類。
1)面對面交互方式即同步模式:多個協作成員在同一時間、同一地點進行同一產品的開發,如共同決策、協同設計等,通常以會議的形式進行,此模式最簡單。
2)異步模式:是多個協作成員在同一地點、不同時間進行同一產品的協同開發,如輪流作業等,可通過共享數據庫實現。
3)分布式異步模式:多個協作成員在不同時間、不同地點進行同一產品的協同開發,需要網絡的支持,可通過文件管理、E-mail、分布式數據庫實現;
4)分布式同步模式:多個協作成員在同一時間、不同地點進行同一產品的協同開發,如聯合設計、聯合決策、視頻會議等,此模式實現的難度大,除了實現異步分布式交互時所需的各種支持工具外,還需要有能夠支持實時協作的環境,計算機也不再是設計自動化的資源,而是協作的媒介。
從協同環境來看,計算機協同設計應當包括3個層次的協同,分別對應Web的三層客戶/服務結構,如圖2所示:

1)用戶層協同:異地的設計小組內或設計小組間能夠通過界面共享、文件共享、協同會議等方式,便捷地交流設計信息。
2)協同及網絡協同:不同層次的用戶操作不同層次的應用系統,不同級別用戶之間建立不同類型的信息交互方式,如總工程師系統(總臺)、設計師系統(終端)。
3)據層協同:不同小組所用的工具不同、所需的數據側重點不同,為滿足設計者對產品信息的不同需求,應當建立一個統一的共享網絡數據庫。
近幾年來,國內外學術界對協同CAD技術展開了研究,基本可歸結為兩大流派。
1)NetMeeting為代表的應用共享系統,復用了單用戶CAD系統的圖形處理功能,兼容了現有CAD系統的數據格式,但只能提供發言權協作機制,僅支持界面協作,因此,協作性能差。
2)以Distributed Sketehpnd為代表的CSCW原形系統以及白板、協同圖形編輯系統,雖然強調協作性能,但是在圖形處理能力、數據的兼容性、開放性等方面與現有的CAD系統相比還有明顯差距,因此,只適用于草擬和批注。
2000版以后的AutoCAD就增加了聯機協作和網上發布圖紙功能,屬于第一流派的開發思路,其協同體現在IE能夠支持圖紙發布,并且后臺能夠調用Net Meeting進行界面共享、文件傳送以及文字、語音、白板等方面的交流,它利用了嵌套技術,把Net Meeting作為一個控件嵌套到AutoCAD當中。這種系統借助Internet進行了一定限度的信息交流,但未能提供CAD圖形數據庫的共享以及應用系統間的協作,是屬于一種低耦合層次的協同。
為了實現高耦合層次的協同,本文對異地協同設計系統進行一些大膽的設想。

圖3 協同CAD系統的整體結構
3 異地協同CAD系統的基本思路
3.1 協同CAD系統的目標功能
高耦合層次的異地協同設計系統應是開放式的,既具備AutoCAD的強大的繪圖功能,又具備良好的網絡協作功能:
1)強大的繪圖功能:具有AutoCAD的全部繪圖功能;
2)數據管理功能:包括數據權限控制、版本管理、更改通知、數據上傳、下載、數據共享;
3)網絡交流及決策功能:提供實時的、多方位的交互式協商,并能進行沖突識別及處理;
4)項目管理功能:對設計人員進行角色定義、權限分配,以便進行任務分配、進度監控、追蹤設計過程等。
3.2 系統的整體架構及工作機理
按照圖2所述的三層協同結構,本系統規劃為如圖3所示的整體結構。在整個系統中,重點功能模塊在于會話管理功能模塊,與協同會話管理又是通過會議和會話方式來完成。會議(Conference)是指一組用戶以協同的方式共同工作,用戶之間的協作是借助協同應用程序來實現的;會話(Session)是指一組應用程序以協同的方式共同工作,屬于同一個會話的所有應用程序之間相互交換信息和共享行為,彼此間遵守共同的通信協議。會議是針對人員之間的協同工作而言的,會話則是針對應用程序之間的協同工作而言的,實質上會議與會話是同一個概念的2種表述方式。
由于協同的含義主要強調人-人之間的交流,故本文僅對會話管理模塊中的會議過程進行構思。協同CAD會議過程一般分為4個階段:會議準備階段、會議開始階段、同步設計階段和結束階段,其工作流程圖4所示。
本系統采用的是內部分步:獨立設計、分步審核,圖形庫讀寫權限由總設計師掌握,并發送版本更新信息給各設計師。雖然系統的內部工作過程是異步的,但是從系統的外部看仍屬于同步協同。
4 技術實現及結論
4.1 權限控制管理
為了使協同用戶間的設計行為相互協調,必須有用戶管理機制,在WinNT中的用戶/角色/權限機制就是一個極為合理的協作管理機制。三者之間的關系可用圖5表示。

圖5 用戶、權限和角色的關系
用戶:是參與協同人員的標識,一個用戶可以被賦予某種角色和相應權限;
權限:是用戶執行特定操作的授權,只有具備某種權限,用戶才能執行相應的會議操作,不同用戶具有不同的操作權限。
角色:是多種權限的組合,是對具有相同權限的同類用戶的抽象。
在協同CAD系統中,協同用戶按其操作權限可具體劃分為如下的3類角色。
總設計師:具最大權限,包括刪除、添加用戶的管理權限;刪除工程、添加工程、分割模型、合成模型、圖紙修改、圖形數據存取等權限以及4個支撐庫的管理權限,應有系統管理員資格。設計者:參與設計的人員,有權讀取、下載支撐庫的信息,但不能自主存盤或修改。瀏覽者:市場人員、客戶等,可瀏覽指定文件夾,可發表評論,但不具備下載、上傳權。各級用戶登陸協同系統時,通訊代理均對其進行身份驗證,驗證過程如圖6所示。

圖4 工作流程圖

圖6 權限驗證流程
4.2 開發工具及實現步驟
由于Visual C++的ARX工具包,是AutoCAD核心開發軟件,它與AutoCAD在同一地址空間運行,能夠直接訪問AutoCAD的數據庫、圖形系統及幾何造型核心,不同模塊間具有良好的接口匹配性和兼容性;同時,現有的微軟基本類庫MFC(Microsoft Foundation Class)集成了豐富的COM,這有利于WinNT的權限管理功能和共享功能的實現。所以,開發工具選擇了Visual C++作為主體開發工具,兼用JAVA來完成某些網絡功能。
本系統的實現過程由三大步驟完成。
1)在AutoCAD2002基礎上進行二次開發,把Microsoft NetMeeting作為一個模塊鑲嵌到AutoCAD中,提供共享白板、共同編輯、電子郵件、網絡會議等網絡服務,增加協同功能;
2)利用分布式對象技術如CORBA、DCOM等對各模塊進行封裝、集成,并通過各自的軟件接口進行通訊;
3)通過建立協同支持環境,應用CAD數據交換和網絡直接啟動等方式來支持協同合作,以保證協同用戶間的資源交流與繼承。
本文提出的是一種協作性能與應用功能相結合的協作框架,開發過程充分復用了AutoCAD系統的繪圖功能及WinNT的權限管理功能,使不同層次的用戶能夠得到不同程度的協作支持及數據共享,是屬于分布式、集成化及開放的多用戶協同的CAD工作系統,本設計是科學可行的。