李繁榮 (慶新油田開發有限責任公司,黑龍江 安達151413)
近年來,隨著計算機和網絡技術的飛速發展,虛擬現實仿真技術在石油化工、電力和城市規劃等領域得到了廣泛的應用[1-4]。該技術不但具有直觀的整體和細節表現能力,而且能夠實現各種硬件設備與三維場景的實時交互功能,其中中視典公司發布的VRP虛擬現實軟件以其簡潔易用和中文腳本編程等特點受到國內業界的廣泛關注[5]。
大慶油田慶新油田有限責任公司自2010年以來,大力開展數字化油田建設并取得顯著成果,油田生產運行管理水平和工藝設備的智能化程度得到全面提升,這給油田技術人才培養和崗位培訓工作提出了全新要求。因此,基于VRP虛擬現實技術的數字化油田崗位仿真培訓系統 (簡稱仿真培訓系統)的開發成為必然趨勢。在仿真培訓系統的開發過程中,如何實現VRP與數據庫交互是系統開發人員感到棘手的一個問題。下面,筆者結合仿真培訓系統的開發過程,著重探討VRP訪問SQL Server數據庫技術的實現方法。

圖1 虛擬仿真系統的功能結構圖
根據油田石油開采和集輸崗位培訓的要求,虛擬仿真系統應具備工藝覆蓋全面性、操作流程準確性、仿真場景真實性、系統交互實時性等特點。另外,還要兼顧正常流程操作和事故應急操作,實現原油集輸工藝過程的全方位仿真模擬。虛擬仿真系統的功能結構圖如圖1所示,具體功能要求可以歸納為以下幾個方面:①建立三維模型清晰描述原油集輸各生產設備結構原理,真實反映設備內部器件構造以及器件間相互作用機理;②借助聲音、圖像、動畫、文字等信息手段準確描繪原油集輸各生產環節工藝流程、技術操作和安全事項;③建立虛擬現實場景,虛擬真實生產設備和流程;④建立正常生產操作和事故應急操作任務庫,模擬真實系統存在的各種生產和應急操作,并能根據學員的操作過程進行智能判識。⑤建立交互功能良好的用戶操作界面,利用數據庫技術實現用戶登錄和設備信息管理。
為了實現虛擬仿真系統用戶登錄管理和設備信息查詢功能,必須建立數據庫對相應信息進行存儲和管理,由于VRP與SQL Server數據庫兼容性較好,因此在系統設計中使用SQL Server數據庫進行數據存儲。在VRP編輯器中,訪問SQL Server數據庫的常用方法包括利用lua文件訪問和利用VRP數據庫工具訪問。

圖2 VRP加載lua文件腳本
lua是一個小巧的腳本語言,由標準C編寫而成,代碼簡潔優美,幾乎在所有操作系統和平臺上都可以編譯和運行[6]。該語言能嵌入應用程序中,為應用程序提供靈活的擴展和定制功能。在VRP訪問數據庫應用中,需要先編寫lua腳本文件,然后在VRP腳本編輯器中加載lua文件即可,VRP腳本編輯器加載lua文件腳本如圖2所示。
VRP編輯器支持數據庫訪問,內部集成了數據庫工具,當前Vision 11.0版本支持ACCESS、Oracle、SQL Server以及 MySQL數據庫的連接與訪問。在VRP編輯器數據庫工具欄下,設有“連接數據庫”、“關聯操作”和“搜索查詢”3個選項卡,分別負責數據庫連接、虛擬對象與數據庫的關聯操作和數據庫查詢功能的實現。

圖3 虛擬仿真系統登錄界面
系統登錄界面主要用于學員登錄權限信息的查詢和管理,保障系統的安全性和使用范圍 (見圖3)。下面主要介紹基于lua語言的數據庫訪問腳本的編寫過程。
登錄程序主要由數據庫連接子程序、初始化子程序、用戶登錄子程序、用戶注冊子程序和數據庫關閉子程序構成。數據庫連接和關閉子程序主要用于數據庫的連接、數據表的打開、存儲數據的提交以及數據庫的關閉;初始化子程序主要完成變量及其類型的定義和賦值;用戶登錄子程序用于獲取用戶輸入的“用戶名”和“密碼”數據,并將該數據與數據庫內存儲的注冊數據進行比較,如果與注冊數據一致則系統轉入歡迎界面,否則提示錯誤用戶信息;用戶注冊子程序將用戶在文本輸入框中輸入的“用戶名”和“密碼”數據存儲在SQL Sever數據庫中并形成數據列表,作為用戶再次登錄的權限信息。

圖4 虛擬設備功能描述數據庫工具設置
在虛擬仿真系統設計中,為實現與三維仿真設備部件有關的功能信息描述和賦值等操作,可以通過VRP數據庫工具連接SQL Server數據庫,并進行關聯操作。下面以減速箱為例說明具體設計過程。
1)數據庫連接 打開 [數據庫]面板,在 [連接數據庫]面板下選擇數據庫類型為 [SQL Server],然后單擊 [設置]按鈕,在彈出的面板中輸入數據庫服務器地址與數據庫名稱,輸入數據庫的 [用戶]和 [密碼],接著點擊 [連接數據庫]按鈕,將當前的數據庫進行連接。檢查數據庫的連接狀態是否成功,如果連接成功,數據庫連接狀態會更新,并顯示當前連接的數據庫和連接狀態。連接成功后,單擊[顯示數據]按鈕,可以顯示數據庫記錄信息。在 [連接數據庫]面板下面,勾選 [保存登錄信息到vrp文件]選項和勾選 [下次打開場景自動連接數據庫]選項。數據庫連接界面如圖4(a)所示。
2)關聯操作設置 關聯操作目的是將數據庫記錄和VRP對象建立起聯系,建立起聯系以后,點擊場景中的對象,就能根據關聯信息查詢到對應的數據庫記錄。VRP中數據庫關聯操作設置如圖4(b)所示。
選擇減速箱模型,單擊 [記錄列表]按鈕,在彈出的數據庫記錄中,選擇相應的記錄。然后單擊 [新建關聯]按鈕,完成模型與數據庫的關聯,關聯操作設置完成,列表中會列出當前已經添加的關聯。點擊快捷鍵F5,預覽添加數據庫后的效果圖如圖5所示。

圖5 模型添加數據庫后信息顯示效果圖
針對仿真培訓系統的開發過程中VRP與數據庫交互的問題,提出了VRP訪問SQL Server數據庫的方法。應用實例分析表明,采用VRP訪問SQL Server數據庫的方法是可行的,能夠提高仿真培訓系統設計的靈活性和可擴展性。
[1]朱巖,鮑泓,張姝,等 .場景三維仿真漫游系統設計與實現 [J].2010,24(4):7-11.
[2]張永翔,段少輝,楊衛東,等 .深圳供電局變電培訓仿真系統 [J].電網技術,2000,24(1):16-18.
[3]張東英,葛亮,楊以涵,等.500kV綜合自動化變電站仿真培訓系統的實現 [J].電網技術,2001,25(6):64-67.
[4]唐小惠,楊濤 .基于虛擬現實技術的變電站檢修系統研究與設計 [J].農業科技與裝備,2011(12):40-42.
[5]羅陸鋒,鄒湘軍,劉天湖,等 .大數據量虛擬景觀的三維模型優化與漫游 [J].系統仿真學報,2009,21(6):1654-1657.
[6]曹彤 .虛擬博物館的三維場景構造及交互漫游實現 [J].計算機工程與設計,2007,28(2):6006-6011.