999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Unity3D的沉浸式機械手表虛擬仿真系統研究

2020-09-10 13:32:24李亞東孫會來
佳木斯職業學院學報 2020年3期

李亞東 孫會來

摘 要:本文以Unity3D游戲引擎為開發平臺、Kinect為人體識別交互設備,對開發流程、動畫制作、API數據連接、手勢識別、光線追蹤法碰撞檢測、物理模型交互操作六個方面進行研究設計,利用Ray射線進行物理識別,選擇和UI圖標點擊,設計了具有培訓模式、練習模式、拓展模式三種模式交互沉浸式機械手表虛擬仿真系統,具有前瞻性和借鑒意義,能夠有效促進學生深層次理解知識點、增強實踐能力和培養創新意識。

關鍵詞:Unity3D;沉浸式;機械手表;Kinect;虛擬仿真

中圖分類號:TP391.9 文獻標識碼:A 文章編號:2095-9052(2020)03-0177-03

Unity3D游戲引擎已經成為開發VR/AR項目的主流引擎。隨著虛擬現實技術的不斷發展,人們不僅僅滿足于傳統的操作體驗,對人機交互、沉浸式體驗方面提出了更高的要求[1]。Kinect作為新時代人機交互技術的產物,在人機交互領域帶來了革命性的改變[2],通過Unity3D平臺利用Kinect作為交互設備,豐富了虛擬裝配人機交互方式,提高了用戶操作沉浸式體驗效果。

機械手表由機芯和外觀兩部分組成,由于零件數量多、尺寸小、易損壞和難觀察等特點,出現難以理解機芯兩條邏輯控制流、擺輪組件的裝配約束關系等,難以實現裝配振動系統、軸承(鉆石)等實踐教學,難以降低游絲部件、擒縱齒軸、表針等零部件損耗,很難提高機械手表的裝配質量和實現復雜組件的實踐教學。為了解決以上難題,利用Unity3D平臺、Kinect交互設備開發出手勢識別的沉浸式機械手表虛擬仿真系統。將虛擬裝配與實際裝配相結合,創建沉浸、半沉浸的虛擬環境,對于培訓和教學而言,可以提高裝配操作人員的工作效率[3]。對培養學生的工程意識、了解結構設計的原則、培養理論聯系實際、提高分析問題和解決問題的能力等具有重要意義,同時也是啟迪學生創新思維的重要手段[4]。

1 系統實現功能和開發流程

本系統實現的功能:通過利用手部交互手勢對機械手表虛擬仿真系統里三種模式(培訓模式、練習模式和拓展模式)中每一種模式下四種類型(傳動系統(無夾板)、機芯裝配、整機裝配、復雜部(組)件)的物理模型和UI按鈕圖標控制,實現機械手表虛擬仿真學習系統操作直接自然、沉浸式體驗好、裝配效率高的目的。

為了保證本系統開發的系統性與完整性,因此制定系統整體開發流程,見圖1。首先,利用SolidWorks建立零部件三維數字模型,并根據實際操作過程簡化模型,將三維模型導出為Step格式。其次,利用3DSMax優化物理模型修改器、調整軸心和軸線、制作裝拆過程演示動畫、調整系統參數比例,并導出FBX格式資源。再次,在PC端安裝Kinect for windows SDK2.0軟件開發包來管理Kinect采集的數據流,用于實現Unity3D與Kinect之間的數據傳遞,并設定Palm等8類手勢識別閾值,實現虛擬手與Kinect人體識別交互手勢一一對應。最后,在Unity3D中對物理模型、動畫資源、材質球、背景環境、界面規劃等進行設置,并利用Java和C#腳本語言對場景中的UI按鈕圖標、物理模型和語音介紹等被賦予腳本組件且進行邏輯關聯。從而完成本系統機械手表虛擬仿真系統里三種模式下四種類型的物理模型和UI按鈕圖標沉浸式交互控制。

2 沉浸式人機交互的實現

2.1 制作仿真動畫

