姜峰++陳艷++李濱城++李明坤



摘要: 近年來,汽車駕駛模擬器的研究迅速發展。借助于Unity3D專業的游戲引擎以及逼真的畫面效果,基于虛擬現實技術開發了車輛駕駛模擬器,提出了駕駛模擬器的各組成部分的功能及原理。設計了逼真的虛擬場景以及車輛動力學模型,使用戶通過轉向、離合、油門等操縱機構駕駛控制車輛,通過場景中車輛模型的運動姿態控制四自由度的運動平臺,實現人機交互。經多次試驗表明,該系統實時效果好,可以真實地模擬實際駕駛情況,該虛擬駕駛系統對于汽車虛擬駕駛具有重要的實際意義和應用價值。
關鍵詞: 駕駛模擬器; 虛擬現實; Unity3D; 視景系統
中圖分類號:TP391.9
文獻標志碼:A
文章編號:2095-2163(2017)04-0039-03
0引言
研究可知,虛擬駕駛技術就是利用虛擬現實技術仿真模擬真實車輛的駕駛過程,使得學員沉浸其中,以便訓練掌握正確的駕駛操作[1-2]。駕駛模擬器可取代實車訓練中的部分科目和內容,有利于駕駛培訓正規化、科學化和規范化的目標流程確立,并具有節能、安全、經濟和不受時間、氣候、場地等培訓限制,以及培訓效率高等優點。傳統的駕駛模擬器通常采用分布式虛擬現實技術以及Virtools引擎等方式來支持實現[3-5],但卻由于其交互性不強以及場景畫面效果并不理想而難以達到預期設定。基于此,本文研究提出了由專業的游戲引擎Unity3D快速構建虛擬駕駛視景仿真系統[6-8],并通過運動控制卡直接控制四自由度平臺的運動,實現虛擬駕駛系統的人機交互。
1虛擬駕駛系統組成及功能
虛擬駕駛系統的開發與應用主要分為虛擬駕駛視景系統和四自由度運動平臺的控制兩部分。其中虛擬駕駛視景系統部分利用Unity3D引擎開發具有人機交互功能的視景系統,通過輸入輸出設備,以有效的方式實現人與計算機相互傳遞信息;而四自由度運動平臺的控制部分則通過視景系統中的車輛的運動姿態解算得到電機的脈沖量,并通過運動控制卡控制四自由度的串并聯運動平臺。綜上可得,虛擬駕駛系統的功能組成框架設計則如圖1所示。
2視景系統的設計與實現
2.1虛擬場景設計與實現
汽車駕駛所需的虛擬場景都是由三維和二維物體模型構成的。將3DS Max處理后的車輛、建筑物、地形等三維模型導出為.FBX格式文件[9],并配置到Unity3D的資源文件夾Assets中,Unity3D將自動導入對應的三維模型及相應的貼圖和動畫文件。構建模型的過程中對模型的充分優化可以縮減最終執行文件的大小以及提高虛擬駕駛視景系統的流暢度,利于改善用戶體驗。
2.2虛擬交互設計及實現
虛擬交互系統接受駕駛員的輸入,并對輸入信號進行處理,場景對這個信號產生響應,使程序具有交互感。模擬駕駛的仿真機理是要能盡量真實地展現車輛模型對駕駛員操作信號的調控變化以及駕駛員對不同駕駛環境的認識和適應,所以程序對動力學模型的準確程度要求很高,要能準確地再現生成車輛的各種駕駛情況,如起步、加速、減速、停車和轉彎等,而且虛擬場景也要讓駕駛員體驗特殊情況下的駕駛經歷,因此仿真程序對各種場景的顯示效果也將拓展加入一定的特殊要求。
視覺是虛擬現實系統與用戶之間交流的顯性渠道,為了使用戶可以直接觀察到車輛的運動狀況,本文采用對車輛設計提供第三人稱視角的虛擬展示。為主攝像機編寫CarCamera.cs腳本,使主攝像機的位置總是處在車輛模型的后上方,并使攝像機對著車輛模型的中部,實現攝像機相對于車輛的伴隨性移動,如圖2所示。
車輛的運動模型是視景系統的核心部分,Unity3D中的制作賽車類游戲的關鍵組件WheelCollider是一種專為車輛輪子設計的特殊碰撞體[10],當為車輪模型添加該組件之后,賽車就可以地面上運動。在現實生活中,車輛的前進、后退、剎車、轉彎等運動都是由輪子與地面的摩擦力驅使車輛而綜合確定的。為研究得到在虛擬駕駛系統中更加方便地操縱車輛模型的運動,本文是通過對車輛對象剛體組件施加與車輛模型Z軸平行方向的力來實現車輛的前進、后退的功能,施加與車輛運動速度相反的力實現車輛的剎車功能;車輛的轉彎是通過使車輛模型繞中心點(O)以轉彎半徑(R)旋轉實現的,如圖3a)所示。現實生活中的車輛行進時,車輪的運動由車輛的懸掛系統約束。為正確模擬車輪的轉動姿態,在視景系統中當車輛行進時,前后車輪都繞其自身坐標系的X軸轉動;當車輛轉彎時,2個前車輪將繞其自身坐標系的Z軸產生轉動,如圖3b)所示。
在實際駕駛中,若車速非常快并且急轉彎或者與障礙物相撞時,車身將容易發生傾斜并翻車。在視景系統中,設定若車輛的傾斜角度大于80°并超過一定的時間之后,則判定車輛處于翻車失控狀態,將其速度、角速度、引擎牽引力均設置為0,模擬駕駛結束。
3輸入輸出設備通信功能實現
3.1虛擬駕駛系統的硬件連接
本文設計的汽車虛擬駕駛系統包括操控系統、執行系統與視景系統。其中,操控設備主要配置了方向盤、油門等汽車常用的部件,執行機構為四自由度的串并聯運動平臺,可以更準確地還原虛擬環境中汽車的運動情況。方向盤、油門、剎車等輸入設備通過USB接口與計算機相連,運動控制卡一般都是以PCI插槽與計算機相連,運動控制卡通過端子板以及驅動器控制電機,電機帶動絲杠轉動控制動平臺的運動,具體如圖4所示。
3.2操控系統的設計及實現
虛擬駕駛仿真模擬器的輸入設備一般都是仿照真實汽車駕駛界面定制設計的,比如方向盤、剎車、油門、檔位等。由于虛擬駕駛系統是基于PC的,使其并不具備真實汽車操縱設備的條件,研究中的輸入設備主要依靠方向盤、油門等輸入信號,并將信號通過轉換器發送給視景系統,操縱汽車模型在虛擬環境中行駛,并做出現實世界中汽車的一些駕駛動作。endprint
操控系統選用的是北通瞬風189方向盤套裝設備,內置硬件主要包括方向盤、檔位、油門、剎車和其他附屬按鍵。與通用的操縱手柄一樣,該方向盤套裝也需要安裝對應驅動程序,此后則需要對硬件進行調試與設置。Unity3D默認為用戶創建了若干映射方向盤等標準外設的虛擬按鍵,在輸入管理中配置構建了虛擬按鍵,并且組織設定了方向盤各種屬性之后,外設的輸入消息就可以直接映射給虛擬按鍵,便可以在腳本里通過Input類中的GetAxis()以及GetButtonDown()方法對其直接加以使用,從而實現輸入設備控制汽車模型的功能。
3.3執行系統的設計及實現
[JP2]虛擬駕駛仿真系統可用于試驗研究,最重要的是需要其能夠輸出試驗所需要的結果,并能夠與現實的試驗設備建立通信連接。虛擬駕駛仿真模擬器是將視景系統與四自由度平臺借助通信連接,實現路況真實模擬,實時反映路況的試驗設備。[JP]
視景系統與四自由度平臺的通信連接主要是指視景系統與平臺的控制設備的連接。由視景系統中的車輛模型的z軸變化量z、繞自身x軸的旋轉角度α、繞自身y軸的旋轉角度β以及方向盤轉動角度γ通過逆解公式得到軸1的伸長量D1、軸2的伸長量D2、軸3的伸長量D3以及軸4的旋轉量R4。研究可得各關系量的數學表述如下:
D1 = z+100sin β-(74 100-(100cos β-170))1/2 [JY](1)
[JP3]D2 =[ZK(]z-50 sin β+88.6 sin α cos β-(74 100-(85-
50 cos α+86.6 sin α sin β)2-(86.6 cos α-
150.62)2)1/2[ZK)][JP][JY] (2)
[JP3]D3 = [ZK(]z-50 sin β-88.6 sin α cos β-(74 100-(85-
50 cos α-86.6 sin α sin β)2-(86.6 cos α-
150.62)2)1/2[ZK)][JP][JY](3)
R4 = γ[JY](4)
本文的四自由度平臺選用固高科技公司的GTS-400-PG-PCI-G運動控制卡實施控制處理。計算機以編程軟件引用運動控制卡的動態鏈接庫,向控制卡發送指令,并通過脈沖控制電機運動,驅動電機按指定的規律來生成狀態演變,電機帶動絲杠滑塊,通過定長桿驅動動平臺,還原汽車模型在視景系統中的路面情況。同時,控制卡上的I/O口也反饋電機運動的實際位置和其他運動狀態。
4虛擬實驗
為驗證虛擬駕駛系統的實用性、穩定性以及執行功能,本文以Unity軟件設計開發一個基于Windows系統的應用實例展開研究分析。
進入虛擬駕駛系統后,視野中首先可見的就是主界面,用戶選按Enter鍵將正式開啟游戲。此時,程序完成打開運動控制卡、配置運動控制卡成功、運動控制卡初始化等功能,并在顯示器左上角給出提示,如圖5a)所示,動平臺也將從現時最頂端的初始位置運動到設定的位置。用戶操縱方向盤以及油門、剎車控制車輛模型行進,可以觀察到,動平臺也會跟隨車輛的姿態做出相應的動作。當車輛翻車后,模擬駕駛結束,給出提示,如圖5b)所示。當用戶按下Esc鍵退出系統時,動平臺恢復到初始狀態。
5結束語
通過反復的編程試驗,本次研究開發的基于Unity3D的虛擬駕駛系統已經獲得了成功的應用,并且呈現出良好的人機交互效果,同時也設計提供了軟件與硬件之間的完善通訊功能,在此基礎上采用四自由度運動平臺為駕駛學員提供運動臨場感,實現了圖像與運動的有機統一。該虛擬仿真實驗則對后續研究與開發虛擬駕駛模擬器具有重要的指導及一定的借鑒意義。
參考文獻:
[WTBZ][ST6BZ][HT6SS][1] [ZK(#〗
姜顯揚,唐向宏. 虛擬仿真無人駕駛汽車跨學科實驗平臺的構建[J]. 實驗技術與管理,2016,33(11):117-120.
[2] 丁金華,劉暢,李明穎,等. 三維虛擬現實機電設備控制仿真系統[J]. 實驗技術與管理,2016,33(9):106-110.
[3] 李勛祥,陳定方. 分布式汽車駕駛交互仿真系統的實現[J]. 計算機輔助設計與圖形學學報,2008,20(1):129-135.
[4] 羅竹輝,周曉軍,魏燕定. 基于Vortex與Vega Prime的車輛模擬器動力學與視景仿真[J]. 振動、測試與診斷,2014,34(4):709-713.
[5] 傅招國. 虛擬駕駛系統開發與應用研究[D]. 上海:華東理工大學,2012.
[6] 林德江,秦國偉,王國德,等. 基于Unity3D技術的某裝備便攜式虛擬訓練系統研究[J]. 火炮發射與控制學報,2014,35(4):91-95.
[7] 吳景,趙運生,黃海峰,等. 基于Unity3D的多模塊虛擬系統的設計與實現[J]. 機械工程與自動化,2015(6):59-61.
[8] 楊雪松. 基于Unity3D的發動機虛擬拆裝系統研究[J]. 機械,2016,43(1):32-35,73.
[9] 楊亞聯,王磊,楊果,等. 人在環路模擬駕駛仿真實驗系統研發[J]. 重慶大學學報,2015,38(4):38-44.
[10]劉剛,孫文濤. unity 官方案例精講[M]. 北京:中國鐵道出版社,2015.endprint