我試圖獲得GY-521(MPU 6050)的Z角旋轉角度,但如果我不移動傳感器,角度上升也是靜態的。有沒有辦法「過濾」他對我的情況是正確的角度?濾波器Z-角度旋轉MPU 6050 + Arduino
代碼:
float accel_z = accel_t_gyro.value.z_accel;
float accel_angle_z = 0;
float gyro_angle_z = gyro_z*dt + get_last_z_angle();
float unfiltered_gyro_angle_z = gyro_z*dt + get_last_gyro_z_angle();
float alpha = 0.96;
float angle_z = alpha*gyro_angle_z + (1.0 - alpha)*accel_angle_z;
輸出時不移動傳感器:
X = X-roatation角 Z = Z-roatation-天使
x z
8.37 4.24
8.35 4.22
8.33 4.21
8.32 4.19
8.31 4.18
8.29 4.17
8.28 4.15
8.26 4.14
8.25 4.12
8.23 4.12
8.22 4.10
8.21 4.09
8.19 4.07
8.18 4.05
[您如何使用移動平均值濾除iPhone OS中的加速度計值](http://stackoverflow.com/questions/2272527/how-do-you-use-a-moving-average-在過濾器加速計數值在iphone-os) –
它看起來像你已經有一個低通濾波器 - 也許你需要增加'阿爾法'的價值,以獲得更多的平滑? –
爲我的問題找到了解決方案。無法讀取z軸上的旋轉角度變化,因爲沒有重力將陀螺儀保持在正確的位置;) –