摘要:該文以齒輪零件圖參數化繪圖為例,分析其模塊化設計的思想、方法及AUTO LISP開發工具的實現。用此方法,可大大提高繪圖質量和效率,具有一定的實際應用價值和推廣意義。
關鍵詞:計算機輔助設計;參數化繪圖;Auto CAD二次開發
中圖分類號:TP391文獻標識碼:A文章編號:1009-3044(2008)25-1579-03
Parametric Drawing Design of Gear
XIN Xue-gang, FU Chun-hua, YANG Chang-niu
(Electromechanical Engineering Dept., Sichun University of Science Engieering, Zigong 643000, China)
Abstract: Taking a parametric drawing design of Gear for instance, this paper analyzes the principles andthe methods of modularization design, and the practical program with an Auto LISP tool. Adapting this method, the user could enhance quality and efficiency of drawing, which will have practical significance and popularization meaning.
Key words: CAD; parametric drawing design; redevelopment of AutoCAD
1 引言
齒輪在機械傳動系統中是一種常見的傳動件,在產品開發設計或維修過程中常常需要繪制齒輪零件圖。為提高齒輪的設計質量和效率,降低設計成本,其重要途徑就是開發齒輪參數化設計與繪圖軟件。而且它在機械CAD系統中作為一個模塊也是十分必要的。AutoCAD軟件包是繪圖功能強大的通用軟件,但其人機交互方式的繪圖效率卻較低。AutoCAD參數化繪圖可彌補這一缺陷,AutoCAD參數化繪圖就是根據零、部件的相似形狀,編寫程序,用程序完成命令的調用。用戶只需輸入必要的參數,即可完成形狀相同,參數不同的圖形的繪制。本文就直齒輪零件圖參數化繪圖進行介紹。
2 總體設計思想
參數化設計就是根據結構確定基本參數,進行計算后繪圖。
總體設計思路是從DCL界面輸入設計參數,然后從數據文件讀入相關的一些數據后進行基本的參數化繪圖計算,采用模塊化設計方法,最后完成齒輪零件圖的繪制。
采用模塊化程序設計方法可使軟件設計思路清晰,便于程序的設計與調試。開發工具選用簡單易學的AutoLISP語言,操作界面采用DCL對話框,使軟件操作方便直觀方便。
其設計思想如圖1所示。
■
圖1 總體設計思路
3 齒輪參數化繪圖程序的實現
3.1 齒輪繪圖參數的確定
齒輪的結構參數按GB/ T 10095-1998取得,并根據參數化繪圖參數選取的基本原則選取:標準直齒齒輪的結構形式、齒輪的模數(2個系列)、齒輪齒數(Z)、齒寬(b)、齒輪安裝軸的直徑(dh)、毛胚、材料、精度等級作為基本幾何參數。
其余結構尺寸根據工程手冊上的規定進行相應的計算機處理。如齒輪輪轂的鍵槽數據可采用數據文件或數據庫技術。
3.2 參數的輸入界面設計
齒輪基本參數輸入模塊界面如圖2所示。
在該模塊中,某些數據間具有關聯性(如齒輪模數系列與其后面的模數值的相關聯性),對各種輸入數據的容錯處理等是比較關鍵問題。
3.2.1 容錯處理的實現
當輸入值不符合規定要求時,應有相應提示或能自動地做出相應處理。
如下面的函數用來檢查輸入值是否小于零;VALUE是指輸入值,KEY是指輸入值所在控件。
(defun check-0 (value key)
(if (> 0.0 value)
(progn (alert \"非法輸入!
\請重新輸入:\")
(mode_tile key 2)
……
3.2.2 數據間關聯性的實現
數據間的關聯性是指當某一項數據改變時,與之關聯的數據項隨著改變。如下面的函數實現齒輪模數系列與其值的關聯性,即當選擇某一系列模數時,齒輪模數一欄數據的顯示,也作相應的改變。同時,鎖住另外一組模數的選擇,否則選出的模數有可能不符合設計手冊的推薦優先選用值。
3.3 繪制齒輪零件圖的功能模塊
分析標準直齒齒輪的結構,有六種繪圖模塊,如圖2中的幻燈片所示。每一種模塊分別完成一種相應樣式的直齒齒輪的繪制。同時,每一種樣式又基本是由繪制主視圖和剖視圖完成,而繪制主視圖中,又包括基本圖形的繪制、標注。一幅完整的齒輪零件圖繪制還包括齒輪參數表、圖框、標題欄、填寫技術要求等。采用模塊化設計方法,圖框、標題欄、工程標注等可利用已開發的模塊,提高開發效率。根據機械零件圖的組成要素和模塊化程序設計的思想,繪制齒輪零件圖的功能模塊如圖3所示。
■
圖3 繪制零件圖的功能模塊圖
3.4 零件圖的生成
根據作圖基點及帶輪的基本幾何參數,計算相應繪圖點的坐標,然后用LISP編程作圖。
3.4.1 繪齒輪視圖
標準直齒齒輪的六種結構如圖2中的幻燈片所示。每一種齒輪結構的視圖用一個模塊來完成。現以實心齒輪結構的參數化繪圖為例說明其視圖的繪制與尺寸標注。
工具前面確定的基本參數,按照齒輪設計的有關規定與基本計算,可以計算出圖4所示的點坐標。繪制時新齒輪的點位圖如圖4所示。
■
圖4 繪制實心樣式齒輪視圖的點位圖
基本尺寸的標注也需要用到圖4的點位圖。尺寸標注的重點在尺寸公差的標注。
3.4.2 尺寸公差標注與形位公差標注
AutoCAD系統的尺寸公差標注與形位公差標注是以對話框方式進行的,在AutoCAD二次開發中是不允許的出現對話框進行人機交互的,否則會大大降低程序的運行效率與應用推廣。
以標注圖5所示的尺寸公差為例,具體實現語句如下:
(setq m1 (strcat \"%%c\" (rtos l) dh (itoa dj) \"{\\\\H0.5x;\\\\S\" fuhao sx \"^\" fuhao xx \";}\"))
(command \"dim aligned\" pt1pt2 \"t\" m1 b1)
通過對形位公差實體數據的研究,在二次開發中可以通過重新改造形位公差的實體數據關聯表來達到目的。函數如下:
(defun tolerance1 (pt)
(setq stm_data1 (entmake '((0 . \"TOLERANCE\")
(100 . \"AcDbEntity\")
(8 . \"標注層\")
(100 . \"AcDbFcf\")
(3 . \"STANDARD\")
(10 100.0 100.0 0.0)
(1 . \"{\\\\Fgdt;h}%%v0.022%%v%%vA%%v%%v\")
(210 0.0 0.0 1.0)
(11 1.0 0.0 0.0))
);entmake
) ;setq
(setq stm_data1 (entget (entlast)))
(setq list_point_new (cons 10 pt) ; 構造成為新的組碼表
list_point_old (assoc 10 stm_data1) ; 在屬性列表中取出舊組碼表
stm_data (subst list_point_new list_point_old stm_data1)
);setq
(entmod stm_data) ;更新對象
);defun
3.4.3 參數表的填寫
齒輪參數表是齒輪參數的一個重要的表示形式,相關的齒輪參數都在程序中計算;同時,對公差組部分的參數,如公法線長度變動公差,則采用數據庫方式錄入,這就大大的減短了設計周期,在實際生產應用中有很好的使用意義。因篇幅有限,與數據庫的連接及讀取數據庫在此不作討論。
3.5 運行示例
運行時出現圖2的參數輸入界面,因篇幅有限,選擇簡單的實心式齒輪結構,輸入繪制齒輪的基本參數,就得到一個完整的齒輪零件圖,如圖6所示為只截取了視圖部分。
■
圖6 運行實例(視圖部分)
4 結束語
本軟件經過多次在AutoCAD2004版以上調試運行,效果十分理想,生成的零件圖符合國家機械制圖標準,可用于實際生產,有較好的實用性和應用性,有一定的推廣價值。該軟件有以下幾個特點:
1)輸入數據方便、可靠。對話框操作界面形象直觀、簡潔,與Windows界面風格一致操作方便;
2)可維護性和可擴充性都較好。由于采用模塊化程序設計思想,程序的設計思路清晰,模塊化程度高,軟件開發效率高,因而具有較好的可維護性和可擴充性;
3)本程序可作為齒輪設計計算、繪圖一體化的一個獨立模塊,也可作為機械圖庫的一個模塊。
參考文獻:
[1] 符純華.計算機輔助設計[M].成都:西南交通大學出版社,2006.
[2] 汪琪美,霍新明.對話框與驅動程序設計[M].北京:海洋出版社,1998.
[3] 吳勇進,林美櫻.AutoLISPDCL基礎篇[M].北京:中國鐵道出版社,2003.
[4] 陳鐵應.新編機械設計課程設計圖冊[M].北京:高等教育出版社,2003.
[5] 成大先.機械設計手冊.單行本.機械傳動[M].北京:化學工業出版社,2004.