【摘要】針對許多特殊場合的應急處理訓練中存在的問題,綜合應用虛擬現實技術、網絡通信技術、三維圖像技術、數據庫技術,設計并實現了一個基于虛擬現實技術的多用戶協同訓練系統,并給出了在航空乘務培訓中應用示例,希望對于其他分布式訓練系統的開發具有借鑒作用。
【關鍵詞】虛擬現實;協同訓練;多用戶;網絡環境
【中圖分類號】G434【文獻標識碼】B【論文編號】1009—8097(2010)04—0120—03
引言
在國際上,VR與仿真技術非常普遍與成熟。在遠程協作的分布式VR與仿真系統方面,他們制定了一系列標準、協議和算法。在國外虛擬環境中的協同式訓練系統也有研究,比較有代表性的是SecuReVi系統,它是利用MASCARET模型設計的虛擬環境中多人協同滅火的消防員訓練系統,還有些遠程醫療手術協作訓練系統,這些系統多數是在研究階段,成型產品極為少數。和一些發達國家相比,我國協同VR與仿真技術還有一定的差距,其應用也主要集中在軍事院校和研究所,也取得了一定研究成果[1][2],特別是在分布式VR與仿真領域里,國內在這方面的研究也有所開展[3][4]。
由于教育培訓軟件的應用長期局限于平面的文字及圖像表述,即使近年來動態圖形圖像表現形式大大提高了內容的表現效果,但仍無法真正滿足人類視覺、聽覺……甚至是感覺上的認同效應。因此,當前傳統的CBT(計算機支持的教育培訓體系,Computer Based Training)訓練方式已在一定程度上無法滿足高科技培訓的需要,基于計算機虛擬現實仿真技術的協同式訓練系統將視景仿真和協同工作的概念引入CBT中,它拋棄了傳統的訓練必須在真實的環境和場地下進行的觀念;同時也克服了傳統訓練無法模擬某些現場環境的缺陷,如飛機上、地鐵中、商廈里等,它使受訓人員不用再冒著一定的危險、不用再在投入巨額的設備購買和場地布置的情況下就能參加訓練。通過應用現代化的虛擬現實技術進行協同式訓練系統的研發,將克服實際場地演練的諸多不足,不僅花費小,對環境沒有污染,而且沒有危險,是未來技能培訓的主要手段之一[5][6]。系統在各種高危領域和應急處理場合有著廣泛的應用,可應用于工廠企業、航空、地鐵公司、社區、商店等大型場所的應急訓練;還可用于部隊演習;學校、研究所大型實驗;網絡游戲;遠程醫療等。該系統的研究將推動計算機虛擬現實仿真技術的發展,促進了計算機科學在現實生活中的應用。本文以航空客艙乘務員應急處理訓練為例,介紹基于虛擬現實的協同訓練系統的設計過程、原理及關鍵技術的實現。
一 系統描述
基于虛擬現實的協同訓練系統是一個綜合應用虛擬現實技術、網絡通信技術、三維圖形圖像技術和數據庫技術設計和開發的一個虛擬仿真訓練軟件,具有在虛擬仿真環境中進行多用戶協同操作和基于知識庫的智能評判功能特點。系統利用三維技術構建各種虛擬訓練場景(如飛機、地鐵等),多個用戶在這樣的虛擬仿真環境中,通過網絡進行文字和語音的通信、相互合作完成一個訓練任務。同時,系統提供任務的知識庫進行操作過程的正確性判斷和提示,并詳細記錄各個用戶操作過程,提供專家進行評判(如圖1所示)。系統采用了視景仿真、多用戶協同、知識庫與匹配策略的技術,并在訓練過程中具有多感知性、實時性、互操作性以及真實臨場性的特征,可廣泛應用于特定環境下一個團隊通過相互配合,相互協作來有效地完成訓練任務
在此系統基礎上,加入具體應用的環境(3D場景),利用系統接口和核心功能設計具體應用的驅動模塊,形成具體應用的系統。如進行飛機客艙火災應急處理訓練,系統將裝入一個飛機機艙的場景和訓練角色,多人通過網絡、視景等多種交互方式協同地進行飛機客艙火災應急處理,形成了某一特定應用的協同式訓練的應用系統。

