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

汽車主減速器虛擬裝配中的關鍵技術研究

2021-09-23 10:52:44陳春曉徐勁力
機械設計與制造 2021年9期
關鍵詞:效果用戶模型

吳 波,陳春曉,徐勁力

(武漢理工大學機電工程學院,湖北 武漢430070)

1 引言

隨著計算機圖像處理與識別等技術的發展,選擇使用Unity游戲引擎作為虛擬裝配系統開發工具的研究成為了當前的熱門,再加上HoloLens頭戴式顯示器的出現,已經有越來越多的學者開始使用Unity來探索HoloLens在虛擬裝配系統中可發揮的潛能。文獻[1]使用Unity來構建應用程序對HoloLens的虛擬裝配能力進行了評估,并表明雖然HoloLens是一個具有虛擬裝配能力前景的設備,但是要將其應用在工廠的組裝環境中,某些領域還需要進一步的改進,比如追蹤的準確性等;文獻[2]使用Unity和HoloLens實現了一個允許用戶與虛擬物體交互時不需要將其視線從物理環境中移開的增強現實系統;文獻[3]基于Unity和Holo-Lens開發了一套虛實結合的船舶輔機拆裝系統;文獻[4]設計并實現了基于HoloLens的基站線束設備AR輔助布線系統;文獻[5]提出一種基于HoloLens的核電站設備維修輔助系統應用構想。

另外,在對虛擬裝配進行研究的同時必不可少的需要對其所包含的關鍵技術進行詳細的探究。文獻[6]在開發虛擬吊裝訓練系統的同時對零件實體的表達和顯示、自由度規約運動導航和實時碰撞檢測等關鍵技術進行了研究;文獻[7]通過探究人機交互、裝配序列規劃、碰撞檢測等虛擬裝配過程中的關鍵技術開發了主軸箱的虛擬裝配系統。

針對上述內容,以Unity為三維引擎,結合HoloLens設備,對汽車主減速器虛擬裝配中的著色器、碰撞檢測和人機交互等關鍵技術進行深入的研究,為進一步實現主減速器虛擬裝配系統奠定堅實的基礎。

2 著色器技術

著色器技術是通過對三維模型進行渲染來使用戶可以觀察到各種各樣的圖像顯示效果,目前Unity中比較常用的是頂點/片元著色器。

2.1 光照模型分析

光照模型是對真實世界中復雜光照進行一定簡化后的理想模型,可以模擬光從發射到與物體相交再到人眼中的效果,是影響虛擬場景中模型渲染效果的關鍵因素之一。

2.1.1 漫反射與Lambert光照模型

由于漫反射光照符合Lambert定律,即反射光線的強度與入射點表面法向和光源方向之間夾角的余弦成正比。為此可將Lambert漫反射光照方程寫為式(1)所示:

式中:Idiff—漫反射的光照強度;kd(0<kd<1)—漫反射系數;Il—點光源的光照強度;N—入射點表面的單位法向量;L—從入射點指向光源的單位方向向量;另外,為了防止的N與L之間夾角的余弦值為負從而避免物體被從后面來的光源照亮,使用max函數來將其最小值截取到0。

在Unity中選擇頂點/片元著色器并使用Cg/HLSL語言構建Lambert光照模型,得到其材質球如圖1(a)所示,將其應用于主減速器零部件中的主動齒輪上渲染效果,如圖1(b)所示。

圖1 Lambert光照模型的材質球及其渲染效果Fig.1 Material of Lambert Lighting Model and Its Rendering Effect

從上圖中可以看出,雖然Lambert光照模型可以表現出主動齒輪的光照現象,但是對其表面上的金屬光澤效果卻顯得力不從心,為此,可在漫反射的基礎上加上鏡面反射從而得到渲染效果更好的Phong光照模型。

2.1.2 鏡面反射與Phong光照模型

鏡面反射的光照強度與反射光線和觀察視線之間的夾角有關,其光照模型,如式(2)所示:

式中:Ispec—鏡面反射的光照強度;ks表示鏡面反射系數;ns—高光指數;V—從入射點指向視點的單位觀察向量。

所以綜合考慮漫反射和鏡面反射兩個因素,可得出式(3)所示的光照方程:

在Unity中以同樣的方法構建Phong光照模型,得到其材質球如圖2(a)所示,將其應用于主動齒輪上渲染效果,如圖2(b)所示。

