?

基于Unity3d的變電站虛擬仿真培訓系統構建

2021-02-23 03:06祁永超田銘興陳小強張海喜
蘭州交通大學學報 2021年1期
關鍵詞:虛擬現實變電站建模

祁永超,田銘興,陳小強,張海喜

(1. 蘭州交通大學 自動化與電氣工程學院,蘭州 730070; 2. 蘭州交通大學 甘肅省軌道交通電氣自動化工程實驗室,蘭州 730070)

保障電網安全可靠運行一直以來是各級電力部門的核心工作,變電站作為電能輸送、分配的重要環節,其安全運行顯得尤為重要[1].隨著堅強智慧電網概念的提出,電力系統更為龐大,設備結構更為復雜,對電網運維人員的安全意識和技能素質提出了更高的要求[2].當前變電站培訓模式大都存在著理論與實際脫節現象,理論學習抽象、枯燥,不利于吸收消化,而實操學習由于設備經費問題,往往不能大規模進行培訓,且易誤操作,導致安全事故頻發,傳統的培訓方式已無法適應當前需求.因此,迫切需要設計一套沉浸感強、交互性好、趣味性強的變電站培訓系統來滿足當前發展趨勢.

虛擬現實技術可以很好地克服以上傳統培訓的不足.虛擬現實技術利用計算機技術、圖形圖像技術、人機交互技術等,將真實場景復現在計算機中,并進行各類仿真,實現“人在畫中游”效果[3].在電力培訓中,各級電力部門和研究人員對虛擬現實技術進行了大量的研究和應用:文獻[4]對站內二次設備仿真培訓系統的可視化方法進行了研究,建立了系統網絡架構,并真實模擬了站內二次設備,但其培訓內容和方法較為單一,且系統缺乏良好的人機交互功能;文獻[5]采用沉浸式虛擬仿真技術,搭建了變電站故障仿真系統,但該系統需要使用虛擬現實設備,培訓成本較高,且該系統只是單純的故障仿真,并沒有涉及故障原因分析、故障處理方法、故障防范措施等必要的培訓手段;文獻[6]在虛擬現實技術基礎上增加了Kinect體感交互技術,提高了學員的臨場感,但該系統側重于漫游功能的研究,且培訓只是站內設備的簡單認知;文獻[7]提出一種變電站仿真三維可視化裝配組件技術,提高了軟件開發效率;文獻[8]利用Quest3D提供的Channel模塊按一定邏輯連接,提高了培訓系統的可擴展性和維護性.

在既有研究基礎上,結合實際項目需求,基于Unity3d三維開發引擎,構建了成本低廉、功能全面的變電站虛擬仿真培訓系統.系統遵循軟件設計組件化的架構思想,集中實現了建模、仿真、交互、培訓等功能,實現了一個平臺能提供全面培訓的設計要求,解決了當前培訓系統功能單一、跨平臺維護不便等問題,提高了變電站培訓工作的靈活性.

1 系統總體方案

1.1 系統總體架構

基于Unity3d的變電站仿真培訓系統架構如圖1所示,分為4層:應用層包括系統實現的培訓功能,采用模塊化的設計思路,分為總體介紹模塊、設備學習模塊、漫游巡視模塊、模擬演練模塊、答題考核模塊、故障重現模塊等6個功能模塊;支撐層除了實現桌面式顯示、人機交互、模型拆分組合、教學視頻嵌入播放等基礎虛擬仿真功能,還提供了3D建模、場景布置、數據庫連接、快速渲染等輔助功能;接口層是實現交互的重要組件,包括人機交互接口、三維圖像引擎接口、可穿戴設備接口.由于本系統采用桌面式虛擬現實技術,因此,可穿戴設備接口預留;硬件層是支持仿真系統實現的基礎[10],主要包括管理主機、圖形工作站、可穿戴設備(預留).系統進行分層架構設計,從邏輯上將各模塊劃分成許多集合.通過分層,限制了子系統之間的依賴關系,層與層之間耦合度顯著減低,易于軟件的維護和修改,同時符合軟件工程組件化架構思想.

圖1 仿真培訓系統整體架構Fig.1 General structure of the simulation system

1.2 系統功能模塊分析

針對電力培訓實際需求,分別開發了6個培訓模塊,設計遵循“高內聚、低耦合”原則,各模塊之間相互獨立,降低了各模塊直接的耦合度,提高了軟件運行的穩定性和可擴展性.圖2為各模塊功能細化樹形圖.各模塊主要功能如下:

1) 總體介紹模塊.作為培訓的入門培訓模塊,主要講解變電站概況,如地理信息、承擔任務、總體結構、設備信息等,通過Unity3d布置虛擬變電站場景,讓受訓者初步認知變電站.

