国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Unity 3D的恒壓供水虛擬實(shí)訓(xùn)教學(xué)裝置開(kāi)發(fā)

2017-09-09 15:41王大虎盧正帥賈倩
軟件導(dǎo)刊 2017年8期
關(guān)鍵詞:工程實(shí)踐三維建模虛擬現(xiàn)實(shí)

王大虎+盧正帥+賈倩

摘 要:針對(duì)高校電氣控制課程實(shí)訓(xùn)平臺(tái)數(shù)量不足、實(shí)訓(xùn)內(nèi)容簡(jiǎn)易匱乏和學(xué)生工程實(shí)踐能力差等問(wèn)題,選擇生活中較為典型的恒壓供水系統(tǒng)作為教學(xué)載體,設(shè)計(jì)了恒壓供水虛擬實(shí)訓(xùn)裝置。系統(tǒng)采用3ds Max建立水泵、壓力傳感器、水池等三維模型,利用Unity 3D開(kāi)發(fā)恒壓供水上位機(jī)虛擬仿真軟件,以PLC、變頻器和繼電器等搭建硬件控制電路作為下位機(jī),上位機(jī)仿真軟件和下位機(jī)硬件控制電路通過(guò)通信接口模塊連接交換數(shù)據(jù),實(shí)現(xiàn)了融合虛擬場(chǎng)景和硬件控制電路的虛擬實(shí)訓(xùn)裝置的開(kāi)發(fā)。結(jié)果表明,虛擬實(shí)訓(xùn)裝置能夠有效降低實(shí)訓(xùn)設(shè)備成本,彌補(bǔ)實(shí)驗(yàn)設(shè)備數(shù)量不足,充實(shí)實(shí)訓(xùn)內(nèi)容,提升學(xué)生工程實(shí)踐能力。

關(guān)鍵詞:恒壓供水;虛擬現(xiàn)實(shí);三維建模;工程實(shí)踐

DOIDOI:10.11907/rjdk.171369

中圖分類號(hào):TP319

文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào)文章編號(hào):1672-7800(2017)008-0100-03

0 引言

恒壓供水系統(tǒng)在自來(lái)水廠、居民生活區(qū)、企業(yè)生產(chǎn)用水和農(nóng)田灌溉系統(tǒng)等方面應(yīng)用廣泛,恒壓供水設(shè)備可靠安全運(yùn)行直接關(guān)系到人民群眾的生命和財(cái)產(chǎn)安全[1]。電氣控制課程專業(yè)實(shí)踐性強(qiáng),實(shí)驗(yàn)教學(xué)在學(xué)生將理論水平轉(zhuǎn)化為動(dòng)手能力過(guò)程中和培養(yǎng)實(shí)際解決問(wèn)題能力方面發(fā)揮了重要作用。因此,將恒壓供水系統(tǒng)列入電氣控制課程實(shí)訓(xùn)內(nèi)容十分必要。

目前電氣控制課程實(shí)驗(yàn)教學(xué)方式主要有以下3種[2]:①學(xué)生通過(guò)計(jì)算機(jī)編寫(xiě)PLC梯形圖控制程序后下載到控制器中觀察輸出點(diǎn)指示燈狀態(tài),判斷程序是否實(shí)現(xiàn)控制目標(biāo),因該方法缺少控制對(duì)象,故只可進(jìn)行簡(jiǎn)單軟件調(diào)試;②高校依據(jù)課程安排選取典型控制對(duì)象如電機(jī)和交通燈等模擬實(shí)際控制系統(tǒng),但與實(shí)際工程相差較遠(yuǎn);③采用大型PLC綜合實(shí)訓(xùn)平臺(tái)能夠模擬多種工業(yè)控制系統(tǒng),但設(shè)備價(jià)格昂貴,設(shè)備損耗嚴(yán)重,大量購(gòu)買(mǎi)設(shè)備并不現(xiàn)實(shí)。胡盤(pán)峰等[3]設(shè)計(jì)的基于PLC的新型變頻恒壓供水系統(tǒng),缺少上位機(jī)組態(tài),人機(jī)交互性差,主要適用對(duì)象為住宅小區(qū),不適用于學(xué)生實(shí)訓(xùn)。居榮等[4]開(kāi)發(fā)的基于實(shí)際應(yīng)用的恒壓供水實(shí)驗(yàn)裝置,僅有缺少樓層模擬,與實(shí)際工程應(yīng)用差距較大。張學(xué)輝等[5]的開(kāi)發(fā)基于PLC及變頻器的恒壓供水實(shí)訓(xùn)系統(tǒng),系統(tǒng)結(jié)構(gòu)復(fù)雜且可擴(kuò)展性差。