基于虛擬現實的協同訓練系統主要有如下應用特點:
1 基于虛擬現實的協同式訓練系統,通過模擬現場的實際情況,從而提高實際操作人員對各種實際環境的協同處理能力。系統尤其適合于模擬高危領域的操作訓練,如火災、地震、防恐等;
2 克服了傳統訓練中實景再現困難、場地特殊、人員調度復雜等環境因素,適合于飛機、地鐵、鬧市、商住大廈等情況較復雜地區的訓練模擬;
3 降低對人員財物等的安全威脅,也便于人員時間上的安排與調度,減少人力、財力等各方開支,并且間接性地減少了對周圍環境的污染。適合于要求團隊組員同時在現場進行協同訓練的場合,如遠程醫療專家合診、網絡游戲;
4 利用計算機手段,實現訓練模擬,運用多媒體的實現方式,提高人員訓練熱情和整體訓練效果,因而也適用于原理或操作較枯燥的訓練內容,如學校、研究所等實驗仿真。
二 系統實現原理
整個系統實現由三層結構組成(如圖2所示)。底層是操作系統與開發API組成的支撐環境,中間層是由核心程序與接口組成的系統平臺,頂層是三維場景模型與系統功能驅動組成的應用程序。
系統平臺主要由三維場景子系統、協同通信子系統和訓練管理子系統組成。其主要特點:將多用戶協同處理計算機模擬的理念,具體應用到行業技能訓練的領域中,并在訓練過程中,采用了視景仿真、協同、知識庫的技術。
(1) 三維場景子系統
三維場景子系統是用三維造型來模擬現實訓練環境的一種實時渲染圖形系統。系統完成的主要模塊有模型導入、運動仿真、場景設置、碰撞檢測等。
模型導入利用功能強大的三維造型軟件,如3DS Max,MAYA制作三維模型,紋理以及動畫等,然后輸入至訓練場景中,具體包括:3D對象導入、角色導入、動畫導入、材質和紋理的設置、坐標設置、比例變換等等。運動仿真是對場景中人和物體運動的一種數學物理描述以及控制,它包括各種運動類型,如走、跑、轉身、站立、蹲下、取物等等。場景設置主要是提供改變某些場景的參數,改善視覺效果,便于觀察和響應不同的訓練要求,具體包括:燈光設置、視角設置、環境設置、特殊效果設置(如火,煙霧)、聲音設置、紋理材質設置、動態對象的位置、方向和比例設置、坐標設置等等。碰撞檢測主要是防止物體間的相互干涉以及作為某些事件的觸發器,由檢測類型和檢測算法二大部分組成。檢測類型主要有視線范圍檢測(LOS line-of-sight)、三腳架法(TRIPOD)、凸塊檢測方法(BUMP)。LOS、TRIPOD、BUMP的算法主要是加入按一定規則分布的線段矢量,計算與干涉物體的交點,距離,方向以及設置回調函數。
(2) 同步通信子系統
協作通信系統完成的功能由語音通信、場景同步通信二大部分組成。
語音通信主要提供學員之間相互協調聯絡的通信平臺,也是協同訓練中對講、交談等的語音工具。
這里語音通信部分主要采用點對點(也可組播)的語音通信,是針對一個點實現話音的實時采集、處理、播放,同時可與其它點進行可靠的網絡語音數據傳送和接收。對于前者,采用Windows MDK的低層音頻服務,因為低層音頻服務中的回調機制為我們提供了音頻數據,設備驅動程序控制音頻設備在后臺完成錄音和放音的具體操作,通過回調機制,我們又可以檢測到什么時候用完一個數據塊,并及時傳送下一個數據塊,從而保證了聲音的連續,有了這種單機上的實時采集、回放功能后,接下來的工作就是在網絡上傳送語音數據。在點對點網絡傳輸方面,選擇基于無連接的UDP協議,UDP用戶數據報協議能夠向若干臺目標計算機發送數據,接收發自若干個源計算機的數據。在采集話音回放之前,一方面將自己的語音傳給網絡,另一方面接收網絡傳來的語音,具體是利用Windows Socket API實現的。
場景同步通信主要提供多用戶之間場景一致的功能,它由服務器、會話、用戶、網絡消息和分布式對象組成。
多用戶服務器是基于客戶/服務器技術,所有用戶之間的通信必須通過服務器。一個用戶與其他用戶交互必須連接到一個會話上,一個用戶同時只能連接一個會話,并且只能與連接到同一會話的用戶通信。用戶有二個參數,一是用戶名,二是用戶ID,一個客戶在連接或產生會話前必須設置用戶名。網絡消息是用戶之間通信的主要方法,這個消息類似窗口消息,可以在消息中附帶數據。分布式對象是另一個用戶間傳送信息的機制,它相關于場景中某一個實體,且按照一定規則分布到所有用戶機上,分布式對象是類的一個實例,它有自己的屬性,需要時可以通過網絡通信來更新。同步通信技術借鑒了國外的DIS(分布式交互系統)和HLA(高層架構)等技術。
(3) 訓練管理子系統
訓練管理系統主要是用于處理訓練相關的信息,它完成的功能有訓練知識庫、實時跟蹤記錄、沖突解決機制等。
訓練知識庫主要包括訓練數據庫、訓練規則和匹配策略。訓練數據庫主要有學員信息、課程信息、訓練信息等等。訓練規則主要有角色定義與分配規則、評判規則、記分規則,其中評判規則包括動作執行者、動作間的關系、施加對象以及次數等等。匹配策略主要是有序無序的匹配、規則樹的遍歷。
實時跟蹤記錄實際上是對學員的操作流進行管理的一個模塊,它主要有觸發事件、操作信息收集、發送與接收(操作信息)和記錄器組成。
沖突解決機制主要是多學員在協同訓練中發生操作沖突時的一種消除機制。其中簡單的方法是加鎖解鎖、延時的方法,比較高級的有優先級和擁有權的處理。

