摘要:針對“現(xiàn)代電氣控制技術(shù)”課程中可編程邏輯控制器(Programmable Logic Controller,PLC)教學(xué)實(shí)訓(xùn)條件存在高投入、高風(fēng)險(xiǎn)等問題,文章提出一種應(yīng)用Unity 3D開發(fā)的“現(xiàn)代電氣控制技術(shù)”課程的虛擬仿真實(shí)訓(xùn)系統(tǒng),旨在幫助機(jī)電類學(xué)生學(xué)習(xí)“現(xiàn)代電氣控制技術(shù)”課程時(shí)進(jìn)行PLC梯形圖編程實(shí)訓(xùn)。該系統(tǒng)能支持虛實(shí)結(jié)合和純虛擬化兩種實(shí)訓(xùn)模式,同時(shí)還能和實(shí)際的實(shí)訓(xùn)設(shè)備共同構(gòu)成數(shù)字孿生模型。文章介紹了該虛擬仿真實(shí)訓(xùn)系統(tǒng)配合真實(shí)PLC或虛擬PLC進(jìn)行編程實(shí)訓(xùn)的方法和該虛擬仿真實(shí)訓(xùn)系統(tǒng)的開發(fā)步驟以及應(yīng)用的情況。經(jīng)實(shí)際使用,該系統(tǒng)具有較好的應(yīng)用價(jià)值。
關(guān)鍵詞:虛擬仿真;PLC;虛實(shí)結(jié)合;數(shù)字孿生
中圖分類號(hào):TP393""文獻(xiàn)標(biāo)志碼:A
0"引言
“現(xiàn)代電氣控制技術(shù)”課程是高職機(jī)電類專業(yè)的一門核心課程,學(xué)生在該門課程中學(xué)到的可編程邏輯控制器程序設(shè)計(jì)能力非常關(guān)鍵,對學(xué)生后期崗位實(shí)習(xí)及工作起著至關(guān)重要的作用。然而,學(xué)生學(xué)習(xí)可編程邏輯控制器編程的被控對象(如機(jī)電一體化設(shè)備或生產(chǎn)線)價(jià)格貴,體積大,一般安裝在固定的實(shí)訓(xùn)室,學(xué)生若要實(shí)訓(xùn)必須在實(shí)訓(xùn)室才能進(jìn)行;學(xué)生雖然可以利用PLC的編程軟件練習(xí)編程,但是不能直觀看到被控對象的執(zhí)行動(dòng)作,不知道程序是否正確。隨著虛擬現(xiàn)實(shí)技術(shù)的發(fā)展,學(xué)生可以利用虛擬現(xiàn)實(shí)技術(shù)虛擬化實(shí)訓(xùn)設(shè)備,結(jié)合各PLC廠家提供的虛擬PLC進(jìn)行純虛擬的實(shí)訓(xùn),從而實(shí)現(xiàn)虛擬實(shí)訓(xùn)和虛擬教學(xué)。此方法可打破傳統(tǒng)教學(xué)必須在實(shí)訓(xùn)室中進(jìn)行的束縛,讓學(xué)生在任何時(shí)間和地點(diǎn),只要有電腦即可進(jìn)行實(shí)訓(xùn),從而增加學(xué)習(xí)的靈活性,有利于實(shí)現(xiàn)線上教學(xué)和學(xué)習(xí)。除此以外,還可以使用PLC實(shí)物結(jié)合虛擬設(shè)備實(shí)現(xiàn)半實(shí)物半虛擬的虛實(shí)結(jié)合實(shí)訓(xùn),降低實(shí)訓(xùn)設(shè)施的投入。
經(jīng)過實(shí)際應(yīng)用,學(xué)校利用虛擬現(xiàn)實(shí)技術(shù)實(shí)現(xiàn)設(shè)備的數(shù)字孿生系統(tǒng)用于教學(xué),能夠大大提高學(xué)生自主學(xué)習(xí)積極性和興趣,有效防止學(xué)生在操作不熟練的情況下進(jìn)行實(shí)訓(xùn)對設(shè)備帶來損壞和降低對自身安全的風(fēng)險(xiǎn),同時(shí)能解決設(shè)備投入高、數(shù)量不足的問題,有效增加學(xué)生實(shí)訓(xùn)的時(shí)長,提高教學(xué)質(zhì)量。
近年來,很多學(xué)者進(jìn)行了虛擬實(shí)驗(yàn)或?qū)嵱?xùn)方面的研究,在智能制造領(lǐng)域?qū)崿F(xiàn)數(shù)字孿生,如:陳立[1]開發(fā)了基于Unity 3D和AR技術(shù)的虛擬實(shí)驗(yàn)室系統(tǒng),王佩玉等[2]提出了一種基于Unity 3D配合三菱虛擬PLC實(shí)現(xiàn)了生產(chǎn)線跨平臺(tái)的虛擬調(diào)試系統(tǒng)設(shè)計(jì)方法,孫國鋒等[3]利用Unity 3D上位機(jī)平臺(tái)搭建了組合稱模型,實(shí)現(xiàn)數(shù)字孿生。宮瑞哲等[4]利用數(shù)字孿生理論搭建堆垛機(jī)的數(shù)字孿生模型,實(shí)現(xiàn)多層次的監(jiān)控與運(yùn)維;趙永信等[5]利用西門子機(jī)電概念設(shè)計(jì)軟件MCD對氣動(dòng)機(jī)械手進(jìn)行概念設(shè)計(jì)并利用虛擬PLC和TCP實(shí)現(xiàn)通信對氣動(dòng)機(jī)械手的模型進(jìn)行虛擬仿真調(diào)試,蔡文站等[6]利用西門子機(jī)電一體化概念設(shè)計(jì)軟件MCD和TIA軟件設(shè)計(jì)了機(jī)器人打磨聯(lián)合虛擬調(diào)試系統(tǒng),通過OPC UA協(xié)議同硬件進(jìn)行通信實(shí)現(xiàn)軟/硬件聯(lián)合虛擬調(diào)試,嚴(yán)惠等[7]基于MCD機(jī)電一體化概念設(shè)計(jì)軟件,利用KEPServerEX6 OPC服務(wù)器和SignalR即時(shí)通信技術(shù)設(shè)計(jì)了柔性生產(chǎn)線數(shù)字孿生的FMS運(yùn)維監(jiān)控系統(tǒng),歐陽曙光等[8]利用Unity 3D開發(fā)了交互式化工虛擬仿真實(shí)習(xí)平臺(tái),用于演示設(shè)備結(jié)構(gòu)和工作原理,以及操作培訓(xùn)和考核,李能菲等[9]利用RobotStudio軟件實(shí)現(xiàn)了工業(yè)機(jī)器人自動(dòng)生產(chǎn)線工作站的虛擬仿真教學(xué)。
從以上的情況分析可知,目前,在虛擬仿真實(shí)驗(yàn)實(shí)訓(xùn)和虛擬調(diào)試方面,一般都是基于Unity 3D、西門子MCD以及各類CAD軟件或者專門開發(fā)的虛擬軟件,實(shí)現(xiàn)各類設(shè)備的動(dòng)作、場景模擬等。其中,西門子MCD除了能實(shí)現(xiàn)各類設(shè)備的物理特性及動(dòng)作模擬外,還能夠通過傳感器設(shè)置與外部控制設(shè)備如PLC等實(shí)現(xiàn)電氣與機(jī)械的聯(lián)合仿真,具有工程屬性,但MCD軟件是在西門子UG NX建模軟件的基礎(chǔ)上集成了機(jī)電一體化概念設(shè)計(jì)模塊,該軟件不能單獨(dú)運(yùn)行,安裝包巨大,運(yùn)行環(huán)境對計(jì)算機(jī)性能要求較高。該軟件為商業(yè)軟件,價(jià)格不菲,不利于推廣應(yīng)用,而其他的仿真模式在電氣控制方面的仿真能力存在欠缺,特別是不能很好地解析PLC梯形圖程序。因此,文章提出一種基于Unity 3D和虛擬PLC聯(lián)合開發(fā)設(shè)備數(shù)字孿生系統(tǒng)(虛擬設(shè)備),配合PLC編程軟件實(shí)現(xiàn)電氣控制系統(tǒng)編程實(shí)訓(xùn)的虛擬仿真資源開發(fā)方式。同時(shí),該虛擬設(shè)備也能作為真實(shí)PLC的被控對象,實(shí)現(xiàn)虛實(shí)結(jié)合的虛擬仿真方式。本文以學(xué)?,F(xiàn)有PLC實(shí)訓(xùn)室的氣動(dòng)機(jī)械手實(shí)訓(xùn)臺(tái)為藍(lán)本,開發(fā)了其數(shù)字孿生虛擬仿真實(shí)訓(xùn)資源,用于學(xué)生PLC程序設(shè)計(jì)實(shí)訓(xùn)的拓展訓(xùn)練資源。經(jīng)測試,該系統(tǒng)能很好地用于學(xué)生實(shí)訓(xùn),提高學(xué)生程序設(shè)計(jì)能力。
1"系統(tǒng)介紹
本虛擬仿真實(shí)訓(xùn)系統(tǒng)是基于Unity 3D按照PLC實(shí)訓(xùn)室的氣動(dòng)機(jī)械手實(shí)訓(xùn)平臺(tái)1∶1開發(fā)的數(shù)字孿生虛擬仿真實(shí)訓(xùn)平臺(tái),可替代電氣控制系統(tǒng)的被控對象,和實(shí)際被控對象具有相同電氣響應(yīng)特性。該系統(tǒng)包括一臺(tái)氣動(dòng)機(jī)械手、各類工控按鈕和指示燈等,界面如圖1所示,能夠滿足學(xué)生學(xué)習(xí)“現(xiàn)代電氣控制技術(shù)”課程的各類基礎(chǔ)編程訓(xùn)練。
1.1"虛擬仿真實(shí)訓(xùn)系統(tǒng)的參數(shù)配置
本虛擬仿真實(shí)訓(xùn)系統(tǒng)實(shí)現(xiàn)了被控系統(tǒng)的虛擬化,能夠被PLC等控制系統(tǒng)控制。軟件設(shè)置了相應(yīng)的參數(shù)配置窗口,包括工控按鈕和工控指示燈的IO地址、氣動(dòng)機(jī)械手的各傳感器、控制電磁閥的IO地址以及控制系統(tǒng)的IP地址等。用戶點(diǎn)擊下方藍(lán)色的三角箭頭,會(huì)彈出各類手動(dòng)控制按鈕及配置按鈕,點(diǎn)擊配置按鈕即會(huì)彈出各IO地址的配置對話框如圖2所示,用戶可根據(jù)提示輸入傳感器及控制器的IO地址等信息,此信息需要和PLC程序中使用的地址相對應(yīng),若用戶需要虛實(shí)結(jié)合調(diào)試或?qū)崿F(xiàn)和實(shí)際被控對象構(gòu)成數(shù)字孿生系統(tǒng),則虛擬仿真系統(tǒng)和真實(shí)系統(tǒng)的配置必須一致,同時(shí)需要注意的是,由于按鈕等輸入裝置,在實(shí)際設(shè)備中是連接的PLC輸入端口,該端口為只讀,在軟件中無法控制,因此虛擬設(shè)備中的按鈕不能設(shè)置為輸入端口,需要使用中間繼電器作為虛擬設(shè)備中按鈕和傳感的地址,因此在編寫PLC程序時(shí),需要對IO地址利用中間繼電器進(jìn)行中轉(zhuǎn)。
1.2"虛擬仿真實(shí)訓(xùn)系統(tǒng)的實(shí)訓(xùn)方法
本虛擬仿真實(shí)訓(xùn)系統(tǒng)可以配合西門子、三菱等廠家的虛擬PLC實(shí)現(xiàn)純虛擬編程實(shí)訓(xùn),也可以配合真實(shí)PLC,以本軟件為被控對象實(shí)現(xiàn)編程實(shí)訓(xùn),提高學(xué)生的PLC程序編制能力。在此分別以西門子虛擬PLC(PLCSIM ADV)和真實(shí)PLC為例介紹其實(shí)訓(xùn)方法。
1.2.1"配合西門子虛擬PLC(PLCSIM ADV)實(shí)現(xiàn)程序的調(diào)試
傳統(tǒng)的PLC編程實(shí)訓(xùn),一般使用的是真實(shí)的PLC和真實(shí)的被控對象,通過PLC編程軟件編制梯形圖等程序,下載到PLC中實(shí)現(xiàn)對被控對象的控制,觀察其響應(yīng)是否符合預(yù)期,從而判斷程序的正確性。本文所開發(fā)的虛擬仿真實(shí)訓(xùn)系統(tǒng)就是為了替代真實(shí)的被控對象,用戶只需要電腦就可以實(shí)現(xiàn)PLC編程實(shí)訓(xùn),其實(shí)訓(xùn)整體架構(gòu)如圖3所示。
西門子PLC的編程軟件一般采用博途(TIA),為了實(shí)現(xiàn)虛擬調(diào)試,還需要使用西門子虛擬PLC軟件(PLCSIM ADV),該軟件可以實(shí)現(xiàn)PLC的所有功能,通過相應(yīng)的協(xié)議能和外部設(shè)備進(jìn)行通信,而本文所開發(fā)的虛擬仿真實(shí)訓(xùn)系統(tǒng),通過以太網(wǎng)與虛擬PLC進(jìn)行交互,從而實(shí)現(xiàn)相應(yīng)的控制。
用戶在虛擬仿真實(shí)訓(xùn)系統(tǒng)中設(shè)置好虛擬PLC的IP地址,根據(jù)任務(wù)規(guī)劃好各傳感器、控制閥等輸入輸出點(diǎn)的地址,此地址信息必須和梯形圖中應(yīng)用的地址一致(設(shè)置方法與真實(shí)設(shè)備編程流程和方法一致)。根據(jù)任務(wù)要求在TIA中進(jìn)行PLC梯形圖的編制,完成程序編制后,將PLC程序下載到虛擬PLC中,啟動(dòng)虛擬PLC的運(yùn)行,虛擬仿真實(shí)訓(xùn)系統(tǒng)通過以太網(wǎng)和虛擬PLC進(jìn)行通信,獲取相應(yīng)的控制信息,驅(qū)動(dòng)虛擬模型進(jìn)行相應(yīng)的動(dòng)作,同時(shí)對虛擬模型的操作信息,也通過網(wǎng)絡(luò)反饋到虛擬PLC,從而根據(jù)編制的程序做出相應(yīng)的反應(yīng)。
1.2.2"配合真實(shí)PLC實(shí)現(xiàn)程序的調(diào)試
為了能更接近真實(shí)設(shè)備的調(diào)試效果,除了使用純虛擬的仿真實(shí)訓(xùn)外,學(xué)生還可以采用虛實(shí)結(jié)合的方式進(jìn)行實(shí)訓(xùn),即被控對象采用本文所述的虛擬仿真實(shí)訓(xùn)系統(tǒng),而PLC采用真實(shí)的PLC,通過TIA軟件編寫梯形圖程序,直接下載到真實(shí)PLC中,使梯形圖程序在真實(shí)環(huán)境中執(zhí)行,相應(yīng)的控制指令通過網(wǎng)絡(luò)和虛擬仿真實(shí)訓(xùn)系統(tǒng)進(jìn)行交互,從而對編寫的梯形圖的正確性進(jìn)行測試。其架構(gòu)如圖4所示。
采用本方法,運(yùn)行環(huán)境為真實(shí)設(shè)備,能清楚掌握真實(shí)PLC運(yùn)行時(shí)的狀態(tài),更加明確真實(shí)PLC與各類被控對象的網(wǎng)絡(luò)連接,但是此方案也因此限制了實(shí)訓(xùn)的地點(diǎn)并提高了設(shè)備的投入。
2"虛擬仿真實(shí)訓(xùn)系統(tǒng)的開發(fā)
本虛擬仿真實(shí)訓(xùn)系統(tǒng)的主要目的是實(shí)現(xiàn)一個(gè)能替代被控對象的虛擬設(shè)備,通過此設(shè)備解決傳統(tǒng)PLC編程課程的教學(xué)和實(shí)訓(xùn)中對硬件設(shè)備的依賴,解決相關(guān)課程實(shí)訓(xùn)設(shè)備投入高、占地面積大、學(xué)生實(shí)訓(xùn)不便的問題。
2.1"設(shè)計(jì)開發(fā)步驟
虛擬仿真實(shí)訓(xùn)系統(tǒng)的設(shè)計(jì)一般包括以下基本的步驟。
第一步是根據(jù)專業(yè)實(shí)訓(xùn)課程體系,相關(guān)專業(yè)授課教師討論在實(shí)訓(xùn)教學(xué)過程中存在的高投入、高損耗、高風(fēng)險(xiǎn)問題,分析確定哪些實(shí)訓(xùn)課程對應(yīng)的問題可利用虛擬仿真技術(shù)解決,進(jìn)而討論確定需要開發(fā)的虛擬仿真實(shí)訓(xùn)項(xiàng)目。
第二步是在前期確定開發(fā)的實(shí)訓(xùn)項(xiàng)目基礎(chǔ)上,開發(fā)團(tuán)隊(duì)進(jìn)一步討論該項(xiàng)目可以采用哪些技術(shù),模擬什么樣的具體場景或設(shè)備,需要應(yīng)用什么樣的虛擬仿真設(shè)備來支持,比如是使用計(jì)算機(jī)軟件還是VR軟件,需要根據(jù)不同項(xiàng)目的特點(diǎn)選擇不同的載體,比如:各類拆裝類實(shí)訓(xùn),選擇沉浸式操作體驗(yàn)的VR軟件較好,而對于一些編程訓(xùn)練類的實(shí)訓(xùn)則采用計(jì)算機(jī)類軟件較好。
第三步是根據(jù)需求,針對某一特定的實(shí)訓(xùn)設(shè)備進(jìn)行軟件開發(fā)。首先根據(jù)特定設(shè)備進(jìn)行1∶1建模,導(dǎo)入3D開發(fā)引擎,構(gòu)建模型中各部分的父子關(guān)系,添加燈光、紋理、合適的場景等效果,使軟件環(huán)境更加具有科技感和真實(shí)感,提高學(xué)生實(shí)訓(xùn)的興趣。然后,根據(jù)設(shè)備的運(yùn)動(dòng)和電氣特性,利用腳本實(shí)現(xiàn)相應(yīng)的功能,使虛擬仿真設(shè)備在接收到控制器的控制信息后,能做出和真實(shí)設(shè)備相同的響應(yīng)。同時(shí),虛擬仿真設(shè)備還應(yīng)能記錄用戶實(shí)訓(xùn)過程中存在的問題,向虛擬仿真實(shí)訓(xùn)共享管理平臺(tái)進(jìn)行反饋,以便教師能獲知學(xué)生在實(shí)訓(xùn)過程的信息統(tǒng)計(jì)數(shù)據(jù),在后續(xù)的教學(xué)中加以改進(jìn)或強(qiáng)調(diào),從而提升教學(xué)效果。
2.2"開發(fā)過程
由于本虛擬仿真實(shí)訓(xùn)系統(tǒng)針對機(jī)電設(shè)備使用PLC控制的電氣響應(yīng),模型主要為各類機(jī)械結(jié)構(gòu)。因此,系統(tǒng)的模型主要采用SIEMENS UG NX、SolidWorks等三維建模軟件完成模型的構(gòu)建,這些三維軟件的文件格式無法直接導(dǎo)入U(xiǎn)nity 3D軟件使用,因此將設(shè)計(jì)的三維模型文件轉(zhuǎn)成STL文件格式,導(dǎo)入3DMAX軟件,做好貼圖和渲染、調(diào)整好各模型的坐標(biāo)和單位等參數(shù)后,導(dǎo)出為Fbx格式,再導(dǎo)入U(xiǎn)nity 3D編輯器,創(chuàng)建燈光及場景效果,設(shè)置父子關(guān)系等。模型的電氣響應(yīng)需要根據(jù)真實(shí)設(shè)備的功能需求利用C#語言編寫腳本程序來進(jìn)行控制,以實(shí)現(xiàn)虛擬設(shè)備、控制器(虛擬PLC或真實(shí)PLC)和用戶之間的交互。設(shè)備和控制器之間采用網(wǎng)絡(luò)通信實(shí)現(xiàn)數(shù)據(jù)交換。
在建立設(shè)備的模型時(shí),開發(fā)人員要根據(jù)實(shí)際設(shè)備的尺寸1∶1建模,才能確保模型尺寸結(jié)構(gòu)協(xié)調(diào),符合用戶習(xí)慣,特別是一些傳感器的狀態(tài)指示不能遺漏,否則會(huì)導(dǎo)致和實(shí)際設(shè)備操作時(shí)的響應(yīng)不一致。同時(shí),還要對模型進(jìn)行貼圖和渲染,以增加虛擬設(shè)備的真實(shí)感。另外,從SolidWorks或UG NX等軟件中導(dǎo)入模型時(shí),需要設(shè)置模型尺寸的單位和縮放比例,以便和Unity 3D中的單位相協(xié)調(diào),不至于在Unity 3D中顯得模型過大或過小。
在設(shè)計(jì)軟件時(shí),為了方便用戶使用和讓新用戶熟悉設(shè)備的運(yùn)動(dòng)模式,開發(fā)人員可設(shè)計(jì)手動(dòng)控制和聯(lián)機(jī)控制模式,讓用戶可以利用按鈕手動(dòng)控制模型各部分的運(yùn)動(dòng),快速了解設(shè)備的功能;同時(shí),需要考慮不同品牌PLC的通信模式,應(yīng)用軟件開發(fā)中的單例模式和工廠模式實(shí)現(xiàn)通信和控制2個(gè)部分內(nèi)容的解偶,在不對源代碼進(jìn)行修改的前提下實(shí)現(xiàn)對功能和通信模式的擴(kuò)展,避免對現(xiàn)有代碼修改而引入新的錯(cuò)誤,符合軟件開發(fā)中實(shí)現(xiàn)對修改封閉對擴(kuò)展開放的原則。
由于在編寫C#語言腳本控制模型運(yùn)動(dòng)時(shí),需要按照PLC梯形圖的邏輯來處理,而不能只是根據(jù)計(jì)算機(jī)程序控制模型運(yùn)動(dòng)。因此,編寫腳本的人員最好具有PLC程序設(shè)計(jì)的經(jīng)驗(yàn),能更好地理解模型的運(yùn)動(dòng)模式和需求。
2.3"開發(fā)實(shí)例
本實(shí)例以學(xué)校現(xiàn)有的PLC基礎(chǔ)實(shí)訓(xùn)室氣動(dòng)機(jī)械手實(shí)訓(xùn)平臺(tái)為例進(jìn)行開發(fā)介紹。氣動(dòng)機(jī)械手教學(xué)實(shí)訓(xùn)平臺(tái)主要用于“現(xiàn)代電氣控制技術(shù)”課程的PLC編程實(shí)訓(xùn),包括可編程邏輯控制器PLC、工控按鈕、指示燈和一臺(tái)氣動(dòng)機(jī)械手,機(jī)械手上安裝了吸盤,可實(shí)現(xiàn)平面物體的搬運(yùn)。利用此平臺(tái)可實(shí)現(xiàn)課程中的各類基礎(chǔ)控制實(shí)訓(xùn)。經(jīng)與相關(guān)專業(yè)教師交流討論,此實(shí)訓(xùn)設(shè)備投入高、場地占用大,在教室中布置設(shè)備臺(tái)套數(shù)有限。學(xué)生實(shí)訓(xùn)需要花費(fèi)較長時(shí)間才能達(dá)到教學(xué)目標(biāo),而實(shí)訓(xùn)室工位數(shù)量有限,不能滿足所有學(xué)生隨時(shí)隨地大量實(shí)訓(xùn)的需求。因此,將此實(shí)訓(xùn)室的氣動(dòng)機(jī)械手實(shí)訓(xùn)平臺(tái)虛擬化,讓學(xué)生進(jìn)行虛擬實(shí)訓(xùn)具有迫切的需求。
經(jīng)軟件開發(fā)團(tuán)隊(duì)對此設(shè)備進(jìn)行研究以及和相關(guān)老師進(jìn)行討論,此設(shè)備在實(shí)訓(xùn)中主要用于學(xué)生編寫的PLC程序進(jìn)行驗(yàn)證,確認(rèn)被控對象運(yùn)動(dòng)狀態(tài)是否符合預(yù)期,以判斷PLC程序的正確性,因此主要功能是模擬設(shè)備在接收到PLC的控制信號(hào)后的響應(yīng)和將響應(yīng)反饋給PLC。由于PLC程序采用SIEMENS TIA軟件在計(jì)算機(jī)上進(jìn)行編制,全程需要使用計(jì)算機(jī),因此為了方便后期使用,本虛擬仿真實(shí)訓(xùn)軟件設(shè)計(jì)為計(jì)算機(jī)版本,而不需要使用VR版本。此設(shè)備主要?jiǎng)幼鳛闄C(jī)械手的移動(dòng)和旋轉(zhuǎn)運(yùn)動(dòng)。設(shè)備包括按鈕和工控指示燈,使用Unity 3D進(jìn)行開發(fā)較容易實(shí)現(xiàn),而且也很容易通過TCP同PLC進(jìn)行通信。PLC可以采用西門子虛擬PLC(PLCSIM ADV)軟件,也可以使用真實(shí)PLC。此設(shè)備利用以太網(wǎng)即可與虛擬設(shè)備進(jìn)行通信。
本項(xiàng)目根據(jù)現(xiàn)有的氣動(dòng)機(jī)械手實(shí)訓(xùn)平臺(tái)的尺寸,應(yīng)用SolidWorks軟件進(jìn)行1∶1建模,建模時(shí)各運(yùn)動(dòng)部件進(jìn)行單獨(dú)建模,形成裝配體,然后將其導(dǎo)入3DMAX軟件,進(jìn)行渲染貼圖等,使模型看起來更加逼真,調(diào)整好坐標(biāo)系、單位和縮放比例后導(dǎo)出為Fbx,然后將模型導(dǎo)入U(xiǎn)nity 3D中使用。
本項(xiàng)目根據(jù)實(shí)訓(xùn)平臺(tái)中各部件的運(yùn)動(dòng)要求,設(shè)置好各部件的父子關(guān)系,為每一個(gè)部件建立C#腳本控制其運(yùn)動(dòng)。在進(jìn)行腳本開發(fā)的過程中,不需要加入各部件的運(yùn)動(dòng)邏輯,只需要在Update函數(shù)中根據(jù)相應(yīng)的條件(如是否啟動(dòng)運(yùn)動(dòng)和到達(dá)極限等)簡單控制各部件的運(yùn)動(dòng),同時(shí)根據(jù)運(yùn)動(dòng)到極限位置設(shè)置各傳感器的狀態(tài)即可,如當(dāng)某一部件運(yùn)動(dòng)到極限,則對應(yīng)的傳感器變量屬性設(shè)置為真,否則設(shè)置為假。如氣缸向下伸出控制邏輯如圖5所示。
在前一步中各傳感器的狀態(tài)、各部件能否運(yùn)動(dòng)以及按鈕的狀態(tài)變化等數(shù)據(jù)需要和PLC進(jìn)行交互,因此系統(tǒng)和PLC之間需要通過TCP通信來進(jìn)行數(shù)據(jù)交互,可以將此數(shù)據(jù)定義在一個(gè)設(shè)備類中,使用單例模式,確保此設(shè)備類只有一個(gè)實(shí)例,實(shí)時(shí)和PLC通信更新數(shù)據(jù),也確保在任何腳本中都能利用該設(shè)備類訪問到此數(shù)據(jù),而不必在每個(gè)類中都實(shí)例化設(shè)備類和PLC通信,保證軟件的穩(wěn)定性和可靠性。由于PLC的輸入端口只讀,因此在此軟件中涉及傳感器和按鈕等作為輸入的信號(hào)不能在軟件中直接設(shè)置其輸入端口的狀態(tài),利用中間繼電器進(jìn)行對接,而控制信號(hào)是可讀可寫可以直接與輸出端口對接,在軟件中設(shè)置好后通過網(wǎng)絡(luò)傳入PLC。
3"應(yīng)用價(jià)值
本虛擬仿真實(shí)訓(xùn)系統(tǒng)主要用于PLC編程實(shí)訓(xùn),虛擬化了被控對象,方便學(xué)生進(jìn)行實(shí)訓(xùn)。PLC編程技能是機(jī)電一體化技術(shù)專業(yè)的一項(xiàng)非常重要的職業(yè)技能,對學(xué)生未來在工作中進(jìn)行設(shè)備調(diào)試和開發(fā)起著非常重要的作用,學(xué)生進(jìn)行PLC程序編程和調(diào)試需要進(jìn)行大量的訓(xùn)練才能積累足夠的經(jīng)驗(yàn)。然而,傳統(tǒng)的實(shí)訓(xùn)設(shè)施受限于投入和場地限制,學(xué)生只能利用有限的實(shí)訓(xùn)課時(shí)和課余時(shí)間在實(shí)訓(xùn)室進(jìn)行訓(xùn)練,因此實(shí)訓(xùn)效果很難得到保證。將類似的機(jī)電一體化設(shè)備進(jìn)行虛擬化,用于學(xué)生進(jìn)行虛擬實(shí)訓(xùn)或虛實(shí)結(jié)合的實(shí)訓(xùn),打破時(shí)間和空間的限制,大大提高學(xué)生實(shí)訓(xùn)的時(shí)長,學(xué)生通過虛擬實(shí)訓(xùn)后可以選擇在真實(shí)設(shè)備上對編寫的程序進(jìn)行實(shí)際驗(yàn)證,從而提高學(xué)生學(xué)習(xí)效率和學(xué)習(xí)效果。
4"結(jié)語
利用Unity 3D開發(fā)機(jī)電一體化系統(tǒng)虛擬仿真實(shí)訓(xùn)資源,不需要復(fù)雜的控制邏輯,主要考慮對設(shè)備各部件進(jìn)行簡單的運(yùn)動(dòng)控制,機(jī)電一體化技術(shù)專業(yè)的老師和同學(xué)在接受較短時(shí)間的培訓(xùn)學(xué)習(xí)后就能夠勝任軟件的開發(fā)工作,為學(xué)校實(shí)訓(xùn)資源不足帶來了新的解決方案。未來可對師生組建的開發(fā)團(tuán)隊(duì)進(jìn)行培訓(xùn),開發(fā)更為精致的實(shí)訓(xùn)資源,如各線纜、機(jī)械結(jié)構(gòu)的安裝與調(diào)整,實(shí)現(xiàn)與實(shí)際實(shí)訓(xùn)設(shè)備完全一致的物理特性和外觀等操作特性,更好地用于學(xué)生實(shí)訓(xùn)。
參考文獻(xiàn)
[1]陳立.基于Unity 3D和AR技術(shù)的虛擬實(shí)驗(yàn)室系統(tǒng)設(shè)計(jì)和仿真[J].山西財(cái)經(jīng)大學(xué)學(xué)報(bào),2022(增刊1):199-201.
[2]王佩玉,陳振中.一種基于Unity 3D的生產(chǎn)線跨平臺(tái)虛擬調(diào)試系統(tǒng)設(shè)計(jì)方法[J].東華大學(xué)學(xué)報(bào)(自然科學(xué)版),2022(2):69-74,80.
[3]孫國鋒,丁金華.一種數(shù)字孿生背景下的組合秤仿真技術(shù)[J].電子測量技術(shù),2021(12):144-148.
[4]宮瑞哲,饒豐,任楠,等.堆垛機(jī)的數(shù)字孿生系統(tǒng)可視化模型搭建與實(shí)現(xiàn)[J].制造業(yè)自動(dòng)化,2022(4):154-157.
[5]趙永信,度國旭,吳堅(jiān),等.基于TCP的氣動(dòng)手爪MCD模型虛擬調(diào)試的研究[J].機(jī)床與液壓,2022(3):70-72.
[6]蔡文站,田建艷,王書宇,等.基于NX MCD與TIA的機(jī)器人打磨聯(lián)合虛擬調(diào)試研究[J].現(xiàn)代制造工程,2022(7):37-42,120.
[7]嚴(yán)惠,鄧小龍,李志遠(yuǎn).基于數(shù)字孿生的FMS運(yùn)維監(jiān)控系統(tǒng)設(shè)計(jì)與研究[J].制造業(yè)自動(dòng)化,2021(10):122-126.
[8]OUYANG S G,WANG G,YAO J Y,et al.A Unity3D-based interactive three-dimensional virtual practice platform for chemical engineering[J].Computer Applications in Engineering Education,2018(1):91-100.
[9]李能菲,黃瓊,常輝.虛擬仿真在工業(yè)機(jī)器人自動(dòng)生產(chǎn)線工作站教學(xué)中的應(yīng)用[J].無線互聯(lián)科技,2022(7):146-149.
(編輯"王永超)
Unity 3D-based virtual simulation training system design for the“Modern Electrical Control Technology”
WANG "Dong1, LIU "Chunjin2, YANG "Jie3
(1.School of Intelligent Manufacturing, Chongqing Industry amp; Trade Polytechnic, Chongqing 408000, China;
2.College of Engineering and Technology, Southwest University, Chongqing 400715, China;
3.School of Artificial Intelligence, Chongqing Industry amp; Trade Polytechnic, Chongqing 408000, China)
Abstract: Aiming at the problems of high cost and risk in the programmable logic controller (PLC) teaching and training conditions in the course of “Modern Electrical Control Technology”, the study proposes a virtual simulation training system for the course of “Modern Electrical Control Technology” developed by Unity 3D, in order to help electromechanical students learn “Modern Electrical Control Technology” course to carry out PLC ladder programming training. The system can support both the virtual reality and pure virtualization training modes, and also can form a digital twin with the actual training equipment. This paper also describes the virtual simulation training system with the real PLC or virtual PLC programming training method, and its development steps and application of the situation. The practical use shows that it has good application value.
Key words: virtual simulation; PLC; virtual reality integration; digital twin