針對(duì)上述問(wèn)題,本文設(shè)計(jì)了基于Unity 3D的恒壓供水系統(tǒng)虛擬實(shí)訓(xùn)裝置。系統(tǒng)采用3ds Max創(chuàng)建虛擬實(shí)驗(yàn)場(chǎng)景、虛擬傳感器和虛擬水泵等設(shè)備三維模型,以Unity 3D為模型引擎開(kāi)發(fā)上位機(jī)虛擬仿真軟件,下位機(jī)采用PLC和變頻器等設(shè)備組成硬件控制電路,上位機(jī)虛擬仿真軟件和下位機(jī)硬件控制電路通過(guò)通信接口模塊交換數(shù)據(jù),具有操作簡(jiǎn)便、成本低、擴(kuò)展性好等優(yōu)點(diǎn)。

1 虛擬恒壓供水系統(tǒng)總體設(shè)計(jì)

針對(duì)電氣控制課程實(shí)驗(yàn)教學(xué)特點(diǎn),系統(tǒng)主要應(yīng)用于電氣控制課程實(shí)驗(yàn)教學(xué),在PLC程序運(yùn)行時(shí)需要實(shí)時(shí)通過(guò)虛擬場(chǎng)景驗(yàn)證控制器的輸出信號(hào),同時(shí)也需要將虛擬傳感器的狀態(tài)傳給控制器,通過(guò)虛實(shí)結(jié)合的方式來(lái)再現(xiàn)整個(gè)控制過(guò)程。系統(tǒng)總體框圖如圖1所示,系統(tǒng)由仿真軟件、接口模塊和硬件電路三部分構(gòu)成。硬件電路輸出的各種控制信號(hào),經(jīng)過(guò)接口電路處理后送給仿真軟件,實(shí)現(xiàn)對(duì)虛擬場(chǎng)景中虛擬開(kāi)關(guān)和執(zhí)行機(jī)構(gòu)的控制,虛擬傳感器的檢測(cè)信號(hào)經(jīng)過(guò)接口模塊送給控制電路,實(shí)現(xiàn)壓力控制的閉環(huán)。

仿真軟件主要用來(lái)模擬恒壓供水系統(tǒng)實(shí)際工作現(xiàn)場(chǎng),根據(jù)工藝要求和性能要求,壓力傳感器采集壓力信號(hào)由A/D轉(zhuǎn)換模塊將設(shè)定值與采集值比較,PID根據(jù)變頻器參數(shù)進(jìn)行數(shù)據(jù)處理,處理結(jié)果以頻率形式輸出以此控制水泵工變頻運(yùn)行,實(shí)現(xiàn)管網(wǎng)壓力穩(wěn)定的目標(biāo)[1,6-7]。Unity 3D是虛擬恒壓供水系統(tǒng)仿真軟件的開(kāi)發(fā)工具,可視化編程界面,腳本編輯高效,支持多種編程語(yǔ)言,可以用來(lái)控制虛擬三維設(shè)備模型動(dòng)作和模擬真實(shí)控制效果,再現(xiàn)恒壓供水現(xiàn)場(chǎng)控制過(guò)程。

硬件部分包括接口模塊和控制電路,控制電路包括操作平臺(tái)和交互設(shè)備,交互設(shè)備包括鍵盤(pán)和鼠標(biāo),用來(lái)控制虛擬場(chǎng)景和視角??刂齐娐分饕蒔LC、開(kāi)關(guān)電源、繼電器和變頻器等設(shè)備組成,接口模塊來(lái)以單片機(jī)和繼電器為核心實(shí)現(xiàn)電平轉(zhuǎn)換和電壓線性轉(zhuǎn)換來(lái)進(jìn)行數(shù)據(jù)交換。

2 仿真軟件

2.1 模型創(chuàng)建

