2016-11-27 56 views
0

在設備上,我想檢測一系列力量:小力量(最小大約0.01g),但也有更強的力量,例如0.1g - 0.15g。我可以用陀螺儀和磁力計取消重力嗎?

該設備將在三維空間有不同的位置,所以爲了檢測小的力量我必須知道它的角度以便能夠減去1g。因爲該設備可以有一個隨機的位置(角度位置)。

我到目前爲止所做的:我使用了MPU6050並使用了與accel配合使用的濾波器。和陀螺儀。 它是這樣的:

agnleX_k+1 = 0.98*(angle_k + deltaT * gyro_k+1) + 0.02*angle_acc_k+1; 

angle_acc從加速計算的角度。傳感器。喜歡的東西:

arctan(accelX/sqrt(accelX^2 + accelY^2 + accelZ^2 +)) 

所以我很感興趣:

forceX_k+1 = accelX_k+1 - 1g*sin(agnleX_k+1) 

的問題是:

如果我要檢測一個小部隊在非常快的到來,讓我們accelX_k+1說我想要檢測從0g到0.01g或更多的變化,但在非常小的時間範圍內。問題在於我的計算角度也會受到加速度這個小而快的變化的影響。傳感器雖然角度沒有真正改變。

我想我將不得不做獨立於加速度的角度計算。傳感器。我可以做一些像陀螺儀和磁力計的互補濾波器嗎?這是否與我上面描述的過濾器一樣工作,但只是與磁盤一起工作。傳感器呢?或者你會怎麼做?我正在考慮使用MPU9250。

回答

0

你說過使用MPU6050,它包含加速度計和陀螺儀。您可以獨立使用它們 - 從加速度計獲取加速度並從陀螺儀獲取角度,然後使用角度來補償旋轉。角度不需要依靠加速度計。