謝天宇 吳馨 岳明奕
摘 要:針對工作人員對變壓器相關仿真操作培訓學習等相關方面的需求,基于Unity3D開發引擎,文章設計并實現了變壓器仿真操作虛擬培訓平臺的研究和開發,對變壓器的內部結構、拆裝和工作原理進行動態展示。該仿真培訓平臺采用C#腳本語言作為開發交互程序,通過SQL Sever進行數據管理與Unity 3D虛擬開發環境的交互操作實現虛擬變壓器模型的加載和各零部件的拆裝過程,交互性強,拆裝過程中動態展示效果好。
關鍵詞:變壓器仿真;Unity3D
中圖分類號:S126 文獻標識碼:A 文章編號:1006-8937(2015)14-0006-02
變電站的安全穩定運行對電力系統的供電可靠性具有重要的意義,由于電力系統的特殊性,不能依靠停運設備來培訓學員,近年發展迅速的虛擬現實技術得到了重視和研究。因此,一套新型的培訓模式對電力系統的安全運行具有重要的現實意義。
本文以變電站中最重要的設備變壓器為例,對虛擬仿真培訓過程進行研究。
1 Unity3D開發平臺
Unity3D有非常直觀的編輯環境,是一個全面整合的專業游戲開發引擎。Unity3D支持多種腳本開發語言,如C#、Javascript等,兼容多種操作系統,真正實現了跨平臺開發。
1.1 變壓器操作仿真培訓平臺設計開發流程
基于Unity3D的變壓器操作虛擬仿真展示平臺采用B/S結構,采用Unity3D的引擎開發統一接口展示框架,實現相關變壓器載入場景及交互式虛擬仿真展示。
1.2 數據管理
本文在深入分析仿真系統的基礎上,提出通過建立數據庫,以SQL數據庫數據為橋梁,并通過ODBC即Open DataBase Connection 數據驅動程序實現異構平臺間的數據共享和交互。平臺所需數據可分為如下幾類:基本信息數據、設備操作數據、設備異常信息數據和系統信息部分數據等。
2 變壓器仿真操作虛擬培訓平臺結構
根據仿真培訓系統的功能需求分析,確定仿真培訓系統的結構由應用層、數據層和界面層三部分組成。
①應用層:主要包括系統管理模塊、仿真操作模塊、數據庫管理模塊、圖形操作模塊等四大模塊。
②數據層:主要包括基本信息數據庫、設備操作數據庫、設備異常信息數據庫和系統信息部分數據庫等。
③界面層:界面層是人機互動的場所,用戶通過操作界面控制仿真培訓平臺的各項操作。
3 變壓器仿真操作虛擬培訓平臺的實現
根據變壓器仿真操作虛擬培訓平臺開發流程和變壓器仿真操作虛擬培訓平臺的結構,實現變壓器仿真培訓平臺。
3.1 變壓器仿真操作過程的三維建模仿真
3.1.1 Pro/E建模及裝配
通過Pro/E進行變壓器三維建模及裝配過程如下:
①研究分析就壓器實物或設計圖紙的結構,進行一些主要零部件的拆分操作。
②根據仿真平臺的設計思路,草繪零部件的特征,利用拉伸、陳列等操作添加附加特征完成零部件的整體制作,使用倒角、拔模等操作完成特征修飾。
③利用Pro/E裝配功能,進行組裝、零部件鏡像和陣列等操作,完成變壓器模型的裝配。
3.1.2 3DS Max模型圖形及動畫制作
為了使培訓人員得到更好的操作體驗,平臺采用3DS Max對模型進行圖形渲染,同時利用PhotoShop對圖形的材質進行處理,使圖形看起來更加逼真,提升3DS Max的渲染效果。變壓器內部繞組等不規則的零部件需要在3DS Max中進行建模,提升真實感。
3DS Max具有非常強大的三維動畫制作功能,使用它很容易在制作3D模型過程中實現變壓器的拆裝動畫,且沒有任何局限性。在3DS Max中,通過在各關鍵幀記錄相應零部件的位置關系來實現變壓器的拆裝動畫。
3.2 Unity3D虛擬仿真設計
3.2.1 虛擬場景設計
將通過3DS Max處理后的變壓器三維模型導入到Unity3D中,將模型添加到虛擬場景中,并對變壓器三維模型進行縮放、旋轉、移動和顯示隱藏等相關屬性設置。同時在場景中添加主攝像機或燈光等其他虛擬環境的必備元素,并進行相關屬性和主從關系的設置。
3.2.2 虛擬交互腳本設計
Unity3D支持多種語言腳本,本變壓器操作仿真培訓平臺采用C#進行交互腳本進行相關開發和設計。
為了實現對變壓器模型的多角度展示,編寫C#的Mouse View.cs腳本進行鼠標滾輪縮放和旋轉拖動的功能。
為了實現變壓器拆裝過程的展示,本研究編寫了Assemb-
leDisplay.cs腳本,并設置觸發按鈕,拆解和裝配動畫在3DS Max中已經進行動畫設計,觸動按鈕進行播放即可。
4 關鍵技術
4.1 場景建模
本研究采用多外部導入3D Max的方式進行場景的建模,將3D Max設計后的模型保存為.max模式,可以直接保存到Unity3D的項目文件夾中,導入的文件信息中包含物體的名稱材質、空間位置以及動畫等。
4.2 數據操作
數據操作是在本研究中的一個關鍵性問題,也是一大難點。因本文以SQL數據庫為數據的管理和開發基礎,以C#腳本進行交互技術編程,研究通過C#為橋梁實現SQL Sever 2008數據庫與Unity3D之間的數據通信。連接數據庫代碼如下:
using System.Data;
using System.Data.SqlClient;
public class DataTable:CheckData
{
SqlConnection connectionstring=new
SqlConnection(@“Sever=WWW-DA3749AB971\MYSQL;Da-
taBase=mydata;ui=sa;pwd=123456”);//連接數據庫
SqlCommand cmd=new SqlCommand();
cmd.Connection=connectionstring;
connectionstring.Open();//打開與數據庫的連接
............//具體操作部分
}
5 結 語
針對培訓人員在進行變壓器各零部件和工作原理認識和學習過程中的需求,本文基于Unity3D并結合3DS Max圖元動畫開發以及SQL Sever數據庫管理技術,設計并開發實現了變壓器仿真操作虛擬培訓平臺,該培訓平臺展示變壓器的動態操作效果好、逼真度高,對培訓人員了解變壓器的結構、學習變壓器相關原理具有重要的理論與實際意義。
參考文獻:
[1] 韓萬江,姜立新.系統工程與軟件工作[J].計算機應用,2010,(S1).
[2] 黃江.建立電力系統元件動態數據庫[J].電力學報,1997,(2).
[3] 龔慶武,姜芳芳,陳義飛.基于虛擬現實技術的變電站仿真培訓系統[J].電網技術,2005,(29).