王敬沖, 王大虎, 劉海洋
(河南理工大學(xué) 電氣工程與自動化學(xué)院,河南 焦作454003)
可編程程序控制器(PLC)已經(jīng)成為高校中自動化、應(yīng)用電子電器、機電一體化等專業(yè)的核心專業(yè)課之一。由于PLC 的工程實踐性較強,實驗教學(xué)在高校PLC 課程中承擔著非常重要的作用,PLC 實驗教學(xué)實際上是學(xué)生將課堂上學(xué)到的理論知識轉(zhuǎn)化為實際控制的動手過程,同時在實驗中培養(yǎng)解決實際問題的能力[1]。
目前PLC 傳統(tǒng)實驗室教學(xué)主要有以下3 種:①學(xué)生在電腦上通過編程軟件編輯好梯形圖程序后,下載到只有硬件的PLC 中運行,然后通過觀察PLC 輸出點指示燈狀態(tài)來判斷程序是否達到控制要求。由于沒有實際的控制對象,學(xué)生只能進行簡單調(diào)試性實驗,沒有實際對象的控制和連接過程。②建立簡單模擬實際的實驗室,學(xué)校根據(jù)本校實際課程安排,選出幾種典型PLC 實驗,如實現(xiàn)人工噴泉、交通燈、電機正反轉(zhuǎn)等典型PLC 實驗的功能。這種簡單實驗教學(xué)方式與實際工程聯(lián)系不夠緊密,沒有形成一個完整的工業(yè)系統(tǒng)。③由各大PLC 公司聯(lián)合高校推出綜合性實驗平臺,它的控制模式多種多樣,各種設(shè)備以及實驗內(nèi)容較為齊全。但這種投入的資金較大,而且在設(shè)備使用中會帶來材料的損耗,設(shè)備的維護較為復(fù)雜[2]。
針對上述PLC 傳統(tǒng)實驗室教學(xué)存在的問題,本文設(shè)計了基于Quest3D 的PLC 配料虛擬培訓(xùn)系統(tǒng)。系統(tǒng)提出基于虛擬傳感器(與PLC 之間的反饋輸入)和虛擬執(zhí)行器(用于操作和控制設(shè)備)的虛擬設(shè)備,通過三維場景建立、三維動畫驅(qū)動、通信接口設(shè)計等技術(shù),可以提供學(xué)員沉浸感較強的虛擬配料PLC 培訓(xùn)系統(tǒng),讓學(xué)員能夠近似真實地處理各種類型的設(shè)備[3-4]。
針對PLC 教學(xué)實驗的特點,系統(tǒng)在PLC 程序運行后,需要實時地驗證各種虛擬設(shè)備的動作,用虛擬現(xiàn)實這種沉浸感的方式顯示整個控制過程。該系統(tǒng)由軟件和硬件兩部分組成[5]。
軟件平臺解決的是模擬實際設(shè)備工作時的真實場景,配料系統(tǒng)的生產(chǎn)流程是根據(jù)性能要求和工藝要求,結(jié)合原料的具體情況,制定合理的配料方案,將各種原料按照一定的比例,經(jīng)由各自的虛擬稱量傳感器精確稱量,通過螺旋輸送機送至混合機,與一定量的水混合均勻后形成混合物,再送到工作面的過程[6]。Quest3D是虛擬配料培訓(xùn)系統(tǒng)的軟件開發(fā)平臺,它是一個高效的實時3D 建構(gòu)工具,另外由于提供底層成熟的DirectX 引擎,Quest3D VR Edition 版本允許使用者與外部硬件連接,可以用來跟蹤動作和模擬外部運動,用Quest3D 建立上述生產(chǎn)流程可以實現(xiàn)沉浸感較強的三維場景。圖1 為設(shè)計總體框圖,它由配料控制系統(tǒng)、立體虛擬顯示系統(tǒng)、通信接口模塊三部分組成。PLC 輸出的控制信號經(jīng)通信模塊處理后控制配料系統(tǒng)的虛擬執(zhí)行機構(gòu)和各個設(shè)備的開關(guān),配料系統(tǒng)運行過程中,Quest3D 中虛擬稱重傳感器的檢測信號經(jīng)通信模塊輸?shù)絇LC 系統(tǒng),實現(xiàn)整個系統(tǒng)的閉環(huán)。
硬件平臺中選用的PLC 型號是三菱FX2N32MR繼電器型可編程控制器,硬件設(shè)計最重要的部分是通信模塊它是PLC 控制系統(tǒng)與虛擬配料系統(tǒng)通信的橋梁,圖2 是通信模塊內(nèi)部結(jié)構(gòu)圖,圖中PLC 控制輸出的信號輸入到單片機系統(tǒng)中,經(jīng)單片機處理后送到PC機的虛擬配料系統(tǒng),控制配料系統(tǒng)的運行[7]。配料系統(tǒng)的虛擬傳感器信號通過通信接口模塊輸送到單片機,經(jīng)單片機處理后輸?shù)絇LC 輸入端,供PLC 檢測狀態(tài),實現(xiàn)PLC 對虛擬配料系統(tǒng)的閉環(huán)控制。
圖1 總體設(shè)計框圖
圖2 通信接口
三維模型的建立是虛擬配料系統(tǒng)的基礎(chǔ),根據(jù)現(xiàn)場拍攝配料系統(tǒng)的圖片,用三維建模軟件3DMAX 繪制出各個設(shè)備的模型[8],如螺旋輸送機、氣動閥門、稱重傳感器、混合倉等,場景設(shè)備的尺寸需與真實情況相一致,單位合理,另外建立模型的時候要注意削減多余的點和重復(fù)的面數(shù),減少不必要的面有助于減輕硬件負擔,提高渲染的速度。模型制作完成后,為增加場景的真實性為每個設(shè)備制作了二維貼圖,如圖3 所示為虛擬稱重傳感器和虛擬氣動閥門。
圖3 設(shè)備模型
在三維場景建立前,需要對實際配料生產(chǎn)工藝進行分析,首先檢查各個閥門狀態(tài)是否都關(guān)閉,在確認各閥門是關(guān)閉的狀態(tài)后由螺旋輸送機將主料、添加劑、粉煤灰送往稱重料倉,料倉里的料不斷增加直到達到所要求的重量后螺旋輸送機關(guān)閉,打開各秤斗料倉氣動閥門將稱好的料送往混合倉混合,混合一定時間,同時水泵啟動稱量待水的重量到達設(shè)定值后,打開水倉閥門和混合倉閥門一同送往攪拌倉,在攪拌機里進行一定時間攪拌,在攪拌機運行了一定的時間后,打開攪拌倉閥門進行卸料,完成一個循環(huán)。配料系統(tǒng)主控制流程圖如圖4 所示。
圖4 控制流程圖
系統(tǒng)包括的數(shù)據(jù)種類有數(shù)字量和模擬量兩種,PLC 模擬量輸入包括各虛擬傳感器的反饋值(包括主料、添加劑、粉煤灰、以及水的重量),數(shù)字量輸入有系統(tǒng)的啟動、停止按鈕、各個閥門的狀態(tài)。PLC 的數(shù)字量輸出有:各種執(zhí)行器(攪拌機、添加劑螺旋輸送機、主料螺旋輸送機、粉煤灰螺旋輸送機、水泵、各氣動閥門的開關(guān),出料泵)。
虛擬配料系統(tǒng)的模擬量輸入[9]如表1 所示。虛擬配料系統(tǒng)的數(shù)字量輸入/輸出如表2 所示。
表1 虛擬配料系統(tǒng)模擬量輸入表
由于選用的三菱PLC 是繼電器類型,將PLC 的輸出端與單片機的I/O 口相連接,PLC 的輸出會改變單片機I/0 的狀態(tài),通過單片機循環(huán)檢測端口高低電平的狀態(tài),往緩沖區(qū)發(fā)送不同的數(shù)據(jù),單片機通過串口通信將數(shù)據(jù)送往PC 機,Quest3D 對接收到緩沖區(qū)發(fā)來的不同數(shù)據(jù)進行判定后,進行相關(guān)三維設(shè)備模型的動作。隨著物料的增加,在Quest3D 中通過程序使虛擬傳感器的值也不斷循環(huán)增加,直到達到設(shè)定值時將信號通過串口發(fā)往單片機,經(jīng)過單片機處理后外接繼電器送往PLC 的輸入端,進行PLC 程序的處理。圖5 是Quest3D 的串口通信的控制邏輯,從圖中可以看出,Quest3D 中串口的接收與發(fā)送數(shù)據(jù),主要是通過Quest3D 中的通道“Serial Port”和通道“Serial Command”來實現(xiàn)的。通道“Serial Port”可以設(shè)置串口號、波特率、奇偶校驗位、數(shù)據(jù)位以及停止位,設(shè)置好參數(shù)以后可以與接口模塊的單片機進行通信[10]。串口通道“Serial Command”可以控制打開、關(guān)閉串口等。
表2 虛擬配料系統(tǒng)數(shù)字量輸入/輸出表
圖5 串口通信
Quest3D 的粒子系統(tǒng)可以模擬水流以及料的運動,粒子物體相當于一個特殊的3D 物體,通過Surface通道下的材質(zhì)以及貼圖可以定義粒子的外觀,雙擊粒子ParticleObject 通道可以調(diào)節(jié)粒子的各種屬性,而ObjecDate 通道相當于粒子發(fā)射器,經(jīng)判斷單片機緩沖區(qū)傳過來數(shù)據(jù),通過在物體數(shù)據(jù)的頂點上循環(huán)發(fā)射粒子來形成水以及料的運動效果。在3DMAX 中將三維設(shè)備模型導(dǎo)出。CGR 格式后,將Quest3D 加載該模型后中,在窗口程序編寫中會顯示加載物體的各個屬性如貼圖、位置信息等,為了盡可能使虛擬系統(tǒng)達到實際配料生產(chǎn)的效果,三維模型的建立基于現(xiàn)場實際拍攝的圖片,設(shè)備的擺放也要與實際相一致[11-13]。若串口有數(shù)據(jù)傳輸上來,根據(jù)串口的數(shù)據(jù)在位置信息處進行相應(yīng)移動、旋轉(zhuǎn)等動作,圖6 是攪拌機攪拌的控制邏輯。
圖6 攪拌機旋轉(zhuǎn)控制邏輯
本文開發(fā)的基于PLC 的虛擬配料系統(tǒng)為學(xué)生提供了直觀、貼近于實際工程的操作平臺,采用虛擬現(xiàn)實技術(shù)創(chuàng)建設(shè)備的三維場景,應(yīng)用接口技術(shù)使設(shè)備產(chǎn)生反饋數(shù)據(jù),輸入到PLC 進行處理,有效提高學(xué)生實踐能力。圖7 是系統(tǒng)測試時的效果圖。
圖7 系統(tǒng)效果圖
通過實際培訓(xùn)效果測試,本文提到的基于Quest3D 的虛擬配料系統(tǒng)實現(xiàn)了通過虛擬傳感器和虛擬執(zhí)行器來進行PLC 學(xué)員培訓(xùn)的過程?;谠撓到y(tǒng)虛擬組件,可以讓學(xué)員操作虛擬的螺旋輸送機、水泵、攪拌機等設(shè)備。同時,該系統(tǒng)提供一個安全性的培訓(xùn)環(huán)境,當學(xué)員程序或者操作失誤時,由于設(shè)備是虛擬的表現(xiàn)方式,可以避免設(shè)備造成損害的擔憂。該虛擬系統(tǒng)對目前PLC 實驗室教學(xué)提供了新的思路,用虛擬現(xiàn)實技術(shù)增加了學(xué)員實際動手能力,解決了實驗室引進昂貴設(shè)備價格的難題,而通過設(shè)備的操作使學(xué)員對工業(yè)控制流程有了更深的理解[14-15]。下一步需要完善的PLC 培訓(xùn)內(nèi)容是加入考試評分系統(tǒng),通過設(shè)置條件讓學(xué)員自行進行程序的編寫與調(diào)試,通過控制效果來判定每個學(xué)員的學(xué)習(xí)情況。
[1] 任思璟,李春華,李忠勤. 基于組態(tài)仿真技術(shù)的紙機實驗系統(tǒng)設(shè)計[J].實驗室研究與探索,2014,33(7):498-100.
[2] 曾 洋. PLC 仿真實驗平臺研究[D]. 杭州:電子科技大學(xué),2010.
[3] Sang C Park ,Chang Mok Park ,Gi-Nam Wang,A PLC programming environment based on a virtual plant[J]. International Journal of Advanced Manufacturing Technology,2008,39 (11):1262-1270.
[4] Yoon Sang Kim,Hak-Man Kim.Design of a New Virtual Interaction Based PLC Training Using Virtual Sensors and Actuators:System and Its Application[J]. International Journal of Distributed Sensor Networks,2013,33(3):1-8.
[5] 曹鈺鈺.虛擬立體車庫實訓(xùn)平臺與PLC 教學(xué)[D]. 上海:上海交通大學(xué),2012.
[6] 王立明.基于PLC 和工控機的混凝土攪拌站測控系統(tǒng)設(shè)計[D].西安:西安建筑科技大學(xué),2006.
[7] 劉宇芳.PLC 綜合實驗系統(tǒng)的計算機仿真開發(fā)[D]. 南京:南京航空航天大學(xué),2008.
[8] 孔國利,張 波,杜保強. 基于虛擬現(xiàn)實技術(shù)的教學(xué)組態(tài)軟件[J].實驗室研究與探索,2010,29(6):45-48.
[9] 史麗萍. 基于PLC 與組態(tài)王的煤礦帶式輸送機控制系統(tǒng)設(shè)計[J].煤礦機械,2012,33(9):244-246.
[10] 王大虎,史艷楠,陳文博.基于Quest3D 的煤礦副井提升機虛擬實操系統(tǒng)的開發(fā)[J].制造業(yè)自動化,2014,36(9):114-117.
[11] 羅陸鋒.基于Open Inventor 的虛擬數(shù)控培訓(xùn)系統(tǒng)開發(fā)[J].計算機工程與設(shè)計,2009,30(19):4556-4559.
[12] 周曉晶,趙正旭.基于數(shù)據(jù)手套的虛擬手勢交互系統(tǒng)[J].儀表技術(shù)與傳感器,2007(10):65-66.
[13] 劉少華.基于Quest3D 的煤礦主扇風(fēng)機虛擬現(xiàn)實的研究[J]. 同煤科技,2012,133(3):1-3.
[14] 白曉旭,陳廣華.基于PC-PLC 的虛擬電梯控制系統(tǒng)設(shè)計[J]. 計算機仿真,2014,31(6):443-446.
[15] 王大虎,李林強,張 彤. 煤礦安全培訓(xùn)三維動畫的研究與應(yīng)用[J].煤礦安全,2011,42(11):158-160.