孟國興
(大連機床集團技術(shù)中心,遼寧大連 116620)
基于Pro/E的大型斜床身數(shù)控車床的程序設(shè)計
孟國興
(大連機床集團技術(shù)中心,遼寧大連 116620)
以DL50大型數(shù)控車床為例,詳細介紹了裝配的參數(shù)化及程序設(shè)計方法和技巧。
公稱參數(shù) 程序設(shè)計 條件語句 EXECUTE語句
不同于小型數(shù)控車床,即使在同一加工直徑或同一床身的前提下,大型數(shù)控車床也應有多種不同加工長度、不同機床承重和不同功能配置,最終必須形成產(chǎn)品的系列化設(shè)計。這樣,才能用最低的成本,組成多種不同性能的機床,來滿足不同領(lǐng)域的不同要求。要在極短的時間內(nèi)開發(fā)出多種相似的系列產(chǎn)品,就必須借助計算機輔助設(shè)計,如Pro/E的參數(shù)化及程序設(shè)計。
參數(shù)化設(shè)計就是將零件模型中的定量信息變量化,使之成為可調(diào)整的參數(shù),當對變量化參數(shù)賦予不同數(shù)值時,就可得到不同大小和形狀的新零件模型。參數(shù)化設(shè)計可以大大提高模型的生成和修改速度,在產(chǎn)品的系列設(shè)計、相似設(shè)計方面具有極大的應用價值。要實現(xiàn)參數(shù)化設(shè)計,參數(shù)化模型的建立極為關(guān)鍵。
程序是Pro/E工程設(shè)計軟件自動提供的、格式為TXT、記錄全部操作過程,它記錄著三維模型自始至終的建模步驟,包括裝配和特征的建立過程、參數(shù)設(shè)置、尺寸以及關(guān)系等模型信息。而程序設(shè)計就是根據(jù)需要編輯該程序,是Pro/E的一種高級應用。通過編輯可以實現(xiàn)全局參數(shù)自上而下的傳遞、零部件的自動裝配和替換、自動隱含及恢復、自動更改參數(shù)化模型及名稱等。參數(shù)化的零件模型必須結(jié)合裝配的程序設(shè)計,才能實現(xiàn)工程設(shè)計的自動化和智能化?;赑ro/E的參數(shù)化及程序設(shè)計的大型斜床身數(shù)控車床(見圖1)應具備以下功能:①輸入?yún)?shù)后,Pro/E自動生成全部裝配、零件三維模型,自動修改零件名稱和機床型號;②依據(jù)裝配、零件三維模型生成工程圖、總部件目錄及各種零件目錄、外購件目錄等。
本文以大型斜床身數(shù)控車床DL50為例,詳細介紹基于Pro/E的裝配參數(shù)化及程序設(shè)計的方法和技巧。
依據(jù)Pro/E參數(shù)化及程序設(shè)計要求,綜合本臺數(shù)控車床的動力參數(shù)、幾何參數(shù)和運動參數(shù),能夠充分表征機床特性和能力的最主要的參數(shù),可歸納為下面7個,其可供選擇的參數(shù)值如后面的程序中所述:①工件長度;②加工直徑;③機床承重;④尾座形式;⑤中心架規(guī)格;⑥刀臺形式;⑦卡盤規(guī)格。
上述7項參數(shù)設(shè)定后,便可開始機床設(shè)計,依據(jù)Pro/E同步設(shè)計要求,應按下述流程:
(1)首先創(chuàng)建一個布局文件,見圖2,圖號為DL50—001.lay。本文件用來定義機床的主要外型尺寸、參數(shù)及相互之間的裝配和位置關(guān)系,創(chuàng)建重要裝配基準面、基準軸線、提出注釋和技術(shù)要求等。
(2)創(chuàng)建機床的總裝配,圖號為DL50—001.asm。在總裝配中,依據(jù)工程知識、模塊化設(shè)計思想,分別創(chuàng)建本機床的全部子裝配。此時,因子裝配或零件中還沒有任何幾何實體,也可能沒有裝配約束關(guān)系,可以不裝配到位,這樣做的目的是快速建立起本產(chǎn)品的組成結(jié)構(gòu),便于自上而下地同步開展各子裝配的設(shè)計。
(3)根據(jù)布局文件,在總裝配及各子裝配中創(chuàng)建骨架模型,圖號為DL50—1001~8601_SKEL.PRT。將總裝配及各子裝配聲明到布局和名稱中,通過發(fā)布幾何和復制幾何將骨架模型中的重要基準和設(shè)計數(shù)據(jù)傳遞到各零件中。
(4)打開總裝配DL50—001.asm的程序,進行參數(shù)化及程序設(shè)計,詳細見下文所述。
(5)各子裝配開始設(shè)計,建立參數(shù)化零件模型,開展有限元、動態(tài)仿真等。
(6)隨時修改、調(diào)整、完善總裝配。
(7)設(shè)計工程圖、目錄、檢圖、交檔等。
打開總裝配DL50-001.asm,點選工具→程序→編輯程序,即可打開Pro/E自動創(chuàng)建的原程序(圖3)。DL50-001.asm原程序的組成為:
第一部分:抬頭。這部分的內(nèi)容由Pro/E自動產(chǎn)生,用來標識文件,可不做任何修改。
第二部分:在INPUT……END INPUT語句之間。此處為設(shè)置輸入提示句與參數(shù)的位置,讓設(shè)計者輸入?yún)?shù)值或其它設(shè)計信息,來控制參數(shù)化零件模式的設(shè)計變更,實現(xiàn)人機交互。首次進入時,此部分呈空白狀態(tài)。
第三部分:在RELATIONS……END RELATIONS語句之間。此處為設(shè)置關(guān)系式的位置。凡是可以在工具→關(guān)系里設(shè)置的關(guān)系式,在這里也可以設(shè)置,并且兩者是互通的,這部分內(nèi)容由設(shè)計者編輯時自行填入,首次進入時,此部分呈空白狀態(tài)。
第四部分:在ADD FEATURE#……END ADD語句之前。此處設(shè)置為全局參數(shù)傳遞程序位置。使用EXECUTE指令,該指令僅能將參數(shù)傳遞到相鄰的下一級,通過下一級裝配中的EXECUTE指令繼續(xù)向下下級傳遞直至最底層。參數(shù)傳遞到相關(guān)級后,便可開始本級的參數(shù)化及程序設(shè)計。
第五部分:在ADD FEATURE#……END ADD之間。每個ADD FEATURE到END ADD代表著一個特征,而介于ADD FEATURE到END ADD之間的文字為該特征的建立過程與參數(shù)設(shè)置。這部分所占的比例最多,由Pro/E自動產(chǎn)生,不能做任何修改。但可包容在某個或多個嵌套條件語句之間,從而控制該特征的產(chǎn)生與否。即滿足條件時產(chǎn)生該特征,否則不產(chǎn)生。
第六部分:在MASSPROP……END MASSPROP之間。此處為設(shè)置質(zhì)量性質(zhì)的位置。這部分的內(nèi)容由設(shè)計者編輯時自行填入。第一次進入時,此部分呈空白狀態(tài)。如使用標準模板時,事先可填好。
正如前面設(shè)計流程第4項所述,在各子裝配開始設(shè)計前,要初步完成總裝配參數(shù)化及程序設(shè)計。主要應實現(xiàn)以下5個功能。
(1)設(shè)置參數(shù)輸入提示句
在提示語句的后面一定要注明可供選擇的參數(shù)值,便于以后或其他設(shè)計員操作此裝配。例如:
此后,當設(shè)計者更新總裝配時,自動彈出參數(shù)輸入對話框,見圖4,可根據(jù)提示句輸入?yún)?shù)值。
(2)校驗新輸入?yún)?shù)的有效性
每次輸入時,難免輸入不正確參數(shù),如用此不正確參數(shù)驅(qū)動模型,會產(chǎn)生不可預知的嚴重后果。因此,必須對每次、每個輸入的參數(shù)做有效性校驗,如輸入不正確,系統(tǒng)將維持上次的參數(shù)值不變,并且保證此次的不正確參數(shù)值不會顯示在提示語句的后面。如下面程序所示,這是一種有效的校驗方法:將本參數(shù)各個許用值組成的多個條件語句串聯(lián)起來,滿足某個條件時便做一次賦值操作,被賦值參數(shù)在程序的最后再重新賦值給本參數(shù),不正確參數(shù)值便不會顯示在提示語句的后面,見圖5,其程序為:
根據(jù)3項參數(shù)的意義,容易確定與之相關(guān)的各部件及零件。即:
①工件長度:用來驅(qū)動床身、Z軸滾珠絲杠、排屑器、防護等組中相關(guān)零件的總長度。
②工件直徑:用來驅(qū)動床頭箱、尾座、刀臺中心高。
③機床承重:用來驅(qū)動床頭箱主軸及軸承直徑、尾座套筒直徑。
注意,程序設(shè)計首先要將通過窗口輸入的參數(shù),經(jīng)裝配傳遞給裝配內(nèi)的各零件,方法之一就是使用“EXECUTE”語句。采用布局和聲明布局的方法也可以實現(xiàn)同樣的功能。
布局方法適合大型的裝配,即需要控制的參數(shù)多。在大型裝配的自上而下設(shè)計中可充分發(fā)揮它的功能。而程序設(shè)計中的“EXECUTE”語句適合較少裝配的參數(shù)傳遞。采用“EXECUTE”語句,零件的參數(shù)名與裝配參數(shù)名稱可以不同,而采用聲明布局方法,零件與裝配的參數(shù)名則必須相同。
程序輸入?yún)?shù)比布局傳遞參數(shù)更靈活。例如,按模塊化設(shè)計要求,床頭箱雖然為本機床重要部件,同時也要考慮到被其它機床借用。如該部件已聲明某個布局,當床頭箱的某個參數(shù)不適用新機床時,是不能修改已聲明的布局的;而用程序輸入?yún)?shù)的方法,床頭箱的參數(shù)只受控于上級裝配的程序或布局,因此,床頭箱可作為獨立的模塊廣泛用于其它產(chǎn)品當中。
另外,布局優(yōu)先于程序。即已程序化的裝配或零件,一旦聲明布局后,程序中的參數(shù)將被布局中的同名參數(shù)屏蔽掉,但程序中傳遞參數(shù)的指令仍然可有效地向下傳遞參數(shù)。當取消聲明后,程序輸入?yún)?shù)的功能也將自動恢復。利用此特點,可以很好地解決大型子裝配的參數(shù)傳遞。例如大型斜床身車床的防護,零件數(shù)量眾多,如采用程序傳遞參數(shù),會十分不便,這時可將各參數(shù)加入到布局中,然后與參數(shù)相關(guān)的眾多零件通過布局關(guān)聯(lián)起來。而本組內(nèi),為了設(shè)計參照方便而裝入的諸如床身、床頭箱等參考零件,不要與此布局文件關(guān)聯(lián),這些零件的驅(qū)動參數(shù),仍是通過布局再經(jīng)過裝配中傳遞參數(shù)指令傳遞過來的。這些零件才允許再次檢回到公共空間。
有些獨立部件,如卡盤或尾座會有多種規(guī)格和樣式,但每臺機床只需一套,因此要根據(jù)參數(shù)信息實現(xiàn)自動替換。方法有四種:
(1)用裝配族表替換
當裝配至少有一個是表驅(qū)動零件時,如圖6床頭箱中的各種軸承等,此裝配便可做成裝配族表,用族表替換簡單易行,在程序中可直接指定實例各稱來實現(xiàn)自動替換,程序同下。
如圖7所示,本機床可分別安裝三爪卡盤、四爪卡盤及中空卡盤。但三種卡盤模型因形狀或結(jié)構(gòu)相差較大,必須用3個零件族表來表示。這時可先組成3個子裝配族表,每個子裝配族表如圖8所示,表中可直接寫入各零件的實例名稱。在總裝配中實現(xiàn)替換前,要先將每個子裝配族表中的普通模型及總裝配事先聲明布局、名稱后,才可在總裝配中,用指定實例名稱辦法實現(xiàn)直接替換。
程序如下:
如裝配中無族表驅(qū)動零件,但又希望用裝配族表方法替換,也可組成一種特殊的裝配族表。此時,要通過不同零件的組合方式或不同的定位尺寸等,來生成不同的實例。在族表中可用“Y”表示選擇了該零件,用“N”表示不選擇或直接寫入某零件的件號(已裝入到裝配中)。注意,件號不要用N開頭,系統(tǒng)易誤操作,導致本件不會出現(xiàn)在裝配中。
(2)用指令直接替換
當部件功能、形狀相差較大,不能組成族表時,可獨立成部。如本機床的尾座,用直接在程序中指定名稱的方法直接替換,但必須將3個安裝基準先在布局中聲明名稱,程序同上。
(3)用條件語句隱含或恢復的辦法實現(xiàn)替換
此方法,用在部件只有兩、三種,如本機床中心架,可先將兩種中心架全部裝配到總裝配中,通過程序輸入選用條件后,用條件語句隱含或恢復該部件,因要獨自裝配到組件中,故不用事先聲明布局名稱。本例程序如下:
以上三種替換,都是建立在各部件均裝配在骨架模型之上,相互間沒有任何參照關(guān)系,本部件的替換不會影響其它部件。反之,這種替換會引起與之相關(guān)部件基準參照的丟失,造成特征生成失敗。這時,必須用下面的方法替換。
(4)用互換文件替換
點選創(chuàng)建→組件→互換,可生成一個互換文件,如圖9。該文件可建立起兩個需互換零件在指定的總裝配中,所有已用參照和被用參照的對應關(guān)系。這樣,即可實現(xiàn)手動和自動替換。
上述幾種替換方法,自動替換后就不可再手動替換。否則,程序中的變量部件名稱會自動修改為手動替換時指定的部件名稱,下次就不能自動替換了。另外,自動替換時,同名稱基準面按“對齊”方式,因此,聲明名稱時,一定要考慮基準面的方向也應相同。在布局文件中,用草繪創(chuàng)建基準面時,可用基準面?zhèn)让婕t色輔助線來標記平面的法線方向。
商品機床都有自己的機床銘牌,其上注明機床型號、規(guī)格、主要參數(shù)等。如圖10,“DL”表示產(chǎn)品系列,“50”表示最大加工直徑的1/20,“Z”表示為加重型,“×4”表示最大加工長度為4 m。以上內(nèi)容均應隨參數(shù)的變化而自動更改。故機床參數(shù)先要傳遞到該零件,可用一條語句,傳遞全部參數(shù),即:
在利用條件語句、字符串運算語句等,編程生成機床型號并放置在指定的變量參數(shù)內(nèi)。該銘牌上的文字是用3個拉伸文本特征創(chuàng)建的,文本要用“插入?yún)?shù)”功能,插入?yún)?shù)內(nèi)對應的文字(程序?qū)⒃谙挛闹杏懻摚?/p>
在總裝配中,有些獨立部件可有不同的安裝位置和工作狀態(tài)。如床鞍的左右極限位置、刀臺的上下極限位置以及這些部件所用的拖鏈、軟油管、伸縮防護罩等,也應隨移動部件的位置,動態(tài)改變形狀和位置。這些重要信息,是機床設(shè)計者必須熟知的。因此,可用輔助參數(shù)來驅(qū)動這些模型。這些參數(shù),不能像全局參數(shù)那樣通過程序輸入窗口輸入,以免太多的全局參數(shù)會影響程序設(shè)計的效率。此時,可用布局文件內(nèi)的參數(shù)并通過聲明布局傳遞到各組件及零件。如圖11,D16:1及D173:35是床鞍的左右、刀臺的上下位置約束尺寸代碼,分別在總裝配及子裝配中編程,即可實現(xiàn)動態(tài)切換位置。程序如下:
為使布局中的參數(shù)能集中顯示出來,可在布局中先創(chuàng)建一個動態(tài)報表的格式文件,如圖12。先創(chuàng)建表格,再創(chuàng)建“重復區(qū)域”,輸入如圖所示的“報告符號”,更新表格,便生成如圖13參數(shù)表。先單擊在雙擊表中的參數(shù)值,輸入有效參數(shù)即可驅(qū)動總裝配中的模型。
到此,總裝配的程序設(shè)計完畢。各子裝配的程序設(shè)計,也用同樣的方法,只是有些內(nèi)容不一樣(如替換的不是部件而是零件等)。當參數(shù)傳遞到最底層的零件后,便可開展零件模型的參數(shù)化建模。
實踐證明,參數(shù)化設(shè)計的床身、中心架支架等,鑄造及加工工藝性良好,鑄造成本降低,程序穩(wěn)定可靠。該系列產(chǎn)品現(xiàn)已定型生產(chǎn)。
基于Pro/E的DL50系列大型數(shù)控車床的參數(shù)化及程序設(shè)計,使機床的設(shè)計周期由一年減少到三個月,綜合效益十分顯著,且為二次開發(fā)打下了良好的基礎(chǔ)。
作者:孟國興,男,1963年生,工程師,主要從事數(shù)控車床研發(fā)及制造技術(shù)、Pro/E應用研究。
如果您想發(fā)表對本文的看法,請將文章編號填入讀者意見調(diào)查表中的相應位置。
Programme Design of Large Inclined Lathe Bed NC Lathe Based on Pro/E
MENG Guoxing
(DMTG Technical Dep.,Dalian 116620,CHN)
This article takes DL50 large NC lathe as example to introduce the method and technique of assembly parameterization and program design.
Nominal Parameter;Program Design;Conditional Statement;Execute Statement
(編輯 李 靜)(
2009―07―16)
10319