根據ST36機械手表實際裝配、維修保養的工藝過程,確定傳動系統(無夾板)、機芯裝配、整機裝配、復雜部(組)件裝配四種類型的拆裝路徑規劃。例如,針對復雜振動系統(見圖2)的裝配序列規劃:首先,裝配擺輪部件和游絲部件,確保游絲內端與內樁配合;其次,將活動外樁環部件和快慢針部件裝配在擺夾板上,確保快慢針內圓面與活動外樁環外圓面配合;再次,裝配防震器部件,確保防震座外圓斜面與活動外樁環內圓斜面配合,利用U型銷將活動外樁環部件、快慢針部件和防震器部件固定在擺夾板上;最后,裝配第一步裝配好的擺輪部件和游絲部件,確保游絲外端與外樁配合。

為了在培訓模式下,便于學習者更高效率的學習,選用3DSMax軟件制作拆裝過程動畫。依據拆裝路徑規劃,將每一個動作都用關鍵幀來實現,即每改變一次零部件的位置和角度等操作過程,都要打一個關鍵點,從而完成與實際裝配、維修保養工藝過程相匹配的動畫仿真。例如,將SolidWorks軟件中創建好的振動系統三維模型以Step格式導入到3DSMax軟件中,進行優化修改器、調整軸心和軸線等完善模型。依據振動系統由擺輪部件、游絲部件、活動外樁環部件、快慢針部件、防震器部件和擺夾板五大部件組成,將各個零部件按照裝配關系分配到五大組成部分中,并打好組,將打好組的部件依據裝配序列規劃,放置在合適的位置。在添加動作之前,應當利用Affect Pivot/Center to Object使坐標位于零部件的中心。在3DSMax軟件中,選擇Auto Key進入自動關鍵幀模式,首先選中游絲部件為第0幀,將時間軸移動到第10幀,并將游絲部件移動到游絲內端與擺輪部件的內樁配合位置,依次類推,在各個部件需要配合處打好關鍵幀。在裝配過程中,為了清晰觀察零部件的配合過程,需要將零部件進行旋轉,此時應當設置好旋轉角度并打好關鍵幀。將制作好的關鍵幀動畫導出成FBX格式的文件并導入到Unity 3D中,進行人機交互設置。

2.2 Kinect與Unity3D的數據連接

Kinect體感交互設備的應用能夠讓用戶擺脫鍵盤、鼠標、手柄等傳統交互設備,增強沉浸式體驗效果。在PC端安裝Kinect for windows SDK2.0軟件開發包來管理Kinect采集的數據流,用于實現Unity3D與Kinect之間的數據傳遞。Kinect設備初始化之后,兩個深度攝像頭協同工作實時采集人體手部信息,通過Kinect API數據流中KinectManger類控制對NUIAPI數據流的開啟來采集人體手部信息識別,獲取手部姿態深度信息數據流。在Unity3D平臺中利用C#或Java語言編寫腳本函數GetUsersLblTex控制獲取Kinect采集的深度數據流,從而將人體交互手勢通過Kinect體感交互設備傳遞到Unity3D中,達到虛擬手與人體交互手勢匹配的目的。

2.3 Kinect關節數據與手勢識別

