国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Unity3D虛擬現(xiàn)實(shí)技術(shù)在機(jī)艙資源管理模擬器開(kāi)發(fā)中的應(yīng)用

2015-11-29 01:02蔣德志姚文龍張均東青島遠(yuǎn)洋船員職業(yè)學(xué)院機(jī)電系山東青島6607大連海事大學(xué)輪機(jī)工程學(xué)院遼寧大連606
中國(guó)航海 2015年3期
關(guān)鍵詞:輪機(jī)機(jī)艙模擬器

蔣德志, 姚文龍,, 張均東(. 青島遠(yuǎn)洋船員職業(yè)學(xué)院 機(jī)電系,山東 青島 6607;. 大連海事大學(xué) 輪機(jī)工程學(xué)院,遼寧 大連 606)

Unity3D虛擬現(xiàn)實(shí)技術(shù)在機(jī)艙資源管理模擬器開(kāi)發(fā)中的應(yīng)用

蔣德志1, 姚文龍1,2, 張均東2
(1. 青島遠(yuǎn)洋船員職業(yè)學(xué)院 機(jī)電系,山東 青島 266071;2. 大連海事大學(xué) 輪機(jī)工程學(xué)院,遼寧 大連 116026)

針對(duì)目前機(jī)艙資源管理訓(xùn)練平臺(tái)在高逼真度和強(qiáng)交互性等方面存在的不足,提出一種基于Unity3D平臺(tái)的遠(yuǎn)程可交互式機(jī)艙資源管理模擬器的實(shí)現(xiàn)方法。首先,基于3dsMax/Unity3D的虛擬現(xiàn)實(shí)技術(shù),闡述機(jī)艙資源管理模擬器的總體設(shè)計(jì)方案;其次,介紹Unity3D程序的開(kāi)發(fā)流程和關(guān)鍵技術(shù);最后,在應(yīng)用3dsMax對(duì)超大型油船機(jī)艙設(shè)備進(jìn)行三維建模的基礎(chǔ)上,對(duì)應(yīng)用Unity3D工具包實(shí)現(xiàn)虛擬場(chǎng)景的動(dòng)態(tài)交互技術(shù)進(jìn)行研究,實(shí)現(xiàn)三維船舶模型數(shù)據(jù)與二維模型數(shù)據(jù)的整合、碰撞檢測(cè)和三維機(jī)艙虛擬漫游等。采用實(shí)船數(shù)據(jù)對(duì)該模型器進(jìn)行仿真應(yīng)用,結(jié)果表明:所開(kāi)發(fā)的系統(tǒng)能很好地滿足機(jī)艙資源管理訓(xùn)練的各項(xiàng)指標(biāo)要求,且實(shí)現(xiàn)效率較高。

船舶工程;機(jī)艙資源管理;模擬器;Unity3D;虛擬現(xiàn)實(shí);交互設(shè)計(jì)

近年來(lái),國(guó)內(nèi)外有關(guān)輪機(jī)模擬器的研究已取得較大進(jìn)展。國(guó)外方面,挪威的KONGSBERG公司、英國(guó)的TRANSAS公司和波蘭的UNITEST公司等均已開(kāi)發(fā)出多種基于虛擬現(xiàn)實(shí)技術(shù)的輪機(jī)模擬器,但其系統(tǒng)僅限于設(shè)備操作技能訓(xùn)練,且采用被動(dòng)式漫游,缺乏沉浸感。國(guó)內(nèi)方面,大連海事大學(xué)、上海海事大學(xué)、武漢理工大學(xué)和集美大學(xué)等科研院校[1-4]近年來(lái)也已在該領(lǐng)域的研究方面取得較大進(jìn)展,但是現(xiàn)有輪機(jī)模擬器的主要功能是操作技能訓(xùn)練,不具備STCW公約(International Convention on Standards of Training, Certification and Watchkeeping for Seafarers)馬尼拉修正案中關(guān)于資源管理所要求的團(tuán)隊(duì)協(xié)作訓(xùn)練、情景意識(shí)訓(xùn)練、通信與溝通訓(xùn)練以及應(yīng)急訓(xùn)練等功能,不能滿足機(jī)艙資源管理操作評(píng)估的需要。[5-6]因此,研制機(jī)艙資源管理模擬器顯得尤為重要。這里提出一種基于3dsMax和Unity3D的機(jī)艙資源管理模擬器的設(shè)計(jì)思路,提供多人在線或遠(yuǎn)程交互式訓(xùn)練功能。

