• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于分布式虛擬現(xiàn)實(shí)的連鑄多人協(xié)作系統(tǒng)

      2019-07-25 01:44:04闞闊張凱峰
      物聯(lián)網(wǎng)技術(shù) 2019年4期
      關(guān)鍵詞:虛擬現(xiàn)實(shí)

      闞闊 張凱峰

      摘 要:針對(duì)連鑄生產(chǎn)過程的多人協(xié)作培訓(xùn),文中應(yīng)用Unity 3D游戲引擎和Photon Server服務(wù)器引擎,設(shè)計(jì)并實(shí)現(xiàn)了一套基于客戶端/服務(wù)器的分布式虛擬仿真協(xié)作系統(tǒng)。系統(tǒng)將地理上相互獨(dú)立的用戶通過計(jì)算機(jī)網(wǎng)絡(luò)連接到同一個(gè)虛擬世界,使用戶共享資源,實(shí)現(xiàn)多用戶的協(xié)同工作,滿足連鑄培訓(xùn)的需求。

      關(guān)鍵詞:虛擬現(xiàn)實(shí);分布式技術(shù);多人協(xié)作;信息同步;仿真協(xié)作;分布式虛擬

      中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2095-1302(2019)04-0-02

      0 引 言

      連鑄是指將液態(tài)鋼水經(jīng)過一系列復(fù)雜的工藝過程變?yōu)楣虘B(tài)鋼坯的工藝[1]。連鑄生產(chǎn)工藝復(fù)雜,實(shí)際生產(chǎn)過程需要多工種配合工作。在連鑄生產(chǎn)培訓(xùn)過程中,多工種的配合工作已經(jīng)成為連鑄生產(chǎn)培訓(xùn)的重要環(huán)節(jié),也是連鑄工人需要掌握的重要技能。所以實(shí)現(xiàn)連鑄多人協(xié)作系統(tǒng)成為連鑄培訓(xùn)的重要內(nèi)容。

      近年來,計(jì)算機(jī)網(wǎng)絡(luò)通信技術(shù)的快速發(fā)展推動(dòng)了信息技術(shù)的進(jìn)步[2]。計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的更新和變化改變了傳統(tǒng)的信息應(yīng)用方式。由于傳統(tǒng)單機(jī)虛擬現(xiàn)實(shí)系統(tǒng)不能滿足用戶需求,因此分布式虛擬現(xiàn)實(shí)(Distributed Virtual Reality,DVR)系統(tǒng)應(yīng)運(yùn)而生[3]。

      本文針對(duì)連鑄生產(chǎn)過程中的多人協(xié)作培訓(xùn)過程,應(yīng)用Unity 3D游戲引擎和Photon Sever服務(wù)器引擎,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于客戶端/服務(wù)器的分布式虛擬仿真協(xié)作系統(tǒng)[4]。

      1 系統(tǒng)協(xié)同架構(gòu)

      本系統(tǒng)采用混合式協(xié)同架構(gòu)方法解決分布式虛擬現(xiàn)實(shí)時(shí)空不同步的問題[4-6],架構(gòu)如圖1所示,系統(tǒng)分為客戶端和服務(wù)器兩部分。

      客戶端負(fù)責(zé)用戶的控制流程輸入、場(chǎng)景實(shí)現(xiàn)、位置移動(dòng)、碰撞檢測(cè)、與服務(wù)器進(jìn)行數(shù)據(jù)傳輸?shù)炔僮鳌.?dāng)用戶進(jìn)行操作時(shí),如控制工藝生產(chǎn)流程操作或位置移動(dòng),客戶端接收到操作信息后,執(zhí)行動(dòng)作完成任務(wù),并將執(zhí)行完的控制流程信號(hào)、位置信息和碰撞信息發(fā)送到服務(wù)器中。同時(shí)服務(wù)器監(jiān)聽發(fā)送的數(shù)據(jù)包端口,實(shí)時(shí)接收并更新和顯示場(chǎng)景中的生產(chǎn)狀態(tài)信息、位置信息和碰撞信息,及時(shí)把運(yùn)行狀態(tài)反饋給操作用戶。

      服務(wù)器的主要功能是對(duì)在線用戶進(jìn)行管理、多任務(wù)處理和場(chǎng)景中用戶位置同步更新等。系統(tǒng)啟動(dòng)后,當(dāng)有客戶端成功連到服務(wù)端時(shí),服務(wù)器按照用戶選擇的工種任務(wù)進(jìn)行編號(hào)標(biāo)識(shí)。多個(gè)用戶同時(shí)操作后,服務(wù)器根據(jù)客戶端傳來的數(shù)據(jù)同步更新碰撞、用戶位置和生產(chǎn)流程信息,再將同步后的信息分別發(fā)送到每個(gè)客戶端,最終實(shí)現(xiàn)在虛擬場(chǎng)景的同步協(xié)作生產(chǎn)過程[6]。

      2 平臺(tái)開發(fā)環(huán)境搭建

      平臺(tái)開發(fā)環(huán)境構(gòu)成如下:

      (1)操作系統(tǒng):Windows 7;

      (2)集成開發(fā)環(huán)境:Visual Studio 2015;

      (3)客戶端開發(fā):Unity 3D游戲引擎;

      (4)服務(wù)器開發(fā):Photon Server服務(wù)器引擎;

      (5)開發(fā)語言:C#。

      3 系統(tǒng)實(shí)現(xiàn)

      3.1 服務(wù)器的實(shí)現(xiàn)

      系統(tǒng)服務(wù)器采用Photon Server服務(wù)器引擎開發(fā)。Photon Server是網(wǎng)絡(luò)游戲引擎供應(yīng)商Exit Game開發(fā)的一套高性能服務(wù)器引擎。不同于其他服務(wù)器的套接字(Socket)采用Java實(shí)現(xiàn),Photon Server的核心使用C++開發(fā),其效能相較其他服務(wù)器更高[7-8]。

      3.1.1 客戶端連接

      在服務(wù)器中,每當(dāng)有一個(gè)客戶端成功連接,服務(wù)器都會(huì)調(diào)用CreatePeer()函數(shù)創(chuàng)建客戶端請(qǐng)求,并在客戶端列表中加入客戶端ID。當(dāng)客戶端斷開連接,服務(wù)器調(diào)用Disconnect()處理客戶端斷開時(shí)需釋放的資源等事項(xiàng)。代碼如下:

      3.1.2 服務(wù)器數(shù)據(jù)接收和同步

      在一個(gè)分布式系統(tǒng)中,服務(wù)器最主要的工作就是接收來自不同客戶端的數(shù)據(jù)信息,并將數(shù)據(jù)信息同步更新到其他客戶端中。在Photon Server服務(wù)器中,采用OnOperationRequest()函數(shù)接收來自不同客戶端的位置、碰撞和工序數(shù)據(jù)信息,再通過OnOperationReponse()函數(shù)將信息同步到其他客戶端,如圖2所示。

      3.2 客戶端實(shí)現(xiàn)

      本系統(tǒng)采用Unity 3D游戲引擎開發(fā)客戶端。Unity 3D是由Unity Technologies開發(fā)的一個(gè)讓用戶能輕松快速創(chuàng)建對(duì)象、引入外部資源以及通過代碼把它們聯(lián)系起來的物理引擎,同時(shí)也是一個(gè)全面整合的專業(yè)游戲引擎[9-10]。

      3.2.1 用戶獲取位置、旋轉(zhuǎn)信息

      在Unity 3D中,Transform組件能用于控制模型旋轉(zhuǎn)、移動(dòng)、縮放等,是模型的基礎(chǔ)組件。其中,Position變量用于表示模型在世界坐標(biāo)的位置;Rotation變量用于表示模型按世界坐標(biāo)系X,Y,Z坐標(biāo)軸旋轉(zhuǎn)的角度;Scale變量用于表示模型放大的倍數(shù)。

      在多人協(xié)作操作中,每個(gè)客戶端需要實(shí)時(shí)獲取客戶移動(dòng)位置、旋轉(zhuǎn)角度等數(shù)據(jù),并將數(shù)據(jù)傳到服務(wù)器中,同時(shí)接受服務(wù)器傳送的其他客戶端的數(shù)據(jù)進(jìn)行同步。系統(tǒng)獲取自身位置、旋轉(zhuǎn)信息,并同步其他客戶端位置、旋轉(zhuǎn),代碼如下:

      3.2.2 物體碰撞信息

      Unity 3D的碰撞檢測(cè)功能集成于其內(nèi)置的PhysX物理引擎中,通過碰撞器組件(Collider)實(shí)現(xiàn)。其中Box Collider為軸對(duì)齊包圍盒,Sphere Collider為球包圍盒。碰撞器與處理物理運(yùn)動(dòng)特性的剛體組件(Rigidbody)配合使用。

      為客戶端上的所有用戶在虛擬場(chǎng)景中添加空物體GameObject,此空物體表示用戶的位置。在空物體上添加Box Collider組件和Rigidbody組件。其中Box Collider組件用于檢測(cè)兩個(gè)添加Box Collider組件的用戶之間是否存在碰撞,Rigidbody組件能使兩個(gè)發(fā)生碰撞的用戶不存在穿透現(xiàn)象。當(dāng)客戶端檢測(cè)到發(fā)生碰撞時(shí),會(huì)記錄下發(fā)生碰撞的用戶名字和用戶位置信息,并傳到服務(wù)器中進(jìn)行同步。其記錄信息代碼如下:

      4 實(shí)際運(yùn)行效果

      連鑄協(xié)作培訓(xùn)系統(tǒng)運(yùn)行良好。圖3展示了客戶端連接服務(wù)器過程;圖4展示了多個(gè)用戶在虛擬場(chǎng)景中的移動(dòng)情況;圖5展示了兩個(gè)客戶端之間虛擬場(chǎng)景同步的情況。

      5 結(jié) 語

      本文針對(duì)連鑄的多人協(xié)作培訓(xùn),開發(fā)了以Photon Server服務(wù)器引擎和Unity 3D游戲引擎為核心的分布式虛擬現(xiàn)實(shí)連鑄培訓(xùn)多人協(xié)作系統(tǒng),實(shí)現(xiàn)了多用戶在虛擬系統(tǒng)中的位置同步,碰撞檢測(cè)和生產(chǎn)狀態(tài)同步,滿足了連鑄多人培訓(xùn)的需求,具有良好的用戶體驗(yàn)和使用效果。

      參 考 文 獻(xiàn)

      [1]朱朝月.連鑄虛擬交互系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].唐山:華北理工大學(xué),2017.

      [2]杜寶江,林靈,徐剛.分布式交互技術(shù)在虛擬培訓(xùn)中的研究與應(yīng)用[J].信息技術(shù),2015(6):157-161.

      [3]謝敬偉.分布式虛擬現(xiàn)實(shí)交互仿真系統(tǒng)研究[D].杭州:浙江大學(xué),2017.

      [4]耿小兵,劉思江,朱曉陽,等.洗消分隊(duì)?wèi)?zhàn)術(shù)技術(shù)仿真訓(xùn)練系統(tǒng)研究[J].系統(tǒng)仿真學(xué)報(bào),2012,24(2):339-343.

      [5]文娟.虛擬現(xiàn)實(shí)技術(shù)在出版和教育領(lǐng)域的應(yīng)用分析[J].信息記錄材料,2018,19(10):150-152.

      [6]朱東方,蘇群星,劉鵬遠(yuǎn).裝備分布式虛擬維修訓(xùn)練云仿真關(guān)鍵技術(shù)[J].計(jì)算機(jī)應(yīng)用,2013,33(10):2778-2782.

      [7]王立,張勇.船舶航行視景分布式可視化仿真技術(shù)研究[J].艦船科學(xué)技術(shù),2016,38(22):76-78.

      [8]黃鵬.基于Unity 3D的分布式協(xié)同虛擬裝配仿真研究及實(shí)現(xiàn)[D].湘潭:湘潭大學(xué),2017

      [9]李大鵬.基于P2P架構(gòu)的多人在線游戲的安全性研究[D].長(zhǎng)春:吉林大學(xué),2017.

      [10]賀馮政.網(wǎng)絡(luò)游戲服務(wù)器通信架構(gòu)及關(guān)鍵技術(shù)研究[D].成都:電子科技大學(xué),2008.

      猜你喜歡
      虛擬現(xiàn)實(shí)
      虛擬現(xiàn)實(shí)技術(shù)在中學(xué)校園中的應(yīng)用
      甘肅教育(2020年4期)2020-09-11 07:41:22
      國(guó)外虛擬現(xiàn)實(shí)(VR)教育研究與啟示
      論虛擬現(xiàn)實(shí)藝術(shù)的“沉浸”
      REALITY BITES
      REALITY BITES
      漢語世界(2017年3期)2017-06-05 15:01:42
      風(fēng)口上的虛擬現(xiàn)實(shí)
      商周刊(2017年24期)2017-02-02 01:42:55
      虛擬現(xiàn)實(shí)技術(shù)向科幻小說借靈感
      海外星云(2016年7期)2016-12-01 04:18:00
      虛擬現(xiàn)實(shí):另一個(gè)真實(shí)世界
      HTC斥資千萬美元入股虛擬現(xiàn)實(shí)設(shè)備商WEVR
      虛擬現(xiàn)實(shí)炫酷來襲走出實(shí)驗(yàn)室坎坷漫長(zhǎng)
      平原县| 穆棱市| 麦盖提县| 张家口市| 建昌县| 定结县| 元江| 当涂县| 云林县| 沂南县| 梓潼县| 武义县| 湾仔区| 岳阳市| 南溪县| 柳林县| 高州市| 涟源市| 平江县| 临沂市| 沁水县| 池州市| 英吉沙县| 高碑店市| 镇远县| 枣强县| 普兰店市| 建德市| 茂名市| 永和县| 太仓市| 丹阳市| 林甸县| 潜江市| 乌拉特前旗| 武平县| 克山县| 乐亭县| 蓝田县| 雷山县| 博爱县|