王輝堂
(廈門信通慧安科技有限公司,福建 廈門 361026)
基于9軸傳感器的無線穿戴式體感交互設備
王輝堂
(廈門信通慧安科技有限公司,福建 廈門 361026)
針對當前VR/AR領域體感交互設備成本高、使用繁瑣等問題,文章提出了一種低成本、簡易輕便的體感交互方案。方案硬件設計基于BLE和9軸傳感器,軟件上采用AHRS結合動作識別算法。只需要佩戴3個穿戴設備即可實現人體手部和全身動作的識別。
9軸傳感器;BLE;AHRS;動作識別
近年來隨著虛擬現實和增強現實的快速興起,作為VR和AR的核心技術之一,體感交互技術近年來受到業界的廣泛關注。體感交互技術可以讓用戶用手勢和身體語言與計算機進行互動,打破了鼠標、手柄等傳統外設對人們身體的束縛,讓用戶能夠更加自然地和虛擬世界打交道。體感交互已經成為VR/AR人機交互中最重要的手段。
然而當前主流的體感設備如微軟的Kinect,HTC VIVE等都是基于家用主機或PC平臺設計的,雖然在功能性和性能指標上表現突出,但由于成本高且對硬件性能、功耗、使用環境的要求較高,不適用于手機、平板等側重簡易和便攜的平臺。因此對VR/AR技術的普及產生了一定的不利影響。本文提出了一種基于BLE(藍牙4.0)的無線體感設備,它采用9軸傳感器結合AHRS算法作為動作識別的基礎,具有動作識別率高、輕巧便攜、超低成本等優點,同時支持手機、平板、電視等多種平臺,有利于體感交互技術在特定需求下的進一步推廣。
1.1 AHRS姿態解算原理
航姿參考系統(Attitude and Heading Reference System,AHRS)最早用于為飛機等飛行器上,用于提供可靠的航姿和航向測算。這類系統通常包括3種主要的傳感器,陀螺儀、加速度計、地磁計。在飛行過程中,通過對3種傳感器的數據進行持續不斷的采集,獲得飛行器的加速度、角速度、地磁感應強度等。以這些傳感數據為基礎,結合四元數、卡爾曼濾波算法,經過一系列的計算可以獲得飛行器的姿態和航向。
隨著微機電系統(Micro Electro Mechanical System,MEMS)的快速發展,近年來已有成熟的MEMS計術可以將陀螺儀、加速度計、地磁計3種傳感器集成在同一片芯片上,如美國InvenSense公司推出的MPU9250,因這3個參數在空間中各有3個維度(X,Y,Z),因此該類芯片也被稱為9軸運動傳感器。
AHRS技術的應用范圍不限于飛行器,在船只、車輛、平衡車、機器人等物體的運動控制中都能發揮重要作用。在本設計中采用AHRS技術解算出人體的實時姿態,在此基礎上結合其他算法實現對手勢和全身動作的識別。
1.2 BLE無線傳輸
低功耗藍牙(Bluetooth of Low Energy,BLE)技術是藍牙的4.0版本,它是一種低成本、短距離、可互操作的魯棒性無線技術,工作在免許可的2.4 GHz ISM射頻頻段。它從一開始就設計為超低功耗(Ultra Low Power Dissipation,ULP)無線技術,目前在手機和可穿戴設備中使用廣泛。
藍牙技術成熟且在手機、平板上應用廣泛,本設計中的穿戴設備采用BLE無線技術,不但可以簡便地和手機、平板、電視實現數據交互,還可使設備的整體功耗大幅降低,實現較長的待機時間。BLE協議支持多對一連接,即一臺手機可以同時連接多個BLE設備,這個特性也是本設計中需要的。
2.1 系統構成
本設計實現的體感交互方案由3部分組成:體感戒指、體感腰扣、顯示終端。
體感戒指:佩戴于手指,兩手各一。用于捕捉人體手部動作,包括手臂和手指多個方向的平移、翻轉及其組合而成復雜動作。
體感腰扣:佩戴于腰間,用于捕捉人體全身性的移動(前后左右移動、跑、跳、蹲等)。
顯示終端:手機、平板或電視,用于運行游戲或交互界面。
在用戶使用這套設備的過程中,體感戒指和腰扣不斷采集相關部位的運動數據,通過BLE無線傳送至顯示終端,終端運行相關算法進行動作識別解算出人體的動作,再根據人體的動作顯示相應的交互內容,如使游戲人物移動等。
2.2 方案選型
基于產品對動作識別的需求,傳感器我們采用了Invensense公司生產的MPU9250,該芯片在3×3×1 mm3的封裝中融合了3軸加速度、3軸陀螺儀、3軸磁力計及1個DMP(數字運動處理器),高集成度的設計保證了高性能和低功耗的有機結合,同時降低節硬件和軟件的開發成本。MPU9250輸出的加速度計、陀螺儀、磁力計數據精度分別為16位,16位,6位,可編程量程范圍,同時帶有業界領先的可編程數字濾波器,支持I2C和SPI接口。
因可穿戴產品的體積小電池容量小,該類產品的核心設計需求是低功耗?;诖诵枨?,藍牙芯片我們選用了DIALOG公司生產的DA14580,DA14580 是當前業內體積最小、功耗最低、集成度最高的藍牙芯片,內嵌 16 MHz 32位ARM Cortex M0? 處理器,32 kB OTP 42 kB SRAM,84 kB ROM;具備硬件正交解碼能力;發射功率0 dBm,接收機靈敏度為-93 dBm。這款芯片最大的特點是超低功耗,相比于其他藍牙芯片動輒十幾mA的發射電流,DA14580的發射電流只有5 mA,休眠狀態下整體功耗只有2 μA。
因設備內部空間較小,電池選用40 mah的鋰電池。因鋰電池的保護板會占用額外空間增加產品高度,在本設計中不采用帶保護板的鋰電池,而是將保護芯片和充電芯片一起設計在主板的PCB中。
2.3 硬件設計
傳感器部分的電路是以MPU9250為核心設計的。該模塊采用3.3 V供電??紤]到數據傳輸量較大,MPU9250和MCU之間采用SPI接口進行數據傳輸,DA14580的SPI的傳輸速率最高可達1 M bytes/S。
因藍牙芯片內嵌的ARM COTEX-M0 具有不錯的性能,因此將其作為設備的主控MCU,一方面減少芯片數量降低功耗,同時又減小產品體積并降低生產成本。如圖1所示,DA14580的外圍電路包括2個時鐘電路、天線匹配電路、SPI接口、LED和震動馬達控制接口等。因方案采用的是不平衡單極子天線,因此需要在射頻輸入輸出接口和藍牙天線之間連接一個巴倫匹配電路來實現射頻收發信號的匹配。另外需要注意的是,在加工PCB板時,天線部分的電路應設計為50 Ω的阻抗匹配。
2.4 軟件設計
軟件的設計包含設備端程序和上位機程序(以手機為例),如圖2所示。