Unity3D是近幾年剛發(fā)展起來(lái)的一種性能卓越的開(kāi)源三維虛擬現(xiàn)實(shí)開(kāi)發(fā)平臺(tái),不僅能整合其他軟件平臺(tái)提供的資源,而且具有強(qiáng)大的計(jì)算機(jī)程序編譯能力。Unity3D類似于Director, Blender Game Engine和Virtools等圖型化開(kāi)發(fā)軟件,其編輯器可在 Windows 和 Mac OS 環(huán)境下運(yùn)行,且支持各種腳本語(yǔ)言(包括Javascript,C#和Python)。許多高級(jí)語(yǔ)言都提供了與Unity3D的接口[7],這使得其能適應(yīng)于不同的應(yīng)用領(lǐng)域。

1 機(jī)艙資源管理模擬器總體設(shè)計(jì)

利用虛擬現(xiàn)實(shí)技術(shù),結(jié)合機(jī)艙資源管理訓(xùn)練內(nèi)容,以30萬(wàn)噸級(jí)超大型油船(Very Large Crude Carrier,VLCC)“遠(yuǎn)興湖號(hào)”為母型船,建立VLCC機(jī)艙三維實(shí)體模型。通過(guò)制定不同的任務(wù),使輪機(jī)人員明確各自在不同任務(wù)中的職責(zé),有效利用船舶機(jī)艙現(xiàn)有的機(jī)械動(dòng)力設(shè)備和安全設(shè)備,發(fā)揮個(gè)人在團(tuán)隊(duì)工作中的作用,從而嚴(yán)格、有條不紊地完成相關(guān)工作,體現(xiàn)團(tuán)隊(duì)成員在資源管理方面的技能,保證船舶安全航行,減少或避免潛在人為事故發(fā)生。[8]

該機(jī)艙資源管理模擬器除了具備傳統(tǒng)輪機(jī)模擬器的操作功能以外,還具備情境意識(shí)訓(xùn)練、通信與溝通訓(xùn)練、團(tuán)隊(duì)協(xié)作訓(xùn)練以及應(yīng)急訓(xùn)練等功能。其從總體功能上可分為值班人員的單人和多人協(xié)同訓(xùn)練模塊、遠(yuǎn)程可視化交互控制模塊以及教練員管理與在線培訓(xùn)模塊等三大模塊,各模塊功能設(shè)計(jì)如下。

1.1值班人員的單人和多人協(xié)同訓(xùn)練模塊

機(jī)艙資源管理強(qiáng)調(diào)的是值班人員在團(tuán)隊(duì)與團(tuán)隊(duì)協(xié)作、通信與溝通、領(lǐng)導(dǎo)與決策以及情景意識(shí)的培養(yǎng)與保持等方面的管理技能,因此所設(shè)計(jì)的機(jī)艙資源管理模擬器應(yīng)具有足夠逼真的三維操作模型,使學(xué)員真正感受到船舶的實(shí)際環(huán)境,更好地學(xué)習(xí)機(jī)艙資源管理所要求的技能。[9]此外,其還應(yīng)具備傳統(tǒng)輪機(jī)模擬器所包含的三維模型,如:船體、機(jī)艙總覽、主推進(jìn)裝置及其推進(jìn)系統(tǒng)、發(fā)電柴油機(jī)、自動(dòng)化電站系統(tǒng)、應(yīng)急發(fā)電機(jī)間、集控臺(tái)、駕駛臺(tái)、機(jī)旁操縱臺(tái)、舵機(jī)系統(tǒng)、鍋爐蒸汽系統(tǒng)、壓載水系統(tǒng)、火災(zāi)報(bào)警和滅火系統(tǒng)(包括二氧化碳系統(tǒng))、艙底水系統(tǒng)、燃油柜系統(tǒng)(包括燃料柜、沉淀柜和日用柜)、滑油柜系統(tǒng)(包括儲(chǔ)存柜和沉淀柜)、空氣系統(tǒng)以及冷卻水系統(tǒng)等。

在多人協(xié)作完成機(jī)艙各種應(yīng)急處理演練時(shí),重點(diǎn)考察值班人員對(duì)操作規(guī)程的熟練程度和執(zhí)行程度以及與其他同事的配合能力、團(tuán)隊(duì)協(xié)作精神。因此,所設(shè)計(jì)的機(jī)艙資源管理模擬器應(yīng)能實(shí)現(xiàn)機(jī)艙進(jìn)水時(shí)船舶吃水和橫傾變化的檢測(cè)以及設(shè)備的自動(dòng)啟停、機(jī)艙失火和全船失電的應(yīng)急處理等內(nèi)容的訓(xùn)練,并能使學(xué)員以虛擬身份登陸模擬器,自主操控虛擬角色完成機(jī)艙應(yīng)急處理演練規(guī)則規(guī)定的各項(xiàng)操作,如同親臨應(yīng)急處理現(xiàn)場(chǎng)一樣。未能參演的崗位,系統(tǒng)以機(jī)器人(NPC)代替,可進(jìn)行應(yīng)急處理知識(shí)考核,提高輪機(jī)人員的應(yīng)急處理水平。該部分功能是傳統(tǒng)輪機(jī)模擬器所不具備的。

按照上述任務(wù)需求,該模塊能實(shí)現(xiàn)以下3種操作訓(xùn)練。

1) 基本操作訓(xùn)練:能完成類似于傳統(tǒng)輪機(jī)模擬器的癱船啟動(dòng)、機(jī)艙備車準(zhǔn)備、港內(nèi)機(jī)動(dòng)航行、海上定速航行、機(jī)艙完車準(zhǔn)備、輔鍋爐操作、分油機(jī)操作、應(yīng)急操作以及特殊工況航行等。

