馬振江 ,李漢林 ,董 悅 ,李夢迪 ,張 鑫 ,2*,馬國利 ,2
(1.濱州學院 航空工程學院,山東 濱州 256600;2.山東省航空材料與器件工程技術研究中心,山東 濱州 256600)
現在隨著科技的發展,無人機的技術越來越高,反之其成本越來越低,這不僅讓無人機走進了更多個人愛好者的手中,也讓它在許多領域有著廣泛應用,無人機未來發展前景向好。
VR 眼鏡是利用頭戴式顯示設備將人對外界的視覺、聽覺封閉,引導用戶產生一種身在虛擬環境中的感覺。其顯示原理是左右眼屏幕分別顯示左右眼的圖像,人眼獲取這種帶有差異的信息后在腦海中產生立體感[1]。也就是佩戴上虛擬設備后,如同身臨其境,具有很高的沉浸性的特點。讓操作者完美領略空中的美景,好像飛在空中一般,給人們不一樣的感受。
如今技術發展飛速,5.8G 實時圖傳接收機,手機可當顯示屏,兼容所有5.8G 圖傳發射器,通過手機APP,可雙屏顯示,放入VR 眼鏡可體驗飛行,但無法真正以第一視角飛行。上帝的視角不僅僅顯示在手機或平板電腦上,還可以帶上VR 虛擬現實眼鏡,以一種更加立體方式的感受上帝的視角,飛鳥一樣看整個世界。然而并不是全部的無人機都能連接VR 眼鏡實現第一人稱視角[2]。
將STM32F103C8T6 作為控制核心,MPU6050 結合VR 技術,配合外部線路控制器,實現操作者對空中美景的欣賞,通過無人機上攝像頭圖傳回的圖像經VR 技術處理,讓操作者感覺自己的視線在無人機上,通過MPU6050 模塊,確追蹤快速與慢速動作,使無人機上云臺跟隨操作者視線的改變而改變,使操作者感覺到“身臨其境”的逼真性。框架如圖1 所示。

圖1 空中觀測站的硬件系統構架圖
空中觀測站是一套基于無人機的擴展設備,主要分為兩個部分,安裝在無人機上的智能云臺與VR 眼鏡。智能云臺分別為數據接收,數據處理,電源管理三個模塊。數據接收模塊為5.8G 圖傳和NRF24L01 無線射頻收發器分別傳輸圖像信號與舵機舵位信號。數據處理模塊為STM32F103C8T6 單片機,對實時傳來的舵機控制信號進行處理,通過pid 算法使得舵機旋轉更加平滑,用戶體驗更好。電源管理模塊為舵機,數據處理數據接收模塊提供穩定的電壓。VR 眼鏡由顯示器,陀螺儀,數據發送,數據處理,電源管理模塊組成。手機可當顯示屏,兼容所有5.8G 圖傳發射器,通過手機APP,可雙屏顯示。陀螺儀選用MPU6050,免除了組合陀螺儀和加速器時間軸之差的問題,可準確追蹤快速與慢速動作,為舵機舵位提供了準確的參數。數據處理為STM32F103C8T6 單片機通過IIC通信協議將MPU6050 數據傳輸至下位機[3]。VR 眼鏡實物圖如圖2 所示。

圖2 VR 眼鏡實物圖
2.2.1 微控制器
采用STM32F103RCT6 單片機作為主控制芯片。STM32 系列基于專為要求高性能、低成本、低功耗的嵌入式應用專門設計的ARMCortex-M3 內核。低功耗模式:STM32F103RCT6 支持3 種低功耗模式,從而在低功耗,短啟動時間和可用喚醒源之間達到一個最好的平衡點。休眠模式:只有CPU 停止工作,所有外設繼續運行,在中斷/事件發生時喚醒CPU;停止模式:允許以最小的功耗來保持SRAM 和寄存器的內容。
2.2.2 MPU6050
MPU6050 為全球首例整合性6 軸運動處理軟件,相較于多組件方案,免除了組合陀螺儀和加速器時間軸之差的問題,減少了大量的封裝空間;MPU6050 的角速度全格感測范圍可準確追蹤快速與慢速動作;模塊傳輸可透過最高至400kHz 的IIC;MPU6050 不只是簡簡單單整合了3 軸陀螺儀和3 軸加速器,而且由I2C 端口以單一數據流的形式,向應用端輸出完整9 軸融合演算技術。

