郭克希, 李國志, 楊 巍
(長沙理工大學汽車與機械工程學院,湖南 長沙 410114)
汽車起重機吊臂參數化設計系統研發
郭克希, 李國志, 楊 巍
(長沙理工大學汽車與機械工程學院,湖南 長沙 410114)
根據汽車起重機吊臂各節臂之間的結構尺寸相互關聯特點,采用尺寸驅動的方法,利用VB對三維軟件SolidWorks的二次開發技術,研發了汽車起重機吊臂的參數化設計系統。該系統通過輸入汽車起重機基本臂的截面參數,設定吊臂的臂節數,可快速建立汽車起重機吊臂的三維模型,實現了吊臂設計的自動化、系列化,從而縮短了設計周期,顯著提高了汽車起重機的設計效率和設計質量。
參數化設計系統;尺寸驅動;起重機吊臂;三維模型
隨著市場競爭的激烈,產品設計效率也得不斷提高??紤]到部分常用的機械產品具有相似的形狀結構,若能研發出自己產品的參數化設計系統,利用該系統,設計人員只需根據提示輸入一些必要的參數,系統自動生成優化的變型設計結果,將極大地提高設計效率,縮短產品的研發時間。SolidWorks是一套三維CAD軟件,它所倡導的易學、易用及智能化設計風格越來越受到企業的重視。本文基于該軟件就汽車起重機三維模型參數化系統設計技術進行了探討研究。
汽車起重機吊臂有基本臂和與基本臂共中心線的二節臂、三節臂、四節臂……,二節臂插裝在基本臂內,三節臂插裝在二節臂內,四節臂插裝在三節臂內……。
各節臂之間的相對運動通過相連的滑塊實現,各節臂之間的結構尺寸是相互關聯的,因此只要確定基本臂的結構尺寸,其他各節臂的結構尺寸就可以由該尺寸和滑塊尺寸計算得出,這是吊臂參數化設計的基礎。
SolidWorks為二次開發提供了大量的 API(Application Program Interface,應用編程接口)對象,SolidWorks API是 SolidWorks的 OLE(Object Linking and Embedding,對象的嵌入與鏈接)或COM(Component Object Model,組件對象模型)應用程序開發接口,用戶可以利用它和支持OLE編程的開發工具,如VB、VBA(Excel,Access)、C、VC++等對 SolidWorks進行二次開發,建立適合用戶需要的、專用的SolidWorks 功能模塊。這些 API對象涵蓋了全部 SolidWorks的數據模型,通過對這些對象屬性的設置和方法的調用,就可以在用戶自己開發的 DLL中實現與SolidWorks相同的功能[1]。
用戶借助高級編程語言作為平臺,在設計簡潔方便的操作界面的同時,通過在程序中調用API對象訪問和操作 SolidWorks,可以實現SolidWorks建模的幾乎所有可能,從而建立適合用戶需要的、專用的SolidWorks功能模塊。這些專用模塊既可通過生成 DLL文件作為插件掛接在SolidWorks的菜單下,也可置于用戶開發的工具條中,或者獨立于 SolidWorks之外使用。SolidWorks API對象模型如圖1所示[2]。
VisualBasic(VB)是Windows環境下快速開發應用程序的可視化工具。VB提供的動態數據交換(DDE,Dynamic Data Exchange)編程技術,可以在應用程序中實現與其他 Windows應用程序建立數據交換、在不同的應用程序之間進行通信的功能。與其它開發語言相比,VisualBasic語言規則簡單,容易上手,功能強大,同時SolidWorks提供的宏錄制功能為VBA環境,與VisualBasic語法規則完全一致。本文采用VisualBasic編程語言對SolidWorks進行二次開發。

圖1 SolidWorks API對象模型
汽車起重機吊臂的各節臂的截面結構相同,因此在設計過程中,最重要的是設立基本臂的驅動尺寸和從動尺寸,以便確定各節臂裝配順序和準確的建立各零部件之間的幾何約束關系,通過更改這些驅動尺寸進而創建其他各節臂的截面草圖。
利用 VB語言對 SolidWorks的二次開發實現,先要在 VB集成環境中,通過命令【工程/引用】對話框中勾選SolidWorks Type Library完成有關類型庫的引用,才能通過 ActiveX Automation訪問SolidWorks提供的主要對象。在VB編輯器中修改宏程序,利用尺寸驅動原理,通過尺寸參數值的變化來生成結構相同而參數不同的零件族[3]。使用SolidWorks的API對象對基本臂的驅動尺寸進行更改獲得新的草圖,并建立實體特征即可創建了另一個節臂的三維模型。
汽車起重機吊臂截面尺寸參數如圖2所示,由圖中的參數和連接滑塊的大小就可以計算出相鄰節臂的結構尺寸。