2) 高級(jí)操作訓(xùn)練:能完成類似于傳統(tǒng)輪機(jī)模擬器的主機(jī)遙控系統(tǒng)的參數(shù)查詢和修改、特殊工況下控制模式的選擇以及系統(tǒng)內(nèi)故障排除評(píng)估等。

3) 管理技能訓(xùn)練:能完成傳統(tǒng)輪機(jī)模擬器所欠缺的通信與溝通、常規(guī)工況及應(yīng)急情況下輪機(jī)長(zhǎng)和輪機(jī)員之間的協(xié)調(diào)與配合等。

1.2遠(yuǎn)程可視化交互控制模塊

對(duì)于可遠(yuǎn)程交互式機(jī)艙資源管理模擬器的實(shí)現(xiàn),采用基于B/S模式的TCP/IP結(jié)構(gòu)。該結(jié)構(gòu)是一個(gè)開(kāi)放的、可在線調(diào)試和實(shí)時(shí)運(yùn)行的模塊化建模環(huán)境,用戶通過(guò)IE等主流瀏覽器便可瀏覽三維場(chǎng)景;其模型的建立、調(diào)試、試驗(yàn)和運(yùn)行結(jié)果顯示都在客戶端進(jìn)行。通過(guò)網(wǎng)絡(luò)傳輸反映三維場(chǎng)景的模型文件,用戶可根據(jù)需要將相應(yīng)的模型文件下載到本地后由對(duì)應(yīng)的瀏覽器插件來(lái)提供對(duì)模型文件的動(dòng)態(tài)顯示和實(shí)時(shí)渲染。若用戶與三維虛擬場(chǎng)景發(fā)生了交互作用,則服務(wù)器會(huì)根據(jù)用戶的請(qǐng)求繼續(xù)提供其他局部或不同視點(diǎn)的模型文件,由此實(shí)現(xiàn)基于網(wǎng)頁(yè)的多人在線團(tuán)隊(duì)分工合作訓(xùn)練,例如組成團(tuán)隊(duì)來(lái)完成主機(jī)備車、值班小組的航行值班、機(jī)艙與駕駛臺(tái)的聯(lián)絡(luò)、PSC模擬推演及其他應(yīng)急處理演練等。

1.3教練員管理與在線培訓(xùn)模塊

