換熱器CAD系統的分析與設計
張燕 劉東學
(大連理工大學化工學院化機系)
摘 要:面向對象方法和用于軟件設計過程中軟件模型的建立的統一的UML建模技術是用于開發大型軟件系統的重要方法。論述了如何將二者有機結合進行換熱器CAD系統的分析與設計。
關鍵詞:換熱器 面向對象 統一建模語言 UML 分析 設計 CAD
0·引言
換熱器是很多行業中廣泛使用的熱量交換設備,它不僅可以單獨作為加熱器、冷卻器等使用,而且是一些化工單元操作的重要附屬設備。國內換熱器CAD系統由于起步比較晚,在人機交互、零件圖的繪制等方面仍然不完善,效果不能令人滿意。
本文利用VC++6·0語言,運用先進的面向對象的軟件設計方法和統一建模語言UML對系統建模,完善了換熱器CAD系統。本文采用了國標GB151完成設計計算,并實現了說明書的自動生成、材料報價單的自動生成以及零部件圖和裝配圖的自動繪制功能。
1·面向對象方法
面向對象方法具有下述四個要點:
(1)認為客觀世界是由各種對象組成的,任何事物都是對象,復雜的對象可以由比較簡單的對象以某種方式組合而成。
(2)把所有對象都劃分成各種對象類,每個對象類都定義了一組數據和一組方法。數據用于表示對象的靜態屬性,是對象的狀態信息。
(3)按照子類(派生類)與父類(基類)的關系,把若干對象類組成一個層次結構的系統(類等級)。
(4)對象彼此之間僅能通過傳遞消息互相聯系。
由面向對象方法的特點我們可以知道:面向對象分析方法中的對象是客觀世界對象的直接映射,克服了傳統方法學穩定性、可修改性和可重用性差的缺點,比采用面向過程的分析方法設計的系統更易理解,也增強了系統的可擴充性。
2·統一UML建模語言
統一建模語言[1]是一種可視化的建模語言,全面體現了面向對象的設計思想,可以對使用面向對象技術開發的系統進行說明、可視化和編制文檔,提供了便于不同的人之間有效地共享和交流設計結果的機制,以其精確強大的系統描述功能在最大程度上消除了建模的模糊性和不同建模語言間存在的不合理的差異,使得用戶與開發者之間更加易于溝通,互相理解。它貫穿于換熱器CAD的需求分析、系統分析、設計、實現等各階段,使開發過程更加規范、準確、高效。
統一UML建模用來描述模型,它用模型來描述系統的結構或靜態特征或動態特征。它從不同的視角為系統建模,形成不同的視圖,每個視圖代表完整系統描述中的一個抽象,顯示系統中的特定的方面;每個視圖由一組圖構成,圖中包含了強調系統中某一方面的信息。UML包括了兩類圖和5種視圖,兩類圖分別為靜態圖和動態圖,靜態圖包括用例圖、類圖、對象圖、構件圖和實施圖,動態圖包括狀態圖、順序圖、協作圖和活動圖。
本系統中先采用靜態圖中的用例圖分析系統所要實現的功能,建立靜態模型,然后由各個零件之間的交互情況確定先后順序從而建立系統的動態模型。
3·HECAD系統的面向對象分析
3·1 系統需求分析[2]
本軟件面向的是化工設備設計人員,在化工設計完成的基礎上進行結構設計,主要針對機械設計和設計文檔編制兩個層次。機械設計主要是針對換熱器的工藝設計、結構設計以及強度設計,結構設計和強度設計是在工藝設計之后進行的,工藝設計中的要求也是機械設計的基本依據;設計文檔編制主要是指在機械設計完成之后設計說明書的自動編制、材料單的自動生成以及零件圖和裝配圖的自動繪制。
依據系統的功能需要將本系統分為四個子系統:
(1)結構設計子系統 在這個子系統內主要包括了整體設計、零部件設計以及自動排管設計。
(2)設計文檔管理子系統 實現設計說明書的自動編制、材料單的生成以及零件圖和裝配圖的自動繪制。
(3)設計工具子系統 包含了數據庫管理,數據庫管理中主要是材料庫和標準零部件庫;計算器是設計過程中不可缺少的工具;此外,還包括設計日志。
(4)幫助系統 該子系統的主要內容是設計資料和使用說明,可通過幫助菜單察看幫助文件,選擇要察看的幫助內容;另一種就是F1幫助,當按下F1鍵便可根據光標所在位置將窗口中的標志符映射到幫助上下文ID,以獲得相應的幫助內容,與一般W indows幫助系統的使用方法相同。
HECAD系統采用交互式的設計環境,設計中采用多文檔組織管理,將數據輸入、圖形提示、計算結果顯示以及設計信息及時反饋集成于設計界面中。零部件的設計采用向導方式,用戶按照零部件的設計步驟進行設計,同時對輸入參數進行合理性檢查,出現異常時向導給出提示和解決方法。在換熱器整體設計完成后,整理設計數據,生成設計說明書,產生繪圖文件進行參數化圖形繪制。
HECAD系統功能圖如圖1所示。
3·2 統一UML建模技術分析建模
3·2·1 建立靜態模型
由UML建模的系統的用例圖如圖2所示。
通過對用例模型的分析,在設備設計中,幾乎所有的零件都具有諸如設計、選型、顯示設計結果、生成說明書、生成繪圖數據文件等共同行為,因此我們可以將所有零件具有的屬性泛化出一個抽象的公共基類CGeneralPar,t大部分的零件類都是該類的子類。根據換熱器的組成和工藝設計要求,可以將其零件類大致劃分為管板類(CPart_GuanBan)、法蘭類(CPart_FaLan)、封頭類(CPart_FengTou)、圓筒類(CPart_YuanTong)、折流板類(CPart_Zhe-LiuBan)、開孔補強類(CPart_BQ)等等。其中,由于封頭和圓筒有許多相似的性質和公共服務,從而泛化出CPart類。這些類的繼承關系類圖如圖3所示。這些實體和抽象類具有一般和特殊關系,即繼承關系,從而更好地利用了對象(或類)的可復用性。此外,換熱器由部件和其他零件組成,部件由零件組成。如管箱由法蘭、封頭和管箱短節組成;后端結構由后端短節、封頭和法蘭組成;而換熱器由上述部件和其它零部件組成。零部件類由各零部件組成,從而換熱器類與各部件類和零部件類之間形成了聚集關系。通過整體與零部件之間的繼承-聚集關系,得到以下HECAD系統設備設計用例的類模型,即靜態模型。
3·2·2 建立動態模型
系統的靜態模型顯示了系統的組成和結構,這些組成的零部件在設計過程中不是孤立的,它們彼此之間都有交互,按照設計的先后順序的不同進行合理安排,從而需要建立系統的動態模型。動態模型一般包括四種:
(1)狀態圖
描述系統元素狀態條件和響應,它由狀態、轉換、事件和活動組成。它對于接口、類或協作的行為建模尤為重要,而且它強調對象行為的事件順序。
(2)順序圖
按時間順序描述系統元素間的交互,是交互圖。交互圖展現了一種交互,它由一組對象和它們之間的關系組成,包括在它們之間可能發送的消息。
(3)協作圖
按照時間和空間的順序描述系統元素間的交互和關系,也是交互圖,強調收發消息的對象的結構組織。順序圖和協作圖是同構的,這意味著它們可以互相轉換。
(4)活動圖
描述系統元素的活動,是一種特殊的狀態圖,它展現了在系統內從一個活動到另一個活動的流程。活動圖專注于系統的動態視圖,它強調對象間的控制流程,對于系統的功能建模特別重要。
在換熱器設計計算和校核計算用例中,零部件類封裝了自己的設計向導類,設計向導類又封裝了需要的工程數據庫類,其主要存在的對象為系統框架對象、零部件對象、設計向導對象、數據庫對象,設計過程是獨立的,從而體現了封裝性。用戶首先選擇換熱器某零部件設計(或換熱器整體設計),則系統框架中的文檔對象激活相應的零部件對象,零部件對象激活相應的設計向導對象,引導用戶能動地選擇或輸入計算所需數據。如需數據庫數據,則零部件對象自動激活數據庫對象進行數據查詢工作。查詢成功,返回所需數據庫數據,否則報錯,提示用戶重新輸入正確數據,完成設計計算,并將所得數據保存在零部件(換熱器)對象中。在完成設計后,用戶就可選擇產生說明書、零部件圖(裝配圖)。
HECAD系統的動態模型圖即順序圖如圖4所示。
4·換熱器系統的CAD設計
4·1 換熱器CAD系統的兩個子系統
換熱器CAD系統由功能劃分為兩個子系統:換熱器設計計算子系統和設計文檔子系統。其中,設計文檔子系統包括自動生成設計說明書、材料報價單及裝配圖和零部件圖的自動繪制三部分。
這兩個子系統的連接采用OLE自動化來實現。OLE自動化技術可以在一個應用程序中操縱其他應用程序對象或暴露一個應用程序的對象供其調用,通過OLE自動化的COM接口來實現換熱器設計計算子系統與Word2000、AutoCAD2000和Access2000的連接,從而借用Word的字處理功能、AutoCAD的繪圖功能和Access制作關系表的功能生成設計說明書、設計圖和材料報價單。系統中的OLE類封裝了這些接口。
4·2 人機交互子系統
人機交互子系統的設計主要是對人機界面的設計,本系統包括總體界面框架設計和設計向導對話框設計。
換熱器CAD系統的總體界面設計采用多文檔結構,界面為W indows標準界面,包括菜單欄、工具欄、設計欄、狀態欄和客戶區。每個文檔的視圖包括兩部分:左邊采用樹視圖顯示零部件類型和零部件名稱,由樹形控件來完成;右邊采用列表視圖顯示某零部件的具體設計數據,由列表控件來完成。當光標選中左邊的樹控件中已經設計的零部件時,其主要設計參數及結果將立即顯示在右邊的列表視圖中。這由系統框架類中的視圖類CHECADView來實現。
零部件的設計采用向導(W izard)方式。向導指示用戶按照零部件的設計步驟一步一步地進行設計,同時對用戶所錄入的初始參數進行合理性檢查。當出現異常情況時,設計向導給出提示或解決問題的方法。在問題解決之前,不能進行下一步設計。如果對前幾步的設計不滿意或得出錯誤的設計結果,可以隨時返回重新設計。這些由設計向導類來實現,它是由MFC中CPropertyPage類派生出來的屬性頁類和由MFC中CPropertySheet派生出來的屬性頁管理類組成。
4·3 數據管理子系統
本系統采用Access2000組建設計計算中所用到的材料庫和標準零部件庫,采用簡單、方便的DAO技術對其進行訪問,實現數據庫的瀏覽、查詢和更新等操作,通過把這些操作封裝成數據庫類來實現,它是由MFC中CD-aoRecordset類派生出來的。
5·結論
換熱器CAD系統采用了面向對象的方法對系統進行分析和設計,利用先進的統一UML語言建立了系統的靜態模型和動態模型,建立了標準零件庫、材料特性庫等等,在設計計算完成后利用OLE技術自動生成設計說明書和零部件圖以及裝配圖,實現了設計結果的可視化和設計向導的及時反饋功能。
參考文獻
[1]Joseph Schmuller著.李虎,王美英,萬里威,等譯.UML基礎、案例與應用[M].北京:人民郵電出版社, 2002.
[2]朱三元,錢樂秋,宿為民著.軟件工程技術概論[M].北京:科學出版社, 2002.
標簽:
相關技術