羅 行
(核反應堆系統(tǒng)設計技術重點實驗室,四川 成都 610000)
PDMS 軟件的設備設計建模主要是將一些規(guī)則的基本體進行搭建,但這種三維設計建模方式對不規(guī)則的異形板要進行準確的三維建模的話,則需要花費不少的時間。 而PDMS 軟件的結(jié)構(gòu)設計建模主要是通過定義圖形各個點的坐標再通過后臺的拉伸完成建模,但對于復雜的結(jié)構(gòu)則需要花費不少的時間來定義各個點的坐標和方向。 另外,一些在AutoCAD 中容易實現(xiàn)的平面圖形,但要在PDMS 中完成三維建模操作卻比較煩瑣。此外,PDMS 三維設計建模不支持復雜的曲線、曲面和截面,使得在PDMS 中的三維設備模型不能真實反映其本身的外形,影響建模效果。 因此本文提出了一個解決方案,在AutoCAD 和PDMS 上進行二次開發(fā),通過AutoCAD 提取點的坐標,再在PDMS 中一鍵生成三維模型,大大提高了PDMS 三維設計建模的效率,實現(xiàn)二三維的協(xié)同設計。
PDMS(Plant Design Management System) 工廠三維布置設計管理系統(tǒng), 可以利用PML 可編程宏語言的二次開發(fā),為工程設計人員提供全新的設計方法和手段。
AutoCAD 是一款廣為流行的計算機輔助設計軟件, 能利用內(nèi)嵌的AutoLISP 進行二次開發(fā),為AutoCAD 擴充具有一定智能化、參數(shù)的功能,實現(xiàn)真正意義上的計算機輔助設計。
PDMS 中完成設備和結(jié)構(gòu)的三維設計建模主要是建立一個詳細的3D 數(shù)字工廠模型, 保證了設計結(jié)果的準確性。 雖然PDMS 可以詳細的設計管道和支吊架施工圖等, 但卻不能像其他三維軟件(CATIA、Revit等) 可以設計詳細的設備設計圖和建筑施工圖等,故在PDMS 中完成設備和結(jié)構(gòu)的三維建模時,可以采用逼近法,通過獲取封閉圖形中點的坐標來建模,可以根據(jù)實際情況靈活控制逼近的精度,獲取的點越多越逼近,完成的三維設計建模精度越高。
相比較PDMS,在AutoCAD 中則可以很容易地設計出各種形狀的平面圖形,也可以快速地捕捉各個點的坐標, 具有極好的二維繪圖設計能力, 但是卻與PDMS 系統(tǒng)之間缺乏數(shù)據(jù)協(xié)同性。 因此可以在AutoCAD 和PDMS 之間開發(fā)軟件接口,通過編寫的二次開發(fā)程序來捕捉AutoCAD 平面圖形的各個點的坐標,讀取坐標后進行參數(shù)化建模完成三維設計,就可以實現(xiàn)從二維到三維的一個轉(zhuǎn)換。
設計人員在AutoCAD 中調(diào)用二次開發(fā)程序點擊圖形各個點的坐標, 并將讀取的數(shù)據(jù)存儲, 然后在PDMS 中調(diào)用PML 語言編寫的二次開發(fā)程序,將AutoCAD 中讀取的數(shù)據(jù)轉(zhuǎn)換為PDMS 平臺的模型數(shù)據(jù), 再在二次開發(fā)程序窗口輸入設計模型的命名、厚度、標高等信息完成三維設計建模。
AutoCAD 中捕捉圖形各個點的坐標,其代碼如下:
在AutoCAD 主界面“工具”菜單中選取“加載應用程序”,在彈出的對話框中,通過“查找范圍”選取該程序進行加載。
從AutoCAD 二次開發(fā)程序中捕捉圖形各個點的坐標儲存在“D:CAD.txt”文件中,PDMS 二次開發(fā)程序打開時將自動讀入該文本文件并進行信息的提取和處理,從而將數(shù)據(jù)由CAD 系統(tǒng)傳入到PDMS 系統(tǒng),其數(shù)據(jù)傳輸代碼如下:
PDMS 二次開發(fā)程序?qū)⑻崛〕龅淖鴺诉M行參數(shù)化模型的設計建模,在PDMS 中調(diào)用的二次開發(fā)程序界面如圖1 所示。
圖1 PDMS 二次開發(fā)程序界面
圖1中正下方顯示的坐標為自動讀取的通過AutoCAD 二次開發(fā)程序捕捉的圖形各個點的坐標。 點擊“Gwall”可以一鍵生成墻體,點擊“Floor”可以一鍵生成樓板,點擊“Extr”可以一鍵生成拉伸體,點擊“Nxtr”可以生成負實體對設備和結(jié)構(gòu)進行開孔,點擊“Panel”可以一鍵生成鋼平臺樓板,點擊“SCTN”可以生成型鋼,點擊“Spec”是選擇型鋼的等級。 設計人員可以在“標高”“厚度”“命名”欄修改需要的設計信息。
應用實例: 一鍵生成一個復雜的拉伸體, 如圖2所示中的凸耳。
圖2 凸耳CAD 平面圖
首先在AutoCAD 啟用二次開發(fā)程序捕捉圖形各個點的信息,捕捉完后按ESC 鍵程序會自動存儲捕捉點的坐標,如下圖3 中操作所示,命令欄中也會提示請選擇第幾個點。
圖3 AutoCAD 二次開發(fā)程序捕捉示意圖
其次在PDMS 中調(diào)用PDMS 二次開發(fā)程序,設置“標高”+1000 mm,“厚度”50 mm,“命名”凸耳,設置開孔半徑為12,界面中屬性設置和生成的三維模型凸耳如圖4 所示。
圖4 PDMS 二次開發(fā)程序創(chuàng)建模型凸耳示意圖
同樣, 對于復雜的旋轉(zhuǎn)體, 也可以先利用AutoCAD 二次開發(fā)程序捕捉旋轉(zhuǎn)平面的坐標,再利用PDMS 二次開發(fā)程序生成旋轉(zhuǎn)體的復雜平面, 通過旋轉(zhuǎn)即可生成旋轉(zhuǎn)體三維模型,極大方便快捷地完成旋轉(zhuǎn)體三維設計。
PDMS 二次開發(fā)程序生成三維設計模型的部分代碼如下:
本二次開發(fā)程序以簡便獲取AutoCAD 平面圖形坐標的方式在PDMS 中實現(xiàn)三維設計建模,其不僅適用于PDMS 復雜形體的設備和結(jié)構(gòu)三維設計建模,也適用于各種簡單規(guī)則形體的三維設計建模, 相較于PDMS 自帶的低效率不完美的建模方式, 該二次開發(fā)程序更快捷高效率,也省去了設計人員建模前需要測量尺寸并計算轉(zhuǎn)化的過程。
在實際工程項目中,該二次開發(fā)程序可以適用于AutoCAD 和PDMS 的各個版本, 實現(xiàn)了AutoCAD 與PDMS 二三維的協(xié)同設計, 大大地提高了設計人員的建模效率,縮短了設計進度并提高了工程設計質(zhì)量。