圖2 吊臂截面尺寸圖
設滑塊尺寸為dw
則第n節臂參數有如下關系

把基本臂的截面草圖尺寸更改成計算得出的第n節節臂的尺寸,代碼如下:



由以上步驟建立的吊臂參數化模型如圖3所示。
在窗體上建立一組“尺寸參數輸入”文本框,用于輸入基本臂的結構尺寸;在“臂節數設定”文本框中輸入吊臂節數,單擊名稱為“計算各節臂截面參數”的命令按鈕,則計算并在表格中顯示其他各節臂相關截面參數,至此與基本臂配合的其他各臂參數均已獲得;最后在“臂節選擇”文本框中輸入指定建模的節臂次數,單擊“確定”命令按鈕則生成對應的節臂模型。程序界面如圖4所示。

圖3 吊臂參數化模型效果

圖4 程序界面
在參數輸入欄輸入吊臂截面參數,點擊“計算各節臂截面參數” 按鈕,通過吊臂參數方程計算并在表格中輸出計算結果;在 SolidWorks建模欄,通過 API函數創建指定節臂的實體模型。程序流程圖如圖5所示。
程序設計并調試好后就可以使用VB編譯成“.exe”可執行程序,即可在Windows平臺上獨立運行。
汽車起重機吊臂參數化設計系統在使用時,先打開SolidWorks再啟動本程序。在指定文本框輸入基本臂的截面參數,并設定吊臂的臂節數;點擊“計算各節臂截面參數”按鈕,程序將計算各節臂截面參數并在表格中輸出顯示;在“SolidWorks建模”欄設定生成指定節臂的SolidWorks三維模型。
將各節臂的模型創建完就可以進行吊臂的裝配,并且可以將模型生成SolidWorks工程圖。

圖5 程序流程圖
(1) 以SolidWorks三維軟件為平臺開發出的參數化設計系統可以顯著提高產品的設計效率,完成相似零部件乃至整個產品的快速設計,快速響應個性化的市場需求,提高企業的競爭力。
(2) 采用錄制宏獲得宏代碼的方式對SolidWorks進行二次開發易學易用,可大大縮短開發周期;VisualBasic語法規則與 SolidWorks提供的宏錄制VBA環境語法完全一致。因此,用 VB開發 SolidWorks的一般方法,對致力于SolidWorks二次開發的人員,具有一定的參考價值。
[1]李權才, 吳俊峰, 武翠榮. 基于 SolidWorks平臺對大型架橋機的二次開發技術[J]. 中國水運, 2008,8(1):41-43.
[2]SolidWorks公司. SolidWorks API二次開發[M]. 北京:機械工業出版社, 2005. 25.
[3]郭克希, 饒顯俊. 離心機永磁軸承仿真系統自動化建模研究與實現[J]. 東華大學學報, 2007, 33(3):298-301.
Research and Development on Parameterized Design System of Truck Crane Arm
GUO Ke-xi, LI Guo-zhi, YANG Wei
( College of Automobile and Mechanical Engineering, Changsha University of Science and Technology, Changsha Hunan 410114, China )
According to the interrelation characteristic of the structure size of the crane arms, the size actuation method is used, the parameterized design system of truck crane arms is developed based on the re-developing of the 3D software SolidWorks with VB language.3D model of the arms of truck crane can be quickly structured through inputing the cross-sectional size of the basic jib and the number of booms of the crane in the system, it accomplishes the automation and serialization of designing of the arms, and hence reduces the development cycle, and enhances observably the efficiency and quality in truck crane design.
parameterized design system; size actuation; crane arm; 3D model
TP 391
A
1003-0158(2010)06-0080-05
2009-11-27
湖南省自然科學基金資助項目(08JJ5024);湖南省大學生研究性學習與創新性實驗資助項目
郭克希(1956-),女,湖南長沙人,教授,碩士,主要研究方向為產品建模與仿真、CAD/CAE/CAM集成。