袁東斌
(閩南師范大學(xué) 教育科學(xué)學(xué)院,福建 漳州 363000)
實訓(xùn)教學(xué)是船舶制造這類實踐性極強專業(yè)學(xué)生學(xué)習(xí)專業(yè)知識的最佳途徑,但在實際教學(xué)中,由于船廠實訓(xùn)接收人員數(shù)量有限,難以滿足學(xué)生在造船廠現(xiàn)場實訓(xùn)學(xué)習(xí).船舶制作周期長達1年以上,學(xué)生實訓(xùn)期間只能接觸部分造船流程和步驟;船舶制作工序多,從零件加工一直到試航,歷經(jīng)幾百道大小工序,且涉及動力、導(dǎo)航、通信、電力等數(shù)十個專業(yè)子系統(tǒng),學(xué)生實訓(xùn)過程無法全局性系統(tǒng)學(xué)習(xí)各個部分所涉知識.高壓高溫等危險環(huán)境,實訓(xùn)過程存在巨大安全風(fēng)險.實訓(xùn)設(shè)備、耗材昂貴,實訓(xùn)過程消耗大、費用高.每個學(xué)生孤立訓(xùn)練,過程零散,缺乏團隊協(xié)同和對項目的全局認知.實訓(xùn)缺乏過程數(shù)據(jù)歸集,學(xué)生實際學(xué)習(xí)效果、知識掌握程度無法及時評判和跟蹤等原因,導(dǎo)致實訓(xùn)和實習(xí)往往停留在“走馬觀花”的了解層面,學(xué)生無法掌握實踐技能,學(xué)生畢業(yè)之后需要船廠再培養(yǎng)2~3年才可堪用.
基于虛擬現(xiàn)實技術(shù)在教育教學(xué)中的實際應(yīng)用,我們發(fā)現(xiàn)三維仿真場景的可視化內(nèi)容對學(xué)生理解知識、提升學(xué)習(xí)效率擁有良好的促進作用.所以針對以上問題,我們設(shè)計了一套船舶制造仿真實訓(xùn)系統(tǒng)來滿足教學(xué)需求.利用人機交互技術(shù)、光學(xué)技術(shù)、計算機仿真技術(shù)、圖形圖像技術(shù)、網(wǎng)絡(luò)通信技術(shù)等,在計算機中完整復(fù)現(xiàn)大型船舶制造的真實工作場景、關(guān)鍵流程和子系統(tǒng),呈現(xiàn)核心知識點.系統(tǒng)遵循模塊化設(shè)計的架構(gòu)思想,學(xué)生可與仿真場景進行各類仿真互動,從而解決當(dāng)前實訓(xùn)中存在的各類問題.
船舶制造仿真實訓(xùn)系統(tǒng)采用當(dāng)前比較流行的分層設(shè)計,各個模塊被劃分成不同功能集合的子集合,因此子集合之間的耦合度大幅降低,軟件的可修改性和可維護性大幅提高.系統(tǒng)具體分為3層:物理層、支撐層和表現(xiàn)層.物理層是支持仿真系統(tǒng)實現(xiàn)的基礎(chǔ),主要包括網(wǎng)絡(luò)、圖形工作站、平板電腦(或移動終端)、激光投影儀等硬件設(shè)備.支撐層通過Unity、Maya等軟件層面提供不同端口內(nèi)容分發(fā)和控制、人機交互、三維建模、程序開發(fā)、三維渲染等功能.表現(xiàn)層主要是本系統(tǒng)操作區(qū)塊,分為總體介紹、船廠1∶1漫游、制作設(shè)備認知、造船流程認知、角色模擬、船舶關(guān)鍵子系統(tǒng)、單人訓(xùn)練、多人協(xié)同演練等9個模塊,整體結(jié)構(gòu)如圖1所示.
圖1 系統(tǒng)架構(gòu)
針對船舶制造專業(yè)學(xué)生實際的實訓(xùn)教學(xué)需求,系統(tǒng)開發(fā)了9個模塊,各個模塊之間遵循教學(xué)邏輯,按照由淺入深、由整體到局部、由學(xué)習(xí)到訓(xùn)練的方式,逐漸引導(dǎo)學(xué)生學(xué)習(xí)船舶制作的必要知識,各個模塊之間具體功能說明見圖2.
圖2 系統(tǒng)功能樹型圖
各模塊功能:
1)總體介紹模塊.系統(tǒng)分為教師端、學(xué)生端和管理端.學(xué)生端支持學(xué)生自由探索,自主引導(dǎo)學(xué)生快速熟悉系統(tǒng)整體結(jié)構(gòu),具體包括本系統(tǒng)基本特點、系統(tǒng)建設(shè)目標(biāo)、針對的問題、系統(tǒng)組成、專有名詞解釋等.除了文字配圖之外,針對重難點知識還運用AI語音合成技術(shù),提供語音和三維動畫輔助指導(dǎo),幫助學(xué)生理順學(xué)習(xí)思路.
教師端支持教師統(tǒng)一管控,支持一鍵同屏,全局監(jiān)控和單體監(jiān)控.當(dāng)教師處于上課狀態(tài),為了讓所有學(xué)生保持課程同步學(xué)習(xí),通過一鍵屏幕同步讓所有學(xué)生軟件畫面顯示為教師端畫面,從而與教師上課節(jié)奏保持一致;支持學(xué)生端軟件畫面監(jiān)控與同步顯示在教師端,最多支持100個學(xué)生端的畫面實時監(jiān)控;支持單個學(xué)生端的畫面瀏覽查看,可投屏到大屏幕進行演示教學(xué);支持對全班所有學(xué)生VR實訓(xùn)操作軌跡監(jiān)控;支持教師建立班級、綁定關(guān)系進行增刪改查,通過網(wǎng)格化管理精確記錄每個學(xué)生的過程學(xué)習(xí)數(shù)據(jù),輔助教師判斷學(xué)生實際軟件使用情況及知識點掌握程度.
2)船廠1∶1漫游模塊.以真實船廠為藍本1∶1構(gòu)建10萬平米的虛擬化廠房,在虛擬場景中穿插講解船廠功能布局和概況,并通過VR手柄或電腦鍵鼠進行控制操作,使用戶以第一人稱視角進入虛擬船廠,身臨其境地觀察設(shè)備、船體及制造過程等.同時可以巡視船廠任何設(shè)備,為學(xué)生提供沉浸式體驗,彌補學(xué)生難以進入船廠現(xiàn)場實訓(xùn)的不足,增加學(xué)生對船廠各功能區(qū)的理解和認知.
3)制造設(shè)備認知模塊.該模塊通過對船廠制作設(shè)備高精度模型的三維展示,如拆分、縮小、放大、旋轉(zhuǎn)等,并配以說明圖文或嵌入視頻,使學(xué)生能快速熟悉各主要造船設(shè)備部件、功能和結(jié)構(gòu),為進一步熟悉造船流程做準(zhǔn)備.船廠主要大型設(shè)備包括門機、船塢泵房、塢門、冷加工設(shè)備、機加工設(shè)備等.
4)造船流程認知模塊.以造船流程為主線設(shè)計各流程關(guān)鍵步驟和核心技能要求,配以視頻講解,使學(xué)生快速熟悉船體車間、管工車間、舾裝車間、電工車間、噴涂車間、起重車間、技術(shù)處、生產(chǎn)處等部門,了解造船各個流程環(huán)節(jié)及相應(yīng)任務(wù).
5)角色模擬模塊.通過教師端分發(fā)任務(wù),學(xué)生端可自主選擇造船過程中涉及的各種角色進行模擬演練,如車工、電工、鉚工、鉗工、車工、焊工、油漆工、雜工等,系統(tǒng)自動推送該角色工作內(nèi)容、工具、工作流程、注意事項,以此熟練了解造船每個崗位的崗位職責(zé).
6)船舶關(guān)鍵子系統(tǒng)模塊.提供船舶控制系統(tǒng)(船舶管理信息、集成駕駛、貨運監(jiān)控等系統(tǒng)及無人值班機艙)、電力系統(tǒng)(船舶發(fā)電站、船舶電網(wǎng)系統(tǒng)及主要用電設(shè)備)、動力系統(tǒng)(船舶動力裝置中的主動力、輔助動力及其他輔機和設(shè)備)的仿真三維內(nèi)容,提供相關(guān)設(shè)備的三維高精模型及原理的虛擬仿真內(nèi)容,輔助學(xué)生深刻理解子系統(tǒng)結(jié)構(gòu)及相關(guān)知識.
7)單人訓(xùn)練模塊.該模塊提供單人自主自由練習(xí),主要包括船舶發(fā)動機結(jié)構(gòu)與拆裝虛擬仿真,傳動系統(tǒng)拆裝虛擬仿真,焊接練習(xí)等,學(xué)生可根據(jù)教師端分發(fā)的任務(wù)同步練習(xí),也可基于自身實際情況選擇知識薄弱點進行強化練習(xí).
比如焊接部分練習(xí)內(nèi)容包括金屬材料的焊接(低合金結(jié)構(gòu)鋼、珠光體耐熱鋼、低溫鋼、奧氏體不銹鋼焊接)、焊條電弧焊(鋼板對接立焊、鋼板對接橫焊、垂直固定管件焊接、水平固定管件焊接、低碳鋼管板插入式水平固定焊接、低碳鋼管板插入式垂直固定平焊焊接)、手工鎢極氬弧焊、自動埋弧焊(自動埋弧焊工藝及特點、自動埋弧焊中、厚板材的平焊對接雙面焊技術(shù))、等離子弧焊接與切割(等離子弧焊接、等離子弧切割)等,學(xué)生選擇焊接工角色,系統(tǒng)就會根據(jù)焊接類型和造船過程中涉及焊接工藝自動分發(fā)焊接任務(wù),學(xué)生必須嚴(yán)格按照實際的焊接流程逐步執(zhí)行,才能順利完成任務(wù).
8)多人協(xié)同演練模塊.該模塊模擬現(xiàn)實世界的船廠造船流程,允許最多10位學(xué)生進入同個虛擬場景,就某個任務(wù)目標(biāo)模擬實際工作流程協(xié)同操作.
如需進行任務(wù)協(xié)同,教師首先從教師端發(fā)出操作任務(wù),學(xué)生端接收任務(wù),選擇人物角色(也可教師端指定每個學(xué)生的角色),人物角色及數(shù)量是由任務(wù)決定的.比如“船體焊接”任務(wù),就允許10位學(xué)生共同參與:其中1人任總指揮段長,負責(zé)總體作業(yè),包括物料準(zhǔn)備、現(xiàn)場環(huán)境準(zhǔn)備、人員協(xié)調(diào)與工作任務(wù)分配、質(zhì)量檢查、安全作業(yè)監(jiān)督等;剩余9人分為3組,分別位擔(dān)任安全員2人、焊接操作員6人,現(xiàn)場監(jiān)督和質(zhì)量管控員1人,按照現(xiàn)實船體焊接流程進行操作作業(yè),檢驗學(xué)生對船舶各技能工種實際操作技能的掌握程度以及船舶制造項目管理能力.
9)知識測驗?zāi)K.當(dāng)前測驗?zāi)K共錄入了1 086道選擇題,系統(tǒng)可根據(jù)學(xué)生學(xué)習(xí)情況自主組卷.學(xué)生答題后系統(tǒng)會自動判斷對錯,并實時統(tǒng)計所有考試學(xué)生的考試時間、正確率、錯誤率、總成績等數(shù)據(jù),從而完成對學(xué)生學(xué)習(xí)情況的檢查.
由于系統(tǒng)所有環(huán)節(jié)和知識點須跟現(xiàn)實世界相關(guān)環(huán)節(jié)一一對應(yīng),造船流程復(fù)雜,場景大、模型多,技術(shù)難度高,對開發(fā)人員和硬件配置提出較高要求.為確保開發(fā)目標(biāo)實現(xiàn),本系統(tǒng)嚴(yán)格按照軟件開發(fā)流程執(zhí)行,分為調(diào)研和需求整理、建模、功能研發(fā)、測試4大環(huán)節(jié),每個環(huán)節(jié)分為規(guī)劃、執(zhí)行、評審三部分,只有評審?fù)ㄟ^才可進入下個環(huán)節(jié),從而確保每個環(huán)節(jié)達到設(shè)計要求.
本階段主要工作是收集、整理用戶需求.通過對用戶進行調(diào)研并收集各種資料(船廠圖紙、設(shè)備參數(shù)、業(yè)務(wù)流程、部門結(jié)構(gòu)、生產(chǎn)流程、技術(shù)指標(biāo)等),據(jù)此規(guī)劃系統(tǒng)功能模塊,編寫《船舶制造仿真實訓(xùn)系統(tǒng)設(shè)計需求》文檔.
三維模型是本系統(tǒng)功能實現(xiàn)的基礎(chǔ),包括船廠整體環(huán)境、地形、設(shè)備、材料、人物等相關(guān)素材的建模.通過3dsMax、MAYA等建模軟件對船廠大場景及船舶設(shè)備進行模型構(gòu)建,包括各類大大小小近2 000個零部件、工具的原模繪制、貼圖制作,使船廠完美復(fù)現(xiàn)在虛擬場景中.地形建模和天氣建模分別使用Unity3d中筆刷工具和Skybox天空盒子組件進行制作,為了確保地形建設(shè)合理合規(guī),我們參考了民營造船龍頭企業(yè)揚子江船業(yè)的船廠實際地形進行構(gòu)建,場景模型實際效果如圖3.
模型搭建完成后就可導(dǎo)入Unity3d中,按照類別分門別類存放,以供程序人員根據(jù)設(shè)計要求隨時調(diào)用相關(guān)模型,建模流程如圖4所示.
圖3 虛擬場景搭建效果圖4 建模流程
根據(jù)《船舶制造仿真實訓(xùn)系統(tǒng)設(shè)計需求》中對業(yè)務(wù)流程、數(shù)據(jù)結(jié)構(gòu)、模型貼圖、動畫、特效、交互和功能模塊實現(xiàn)等方面的設(shè)計要求,開始具體的代碼編寫.
第一步,模型導(dǎo)入到Unity3d中形成模型庫供編程員選用;第二步,根據(jù)軟件整體調(diào)性,對水紋、玻璃、金屬、塑料等模型材質(zhì)與色彩、鏤空、紋理、凹凸等模型貼圖進行后期優(yōu)化和設(shè)置;第三步,創(chuàng)建天空、環(huán)境(白天或夜晚,陽光或下雨等)及其他特效;第四步,根據(jù)撰寫的腳本要求編寫可執(zhí)行指令的代碼;第五步,加入視頻、音頻、flash、圖片等媒體文件,并將文件與交互按鈕進行鏈接,從而豐富系統(tǒng)交互和展示方式;第六步,在unity中整體播放,檢查并修改明顯錯誤;第七步,打包發(fā)布.
在靜態(tài)測試狀態(tài)下,分析或檢查源程序的語句、結(jié)構(gòu)、過程等是否有錯誤,修改部分不匹配參數(shù)和未定義的變量.之后將系統(tǒng)發(fā)布成“.exe”格式文件并運行,進行動態(tài)測試.依據(jù)軟件設(shè)計說明書、需求規(guī)格說明書使用測試用例,以量化形式檢查程序的功能是否能夠按照規(guī)范說明準(zhǔn)確無誤的運行,對得到的預(yù)期結(jié)果與實際運行結(jié)果進行對比并分析,對檢測出的系統(tǒng)BUG進行修復(fù),同時檢測系統(tǒng)運行效率、穩(wěn)定性和魯棒性等.經(jīng)過測試該系統(tǒng)安全、穩(wěn)定、可靠,可流暢運行在i7處理器、內(nèi)存64G、GTX1060獨立顯卡配置的電腦上.
船廠三維場景涉及大大小小近2 000個部件,在實際測試中發(fā)現(xiàn)系統(tǒng)運行所需要的算力資源過大,經(jīng)常出現(xiàn)畫面不流暢、卡頓,甚至卡死的現(xiàn)象.為了提高運行效率,本系統(tǒng)采用多細節(jié)層次LOD(Levels of Detail)技術(shù),將非重要模型的細節(jié)度和面數(shù)降低,從而減少對算力資源的需求、提高渲染運算的效率.以相機與模型(物體)類比,一個模型如果距攝像機近,用面數(shù)多細節(jié)高(算力資源要求高)的模型,如果距攝像機遠,就用面數(shù)少細節(jié)少的模型.
具體怎么理解呢?系統(tǒng)設(shè)計時,我們將船廠門機、船塢泵房、塢門、冷加工設(shè)備、機加工設(shè)備等主要設(shè)備定為高精度模型;將發(fā)電站、電網(wǎng)系統(tǒng)、主動力等設(shè)備定為中精度模型;將噴涂車間、技術(shù)處、生產(chǎn)處等相對不重要部分設(shè)置為低精度模型,并按照復(fù)雜程度自高向低的為模型命名,如“模型名稱LODO”、“模型名稱LOD1”等,最后的數(shù)字序號越低,表示復(fù)雜程度越高.
通過定義一個空對象添加LODGroup組件來管理模型的LOD等級,然后分別將3種不同精度的模型,拖拽到空對象LODGroup組件的各個級別上,Add按鈕為LOD添加對應(yīng)的模型(LOD 0 表示攝像機最近距離顯示),這樣當(dāng)LOD發(fā)生變化就會使用不同精度的模型對象.使用LOD技術(shù)后,視圖每一幀渲染時間從45.7 s下降至9.8 ms左右,對硬件資源的占用和算力需求大大減輕,系統(tǒng)運行流暢.
Cinemachine虛擬攝像機分鏡技術(shù)可實現(xiàn)電影級別的分鏡、推拉式鏡頭等效果,見圖5.快速、高效地完成多種鏡頭效果如:軌道移動鏡頭、鏡頭跟隨、鏡頭切換、模仿手持抖動效果等等.在船廠漫游模塊,通過虛擬攝像機分鏡實現(xiàn)鏡頭跟隨和漫游動畫制作,并在漫游模塊和子系統(tǒng)模塊之間實現(xiàn)多場景視角自由切換,方便用戶根據(jù)需求選擇學(xué)習(xí)內(nèi)容.
圖5 Cinemachine操作窗口
本系統(tǒng)采用分層架構(gòu)設(shè)計,實現(xiàn)系統(tǒng)功能模塊化,采用人機交互技術(shù)、光學(xué)技術(shù)、網(wǎng)絡(luò)通信技術(shù)、圖形圖像技術(shù)、計算機仿真技術(shù),實現(xiàn)了多人協(xié)同造船的總體介紹、船廠漫游、角色模擬、多人協(xié)同等9大功能.通過軟件測試和學(xué)生試用,證實系統(tǒng)流暢,界面結(jié)構(gòu)清晰,功能豐富,內(nèi)容合理.系統(tǒng)用三維可視化、可交互的方式代替?zhèn)鹘y(tǒng)相對僵化、偏理論的實訓(xùn)教學(xué),解決了以往教學(xué)中存在的問題;同時降低了教學(xué)成本,提升了教學(xué)質(zhì)量,具有良好的現(xiàn)實意義及推廣價值.