上海潤欣科技股份有限公司創(chuàng)研社
在VR/AR中的“眼觀六路耳聽八方”這個文章中我們有介紹到九軸傳感器融合算法的芯片BNO085,這里特意針對此芯片的SH2協(xié)議通訊數(shù)據(jù)進行解析,客戶主控MCU與BNO085的SPI,UART,IIC 中的任何一個接口驅(qū)動成功后,直接讀寫B(tài)NO085的相關(guān)傳感器數(shù)據(jù):
1:1000-3625 SH-2 Reference Manual v1.2 文檔命令舉例說明(一般游戲ARVR 客戶讀取0X29四元素數(shù)據(jù)后自己轉(zhuǎn)換成歐拉角等):數(shù)據(jù)手冊33頁也有說明(2.2.5到2.2.7章節(jié))。 6.5.18 Rotation Vector (0x05) 這個是沒有防抖算法的傳感器輸出的九軸四元數(shù)數(shù)據(jù)。 6.5.19 Game Rotation Vector (0x08) 這個是沒有防抖算法的傳感器輸出的六軸四元數(shù)數(shù)據(jù)。 6.5.42 ARVR-Stabilized Rotation Vector (0x28)當(dāng)設(shè)備運動時,累積誤差被糾正,這限制了數(shù)據(jù)不連續(xù)或跳躍的出現(xiàn)。這個是有防抖算法的穩(wěn)定的傳感器數(shù)據(jù)輸出的九軸四元數(shù)數(shù)據(jù)。 6.5.43 ARVR-Stabilized Game Rotation Vector (0x29)這個當(dāng)設(shè)備運動時,累積誤差被糾正,這限制了數(shù)據(jù)不連續(xù)或跳躍的出現(xiàn)是六軸數(shù)據(jù)輸出。這個是有防抖算法的穩(wěn)定的傳感器數(shù)據(jù)輸出的六軸四元數(shù)數(shù)據(jù)。 2:客戶驅(qū)動完成后,MCU獲取BNO085的6.5.18 Rotation Vector (0x05) 的數(shù)據(jù),先復(fù)位或者上電使能傳感器,讀寫傳感器數(shù)據(jù),參考數(shù)據(jù)手冊參考第5 . 2 . 2節(jié)寫/讀BNO08X數(shù)據(jù)表 直接寫如下字符串21個字節(jié): 0x15 0x00 0x02 0x010xFD0x050x00 0x00 0x000x10 0x270x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 So if you would just like to get 200Hz(5000uS) AV/VR Stabilized Game Rotation Vector from BNO085, then you can just send the following commands from MCU to BNO085: 0x15 0x00 0x02 0x010xFD0x290x00 0x00 0x000x88 0x130x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 解釋:(這個命令是設(shè)置ROTATION VECTOR 加頭四個字節(jié)SHTP Header的數(shù)據(jù)格式) 0x15 0x00 0x02 0x01(shtp header 四個字節(jié))SHTP LSB=0X15表示數(shù)據(jù)長度21字節(jié),SHTP MSB=0X00,SHTP Channel=0X02,SHTP Sequence number=0x01 SHTP Channel 參考數(shù)據(jù)手冊23頁說明 0xFD第五個字節(jié)表示 Report ID=0xFD 參考數(shù)據(jù)手冊25頁解釋,SH2文檔36頁6.2 Summary 0x05 0x00 說明:0x05代表旋轉(zhuǎn)矢量6.5.18 Rotation Vector (0x05); 0x290x00 說明:0x29 代表6.5.43 ARVR-Stabilized Game Rotation Vector (0x29) 參考1000-3625 SH-2 Reference Manual v1.2 文檔命令6.5.18.2 Input Report 0x00 0x000x10 0x270x 2710代表10,000us單位( 100赫茲)。0x00002710 0x00 0x000x88 0x13 0x 1388代表20,000us單位( 200赫茲)。0x00001388 參考數(shù)據(jù)手冊The report ID for the accelerometer is 0x1 and a period of 60ms (or 60,000 μs) equates toa report interval of 0x0000EA60. 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 這里是10個字節(jié) 參考數(shù)據(jù)手冊參考第5 . 2 . 2節(jié)寫/讀BNO08X數(shù)據(jù)表 查找1000-3625 SH-2 Reference Manual v1.2 文檔命令數(shù)據(jù)格式 查找數(shù)據(jù)手冊如下說明: A report including SHTP header will have the format as seen in: 查找SH2文檔截圖如下:
發(fā)布評論請先 登錄
PLC通過智能網(wǎng)關(guān)實現(xiàn)HTTP協(xié)議通訊,先取得token后再提交獲取JSON格式的數(shù)據(jù)文件
PROFINET通訊協(xié)議報文解析
EtherCAT通訊協(xié)議詳細解析
虹科培訓(xùn) | PROFINET通訊協(xié)議培訓(xùn)

安科瑞AWT100-DP 無線通訊終端,支持串口MODBUS RTU協(xié)議

ptp協(xié)議的基本原理解析
三菱PLC通訊協(xié)議詳細解析
AUTOSAR通信協(xié)議解析 如何實現(xiàn)AUTOSAR通信
充電樁通訊協(xié)議測試內(nèi)容及方法

SPI協(xié)議解析
PLC通訊協(xié)議有哪些
IIC通訊協(xié)議解析
UART串口通訊協(xié)議解析
PLC協(xié)議解析數(shù)據(jù)采集網(wǎng)關(guān)有什么作用

評論