建模是虛擬仿真軟件開(kāi)發(fā)的基礎(chǔ),模型質(zhì)量好壞決定了仿真軟件水平高低[8]。根據(jù)在現(xiàn)場(chǎng)拍攝的恒壓供水系統(tǒng)照片及網(wǎng)上搜集的相關(guān)資料,采用3ds Max創(chuàng)建恒壓供水裝置的三維模型及場(chǎng)景模型,如樓房、水箱、水泵、壓力傳感器等。建模時(shí)需要保證虛擬場(chǎng)景和真實(shí)場(chǎng)景相同,虛擬物體在場(chǎng)景中的擺放位置也應(yīng)與真實(shí)物體在現(xiàn)實(shí)世界中的擺放位置保持一致,在創(chuàng)建三維模型時(shí)為了減少軟件占用內(nèi)存空間,使軟件運(yùn)行更為流暢,需要?jiǎng)h除模型的面數(shù)和分段數(shù)。為了讓模型細(xì)節(jié)更加逼真,需要為模型添加貼圖。通常情況下設(shè)置圖片大小為512×512,格式為png。虛擬場(chǎng)景中管道模型材質(zhì)為不銹鋼,具有反射特性,因此需要為其添加反射貼圖,提高光澤度,降低高光級(jí)別,實(shí)現(xiàn)更逼真的效果。模型創(chuàng)建完成后,為保證模型比例一致,需要通過(guò)3ds Max將模型導(dǎo)出為.FBX格式文件。圖2為恒壓供水系統(tǒng)實(shí)物與三維線框模型對(duì)比。

2.2 數(shù)據(jù)交換

數(shù)據(jù)交換是虛擬交互基礎(chǔ),通過(guò)C#命名空間System.IO.Ports中SerialPort類實(shí)現(xiàn)[9]。關(guān)鍵通信程序如下:

void Start()

{

SP = new SerialPort("COM3", 9600, Parity.None, 8, StopBits.One);

SP.Open();

_thPort = new Thread(RecData);

_thPort.Start();

}

首先在Start函數(shù)內(nèi)實(shí)例化一個(gè)SerialPort類SP串口,初始化參數(shù)包括串口號(hào)、波特率、校驗(yàn)位、數(shù)據(jù)位和停止位,該參數(shù)應(yīng)與接口模塊串口參數(shù)一致。然后打開(kāi)串口,利用Thread函數(shù)開(kāi)啟一個(gè)RecData線程,用來(lái)接收數(shù)據(jù)幀。最后在FixedUpdat函數(shù)中調(diào)用。RecData程序如下:endprint

private void RecData()

{ try

{ Byte[] buf = new Byte[1];

if (SP.IsOpen) SP.Read(buf, 0, 1);

if (buf.Length == 0)

return;//如果沒(méi)有數(shù)據(jù),直接返回;

else

UserData = buf[0]; //接收一位數(shù)據(jù)

}

catch (Exception ex)

{

Debug.Log(ex);

}

}

在RecData線程內(nèi),使用SP串口的Read函數(shù)循環(huán)讀取接收緩沖區(qū)數(shù)據(jù),并將結(jié)果返回給數(shù)組buf。根據(jù)buf的長(zhǎng)度判斷是否讀取到數(shù)據(jù),如果數(shù)組長(zhǎng)度為0則直接返回,否則將數(shù)據(jù)賦給UserData。軟件根據(jù)UserData的不同數(shù)值,執(zhí)行視角切換、水泵啟停、位置轉(zhuǎn)換等操作。

2.3 模型驅(qū)動(dòng)

將創(chuàng)建好的三維模型導(dǎo)入U(xiǎn)nity 3D,同時(shí)為模型添加粒子特效模擬水流效果,設(shè)定粒子碰撞和粒子渲染參數(shù)。為了讓模擬場(chǎng)景水泵運(yùn)行聲音,需要在場(chǎng)景中添加音源組件Audio Source和聲音監(jiān)聽(tīng)組件Audio Listener,并添加到對(duì)象物體上,通過(guò)腳本控制水泵運(yùn)行聲音的有無(wú)。采用鍵盤(pán)和鼠標(biāo)來(lái)控制Cam行走、轉(zhuǎn)向、仰視和俯視等動(dòng)作,通過(guò)RoleControl腳本實(shí)現(xiàn)角色控制,實(shí)現(xiàn)仰視和俯視角度的控制,Clamp和Euler兩個(gè)函數(shù)實(shí)現(xiàn):Mathf.Clamp(headAngleY, downLimit, upLimit);Head.transform.localRotation = Quaternion.Euler(headAngleY, 0, 0)。函數(shù)中參數(shù)headAngleY表示相機(jī)當(dāng)前沿Y軸方向的傾斜角度,downLimit和upLimit分別表示俯視和仰視的最大角度[10]。Clamp函數(shù)將返回一個(gè)位于downLimit和upLimit之間的值。當(dāng)headAngleY小于downLimit時(shí),返回downLimit,當(dāng)headAngleY大于upLimit時(shí),返回upLimit,否則返回headAngleY。從而避免出現(xiàn)俯視和仰視角度過(guò)大與現(xiàn)實(shí)不符的情況。Quaternion.Euler(headAngleY, 0, 0)表示繞X軸旋轉(zhuǎn)headAngleY度,即限制角色只在YZ平面仰視和俯視,以免出現(xiàn)左右傾斜的現(xiàn)象。

