郭術義 白蒙蒙
(華北水利水電大學機械學院,河南鄭州 450045)
基于Autolisp的蝸輪蝸桿傳動參數化繪圖在裝配圖中的應用
郭術義 白蒙蒙
(華北水利水電大學機械學院,河南鄭州 450045)
為介紹在繪制裝配圖時參數化繪制標準件的一種方法,以蝸輪蝸桿傳動為例,在AutoCAD2007平臺上,應用Autolisp語言參數化繪制標準零部件,使用者可以快速生成不同類型的蝸輪蝸桿圖形。
裝配圖;參數化繪圖;蝸輪蝸桿傳動
Autolisp是一種面向對象的人工智能語言,內嵌安裝于AutoCAD內部。AutoCAD是在國際上廣為流行的繪圖工具,其具有完善的圖形繪制功能、強大的圖形編輯功能。應用lisp語言調用CAD的繪圖命令和相關內部函數就可以編寫一定功能的應用程序[1]。
傳動機構是機械系統中非常重要的一環,在原動件與從動件之間傳遞運動和動力。在機械結構設計過程中,傳動機構的設計占很大一部分比例。針對機械設計2D圖中的標準件傳動機構,以蝸輪蝸桿傳動的主視圖和左視圖剖視圖為例,介紹了基于CAD的傳動機構的參數化繪圖方法。
標準件的變化量不大,給定一定的參數即可確定其形狀結構。手動繪圖耗費時間長,且容易出錯,浪費了本可以用在結構設計上的時間,拖延了產品開發的節奏,是不必浪費的腦力勞動。參數化繪圖會節省設計過程中耗費在標準件上的時間,縮短新產品開發周期,提高研發設計效率。
參數化繪圖即是由一定參數為約束條件,完整地反映結構的其他尺寸,從而繪制完整的結構圖形的方法。使用者只需要給出繪圖需要的參數數值,就可以得到所需要的整個圖形,而后可以在給出圖形的基礎上進行所需的修改,節省時間。
蝸桿輪蝸桿機構常被用于減速機兩軸交錯、傳動比大、傳動功率不大或間歇工作的場合。蝸輪蝸桿傳動結構常見參數主要有模數、壓力角、直徑系數、導程角、蝸桿頭數、蝸輪齒數、齒頂高系數(取1)及頂隙系數(取0.2)[2]。其中,模數m和壓力角是指蝸桿軸面的模數和壓力角,亦即渦輪端面的模數和壓力角,且均為標準值;蝸桿直徑系數q為蝸桿分度圓直徑與其模數m的比值。
采用CAD自帶的Vlisp語言來參數化繪制蝸輪蝸桿機構,其可讀性和簡便性,使該語言對設計者的編程水平要求不高。程序主要包括對話框部分、數學模型部分、標
注部分、繪圖環境部分、繪圖部分和菜單部分幾個部分。具體的參數化繪圖設計流程見圖1,程序主要針對于繪制裝配圖時蝸輪蝸桿傳動結構的繪制,裝配圖中繪圖環境是已定的,程序不應改變原有的環境設定。程序中應用圖層名稱在裝配圖中不一定存在,在切換圖層時應先判斷圖層是否存在,如不存在,則切換使用默認“0”圖層,圖形生成完畢后由設計者對線型進行后續調整。以“粗實線”圖層為例,其程序語句為:
對于繪圖環境的其他部分,比如設置捕捉因子,在程序結束時應改回原有設定值。以捕捉因子為例,其程序語句為:
(setq osmode_bak(getvar"osmode"))(Setvar"osmode" 0);設置捕捉因子為0,即關閉對象捕捉
……(Setvar"osmode"osmode_bak);恢復對象捕捉為初始狀態。

圖1 參數化繪圖設計流程
對話框的作用是方便用戶輸入參數,程序讀取后通過數學模型計算得到所繪制圖形的各個尺寸參數,以便接下來繪制圖形。采用與lisp配套的DCL語言編寫對話框,結構呈樹狀結構,以row橫向排列和column豎向排列作為分支點,編輯文本框和命令按鈕等控件。DCL常見的控件有按鈕、編輯框、圖像按鈕、列表框、下拉列表框、單選按鈕、滑動條和切換開關等。以普通蝸輪蝸桿為例,如圖2所示。應用了文本編輯框和命令按鈕2種控件,需要使用者輸入的參數有模數、蝸桿頭數、蝸輪齒數、蝸桿直徑系數、整體旋轉角度和中心定位點。其中,定位點指的是蝸桿的中心點,當然不同的繪圖情況下用戶可以確定的定位點不同,定位點不同的用戶可以在圖形生成后將其移動到合適的位置。

圖2 對話框執行結果
文本框用于收集參數信息,通過屬性設置中的“LA?BEL”來進行提示用戶參數類別,通過自定義設置的“key”屬性與驅動程序鏈接,驅動程序根據key值不同來區分各個參數,并進行設置初始值和提取參數數值等操作。


主程序主要包括對話框的調用及初始化函數、控件動作函數、參數賦值函數、控件狀態函數、調用繪圖函數的主調函數、各視圖的繪圖函數和其他一些命令語句[3]。
3.1 數學模型的建立
用戶輸入的參數有模數m、蝸桿頭數z1、蝸輪齒數z2、蝸桿直徑系數q、整體旋轉角度alf、中心定位點P、蝸輪軸孔直徑dm、鍵槽寬度B1和鍵槽轂深T1,根據這些參數計算其他一些必要的參數,得到參數后,確定繪圖時需要的點(見圖3)。
蝸桿尺寸計算的數學模型如下:①分度圓直徑d= mq;②齒頂高ha=m;③齒根高hf=1.2m;④齒頂圓直徑da= d1+2×ha=m(q+2);⑤切制螺紋部分長度L=16m,此時z1= 1、2;L=20m,此時z1=3、4。
蝸輪尺寸計算的數學模型如下:①中心距a=m(q+ z2);②分度圓直徑d1=m×z2;③寬度B=0.75(d+2×ha),此時z1=2、3、4;B=0.67(d+2×ha)。

