基于虛擬現(xiàn)實技術的自行車漫游系統(tǒng)的研究與實現(xiàn)
來源:電子技術應用; 作者:北京航空航天大學 高 欣 宋荊洲 北京郵電大學 孫漢旭
摘要:一種實時自行車漫游系統(tǒng)(VR-BWS)。該系統(tǒng)以健身車作為人機交互的工具,綜合運用了虛擬現(xiàn)實、傳感器、DPS控制等技術,并通過立體顯示等多通道交互技術實現(xiàn)了人在虛擬環(huán)境中的漫游,使參與者在由計算機構造的虛擬場景中獲得了如同在真實環(huán)境中騎車的體驗。
關鍵詞:虛擬現(xiàn)實 人機交互 DSP 傳感器 立體顯示虛擬現(xiàn)實是計算機生成的、給人多種感官刺激的虛擬世界(環(huán)境),是一種高級的人機交互系統(tǒng)。理想的虛擬現(xiàn)實系統(tǒng)應當讓使用者在與虛擬環(huán)境產(chǎn)生交互行為時的感受與真實環(huán)境中的感受完全一樣。而現(xiàn)有的漫游系統(tǒng)大多采用二維交互界面,即采用鼠標(二維輸入)和鍵盤(線性輸入)作為交互設備,遵循著“窗口-圖標-菜單-指定”(Windows-Icon-Menu-Pointer,簡稱WIMP)操作范式,交互方式不合諧,不自然。本文以健身作為人機交互的工具,設計了一種實時自行車漫游系統(tǒng)VR-BWS。該系統(tǒng)以虛擬現(xiàn)實技術為基礎,綜合運用了傳感器技術、DSP控制技術,采用了多線程、非阻塞的數(shù)據(jù)實時通信技術,并通過立體顯示等多通道交互技術實現(xiàn)了人在虛擬環(huán)境中的漫游,使參與者在由計算機構造的虛擬場景中獲得了如同在真實環(huán)境中騎車的體驗,是把虛擬現(xiàn)實技術應用于實際的一個有益嘗試,應用前景十分廣闊。
1 系統(tǒng)構成及原理
當參與者騎在自行車上運動時,自行車的速度、方向、籠頭往上提的時間和力度以及騎車人自身重量等數(shù)據(jù),通過傳感器實時采集,然后經(jīng)由DSP控制電路傳送到上位機中,經(jīng)過分析處理,使其在屏幕的虛擬場景得到仿真和展示,在虛擬場景里達到表演的效果;同時,當屏幕中的場景變化時,如上坡、下坡等,也可以通過控制軟件反饋到自行車的控制器上,產(chǎn)生阻尼/驅(qū)動力,使騎車人有上述場景產(chǎn)生的上、下坡的感覺,從而獲得好的沉浸感。系統(tǒng)構成如圖1所示。
2 關鍵技術
2.1 人機交互傳感器技術
在本自行車漫游系統(tǒng)中,主要是借助各種傳感器實時地捕捉人體作用于自行車而產(chǎn)生的各種運動參數(shù),輸入到計算機,作用于虛擬環(huán)境,實現(xiàn)人與虛擬環(huán)境的交互。
VR-BWS中使用的傳感器有光電編碼器、角位移傳感器和力傳感器。與車輪同步施轉(zhuǎn),并以增量式編碼方式記錄自行車車輪旋轉(zhuǎn)角度對應的脈沖,然后將檢測到的脈沖數(shù)據(jù)換成車輪的旋轉(zhuǎn)圈數(shù),即自行車相對于某一參考點的瞬時位置;VR-BWS中使用了角位移傳感器檢測車把轉(zhuǎn)角,控制場景中視點和視線的方向;在場景中設計有沒寬度的溝壑和天塹,根據(jù)騎車人的體重和速度來判斷能否沖過去,仿真飛越長城和黃河等,因此在自行車的車把和座位處安裝了用來測量提力和人體重量的力傳感器。
2.2 DSP控制技術
底層控制均由DSP系統(tǒng)完成。DSP處理系統(tǒng)的CPU采用TI公司生產(chǎn)的TMS320LF2407A,使用該芯片是為了保證上位機和下位機之間傳感器數(shù)據(jù)和地形數(shù)據(jù)雙向傳遞的實時性,減少運動跟蹤和信息反饋環(huán)節(jié)的延時。
2.2.1 傳感器數(shù)據(jù)的實時采集
在DSP的事件管理器EV模塊中,有一個正交編碼脈沖電路QEP。該電路使能后,可以在編碼和計數(shù)引腳上輸入由光電編碼器產(chǎn)生的正交編碼脈沖。正交編碼脈沖電路的基可由通用定時器提供,在程序中通用定時器設置成定向增計數(shù)模式,并以正交編碼脈沖電路作為時鐘源。由角位移傳感器和力傳感器采集到的角度數(shù)據(jù)和力數(shù)據(jù)是模擬信號,通過DSP的模數(shù)轉(zhuǎn)換模塊(ADC)將采集到的數(shù)據(jù)進行模數(shù)轉(zhuǎn)換后存入的結果寄存器中。
;;; 2.2.2 多線程、非阻塞的實時通信技術
TMS320LF2407A的串行通信接口SCI模塊可以通過RS232轉(zhuǎn)換芯片與PC機進行異步通信。因為由傳感器實時采集到的數(shù)據(jù)通過DSP的SCI串口傳給上位機進行處理,同時虛擬場景中的地形數(shù)據(jù)需要下傳來達到控制執(zhí)行機構輸出力矩的目的,模擬人騎自行車上、下坡時的感覺,在程序中把它設置成全雙工方式。
使用多路傳感器作為三維場景漫游的視點跟蹤傳感器時,必須不斷地從串口采集各路傳感器的狀態(tài)數(shù)據(jù),以跟蹤