在本文基于Unity3D的沉浸式機械手表虛擬仿真系統研究中,將Unity3D中虛擬手與Kinect人體識別交互手勢一一對應,可以加強沉浸式體驗效果。利用Kinect骨骼追蹤引擎捕捉手部關節5個關節點X、Y、Z三個值的空間坐標和轉向信息,根據手部關節5個關節點位置信息的變化狀態,通過對KinectManager管理API中默認的手勢參數進行相應的手勢識別閾值設定,從而確定Palm(松開)、Fist(握拳)、Pull(拉近)、Push(推遠)、SwipeLeft(向左揮手)、SwipeRight(向右揮手)、SwipeUp(向上滑動)、SwipeDown(向下滑動)8類姿勢動作來達到Unity3D中虛擬手與Kinect人體識別交互手勢一一對應的目的,實現沉浸式交互控制虛擬裝配系統相關操作。利用Palm姿勢實現將握拳手勢與松開手勢真實形象區分開,提高交互體驗;利用Fist姿勢實現物理識別選擇激活、移動和UI圖標點擊的交互;由于機械手表零部件模型大小不一樣和復雜部位難以觀察等,利用Pull和Push手勢實現通過控制Unity3D虛擬場景中Main Camera的位置來達到物理模型遠近調整的目的;由于振動系統等復雜組件裝配約束關系難以觀察、方便裝配視角調整等,利用SwipeLeft、SwipeRight、SwipeUp、SwipeDown姿勢來控制旋轉場景視角。若人體交互手勢與體感交互設備中設定的一樣,并且Kinect攝像頭發射的ray射線碰到三維零部件模型的盒碰撞體或二維UI按鈕圖標,在Unity 3D中開發腳本程序就會調用函數的語句來觸發模型或按鈕相對應的交互操作命令。

2.4 光線追蹤法碰撞檢測

為了避免在虛擬裝配過程中零部件與零部件、虛擬手與零部件之間發生不切實際的穿透現象,因此需要在Unity3D中給虛擬手以及零部件模型添加上剛體組件。為了檢測碰撞信息,需要給虛擬手與零部件三維模型添加盒碰撞體屬性。根據零部件模型的復雜程度決定添加一個或多個同類型或不同類型包圍盒,通過調節BoxColider、SphereColider、CapsuleColider和MeshColider等包圍盒的位置以及大小來提高碰撞包圍盒與三維模型的重合度,逼近真實操作的準確度,切實提高沉浸感效果。

本文采用光線追蹤技術檢測體感交互設備Kinect攝像頭發射的Ray射線是否碰到三維零部件模型的盒碰撞體或二維UI按鈕圖標,在Unity 3D中開發腳本程序調用函數的語句來觸發模型或按鈕相對應的交互操作命令,碰撞檢測流程見圖3。首先,Kinect攝像頭發射的Ray射線經過人手交互手勢,延長到Unity3D虛擬場景中。其次,針對射線是否與物理三維模型和UI二維按鈕圖標發生碰撞,均需利用碰撞檢測算法函數進行判斷,是否發生同人手交互手勢對應的虛擬手與物理三維模型或UI二維按鈕圖標的碰撞。最后,碰撞會獲取碰撞點、碰撞物體或圖標坐標等相關信息,并且觸發碰撞對象調用其事件函數。

2.5 物理模型交互操作的實現

增強機械手表裝配過程沉浸式體驗效果,便于觀察裝配約束關系,提高虛擬仿真系統裝配效率,物理模型能夠激活、移動、旋轉并實時更新坐標位置跟隨虛擬手一起運動,正常狀態時虛擬手采用Palm姿勢、握拳時虛擬手采用Fist姿勢形象地區分松開與握拳姿勢。零部件物理模型移動交互操作流程圖見圖4。首先,選擇三種培訓模式中的一種裝配類型,Unity3D開始加載相應裝配類型三維場景資源。接著通過光線追蹤法碰撞檢測,判定Kinect攝像頭發射的Ray射線碰到三維零部件模型的盒碰撞體,并且虛擬手處于Fist姿勢、物理模型符合裝配序列規劃。其次,虛擬手保持Fist姿勢拖動,則物理模型跟隨虛擬手進行坐標變換,從而使物理模型能夠移動并實時更新坐標位置,跟隨虛擬手一起運動在同一位置,拖動物理模型的速度應當根據設備參數情況和沉浸式交互體驗效果,設定在合理地閾值范圍內。當運動物理模型與固定物理模型之間距離小于閾值時,并且虛擬手處于Palm姿勢,運動物理模型會自動裝配到固定物理模型上,實現虛擬場景中模型與模型間裝配約束的自動虛擬裝配。最后判定選擇的裝配類型中若所有物理模型裝配完成,則點擊相應UI圖標進行退出系統、漫游等其他操作。

