張贏
(中國鐵路呼和浩特局集團有限公司科學技術研究所 內蒙古呼和浩特 010052)
隨著我國高速鐵路大量建設和快速發展,S700K 型電動轉轍機已被廣泛應用于全國高鐵線路、客運專線車站。因此,該設備能否無故障安全運行直接關系著鐵路運輸生產安全,這就要求現場維護和檢修職工必須對該類型轉轍機專業知識掌握的非常熟練,必須具有很強的上手操作能力。然而,培訓基地難以同時滿足職工對上手操作演練的需求,教學中理論與現場實踐對接不暢。基于上述原因,本文提出運用虛擬現實技術,利用Unity3D 引擎開發平臺設計研發具有環境交互、機械原理動畫演示、考核比賽等功能的S700K 電動轉轍機三維仿真培訓系統以解決培訓教學和實驗教學中理論與現場實踐對接不暢,培訓學習效果不佳等難題。
虛擬現實技術(Virtual Reality,簡稱VR)其基本實現方式是計算機模擬虛擬環境從而給人以環境沉浸感。虛擬現實技術的快速發展使得三維仿真培訓教學變成了現實,解決了培訓學員未能理論與實踐相結合,培訓教學效果不明顯的問題。本文通過對S700K 電動轉轍機結構分析,運用3DsMax 軟件制作三維模型及相關動畫,利用Unity3D 引擎開發平臺設計研發三維仿真培訓教學系統。此類型系統能夠為培訓學員提供虛擬現實的培訓場景以及操作說明,使得培訓學員能夠快速地掌握設備操作流程等標準化作業,避免了操作不當導致人員受傷或設備零件損壞,而且該系統可以反復學習使用、不受地域和時間限制、安全可靠、實際交互性強,受到越來越多的鐵路企業和鐵路高職院校的青睞。
S700K 型電動轉轍機三維仿真培訓系統使用3DsMax 創建模型,利用Unity3D 引擎為開發平臺,運用C#語言編寫控制腳本實現轉轍機整體順序拆裝演示,以及部分零部件的單獨拆裝演示等功能。運用數據庫技術實現培訓學員學習后的考核測評和學員之間的專業知識比賽功能。系統整體層次框架圖,如圖1 所示。

圖1 系統整體層次框架圖
本三維仿真培訓系統的開發是為了滿足鐵路培訓職工熟練掌握S700K 型電動轉轍機的機械結構,熟知該型號轉轍機的動作原理以及實現交互式的按順序拆卸和安裝。特別是對培訓電務系統新入路職工動手實踐能力、提高工程意識、增強學習熱情具有重要的意義。根據S700K 型電動轉轍機三維仿真培訓系統按照現場實際調研以及實際需求的不同,設計了不同的功能模塊,從而實現該型號轉轍機的培訓教學任務。具體開發流程如下:
(1)參考營口東站S700K 型電動轉轍機及道岔外鎖閉裝置以及相關現場場景,進行1:1 的三維場景的建立。將制作好的整體三維模型導入Unity3D 引擎開發平臺,進行虛擬現實場景環境交互的建立;
(2)通過編寫C#腳本實現系統界面交互、系統三維場景交互、系統與數據庫的通信;
(3)通過Unity3D 引擎開發平臺將系統發布到PC 桌面展示。該系統開發流程,如圖2 所示。

圖2 系統開發流程圖
S700K 型電動轉轍機三維仿真培訓系統對模型的要求較高,而且也是本系統開發的重點和難點,通常采取依據CAD 圖紙和物體實際圖片進行建模。Unity3D 作為虛擬現實開發引擎軟件,它的三維建模功能較弱只能構建基礎三維模型體,對于用來制作轉轍機設備之類的復雜精細模型并不合適。因此,本系統運用3DsMax 三維建模軟件進行模型制作,該建模軟件具有強大的建模工具和材質貼圖調整功能,其制作出的三維模型逼真。3DsMax 中建立的道岔及轉轍機聯結模型如圖3 所示。

圖3 3DsMax 中道岔及轉轍機聯結模型圖
下面以S700K 型電動轉轍機為例,介紹建立三維模型導入過程。S700K 型電動轉轍機其整體包含了多個形狀復雜的零件,因此,在制作模型的過程中確保真實性的前提下,對所建立的模型進行合理優化設計,避免因模型數據量過大導致數據溢出影響整個系統環境的運行效率,導致體驗效果不佳等問題。本文通過運用3DsMax 三維建模軟件對該型轉轍機三維模型的總面數進行優化,將模型中看不到的點、線、面進行刪除優化等操作,精簡模型量,同時利用PS 軟件對模型所用到的貼圖進行修正、美化等處理,使得該型號電動轉轍機整體三維模型更加具有現實的真實感和逼真感。導出Unity3D 支持的FBX格式文件,導入成功的S700K 型電動轉轍機三維模型,如圖4 所示。

