中圖分類號(hào):TH-39 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):2095-2945(2025)21-0178-04
Abstract:Inordertopromoteandapplyvirtualdebugging technologyintheautomatedequipmentindustryandsolvethe problemsofhighpriceandclosedsoftwareandhardwareecology,thispaperproposesamechatronicvirtualdebuggingsystem.In ordertooptimizethesystemdebuggingprocess,thesystemadoptsoflinedynamicinterferenceinspectiontechnologytoconduct interferenceinspection,andusesakineminetics-basedloadtransfermethodtotrigerandreleasecontactpairs,therebyadjusting theconectionrelationshipof movingpartsandupdating thepositionoftheworkpiece,therebycompletingworkpiecetransfer. Thispaperfirstintroducestheframeworkstructureofthemechatronicvirtualdebugingsystem,andthendiscusesthespecific implementationprocessofoflinedynamicinterferenceinspectiontechnologyandworkpiecetransfersimulationtechnology, providing ideas for the real-time and stable operation of the mechatronic virtual debugging system.
Keywords:mechatronics;virtualdebuging;dynamicinterferenceinspection;load transfersimulation;automationequipment
在機(jī)電工程逐步智能化發(fā)展的時(shí)代背景下,機(jī)電一體化虛擬調(diào)試技術(shù)逐漸誕生,但當(dāng)前研發(fā)出的虛擬調(diào)試軟件,存在軟硬件相互綁定、應(yīng)用價(jià)格較高的問題,為了迎合制造業(yè)對(duì)虛擬調(diào)試系統(tǒng)的應(yīng)用需求,設(shè)計(jì)了不依賴于硬件控制的機(jī)電一體化虛擬調(diào)試系統(tǒng)。但此系統(tǒng)應(yīng)用時(shí),需不斷執(zhí)行干涉檢查任務(wù),其計(jì)算量相對(duì)較大,且工件移載過程不夠穩(wěn)定,因此,有必要引人離線動(dòng)態(tài)干涉檢查、工件移載仿真技術(shù),從而提高干涉檢查的實(shí)時(shí)性、推動(dòng)運(yùn)動(dòng)仿真過程連續(xù)性開展。
主要用于檢查運(yùn)動(dòng)干涉。二是控制系統(tǒng),包括可編程控制器、運(yùn)動(dòng)控制卡及其他控制系統(tǒng),可編程控制器通過OPCUA協(xié)議、Modbus協(xié)議連接到虛擬調(diào)試系統(tǒng)上??刂葡到y(tǒng)通過控制信號(hào)接口與虛擬調(diào)度系統(tǒng)相連。三是CAD平臺(tái),內(nèi)置了法國(guó)達(dá)索公司的普通型三維計(jì)算機(jī)輔助設(shè)計(jì)軟件Solidworks及高級(jí)3D軟件Catia、西門子公司開發(fā)的高端CAD軟件SimensNX,通過CAD接口與虛擬調(diào)試系統(tǒng)連接,用于讀取幾何數(shù)據(jù)、接收傳感器信息,此平臺(tái)封裝于CAD接口層中。
1機(jī)電一體化虛擬調(diào)試系統(tǒng)的框架結(jié)構(gòu) 2機(jī)電一體化虛擬調(diào)試系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)
根據(jù)實(shí)時(shí)性、易用性、適用性、可擴(kuò)展性需求,設(shè)計(jì)了包含3部分結(jié)構(gòu)的機(jī)電一體化虛擬調(diào)試系統(tǒng)(圖1),一是虛擬調(diào)試系統(tǒng),其由前置處理、運(yùn)動(dòng)驅(qū)動(dòng)、干涉檢查三大模塊組成,前置處理模塊主要用于定義機(jī)電屬性、建立信號(hào)映射關(guān)系,運(yùn)動(dòng)驅(qū)動(dòng)模塊的作用是求解零件位置及姿態(tài),并檢查與反饋傳感器狀態(tài),而干涉檢查模塊
2.1離線動(dòng)態(tài)干涉檢查技術(shù)
模擬設(shè)備運(yùn)行、識(shí)別運(yùn)動(dòng)干涉是虛擬調(diào)試系統(tǒng)的主要功能,在動(dòng)態(tài)檢查時(shí),需時(shí)刻展開檢查計(jì)算,并找出運(yùn)動(dòng)干涉發(fā)生時(shí)間。為精準(zhǔn)確定干涉時(shí)刻、及時(shí)修正程序,采用離線動(dòng)態(tài)干涉檢查技術(shù)進(jìn)行干涉檢查,檢查流程如圖2所示。
2.1.1 調(diào)試信息記錄與輸出
虛擬調(diào)試過程中,用調(diào)試信息記錄與輸出記錄運(yùn)動(dòng)副的運(yùn)動(dòng)信息,并負(fù)責(zé)輸出離線動(dòng)態(tài)干涉計(jì)算后得到的運(yùn)動(dòng)干涉信息。采用開環(huán)樹狀圖結(jié)構(gòu)求解,需記錄作為運(yùn)動(dòng)副運(yùn)動(dòng)信息的廣義坐標(biāo)值。因運(yùn)動(dòng)干涉回放時(shí),要先讀取運(yùn)動(dòng)副的運(yùn)動(dòng)信息、干涉結(jié)果數(shù)據(jù),將各時(shí)間片中運(yùn)動(dòng)信息與干涉計(jì)算結(jié)果一一對(duì)應(yīng)后形成的新對(duì)象數(shù)據(jù)作為運(yùn)動(dòng)干涉信息。記錄運(yùn)動(dòng)信息時(shí),分別記錄運(yùn)動(dòng)副的名稱、種類及廣義坐標(biāo)值組,采用隊(duì)列式數(shù)據(jù)結(jié)構(gòu),分別存儲(chǔ)各運(yùn)動(dòng)副的運(yùn)動(dòng)信息。輸出的運(yùn)動(dòng)干涉信號(hào)為運(yùn)動(dòng)信息、時(shí)間信息及干涉組信息。其中,干涉組信息是全部干涉信息的集合,信息內(nèi)容涉及2個(gè)相互干涉零件的名稱、大小,以CompnonentPath的數(shù)據(jù)形式存儲(chǔ)。離線干涉計(jì)算、干涉回放兩大模塊不使用相同線程,兩線程間的數(shù)據(jù)采用開源JOSN工具包對(duì)標(biāo)準(zhǔn)數(shù)據(jù)交換格式進(jìn)行序列化或反序列化后再傳送,以便在內(nèi)存及外部存儲(chǔ)之間靈活轉(zhuǎn)換。
2.1.2離線動(dòng)態(tài)干涉計(jì)算
離線動(dòng)態(tài)干涉計(jì)算共分4步完成,首先進(jìn)行干涉預(yù)處理,然后更新對(duì)象位置,再然后展開靜態(tài)干涉計(jì)算,最后再進(jìn)行干涉排除過程。具體步驟如圖3所示。
1)干涉預(yù)處理。此步驟的目的是對(duì)原始干涉進(jìn)行篩除,識(shí)別出原始靜態(tài)干涉問題。對(duì)比分析得出的干涉計(jì)算結(jié)果與初始干涉后,將初始干涉所產(chǎn)生的影響剔除。干涉結(jié)果中,除了計(jì)算出2個(gè)干涉零件的名稱以外,還包括二者干涉的大小,因而,通過分析干涉零件對(duì)的路徑、大小是否一致可完成干涉排除任務(wù)。先利用字典對(duì)象記錄原始干涉零件的路徑信息,此信息是唯一的,因一組相互干涉的零件并不相同,需存儲(chǔ)2次Key值,雖會(huì)削弱空間的復(fù)雜程度,但時(shí)間復(fù)雜度將有所提升。
2)位置更新。干涉計(jì)算時(shí),為確保對(duì)象位置快捷更新,不直接利用零件對(duì)象進(jìn)行干涉計(jì)算,而是使用Body2對(duì)象替代,因?yàn)榇藢?duì)象的存儲(chǔ)體量不大、計(jì)算速度較快,利用基于Windows的三維機(jī)械設(shè)計(jì)軟件SolidWork進(jìn)行計(jì)算時(shí),可保障計(jì)算結(jié)果的準(zhǔn)確性。按照零件對(duì)象的GetBody方法獲取Body2對(duì)象,在時(shí)間步零件位置變化后提取運(yùn)動(dòng)副的運(yùn)動(dòng)信息,再對(duì)零件齊次變換矩陣進(jìn)行求解,之后利用ApplyTransform完成Body2對(duì)象的位置更新任務(wù)。
3)靜態(tài)干涉計(jì)算。靜態(tài)干涉檢查時(shí),需先進(jìn)行碰撞檢查預(yù)處理,識(shí)別出存在干涉情況的幾何體,再展開精確干涉計(jì)算,可快捷、高效完成干涉檢測(cè)。干涉檢查預(yù)處理采用計(jì)算效率高的層次包圍盒法,需先在三維空間中表示出軸向包圍盒,再確定其在三維坐標(biāo)軸上投影的最大值與最小值,然后對(duì)比2個(gè)包圍盒之間極小與極大的2個(gè)點(diǎn),便可識(shí)別出坐標(biāo)軸上是否存在包圍盒投影重合現(xiàn)象。經(jīng)過預(yù)處理后,可利用干涉計(jì)算函數(shù)的API接口中所包含的CheckInterference3方法計(jì)算Body2對(duì)象之間的干涉信息,此方法由2個(gè)輸入對(duì)象、一個(gè)參數(shù)對(duì)象構(gòu)成,分別是Body2對(duì)象與Options中的返回所有干涉面。干涉計(jì)算結(jié)果得出后,將路徑、大小、運(yùn)動(dòng)信息集合到一起同步輸出,以之作為干涉結(jié)果回放的依據(jù)。
2.1.3 回放干涉結(jié)果
系統(tǒng)離線動(dòng)態(tài)干涉檢查模塊中設(shè)置了回放裝置,用戶可直觀查看零件的運(yùn)動(dòng)干涉狀況。干涉結(jié)果虛擬調(diào)試時(shí),用戶在顯示屏幕上點(diǎn)擊“播放按鈕”,便可播放運(yùn)動(dòng)干涉畫面,通過控制進(jìn)度條可以調(diào)節(jié)回放時(shí)間點(diǎn),存在干涉的部分以高亮狀態(tài)顯示。利用System.Windows.Forms庫(kù)開發(fā)干涉界面的用戶對(duì)話框,此對(duì)話框的主體控件與功能見表1。播放控制時(shí),采用Maximum屬性、Value屬性分別控制滑動(dòng)條的滑動(dòng)長(zhǎng)度及位置,可選單步播放、自動(dòng)播放2種模式,單步播放時(shí),共有前進(jìn)、后退2種不同的播放形式?;胤艜r(shí)干涉零件呈高亮狀態(tài),通過遍歷時(shí)間步的干涉信息,提取各干涉零件的對(duì)象屬性,利用Select4(方法選中零件、采用ClearSelection2方法取消上次選中,從而實(shí)現(xiàn)干涉零件高亮處理。最后,需要顯示干涉文本框,采用ListView作為控件對(duì)象,利用文本框詳細(xì)記錄干涉零件的名稱、大小,記錄的字符串有4個(gè),用于代表干涉信息,記錄后的對(duì)象以數(shù)組形式輸入控制對(duì)象數(shù)據(jù)欄中,各時(shí)間步開始時(shí)要將上次文本框顯示內(nèi)容清空。
2.2工件移載仿真技術(shù)
2.2.1工件運(yùn)動(dòng)約束狀態(tài)轉(zhuǎn)移與判斷
以拆垛機(jī)器人流水線為例,工件運(yùn)動(dòng)時(shí)的約束狀態(tài)轉(zhuǎn)移分成4個(gè)步驟完成,如圖4所示。約束狀態(tài)轉(zhuǎn)移之初,工件無任何約束,而其接觸到傳送帶后,便會(huì)與傳送帶的機(jī)架之間形成移動(dòng)副約束;接觸吸盤的工件,與傳送帶機(jī)架間的約束會(huì)解除,之后再與吸盤之間形成固定副約束;接觸貨架后,還會(huì)再次解除與吸盤的約束,從而與貨架之間再次形成固定副約束。為了明確工件狀態(tài)轉(zhuǎn)移的時(shí)間,利用工件移載仿真技術(shù)進(jìn)行轉(zhuǎn)移時(shí)間識(shí)別,此方法具有高效計(jì)算距離、實(shí)時(shí)判斷約束狀態(tài)轉(zhuǎn)移時(shí)間的特性。系統(tǒng)會(huì)分別檢查工件與機(jī)架、吸盤、貨架等結(jié)構(gòu)接觸時(shí)的約束狀態(tài),并經(jīng)過接觸對(duì)的面特征提取、位置更新、面距離計(jì)算和激活判斷4個(gè)步驟完成約束狀態(tài)轉(zhuǎn)移時(shí)間的判斷。
2.2.2 運(yùn)動(dòng)副連接及工件位置更新
工件與其他零件的運(yùn)動(dòng)副連接狀態(tài)轉(zhuǎn)移時(shí),需新建運(yùn)動(dòng)副連接,并將舊連接刪除,若工件與零件的約束未斷開,會(huì)于下一時(shí)刻重建約束連接,移載時(shí)更新運(yùn)動(dòng)副連接時(shí),要以接觸對(duì)狀態(tài)判斷結(jié)果作為依據(jù)。運(yùn)動(dòng)副連接的更新共需經(jīng)過7個(gè)步驟:一是確定工件屬性,創(chuàng)建零件間接觸,在未激活表中添加接觸對(duì);二是遍歷激活表中的接觸,標(biāo)記未激活接觸對(duì)的狀態(tài);三是遍歷未激活表中的接觸,然后依次標(biāo)記接觸的狀態(tài);四是識(shí)別出激活狀態(tài)接觸后立即將工件運(yùn)動(dòng)副約束解除,再添加新激活的運(yùn)動(dòng)副約束;五是分別刪除接活表中未激活、未激活表中已激活的接觸,并添加至對(duì)應(yīng)表中;六是依據(jù)控制信號(hào)對(duì)零件的齊次變換矩陣進(jìn)行計(jì)算,然后更新位置;七是返回步驟2,循環(huán)上述過程。注意工件位置更新時(shí),由于時(shí)間不同時(shí)工件所處的運(yùn)動(dòng)鏈不一,不能采用運(yùn)動(dòng)副相對(duì)變換矩陣傳遞求解位姿,而應(yīng)采用變換后的表達(dá)式單獨(dú)求解,即
式中:零件 L 在 m 時(shí)刻相對(duì)初時(shí)刻的齊次變換矩陣計(jì)算用 TLm,Lo 表示,而在 ?m 時(shí)刻相對(duì)初時(shí)刻的齊次變換矩陣計(jì)算則用 TL',L' 代表, MGm,Lm 表示 m 時(shí)刻到 n 時(shí)刻,工件G與零件 L 之間運(yùn)動(dòng)帶的相對(duì)變換矩陣, TGn,Go"則表示工件在 n 時(shí)刻相對(duì)初時(shí)刻的齊次變換矩陣。此新算法的求解效率見表2。
3結(jié)束語(yǔ)
本文介紹了機(jī)電一體化虛擬調(diào)試系統(tǒng)的框架結(jié)構(gòu),為了滿足系統(tǒng)的高實(shí)時(shí)性要求,進(jìn)一步探討了動(dòng)態(tài)干涉檢查、工件移載的實(shí)現(xiàn)技術(shù)。采用離線動(dòng)態(tài)干涉檢查技術(shù),經(jīng)過運(yùn)動(dòng)記錄、離線干涉計(jì)算、干涉動(dòng)畫回放3個(gè)步驟完成干涉檢查,利用以運(yùn)動(dòng)學(xué)為基礎(chǔ)的移載處理技術(shù),采用接觸對(duì)、激活表完成工件與運(yùn)動(dòng)零件之間的接觸、斷開狀態(tài)的轉(zhuǎn)換,在改變工件約束狀態(tài)的基礎(chǔ)上,化解連接觸的問題,可以降低計(jì)算量,能將計(jì)算時(shí)間縮短至毫秒級(jí),可高效完成虛擬調(diào)試,提升調(diào)試過程的實(shí)時(shí)性。
參考文獻(xiàn):
[1]張耀武,劉宇,馬付建,等.虛擬PLC驅(qū)動(dòng)的生產(chǎn)線調(diào)試系統(tǒng)設(shè)計(jì)J機(jī)械與電子,2024,42(4):39-44.
[2]寇薈闊.基于SolidWorks平臺(tái)的機(jī)電一體化虛擬調(diào)試系統(tǒng)研究[J.電工技術(shù),2023(20):1-3.
[3]馬飛,代錕,孫巍偉.基于數(shù)字孿生的物流揀選虛擬調(diào)試系統(tǒng)設(shè)計(jì)[J].機(jī)床與液壓,2023,51(16):95-100.
[4]王兵.面向虛擬調(diào)試的自動(dòng)化制造系統(tǒng)邏輯建模研究[D].成都:西南交通大學(xué),2021.
[5]陸文祥.面向智能制造生產(chǎn)線的虛擬調(diào)試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].杭州:浙江工業(yè)大學(xué),2020.