盧緒迪,郭艷利
(1.中集海洋工程研究院有限公司,山東 煙臺(tái) 264670;2.魯東大學(xué) 蔚山船舶與海洋學(xué)院,山東 煙臺(tái) 264025)
海洋工程裝備主要指海洋資源(特別是海洋油氣資源)勘探、開(kāi)采、加工、儲(chǔ)運(yùn)、管理、后勤服務(wù)等方面的大型工程裝備和輔助裝備,一般分為海洋油氣資源開(kāi)發(fā)裝備、其他海洋資源開(kāi)發(fā)裝備、海洋浮體結(jié)構(gòu)物[1-3]。海洋工程裝備制造業(yè)涉及船舶與海洋工程、機(jī)械工程、通信工程、計(jì)算機(jī)科學(xué)與技術(shù)等多學(xué)科交叉融合,從技術(shù)到生產(chǎn)管理,單憑一己之力很難完成。我國(guó)海洋工程裝備制造業(yè)起步較晚,尤其在高端海洋工程裝備設(shè)計(jì)制造領(lǐng)域一系列關(guān)鍵技術(shù)難題亟待解決,但發(fā)展勢(shì)頭整體向好[4]。
海洋工程裝備具有定制性、復(fù)雜性與專(zhuān)業(yè)性:一方面,受場(chǎng)地和安全管理要求限制,在大型裝備交付之前,進(jìn)行石油平臺(tái)操作培訓(xùn)、安全演訓(xùn)時(shí)很難達(dá)到預(yù)期效果;另一方面,在向客戶(hù)進(jìn)行產(chǎn)品講解、用戶(hù)需求溝通及技術(shù)交流時(shí),對(duì)接待人員專(zhuān)業(yè)知識(shí)及溝通能力要求很高,交流時(shí)間長(zhǎng),且有時(shí)效果并不理想?,F(xiàn)如今,隨著虛擬現(xiàn)實(shí)技術(shù)的發(fā)展,越來(lái)越多的行業(yè)引入虛擬現(xiàn)實(shí)技術(shù)以提高溝通質(zhì)量、降低培訓(xùn)時(shí)間和人力成本、加強(qiáng)學(xué)習(xí)與理解深度[5-7]。針對(duì)海洋工程領(lǐng)域虛擬仿真系統(tǒng)的研究,2018年我國(guó)首個(gè)海洋工程數(shù)字化技術(shù)中心在天津正式建成,建立了海洋環(huán)境水力動(dòng)力學(xué)和海洋工程裝備模型[8];大連理工大學(xué)建立了基于DVS3D的流體與結(jié)構(gòu)耦合作用仿真實(shí)驗(yàn),構(gòu)建了常見(jiàn)的水力學(xué)現(xiàn)象和海洋工程結(jié)構(gòu)物[9]。青島科技大學(xué)采用Unity3D技術(shù)構(gòu)建了水下采油樹(shù)操作培訓(xùn)仿真系統(tǒng),實(shí)現(xiàn)了生產(chǎn)通道內(nèi)的可視化模擬[10]。虛擬現(xiàn)實(shí)技術(shù)在船舶與海洋工程領(lǐng)域得到了廣泛應(yīng)用,但是針對(duì)自升式海洋平臺(tái)的虛擬仿真系統(tǒng)鮮有報(bào)道[11-12]。
自升式海洋平臺(tái)在海洋油氣開(kāi)發(fā)中不可或缺,且正朝著適用水深更深和大型化趨勢(shì)發(fā)展,但其操作培訓(xùn)、安全演練和客戶(hù)體驗(yàn)等存在高風(fēng)險(xiǎn)、高成本等特點(diǎn)[13]。為此,本文以TAISUN200B自升式海洋平臺(tái)為基礎(chǔ),采用Unity3D軟件和交互式技術(shù),開(kāi)發(fā)一種新型的多用途自升式海洋平臺(tái)虛擬現(xiàn)實(shí)系統(tǒng),并實(shí)現(xiàn)特色功能演練、在線維護(hù),降低了開(kāi)發(fā)成本和工作量,為海洋平臺(tái)操作與安全演練、用戶(hù)需求溝通和技術(shù)交流提供高效、安全的解決方案。
自升式海洋平臺(tái)虛擬現(xiàn)實(shí)系統(tǒng)以TAISUN200B自升式海洋平臺(tái)基礎(chǔ)參數(shù)為支撐,基于Unity3D和VR技術(shù)開(kāi)發(fā),主要功能是實(shí)現(xiàn)平臺(tái)漫游、模擬操作、故障處置及安全演練等。系統(tǒng)構(gòu)架見(jiàn)圖1,包括前端和后端2大部分:前端為虛擬現(xiàn)實(shí)交互環(huán)境,主要包括自主漫游、模擬操作、原理展示、故障仿真、災(zāi)害處置等模塊;后端主要包括平臺(tái)庫(kù)、組件庫(kù)、邏輯庫(kù)和特效庫(kù)等數(shù)據(jù)庫(kù)。本系統(tǒng)通過(guò)后端數(shù)據(jù)庫(kù)調(diào)用,完成平臺(tái)模型拼接、作業(yè)場(chǎng)景部署、器件動(dòng)作邏輯調(diào)用和設(shè)備運(yùn)行邏輯調(diào)用等系統(tǒng)初始化。
圖1 TAISUN200B自升式海洋平臺(tái)虛擬現(xiàn)實(shí)系統(tǒng)構(gòu)架
自升式海洋平臺(tái)的模塊組成、設(shè)備運(yùn)行、作業(yè)場(chǎng)景等參數(shù)冗雜,對(duì)這些參數(shù)進(jìn)行篩選和分類(lèi)是建設(shè)本系統(tǒng)的基礎(chǔ)和關(guān)鍵技術(shù)之一。對(duì)TAISUN200B自升式海洋平臺(tái)虛擬現(xiàn)實(shí)系統(tǒng)在開(kāi)發(fā)過(guò)程中所需的模型基礎(chǔ)數(shù)據(jù)劃分為模型組件、作業(yè)邏輯和情景特效等3類(lèi),針對(duì)每一類(lèi)數(shù)據(jù)又進(jìn)行了詳細(xì)劃分和設(shè)計(jì)。
為實(shí)現(xiàn)虛擬環(huán)境的高度還原,如模型組件等,在進(jìn)行3D建模時(shí)需要根據(jù)功能要求、渲染等級(jí)、實(shí)現(xiàn)效果等采用分級(jí)處理,然后建立AutoDesk 3D Max模型輕量化及FBX模型導(dǎo)出規(guī)則和Assetbunle模型文件制作標(biāo)準(zhǔn)。標(biāo)準(zhǔn)包含的模型分為設(shè)備基本模型、房間門(mén)模型、設(shè)備碰撞模型、設(shè)備部署目標(biāo)模型、預(yù)置視點(diǎn)模型、攀爬跳轉(zhuǎn)節(jié)點(diǎn)模型、事件部署目標(biāo)模型等。本文以事件部署目標(biāo)模型制作標(biāo)準(zhǔn)為例進(jìn)行具體說(shuō)明。
事件部署目標(biāo)模型中包含若干的空物體,每個(gè)空物體都代表有一個(gè)位置用于在場(chǎng)景中部署災(zāi)害等事件。該模型的建立須遵循以下標(biāo)準(zhǔn):
(1)事件部署目標(biāo)模型的父級(jí)位置和軸向應(yīng)與該設(shè)備模型完全一致。
(2)事件部署目標(biāo)模型中空物體的軸向需與即將部署的設(shè)備或事件對(duì)象軸向一致。
(3)模型須有唯一父級(jí)物體,導(dǎo)出FBX命名規(guī)則:設(shè)備名稱(chēng)_Special。
(4)個(gè)體預(yù)置視點(diǎn)模型命名規(guī)則: Special_節(jié)點(diǎn)編號(hào)(3位數(shù),不足3位補(bǔ)0,如001)。
(5)父級(jí)物體中心位置與軸向和設(shè)備基本模型保持一致。
為有效存儲(chǔ)數(shù)據(jù)和滿(mǎn)足應(yīng)用需求,必須構(gòu)造最優(yōu)的數(shù)據(jù)庫(kù)模式,建立數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng)。本系統(tǒng)以主要功能實(shí)現(xiàn)為導(dǎo)向,以構(gòu)建的模型數(shù)據(jù)為基礎(chǔ),在系統(tǒng)后端部分建立組件庫(kù)、邏輯庫(kù)、特效庫(kù)和平臺(tái)庫(kù)等4類(lèi)數(shù)據(jù)庫(kù),對(duì)每一類(lèi)數(shù)據(jù)庫(kù)包含的內(nèi)容進(jìn)行詳細(xì)設(shè)計(jì),見(jiàn)表1。
表1 數(shù)據(jù)庫(kù)內(nèi)容設(shè)計(jì)
同時(shí),進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)還要建立統(tǒng)一的CFG配置文件編寫(xiě)規(guī)則,這些文件編寫(xiě)規(guī)則主要包括設(shè)備部署配置文件、器件動(dòng)作配置文件、互動(dòng)邏輯配置文件、事件管理配置文件、事件器件狀態(tài)初始化配置文件、事件執(zhí)行邏輯文件、Script文件下的機(jī)械動(dòng)作腳本文件等。
本系統(tǒng)主要功能包括平臺(tái)漫游、模擬操作、故障處置、安全演練及在線維護(hù)。具體原則如下:
(1)平臺(tái)漫游:用戶(hù)以第三人稱(chēng)視角全局俯瞰整個(gè)石油平臺(tái)外觀;以第一人稱(chēng)視角在石油平臺(tái)甲板及內(nèi)部工作區(qū)域漫游。
(2)模擬操作:用戶(hù)對(duì)設(shè)備器件進(jìn)行操作,反饋儀表顯示狀態(tài)及設(shè)備機(jī)構(gòu)運(yùn)行狀態(tài),驅(qū)動(dòng)對(duì)應(yīng)設(shè)備模型運(yùn)行。
(3)故障處置:功能開(kāi)始執(zhí)行時(shí),用戶(hù)需配置模擬的故障;系統(tǒng)根據(jù)故障表現(xiàn)配置三維模型及后臺(tái)狀態(tài)初始化,再根據(jù)用戶(hù)處理故障操作,對(duì)比故障處理流程,逐步反饋故障排查或處理操作后設(shè)備對(duì)應(yīng)狀態(tài),最終接觸故障狀態(tài)。
(4)安全演練:功能開(kāi)始執(zhí)行時(shí),用戶(hù)在平面圖中任意點(diǎn)部署災(zāi)情發(fā)生位置及大小級(jí)別,再根據(jù)災(zāi)情狀況,用戶(hù)進(jìn)行災(zāi)害處置或緊急逃生。用戶(hù)在火災(zāi)部署后可實(shí)現(xiàn)如下動(dòng)作:以第三人稱(chēng)或監(jiān)控設(shè)備視角觀看自動(dòng)消防設(shè)備針對(duì)火災(zāi)進(jìn)行滅火;以第一人稱(chēng)視角前往級(jí)別較低火警現(xiàn)場(chǎng),通過(guò)消防節(jié)點(diǎn)獲取消防設(shè)備進(jìn)行滅火;在火警級(jí)別較高時(shí),用戶(hù)以第一人稱(chēng)視角根據(jù)火情逃生自救。
(5)在線維護(hù):通過(guò)平臺(tái)式可自定義功能邏輯系統(tǒng)實(shí)現(xiàn)功能更新和維護(hù),根據(jù)系統(tǒng)提供的設(shè)備部署、互動(dòng)邏輯、器件動(dòng)作、事件執(zhí)行邏輯、機(jī)械動(dòng)作腳本等配置文件編寫(xiě)規(guī)則,將擴(kuò)展內(nèi)容創(chuàng)建為標(biāo)準(zhǔn)配置文件并添加至指定的資源文件夾實(shí)現(xiàn)在線維護(hù)。用戶(hù)可擴(kuò)展資源文件結(jié)構(gòu)見(jiàn)圖2。
圖2 用戶(hù)可擴(kuò)展資源文件結(jié)構(gòu)圖
本系統(tǒng)初始場(chǎng)景可自行配置,包括不同時(shí)段海洋環(huán)境、不同主體船型及海洋波浪強(qiáng)度等,場(chǎng)景加載以后即可進(jìn)行平臺(tái)漫游、模擬操作、故障處置及安全演練等功能演練;通過(guò)平臺(tái)式可自定義功能邏輯系統(tǒng)進(jìn)行系統(tǒng)資源創(chuàng)建,從而實(shí)現(xiàn)系統(tǒng)在線維護(hù)和功能更新。
3.1.1 系統(tǒng)初始化
系統(tǒng)初始化為整個(gè)系統(tǒng)的基礎(chǔ)功能,是實(shí)現(xiàn)各個(gè)功能模塊的基礎(chǔ),其主要功能是通過(guò)調(diào)用數(shù)據(jù)庫(kù)中的配置文件及模型文件,動(dòng)態(tài)組建石油平臺(tái),并為其賦予基本交互功能和運(yùn)行邏輯。系統(tǒng)初始化內(nèi)容包括平臺(tái)模型拼裝、作業(yè)場(chǎng)景部署、器件動(dòng)作邏輯調(diào)用和設(shè)備聯(lián)動(dòng)邏輯調(diào)用等,具體如下:
(1)平臺(tái)模型拼裝:用戶(hù)選擇石油平臺(tái)后,依據(jù)數(shù)據(jù)庫(kù)中的裝配參數(shù),調(diào)用相關(guān)各項(xiàng)模型部署位置及設(shè)置附屬關(guān)系。
(2)作業(yè)場(chǎng)景部署:將組裝好的石油平臺(tái)部署在作業(yè)場(chǎng)景模型中,并根據(jù)作業(yè)場(chǎng)景初始化石油平臺(tái)狀態(tài)。
(3)器件動(dòng)作邏輯調(diào)用:調(diào)用器件動(dòng)作邏輯,為設(shè)備的可操作器件設(shè)置執(zhí)行邏輯,并進(jìn)行檔位狀態(tài)初始化。
(4)設(shè)備聯(lián)動(dòng)邏輯調(diào)用:根據(jù)設(shè)備運(yùn)行邏輯,將各設(shè)備之間數(shù)據(jù)輸入輸出建立映射接口,并初始化設(shè)備機(jī)構(gòu)狀態(tài)。
3.1.2 系統(tǒng)維護(hù)
本系統(tǒng)通過(guò)平臺(tái)式可自定義功能邏輯系統(tǒng)實(shí)現(xiàn)功能更新和維護(hù)。在本案例中,首先根據(jù)系統(tǒng)提供的Assetbunle模型文件制作流程和制作標(biāo)準(zhǔn)、CFG配置文件編寫(xiě)規(guī)則及器件類(lèi)型說(shuō)明等文件要求,創(chuàng)建設(shè)備基本模型和設(shè)備碰撞模型,并導(dǎo)出為Assetbundle標(biāo)準(zhǔn)模型,最后將其配置為資源,由此即可完成吊車(chē)控制臺(tái)功能的添加。
增加吊車(chē)控制臺(tái)功能后,進(jìn)入第一人稱(chēng)視角,在直升機(jī)平臺(tái)上會(huì)看到自定義創(chuàng)建的控制臺(tái);右鍵點(diǎn)擊控制臺(tái)上的按鈕,彈出Rotate選項(xiàng),選中后平臺(tái)左側(cè)吊車(chē)會(huì)進(jìn)行旋轉(zhuǎn);再次右鍵點(diǎn)擊控制臺(tái)上按鈕,彈出Pause選項(xiàng),選中后左側(cè)吊車(chē)停止旋轉(zhuǎn)。
本系統(tǒng)既可以第三人稱(chēng)視角全局俯瞰整個(gè)石油平臺(tái)外觀,也可以第一人稱(chēng)視角在石油平臺(tái)甲板、內(nèi)部工作區(qū)域及生活區(qū)域漫游,實(shí)現(xiàn)對(duì)平臺(tái)結(jié)構(gòu)設(shè)計(jì)和外觀的整體感官印象。
本系統(tǒng)以第一人稱(chēng)視角模擬操作員對(duì)石油平臺(tái)機(jī)械、設(shè)備及相關(guān)器件的操作,并根據(jù)數(shù)據(jù)庫(kù)中存儲(chǔ)的設(shè)備動(dòng)作邏輯和運(yùn)行邏輯,同步儀表屏幕顯示、機(jī)械設(shè)備器運(yùn)行。
本系統(tǒng)通過(guò)選擇數(shù)據(jù)庫(kù)中存儲(chǔ)的故障并注入到當(dāng)前石油平臺(tái)運(yùn)行系統(tǒng)中,模擬石油平臺(tái)故障狀態(tài),再以第一人稱(chēng)視角模擬操作平臺(tái)升降系統(tǒng),排查平臺(tái)故障原因,合理處置。
本系統(tǒng)通過(guò)對(duì)平臺(tái)平面圖的操作,設(shè)置火災(zāi)位置,可模擬平臺(tái)消防系統(tǒng)自動(dòng)運(yùn)作、人員前往消防節(jié)點(diǎn)實(shí)施消防動(dòng)作及人員通過(guò)安全通道逃生。
(1)基于Unity3D的自升式海洋平臺(tái)虛擬現(xiàn)實(shí)系統(tǒng)以TAISUN200B自升式海洋平臺(tái)數(shù)據(jù)為基礎(chǔ),提取模型組件、作業(yè)邏輯和情景特效3類(lèi)數(shù)據(jù),構(gòu)建了組件庫(kù)、邏輯庫(kù)、特效庫(kù)及平臺(tái)庫(kù)等系列數(shù)據(jù)庫(kù);通過(guò)調(diào)用該數(shù)據(jù)庫(kù),可驅(qū)動(dòng)平臺(tái)漫游、模擬操作、故障處置及安全演練4個(gè)功能模塊。
(2)系統(tǒng)實(shí)現(xiàn)了TAISUN200B自升式海洋平臺(tái)第三人稱(chēng)視角的全局俯瞰和第一視角局部的漫游;并能夠在第一人稱(chēng)視角下對(duì)石油平臺(tái)機(jī)械、設(shè)備及相關(guān)器件進(jìn)行操作,沉浸式模擬鉆井平臺(tái)升降操作過(guò)程;還可以模擬平臺(tái)自動(dòng)處置系統(tǒng)運(yùn)作、人員應(yīng)急處置流程及棄船逃生規(guī)程;同時(shí),能夠通過(guò)規(guī)范模型、配置腳本文件進(jìn)行系統(tǒng)維護(hù),從而降低工作量和開(kāi)發(fā)成本,并且為海洋工程裝備展示、用戶(hù)需求溝通及技術(shù)交流提供安全、高效的解決方案。