三 系統應用示例
客艙火災應急處理訓練是利用協同訓練平臺開發的一個應用實例,主要是在模擬飛機機艙內協作完成滅火訓練任務。這個訓練任務描述如下:
客機平穩而正常地行駛著,乘客們安靜地享受著舒適的空中之旅,艙內的乘務員出現在各自的位置上,此時,公共信息廣播:此次航班由上海飛往北京,祝各位旅客旅途愉快。30秒后,前工作區的學員看到屬于她的信息窗顯示:附近有怪異的煙味,請速核查。并且她看到絲絲煙霧飄散。該學員先去查核哪里發生火情,確定是在壁櫥的衣帽間,用手試探門的涼熱,其信息窗口顯示兩級溫度信息:門是涼的/門很燙手;該學員使用話機通知乘務長,并請求附近的乘務員速帶滅火器材來協助,本人去駕駛艙拿應急斧,取來應急斧,在門上開一個小洞,來支援的乘務員拿海倫滅火器來了,對著洞口噴滅火劑,直至火滅,開門檢查燃燒物,防止死灰復燃。最后把火災的處理結果報告乘務長,由乘務長報告給機長。
該應用實例包括一個三維實例場景和一個實例驅動模型。三維實例場景就是飛機機艙、火、煙霧、角色及其他設施,驅動模型是具體應用的情節腳本,由滅火操作、協作規則、評判規則等許多事件構成的。應用實例系統主要界面如圖3所示。

四 結束語
在網絡環境和多用戶視景交互的支持下,人們可以通過交互設備,利用聽覺、視覺、觸覺在虛擬的環境中協作完成訓練任務,從而形成一套具有“視景”和“協同”特色的訓練軟件。本文主要描述了一個基于虛擬現實的多用戶協同訓練系統的結構設計、技術架構、網絡通信和應用示例。隨著基于虛擬現實技術的CBT系統正在逐步取代過去單機、單一任務的CBT系統,將給計算機培訓提供一種嶄新的系統訓練方式,能使許多特殊場合的訓練變得非常方便,同時極大提高培訓的效果。本系統中設計的技術和方法希望對于其他分布式訓練系統的開發具有借鑒作用。
參考文獻
[1] 龐津津,戴述賈.分布式系統仿真技術研究及其實現[J].火力與指揮控制, 2001,(1): 37-40.
[2] 洪津,張萬軍,謝慶華,陳明宏,王永健.虛擬維修訓練系統發展綜述及其關鍵技術探討[J].解放軍理工大學學報(自然科學版),2000,(1):63-67.
[3] 王潤崗,花傳杰,唐科群,王艾萍.坦克車炮長協同訓練仿真系統設計與實現[J].火力與指揮控制, 2008,(9):112-114.
[4] 袁海波,劉厚泉,吳雪峰.虛擬場景動態交互式可視化的研究[J].電腦與信息技術,2008,(6):7-9.
[5] 湯衛華,滅火救援協同戰術訓練探析[J].公安研究, 2007,
(1):46-47
[6] 劉艷,邢志祥,劉偉.虛擬現實技術在消防模擬訓練中的應用研究進展[J].消防科學與技術,2009,(3):214-216.