3 硬件電路

3.1 接口模塊

接口模塊采用STC12C5A60S2型號(hào)的單片機(jī)作為數(shù)據(jù)處理核心,包括電源電路、時(shí)鐘電路、復(fù)位電路和輸入輸出接口等[11]。電源電路用于將AC220V轉(zhuǎn)化為DC5V為單片機(jī)各部分供電,時(shí)鐘電路用于控制單片機(jī),各部分電路嚴(yán)格按照時(shí)序進(jìn)行工作,通過(guò)外部按鍵在單片機(jī)RST端產(chǎn)生高電平恢復(fù)各寄存器默認(rèn)狀態(tài),輸入輸出電路則通過(guò)循環(huán)掃描端口的方式,接收外部經(jīng)過(guò)4N35光電隔離器的輸入信號(hào)。

3.2 控制電路

恒壓供水系統(tǒng)的目標(biāo)是將供水管網(wǎng)壓力通過(guò)傳感器送給控制器,由變頻器A/D轉(zhuǎn)換模塊將模擬量轉(zhuǎn)化為數(shù)字量,壓力設(shè)定值和采集值兩個(gè)數(shù)據(jù)同時(shí)經(jīng)過(guò)PID控制模塊進(jìn)行數(shù)據(jù)處理,并將結(jié)果以運(yùn)行頻率的形式進(jìn)行輸出。PID控制模塊具有比較和差分的功能,當(dāng)供水壓力低于設(shè)定壓力時(shí),運(yùn)行頻率升高,反之則降低,同時(shí)也可根據(jù)壓力變化快慢進(jìn)行差分調(diào)節(jié)[12-14]??刂齐娐酚蒔LC、變頻器和觸摸屏等組成,PLC采用的是西門(mén)子S7-200系列,虛擬傳感器采集的壓力流量值通過(guò)接口模塊送給PLC,然后PLC經(jīng)過(guò)PID運(yùn)算后輸出給控制變頻器和接口模塊,最后傳給虛擬仿真軟件用于控制虛擬水泵轉(zhuǎn)速和閥門(mén)開(kāi)度等模型,觸摸屏用于設(shè)定管網(wǎng)壓力,顯示設(shè)備運(yùn)行狀態(tài)。如表1所示I/O分配表。

4 測(cè)試結(jié)果

無(wú)負(fù)壓供水系統(tǒng)是目前常見(jiàn)的較為先進(jìn)的供水設(shè)備,主要由水泵、電機(jī)、控制柜、穩(wěn)流罐、遠(yuǎn)傳壓力表、集水管、負(fù)壓解除器、出水管、電磁閥等構(gòu)成,具有投資成本低、節(jié)能和設(shè)備占地少等優(yōu)點(diǎn)[15]。當(dāng)用戶用水量增加時(shí),壓力傳感器檢測(cè)到自來(lái)水的壓力低于用戶所需用水壓力,控制器則通過(guò)變頻器啟動(dòng)管網(wǎng),直到管網(wǎng)壓力增加到用戶所需用水壓力時(shí)控制器控制變頻器以輸出恒定的工作頻率,保證管網(wǎng)壓力恒定。系統(tǒng)效果如圖3所示。

5 結(jié)語(yǔ)

采用三維建模、人機(jī)交互、虛擬仿真等技術(shù),以生活中典型的恒壓供水系統(tǒng)為研究對(duì)象開(kāi)發(fā)的恒壓供水虛擬實(shí)訓(xùn)教學(xué)裝置解決了電氣控制課程中教學(xué)中實(shí)驗(yàn)設(shè)備數(shù)量不足、實(shí)驗(yàn)內(nèi)容簡(jiǎn)易匱乏和學(xué)生工程實(shí)踐能力差等問(wèn)題。系統(tǒng)具有成本低廉、模型逼真和使用方便等優(yōu)點(diǎn),能夠激發(fā)學(xué)生的學(xué)習(xí)熱情、提高學(xué)生的工程實(shí)踐能力。