教練員管理與在線培訓(xùn)模塊主要用于教員對(duì)模擬器進(jìn)行管理和教學(xué)演示,可實(shí)現(xiàn)初始訓(xùn)練環(huán)境設(shè)置,訓(xùn)練過(guò)程控制,故障和工況設(shè)置,系統(tǒng)投入和解除控制,運(yùn)行狀態(tài)監(jiān)視、記錄和打印,教學(xué)對(duì)話,訓(xùn)練過(guò)程記錄、考核和評(píng)估,實(shí)操評(píng)分及成績(jī)單打印等功能。此外,關(guān)于機(jī)艙資源管理培訓(xùn)的相關(guān)資料(如應(yīng)急視頻、圖片、文字和規(guī)章制度等)都可嵌入三維場(chǎng)景供學(xué)員學(xué)習(xí)。其具體實(shí)現(xiàn)的功能如下。

1) 啟/??刂乒δ?,包括加電集體啟動(dòng)、密碼輸入、直接進(jìn)入“模擬器”界面、IP地址設(shè)置以及各仿真子系統(tǒng)準(zhǔn)備狀況監(jiān)視等。

2) 運(yùn)行模式設(shè)置功能,包括全部學(xué)員對(duì)同艘船舶進(jìn)行全船操作訓(xùn)練、學(xué)員對(duì)分系統(tǒng)進(jìn)行局部操作訓(xùn)練、凍結(jié)和運(yùn)行控制以及聲響控制等。

3) 外部條件(運(yùn)行環(huán)境)設(shè)置功能,包括海水流速/流向設(shè)定、船舶航向設(shè)定、船舶吃水設(shè)定、海浪設(shè)定、風(fēng)力和風(fēng)向設(shè)定、大氣壓力設(shè)定、船體海生物附著程度設(shè)定、海水溫度、集控室溫度設(shè)定、環(huán)境溫度設(shè)定、海面結(jié)冰狀況設(shè)定以及(窄)航道狀況設(shè)定。

4) 操作訓(xùn)練管理功能,包括已有訓(xùn)練項(xiàng)目選擇、新項(xiàng)目錄入、異常事件設(shè)置、操作記錄、重做、結(jié)束返回等,其中:新訓(xùn)練錄入功能指允許教練員將某一運(yùn)行狀態(tài)或情景下的系統(tǒng)參數(shù)、初始狀態(tài)和情景存儲(chǔ)為新的訓(xùn)練項(xiàng)目,并列入訓(xùn)練選項(xiàng)中;操作記錄功能包括受訓(xùn)人登錄、操作時(shí)間和操作內(nèi)容記錄打印等;重做功能指提供部分或整個(gè)訓(xùn)練項(xiàng)目的重做功能;結(jié)束返回指返回主界面或評(píng)估界面。

5) 系統(tǒng)故障檢索與編輯功能,包括故障列表檢索、故障分組編輯、故障參數(shù)編輯、新故障編輯與保存、故障運(yùn)行管理(包括故障現(xiàn)象和故障處理過(guò)程監(jiān)視)、故障復(fù)位(包括故障處理鑒別、故障完成復(fù)位和故障強(qiáng)制復(fù)位)以及返回等;此外,其還提供所有設(shè)備與系統(tǒng)的磨損變量,以便教練員根據(jù)磨損變量編輯新的故障項(xiàng)目。

6) 關(guān)于機(jī)艙資源管理培訓(xùn)的相關(guān)資料(如應(yīng)急視頻、圖片、文字和規(guī)章制度等)都可嵌入三維場(chǎng)景供學(xué)員學(xué)習(xí)。

2 Unity3D程序開(kāi)發(fā)流程

Unity3D程序的開(kāi)發(fā)流程(見(jiàn)圖1)一般分為制作并導(dǎo)入模型、組織通道模塊和發(fā)布程序等3步。

1) 通過(guò)3dsMax 建成VLCC機(jī)艙三維實(shí)體模型, 包括幾何模型、紋理和光照等,開(kāi)發(fā)完成后把資源數(shù)據(jù)發(fā)布為.FBX格式文件。

2) 將.FBX格式文件導(dǎo)入U(xiǎn)nity3D進(jìn)行整個(gè)系統(tǒng)的合成與交互開(kāi)發(fā),形成基于Unity3D 引擎的虛擬現(xiàn)實(shí)環(huán)境,包括VLCC場(chǎng)景數(shù)據(jù)庫(kù)、Unity3D 渲染引擎和碰撞檢測(cè)等交互處理程序,其中相同的資源放在同一個(gè)目錄下,方便虛擬仿真過(guò)程資源的索引、查找、裝載和釋放。