3 結語

基于Unity3D的沉浸式機械手表虛擬仿真系統能夠在一定程度上解決教學中遇到的問題:

體驗方式的創新:相比于鍵盤、鼠標等設備的交互方式,采用Kiect作為交互設備,操作直接自然、沉浸式體驗效果更佳,以達到更好地傳遞知識的目的。

教學方式方法的提升:改變教師主導模式,激勵學生自主學習。給予學生充分的學習自由,便于學生碎片化、移動化學習,提高學生的學習興趣和學習效率。

參考文獻:

[1]謝振清.基于Unity3D的虛擬裝配技術研究與實現[D].哈爾濱工業大學,2018.

[2]吳萍萍.Kinect體感交互技術的游戲設計與實現[J].湖南郵電職業技術學院學報,2019,18(3):39-41.

[3]張宇.數控機床刀架虛擬裝配仿真系統的設計與實現[J].機械設計與制造工程,2013,42(5):16-18.

[4]馮桂珍,池建斌,邢海軍,等.基于Unity3D的減速器虛擬拆裝實驗[J].圖學學報,2018,39(2):305-308.

(責任編輯:李凌峰)

主站蜘蛛池模板: 色婷婷视频在线| 亚洲第一区精品日韩在线播放| 欧美午夜在线观看| 国产精品视频免费网站| 精品超清无码视频在线观看| 在线观看热码亚洲av每日更新| 欧美日韩午夜| 91无码人妻精品一区二区蜜桃| 毛片视频网| 国产十八禁在线观看免费| 国产精品开放后亚洲| 激情视频综合网| 国产精品自拍露脸视频| 毛片久久久| 亚洲国产天堂久久综合| 亚洲欧美日韩另类| 国产成人91精品免费网址在线| 亚洲欧洲日本在线| 欧美啪啪一区| 91黄色在线观看| 伊人激情久久综合中文字幕| 中文字幕在线看| 久久久久久久97| 91精品专区国产盗摄| 久久午夜夜伦鲁鲁片无码免费| 国产午夜福利在线小视频| 五月婷婷综合色| 国产成人亚洲综合A∨在线播放| 91福利在线看| 在线观看视频99| 精品无码一区二区三区在线视频| 九九热精品视频在线| 永久成人无码激情视频免费| 欧美日本在线播放| 久久久噜噜噜| 黄色网页在线播放| 日本草草视频在线观看| 亚洲三级色| 国产超碰一区二区三区| 91精品专区| 欧美福利在线观看| 亚洲av无码牛牛影视在线二区| 激情午夜婷婷| 色香蕉影院| 国产精品天干天干在线观看| 一级毛片无毒不卡直接观看| 不卡视频国产| 国产无吗一区二区三区在线欢| 一级成人a毛片免费播放| 国产91丝袜在线播放动漫 | 亚洲欧美在线精品一区二区| 污污网站在线观看| 亚洲中文字幕无码爆乳| 四虎永久在线精品影院| 国产丝袜第一页| 日本精品影院| 国产午夜无码片在线观看网站| 91精品国产综合久久不国产大片| 无码中文AⅤ在线观看| 97视频免费在线观看| 亚洲天堂区| 日韩成人在线一区二区| 中文字幕调教一区二区视频| 99热线精品大全在线观看| 激情在线网| 成人免费视频一区| 首页亚洲国产丝袜长腿综合| 精品综合久久久久久97| 成年网址网站在线观看| 91无码视频在线观看| 欧美中文字幕一区| 国产永久免费视频m3u8| 亚洲 欧美 日韩综合一区| 久久精品嫩草研究院| 天天综合网色中文字幕| 成人小视频网| 18黑白丝水手服自慰喷水网站| 91破解版在线亚洲| 狠狠色狠狠综合久久| 欧美三级视频在线播放| 毛片基地视频| 91亚洲精选|