魯超宇,王鳳花,賴慶輝,劉志迎
(昆明理工大學(xué)農(nóng)業(yè)與食品學(xué)院,云南 昆明 650500)
旋耕機有較好的碎土平地能力,是目前最常見的耕整機械。旋耕刀輥是其主要耕作部件,其性能直接影響耕作質(zhì)量[1–2]??焖僭O(shè)計旋耕刀輥可滿足用戶的多樣化需求,促進產(chǎn)品質(zhì)量的提升。
基于知識工程(KBE)的智能設(shè)計在航空航天、汽車、機床等領(lǐng)域已有了較深入的研究[3–9]。部分針對農(nóng)業(yè)機械領(lǐng)域的研究:李長林等[10]基于知識工程理論開發(fā)了高速插秧機底盤快速設(shè)計專家系統(tǒng),將知識庫、推理機和參數(shù)化模型融合一體,實現(xiàn)了底盤的快速設(shè)計;丁昌文等[11]開發(fā)了拖拉機的智能設(shè)計系統(tǒng),實現(xiàn)了設(shè)計知識的重用;GUJARATHI等[12]開發(fā)了一種CAD和CAE集成的參數(shù)化模型,可以快速設(shè)計產(chǎn)品并進行分析。
筆者將對旋耕機刀輥設(shè)計知識分類整理并存儲,建立旋耕機刀輥參數(shù)庫、規(guī)則庫、實例庫; 通過SQL語言實現(xiàn)對數(shù)據(jù)庫的修改、查詢等操作,建立基于規(guī)則和實例相結(jié)合的混合推理法,用計算實例差異度的方式快速尋找實例庫中相似實例,定位用戶需求;設(shè)計用戶友好的人機交互界面,利用尺寸驅(qū)動模型變更法,基于 VisualStudio 2017中的VB.NET和API方法對SolidWorks二次開發(fā),實現(xiàn)輸入?yún)?shù)驅(qū)動模型變更,開發(fā)了旋耕機刀輥快速設(shè)計系統(tǒng),3~5 min即可設(shè)計出用戶需求的刀輥CAD模型,旋耕機刀輥的設(shè)計效率較高。
根據(jù)刀輥的結(jié)構(gòu),將刀輥劃分成刀軸、刀座、旋耕刀3個部分。目前市場上使用較多的旋耕機特征參數(shù)列于表1。將刀輥的設(shè)計知識大致分為查表類、經(jīng)驗類、設(shè)計規(guī)則類和實例類4類知識。
表1 旋耕機刀輥的特征參數(shù)Table 1 Parameter survey of existing common models
1) 查表類知識。主要為旋耕刀的各個參數(shù),包括刀輥回轉(zhuǎn)半徑、側(cè)切刃和正切刃起始與終點半徑、工作幅寬等,由農(nóng)業(yè)機械設(shè)計手冊查得。
2) 經(jīng)驗類知識。通過參考現(xiàn)有機型、專家的研究設(shè)計與實踐經(jīng)驗來確定,主要包括相鄰刀座錯位角度、刀座厚度、旋耕刀排列方式、旋耕刀數(shù)量的設(shè)計等。為了保證耕作效果,隨著旋耕機耕幅的加大,旋耕刀數(shù)量增多,不同型號旋耕刀有不同的工作幅寬。由于每組刀座上2把旋耕刀的正切刃方向相反,故每組旋耕刀的有效工作幅寬為單個旋耕刀工作幅寬的2倍。規(guī)則排布的情況下,所有旋耕刀組工作幅寬之和大于或等于旋耕機耕幅、且無漏耕。
3) 設(shè)計規(guī)則類知識。根據(jù)耕深選擇不同型號的旋耕刀;根據(jù)旋耕刀型號確定刀座間距;根據(jù)耕幅確定單側(cè)刀輥上旋耕刀總數(shù)量和刀軸直徑等設(shè)計公式。刀座間距直接決定耕作效果。不同型號的旋耕刀工作幅寬不同,所適用的刀座間距也不同。根據(jù)表1中常見旋耕機上不同型號旋耕刀的工作幅寬與刀座間距,繪制散點圖,并擬合曲線,得到刀座間距與旋耕刀工作幅寬的規(guī)則公式,如圖1所示。
圖1 旋耕刀工作幅寬和刀座間距擬合曲線Fig.1 Fitting curve of the rotary blade seat spacing dependent on the working width
4) 實例類知識。即已有的零部件模型,在系統(tǒng)應(yīng)用中,當(dāng)現(xiàn)有實例符合用戶需求時,可直接供用戶選用;或在現(xiàn)有實例的基礎(chǔ)上加以改動,達成用戶需要的模型。
將獲取旋耕機刀輥的知識存儲在Access數(shù)據(jù)庫中,建立Visual Studio與數(shù)據(jù)庫的聯(lián)系,通過SQL語句對數(shù)據(jù)庫數(shù)據(jù)的增減、調(diào)用、修改、查詢等,實現(xiàn)開發(fā)平臺對數(shù)據(jù)庫參數(shù)的調(diào)用。如圖2所示,查表類知識以旋耕刀各項參數(shù)為例;設(shè)計規(guī)則類知識、經(jīng)驗類知識以耕深耕幅為初始參數(shù)的公式為例;實例類知識分為零件和裝配體兩類。
圖2 旋耕機刀輥設(shè)計知識庫Fig.2 Datebase of rotary blade roller
推理方法是刀輥快速設(shè)計系統(tǒng)的核心,分為基于實例的推理(CBR)和基于規(guī)則的推理(RBR)。在刀輥快速設(shè)計系統(tǒng)中使用這2種方法相結(jié)合的混合推理法。推理流程(圖3):當(dāng)用戶輸入需要的參數(shù)后,系統(tǒng)根據(jù)設(shè)計規(guī)則設(shè)計出完整的刀輥參數(shù),并根據(jù)特定的方法檢索實例庫,當(dāng)有符合條件的實例時,直接輸出三維模型和工程圖;當(dāng)實例庫中沒有符合條件的實例時,系統(tǒng)則會尋找與用戶需求最相似的實例,并通過二次開發(fā)的方法修改,以達成用戶需求,將設(shè)計出的新實例保存到實例庫中,同時還達到擴充實例庫的目的。
圖3 刀輥快速設(shè)計系統(tǒng)的推理流程Fig.3 Flow chart of system inference
刀輥各零件的具體參數(shù)均是由上層部件的特征參數(shù)推理而來,系統(tǒng)推理機會根據(jù)用戶輸入的參數(shù)對數(shù)據(jù)庫進行檢索并找到相對應(yīng)的規(guī)則或參數(shù),基于計算機語言完成整機參數(shù)的計算,實現(xiàn)系統(tǒng)對設(shè)計參數(shù)的自動推理。
運用最近相鄰法[13]進行實用性更強、且易于程序化的差異度計算法推理。
如2個實例的總差異度
式中:wi為第i特征的權(quán)重因子;di為2個實例第i特征的差異度。
由知識庫構(gòu)建的設(shè)計規(guī)則可知,刀輥耕幅、耕深直接影響整個部件的結(jié)構(gòu)和相鄰刀座間距、單側(cè)刀軸刀數(shù)2個特征,故將權(quán)重值安排如表2。
表2 參數(shù)與權(quán)重Table 2 Parameter and proportion
計算得到實例1與用戶需求的差異度為0.228,實例2與用戶需求的差異度為0.097。相比之下,選擇實例2為相似實例作為進行二次開發(fā)模塊的基準(zhǔn)模型。
在利用VisualStudio對SolidWorks二次開發(fā)之前,首先需要引入 SolidWorks類型庫 SolidWorks Type Library,建立二者之間的聯(lián)系;其次通過在VisualStudio中添加一個類,命名為AccessHelper,來實現(xiàn)參數(shù)庫、規(guī)則庫、實例庫與系統(tǒng)的數(shù)據(jù)交互,主要用到的有 CREATE、DELETE、ALTER、INSERT、UPDATE、SELECT、GRANT、REVOKE等SQL命令;最后新建一個exe文件,編寫VB.NET程序,使得推理算法程序化,實現(xiàn)按照Textbox控件中的尺寸信息,自動改變模型零件的相應(yīng)尺寸特征,并自動裝配。主要代碼和API方法如下。
Dim S wapp As Sld Works.SldWorks'聲明SldWorks對象
Swapp = Cr eateObject("sldworks.application")'創(chuàng)建并返回SldWorks的對象引用
Swapp.OpenDoc("裝配體文件路徑".SLDASM,2) '獲得指定路徑的文件
Dim Part As Sld Works.ModelDoc2 '聲明文件對象
Part = Swapp.ActiveDoc '獲得目前展現(xiàn)的文檔對象
Dim My dimension As Sld Works.Dimension '聲明尺寸對象
Mydimension = Part.Parameter("對應(yīng)尺寸特征名稱") '獲得尺寸對象的引用
Mydimension.System Value = A_size / 1000 '根據(jù)Textbox控件輸入信息驅(qū)動模型變更。
…
Part.EditRebuild3() '重建模型。
選擇64位Windows 10操作系統(tǒng),開發(fā)環(huán)境為VisualStudio 2017。用戶通過登錄界面進入系統(tǒng),輸入所需參數(shù)后,混合推理算法根據(jù)設(shè)計規(guī)則知識進行推理,并根據(jù)所有Textbox控件中的參數(shù)信息驅(qū)動SolidWorks模塊,實現(xiàn)實例變更,并輸出相應(yīng)的設(shè)計結(jié)果,同時將設(shè)計結(jié)果存入實例庫。系統(tǒng)界面如圖4所示,在Intel i5處理器、系統(tǒng)內(nèi)存8 GB配置環(huán)境下,完成刀輥設(shè)計僅耗時3~5 min。
圖4 旋耕機刀輥快速設(shè)計系統(tǒng)界面Fig.4 System interface of the rotary blade roller rapid design system