圖1 MCU及藍牙電路

圖2 軟件工作流程
設備端程序在開機后先進行各硬件模塊的初始化,包括BLE,MPU9250等。隨后進行傳感器校準,在做磁力計校準時,需要設備進行空間畫“8”字形的操作,使設備充分測量出所處空間中各個方向的磁場強度以定位出準確的世界坐標系方向。校準完成后,在整個使用過程中MCU不斷讀取得MPU9250采集到的傳感器數據(加速度、角速度、磁場強度),并通過BLE持續發往手機。
手機端程序通過BLE接收到原始數據后,首先使用四階FIR濾波算法濾除高頻雜波。濾波后的數據進行動作起點和結束點判斷,動作的起止點數據有明顯的特征(加速度或角速度變化)。起止點確定后,將起點和結束點之間的數據作為一幀。我們用AHRS算法先計算該幀數據持續期間對應的設備姿態,同時對數據幀進行特征提取,然后依據特征比較進行動作識別。獲得用戶的動作后,提交給上層邏輯進行相應的邏輯控制,如控制游戲角色移動等。
本文設計并實現了一種無線體感交互方案,該方案以BLE作為無線數據傳輸方式,以9軸傳感器為基礎,結合AHRS等算法為基礎實現人體動作識別。實現了一種輕便易用、低成本、平臺兼容性好的體感交互方案。在實際測試中,動作識別率約85%。在后續進一步的研究中,將結合模式識別的相關算法進一步提高動作識別率。
[1]孫章國.基于ARM的航姿參考系統研究[D].上海:上海交通大學,2010.
[2]胡成全.基于MEMS六軸傳感器的上肢運動識別系統[J].大連理工大學學報,2017(1):92-98.
[2]肖茜.一種基于MEMS 慣性傳感器的手勢識別方法[J].傳感技術學報,2013(5):611-615.
Research on wireless wearable somatosensory interaction device base on 9-axis motion sensor
Wang Huitang
(Xiamen Xintong Huian Technology Co., Ltd., Xiamen 361026, China)
In view of the problems of high cost and tedious usage of the VR/AR somatosensory interaction device, a low cost and lightweight somatosensory interaction scheme is proposed in this paper.The hardware design is based on BLE and 9-axis sensors, combination of AHRS and movements recognition algorithm is adopted in software. Only wear 3 wearable devices, you can achieve manual hand and body movements identi fi ed.
9-axis sensor; BLE; AHRS; movements recognition
王輝堂(1981— ),男,福建廈門。