圖2 Phong光照模型的材質球及其渲染效果Fig.2 Material of Phong Lighting Model and Its Rendering Effect

從圖中可以看出,Phong光照模型已經可以實現主動齒輪表面上的金屬光澤,但是其渲染效果依舊不夠明顯。為此,提出Blinn-Phong光照模型。

2.1.3 Blinn-Phong光照模型

Blinn-Phong的基本思想是引入L和V的中間向量H,從而將Phong光照模型的表達式改為,如式(4)所示:

綜合考慮漫反射和鏡面反射兩個因素,可得出式(5)所示的光照方程:

在Unity中以同樣的方法構建Blinn-Phong光照模型,得到其材質球效果如圖3(a)所示,將其應用于主動齒輪上效果,如圖3(b)所示。

圖3 Blinn-Phong光照模型的材質球及其渲染效果Fig.3 Material of Blinn-Phong Lighting Model and Its Rendering Effect

從上圖中可以看出,Blinn-Phong光照模型對于主動齒輪表面上的金屬光澤渲染效果要比Phong光照模型更加明顯與自然。

2.2 Half Lambert光照模型的引入

對于上述所實現的光照模型著色器來說,在光照無法到達的區域,其所渲染的主動齒輪外觀通常是全黑的,沒有任何的明暗變化效果,因此這會使主動齒輪的背光面失去所有的細節表現。為此,可在原Lambert光照模型的基礎上進行一個簡單的修改,即引入Half Lambert光照模型,從而來克服模型背光面明暗一樣的問題。根據文獻[8]在《Unity Shader入門精要》中對Half Lambert光照模型的敘述,可將廣義的Half Lambert光照模型公式概括,如式(6)所示:

在絕大多數情況下,α和β的值均為0.5,因此,式(6)可進一步改寫式(7)為:

從式(7)中可以看出Half Lambert光照模型將N·L的結果范圍從[-1,1]映射到[0,1]范圍內,也就是說,對于模型的背光面,Lambert光照模型將點積結果都映射在同一個值,即0值處,而在Half Lambert光照模型中,不同的點積結果會映射在不同的值上,因此,背光面也出現相應的明暗變化。

最后,可將綜合考慮Half Lambert和Blinn-Phong模型的光照方程表達式,如式(8)所示:

在Unity中以同樣的方法構建Half Lambert和Blinn-Phong相結合的光照模型,得到其材質球如圖4(a)所示,將其應用于主動齒輪上效果,如圖4(b)所示。

圖4 Half Lambert和Blinn-Phong光照模型的材質球及其渲染效果Fig.4 Material of Half Lambert & Blinn-Phong Lighting Model and Its Rendering Effect

從圖中可以看出,Half Lambert和Blinn-Phong相結合的光照模型不僅改善了主動齒輪背光區域的明暗效果,使其具有相應的細節表現,同時在需要有金屬光澤的材質表面上也有很好的渲染效果。為此,可將基于Half Lambert和Blinn-Phong光照模型的著色器技術作為主減速器虛擬裝配中三維模型的渲染方式,以便可以獲取到高真實度的虛擬場景。

3 碰撞檢測技術

碰撞檢測的本質就是在同一時刻檢測虛擬環境中是否有兩個或者多個虛擬物體占據同一個空間區域,從而來判斷虛擬物體之間是否產生了碰撞。

3.1 基于Unity的碰撞檢測

Unity中的碰撞檢測機理使用的是基于層次包圍盒的算法。層次包圍盒方法的核心思想是用體積略大而幾何特性簡單的包圍盒來近似地描述復雜的幾何對象,從而只需對包圍盒重疊的對象進行進一步的相交測試[9],這樣可以大大提高碰撞檢測的速度從而快速篩選出產生碰撞的物體。

在Unity中如果想要實現模型對象之間的碰撞檢測,首先必須要給其添加合適的Collider(碰撞器)。目前,Unity提供了6種碰撞器,分別是適用于規則六面體的Box Collider(盒子碰撞器)、適用于球體或者旋轉物體的Sphere Collider(球體碰撞器)、適用于類似橢圓物體的Capsule Collider(膠囊碰撞器)、適用于形狀復雜物體的Mesh Collider(網格碰撞器)、適合在車輪與其他物體碰撞時使用的Wheel Collider(車輪碰撞器)和適用于地形表面的Terrain Collider(地形碰撞器)。其中,盒子碰撞器、球體碰撞器和膠囊碰撞器作為基本碰撞器,其結構簡單、檢測效率高,但是密封性較差;而網格碰撞器雖然可以通過物體的網格構建適合任何形狀對象的碰撞器,從而可以實現很高的檢測精度,但是兩個網格碰撞器之間通常不會發生碰撞,即便將網格碰撞器標記為Convex(凸起的),其在使用時仍具有很大的限制。

