魏仁輝



摘 要:為提高地鐵員工的培訓效果,設計了地鐵在線員工培訓虛擬仿真系統,該系統設計過程中,采用 Unity 3D 引擎,利用三維建模軟件SolidWorks實現地鐵車輛設備、車站環境及設施、地鐵的供電設備、通信設備等的建模,同時使用PixyzStudio、Cinema4D軟件進行修正,最后完成虛擬場景整合,利用桌面虛擬現實設備zSpace實現人機交互性能,結果表明:系統每一幀運行的時間間隔平均為 16.85 ms,應用性能較好。
關鍵詞:Unity 3D;虛擬現實;員工培訓
中圖分類號:TP319;TU39 文獻標識碼:A 文章編號:1001-5922(2021)11-0193-04
Research on the Implementation of Online Distributed Virtual Simulation Technology
Wei Renhui
(Xi an Railway Vocational and Technical College, Xi an 710014, China )
Abstract:In order to improve the training effect of subway employees, the virtual simulation system of subway online staff training is designed. In the design process, the Unity 3D engine is used to use the 3D modeling software SolidWorks to realize the modeling of subway vehicle equipment, station environment and facilities, subway power supply equipment, communication equipment, etc. At the same time, PixyzStudio and Cinema4D software were used to correct, finally virtual scene integration and desktop virtual reality device zSpace to achieve human-computer interaction performance. The results show that the time interval of each frame is 16.85 ms with good application performance.
Keywords:Unity 3D; VR; employee training
0 引言
目前,國內針對軌道交通類專業開發的虛擬仿真培訓系統主要有以下兩種形式:單機模式虛擬仿真培訓系統和分布式虛擬仿真培訓系統。隨著地鐵對培訓工作的要求越來越高,虛擬仿真培訓系統僅僅實現虛擬仿真技術已不能滿足培訓需要,分布式系統已經越發作為主要形式進行開發。建立仿真系統平臺有很多種方法,但具有三維物理特征的場景效果開發困難; RT-LAB 系統平臺具有很好的開放性但平臺的通用性較差[4];采用VxWorks系統在數據交換上具有便捷性優勢,且實時性特點較為突出,不過從其功能的擴展上來看并不十分的理想[5];以UWSim 軟件為支持執行對虛擬場景的構建任務,在程序的修改上面臨著復雜而又難度較大的問題[6-7]。Unity 3D開發作業相對簡便,在復雜的半實物仿真系統的研究及開發上表現出很好的適用性。對此,本文在此技術的支持下設計了基于在線分布式虛擬仿真技術的地鐵在線員工培訓系統,期望為地鐵員工培訓提供一種新的思路。
1 系統實現的目標
虛擬現實技術對計算機圖形學、人機交互、人工智能以及傳感器等諸多極具現代化特點的先進技術予以涉及,主要包括計算機硬件與軟件以及諸多類型的傳感器。它們共同組成一種人工——虛擬環境,能夠對現實世界中存在的事物與環境進行模擬,且模擬的情景非常的逼真,在一定程度上,甚至能夠實現對不存在的場景的模擬。當人投入至這一虛擬環境中時,會有一種非常真實的體驗感,且具有親自操作的功能,亦即實現一種同虛擬環境之間非常自然的交互。
虛擬現實技術的含義主要包括3個方面:①基于計算機技術的支持得到的環境具有非常明顯的虛幻性特點;②雖然環境十分虛幻,但是人們在這一環境下所產生的具體感覺(包括視覺、聽覺、觸覺等等)都非常 的逼真;③通過對一些自然方法的采用(像是手動、口說以及產生其他肢體上的動作等),人們能夠同這一虛幻而又十分逼真的環境進行很好的交互,而在此過程中,虛擬環境又能結合人們作出的具體動作給予相應的反饋。
虛擬仿真技術是一種仿真技術同虛擬現實技術相互結合的產物,在仿真技術中表現出更加高級的特點。對該技術最為典型的特征進行分析與把握,體現在對全系統所作的具有統一性以及完整性的虛擬環境的構建,并在此基礎之上對一系列實體進行集成及控制之上。虛擬仿真可以進行操作訓練、事故、火災等應急演練等,因此,虛擬仿真在軌道交通的員工培訓上有著較為突出的優勢。以地鐵員工為培訓對象的在線分布式虛擬仿真系統利用Unity 3D技術制作3D場景,其主要功能就是結合地鐵運維、地鐵檢修、地鐵調度、駕駛理論知識,通過模擬操作和考試提高工作人員的業務水平,提高工作效率。地鐵仿真系統的開發流程如下:
2 系統設計
2.1 系統架構設計
地鐵虛擬仿真培訓系統支持平臺主要功能包括對地鐵場景中實體、非實體對象進行三維化展示,有效管理場景內的各項要素,為仿真數據提供良好的數據驅動接口以及進行實時與高效交互等多種功能,交互操作功能由zSpace實現,交互操作功能由3部分組成,分別為被動式偏振3D眼鏡、顯示屏及6自由度操控筆,6自由度操控筆是進行虛擬地鐵運維管理、地鐵檢修、地鐵調度、模擬駕駛的交互輸入方式。虛擬仿真系統是一個具有物理邏輯和工作規則的虛擬演示及操作環境,具有良好的可擴展性。
按照地鐵虛擬仿真培訓系統培訓中所涉及的內容,系統由培訓考試模塊、場景仿真模塊、虛擬控制模塊構成,系統整體架構B/S模式,數據庫采用MYSQL數據技術,3D虛擬場景系統采用Unity 3D引擎和C#語言開發。地鐵系統的員工登錄培訓系統需要進行身份驗證。分布式虛擬仿真系統在應用中將位于不同物理位置的多個用戶或多個虛擬環境連接在一起,實現信息的共享,比如可以實現不同崗位的地鐵應急處置培訓等。該系統中Unity 3D虛擬仿真引擎只能通過TCP/IP組件實現系統的分布式開發,而互聯網之間的數據傳遞通過WebSeivce技術實現,采用WebService采取標準描述相關組件和XML數據傳遞模型。地鐵員工仿真培訓整體系統架構和功能模塊如圖2、圖3所示。
2.2 地鐵場景模型建立及導入
Unity 3D,簡稱U3D,是一款游戲引擎軟件[8],在虛擬仿真開發引擎中具有極高的通用性[9-11]。地鐵場景建模過程中的開發環境為Unity 3D,建立虛擬的地鐵場景,利用三維建模軟件SolidWorks實現地鐵車輛設備、車站環境及設施等的參數化建模,同時使用PixyzStudio、Cinema4D軟件進行修正,如紋理貼圖、重建坐標軸等,最后完成虛擬場景整合,導出為Unity 3D支持的FBX文件。
2.3 腳本平臺的開發
分布式虛擬仿真系統需要通過互聯網傳遞大量的標準化、結構化的數據,所有虛擬仿真系統的任務腳本都可以通過 XML編寫實現,編輯好的XML的腳本通過C#語言被U3D解釋并執行。可視化腳本編輯平臺實現邏輯結構如圖4所示。
3 系統實現
3.1 人機交互的實現
人機交互設備主要為6自由度操控筆,在此操控筆的支持下,執行對虛擬射線的發射任務。這一操作的進行可以選中某一物體,當虛擬射線和選中的物體之間出現相互接觸的情況之時,通過點擊對應的交互鍵實現物體的抓取或縮放。6自由度操控筆的移動算法主要是設置重力值和移動速率,移動速率和時間的乘積即可得到水平方向或者是垂直方向的物體移動距離,操控筆交互功能流程如圖5所示。
當用戶進行地鐵相應的場景虛擬仿真模擬時,通常需要對相應的部件沿x、y、z軸進行移動或者旋轉,分別是平移和轉動。在Unity中,物體的旋轉可以用單位四元數進行描述,表達式為,假設物體的初始坐標點為P1與射線碰撞點坐標P2的偏移向量為,射線長度,四元數與向量之間的運算 如式(1)[12]。
式(1)中,為操控筆的初始轉角;0,(0,0,1)為操控筆的局部坐標系正方向[13]。
完成對初始信息的記錄工作之后,進一步參照式(2)~式(5)的具體計算,將更新之后的物體的轉角及位置確定下來:
式(2)~式(5)中,Ppi所表示的是在進行第i次循環之時,射線碰撞點的實際坐標,P2i表示的則是在進行第i次循環之時,操控筆所處的實際位置。另外,表示的是在進行第i次循環之時,操控筆的具體轉角;則是操控筆轉角四元數的逆,用于補償第1次循環計算中的偏差。根據式(1)~式(5)6自由度抓取之后,當射線與物體接觸時,通過坐標系計算出物體的縮放比例賦值給被選中的物體,實現與物體的虛擬交互。
3.2 虛擬場景漫游的設計實現
6自由度操控筆是進行虛擬地鐵運維管理、地鐵檢修、地鐵調度、模擬駕駛的交互輸入方式,系統需要設計地鐵運維管理、地鐵檢修、地鐵調度、模擬駕駛的虛擬場景。6自由度操控筆的交互實現:第一,根據圖2建立完整的、真實的地鐵運維管理、地鐵檢修、地鐵調度、模擬駕駛的虛擬場景,設置不同的角色模型導入Unity3D中,然后根據不同角色的訪問需求設置控制代碼[14]。第二,為了逼真的實現三維仿真,采用Unity3D中內置的ThirdPerson Character包進行場景的漫游設置[15];第三,人機交互操作通過6自由度操控筆和鼠標實現;6自由度操控筆控制角色移動,鼠標控制漫游視角的旋轉。虛擬仿真系統除了具有漫游場景功能之外,還可以通過過UI界面(用戶界面)視圖欄的相機切換實現不同視角的查看,設置特定的相機和瀏覽視角。
3.3 在線考試的實現
系統虛擬仿真場景采用Unity 3D引擎,可以滿足地鐵員工在線學習、在線考試的相關需求,通過模擬地鐵的調度和運維等場景,可提升工作人員的職業技能。員工需要先登錄虛擬仿真系統,登錄之后根據設置的操作規程,點擊相應的模塊進行在線學習與考試,以提高職業技能。
4 仿真系統運行結果
4.1 運行效果
在運行仿真系統的過程中,用戶可以與系統進行交互,具體:基于主界面利用6自由度操控筆可以選擇不同的虛擬場景,移動6自由度操控筆移動虛擬射線進行交互操作;如城軌車站應急救援虛擬場景,用戶進入場景之后,可以從不同的視角進行觀看,增強用戶的實時交互體驗。
4.2 交互實時性評價
為了對系統所表現出來的應用性以及實用性功能進行測試,針對系統的交互性能展開測試,此過程應用的計算機配置CPU型號:Intel 酷睿i5 7500,CPU頻率:3.4G Hz,內存容量:8 GB DDR4。操控筆交互過程中系統每一幀運行的時間間隔平均為 16.85 mm,擁有優良的交互實時性能。該系統采用虛擬化的培訓手段,避免使用真實的樣機, 在實踐應用中有以下優點,一是培訓效率高;二是培訓成本低;三是培訓過程安全。
5 結語
本研究以地鐵在線員工培訓虛擬仿真系統,該系統的人機交互性能較好,采用桌面虛擬現實設備,操控筆交互過程中系統每一幀運行的時間間隔平均為 16.85 mm。系統虛擬仿真場景采用 Unity 3D 引擎,Unity 3D 建立虛擬的地鐵場景,利用三維建模軟件Solid Works實現地鐵車輛設備、車站環境及設施、地鐵的供電設備、通信設備等的建模,同時使用Pixyz Studio、Cinema 4D軟件進行修正,最后完成虛擬場景整合,其可以滿足地鐵員工在線學習、在線考試的相關需求,通過模擬地鐵的調度和運維等場景,可提升工作人員的職業技能。
參考文獻
[1]曲興衛. 基于虛擬現實技術的兵馬俑復制品模型展示系統[J].電子測量技術,2019,42(19):154-157.
[2]秦超龍,宋愛國,吳常鋮,等. 基于Unity 3D與Kinect的康復訓練機器人情景交互系統[J]. 儀器儀表學報,2017,38(03):530-536.
[3]楊艷芳,賀 煥,舒 亮,等. 基于時間Petri網的斷路器虛擬裝配系統研究[J]. 中國機械工程,2019,30(3):62-69
[4]張冀川,徐家斌,童亦斌,等. 基于RT-LAB的MMC半實物仿真平臺設計[J]. 電力電子技術,2016,50(03):26-28.
[5]任福深,孫雅琪,胡 慶,等. 基于Unity 3D的水下機器人半實物仿真系統[J/OL]. 系 統仿真報:1-10[2020-08-06]. http://kns.cnki.net/kcms/detail/11.3092.v.20200327.1718.006.html.
[6]邢瑞毅,馬世偉,鐘建鵬. 基于Simulink的水下無人機器人建模與仿真[J]. 系統仿真技術,2018,14(02):109-112+135.
[7]P REZ J, SALES J,P E ALVER A,et al. Robotic Manipulation Within the Underwater Mission Planning Context[M]. Motion and Operation Planning of Robotic Systems. Springer International Publishing,2015:595-612.
[8]安葳鵬,孟衛娟. 基于虛擬現實的煤礦設備裝配仿真系統研究[J]. 測控技術,2017,36(8):114-117.
[9]李軍鋒,巫慶輝,劉 杰. 基于Unity 3D的《電機拖動》虛擬實驗室設計與開發[J]. 國外電子測量技術,2016,35(10):87-90.
[10]張 衡,張澤宇. 基于MEMS傳感器和Unity3D的人體運動捕獲系統[J].圖學學報,2015,36(2):274-281.
[11]王文潤,王陽萍,雍 玖. 基于Unity 3D的鐵路信號設備虛擬現實系統研究[J]. 鐵道標準設計,2016,60(8):144-147.
[12]魏士松,周正東,章栩苓,等. 基于桌面虛擬現實技術的航天器虛擬維修訓練系統[J/OL]. 系統仿真學報:1-7[2020-08-06]. http://kns.cnki.net/kcms/detail/11.3092.V.20200803.1715.002.html.
[13]朱希安,徐宇翔. 基于射線的虛擬手動態碰撞檢測算法[J]. 北京信息科技大學學報,2015,30(2):20-25.
[14]胡素蕓,邵斌澄,李 坤,等. 面向航天員虛擬訓練的人機交互系統研制和測試[J]. 電子測量與儀器學報,2017,31(12):1902-1911.
[15]王 瑞,薛慰慈. 基于Unity 3D的增強現實動畫展示窗[J]. 電子測量技術,2019,42(12):100-105.