梁 杰
(新疆輕工職業(yè)技術(shù)學(xué)院,新疆 烏魯木齊 830021)
機(jī)械傳動(dòng)動(dòng)態(tài)模型庫系統(tǒng)包括設(shè)置繪圖環(huán)境、繪圖圖素庫、動(dòng)態(tài)模型庫和用戶標(biāo)準(zhǔn)菜單4大功能模塊,系統(tǒng)框架組成如圖1所示。
圖1 機(jī)械傳動(dòng)動(dòng)態(tài)模型庫的系統(tǒng)組成
(1)設(shè)置繪圖環(huán)境:該模塊主要設(shè)置繪圖所需的環(huán)境,例如圖層、線型、顏色、線寬等。
(2)繪圖圖素庫:根據(jù)模型庫的所有模型分解出基本組成單元——圖素,對(duì)圖素進(jìn)行參數(shù)化編程,并建立起圖素庫,庫中的各圖素之間可以像積木那樣拼裝組合。
(3)動(dòng)態(tài)模型庫:該模塊既可以展示二維零件簡(jiǎn)圖或模型,也可以展示三維模型。同一模型通過輸入值的變化可以動(dòng)態(tài)地展示變化的零件結(jié)構(gòu)模型。
(4)用戶標(biāo)準(zhǔn)菜單:為了方便使用者操作,使用戶和計(jì)算機(jī)的交流更加直觀,需要嵌入標(biāo)準(zhǔn)菜單。
根據(jù)參數(shù)圖素拼裝的原理,首先將模型庫中的模型分解成若干個(gè)基本組成元素——圖素,再將每個(gè)圖素進(jìn)行參數(shù)化編程,只要給定繪制各圖素所需的參數(shù)值,即可快速、準(zhǔn)確地繪制該圖素,模型庫中的模型是由各圖素組合拼裝而來。圖2為機(jī)械傳動(dòng)圖素庫的組成框圖。
以棘輪為例,其編程構(gòu)思如下:
(1)基準(zhǔn)點(diǎn),用來確定模型的位置,屬于位置參數(shù)。
(2)旋轉(zhuǎn)角,用來確定模型的方位,屬于方位參數(shù),即以基準(zhǔn)點(diǎn)為旋轉(zhuǎn)中心,以圖素軸線與水平線的夾角為旋轉(zhuǎn)角可在平面的不同方向上繪制圖素,規(guī)定旋轉(zhuǎn)角順時(shí)針為負(fù),逆時(shí)針為正。
圖2 機(jī)械傳動(dòng)圖素庫的組成框圖
(3)齒數(shù)值:由于不同棘輪模型的齒數(shù)會(huì)發(fā)生變化,所以設(shè)置了齒數(shù)參數(shù)。在本程序設(shè)計(jì)中,采用了repeat語句和循環(huán)語句,并令齒數(shù)為循環(huán)次數(shù),使程序更完善。
(4)為了方便圖素的插入、選擇及刪除,繪圖編程命令盡可能使用“pline”。
(5)三維模型的實(shí)現(xiàn)主要通過兩種方法:①先編寫二維模型程序,后編寫三維模型程序;②在二維零件的基礎(chǔ)上通過面域region和拉伸extrude實(shí)現(xiàn)三維。棘輪的實(shí)現(xiàn)程序如下:
(defun c:jlun1();定義棘輪
(setq p0(getpoint"\n插入點(diǎn):")
alf(getangle p0"\n旋轉(zhuǎn)角:")
r(getdist p0"\n頂圓半徑:")
r1(getdist p0"\n根圓半徑:")
n(getint"\n齒數(shù):")
)
(setq r2(-r r1))
(setq alf1(/(*2 pi)n))
(setq alf2(* pi(/20.0 180.0)))
(setq alf3(/alf1 3))
(setq alf4(/(*alf2 r2)r1))
(setq p1(polar p0(+alf(*0.5 pi))(*1.1 r)))
(setq p2(polar p0(-alf(*0.5 pi))(*1.1 r)))
(setq p3(polar p0 alf(*1.1 r)))
(setq p4(polar p0(+alf pi)(*1.1 r)))
(setq i 0)
(repeat n
(setq p5(polar p0(+alf(*i alf1))r))
(setq p6(polar p0(+alf alf3(*i alf1))r))
(setq p7(polar p0(+alf alf1 alf4(*i alf1))r1))
(setq p8(polar p0(+alf alf1(*i alf1))r))
(command"layer""s""draw""")
(command"pline"p5 p6 p7 p8"")
(setq i(1+i))
)
模型庫中的模型可以通過組合拼裝獲得。圖3為機(jī)械傳動(dòng)動(dòng)態(tài)模型庫的組成框圖。
用戶使用時(shí)只需點(diǎn)擊相應(yīng)的下拉菜單,激活一個(gè)主控件菜單,而相應(yīng)的主圖像控件菜單項(xiàng)又會(huì)激活相關(guān)的子圖像控件菜單,最后根據(jù)下拉菜單的文字提示操作就可以繪制出相應(yīng)的模型。這樣的用戶菜單體系是一種“級(jí)聯(lián)”式的圖像控件菜單體系,對(duì)于專業(yè)設(shè)計(jì)中選擇標(biāo)準(zhǔn)的圖素、模型等操作是十分有效的方法。圖4為用戶下拉菜單。
利用Auto LISP開發(fā)的動(dòng)態(tài)模型庫,同一模型只需要輸入不同的參數(shù)值,就可以動(dòng)態(tài)地獲得結(jié)構(gòu)尺寸不同的零件模型,大大提高了模型庫的靈活性、實(shí)用性;且可以通過編寫新的程序不斷擴(kuò)充圖素庫、模型庫,使系統(tǒng)具有良好的交互性、擴(kuò)展性、實(shí)用性和專業(yè)性。
圖3 機(jī)械傳動(dòng)動(dòng)態(tài)模型庫的組成框圖
圖4 下拉菜單
[1] 韓國才,張鋰.基于Pro/E的機(jī)械零件特征模型庫參數(shù)化設(shè)計(jì)[J].制造業(yè)自動(dòng)化,2006,28(4):14-15.
[2] 賀煒,孫波,張淳.計(jì)算機(jī)繪圖[M].北京:機(jī)械工業(yè)出版社,2002.
[3] 孫江宏,丁立偉,米潔.Visual LISP R14——2000編程與應(yīng)用[M].北京:科學(xué)出版社,1999.
[4] 姚杰,田勤.機(jī)械設(shè)計(jì)基礎(chǔ)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2010.