孫恩凱 蔣 鑫 孫立瑩 朱 軍
(1.林德工程(大連)有限公司 2.大連中集重化裝備有限公司)
參數(shù)化在壓力容器標(biāo)準(zhǔn)件繪圖中的應(yīng)用
孫恩凱*1蔣 鑫2孫立瑩1朱 軍1
(1.林德工程(大連)有限公司 2.大連中集重化裝備有限公司)
利用AutoCAD中的Visual LISP程序以及Excel表格中的函數(shù)和VBA進行參數(shù)化繪圖,可大大提高設(shè)計效率和準(zhǔn)確率。以標(biāo)準(zhǔn)彎頭為例,闡述了壓力容器設(shè)計中常用標(biāo)準(zhǔn)件的參數(shù)化繪圖方案。
參數(shù)化繪圖 壓力容器標(biāo)準(zhǔn)件 標(biāo)準(zhǔn)彎頭 Visual LISP VBA
在壓力容器的設(shè)計中,經(jīng)常會用到標(biāo)準(zhǔn)零件,如封頭、法蘭、補強圈和墊片等,它們大多形狀相同,僅尺寸變化。而設(shè)計者經(jīng)常是已知標(biāo)準(zhǔn)件的型號,如公稱尺寸、系列等,然后根據(jù)已知量去查詢相應(yīng)標(biāo)準(zhǔn)得到詳細(xì)尺寸再進行繪圖。如果每次繪制這些標(biāo)準(zhǔn)件都重復(fù)以上的工作,會耗用大量時間,而且容易出錯。為此,本文提出了一個簡便易行的參數(shù)化繪圖解決方案。參數(shù)化繪圖是指將圖形中的定量信息變量化,使之成為可任意調(diào)整的參數(shù)。對變量化參數(shù)賦予不同數(shù)值,就可得到結(jié)構(gòu)相似而尺寸不同的圖形。將參數(shù)化應(yīng)用到壓力容器標(biāo)準(zhǔn)件的繪圖上,對于提高設(shè)計人員的工作效率和工作準(zhǔn)確率將起到非常重要的作用。
AutoCAD和Microsoft Excel是壓力容器設(shè)計中常用的軟件。利用AutoCAD提供的二次開發(fā)工具Visual LISP[1]以及Excel表格[2]中的函數(shù)和VBA完成參數(shù)化繪圖的設(shè)計,即可一鍵在AutoCAD中出圖。本文以繪制標(biāo)準(zhǔn)彎頭為例,闡述參數(shù)化繪制標(biāo)準(zhǔn)零件的方法。
1.1 Visual LISP
Visual LISP是 AutoCAD自帶的一個集成的可視化Autolisp的開發(fā)環(huán)境。 Autolisp是為擴展和自定義AutoCAD功能而設(shè)計的一種編程語言。它基于起源于1950年代末的LISP語言。Visual LISP(VLISP)是為加速Autolisp程序而開發(fā)的設(shè)計軟件工具,在VLISP中,可在單個環(huán)境中完成絕大多數(shù)必要的操作,其中包括文本編輯、程序調(diào)試以及與AutoCAD和其他應(yīng)用程序的交互等。
1.2 VBA
Visual Basic for Applications(VBA)是 Visual Basic的一種自動化的宏語言,主要用來擴展Windows的應(yīng)用程序功能,特別是Microsoft Office軟件。1994年發(fā)行的Excel 5.0版本中,即具備了VBA的宏功能。利用VBA,可以實現(xiàn)以下功能:
(1)規(guī)范用戶的操作,控制用戶的操作行為;
(2)使操作界面人性化,方便用戶的操作;
(3)通過執(zhí)行VBA代碼,迅速實現(xiàn)多個步驟的手工操作。
2.1 總體思路
用參數(shù)化繪制封頭、法蘭、彎頭、墊片等標(biāo)準(zhǔn)件的方法大體相同。本文以壓力容器用90°彎頭為例,對參數(shù)化繪圖方法作一介紹。設(shè)計的總體思路如圖1所示。
圖1 設(shè)計流程
2.2 具體步驟
2.2.1 建立數(shù)據(jù)
查閱GB/T 12459—2005[3],把90°彎頭的幾何尺寸輸入到Excel表格中,如圖2所示。
2.2.2 編輯輸入條件
為方便使用,可把彎頭的輸入條件設(shè)置成可篩選的列表形式,操作方法如下。
首先按圖3所示編輯Excel表格,然后分別對單元格K1、K2、K3進行如下操作:點擊Excel表格 (本文以Microsoft Excel-2010英文版為例)中的 “Data” → “Data Validation” → “Allow” →“List”,再把篩選條件輸入到 “Source”欄中,用逗號隔開,如圖4所示。設(shè)置后效果如圖5所示??稍诒碇羞x擇彎頭的型號。
圖2 標(biāo)準(zhǔn)彎頭尺寸
圖3 彎頭輸入條件
圖4 設(shè)置輸入條件
2.2.3 尺寸生成
為直觀起見,可繪出彎頭示意圖,并用Excel公式自動查找和標(biāo)記出對應(yīng)尺寸,見圖6。
單元格中公式輸入如下:
圖5 彎頭選型
圖6 標(biāo)準(zhǔn)彎頭尺寸
2.2.4 編寫VLISP語言用于繪制彎頭圖
為方便隨后的VLISP程序編寫,可根據(jù)個人習(xí)慣,用Excel公式表示出各點的坐標(biāo)。本文對該型號彎頭各點坐標(biāo)輸入方案如圖7所示。
各單元格輸入如下:
圖7 彎頭坐標(biāo)
單元格C30~C35為VLISP命令。利用AutoCAD繪制該彎頭的VLISP語言代碼如下:
其中,應(yīng)把代碼中的變量用Excel公式自動運算出來,轉(zhuǎn)化后的公式如下:
然后把其輸入到Excel任意單元格中,本文輸入到單元格J5中。
2.2.5 編寫VBA語言,自動繪圖
接下來需要做的是把單元格J5中的VLISP語句復(fù)制到AutoCAD中的命令窗口中,這樣彎頭圖形就會在AutoCAD中自動繪制出來。為了方便使用者,可通過編寫VBA程序來自動化復(fù)制VILISP語句并打開CAD。具體方法如下:
打開 VBA編輯器:點擊 “Developer” →“Visual Basic”,也可以用<Alt+F11>組合鍵打開。在編輯器中輸入如下VBA語句:
其中 “C:Program FilesAutodeskACADM 2011acad. exe”為AutoCAD目錄,如圖8所示。
圖8 VBA編輯器
然后把此程序指定給按鈕。操作方法:點擊“Developer”→ “Insert” → “Botton”→ “Assign Macro”→ “Macro1”,如圖9所示。
圖9 程序指定按鈕
可根據(jù)個人習(xí)慣對按鈕重命名。本文設(shè)計成圖10所示的名稱。
圖10 按鈕
2.2.6 設(shè)計完成
至此,標(biāo)準(zhǔn)彎頭的參數(shù)化繪圖便完成了。使用時, 只需在 “公稱尺寸”、“形式”、“系列” 中選出需要的型號,然后點擊圖10所示的按鈕便會自動打開AutoCAD。在CAD命令窗口中右鍵粘貼命令,如圖11所示。這樣所選型號的彎頭圖形便會在AutoCAD中自動生成,如圖12所示。
圖11 粘貼命令
圖12 生成的CAD彎頭圖
本文以90°彎頭為例,詳細(xì)闡述了參數(shù)化繪圖的方法。通過此方法,可以提高設(shè)計效率,并減少手工輸入錯誤。壓力容器許多標(biāo)準(zhǔn)件都可參照此方法進行參數(shù)化繪圖。
用這種方法進行參數(shù)化繪圖較為簡單,只需掌握Visual LISP和VBA基本的編程方法和Excel函數(shù)、公式即可,無須專業(yè)的編程技能。一般的壓力容器設(shè)計人員經(jīng)過簡單的學(xué)習(xí)即能進行操作。這種參數(shù)化繪圖方法還可以進一步改進,對于編程技能水平較高的技術(shù)人員,可以通過C語言、對話框控制語言等開發(fā)交互式界面,這樣可以使使用者更直觀地知道各參數(shù)含意,減少錯誤。
[1]方戈亮.Visual LISP程序設(shè)計 [M].第2版.北京:清華大學(xué)出版社,2010.
[2]Excel Home.Excel實戰(zhàn)技巧精粹 [M].北京:人民郵電出版社,2007.
[3]GB/T 12459—2005.鋼制對焊無縫管件 [S].
App lication of Parameterization in Draw ing of Pressure Vessel Standard Parts
Sun Enkai Jiang Xin Sun Liying Zhu Jun
Parameterized drawing with Visual LISP in AutoCAD,Excel functions and VBA can greatly improve design efficiency and accuracy.Taking a standard elbow as an example,expounds the parametric drawing program for common standard parts in pressure vessels design.
Parametric drawing;Pressure vessel standard parts;Standard elbow;Visual LISP;VBA
TQ 050.3
2013-02-05)
*孫恩凱,男,1985年生,助理工程師。大連市,116100。