圖4 導入后S700K 型電動轉轍機的三維模型
將已經制作好的三維模型導出.FBX 文件,然后將此類型文件導入Unity3D 軟件中,通過Unity3D引擎自帶的動畫編輯器,運用C#語言編寫腳本程序文件實現S700K 型電動轉轍機的“爆炸”動畫效果、轉轍機各零件單獨展示與拆卸、道岔與轉轍機聯結動作、轉轍機內部傳動動作等相關動畫的演示。
3.2.1 S700K 型電動轉轍機零件查看與結構分析
零件的查看與機械結構分析主要是使培訓職工對S700K 型電動轉轍機的零件及其結構有更加直觀的認識和具體的了解。對于剛接觸轉轍機受訓學員而言,增加單獨零件的機械結構進行了解和分析,有助于提高受訓職工對整體設備結構的認識和理解,從而提高學習興趣和工程實踐意識。通過添加“爆炸”圖并控制轉轍機各個零件的Transform.renderer.enabled 屬性,可以實現零件隱藏和顯示機械結構。S700K型電動轉轍機“爆炸”圖,如圖5 所示。

圖5 S700K 型電動轉轍機“爆炸”圖
3.2.2 系統交互腳本的設計
三維仿真系統中實現S700K 型電動轉轍機的拆卸與安裝以及機械動作原理等功能,必須要符合現場實際的邏輯順序。因此,要在交互式操作過程中添加邏輯順序判斷功能,使得整個交互過程具有動態性和邏輯控制性,因此使用C# 進行交互腳本進行相關開發和設計,實現對轉轍機模型的多角度展示,編寫C#的MouseView.cs 腳本實現鼠標滾輪縮放、旋轉、拖動等功能。S700K 型電動轉轍機三維仿真系統中轉轍機拆裝流程圖如圖6 所示。

圖6 系統中轉轍機拆裝流程圖
3.2.3 系統環境的交互設置
為了增加培訓教學的趣味性,使虛擬場景更加生動,該三維仿真系統設計了對虛擬環境的交互設置,其中包括模塊中的背景音樂、背景顏色及三維模型貼圖等。系統中的背景顏色的變化是通過改變相機的背景顏色屬性實現的,而背景貼圖是通過改變天空盒貼圖來實現的,在虛擬場景中提前添加音樂播放組件,實現了背景音效的播放與關閉。在整個程序中通過控制音樂播放組件的播放、停止或暫停,從而控制背景音效。
S700K 型電動轉轍機三維仿真培訓系統中,設計了培訓學員考核和參加比賽的功能。因此數據庫存儲參加考核和比賽人員信息、管理人員信息以及比賽結果等數據。本文利用SQL Serves 5.5 為數據的管理和開發基礎,以C# 腳本實現與Unity3D 中數據通信。例如:Unity3D 引擎中的參加比賽考核人員的基本信息在數據庫中都有對應的ID,并按照一定的分組形式在數據庫中以數組的形式存儲與讀取,方便系統快速讀取并將參加考核或者比賽人員的信息通過數據通信在Unity3D 交互界面實時顯示。
本三維模擬仿真培訓系統以Unity3D 自帶工具制作系統界面,其中理論教學模塊主要包括系統概述、結構分解、電路原理、機械原理四個模塊構成。以系統概述為例,該模塊主要為S700K 型電動轉轍機基本結構介紹、技術參數介紹等。結構分解模板塊為S700K 型電動轉轍機零部件設計對每個零部件單獨結構介紹和結構分解、組合功能,保持聯結器的單獨結構介紹和分解,如圖7 所示。

圖7 保持聯結器的單獨介紹和分解效果圖
S700K 型電動轉轍機仿真培訓系統,解決了傳統培訓教學過程中教學手法單一、現場實驗成本較高、部分設備不易拆卸等問題,而且為傳統培訓教學方式提供了新思路。本系統已經完成了成果轉化過程,形成了產品。該培訓系統已經應用到廣鐵集團衡陽電務段、包頭電務段、呼和職工培訓基地以及各鐵路局均有試用和應用,它提升了培訓人員業務素質,切實解決教學中理論與現場實踐、實操對接不暢問題。它開啟了新的培訓教學模式,為改革現有培訓教學與實驗教學模式提供新思路,不僅為推動鐵路科技創新、技術培訓、安全培訓提供了強有力的技術支撐,更為鐵路運輸安全和發展做出貢獻,創造巨大的經濟和社會效益。