此外,在Unity中要實現碰撞檢測還需要為物體添加Rigidbody(剛體)組件,剛體組件可以使物體具有重力、摩擦力等物理屬性并能夠在約束條件和物理影響下發生運動[10]。

3.2 主減速器虛擬裝配的碰撞檢測方法

綜上所述,為了能夠在本系統中實現碰撞檢測,并且盡可能提高檢測精度和效率,可結合基本碰撞器和網格碰撞器的使用特點設計出一種針對于主減速器虛擬裝配系統的碰撞檢測方法,如圖5所示。

圖5 基于主減速器虛擬裝配的碰撞檢測方法Fig.5 Collision Detection Method Based on Virtual Assembly of Main Reducer

(1)對于裝配過程中不需要發生位移的物體,例如主夾具和某些輔助工具等,可直接對其添加網格碰撞器;

(2)對于待裝配零部件等裝配過程中需要發生位移的物體,可對其同時添加網格碰撞器和基本碰撞器,當待裝配零部件未到達裝配工位上時,可在腳本中通過使用GetComponent函數來獲取該物體上的網格碰撞器并將其設置為false,從而由基本碰撞器發揮功能,反之,則由網格碰撞器發揮功能;

(3)對于基本碰撞器的使用,為了達到更好的密封性,可對形狀比較復雜的對象添加若干個基本碰撞器的組合從而使其更加符合物體的幾何外觀;

(4)由于本系統只需對場景中是否有碰撞的發生做出檢測,而并不想在場景中看到由于碰撞發生所產生的效果,因此需要勾選基本碰撞器中的Is Trigger(觸發器)選項,從而將碰撞檢測改為觸發檢測使用;

(5)由于本系統中沒有將對象的網格碰撞器標記為凸起的,所以需要在剛體組件下勾選Is Kinematic(運動學剛體)選項,用以保證網格碰撞器可以正常使用。

根據上述碰撞檢測方法依次給主減速器的零部件、裝配所用夾具以及輔助工具等對象添加相應的碰撞器,其中圖6所示的是給連接法蘭總成添加網格碰撞器和5個盒子碰撞器,圖7所示的是給主動齒輪添加網格碰撞器以及2個盒子碰撞器和1個膠囊碰撞器。

圖6 給連接法蘭總成添加網格碰撞器和5個盒子碰撞器Fig.6 Add Mesh Collider and 5 Box Colliders to The Connection Flange Assembly

圖7 給主動齒輪添加網格碰撞器以及2個盒子碰撞器和1個膠囊碰撞器Fig.7 Add Mesh Collider and 2 Box Colliders and 1 Capsule Collider to The Drive Gear

4 人機交互技術

在以虛擬裝配為主導功能的系統中,人機交互更關鍵的核心技術之一。本研究基于HoloLens的三大基本輸入方式——凝視、手勢和語音,同時結合C#編程腳本實現了一整套全新的人機交互內容,為主減速器虛擬裝配中的操作奠定了基礎。

4.1 虛擬物體的選取

在一個虛實融合的場景中往往會有很多虛擬物體,而用戶意圖進行交互操作的對象通常只是其中一個。因此,用戶在進行人機交互之前,首先需要完成的是虛擬物體的選取。傳統的基于電腦和手機移動終端的AR系統是通過在二維顯示平面內借助鼠標或者觸摸屏等進行虛擬物體的選取,而HoloLens的解決方案是利用凝視來選取意圖進行交互操作的虛擬物體,如圖8所示。

圖8 HoloLens使用凝視選取交互對象Fig.8 HoloLens Uses Gaze to Select Interactive Objects

但是目前在Unity中沒有明確關于凝視的應用程序編程接口(API)或者相關組件,因此需要借助射線碰撞檢測的方式實現虛擬物體的選取。射線碰撞的原理是系統首先通過HoloLens向用戶眼鏡凝視的方向發射一條射線,然后再與帶有碰撞器組件的虛擬物體進行碰撞檢測。具體的實現過程是通過在腳本中實例化射線類Ray函數,同時利用攝像頭調用Physics.RayCast函數發出射線,與虛擬物體的表面在某一點相交得出RaycastHit結果,該結果即包含了碰撞點的三維位置參數和碰撞對象等信息。