3) 在Unity3D界面中創(chuàng)建相應(yīng)控制的腳本,打包發(fā)布為Web版本,生成遠(yuǎn)程可交互式機(jī)艙資源模擬器應(yīng)用軟件。

圖1 Unity3D程序開(kāi)發(fā)流程

程序設(shè)計(jì)的核心是Unity3D驅(qū)動(dòng)模塊,主要功能是驅(qū)動(dòng)外部設(shè)備(如鼠標(biāo)和鍵盤等)輸入的信息以及繪制VLCC三維虛擬仿真數(shù)據(jù)資源。繪制仿真數(shù)據(jù)實(shí)現(xiàn)機(jī)艙虛擬場(chǎng)景仿真。處理外部設(shè)備輸入信息,對(duì)設(shè)備虛擬場(chǎng)景對(duì)象進(jìn)行操作(如旋轉(zhuǎn)、縮放及移動(dòng)等),實(shí)現(xiàn)交互仿真。

3 關(guān)鍵技術(shù)

3.1機(jī)艙場(chǎng)景漫游

漫游是機(jī)艙資源管理模擬器的關(guān)鍵功能,交互是實(shí)現(xiàn)漫游的方式。[8]普通交互可通過(guò)JavaScript實(shí)現(xiàn),例如在模擬器漫游系統(tǒng)中用到的鼠標(biāo)按鍵行走功能,可在Unity3D中通過(guò)WSAD分別實(shí)現(xiàn)上下左右移動(dòng)。Unity3D 中內(nèi)置了第一人稱視角控制,將控制器預(yù)置體拖放至虛擬現(xiàn)實(shí)場(chǎng)景中,不僅可以模擬第一人稱在場(chǎng)景中進(jìn)行漫游,而且可以通過(guò)檢測(cè)輸入控制攝像機(jī)的方式驅(qū)動(dòng)場(chǎng)景,實(shí)現(xiàn)任意視角的場(chǎng)景漫游。舵機(jī)間自動(dòng)漫游程序開(kāi)發(fā)見(jiàn)圖2。

圖2 舵機(jī)間自動(dòng)漫游程序開(kāi)發(fā)

3.2碰撞檢測(cè)

在開(kāi)發(fā)機(jī)艙資源管理模擬器的過(guò)程中,必須在場(chǎng)景驅(qū)動(dòng)中設(shè)置設(shè)備的物理屬性來(lái)避免“穿墻而過(guò)”。圖3為開(kāi)發(fā)過(guò)程中未添加碰撞檢測(cè)程序效果圖,從中可知,部分設(shè)備只有添加能執(zhí)行碰撞檢測(cè)的組件,才能使該設(shè)備在不影響性能的前提下具有碰撞檢測(cè)功能。

Unity3D引擎中較常用的碰撞檢測(cè)包圍盒有 SphereCollider,WheelCollider,BoxCollider和MeshCollider等4種。根據(jù)機(jī)艙設(shè)備的特點(diǎn)和碰撞精度要求,采用Component-Physics-MeshCollider包圍盒,使場(chǎng)景中設(shè)備與輪機(jī)員之間的碰撞檢測(cè)具有良好的效果。

圖3 分油機(jī)間未添加碰撞檢測(cè)程序效果圖

3.3局域網(wǎng)內(nèi)的交互

利用Unity3D開(kāi)發(fā)機(jī)艙資源管理模擬器,可實(shí)現(xiàn)機(jī)艙資源管理模擬器在局域網(wǎng)中聯(lián)機(jī)協(xié)作訓(xùn)練的功能。不同輪機(jī)員可操作各自的客戶端程序在同一個(gè)場(chǎng)景中進(jìn)行操作,相互之間可看到對(duì)方的動(dòng)作,共同完成機(jī)艙資源管理培訓(xùn)項(xiàng)目所要求的協(xié)同操作任務(wù),提高訓(xùn)練效果。

