一種基于藍牙4.0的用于實現低功耗無線數據傳輸的慣性動作捕捉系統及其數據傳輸方法
【技術領域】
[0001] 本發明涉及一種基于藍牙4.0的用于實現低功耗無線數據傳輸的慣性動作捕捉系 統及其數據傳輸方法,屬于動作采集技術領域。
【背景技術】
[0002] 從20世紀80年代開始,運動捕捉最初被使用于人體捕捉方面,但是,運動捕捉系統 不但可以捕捉人體,也可以捕捉機械結構、動物等等。其中,對人體、動物的動作捕捉已被大 量應用于影視制作。與此同時,動作捕捉也在向醫療、虛擬現實等方向拓展,發展前景非常 廣闊。
[0003] 前端設備對人體動作數據的捕獲是慣性動作捕捉系統的關鍵技術之一,因此,如 何將采集到的數據實時并且正確的傳送到數據處理單元成為整個系統的重中之重。數據傳 輸部分使用的方案主要有有線傳輸和無線傳輸兩種。
[0004] 有線傳輸,即將安裝在人體身上的每個節點通過總線的方式連接在一起,每個傳 感器節點是總線的從設備,通過特定傳輸協議比如modbus協議與sink節點進行通信。這種 數據通信速率高,并且穩定,但是,各個節點之間的連線會束縛人的運動,用戶體驗極差。
[0005] 無線傳輸包括WiFi、Zigbee和藍牙。其中,WiFi傳輸能夠滿足大容量的數據傳輸要 求,但是,其自組網的功能比較弱,功耗大并且成本較高。Zigbee傳輸雖然功耗較小,組網機 制比較成熟,但是,Zigbee技術連接速度和數據傳輸速度都比較慢,不能夠達到預期要求。 另外,WiFi和Zigbee都屬于ISM2.4G頻段,沒有自適應跳頻功能,不能夠和其他無線技術共 存,很容易受到物理空間中的相同頻段的信號干擾,數據傳輸就會出現延遲或者出現錯誤, 因此,對于環境的要求就比較苛刻。藍牙4.0技術于2010年被藍牙技術聯盟SIG寫入藍牙規 范。藍牙4.0支持星型網絡拓撲結構和點對點數據傳輸,能夠在多種模式下工作,并且在傳 統藍牙的基礎上極大地降低了功耗,數據傳輸速度為IMbps,藍牙4.0采用自適應跳頻技術, 能夠最大程度地減少ISM2.4G其他無線電信號的干擾。隨著藍牙技術的不斷發展,組網能力 不斷增強,無論是在智能家居、智能硬件還是可穿戴智能設備等物聯網領域,藍牙大有取代 Zigbee的趨勢。三種無線技術的參數指標對比如表1所示。
[0006] 表 1
[0008] 目前,基于MEMS的慣性動作捕捉技術正處于發展初期,其數據傳輸方案也沒有非 常好的的解決方法。
【發明內容】
[0009] 針對現有技術的不足,本發明提供了一種基于藍牙4.0的用于實現低功耗無線數 據傳輸的慣性動作捕捉系統;
[0010] 本發明還提供了上述慣性動作捕捉系統的數據傳輸方法。
[0011]術語解釋
[0012] 藍牙低能耗(BLE)技術,是低成本、短距離、可互操作的魯棒性無線技術,工作在免 許可的2.4GHz ISM射頻頻段。它從一開始就設計為超低功耗(ULP)無線技術。它利用許多智 能手段最大限度地降低功耗。藍牙低能耗技術采用可變連接時間間隔,這個間隔根據具體 應用可以設置為幾毫秒到幾秒不等。另外,因為BLE技術采用非常快速的連接方式,因此平 時可以處于"非連接"狀態(節省能源),此時鏈路兩端相互間只是知曉對方,只有在必要時 才開啟鏈路,然后在盡可能短的時間內關閉鏈路。
[0013] 本發明的技術方案為:
[0014] -種基于藍牙4.0的用于實現低功耗無線數據傳輸的慣性動作捕捉系統,包括N個 數據采集模塊、M個sink節點及一個Root節點,所述N個數據采集模塊分成M組,每一組的所 有數據采集模塊分別無線連接一個sink節點,M個sink節點分別無線連接一個Root節點;所 述數據采集模塊包括若干個傳感器、M⑶及一個BLE模塊,若干個傳感器及一個BLE模塊分別 連接M⑶,所述s ink節點包括BLE模塊,所述Root節點包括BLE模塊,所述N個數據采集模塊分 別設置在采集對象的N個關節處;
[0015] 所述數據采集模塊用于:采集對應關節處的數據,并將數據傳輸至與該數據采集 模塊連接的s i nk節點;
[0016] 所述s ink節點用于:短時存儲該s i nk節點連接的所有數據采集模塊傳輸的數據, 并將其傳輸至所述Root節點。
[0017] 本發明提出了一種基于藍牙4.0的動作捕捉系統數據傳輸的網絡結構,即樹狀網 絡拓撲結構:在采集對象各個關節處增加 BLE模塊,使得每一個關節處都能夠使用藍牙技術 和sink節點通信,并將所有的關節處分成若干組,每組連接一個sink節點,每一組中的關節 處的數據都可以與和自己的s ink節點進行數據傳輸,s ink節點通過串口與Roo t節點進行數 據傳輸,組成一種樹狀傳輸網絡。
[0018] 本發明基于藍牙的樹狀傳輸網絡有效的解決了 WiFi和Zigbee無線技術在動作捕 捉系統中的不足,同時讓用戶擺脫了數據線的束縛,提升了用戶體驗,并且降低了整個系統 的功耗。
[0019] 根據本發明優選的,所述BLE模塊的型號為SOC-CC2540。
[0020] S〇C-CC2540結合一個優異的無線射頻傳送接收器及一個工業標準的加強型8051 微控制器,低功耗模式下工作,具有自適應跳頻技術選擇特定頻率下數據傳輸,減少其他 2.4G無線電磁波的干擾,超低功耗模式下工作,提供可靠穩定持久的數據傳輸服務。
[0021] 根據本發明優選的,所述M⑶的型號為STM32L152RBT6。
[0022] 根據本發明優選的,所述N的取值范圍為15-18。
[0023]根據本發明優選的,所述若干個傳感器包括:加速度計、陀螺儀、磁力計,所述加速 度計及所述陀螺儀的型號為MPU6050,所述磁力計的型號為MAG3110。
[0024] 加速度計和陀螺儀使用InvenSense公司的MPU6050芯片,由于該芯片集成了三軸 加速度計與三軸陀螺儀,加速度計與陀螺儀坐標系中心是重合的,無需考慮補償問題,為硬 件的設計和程序的編寫提供了方便。
[0025] 磁力計使用飛思卡爾公司設計生產的MAG3110JAG3110可以在寬達+/-ΙΟΟΟμΤ的 范圍內測量磁場強度,先進的過采樣技術可以將噪聲控制在〇.25uT,同時具有低功耗特性, 在0·6Ηζ的0DR(0utput Data Rate)下僅需8.6uA的電流。
[0026]上述慣性動作捕捉系統的數據傳輸方法,具體步驟包括:
[0027] (1)所述MCU通過讀取所述加速度計、所述陀螺儀、所述磁力計上的數據,獲取每個 關節處的動作信息,所述動作信息包括加速度、角速度和磁強度,并將動作信息進行壓縮四 元數處理并短暫存儲;
[0028] (2)通過所述數據采集模塊的BLE模塊將步驟(1)處理并短暫存儲的每個關節處的 動作信息發送至所述sink節點的BLE模塊;
[0029] (3)所述s ink節點的BLE模塊將數據發送至Root節點的BLE模塊。
[0030]兩個BLE模塊的之間數據的通信是通過藍牙協議棧的GATT層實現的。GATT層分為 GATT客戶端和GATT服務器端,客戶端讀取數據,服務器端為客戶端提供數據服務。數據的讀 寫通過讀取GATT服務的特征值,特征值可以自己定義,并且特定的特征值的數據長度最大 為20個字節。
[0031] 根據本發明優選的,所述步驟(1)中,所述將動作信息進行壓縮四元數處理,具體 是指:對每個關節點的動作信息的格式進行定義,該格式包括Node Identity、Packet Identity、W、X、Y、Z,Node Identity表示每個關節處對應的節點編號,Packet Identity為 數據包的編號,表示已經讀取該關節處的動作信息的次數,因為要不斷地采集關節處的動 作信息,所以每秒鐘需要讀取50-60次,這個數據包編號表示發送的第幾次動作信息,作用 是同步所有關節處的動作信息;W、X、Y、Z是指加速度計的數據、角速度計的數據和磁力計的 數據壓縮的四元數。格式如表2所示:
[0032] 表 2
[0034]節點編號的作用是用于標識該數據包屬于采集對象哪個關節處的數據,數據包編 號表示發送的第幾次數據,作用是同步所有節點的數據,WXYZ為壓縮的四元數,其可以還原 人體動作信息,在網絡中可以降低整個系統的網絡負載。
[0035] 本發明的有益效果為:
[0036] 1、本發明數據傳輸方式采用無線的方式,能夠很大程度上解決數據傳輸線對人體 運動的限制和阻礙,增強演員或者游戲者的自由度,極大的提高用戶體驗。
[0037] 2、本發明的核心技術采用藍牙4. OBLE規范,能夠最大程度地降低整個傳輸網絡的 系統功耗,并且藍牙4.0具有自適應跳頻技術,能夠很好的處理空間中ISM2.4G頻段其他信 號的干擾,建立一種樹狀網絡拓撲結構,可以提供穩定可靠的數據傳輸服務,并且這種樹狀 網絡拓撲結構隨著sink節點的的級數和數量的增加,網絡的拓撲大小和覆蓋的范圍將隨之 增加,網絡的可拓展性非常強。
【附圖說明】
[0038]圖1為藍牙星型網絡拓撲結構圖;
[0039] 圖1中,藍牙星型網絡拓撲結構是一個主設備與六個從設備通信,現有的藍牙星型 網絡拓撲結構最多是一個主設備與七個從設備通信,但是,人體動作捕捉系統人體關節有 15-18個,不能夠滿足要求。
[0040] 圖2為實施例1所述慣性動作捕捉系統的樹狀網絡拓撲結構圖;
[0041]圖3為本發明所述數據采集模塊的結構框圖;
【具體實施方式】
[0042]下面結合說明書附圖和實施例對本發明作進一步限定,但不限于此。
[0043] 實施例1
[0044] -種基于藍牙4.0的用于實現低功耗無線數據傳輸的慣性動作捕捉系統,包括18 個數據采集模塊、3個sink節點及1個Root節點,所述18個數據采集模塊分成3組,每一組的 所有數據采集模塊分別無線連接1個sink節點,3個sink節點分別無線連接1個Root節點;所 述數據采集模塊包括若干個傳感器、M⑶及一個BLE模塊,若干個傳感器及一個BLE模塊分別 連接MCU,所述sink節