4.2 選取信息的反饋

由于場景中的射線是不可見的,若直接使用射線的注視矢量作為選取物體的輸入形式,用戶很難在沒有標記凝視中心的情境下對意圖交互的物體進行精確定位,所以使用Cursor(光標)作為選取物體時信息反饋的指示器,用以幫助用戶更精準的了解到他們視線的注視中心。

對于光標本身來說,不同的外觀會給用戶帶來不同的觀感和相應信息的提取,因此,為了更好地發揮光標在系統中的作用,在設計光標時應必須滿足始終存在、大小合適、無方向性和顏色醒目等幾點原則。另外,為了給用戶帶來更全面的信息反饋,光標的設計應根據虛實融合場景中視線與不同的對象發生碰撞并結合用戶的交互需求產生不一樣的外觀顯示效果,如表1所示。

表1 光標不同狀態下外觀顯示效果及其表達含義Tab.1 Appearance Display Effect and Its Meaning in Different States of The Cursor

4.3 基于手勢識別的人機交互

在使用凝視射線選取意圖交互的對象之后,用戶即可通過手勢輸入對虛擬物體進行控制。根據主減速器虛擬裝配中對手勢交互的需求,確定選取Air Tap(點擊)和Tap and Hold(拖拽)作為主要的手勢輸入方式。另外,用戶在進行手勢操作之前通常都需要有一個Ready(預備)手勢的操作。綜上,可將主減速器虛擬裝配中的手勢指令及其表達含義概括,如表2所示。

表2 主減速器虛擬裝配中的手勢指令及其表達含義Tab.2 Gesture Instructions and Their Meanings in The Virtual Assembly of Main Reducer

在Unity中進行手勢交互的開發時,需要在腳本中添加GestureRecognizer(手勢識別器)用以實現系統對用戶手勢的感知。其中,點擊手勢作為最基本的手勢輸入,可在本系統中實現多種功能,例如零部件觀察場景中的模型信息查看和虛擬裝配場景中的自動裝配等,為此需要在腳本中設計一個點擊手勢的響應函數OnTap,用以響應不同功能事件的發生;而拖拽手勢主要是在本系統的手動裝配模式中實現物體Manipulation(平移)和Navigation(轉動)兩種功能,因此需要在腳本中設定一個bool(布爾)變量isManipulationEnabled來控制拖拽時平移和轉動之間的切換,其中,平移是通過在初始位置的基礎上加上拖拽的總偏移量來改變物體的空間位置所實現的,而轉動需要先定義一個回轉因子來控制旋轉量,然后根據物體裝配需求設定相應的轉動方向即可。

綜上,可將HoloLens中凝視選取目標對象和手勢操作結合實現交互的流程歸納為,如圖9所示。

圖9 HoloLens中結合凝視與手勢實現交互的流程Fig.9 The Process of Interacting with Gestures and Gestures in HoloLens

4.4 基于語音識別的人機交互

語音輸入是以一種自然的方式對用戶意圖操作的物體進行信息傳達,用戶既可以在場景中直接說出語音指令來實現某種交互功能,也可以在凝視選擇目標物體的同時使用預設好的語音命令來實現交互效果。

在Unity中進行語音交互的開發時,首先需要在腳本中添加KeywordRecognizer(關鍵詞識別器)用以實現應用上的語音識別,然后盡可能通過使用常見的英文短語來確定關鍵詞的名稱用以調用并執行動作事件,最后通過HoloLens的麥克風硬件對用戶的關鍵詞口語表達進行識別,進而觸發功能事件達到交互效果。

另外,在手勢交互設計中,由于拖拽手勢需要響應物體的移動和轉動兩種功能事件,因此為了方便用戶在拖拽移動和拖拽轉動之間進行自由地切換,選擇語音交互功能來對此進行輔助。在設計時,可在腳本中選擇“Rotate Model”和“Move Model”作為語音輸入的關鍵詞來對拖拽手勢腳本中布爾變量isManipulationEnabled的值進行控制。如圖10所示,當用戶在凝視可進行拖拽手勢的目標對象時說出“Rotate Model”,那么將isManipulationEnabled的值設置為false,此時拖拽手勢響應轉動功能事件;當用戶在凝視可進行拖拽手勢的目標對象時說出“Move Model”,那么將isManipulationEnabled的值設置為true,此時拖拽手勢響應移動功能事件。