在程序設(shè)計(jì)過(guò)程中,客戶端與服務(wù)器采用C/S 結(jié)構(gòu)。服務(wù)器相對(duì)獨(dú)立,可支持多個(gè)客戶端同時(shí)訪問(wèn)。服務(wù)器與客戶端之間通過(guò)IP連接,通過(guò)遠(yuǎn)程過(guò)程調(diào)用傳遞數(shù)據(jù),由此實(shí)現(xiàn)所有客戶端都能看到原客戶端的動(dòng)作和交互操作等功能。[10]

4 機(jī)艙資源管理模擬器的技術(shù)實(shí)現(xiàn)

開(kāi)發(fā)機(jī)艙資源管理模擬器主要用到Unity3D引擎,包括系統(tǒng)地形,系統(tǒng)物體,系統(tǒng)場(chǎng)景設(shè)計(jì),以及碰撞、運(yùn)動(dòng)、鏡頭切換等腳本代碼的編寫和實(shí)現(xiàn)等。

4.1機(jī)艙資源管理模擬器平臺(tái)界面

Unity用戶界面(Graphical User Interface,GUI)控制利用的是OnGUI()函數(shù),其特點(diǎn)是在控制腳本激活的狀態(tài)下,允許在每幀調(diào)用。Unity3D引擎中提供了界面開(kāi)發(fā)系統(tǒng)和相應(yīng)的多種插件,在模擬器開(kāi)發(fā)過(guò)程中,通過(guò)簡(jiǎn)單代碼在Unity3D界面中搭建機(jī)艙資源管理模擬器的 GUI 界面,開(kāi)發(fā)流程與其他GUI軟件的開(kāi)發(fā)流程類似。

4.2機(jī)艙資源管理模擬器訓(xùn)練場(chǎng)景開(kāi)發(fā)

機(jī)艙資源管理模擬器訓(xùn)練場(chǎng)景的開(kāi)發(fā)等同于游戲場(chǎng)景的創(chuàng)建。訓(xùn)練場(chǎng)景主要由機(jī)艙的房間布局以及機(jī)艙中的各種設(shè)備、管路和閥件等組成。根據(jù)機(jī)艙房間和設(shè)備尺寸的具體數(shù)據(jù),訓(xùn)練場(chǎng)景可在3dsMax中構(gòu)建。在構(gòu)建模型的過(guò)程中,需注意多邊形模型的優(yōu)化問(wèn)題。由于虛擬現(xiàn)實(shí)的機(jī)艙設(shè)備較多,因此數(shù)據(jù)量較大,對(duì)模型進(jìn)行充分優(yōu)化可縮減網(wǎng)絡(luò)文件的大小,有利于后期交互的實(shí)現(xiàn)。此外,在貼圖時(shí)要注意選取母型船實(shí)船圖片,貼圖的命名應(yīng)使用英文。該模擬器中部分場(chǎng)景設(shè)計(jì)見(jiàn)圖4~圖6。

圖4 主機(jī)艙場(chǎng)景設(shè)計(jì)

圖5 空壓機(jī)間場(chǎng)景設(shè)計(jì)

圖6 應(yīng)急發(fā)電機(jī)間場(chǎng)景設(shè)計(jì)

4.3遠(yuǎn)程可交互技術(shù)的設(shè)計(jì)與實(shí)現(xiàn)

機(jī)艙資源管理模擬器中的遠(yuǎn)程可交互主要指在局域網(wǎng)內(nèi)通過(guò)多臺(tái)計(jì)算機(jī)及其輸入輸出設(shè)備,實(shí)現(xiàn)人與計(jì)算機(jī)對(duì)話,包括交互界面設(shè)計(jì)和漫游設(shè)計(jì)等。在進(jìn)入系統(tǒng)后,界面的左上方會(huì)呈現(xiàn)出多種供選擇的漫游模式,包括手動(dòng)導(dǎo)航、自動(dòng)導(dǎo)航和小地圖導(dǎo)航(見(jiàn)圖7)等。點(diǎn)擊自動(dòng)導(dǎo)航按鈕,系統(tǒng)將按照程序規(guī)劃路線運(yùn)行,并在左上角的小地圖中實(shí)時(shí)展現(xiàn);點(diǎn)擊手動(dòng)導(dǎo)航按鈕,用戶可通過(guò)鍵盤方向鍵和鼠標(biāo)進(jìn)行視角的改變,并可通過(guò)點(diǎn)擊小地圖迅速切換到相應(yīng)場(chǎng)景中。在程序的設(shè)計(jì)過(guò)程中加入了碰撞檢測(cè)算法,使得輪機(jī)員不會(huì)穿過(guò)墻體和設(shè)備等障礙物,保證了虛擬現(xiàn)實(shí)環(huán)境的真實(shí)性。該模擬器設(shè)置了與二維VLCC模擬器通信的接口,以便后期與硬件盤臺(tái)對(duì)接。部分程序代碼如下。

