一、引言
標準件庫是計算機輔助設計的重要組成部分,在產(chǎn)品開發(fā)設計時可直接調(diào)入相應標準件,以減少重復勞動,縮短研制周期。
在標準件模型建模的過程中,需要對已建完的標準件的三維模型進行檢查以確保入庫模型的正確性,標準件庫三維模型是否正確將直接影響產(chǎn)品設計的質(zhì)量。而標準件建模人員一般通過手工方法對標準件三維模型進行全部檢查或抽查。這種檢查方法效率比較低并且容易出現(xiàn)差錯。
結合CATIA_次開發(fā)技術,可以編寫出標準件模型的自動化檢查程序,通過程序來完成對模型的檢查工作,從而確保標準件模型的正確性,減少了大量的人工操作,提高了模型檢查的效率。
二、手工檢查方法
對于建好的標準件庫,如果標準件包含的數(shù)據(jù)量不大,可以在設計表中逐行驗證標準件模型的正確性。圖1中每一行數(shù)據(jù)對應一個標準件模型,可稱之為標準件的一個構型。
當標準件包含的數(shù)據(jù)量較大時(一般一個標準件包含成千上萬個構型),無法逐項驗證每個構型的正確性,一般通過抽檢的方式來對模型進行檢查,即僅驗證標準件中同一直徑的最大長度和最小長度的構型,如果這兩個構型正確,就認為這個直徑系列的構型全部正確。這種方法有兩個缺陷。
(1)如果單個標準件的直徑范圍過大,則此種方法仍然有較大的工作量。
(2)這種方法無法檢查中間長度(不包含最大長度和最小長度)構型的模型是否正確。
三、自動化檢查方法
針對上述問題,結合CATIA_次開發(fā)技術,可以通過CATIA宏程序來完成標準件模型的自動檢查功能。如果標準件的每一個構型都正確,則程序?qū)⑻崾灸P驼_。如果標準件模型中有部分構型顯示錯誤,則程序?qū)⒆詣佑涗浵洛e誤模型的構型號,在程序運行結束后顯示出錯誤的模型號,以幫助設計人員識別錯誤的模型并進行相應的修改。程序工作流程如圖2所示。
圖2 程序流程圖
1.程序設計窗體
在CATIA“工具”菜單下的“宏”命令中打開Visual Basic編輯器,如圖3所示。
圖3 CATIA程序輸入窗口
主程序在這個窗口中運行,在主程序中首先要得到窗口的part類型文件,以便對此part的不同構型進行更新。程序部分代碼如下。
Dim partDocument1 As PartDocument
Set partDocument1 = CATIA.ActiveDocument
Dim v_part1 As Part
Set v_part1 = partDocument1.Part
2.人機交互設計
在程序運行的過程中,需要用戶選擇指定標準件的設計表文件,以便程序后續(xù)更新此設計表,得到不同的標準件構型,然后對構型進行更新,檢查模型是否正確。
Dim sStatus As String
Dim oSelectedElement As SelectedElement
MsgBox "請選擇設計表。"
當程序運行到此處,將彈出人機交互窗口(圖4)要求用戶選擇設計表文件,在用戶選擇完設計表文件后,由oSelectedElement記錄下用戶選擇的設計表文件,以便于后續(xù)程序?qū)υO計表的更新操作。
4.結果顯示
程序運行完畢,將產(chǎn)生兩種結果。
(1)模型完全正確時,將彈出模型沒有錯誤窗口,設計員據(jù)此可知模型更新沒有錯誤,可進行其它檢查工作。
(2)模型中有部分構型更新產(chǎn)生錯誤,則彈出“共有XX個模型有錯誤。它們是第××項”。設計員可根據(jù)提示檢查發(fā)生錯誤構型的數(shù)據(jù)。
四、程序運行
在CATIA窗口中載入標準件文件(這里以HST21為例),點擊”工具”菜單中的“宏”命令(圖5),彈出“模型檢查“的宏(圖6),點擊“運行“,啟動模型檢查程序。
圖5 CATIA中調(diào)用宏命令
圖6 宏命令運行窗口
在結構樹上選擇設計表文件,系統(tǒng)彈出模型檢查模塊,并對模型進行更新檢查(圖7)。模型檢查完畢,彈出對話框,顯示模型沒有錯誤(圖8)。
圖7 模型檢查窗口
圖8 結果提示窗口
將構型4(圖9中第5行)中的模型圓角尺(MAX)尺寸由0.025in改成2.5in,運行程序。由于圓角尺寸過大,模型更新會出現(xiàn)錯誤,因此當程序完成檢查后會出現(xiàn)錯誤提示窗口(圖10)。
圖9 設計表文件
圖10 錯誤提示窗口
五、結語
基于CATIA的二次開發(fā)技術,通過編寫少量的代碼即可實現(xiàn)標準件模型的自動檢查功能。本文選用的標準件實例中包含2500多種構型,程序能在兩分鐘內(nèi)完成模型檢查工作,大大提高了模型檢查的效率。同時,本程序能夠逐個檢查標準件構型的正確性,相比于傳統(tǒng)的抽查方式,大大提高了檢查的完整性和準確率。本程序可廣泛用于標準件庫的模型檢查中,具有操作簡單、效率高且準確性高等多方面優(yōu)點。
(審核編輯: Doris)