張穎,祝錫晶,崔學良,馬臻
(中北大學 機械工程學院,山西 太原 030051)
工程圖被稱為工程技術界的語言,在實際應用中起著表達設計者意圖、指導工裝設計、下料、加工、檢驗、產(chǎn)品裝配等重要作用[1-2]。盡管許多三維CAD軟件都提供了導出二維工程圖的功能,但都存在圖欄格式、尺寸和視圖設置等不符合標準的問題,所導出的工程圖需反復進行修改。比如UG軟件中只提供了一個面向所有用戶的通用平臺,難以滿足本地化、標準化的要求,需用戶進行重復設置[3]。標題欄和明細欄是機械產(chǎn)品裝配圖的一個重要組成部分,但利用三維CAD軟件進行二維工程圖的設計時,需人工逐項輸入標題欄、明細欄中各欄目的內(nèi)容,操作繁瑣,智能化程度低。為了提高工程圖的設計效率,實現(xiàn)圖樣生成的智能化,制作符合國標或企業(yè)標準的制圖模板、實現(xiàn)標題欄和明細欄的自動更新顯得十分重要。
本文基于UG平臺,采用模板技術,通過定制標題欄、明細欄及圖框模板,設計了符合國家標準的工程圖模板,并實現(xiàn)了圖樣模板的自動導入和編輯。另外基于UG二次開發(fā)技術設計了部件屬性填寫工具,方便快速地對所設計裝置的屬性進行填寫。同時將模板中標題欄和明細欄各欄目值與零部件屬性進行關聯(lián),實現(xiàn)了工程圖中標題欄和明細欄的自動更新,使工程圖的設計簡單化、智能化。
UG/Drafting是設計工程圖的模塊,其制圖功能強大,使用該功能模塊可以很方便地根據(jù)已有的三維模型來創(chuàng)建工程圖。但其自帶圖樣模板及制圖默認設置不符合國標、行標、廠標。而不同行業(yè)和企業(yè)人員往往會根據(jù)自己的需要設計個性化的工程圖樣式,以便于內(nèi)部人員互相交流和溝通,因此有必要按照國標或企業(yè)標準在UG環(huán)境下生成統(tǒng)一格式的圖框,作為標準模板[5],供設計人員調用。本文按照國家標準定制工程圖模板。
由于UG中制圖的默認設置與國標不完全相符,這使得設計者每次進行工程圖設計時,都需要對制圖選項進行重新設置。重設過程工作量大,且多為繁瑣的重復性操作,嚴重影響了設計效率。因此,在制作圖樣模板前,先按照國標對制圖中尺寸樣式、標注格式、視圖顯示等進行設置,定制符合國標的制圖標準。在UG軟件自帶“GB”制圖標準基礎上,根據(jù)國標對制圖設置進行更改,定制新的制圖標準“National Standard”,如圖1所示。然后利用工具-制圖標準-加載制圖標準命令,選擇定制的名為“National Standard”的標準,這樣制作的圖樣模板符合國標,不需要每次都重新對制圖參數(shù)進行設置。
圖1 定制制圖標準
標題欄和明細欄的格式有很多種,但實現(xiàn)的方法都相同。分別按照GB/T 10609.1-2008、GB/T 10609.2-2009制作標題欄和明細欄。利用“插入表格”命令繪制標題欄,并在相應的單元格中輸入
圖2 標題欄模板的屬性映射
除上述屬性外,標題欄模板中還需設置如下特殊屬性,由系統(tǒng)自動讀取當前圖樣的相關信息,并自動寫入標題欄中:
圖樣名稱
當前圖樣頁的編號
當前零部件中的圖樣總頁數(shù)
投影符號
圖樣比例
利用插入表格命令繪制明細欄表頭,然后分別選中每一列,通過“設置-列-屬性名稱”命令,設置每列所對應的屬性。其中代號、名稱、材料、備注所在列對應的屬性名稱分別為DB_PART_NO、DB_PART_NAME、MATERIALS、REMARK,將每一列的內(nèi)容分別與產(chǎn)品的零部件的某一特定屬性進行關聯(lián),創(chuàng)建對應的屬性映射關系。
最后將制作好的制圖模板.prt文件保存在${UGII_BASE_DIR}LOCALIZATIONprcsimpl_chinesestartup路徑下。
將自定義的工程圖模板自動導入UG中,需要更改.pax圖樣模板控制文件。在${UGII_BASE_DIR}LOCALIZATIONprcsimpl_chinesestartup路徑下添加.pax配置文件,配置文件中的部分內(nèi)容如下:
//圖樣模板目錄名稱
FileNewTab=“功率超聲珩磨裝置專用”
//使用主模型
application=“All”UsesMasterModel=“Yes”/>
//圖樣模板ID
/>
//圖樣模板屬性
//模板預覽圖
......
如此實現(xiàn)了符合國標的工程圖模板的自動導入,如圖3所示,在之后的工程圖設計中可以直接調用這些模板。
圖3 制圖模板的自動導入
標題欄和明細欄作為工程圖的重要組成部分,標題欄用于標識圖樣及說明圖樣比例、制圖人、制圖日期等圖紙信息,明細欄用于反映各零部件之間相互關系及其代號(標準件號)、名稱、數(shù)量、材料等屬性信息。因此,快速準確地更新標題欄和明細欄內(nèi)容,是獲得高質量工程圖的必要前提。
UG工程圖模塊中標題欄和明細欄各欄目值可利用導入零部件屬性的功能,進行欄目的填寫。因此可利用UG系統(tǒng)提供的屬性功能,在模板文件中添加各欄目對應的空屬性,將欄目值做成屬性映射[6],作為以后實例化的“容器”,保存模板所在圖層為僅可見,出圖時調入模板,從三維信息模型中自動提取標題欄和明細欄信息,將屬性映射實例化,實現(xiàn)工程圖欄目的自動更新。具體實現(xiàn)流程如圖4所示。
圖4 工程圖欄目自動更新實現(xiàn)流程圖
標題欄與明細欄的填寫涉及到大量的產(chǎn)品非幾何信息,如名稱、圖號、代號、材料以及與產(chǎn)品相關的設計、審核等信息[7]。這些信息都與產(chǎn)品的屬性相關。UG中系統(tǒng)自帶的部件屬性如圖5(a)所示,雖帶有標題欄和明細欄中部分屬性,但是屬性不全,且排列雜亂,有很多不需要的屬性,用戶不能清楚知道每個屬性代表的產(chǎn)品信息。因此建立屬性模板,將工程圖欄目所需屬性匯總在模板中,并且為每個屬性賦予其對應的產(chǎn)品信息,如DESIGNER這個屬性對應產(chǎn)品的設計人。屬性模板的創(chuàng)建為標題欄及明細欄的自動更新提供了保障。利用文件-實用工具-屬性模板命令,創(chuàng)建屬性模板,如圖5(b)所示。
圖5 UG自帶屬性與創(chuàng)建的屬性模板對比
實現(xiàn)工程圖欄目的自動更新過程中,重要的一步就是快速對零部件屬性進行準確填寫。為了簡化屬性填寫過程,提高自動化程度,所以將填寫過程封裝到程序內(nèi)部,基于UG二次開發(fā)技術設計屬性填寫工具。采用UG二次開發(fā)工具UG/Open提供的MenuScript和Block UIStyle兩個模塊制作可視化用戶界面[8],然后通過UG/Open API編程對功率超聲珩磨裝置的屬性填寫進行開發(fā),利用相關的函數(shù)控制屬性的獲取和創(chuàng)建。屬性填寫工具的開發(fā)流程如圖6所示。
圖6 屬性填寫工具開發(fā)流程圖
進行UG二次開發(fā),需先配置環(huán)境變量。將環(huán)境變量UGII_USER_DIR的值更改為NX10Dev文件夾所在路徑。NX10Dev中新建Startup和Application兩個文件夾。
MenuScript是一種腳本語言,用戶和第三方開發(fā)人員使用MenuScript可以創(chuàng)建和編輯菜單和工具條[9-10]。在Startup文件夾中創(chuàng)建attribute_add.men菜單文件和attribute_add.tbr工具條文件,寫入腳本語言后,啟動UG,在UG界面上就可以看到用戶自定義的屬性填寫工具的菜單和工具條,如圖7所示。
圖7 屬性填寫工具的菜單及工具條
屬性填寫工具用戶自定義菜單界面開發(fā)完成后,還要進行可視化的人機交互界面的開發(fā),即利用UIStyler對話框技術為屬性填寫工具開發(fā)人機交互界面。在對話框保存時除了生成對話框文件,還能生成C語言的*.cpp和*.hpp文件,文件中包含對話框各控件的對象標識符和回調函數(shù)接口程序,在此基礎上利用相應函數(shù)對屬性進行獲取和創(chuàng)建。在制作對話框時,已將某功率超聲珩磨裝置中零部件的屬性寫入了屬性控件的ListItems(下拉列表)中,只要在下拉列表中點選某一零部件對應的屬性值即可,不需要手動輸入。如圖8所示,為屬性填寫工具對話框。
控制屬性填寫的程序實現(xiàn)流程為:先獲取對話框界面中的屬性,得到UG中當前工作部件即三維模型的TAG值,然后利用函數(shù)UF_ATTR_assign()對工作部件的屬性進行創(chuàng)建,最后更新模型,就實現(xiàn)了對零部件屬性的填寫。按此方法實現(xiàn)了屬性填寫工具的設計,利用此工具可以方便快速地對零部件屬性進行賦值。
圖8 屬性填寫工具對話框
聲振系統(tǒng)是功率超聲珩磨裝置的重要組成部分,其三維模型如圖9所示。
圖9 聲振系統(tǒng)三維模型
以功率超聲珩磨裝置的聲振系統(tǒng)為例,對其進行出圖。啟動UG,打開聲振系統(tǒng)的三維模型,在菜單欄會看到自己定制的“功率超聲珩磨裝置智能出圖”菜單。將聲振系統(tǒng)裝配體以及裝配體中各零部件分別設置為工作部件,點擊下拉菜單“屬性填寫”,在彈出的對話框中選擇下拉列表中的屬性值,就可以為各個部件的屬性進行賦值。如圖10為對聲振系統(tǒng)裝配體進行屬性填寫。
圖10 聲振系統(tǒng)的屬性填寫
對各部件進行屬性填寫后,利用新建命令,選擇“功率超聲珩磨裝置專用”下面的A3_裝配圖樣,進入制圖環(huán)境后,明細欄會立即自動更新。選擇合適的視圖放置位置及比例,然后利用GC工具箱-GC數(shù)據(jù)規(guī)范-屬性工具-屬性同步命令,標題欄也實現(xiàn)了自動更新。聲振系統(tǒng)工程圖的標題欄和明細欄自動更新如圖11所示。
圖11 自動更新的標題欄及明細欄
本文針對UG工程圖模塊出圖效率低的問題,提出了自動更新工程圖欄目的方法。制作了符合國標的工程圖模板,將模板中標題欄和明細欄各欄目內(nèi)容與部件屬性進行關聯(lián),基于UG二次開發(fā)技術設計部件屬性填寫工具,對部件屬性進行快速填寫,實現(xiàn)了工程圖欄目的自動更新。
以功率超聲珩磨裝置聲振系統(tǒng)的工程圖出圖過程為例進行驗證,結果表明,基于UG二次開發(fā)的工程圖欄目自動更新技術提高了出圖效率,簡化了工程圖設計流程,縮短了產(chǎn)品的設計周期。
[1] 朱學敏,王宗彥,楊芬,等. 基于免疫遺傳算法的工程圖自動調優(yōu)技術[J]. 圖學學報,2013,34(2):83-88.
[2] 龔潔暉,張慧. 基于工程圖的三維重建研究[J]. 軟件學報,2008,19(7):1794-1805.
[3] 盧偉. 基于UG的電極二維工程圖紙自動生成技術的研究[D]. 武漢:華中科技大學,2007.
[4] 張樂林,祝錫晶,成全. UG環(huán)境下功率超聲珩磨裝置的參數(shù)化設計方法研究[J]. 制造技術與機床,2016(3):45-49.
[5] 陳友東,李建友,游瑋. 基于模板的工程圖生成[J]. 北京航空航天大學學報,2016,42(5):927-933.
[6] 閆崇京,宋燕. 基于產(chǎn)品信息模型的圖框標題欄快速生成[J]. 機械制造與自動化, 2005, 34(2):85-87.
[7] 程可. 機械制圖[M]. 北京:化學工業(yè)出版社,2015.
[8] 史麗媛,祝錫晶,馬繼召. 基于UG參數(shù)化設計系統(tǒng)的研究[J]. 圖學學報,2013,34(2):108-112.
[9] Li N, Zhao Y P. Achieve of Torpedo Shell Parameter Model Based on Secondary Development of UG[J]. Advanced Materials Research, 2012, 542/543:532-536.
[10] Liu X, Li Q, Liu Y, et al. Development of a Rapid Design System for Aerial Work TruckSubframe with UG Secondary Development Framework[J]. Procedia Engineering, 2011, 15:2961-2965.