參考文獻(xiàn):

[1] 張邦成,王華振,李淼,等.基于PLC控制的恒壓供水系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2013,21(8):2136-2145.

[2] 王敬沖,王大虎,劉海洋.虛擬仿真在PLC配料控制系統(tǒng)教學(xué)中的應(yīng)用[J].實(shí)驗(yàn)室研究與探索,2015,34(9):75-78.

[3] 胡盤(pán)峰,陳慧敏.基于PLC的新型變頻恒壓供水系統(tǒng)設(shè)計(jì)[J].機(jī)械工程與自動(dòng)化,2011,4(2):141-143.

[4] 居榮,鞠勇.基于實(shí)際應(yīng)用的恒壓供水系統(tǒng)實(shí)驗(yàn)裝置設(shè)計(jì)[J].南京師范大學(xué)學(xué)報(bào),2006,6(4):21-25.

[5] 張學(xué)輝,程顯吉,韓培成.基于PLC及變頻器的恒壓供水實(shí)訓(xùn)系統(tǒng)開(kāi)發(fā)[J].機(jī)械與電子,2011,28(9):99-100.

[6] 楊柏松,熊建斌,李長(zhǎng)庚.基于變頻器內(nèi)置 PID 模塊的恒壓供水系統(tǒng)[J].電子設(shè)計(jì)工程,2015,23(20):161-165.

[7] 齊繼陽(yáng),孟洋,李金燕,等.模糊 PID 在恒壓供水控制系統(tǒng)中的應(yīng)用[J].自動(dòng)化與儀表,2015,35(3):44-47.

[8] 王大虎,史艷楠,陳文博.基于Quest3D的煤礦副井提升機(jī)虛擬實(shí)操系統(tǒng)的開(kāi)發(fā)[J].制造業(yè)自動(dòng)化,2014,36(9):114-117.

[9] 羅資琴,羅超,徐帥.基于Unity3D的化工裝置虛擬培訓(xùn)系統(tǒng)技術(shù)與應(yīng)用[J].數(shù)字技術(shù)與應(yīng)用,2015,32(2):52-55.

[10] 劉海洋,王大虎,王敬沖.基于Quest3D的采煤機(jī)虛擬培訓(xùn)系統(tǒng)設(shè)計(jì)[J].工礦自動(dòng)化,2015,4(4):102-105.

[11] 朱向慶, 胡均萬(wàn), 陳宏華,等.多功能單片機(jī)實(shí)驗(yàn)系統(tǒng)的研制[J].實(shí)驗(yàn)室研究與探索,2012,31(4):41-44.

[12] 田亞娟,郭麗穎.變頻恒壓供水PLC控制系統(tǒng)的設(shè)計(jì)[J].計(jì)算技術(shù)與自動(dòng)化,2010,29(1):25-28.

[13] 朱雪凌,張娟,許智勇,等.基于PLC的變頻恒壓供水系統(tǒng)的設(shè)計(jì)[J].華北水利水電學(xué)院學(xué)報(bào),2013,34(2):87-90.

[14] 王梅,馬小平,金立.基于S7-200的恒壓供水控制系統(tǒng)設(shè)計(jì)[J].工礦自動(dòng)化,2010,32(9):129-131.

[15] 王歡歡,劉書(shū)明,姜帥,等.無(wú)負(fù)壓供水模式下管網(wǎng)水力模擬與安全評(píng)價(jià)分析[J].環(huán)境科學(xué),2013,34(1):163-168.endprint

猜你喜歡
工程實(shí)踐三維建模虛擬現(xiàn)實(shí)
REALITY BITES
農(nóng)用風(fēng)力發(fā)電機(jī)葉片設(shè)計(jì)
虛擬現(xiàn)實(shí)技術(shù)向科幻小說(shuō)借靈感
數(shù)控仿真系統(tǒng)三維建模技術(shù)研究
高分子材料與工程專業(yè)實(shí)習(xí)模式的探索與實(shí)踐
基于CDIO模式的機(jī)械電子工程專業(yè)教學(xué)體系改革
基于職業(yè)標(biāo)準(zhǔn)的三維數(shù)字建模技術(shù)課程改革
淺談虛擬現(xiàn)實(shí)