圖7 小地圖導(dǎo)航

1) 小地圖代碼

function OnGUI () {

bX=center Object.transform. position.x * mapScale;

bY= center Object.transform. position.z * mapScale;

bX= center Object.transform. position.x * mapScale;

bY= center Object.transform. position.z * mapScale;

GUI.Draw

Texture(Rect(mapCenter.x-128,mapCenter.y-128, 256, 256), radarBG);….}

2) 自動(dòng)導(dǎo)航代碼

function Update(){

if(get camera.camera1.enabled==true){//center object select center Object=Game Object.Find("AutoCamera");}

change=Time.realtimeSinceStartup;}

根據(jù)設(shè)定坐標(biāo), 到應(yīng)急配電板第一屏:

if(transform.position.x>(transform.position.z-2035)*-1.3&&(-224-transform.position.x)>(transform.position.z-2035)*-0.89){GUI.Label(Rect(Screen.width*(1f/2f-90f/screenw), Screen.height*30f/screenh,Screen.width*600f/screenw, Screen.height*150f/860f), "應(yīng)急配電板第一屏");}

3) 圖形界面交互代碼

var guiSkin:GUISkin;

private var currStyle:int=1;

function OnGUI(){

GUl.skin=guiSkin;

var hw:int=Screen.width/3;

GUI.Box(Rect(0,Screen.height-210,Screen.width,210),"");

GUI.BeginGroup(Rect(0,Screen.height-210,Screen.width,210);

……}

在設(shè)計(jì)遠(yuǎn)程可交互程序時(shí),每完成一種功能或一個(gè)模塊,隨即進(jìn)行功能測(cè)試,以保證所編寫代碼的正確率,盡力減少Bug。在程序編寫任務(wù)完成后,進(jìn)行系統(tǒng)整體測(cè)試。

5 結(jié)束語(yǔ)

通過(guò)闡述基于Unity3D 的可遠(yuǎn)程交互式機(jī)艙資源管理模擬器,將虛擬現(xiàn)實(shí)技術(shù)引入到機(jī)艙資源管理模擬器的研究與開(kāi)發(fā)中,實(shí)現(xiàn)了機(jī)艙資源管理模擬器所要求的團(tuán)隊(duì)協(xié)作配合訓(xùn)練、通信與溝通訓(xùn)練以及應(yīng)急處理等,可更好地滿足海事局對(duì)機(jī)艙資源管理評(píng)估的要求,尤其是在遠(yuǎn)程培訓(xùn)方面,將給在職船員提供極大的方便。開(kāi)發(fā)完成后的機(jī)艙資源管理模擬器將填補(bǔ)國(guó)內(nèi)外機(jī)艙資源管理模擬器研制領(lǐng)域的空白。

[1] 曾鴻,張均東,何治斌,等. 船舶輪機(jī)模擬器CAVE 系統(tǒng)設(shè)計(jì)與關(guān)鍵技術(shù)研究[J]. 系統(tǒng)仿真學(xué)報(bào), 2012, 24(1): 123-126.

[2] 王海燕,劉曉晨,武曉英. 一種分布式船舶輪機(jī)模擬器[J]. 系統(tǒng)仿真學(xué)報(bào), 2011, 23(4): 687-690.

[3] 孫俊,陳輝. 輪機(jī)模擬器主機(jī)工作過(guò)程建模與實(shí)時(shí)仿真[J].計(jì)算機(jī)仿真, 2007, 26(11): 316-319.

[4] 王永堅(jiān),楊國(guó)豪. 基于Web3D虛擬輪機(jī)模擬器操作訓(xùn)練系統(tǒng)的建構(gòu)[J]. 集美大學(xué)學(xué)報(bào):自然科學(xué)版, 2009, 14(2): 165-169.

[5] YOUNG C. The STCW Convention[Z]. 1995.

[6] 吳志達(dá).一個(gè)基于Unity3D游戲引擎的體感游戲研究與實(shí)現(xiàn)[D]. 廣州:中山大學(xué),2012.

[7] 蔣德志,趙曉玲.基于輪機(jī)模擬器的“機(jī)艙資源管理”研究與實(shí)踐[J].中國(guó)航海,2011,34(1):22-25.

[8] ZHU Hongming, WU Dianliang, FAN Xiumin. Interactive Assembly Tool Planning Based on Assembly Semantics in Virtual Environment[J]. International Journal of Advanced Manufacturing Technology,2010,51(5-8):739-755.

[9] HU Feng. On the Factors Influencing the Work Efficiency of the Global Virtual Team and Possible Solutions [J]. Journal of Yunnan Nationalities University, 2005,22(6): 105-108.

[10] CWILEWICZ R, TOMCZAK L.Improvement of Ship Operational Safety as a Result of the Application of Virtual Reality Engine Room Simulators[C]. 6th International Conference on Computer Simulation Risk Analysis and Hazard Mitigation, 2008.

DevelopmentofEngineRoomResourceManagementSimulatorBasedonUnity3D

JIANGDezhi1,YAOWenlong1,2,ZHANGJundong2
(1. Marine Engineering Department, Qingdao Ocean Shipping Mariners College, Qingdao 266071, China; 2. Marine Engineering College, Dalian Maritime University, Dalian 116026, China)

The Unity3D platform is used to improve the display reality and the interaction function of the engine room resource management training system. The general design scheme of the engine room resource management simulator with virtual reality based on the 3dsMax/Unity3D are proposed. The program development process with Unity3D is introduced with the key technologies highlighted. The 3D models of the engine room equipment of the Very Large Crude Carrier(VLCC) are constructed with 3dsMax. The dynamic interaction of virtual scene are developed by using Unity3D kit and Java3D to realize the integration of the 3D marine model data and 2D spatial data, collision detection and 3D marine engine room virtual wandering. The test with real marine data shows that the developed simulator system can well meet the requirements of engine room resource management training with higher efficiency.

ship engineering; engine room resource management; simulator; Unity3D; virtual reality; interaction design

2015-04-18

國(guó)家自然科學(xué)基金(61374102);中遠(yuǎn)集團(tuán)科技計(jì)劃項(xiàng)目(2012-1-H-004);山東省高等學(xué)??萍加?jì)劃項(xiàng)目(J13LN72)