圖3 MPU6050 陀螺儀
2.2.3 VR 技術
VR 技術具有超越現實的虛擬性,虛擬現實。利用了計算機圖形學、仿真技術、多媒體技術、人工智能技術、計算機網絡技術、并行處理技術和多傳感器技術,模擬人的視覺感覺器官,使人不僅能夠讓人感覺到“身臨其境”的逼真性,而且能夠突破空間、時間以及其他客觀限制。
2.2.4 實時差分動態定位
實時差分動態定位(DGPS),就是用兩臺接收機在兩個測站上同時測量來自相同GPS 衛星的導航定位信號,用以聯合測得動態用戶的精密位置。其中一個檢測站坐標信息是已知,基準接收機就是設在該基準點的GPS 信號接收機。動態接收機,即GPS 信號接收機安設在運動載體上,基準接收機和動態接收機同時測量來自相同的GPS 衛星的定位信號。利用基準接收機所測得的三維位置信息并與該點已知三維位置信息進行比較,便可得到該GPS 定位的三維坐標信息的改正值。及時將GPS 三維坐標信息的改正值發送給其他客戶的動態接收機組,及時改正后面所檢測的實時坐標位置信息,這就被稱為實時差分動態定位。實時差分動態定位原理如圖4。
系統的軟件設計主要為了實現對VR 眼鏡空間位置的數據采集、信號傳輸信號轉換、數據回傳、解析生成控制信號控制舵機等功能。因此軟件設計由空中觀測站下位機固件和VR 眼鏡固件兩個部分組成。
(1)下位機固件。由于VR 眼鏡每10ms 發送一次20byte 的數據,下位機一方面要做好接收工作,保證數據不擁擠在串口接收緩沖區;另一方面也要實時獲取當前從串口讀到的最新數據。如果采用傳統多線程+鎖的機制是可以的,但是當多線程中加入鎖勢必會影響程序執行效率,通過綜合分析該問題最終抽象出一個特殊的數據模型——自動更新的環形棧[4]。
(2)VR 眼鏡固件。避免由電路噪聲,信號時延等系統誤差造成的偏移量過大,信號波動較大導致舵機抖動,延遲較大的問題。因此在軟件設計中應考慮將數據接收單元接收到的數據設定閾值并對接收到的數據取均值,從而減小數據的奇異點對舵機控制信號的影響,再通過pid算法優化舵機控制信號,降低由系統延遲造成的誤差。

圖4 實時差分動態定位原理圖
可以直接將智能云臺安裝置無人機架下方,將5.8G圖傳與NRF24L01 分別配對完成后即可帶上VR 眼鏡,體驗沉浸式的空中觀測站。將STM32F103C8T6 作為控制核心,MPU6050 結合VR 技術,配合外部線路控制器,實現操作者對空中美景的欣賞,通過無人機上攝像頭圖傳回的圖像經VR 技術處理,讓操作者感覺自己的視線在無人機上,通過MPU6050 模塊,確追蹤快速與慢速動作,使無人機上云臺跟隨操作者視線的改變而改變,使操作者感覺到“身臨其境”的逼真性。讀取 MPU6050 原始數據,對 MPU6050 進行讀寫傳感器數據就是對MPU6050的寄存器用 I2C 進行讀寫,可以進行快速與慢速動作的捕捉,以及對動作的處理,以及如何傳輸到無人機上對云臺進行控制,達到與地面上的視線一致。
模塊化設計,可以適配與各種款式的無人機。近年VR 技術開辟了曠闊的市場,而且無人機也是具有消費潛力的市場,將兩者結合起來,具有極大消費市場,前景光明。無人機越來越貼近人們的生活,廣泛應用于各個場景中,而且無人機拍攝的景色非常迷人。兩者的結合使我們可以“親身”從空中領略一番。