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