王鳳花 劉志迎 賴慶輝 熊海輝 陳可凡 魯超宇
(昆明理工大學現(xiàn)代農(nóng)業(yè)工程學院, 昆明 650500)
農(nóng)機裝備是我國農(nóng)業(yè)生產(chǎn)實現(xiàn)高效化、實現(xiàn)資源的有效利用、推動農(nóng)業(yè)生產(chǎn)可持續(xù)性的重要工具[1-3],隨著農(nóng)業(yè)科學技術(shù)的發(fā)展,農(nóng)業(yè)裝備更新?lián)Q代周期縮短,在實際生產(chǎn)中產(chǎn)品的設計以適應性設計和變型設計為主[4-5],據(jù)統(tǒng)計,制造業(yè)中約有75%的產(chǎn)品設計采用修改已有產(chǎn)品來解決設計問題[6]。因此,有效地利用企業(yè)已經(jīng)存在的成熟設計模型,將分散、異構(gòu)的設計知識和實例模型進行組織和融合到動態(tài)的設計上,提高產(chǎn)品的設計效率和知識重用水平,已成為產(chǎn)品開發(fā)過程的一個迫切需求。
近年來參數(shù)化設計技術(shù)得到了廣泛的應用[7-10],目前大多是根據(jù)實例的設計理論、行業(yè)規(guī)則和設計經(jīng)驗等相關(guān)知識建立用戶輸入?yún)?shù)和模型實例驅(qū)動關(guān)系[11-14]。李長林等[15]基于參數(shù)化設計思想,研究了插秧機底盤設計系統(tǒng);劉宏新等[16]研究了基于骨架設計的參數(shù)化設計方法,將模型、參數(shù)、知識信息等資源與平臺結(jié)合,完成了脫粒裝置交互設計系統(tǒng);張延安等[17]將知識庫、推理機和參數(shù)化模型相結(jié)合,提出了一種基于知識的拖拉機變速箱箱體快速設計方法;YOON 等[18]使用計算流體力學與試驗設計方法研究了一種可用于農(nóng)作物保護的無人機參數(shù)化設計原型系統(tǒng)。以上的研究是將模型的參數(shù)設計規(guī)則和系統(tǒng)構(gòu)建建立直接聯(lián)系,其設計過程依托于專業(yè)人員對系統(tǒng)的搭建,對設計技術(shù)具有專業(yè)依賴性。運用模型參數(shù)標記的方法提取設計參數(shù),基于知識元描述的方法對模型參數(shù)知識進行表達,可提高知識管理和重用的程度,降低參數(shù)化設計的門檻,提高設計效率。畢經(jīng)元等[19]利用知識鏈接的方法搭建了以汽車零部件為知識背景的知識管理系統(tǒng);李海生等[20]提出基于設計過程知識元的模具設計方法,實現(xiàn)了沖壓模具設計的智能化;LI等[21]利用知識元理論構(gòu)建了Green development system模型的理論框架。
本文構(gòu)建一套基于知識元描述的模型參數(shù)化設計交互系統(tǒng),即使用基于知識元對模型設計知識進行獲取和表示,利用SolidWorks的二次開發(fā)技術(shù),以模型的參數(shù)標記、提取為基礎(chǔ),建立模型參數(shù)關(guān)聯(lián)與修改的可視化操作,使用VB.NET語言和MySQL數(shù)據(jù)庫管理進行系統(tǒng)集成,通過人機交互式的參數(shù)填充過程完成實例的參數(shù)化構(gòu)建,以保證系統(tǒng)的獨立性,弱化專業(yè)背景知識的限制,有效提高產(chǎn)品參數(shù)化設計的準確性與專業(yè)性,以谷物收獲機械的切割裝置為研究對象,采用知識元描述的方法對切割裝置的設計知識進行定量、定性的知識表達,構(gòu)建切割裝置的設計重用實例庫,為農(nóng)業(yè)裝備的設計重用技術(shù)提供一種方案的借鑒。
為降低農(nóng)機模型參數(shù)化設計過程的專業(yè)素質(zhì)要求,實現(xiàn)高效率和高質(zhì)量的設計水平,本文通過構(gòu)建具有通用性的參數(shù)化設計的交互式創(chuàng)建系統(tǒng),將模型參數(shù)信息的提取、設計知識的填充、參數(shù)化模型的調(diào)用、生成等數(shù)據(jù)化資源封裝設計,以人機交互的方式完成模型實例的參數(shù)化設計過程,自動化實現(xiàn)具備專業(yè)知識的模型參數(shù)化過程。系統(tǒng)的總體方案如圖1所示。
知識獲取和整理是完成實例參數(shù)化的前提,主要任務是將模型設計知識和設計參數(shù)進行分析、關(guān)聯(lián),完成模型關(guān)鍵零部件設計參數(shù)的知識整理[22]。農(nóng)機模型的設計知識主要來源于文獻專利、專家知識、設計手冊和國家標準等,通過檢索和咨詢的方式對添加的模型實例相關(guān)知識進行整理、歸納,根據(jù)知識之間的差異將知識分為選型規(guī)則、設計規(guī)則和計算規(guī)則。
參數(shù)化模型是實現(xiàn)設計重用的基礎(chǔ),通過 Visual Studio平臺對 SolidWorks進行二次開發(fā),讀取模型實例的特征信息和標記參數(shù)信息,并結(jié)合整理的模型知識以人機交互的方式分別完成用戶輸入?yún)?shù)、驅(qū)動參數(shù)、設計規(guī)則及求解參數(shù)的填充,輸入完成后,系統(tǒng)將模型參數(shù)信息和輸入信息整理融合形成知識元信息,進而轉(zhuǎn)換為可以被系統(tǒng)驅(qū)動修改的模型實例,儲存在參數(shù)化實例庫。
參數(shù)化實例庫的功能是將模型實例設計知識轉(zhuǎn)換成相應的參數(shù)概念集,根據(jù)用戶對模型的選擇,從數(shù)據(jù)庫匹配符合要求的參數(shù)化實例,構(gòu)建模型的參數(shù)設計文檔,建立模型設計重用的人機交互界面,從而滿足設計人員在產(chǎn)品設計過程中對實例的修改和完善,實現(xiàn)設計參數(shù)與產(chǎn)品數(shù)據(jù)資源的關(guān)聯(lián),解決復雜產(chǎn)品參數(shù)散亂、關(guān)聯(lián)性差和設計知識重用性低的問題。
根據(jù)用戶設計需求,選擇重用模型,并打開該模型的UI設計界面,根據(jù)系統(tǒng)推送的相應參數(shù)的知識元信息,輸入設計參數(shù)的值,系統(tǒng)從參數(shù)化實例庫中調(diào)用該實例,通過輸入值與設計規(guī)則建立聯(lián)系,求解參數(shù),調(diào)用封裝化的模型驅(qū)動函數(shù),完成驅(qū)動變型,實現(xiàn)實例的重構(gòu)和裝配,最終輸出到設置導出的儲存位置,并將本次設計信息保存到實例信息庫。
參數(shù)化實例庫由實例信息庫、實例模型庫、知識元數(shù)據(jù)庫組成,其中實例信息庫用于儲存實例的特征、功能、結(jié)構(gòu)等信息,即通過系統(tǒng)對模型的數(shù)據(jù)集讀取后轉(zhuǎn)換為知識信息存儲于MySQL數(shù)據(jù)庫中。實例模型庫存儲了通過系統(tǒng)進行操作處理后轉(zhuǎn)換為可以被系統(tǒng)驅(qū)動的三維模型,用于實例模型的調(diào)用和修改。知識元數(shù)據(jù)庫儲存了模型的參數(shù)設計知識,是由系統(tǒng)通過人機交互的方式進行建立,用于完成模型驅(qū)動參數(shù)的關(guān)聯(lián)與求解。
通過系統(tǒng)對實例知識的抽取和整理,將實例的領(lǐng)域知識以可視化的表達形式展現(xiàn)在系統(tǒng)中,這種組織結(jié)構(gòu)一方面可以讓用戶準確定位知識,找到所需求的模型設計要求,另一方面便于后續(xù)模型信息的管理維護。
本文使用五元組來定義實例的特征信息,即
CK={PID,BI,CKA,KC,UK}
(1)
其中:PID為實例唯一標識;BI表示實例的基本信息,如實例的創(chuàng)建時間、創(chuàng)建者、格式信息、案例所屬知識庫等;CKA表示實例特征信息,是系統(tǒng)通過實例數(shù)據(jù)集讀取到的結(jié)構(gòu)信息,如實例材料、密度、體積等;KC表示實例的視圖信息;UK表示實例設計信息,包括實例結(jié)構(gòu)、設計信息、功能描述信息、用戶設計該實例時需要輸入的參數(shù)信息、該產(chǎn)品的求解參數(shù)信息以及該實例衍生出來的案例。
系統(tǒng)將實例的知識信息進行整理融合,如圖2所示,以人機交互的形式顯示,便于用戶查找使用。
實例模型庫的構(gòu)建流程包括配置開發(fā)環(huán)境、設置實例庫路徑、模型預處理、參數(shù)信息讀取、參數(shù)分析與填充、生成實例驅(qū)動程序等,如圖3所示。
2.2.1模型預處理
為了完成系統(tǒng)對用戶設計參數(shù)進行讀取,保證模型實例在驅(qū)動過程中的穩(wěn)健性,需對入庫的模型實例作預處理操作,即參數(shù)標記處理和裝配基準的調(diào)整。
(1)參數(shù)標記
參數(shù)標記方法是將默認參數(shù)名稱更改為系統(tǒng)能夠讀取到的名稱格式,如圖4所示, V是系統(tǒng)識別參數(shù)的標識符,用戶可以使用系統(tǒng)默認定義“Var_”的格式,也可以進行自定義設置,A則是用戶對參數(shù)標記時定義的名稱,為便于參數(shù)特性的識別,可以使用包含參數(shù)含義的命名方法,T是由系統(tǒng)進行定義,其含義是參數(shù)所屬特征名稱。
操作方式如圖5所示,選擇模型特征樹下的參數(shù)特征,雙擊參數(shù)數(shù)值,在跳出的窗體中將原參數(shù)名稱更改為用戶定義的形式。
(2)裝配基準調(diào)整
為了解決由裝配關(guān)系約束不當引起實例參數(shù)化驅(qū)動過程出現(xiàn)干涉現(xiàn)象的問題,需要將實例所使用的配合基準進行調(diào)整,調(diào)整方法是在模型實例裝配關(guān)系多變的情況下,考慮裝配關(guān)系和使用的參照基準是否隨模型的變更一直有效,如無法一直有效,采用以基準軸、基準線等參考體替代實體的點、線、面等作為基準。
2.2.2標記參數(shù)提取
參數(shù)化設計實際是一個參數(shù)分類、關(guān)聯(lián)和求解的過程,為便于用戶對參數(shù)的操作,利用編程語言和SolidWorks二次開發(fā)環(huán)境對實例數(shù)據(jù)集的數(shù)據(jù)進行讀取,提取實例的特征信息及標記參數(shù)信息,圖6為讀取實例標記參數(shù)信息的流程。
系統(tǒng)通過驅(qū)動SolidWorks打開預處理模型,判定模型文件的分類,根據(jù)模型格式為.sldasm和.sldprt 選擇不同的遍歷函數(shù)。
其部分代碼如下
∥打開模型
SwMode=swApp.OpenDoc6
∥讀取模型的特征樹下的第一個特征信息
thisDisplayDim=feature.GetFirstDisplayDimension
∥遍歷邊界數(shù)據(jù)
For i = 0 To UBound(vChildComp)
While Not swFeat Is Nothing
While Not thisDisplayDim Is Nothing
∥判斷是否是標記參數(shù)信息
dimen=thisDisplayDim.GetDimension()
If Contains(ValStr) = True Then
∥讀取當前標記參數(shù)信息
thisDisplayDim=feature.GetNextDisplayDimension(thisDisplayDim)
∥退出當前特征循環(huán)
End While
∥遍歷下一個特征信息
swFeat=swFeat.GetNextFeature
End While
Next i
注:SwMode:模型對象,UBound:模型中組成特征的數(shù)據(jù)數(shù)量
系統(tǒng)通過遍歷實例的特征及組成特征的草圖,包括線段、角度、曲線方程等信息獲取標記參數(shù)集,將參數(shù)信息儲存到數(shù)據(jù)中,讀取模型信息所使用的部分函數(shù)如表1所示。
表1 參數(shù)信息讀取應用函數(shù)類別Tab.1 Parameter information read by application function category
將提取到的參數(shù)在系統(tǒng)中清晰、完整地表達,是實現(xiàn)參數(shù)知識元構(gòu)建的重要步驟,系統(tǒng)將讀取的實例數(shù)據(jù)集進行統(tǒng)一方式的表達,形成結(jié)構(gòu)化的參數(shù)矩陣,使用R表示當前實例的參數(shù)信息集合,記為
(2)
式中Mn——模型中的子裝配體名稱
Kn——子裝配體模型基本信息,包括質(zhì)量、材料等
On——模型中參數(shù)標識名稱
Fn——參數(shù)所屬特征
Tn——參數(shù)所屬類別
Dn——當前參數(shù)數(shù)值
m——參數(shù)屬性數(shù)目,m∈N
n——模型中子裝配體數(shù)目,n∈N
利用參數(shù)的信息矩陣,建立人機交互式的操作界面,便于用戶對參數(shù)定性和定量的信息表達,解決設計過程中參數(shù)復雜、冗余的問題。
2.2.3參數(shù)類別劃分
為了便于實例添加過程中對參數(shù)知識進行組織、分類,需要對用戶標記參數(shù)進行特征標識,本文將設計過程中的所涉及參數(shù)劃分為用戶輸入?yún)?shù)、驅(qū)動參數(shù)、規(guī)則參數(shù)和求解參數(shù)。
(1)用戶輸入?yún)?shù):決定模型功能、結(jié)構(gòu)的參數(shù),在添加中提供并設置其變量名稱,也是用戶快速設計時需要填充的參數(shù),在系統(tǒng)中,用戶輸入?yún)?shù)定義為全局變量,例如:作業(yè)幅寬、作物類型等。
(2)驅(qū)動參數(shù):能夠反映模型變化程度的參數(shù)集合,與用戶輸入?yún)?shù)直接建立聯(lián)系,根據(jù)系統(tǒng)求解的具體數(shù)值驅(qū)動模型生成,由不同的關(guān)聯(lián)優(yōu)先級別決定驅(qū)動順序。
(3)規(guī)則參數(shù):定義規(guī)則選擇的變量參數(shù),在對模型設計規(guī)則表達上,可能出現(xiàn)因輸入?yún)?shù)的取值不同,導致某一關(guān)聯(lián)參數(shù)的取值不同,為了解決這一問題,設置了規(guī)則參數(shù),用于儲存規(guī)則表達過程中的變量參數(shù)數(shù)據(jù)。
(4)求解參數(shù):通過對用戶輸入?yún)?shù)和模型的設計知識建立聯(lián)系,根據(jù)用戶輸入的值求解模型的功能、結(jié)構(gòu)、行為信息。
2.2.4參數(shù)分析
對于復雜農(nóng)機模型實例,參數(shù)之間關(guān)聯(lián)復雜,如果僅使用單層的參數(shù)關(guān)系描述會造成實例參數(shù)表過長,不利于參數(shù)之間的規(guī)則表達,且對于系統(tǒng)來說,在無法判定參數(shù)驅(qū)動順序的情況下,參數(shù)關(guān)聯(lián)計算時會出現(xiàn)錯誤的現(xiàn)象,無法保證模型在參數(shù)驅(qū)動過程中的穩(wěn)健性。
針對這一問題,本文采用遞階驅(qū)動參數(shù)的方法,在實例參數(shù)分析階段,對參數(shù)進行層次劃分[23],如圖7所示,把一個復雜的實例處理為多個簡單的單層模型,按照參數(shù)層次劃分順序建立參數(shù)關(guān)聯(lián)關(guān)系,系統(tǒng)通過讀取層次等級判定參數(shù)驅(qū)動的優(yōu)先順序,從1到n依次取整數(shù)數(shù)值,參數(shù)等級為1表明該參數(shù)的優(yōu)先級別最高,根據(jù)n取值的遞增依次降低參數(shù)驅(qū)動的優(yōu)先級。
2.2.5驅(qū)動模型參數(shù)變更
通過訪問存儲在數(shù)據(jù)庫參數(shù)知識元信息,如圖8所示,遍歷循環(huán)參數(shù)等級、參數(shù)序號,根據(jù)參數(shù)的定義函數(shù)求解驅(qū)動數(shù)值,定義驅(qū)動數(shù)組,完成模型的驅(qū)動更新,模型驅(qū)動參數(shù)修改的部分代碼為:
myDimension=swModel.Parameter(ParName(i))
myDimension.SystemValue=ParValue(i)/1 000
其中ParName(i)為第i個驅(qū)動參數(shù)命名,ParValue(i)為第i個驅(qū)動參數(shù)的數(shù)值。
知識元數(shù)據(jù)庫由設計規(guī)則和參數(shù)知識元信息構(gòu)成,將實例參數(shù)設計過程轉(zhuǎn)換為知識元的表達,采用參數(shù)類型分類的方法,從頂層參數(shù)構(gòu)建數(shù)據(jù)模式,逐步展開,形成參數(shù)驅(qū)動的層次分類,將設計參數(shù)實體添加到相應層次中。
2.3.1設計規(guī)則表達
農(nóng)機模型在設計領(lǐng)域存在著大量的設計規(guī)則,這些規(guī)則大多以邏輯判斷或者是計算公式的方式存在。本文采用產(chǎn)生式規(guī)則和設計知識的公式表達方法進行實例在參數(shù)化設計過程中的規(guī)則設置,產(chǎn)生式表示法的模型一般是:“If條件then結(jié)論”,由參數(shù)名、參數(shù)規(guī)則及參數(shù)結(jié)論3部分組成,表示了在A的情況下B出現(xiàn)的結(jié)果[24]。參數(shù)的規(guī)則設計主要包括對尺寸的計算、裝配方案的選擇、模型組件的替換規(guī)則。
利用SolidWorks的二次開發(fā)函數(shù),將設計規(guī)則的表達進行封裝化設計,裝配關(guān)系的選擇使用SolidWorks中的特征壓縮EditSuppress2和解壓EditUnsuppress2函數(shù),根據(jù)設計規(guī)則選擇不同類型的裝配方案。模型替換方案使用PacKandGo函數(shù),將具有相同裝配信息的零部件進行打包替換操作。部分設計規(guī)則表示如表2所示。
表2 實例設計部分選擇規(guī)則Tab.2 Selection rules of example design section
2.3.2參數(shù)知識元表達
參數(shù)作為模型參數(shù)化設計中知識傳遞的載體,對其進行準確且易于理解的表示是設計過程的關(guān)鍵,利用參數(shù)設計中蘊涵的關(guān)鍵概念、屬性、結(jié)構(gòu)、功能等信息作為參數(shù)驅(qū)動的依據(jù),建立參數(shù)之間的關(guān)聯(lián)信息。為便于對參數(shù)信息的使用、管理,本文將知識元的概念引入到參數(shù)信息的描述上。
參數(shù)知識元信息可以表達為一個六元組
KU={ID,PBI,PT,PF,PI,PK}
(3)
式中:ID表示參數(shù)所屬實例的唯一標識;PBI表示參數(shù)的基本屬性集合,包括參數(shù)標記名稱、變量定義名稱、參數(shù)所屬類別等,信息屬性來源于系統(tǒng)提取的參數(shù)信息矩陣;PT表示參數(shù)的類型,根據(jù)模型知識整理過程中對參數(shù)類型的劃分,系統(tǒng)完成模型參數(shù)集合的整理與分類;PF表示經(jīng)驗、規(guī)則和公理的集合,定義參數(shù)屬性的約束范圍和設計規(guī)則;PI表示參數(shù)驅(qū)動優(yōu)先級別;PK表示參數(shù)設計知識的解釋,通過對該參數(shù)的設計知識描述,引導用戶完成參數(shù)的填充。
本文定義的知識元之間的邏輯關(guān)系主要有如下的關(guān)系集:①上下游關(guān)系,兩個及以上知識元之間具有順序關(guān)系,它們之間的讀取順序由參數(shù)驅(qū)動的優(yōu)先級別進行判定。②共同作用關(guān)系,兩個及以上知識元需要共同作用才能做出決策,其主要用于參數(shù)的數(shù)值計算,系統(tǒng)根據(jù)參數(shù)的計算函數(shù)判定共同作用的知識元數(shù)據(jù)來源。③互斥關(guān)系,根據(jù)設計規(guī)則的不同,兩個及以上知識元應用場景不同,只能選擇其中之一。圖9給出了建立參數(shù)知識元關(guān)系的部分模型。
切割裝置是稻麥收獲機械主要組成部件,根據(jù)切割的方式分為往復式和圓盤式兩種,目前使用較多的是往復式切割,它是由偏心軸式曲柄連桿機構(gòu)驅(qū)動,利用動刀片與護刃器上的定刀片進行往復的剪切運動,割斷作物。切割裝置的設計過程重要工作是對國標件的選型和裝配關(guān)系的確定,其工作性能受到許多因素影響,如機器前進速度、切割幅寬、作物類型、切割器類型等,用戶在設計過程中,根據(jù)不同的需求完成正確的選擇和結(jié)構(gòu)尺寸的確定,是切割裝置設計的關(guān)鍵[25-26]。以往復式切割為設計實例完成系統(tǒng)的操作,實例的設計結(jié)構(gòu)如圖10所示。
不同標準的切割器作用于不同的工作環(huán)境下,Ⅰ型切割器主要適用于割草機、Ⅱ~Ⅳ型切割器適用于谷物收獲機、Ⅴ型適用于小型收獲機械、Ⅵ型用于半喂入式聯(lián)合收獲機,Ⅶ型適用于谷物收獲機械,通過切割器的各項參數(shù)和選擇分析進行關(guān)聯(lián)對應,如圖11所示,完成設計參數(shù)的分析過程。
3.2.1割刀進距
割刀進距是切割器的重要工作參數(shù),它是動刀片左側(cè)運動極限和右側(cè)運動極限之間的機器前進的距離,為了不造成漏割的情況,進距H1計算式為
(4)
式中σ——動刀片刃口傾角
r——動刀片一半寬度,mm
h——動刀片刃口的高度,mm
在求解割刀進距時,對于小麥收割機械H1應為70~120 mm,水稻收割機械取值為50~55 mm。
3.2.2動刀片刃口的剪切負荷
動刀片的刃口剪切負荷是切割器設計和刀片磨損研究的重要參數(shù),在其他條件相同的情況下,刃口的負荷越大,動刀片的耐磨性就越差。采用單位長為1 cm的動刀片刃口所剪切作物的生長面積f的計算公式為
(5)
式中t0——切割器的護指間距,m
α——動刀片刃口傾角,(°)
為滿足切割器設計要求,一般f為6~10 cm2。
3.2.3切割器所需功率
切割器功率包括切割功率Ng和空轉(zhuǎn)功率Nk兩部分,計算公式為
N=Ng+Nk=vmBL0×10-3+Nk
(6)
式中vm——機器前進速度,m/s
B——機器割幅,cm
L0——切割每平方米莖稈所需的功,小麥為100~200 N·m/m2,牧草為200~300 N·m/m2
3.2.4切割器類型
往復式切割器根據(jù)切割行程S、動刀片間距t和定刀片間距(護刃齒間距)t0的不同組合,將切割器的型號分為普通型、雙刀距行程型和低割型,其不同型號的切割裝置S、t和t0如表3所示。
表3 往復式切割裝置的類型
3.2.5動刀片平均速度
動刀片平均速度是切割器設計的關(guān)鍵參數(shù),切割干禾株平均速度取0.8 m/s已經(jīng)足夠,如果禾株比較濕應取較大的值,其選值的關(guān)系式為
vp=βvm
(7)
式中β——刀機速比,小麥收獲機、割曬機、水稻收獲機、聯(lián)合收獲機分別為1.2、1.1、1.6、0.865
以Visual Studio 2019作為開發(fā)工具,在Windows操作系統(tǒng)環(huán)境下進行農(nóng)機模型參數(shù)設計交互式創(chuàng)建系統(tǒng)的構(gòu)建,以MySQL為關(guān)聯(lián)數(shù)據(jù)庫對實例模型設計知識進行儲存,以谷物收獲機械的切割裝置參數(shù)化設計過程作為實例,完成參數(shù)化實例的添加和使用,驗證本文提出方法可行性與有效性。
模型預處理后,進入模型信息讀取界面。系統(tǒng)對模型的基本信息進行提取,包括模型的質(zhì)量、體積、格式、尺寸、視圖信息等,如圖12所示。
模型基本特征信息讀取完畢后,進入到模型參數(shù)設計步驟,如圖13所示,依次對不同類型的設計參數(shù)進行知識添加。
(1)設置用戶輸入?yún)?shù)
進入到“設置用戶輸入?yún)?shù)”界面(圖14),根據(jù)整理的設計規(guī)則完成參數(shù)定義、參數(shù)輸入值范圍及模型結(jié)構(gòu)圖示的添加。
(2)設置模型驅(qū)動參數(shù)
進入“設置模型驅(qū)動參數(shù)”界面,如圖15所示,通過數(shù)據(jù)庫的連接將讀取參數(shù)信息顯示在DataGridView的控件中,在選中的參數(shù)信息中完成該參數(shù)的定義變量、關(guān)聯(lián)參數(shù)、驅(qū)動等級、知識描述等。
參數(shù)知識信息填充完成后,系統(tǒng)對知識進行分類、融合,完成參數(shù)知識元的構(gòu)建,如圖16所示,保存在實例參數(shù)信息庫。
(3)設置模型設計規(guī)則
以切割器的類型選擇為例,根據(jù)不同切割類型確定切割器的切割行程、動刀片間距和定刀片間距,填入如圖17所示的系統(tǒng)交互界面中。
(4)設置模型求解參數(shù)
將切割器的求解參數(shù)、求解規(guī)則、知識解釋信息輸入到控件框中,如圖18所示,即完成切割器參數(shù)化模型產(chǎn)品的實例添加。
通過對切割裝置的相關(guān)設計知識的分析、聚類,建立參數(shù)化設計模型,圖19為模型實例選擇界面,用戶可根據(jù)界面的模型信息、特征信息、知識內(nèi)容、結(jié)構(gòu)內(nèi)容及模型預覽選擇所需的模型。
選中切割器模型后,進入到實例設計重用界面,如圖20所示,在設置實例參數(shù)區(qū)域,設計人員可根據(jù)推送的知識元信息完成切割器的參數(shù)輸入,點擊求解控件,系統(tǒng)根據(jù)參數(shù)之間的知識元關(guān)系完成推理計算,其結(jié)果顯示在參數(shù)求解區(qū)域。
用戶可在功能區(qū)域完成模型的驅(qū)動、導出及預覽功能。系統(tǒng)通過對用戶輸入的參數(shù)值以及系統(tǒng)中對參數(shù)關(guān)聯(lián)信息、裝配信息的計算選擇,調(diào)用SolidWorks驅(qū)動相應零部件進行參數(shù)變更,實現(xiàn)該模型的重構(gòu),最終輸出到用戶設置導出的儲存位置,并將本次設計信息保存到實例信息庫。
(1)構(gòu)建了一套模型參數(shù)化設計交互式創(chuàng)建系統(tǒng),該系統(tǒng)能通過標記參數(shù)的方法獲取模型參數(shù)化設計過程中所涉及到的變量參數(shù),并封裝參數(shù)的信息獲取、參數(shù)驅(qū)動變更等操作指令,同時,通過人機交互式操作平臺來實現(xiàn)模型的參數(shù)化建模,保證了系統(tǒng)的獨立性,降低了模型參數(shù)化開發(fā)的專業(yè)性,提高了農(nóng)機產(chǎn)品的研發(fā)效率。
(2)根據(jù)參數(shù)的屬性類別將模型設計參數(shù)劃分為用戶輸入?yún)?shù)、驅(qū)動參數(shù)、規(guī)則參數(shù)和求解參數(shù);運用參數(shù)驅(qū)動遞階模型的分析方法,對各類參數(shù)的設計規(guī)則進行整理,增強了知識表達的靈活性與適應性。
(3)采用參數(shù)知識元描述的方法將農(nóng)機三維模型的參數(shù)屬性特征、關(guān)聯(lián)信息、范圍限定、知識描述等信息進行定性、定量表達,使得實例添加過程中對知識整理、分類、表達更加簡單、規(guī)范。以切割器實例庫的構(gòu)建為例,從實例的添加和生成兩個方面對系統(tǒng)整個操作過程進行演示,完成了模型實例的設計重用。