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