2017-08-25 181 views
0

我得出的結論是,無法確定在android設備中給定加速度計的速度。假設我的初始速度爲零用於獲取積分模式中的速度將是來自加速度計的速度

v_ib_b = old_v_ib_b + f_ib_b * dt , 

其中v_ib_b是沿着主體軸線解決了在慣性體框架的速度和f_ib_b是由所述加速度計所測量的力。
如果我想計算在本地導航框架ENU智能電話下列公式可用於的速度(簡化Bortz方程忽略科里奧利/划槳和傳輸速率):

v_eb_n = old_v_eb_n + (C_b_n * (f_ib_b + 0.5 * cross(omega_ib_b, f_ib_b)) - g) * dt 

其中C_b_n是旋轉矩陣身體到ENU。
我試圖使用Sensor.TYPE_ROTATION_VECTOR,MadgwickAHRS和我自己的傳感器融合分別獲得ENU幀的方向和旋轉矩陣。沒有哪一個使用該物質是同時用自行車騎行速度積分在幾分鐘內的輸出中(智能電話被安裝到車把面向天空): enter image description here

,這是原始數據集成: enter image description here

我假設加速度計執行差,噪音和取消任何測量隨着時間的推移,因此無法獲得速度。有任何想法嗎?

回答

0

加速度相對較小的變化將與噪音混合在一起。是阻止使用GPS數據的東西?另一個方向是將陀螺儀數據與加速度計數據相結合,以獲得更好的降噪效果,從而創建完整的IMU。

+0

將陀螺儀與加速度計結合是什麼意思?如果你正在談論傳感器融合,我已經做到了這一點,以獲得方向。 – optional