譚浩迪,張鈺奇,趙華東,2
(1. 鄭州大學(xué)機(jī)械與動(dòng)力工程學(xué)院,河南 鄭州 450001; 2. 河南省智能制造研究院,河南 鄭州 450001)
水工金屬結(jié)構(gòu)是水庫(kù)大壩用于水流調(diào)控的關(guān)鍵設(shè)施,其運(yùn)行安全決定著整個(gè)水利工程與下游人民生命財(cái)產(chǎn)安全[1,2]。近年來(lái),我國(guó)大部分水庫(kù)雖已除險(xiǎn)加固,但傳統(tǒng)的人工檢查及定期靜態(tài)檢測(cè)難以監(jiān)測(cè)其運(yùn)行狀態(tài)中動(dòng)態(tài)風(fēng)險(xiǎn)[3]。因此有必要對(duì)水工金屬結(jié)構(gòu)進(jìn)行實(shí)時(shí)在線安全監(jiān)測(cè),確保設(shè)備的正常運(yùn)行[4,5]。隨著水利水電與計(jì)算機(jī)技術(shù)的不斷發(fā)展,基于傳統(tǒng)的二維監(jiān)測(cè)管理方式已經(jīng)不能滿足水利設(shè)施對(duì)于水工金屬結(jié)構(gòu)的安全監(jiān)測(cè)需求,因此充分實(shí)現(xiàn)設(shè)備的虛擬三維可視化監(jiān)測(cè)、提高設(shè)備的人機(jī)交互能力,對(duì)于水工金屬結(jié)構(gòu)的信息化和智能化安全監(jiān)測(cè)具有重要意義[6-8]。
新時(shí)代的交叉學(xué)科對(duì)于推進(jìn)水利水電技術(shù)進(jìn)入信息化和智能化起關(guān)鍵作用,其中虛擬現(xiàn)實(shí)技術(shù)的應(yīng)用就是一大重要方面,虛擬現(xiàn)實(shí)技術(shù)是三維計(jì)算機(jī)圖形學(xué)和先進(jìn)輸入輸出設(shè)備的自然延伸,可以使用戶進(jìn)入一個(gè)虛擬空間,進(jìn)行實(shí)時(shí)交互,感知和操控虛擬世界中的各種物體,已經(jīng)成功運(yùn)用在航空航天、醫(yī)療、軍工、以及教育等領(lǐng)域[9,10]。在水利行業(yè)中,王乃欣[11]等基于虛擬現(xiàn)實(shí)技術(shù)模擬了淤地壩潰決災(zāi)害,為淤地壩的應(yīng)急管理提供了參考;葛從兵[12]等基于Unity3d 開(kāi)發(fā)了水庫(kù)大壩巡視檢查培訓(xùn)系統(tǒng),用于管理人員培訓(xùn)與能力提高;張盈[13]等基于NFC 物聯(lián)網(wǎng)研發(fā)了虛擬現(xiàn)實(shí)防洪應(yīng)急演練云平臺(tái),使防洪演練成本大大降低;于輝[14]等基于Unity3d 研發(fā)了一款抽水蓄能電站事故應(yīng)急處理仿真系統(tǒng),用于事故處理和應(yīng)急演練。通過(guò)研究發(fā)現(xiàn):大量的國(guó)內(nèi)外研究學(xué)者在虛擬現(xiàn)實(shí)技術(shù)已做出卓有成效的工作,但目前針對(duì)水利設(shè)施安全管理的應(yīng)用主要體現(xiàn)在教育培訓(xùn)與三維事故預(yù)演,對(duì)于水工金屬結(jié)構(gòu)健康監(jiān)測(cè)與虛擬現(xiàn)實(shí)技術(shù)相結(jié)合的可視化與信息化,尚有待做進(jìn)一步研究。
本文以陸渾水庫(kù)溢洪道水工金屬結(jié)構(gòu)為研究對(duì)象,開(kāi)展虛擬監(jiān)測(cè)系統(tǒng)關(guān)鍵技術(shù)研究,對(duì)其主體部分的弧形閘門(mén)及液壓式啟閉機(jī)研究開(kāi)發(fā)了配套的安全監(jiān)測(cè)虛擬系統(tǒng)。該系統(tǒng)結(jié)合輕量化建模技術(shù)、UV 貼圖技術(shù)及Unity3d 引擎,將溢洪道全景造型融入傳統(tǒng)監(jiān)管界面,為其賦予虛擬現(xiàn)實(shí)技術(shù)的多種交互功能。并針對(duì)虛擬監(jiān)測(cè)系統(tǒng)中自動(dòng)漫游相機(jī)角度轉(zhuǎn)向、水閘模型人機(jī)交互、水流效果展示與監(jiān)測(cè)數(shù)據(jù)可視化功能等關(guān)鍵技術(shù)進(jìn)行了詳細(xì)研究。最終實(shí)現(xiàn)了水工金屬結(jié)構(gòu)安全監(jiān)測(cè)與虛擬場(chǎng)景的交互融合。
虛擬監(jiān)測(cè)系統(tǒng)的開(kāi)發(fā)目標(biāo),是通過(guò)Unity3D 實(shí)現(xiàn)對(duì)整個(gè)仿真過(guò)程的數(shù)字化、信息化及可視化監(jiān)控和管理,在開(kāi)發(fā)過(guò)程中需要實(shí)現(xiàn)以下的性能指標(biāo):
場(chǎng)景的真實(shí)性:為了保證了系統(tǒng)的真實(shí)性,模型應(yīng)該1∶1還原現(xiàn)實(shí)場(chǎng)景;所有貼圖都應(yīng)來(lái)源與現(xiàn)場(chǎng)照片,通過(guò)PhotoShop 軟件進(jìn)行適當(dāng)修改;友好的交互性:UI界面應(yīng)該是友好的,用戶一看就明白,易于理解,無(wú)困惑;較高的渲染幀率:虛擬系統(tǒng)應(yīng)當(dāng)具有較高的渲染幀率,使得整個(gè)漫游過(guò)程流暢,不會(huì)讓人有暈眩感,因此對(duì)模型進(jìn)行輕量化處理;基礎(chǔ)軟件模塊:采用模塊化可復(fù)用的架構(gòu)設(shè)計(jì),方便后期繼續(xù)開(kāi)發(fā)降低維護(hù)難[15];良好的可擴(kuò)展性:實(shí)驗(yàn)平臺(tái)軟件的代碼構(gòu)建過(guò)程中,應(yīng)考慮后期需求變更時(shí)的擴(kuò)展性,當(dāng)有新的需求是,可以及時(shí)的添加新的功能[16]。
安全檢測(cè)虛擬系統(tǒng)的開(kāi)發(fā),需依據(jù)現(xiàn)有二維界面管理系統(tǒng),融合虛擬現(xiàn)實(shí)技術(shù)進(jìn)行系統(tǒng)功能分析與設(shè)計(jì)。通過(guò)構(gòu)建虛擬系統(tǒng),實(shí)現(xiàn)場(chǎng)景漫游、人機(jī)交互、數(shù)據(jù)交互等三大功能。該系統(tǒng)總體架構(gòu)如圖1 所示,由設(shè)備成、數(shù)據(jù)層、仿真層、功能層、應(yīng)用層組成[17]。
圖1 虛擬安全監(jiān)測(cè)系統(tǒng)總體架構(gòu)Fig.1 Overall architecture of virtual security monitoring system
設(shè)備層:主要由分布在閘門(mén)及其他金屬設(shè)備上的傳感單元構(gòu)成,實(shí)現(xiàn)對(duì)設(shè)備運(yùn)行∕靜止?fàn)顟B(tài)下水位、電流、電壓等相關(guān)數(shù)據(jù)的采集,并通過(guò)網(wǎng)關(guān)將數(shù)據(jù)進(jìn)行上傳;數(shù)據(jù)層:使用MySql 數(shù)據(jù)庫(kù),內(nèi)存Redis 數(shù)據(jù)庫(kù),時(shí)序數(shù)據(jù)庫(kù)InfluxDB 等,將現(xiàn)場(chǎng)基礎(chǔ)數(shù)據(jù)、水閘運(yùn)行狀態(tài)數(shù)據(jù)結(jié)合第三方RabbitMQ進(jìn)行結(jié)構(gòu)化存儲(chǔ)管理,為滿足數(shù)據(jù)在應(yīng)用層的使用,對(duì)數(shù)據(jù)進(jìn)行分類(lèi)緩存管理;仿真層:利用Solid Works、3DMax 繪制現(xiàn)場(chǎng)模型,融合貼圖技術(shù)與光照系統(tǒng)構(gòu)建水庫(kù)全景造型,對(duì)現(xiàn)場(chǎng)環(huán)境進(jìn)行深度還原;功能層:基于Unity3D引擎與C#編程語(yǔ)言進(jìn)行系統(tǒng)功能開(kāi)發(fā),包括場(chǎng)景漫游功能模塊、人機(jī)交互模塊、數(shù)據(jù)交互模塊三大模塊;應(yīng)用層:是整個(gè)虛擬系統(tǒng)功能的整合,通過(guò)unity3d 可將系統(tǒng)已多種平臺(tái)進(jìn)行發(fā)布,本研究將虛擬系統(tǒng)開(kāi)發(fā)至PC 端,管理者通過(guò)應(yīng)用層與虛擬系統(tǒng)建立連接。
全景造型設(shè)計(jì)是指搭建虛擬系統(tǒng)水庫(kù)場(chǎng)景環(huán)境,整體可分為模型構(gòu)建與光照設(shè)計(jì)兩部分。為保證虛擬場(chǎng)景真實(shí)性同時(shí)提高系統(tǒng)運(yùn)行效率,將場(chǎng)景中模型分為閘門(mén)設(shè)備等主體模型及外圍環(huán)境模型,分類(lèi)進(jìn)行模型繪制,最終在3Dmax 中進(jìn)行相互耦合。光照設(shè)計(jì)是為場(chǎng)景添加各種光源,并通過(guò)GI(Global Illumination)算法計(jì)算直接、間接、反射和環(huán)境光照等使渲染出來(lái)的光照效果更為真實(shí)豐富,并通過(guò)光照烘焙貼圖技術(shù)為場(chǎng)景增加立體感、層次感和較好的光影視覺(jué)效果。全景造型設(shè)計(jì)流程圖如圖2所示。
圖2 全景造型設(shè)計(jì)流程圖Fig.2 Panoramic modeling design flow
精細(xì)模型繪制以某一閘門(mén)為例,采用SolidWorks 建模后導(dǎo)入3Dmax,模型格式將由實(shí)體模型自動(dòng)轉(zhuǎn)化為面模型,如圖3(a)所示。面數(shù)過(guò)多是影響系統(tǒng)性能的重要因素之一,因此必須在3Dmax 中對(duì)其進(jìn)行輕量化處理,通過(guò)使用布爾運(yùn)算組合,直接在原有模型上對(duì)面進(jìn)行非、并、交、或等運(yùn)算拼接模型減少面數(shù),輕量化后如圖3(b)所示,經(jīng)對(duì)比,優(yōu)化后的模型面數(shù)由23 522減少為5 548。外圍環(huán)境模型通過(guò)3Dmax進(jìn)行繪制,使用常用標(biāo)準(zhǔn)基體、擴(kuò)展基本體以及地形插件等繪制房屋、河道、湖面等用于豐富場(chǎng)景。
圖3 閘門(mén)模型輕量化Fig.3 Gate model lightweight
將兩部分模型在3Dmax 中進(jìn)行交互耦合,修改兩者模型單位比例、調(diào)整軸心坐標(biāo)、創(chuàng)建父子關(guān)系等,使其便于腳本控制,呈現(xiàn)更好的交互效果。最后對(duì)模型進(jìn)行材質(zhì)賦予,通過(guò)紋理貼圖、法線貼圖、反射貼圖等多種貼圖格式,結(jié)合設(shè)置漫反射、高光反射、透明度等相關(guān)參數(shù),制作Material 材質(zhì)球,使模型表現(xiàn)出更加逼真的物理效果。
本系統(tǒng)主要使用3種光源,分別為:①環(huán)境光以天空盒的形式為整個(gè)虛擬場(chǎng)景添加天空照射的效果;②聚光燈運(yùn)用在報(bào)警上,通過(guò)紅光閃爍提醒管理人員預(yù)警信息位置;③平行光使用在監(jiān)控室屋頂上,為控制室提供亮度。
光照設(shè)計(jì)的重點(diǎn)是GI 與光照烘焙。使用GI 技術(shù),使設(shè)備在運(yùn)行過(guò)程中任意改變光源或移動(dòng)物體時(shí),都會(huì)立即更新所有的光照效果。光照烘焙通過(guò)對(duì)靜態(tài)模型進(jìn)行展UV、渲染靜幀光照?qǐng)D、反貼UV 的流程,將模型陰暗處理以貼圖的方式進(jìn)行渲染,提高系統(tǒng)運(yùn)行效率。
最后搭建的虛擬場(chǎng)景如4(a)圖所示,水庫(kù)現(xiàn)場(chǎng)如圖4(b)所示。
圖4 虛擬系統(tǒng)場(chǎng)景Fig.4 Virtual system scenario
友好的交互方式對(duì)整個(gè)系統(tǒng)的性能評(píng)估至關(guān)重要,本系統(tǒng)涉及到的交互類(lèi)型與功能類(lèi)型較為復(fù)雜,包括:UI交互、人機(jī)交互、數(shù)據(jù)與模型交互、數(shù)據(jù)與UI 交互。同時(shí)虛擬系統(tǒng)開(kāi)發(fā)應(yīng)采用模塊化可復(fù)用的架構(gòu)設(shè)計(jì)及良好的可擴(kuò)展性,方便后期需求變更時(shí),能及時(shí)添加新的功能模塊,降低維護(hù)成本。
為此,本文研究了一種功能事件添加、移除和觸發(fā)的事件工廠,該工廠以委托的方式將虛擬系統(tǒng)所有交互功能、事件觸發(fā)以字典的形式進(jìn)行儲(chǔ)存,通過(guò)KEY 鍵進(jìn)行功能使用,事件工廠實(shí)現(xiàn)方式如圖5所示。
圖5 事件工廠流程圖Fig.5 Event processing plant flow
對(duì)于碰撞檢測(cè),本系統(tǒng)主要使用OBB 包圍盒、包圍球兩種空間碰撞檢測(cè)算法,用于檢測(cè)鼠標(biāo)射線是否進(jìn)入包圍盒。對(duì)于高精度檢測(cè)的碰撞體模型采用OBB包圍盒,使用3DMax構(gòu)造其簡(jiǎn)單外輪廓,在Unity 中添加Col 前綴進(jìn)行相關(guān)參數(shù)的設(shè)置;其他碰撞體模型均采用包圍球,包圍球碰撞檢測(cè)使用便捷,系統(tǒng)資源占用率低,但其檢測(cè)精度較低。
以包圍球碰撞檢測(cè)算法為例:設(shè)空間中任意一點(diǎn)坐標(biāo)為C(X,Y,Z),碰撞體球心為Q(cx,cy,cz),碰撞區(qū)域半徑為r,則碰撞區(qū)域的數(shù)學(xué)表達(dá)式如下:
式中:R表示以Q(cx,cy,cz)為球心,以r半徑的碰撞檢測(cè)包圍球域,在場(chǎng)景空間的三維坐標(biāo)區(qū)域里,假定任意物體觸發(fā)點(diǎn)的坐標(biāo)變量為W(x,y,z),對(duì)碰撞區(qū)域的觸發(fā)函數(shù)作如下設(shè)定:
F(x,y,z) = 1表示已進(jìn)入碰撞觸發(fā)區(qū)域;F(x,y,z) = 0表示離開(kāi)或未進(jìn)入觸發(fā)區(qū)域。
(1)人物漫游功能實(shí)現(xiàn):人物漫游分為在地面上的第一人稱視角與在水庫(kù)上方俯瞰整個(gè)場(chǎng)景的第三人稱視角兩部分:第一人稱控制器的設(shè)計(jì)與實(shí)現(xiàn)在Unity3d 引擎中已經(jīng)很成熟,通過(guò)Character Controller 組件即可實(shí)現(xiàn);第三人稱視角控制器通過(guò)C#編寫(xiě)ThirdPlayerController 腳本,讀取鍵盤(pán)與鼠標(biāo)垂直軸信息用于控制相機(jī)移動(dòng)或旋轉(zhuǎn)。
(2)自動(dòng)漫游功能的設(shè)計(jì)與實(shí)現(xiàn):本系統(tǒng)使用DoTween 動(dòng)畫(huà)庫(kù)插件實(shí)現(xiàn)自動(dòng)漫游功能,其插件中DoTweenPath 類(lèi)可將關(guān)鍵點(diǎn)位以可視化方法進(jìn)行展示,便于路徑調(diào)整,但也存在相機(jī)角度轉(zhuǎn)向不便的問(wèn)題,不利于對(duì)關(guān)鍵點(diǎn)位進(jìn)行瀏覽。因此本系統(tǒng)研究了如圖6 所示的漫游算法,并通過(guò)編寫(xiě)腳本掛載在相機(jī)上,實(shí)現(xiàn)相機(jī)在進(jìn)入關(guān)鍵點(diǎn)位范圍時(shí),控制相機(jī)角度的旋轉(zhuǎn),并將視角聚焦,以便更好的觀察物體。
圖6 自動(dòng)漫游相機(jī)控制流程圖Fig.6 Automatic roaming camera control flow chart
人機(jī)交互是指管理人員通過(guò)鼠標(biāo)、鍵盤(pán)等設(shè)備與虛擬場(chǎng)景進(jìn)行交互,從而實(shí)現(xiàn)各種交互功能。本系統(tǒng)設(shè)計(jì)了基礎(chǔ)的UI界面交互功能、小地圖功能及位置傳送等輔助功能,用于增強(qiáng)虛擬系統(tǒng)友好性,同時(shí)也為其他主要功能切換及使用提供便捷。閘門(mén)運(yùn)行姿態(tài)展示功能是輔助功能設(shè)計(jì)中具有重要意義的一環(huán),為方便管理人員對(duì)水閘進(jìn)行全方位觀察,本系統(tǒng)研究了一種模型交互控制算法,通過(guò)創(chuàng)建3 個(gè)類(lèi)方法分別實(shí)現(xiàn)旋轉(zhuǎn)、平移、相機(jī)視距變化,具體流程如圖7所示。
圖7 模型交互控制算法Fig.7 Model interactive control algorithm
以控制物體旋轉(zhuǎn)為例:當(dāng)鼠標(biāo)左鍵按下并拖拽時(shí),讀取鼠標(biāo)垂直軸偏移量信息[X,Y,Z]并保存,同時(shí)記錄鼠標(biāo)移動(dòng)時(shí)間Time.deltaTime,設(shè)定旋轉(zhuǎn)調(diào)整參數(shù)K,并將K顯示在監(jiān)視面板方便調(diào)整,則物體旋轉(zhuǎn)角度為[X,Y,Z]*Time.deltaTim*k,最后通過(guò)Transform.Rotate 方法將旋轉(zhuǎn)角度與物體本身世界坐標(biāo)角度相加,實(shí)現(xiàn)水閘對(duì)應(yīng)方向旋轉(zhuǎn)。同理通過(guò)Transform.Translate 實(shí)現(xiàn)物體平移與相機(jī)移動(dòng)。
3.5.1 數(shù)據(jù)庫(kù)的連接
本虛擬系統(tǒng)中,閘門(mén)與啟閉機(jī)的運(yùn)轉(zhuǎn)以及水庫(kù)環(huán)境的可視化都可通過(guò)傳感器采集數(shù)據(jù)信息進(jìn)行實(shí)時(shí)展示。前端感知設(shè)備實(shí)時(shí)采集相關(guān)運(yùn)行狀態(tài)數(shù)據(jù)后,通過(guò)網(wǎng)關(guān)、有線∕無(wú)線網(wǎng)絡(luò)等實(shí)時(shí)傳輸,同時(shí)為了更好的實(shí)現(xiàn)現(xiàn)場(chǎng)采集的實(shí)時(shí)數(shù)據(jù)與虛擬系統(tǒng)進(jìn)行數(shù)據(jù)交互,網(wǎng)絡(luò)通信采用AMQP 協(xié)議方式實(shí)現(xiàn),并引入第三方系統(tǒng)RabbitMQ 進(jìn)行結(jié)構(gòu)化儲(chǔ)存管理。虛擬系統(tǒng)與數(shù)據(jù)庫(kù)連接在Unity3d引擎中進(jìn)行配置,實(shí)現(xiàn)流程如圖8所示。
圖8 數(shù)據(jù)連接流程圖Fig.8 Data connection flow chart
3.5.2 數(shù)據(jù)交互功能設(shè)計(jì)
實(shí)時(shí)狀態(tài)仿真功能用于模擬現(xiàn)場(chǎng)作業(yè)情況,將水閘、啟閉機(jī)模型單元位置信息與對(duì)應(yīng)實(shí)時(shí)數(shù)據(jù)接口進(jìn)行綁定,并編寫(xiě)Timer 幫助類(lèi),完成數(shù)據(jù)調(diào)取及刷新功能,實(shí)現(xiàn)數(shù)據(jù)與虛擬場(chǎng)景中物體的交互;水流動(dòng)畫(huà)的仿真分為閘門(mén)區(qū)域動(dòng)畫(huà)和河道區(qū)域動(dòng)畫(huà),閘門(mén)區(qū)域動(dòng)畫(huà)使用Unity3d 粒子系統(tǒng),通過(guò)調(diào)整粒子發(fā)射參數(shù)并制作相應(yīng)貼圖實(shí)現(xiàn),河道區(qū)域動(dòng)畫(huà)通過(guò)3Dmax 動(dòng)畫(huà)技術(shù),修改關(guān)鍵幀點(diǎn)位的河道高度位置實(shí)現(xiàn)。
智能預(yù)警功能通過(guò)對(duì)閘門(mén)應(yīng)力、閘門(mén)振幅等數(shù)據(jù)信息預(yù)設(shè)閾值,將異常數(shù)據(jù)進(jìn)行自動(dòng)發(fā)送并觸發(fā)報(bào)警事件。發(fā)送的數(shù)據(jù)信息包含內(nèi)容、設(shè)備ID、故障位置等;報(bào)警事件中根據(jù)故障信息獲取報(bào)警點(diǎn)位模型,通過(guò)GetComponent 類(lèi)方法獲取模型點(diǎn)光源組件的引用,然后將燈光顏色修改為紅色,并播放提前預(yù)制的報(bào)警信號(hào),實(shí)現(xiàn)可視化智能預(yù)警。
數(shù)據(jù)可視化功能采用XChart 插件將實(shí)時(shí)流速、實(shí)時(shí)水位、環(huán)境參數(shù)、閘門(mén)應(yīng)力、閘門(mén)振幅、故障數(shù)量、預(yù)警數(shù)量等數(shù)據(jù)信息,以可視化圖表形式進(jìn)行展示。在數(shù)據(jù)顯示UI界面添加相應(yīng)的XChart 組件,并在檢視面板調(diào)整組件錨點(diǎn),為其添加定時(shí)刷新腳本,在定時(shí)刷新腳本中通過(guò)Timer 幫助類(lèi)從數(shù)據(jù)中心按照2 s一次的頻率調(diào)取實(shí)時(shí)監(jiān)測(cè)數(shù)據(jù)。
水工金屬結(jié)構(gòu)安全監(jiān)測(cè)虛擬系統(tǒng)可以通過(guò)Unity3d 可以導(dǎo)出為PC、Android、VR 等多種方式。本文將其部署在相應(yīng)的管理電腦上,運(yùn)行環(huán)境為:CPU 主頻2.30 GHz,內(nèi)存16 GB,硬盤(pán)500 GB,操作系統(tǒng)Windows11。關(guān)鍵功能測(cè)試如下所示:
閘門(mén)運(yùn)行姿態(tài)展示功能:通過(guò)UI 交互進(jìn)入僅包括弧形閘門(mén),閘門(mén)支鉸,啟閉桿的新場(chǎng)景,其中自動(dòng)展示是以播放動(dòng)畫(huà)的形式,將水閘模型全方位自動(dòng)播放。人工展示通過(guò)鼠標(biāo)對(duì)水閘進(jìn)行操控并觀察,圖9是水閘模型交互效果圖。
圖9 水閘模型交互效果Fig.9 Sluice model interaction effect
實(shí)時(shí)狀態(tài)仿真功能:實(shí)時(shí)狀態(tài)仿真包括閘門(mén)啟閉過(guò)程和水流展示,效果如圖10 所示。當(dāng)數(shù)據(jù)驅(qū)動(dòng)閘門(mén)升起時(shí),通過(guò)閘門(mén)開(kāi)合角度來(lái)控制水流粒子系統(tǒng)發(fā)射速率,呈現(xiàn)閘門(mén)區(qū)域水流效果如圖10(a)所示;河道水流效果以動(dòng)畫(huà)播放形式進(jìn)行呈現(xiàn),如圖10(b)所示。
圖10 水流動(dòng)畫(huà)效果圖Fig.10 Animation of water flow
檢測(cè)數(shù)據(jù)三維可視化功能:通過(guò)主菜單打開(kāi)數(shù)據(jù)監(jiān)測(cè)面板,效果如圖11 所示。監(jiān)測(cè)面板位于兩個(gè)控制室之間,如圖11(a)所示;監(jiān)測(cè)面板默認(rèn)顯示一號(hào)閘門(mén)信息,數(shù)據(jù)信息包括:實(shí)時(shí)流速、實(shí)時(shí)水位、環(huán)境參數(shù)、閘門(mén)應(yīng)力、閘門(mén)振幅、故障數(shù)量、預(yù)警數(shù)量等,如圖11(b)所示。
圖11 監(jiān)測(cè)數(shù)據(jù)UI界面Fig.11 Monitor data UI
基于Unity3d 技術(shù)開(kāi)發(fā)了一款用于水工金屬結(jié)構(gòu)安全檢測(cè)的虛擬仿真系統(tǒng),構(gòu)建了三種漫游方式用于系統(tǒng)不同視角下的人機(jī)交互。并通過(guò)優(yōu)化系統(tǒng)自動(dòng)漫游功能實(shí)現(xiàn)了相機(jī)角度朝向的靈活改變,充分展示了溢洪道水工金屬結(jié)構(gòu)場(chǎng)景關(guān)鍵點(diǎn)位的變化。同時(shí)提出了一種閘門(mén)運(yùn)行姿態(tài)交互控制的算法,為水工金屬結(jié)構(gòu)安全監(jiān)測(cè)系統(tǒng)提供了更加豐富和便利的交互功能。
通過(guò)AMQP 協(xié)議實(shí)現(xiàn)了傳感器采集數(shù)據(jù)與水工金屬結(jié)構(gòu)系統(tǒng)之間的交互,創(chuàng)建了閘門(mén)與水流耦合的動(dòng)態(tài)仿真效果。并依據(jù)實(shí)時(shí)采集信息以燈光閃爍的形式進(jìn)行預(yù)警判斷,通過(guò)XChart 將監(jiān)測(cè)數(shù)據(jù)以圖表的形式進(jìn)行實(shí)時(shí)可視化展示。相較于傳統(tǒng)的二維水工金屬結(jié)構(gòu)安全監(jiān)測(cè)系統(tǒng)界面而言,該系統(tǒng)具有較強(qiáng)的針對(duì)性和實(shí)用性,同時(shí)能夠滿足系統(tǒng)實(shí)時(shí)性要求,并最終成功應(yīng)用于實(shí)際水工金屬結(jié)構(gòu)虛擬安全監(jiān)測(cè)中。