PipeCAD之管道標準庫PipeStd
eryar@163.com
Key Words. PipeCAD, PipeStd, 管道設計軟件,管件庫
1. Introduction
前不久,兩位老友徐總和毛總在上海浦東金橋的一茶一坐小聚,回想到幾年前我們仨在那里聚會的情景。他們分別在A公司和I公司,我當時在做SPD的開發。在一起聊的話題也是關于設計軟件的,當時也有一些思想碰撞的火花,想著做出一個什么軟件,成為CEO,迎娶白富美,走上人生頂峰。結果幾年過去,當年吹過的牛B,沒有實現。其中有一個就是做一個管道標準庫程序,方便管件的定義。定義好之后,可以導入AVEVA PDMS和Intergraph SmartPlant。
看著國內工廠/船舶設計軟件如PDSOFT,UESOFT,PDMAX還有船舶設計軟件SPD都不溫不火,而且國外的AVEVA PDMS/Marine, Intergraph SmartPlant已經占據了國內市場,有時我也在想開發一個原來夢想的管道設計軟件的意義和價值。
AVEVA PDMS/Marine我覺得是簡單易用的軟件,一致的操作方式,基于CSG的造型算法,還提供了二次開發語言PML及C#來對程序進行靈活擴展?;谖募膶哟螖祿?,并提供了數據庫的增、刪、改及數據回退功能,可以用于大中型項目設計。由于很容易得到和諧版,所以用戶很多。
Intergraph SmartPlant是美國的一款軟件,由于其價格昂貴,在國內的用戶都是不差錢的單位。由于沒有使用過,所以對其不便于評價。但是由于國內外有業主會指定這款軟件,所以國際上用戶也很多。
再看國內的工廠/船舶設計系統PDSOFT,UESOFT,PDMAX及SPD等,都是基于AutoCAD開發的。早期基于AutoCAD,因為AutoCAD比較普及,所以會吸引一些會AutoCAD的用戶。但是基于AutoCAD開發程序弊端之一是AutoCAD版本升級,程序要想適應AutoCAD,也必須跟著升級。弊端二是AutoCAD的提供的開發庫ObjectARX, .NET等都不是開源的,如果是那些庫出現BUG或是不支持的功能,要么去和Autodesk公司溝通,要么只有繞道了。有的使用ObjectARX的C++庫開發,雖然程序性能好,還在使用MFC做GUI,但是開發效率低。弊端之三是有些功能與AutoCAD的功能糾纏不清,用戶體驗不太友好。
為了實現幾年前的夢想,我決定開發一個管道設計軟件PipeCAD。
2. PipeCAD
對PipeCAD的一個定位就是適用于中小型項目的管道設計軟件。因為大型項目的用戶一般都是用PDMS或SmartPlant。
使用開源庫OpenCASCADE來進行三維圖形開發,使用開源庫Qt來進行GUI開發,提高程序開發效率。因為使用開源技術,出現BUG可以從根據上解決。不依賴其他閉源的軟件,不會有其他軟件升級帶來的影響。
業務核心功能都自己實現,程序自主可控,方便增加新功能。
PipeCAD的初步開發以下功能模塊:
l 管件庫等級庫管理程序PipeStd;
l 三維設計模塊PipeCAD;
l 管道軸測圖出圖模塊IsoAlgo。
3. PipeStd
PipeStd主要用來對管件標準數據、管道等級等數據進行管理。有了管件數據,就可以對管件進行三維顯示。有了管道等級,就可以在三維設計模塊來使用管件來對管道進行建模。PipeStd的使用方式與PDMS的Paragon模塊類似,通過參數化的方式來定義管件。目前程序的主要功能已經實現,程序界面如下圖所示:

其中還設想的功能有:
l 導入、導出PDMS中的管件及管道等級Piping Specification數據;
l 導入、導出SmartPlant中的管件及管道等級Piping Specification數據;
4. Conclusion
兩位友人的提醒,決定開發一個三維管道設計軟件PipeCAD。為中小型項目的管道設計提供了一個選擇。核心功能都自己實現,程序自主可控。不依賴其他軟件,如AutoCAD,提供良好的用戶體驗。