圖3 計算蝸輪蝸桿結構尺寸數學模型
3.2 編寫繪圖函數
編寫參數化繪圖程序所用的函數命令不多,大概有以下幾種。
3.2.1 定位函數。通過起始已知點坐標和極坐標位置關系點位點的方式。例如:(setq p4(polar p2(*1.5 pi) (+d(*ha 2)))),其中p2為已知點,1.5pi是p4相對于p2的角度,(+d(*ha 2))為兩點間距,函數結果為點p4的坐標。
3.2.2 CAD命令函數。調用CAD繪圖或修改命令等。例如:(command"clayer""粗實線"),切換當前圖層為“粗實線”圖層;(command"line"p5 p6""),調用直線命令,畫以點p5、p6為端點的一段直線;(command"circle"pt0 "d"d1),調用圓命令,以pt0為圓心,d1為直徑畫圓;(com?mand"trim"pt6""pt5 pt4""),調用剪切命令,以點pt6選中剪切邊界,點pt5、pt4框選中要剪切的圖形,執行剪切操
作;(command"bhatch""p""ansi31"0.5 0 pm1 pm2""""),調用圖形填充命令,填充ANSI31圖形,邊界范圍由pm1、pm2點確定。
3.3 其他主要函數的編寫
對話框程序的加載函數、對話框的啟動、對話框中控件的基本屬性設置。
(setq id(load_dialog"E∶\蝸輪蝸桿\試驗.DCL")),通過路徑加載DCL對話框文件。
(if(<id 0)(exit)),如果加載失敗就退出程序。
(if(not(new_dialog"ptwg"id))(exit)),初始化對話框。
設置一些控件的初始值,應用的函數為set_tile函數,蝸桿齒數z1設置如下:
(setq z1 2)(set_tile"Z1_box"(rtos z1 2 2)),設置其初始值顯示為2,其中Z1_box是控件的“key”值。
設置必要的控件動作,應用的函數為action_tile函數,“確認”控件的動作設置如下:
(action_tile"accept""(getdata)(done_dialog 1)"),點擊“確認”控件后調用getdata子函數,退出對話框界面。
提取控件的數值并賦給設定的變量,應用的函數為get_tile和setq函數,提取蝸桿齒數并賦值給變量z1如下:
(setq z1(atof(get_tile"Z1_box")))。
3.4 繪圖結果
繪圖程序模塊主要包括主視圖和左視圖剖視圖兩大部分,運行程序并輸入合適的參數值,得到的結果如圖4所示。

圖4 蝸輪蝸桿傳動示意圖
要畫出不同類型的蝸輪蝸桿圖形,需要加載相應的蝸輪蝸桿程序,這個過程需要對使用程序進行挑選,選擇需要的程序(見圖5)。這個過程,本文通過創建自定義CUI文件進行實現。CUI指馮諾依曼體系機構。在電子技術領域表示為Command User Interface,命令行用戶交互。指應用命令行和電腦交互,從而達到控制和利用電腦的目的。通過創建合適的CUI文件,將諸多lisp文件及其主函數名添加到菜單里,就可以方便地調用需要的繪圖程序。當然,創建菜單的方法不止這一種,2008版CAD及以上的使用者可以使用objectarx.net來創建CUI,可以省去一些不必要的信息。

圖5 菜單效果圖
CUI文件編輯完成后,保存為.cui和.mnr文件。需要使用時,在命令行中輸入cuiload。在“加載/卸載自定義設置”對話框的“文件名”框中,輸入要加載的CUI文件的路徑,或單擊“瀏覽”查找該文件。單擊“加載”,然后單擊“關閉”。
本文用Auto lisp語言開發傳動結構中蝸輪蝸桿結構的參數化繪圖程序,為裝配圖中傳動結構的選擇和設計提供了一條更為方便、快捷的途徑。參數化繪圖程序有以下特點:程序可讀性好、操作簡單,從漢字提示進行下一步操作,使用者可以按照提示進行操作,不必記憶數量繁多的操作命令;在對話框提示中輸入一定的參數,就可以自動繪制需要的圖形,圖形隨參數的變化而變化,可以有效輸出各種尺寸的蝸輪蝸桿傳動結構,極大地方便設計者使用蝸輪蝸桿結構,提高了工作效率。
[1]吳永進,林美櫻.AutoCAD程序設計魔法書[AutoLISP DCL基礎篇][M].北京:中國鐵道出版社,2003.
[2]成大先.機械設計手冊[M].北京:化學工業出版社,2008.
[3]汪勝蓮,關航健.AutoCAD2008二次開發在螺釘繪制程序中的應用[J].現代機械,2009(4):50-52.
Application of Parametric Drawing of Worm Gear and Worm Gear Based on Autolisp in Assembly Drawing
Guo ShuyiBai Mengmeng
(Machinery College of North China University of Water Resources and Electric Power,Zhengzhou Henan 450045)
In order to introduce a method of parametric drawing standard parts in drawing assembly drawing,taking the worm gear as an example,on the AutoCAD2007 platform,standard parts and components were parameterized drawing by using Autolisp language,users could quickly generate different types of worm gear and worm graphics.
assembly drawing;parametric drawing;worm drive
TH126.2
A
1003-5168(2016)10-0067-04
2016-09-23
郭術義(1971-),男,博士,副教授,研究方向:現代機械設計理論及技術;白蒙蒙(1992-),女,碩士,研究方向:機械設計及理論方面的研究。