2) 漫游巡視模塊.在虛擬場景中,添加人物并編寫控制腳本,使用鍵盤及鼠標進行控制操作,可以巡視變電站任何設備.另外,自動漫游功能借助Unity3d內嵌的DO Tween插件實現,通過調用DO Path函數添加關鍵點來確定漫游路徑,并設置人物走動或跑動速度來實現變電站全站自動漫游,為受訓人員提供一種身臨其境的真實感受[10],彌補了學員難以進入變電站現場培訓的不足,提高培訓效率.

3) 設備學習模塊.為了化解實際操作與理論學習的矛盾,設計了拆分組合和視頻講解功能,例如變壓器的學習:通過拆分,學習各部件的主要功能及構造;通過組合,使受訓人員熟悉變壓器結構組成,并且在視頻教學結合的情況下,提高學員學習興趣.

4) 模擬演練模塊.模擬演練以變電站重要事件為演練內容,例如:倒閘操作,通過3dsMax動畫效果的制作及Unity3d邏輯腳本的設計,模擬變電站倒閘操作;火災逃生中,使用Unity3d平臺中的粒子系統,模擬火焰、煙霧效果,并規劃出逃路線,使學員控制人物進行逃離,達到模擬火災逃生的培訓效果.

5) 故障重現模塊.由于受訓人員在現場學習機會較少,遇到故障的情況也極為少見.因此,故障重現模塊對學員培訓,顯得尤為重要,通過故障的重現功能,學員可以在三維場景真實經歷故障情況,并學習處理步驟及防范辦法等.

6) 答題考核模塊.作為理論知識的考核,答題模塊可以檢驗學員的學習情況.該功能模塊通過連接MySQL數據庫對學員信息、答題信息、考核得分等信息進行存儲.

圖2 仿真培訓系統功能樹形圖Fig.2 Function tree of the simulation training system

2 系統開發及關鍵技術

2.1 開發路線及方法

由于系統開發過程中,應用軟件較多,涉及技術較廣,因此合理規劃系統開發路線顯得十分重要,不僅提高了開發效率,同時做到軟件設計的規范性.該培訓系統流程開發主要分為4個部分:資料收集、三維建模、系統搭建、程序測試.詳細的開發步驟及方法如圖3所示.

2.2 仿真環境建模

仿真環境的搭建是實現培訓系統功能的基礎,包括變電站設備三維建模和場景建模,精細化的建??梢允拐鎸嵶冸娬就昝缽同F在虛擬場景中.

1) 設備三維建模主要包括變電站主設備模型、輔助設施模型、監控室模型等.對于主設備模型,作為培訓系統的重要模型,且由于結構復雜、零部件較多,采用SolidWorks進行精細化建模;對于輔助設施、監控室、圍墻等一些細節呈現要求不高的模型,通過3dsMax進行建模,利用其豐富的貼圖效果、強大的烘焙能力,使模型更接近于實際.

2) 場景建模主要包括地形建模和天氣建模.地形建模使用Unity3d中的Terrain組件[11],使用筆刷工具根據變電站實際情況繪制需要的地形,如高地、樹木、草坪、地面等;天氣建模主要使用Skybox插件進行天空制作,如晴天、雨天、黑夜等效果.

圖3 系統開發路線Fig.3 System development route

將搭建好的模型以“.FBX”格式導出,然后導入Unity3d中分類存放,形成模型庫,隨時選用.需要對模型進行單位的調整,避免尺寸放大后模型失真;若操作模型時,其軸向發生偏離,需要建立世界坐標系,重新在3dsMax中進行調整.建模流程如圖4所示.

圖4 仿真培訓系統建模流程Fig.4 Modeling process of simulation training system

2.3 關鍵技術實現

2.3.1 細節層次技術

由于變電站場景復雜,在實際測試中,軟件運行占用計算機內存較大,導致畫面出現不流暢及卡頓現象.為了減少模型渲染的頂點數及三角面數,本系統采用細節層次(levels of detail,LOD)技術,LOD技術可以根據物體模型的節點在顯示環境中所處的位置和重要度,決定物體渲染的資源分配,降低非重要物體的面數和細節度,從而獲得更高效率的渲染運算[12].根據實際情況,變電站主設備如變壓器、斷路器、隔離開關、壓互、流互等設備為重要模型,在模型制作時,需完成幾種不同細節的模型.在現場中,配合攝像機,在近處使用細節較高的模型,在遠處使用細節較低的模型.圖5為Unity3d的LOD Group管理窗口,利用LOD Group組件來管理物體的LOD等級,通過Add按鈕為當前LOD等級設置網格對象,即不同細節的模型可以分別從LOD0、LOD1、LOD2和Culled設置網格對象,其中百分比值為物體在屏幕的高與屏幕高的比例.這樣當LOD發生變化時,就會使用不同的網格對象.圖6(a)和圖6(b)是使用LOD技術前后效果對比,可以看出使用LOD技術后,在進行漫游巡視時,視圖每一幀渲染時間從38.8 s下降至14.3 ms左右,大大減輕了計算機CPU處理壓力,畫面恢復清晰流暢.