蔣德志(1969—),男,山東濰坊人,教授,碩士,主要從事輪機(jī)模擬器、機(jī)艙資源管理教學(xué)研究以及模擬器的研究開(kāi)發(fā)。

E-mail: jiangdzh@coscoqmc.com.cn

1000-4653(2015)03-0013-05

U666.158;U676.4

A

猜你喜歡
輪機(jī)機(jī)艙模擬器
船舶機(jī)艙火災(zāi)的原因分析及預(yù)防
駕駛模擬器轉(zhuǎn)向系統(tǒng)的設(shè)計(jì)與研究
了不起的安檢模擬器
船舶機(jī)艙通風(fēng)相關(guān)要求及常見(jiàn)關(guān)閉裝置分析
盲盒模擬器
劃船模擬器
船舶機(jī)艙常見(jiàn)消防隱患及防控
通過(guò)斗輪機(jī)位置數(shù)據(jù)共享實(shí)現(xiàn)兩機(jī)防撞
適合多種顯示設(shè)備的輪機(jī)模擬器GUI縮放技術(shù)
船舶輪機(jī)常見(jiàn)的故障
泽库县| 郧西县| 开阳县| 平舆县| 莲花县| 五家渠市| 潮州市| 澜沧| 日照市| 宁陕县| 柳林县| 天长市| 青田县| 武冈市| 安阳县| 汉寿县| 民权县| 全南县| 荆州市| 临沂市| 洪洞县| 望都县| 广西| 化州市| 彭泽县| 探索| 正安县| 黑山县| 科尔| 建湖县| 巩留县| 宿迁市| 商洛市| 大名县| 弥勒县| 汽车| 洮南市| 新安县| 枝江市| 五常市| 鞍山市|