圖10 語音輸入控制拖拽手勢的響應事件Fig.10 Voice Input Controls The Response Event of Tap and Hold Gesture

5 結論

基于Unity和HoloLens對汽車主減速器虛擬裝配中的關鍵技術進行了相關研究,將著色器、碰撞檢測和人機交互等技術在理論分析的基礎上進行編程解決和實現,主要結論如下:

(1)在基本光照模型的分析與渲染效果對比下,提出將Half Lambert光照模型,并將其與Blinn-Phong光照模型相結合實現了能夠獲取逼真場景的著色器渲染方式;

(2)結合Unity中的基本碰撞器和網格碰撞器提出一種針對主減速器虛擬裝配的碰撞檢測方法,提高了系統的碰撞檢測精度和效率;

(3)基于HoloLens的凝視、手勢和語音三大基本輸入方式,并結合C#編程腳本實現了更為簡單、自然、人性化的全新交互方式,為虛擬裝配中的交互操作奠定了基礎。

通過對主減速器虛擬裝配中關鍵技術的分析和解決,一方面為進一步開發和實現主減速器虛擬裝配系統提供了技術支持,另一方面為基于Unity和HoloLens的虛擬裝配研究提供了一定的參考價值。

猜你喜歡
效果用戶模型
一半模型
按摩效果確有理論依據
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
迅速制造慢門虛化效果
抓住“瞬間性”效果
中華詩詞(2018年11期)2018-03-26 06:41:34
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
模擬百種唇妝效果
Coco薇(2016年8期)2016-10-09 02:11:50
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
主站蜘蛛池模板: 无码内射在线| 国产原创第一页在线观看| 国产精品综合色区在线观看| 国产精品亚洲天堂| 欧美日韩精品一区二区在线线| 日本黄色a视频| 伊人精品成人久久综合| 亚洲男人天堂网址| 日韩AV无码一区| 青青青国产视频手机| 国产浮力第一页永久地址| 欧美性爱精品一区二区三区| 国产毛片网站| 日本爱爱精品一区二区| 久久亚洲中文字幕精品一区| 亚洲第一av网站| 国产在线精彩视频论坛| 一级毛片a女人刺激视频免费| 欧美三級片黃色三級片黃色1| 无码国内精品人妻少妇蜜桃视频| 亚洲全网成人资源在线观看| 欧美视频在线观看第一页| 又爽又大又黄a级毛片在线视频 | 国产精品99久久久久久董美香| 久久综合成人| 在线色国产| 一级毛片免费播放视频| 88av在线看| 97青青青国产在线播放| 亚洲国产AV无码综合原创| 国内自拍久第一页| 欧美日韩北条麻妃一区二区| 国产性精品| 欧美精品色视频| 久久99热这里只有精品免费看 | 无码AV日韩一二三区| 亚洲国产系列| 成人福利在线观看| 国产精品林美惠子在线播放| 最新国产你懂的在线网址| 青青草原国产av福利网站| 国产麻豆aⅴ精品无码| 亚洲视频免| 亚洲精品国产乱码不卡| 欧美色99| 三上悠亚一区二区| AV在线天堂进入| 久久人体视频| 久久香蕉国产线| 亚洲精品无码在线播放网站| 精品天海翼一区二区| 91精品视频在线播放| 日本中文字幕久久网站| 亚洲第一成人在线| 凹凸国产分类在线观看| 伊人激情综合网| 波多野结衣一二三| 91免费在线看| 欲色天天综合网| 久久久久亚洲精品成人网| 欧美在线伊人| 国产精品大尺度尺度视频| 玖玖精品在线| 亚洲国产成人精品青青草原| 亚洲精品在线观看91| 精品久久久久无码| 在线观看免费黄色网址| 爽爽影院十八禁在线观看| 久久久精品久久久久三级| 国产主播一区二区三区| 国产拍揄自揄精品视频网站| 亚洲人妖在线| 99热国产这里只有精品9九 | 亚洲男人在线| 91免费国产在线观看尤物| 激情视频综合网| 国产成+人+综合+亚洲欧美| 72种姿势欧美久久久大黄蕉| 精品夜恋影院亚洲欧洲| 98精品全国免费观看视频| 亚洲无码免费黄色网址| 国产成人高清亚洲一区久久|