圖5 LOD Group管理窗口Fig.5 LOD group management window

2.3.2 圖形幾何變換實現

三維圖形的幾何變換實質上是利用三維坐標變換完成的,主要有圖形平移、旋轉定位、比例縮放3種重要變換.同二維幾何變換,三維圖形變換也是基于坐標原點和坐標軸進行的幾何變換,可以表示成空間中某點的齊次坐標與四階的三維變換矩陣相乘[13].設某點的三維坐標為P(x,y,z),經過變換后坐標為P′(x′,y′,z′),其三維變換的矩陣形式為

P′=[x′y′z′ 1]=P·T3D=[xyz1]

(1)

根據在幾何變換中作用的不同,可將式(1)中的T3D進一步劃分成4個矩陣,見表1.

1) 若進行平移變換,點P的平移變換矩陣可表示為

P′=[x′y′z′ 1]=P·Tt=[xyz1]

(2)

2) 若進行旋轉變換,點P繞z軸進行旋轉時,其z坐標不變,x,y坐標可由二維點繞原點旋轉公式得到,變換矩陣可表示為

P′=[x′y′z′ 1]=P·TRZ=[xyz1]

(3)

在虛擬現實系統開發中,圖形幾何變換占有重要的地位[14].本系統中,設備學習模塊中的拆分組合功能很好地應用了平移變換和旋轉變換原理.學員可以使用鼠標拖動變壓器組成構件進行拆分和組合操作,熟悉變壓器結構和原理,在相應模塊上按住拖動會旋轉模塊,使學員360°全方位觀察組件結構,并配以文字進行講解.圖7(a)為組合后變壓器模型,圖7(b)為拆分后變壓器模型.

2.3.3 人機交互功能開發

良好的人機交互界面可以為用戶提供極大的方便,也是軟件開發的基本要求[15].Unity3d平臺提供了UGUI系統,內嵌了豐富的標準GUI插件,在開發時可以方便在Inspector視圖中編輯GUI控件的外觀和屬性,同時也可以掛載相應的控制腳本[16].對于變電站的GUI界面設計,不僅僅是簡單的界面設計,而是利用腳本掛載、坐標轉換、碰撞檢測、聲音加載、場景轉換等方法將設備參數、動畫模擬、功能演示、視頻聲音和專業知識展示給用戶,實現人機交互.圖8是系統模擬演練模塊中倒閘操作功能,受訓人員根據操作指令點擊按鈕來控制隔離開關和斷路器,完成倒閘操作,具體流程如圖9所示.

圖6 使用LOD技術前后渲染占CPU內存情況Fig.6 CPU memory of rendering before and after using LOD technology

表1 分矩陣及功能

圖7 拆分組合功能Fig.7 Functions of splitting and combining

圖8 倒閘操作模擬演練Fig.8 Simulation exercise of switching operation

3 系統測試

對系統性能測試和功能測試是檢驗軟件優劣的重要標志.在4臺配置不同的計算機中安裝此軟件進行實測,主要對頁面跳轉速度和系統流暢度進行測試,培訓系統性能測試結果見表2,可以看到4臺主機畫面流暢度均滿足動畫30幀/s的最低值要求,該系統可安全可靠地運行在此配置的電腦上.將系統發布成“.exe”格式文件并運行,進行功能測試.

系統加載成功后,進行注冊和登錄,在各模塊進行功能驗證,并逐步完善系統.

圖9 倒閘操作功能流程圖Fig.9 Flow chart of switching operation function

表2 培訓系統性能測試

4 結論

結合實際項目,構建了桌面式變電站虛擬仿真培訓系統.以模塊化的設計思路,采用了虛擬現實技術和圖形變換技術,實現了變電站總體介紹、設備學習、漫游巡視、模擬演練、答題考核、故障重現等六大基本功能.通過性能測試和功能測試,該軟件穩定可靠,系統交互界面良好,將枯燥的理論教學用逼真的三維模型和三維場景代替,激發了學員的學習興趣,提高了培訓效率,降低了培訓成本和培訓周期,具有良好的現實意義及推廣價值.后續將繼續在預留接口進行沉浸式培訓系統的開發,更進一步提高學員的臨場感.

猜你喜歡
虛擬現實變電站建模
基于FLUENT的下擊暴流三維風場建模
智能箱式變電站的應用探討
聯想等效,拓展建?!浴皫щ娦∏蛟诘刃鲋凶鰣A周運動”為例
虛擬現實技術在中學校園中的應用
求距求值方程建模
變電站巡檢機器人控制系統設計
基于PSS/E的風電場建模與動態分析
關于變電站五防閉鎖裝置的探討
風口上的虛擬現實
虛擬現實技術向科幻小說借靈感
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合