MPU6050のオフセット値を測定し修正するプログラムです。

Dependencies:   mbed MPU6050

Files at this revision

API Documentation at this revision

Comitter:
falconsyunya
Date:
Fri Nov 23 22:11:45 2018 +0000
Parent:
8:2b8cd80bea3b
Commit message:
2018/11/24 7:11

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/main.cpp	Fri Nov 23 22:08:37 2018 +0000
+++ b/main.cpp	Fri Nov 23 22:11:45 2018 +0000
@@ -93,10 +93,46 @@
         printf("bias=%f\r\n",biasxav);
         getchar();
 //X軸方向の加速度バイアス計算終了。
+//Y軸方向の加速度バイアス平均値計算。
+    for(int i=0;i<2000;i++){
+        mpu.readAccelData(accel);
+        if(Y<9.797044){
+        biasy++;
+        y = accel[0]+biasy;
+        Y = y*0.000597964111328125; 
+        printf("%f\r\n",Y);
+        }
+        else{
+        biasy--;
+        y = accel[2]+biasy;
+        Y = y*0.000597964111328125; 
+        printf("%f\r\n",Y);
+        }
+        }
+    for(int i=0;i<100;i++){
+        mpu.readAccelData(accel);
+        if(Y<9.797044){
+        biasy++;
+        y = accel[0]+biasy;
+        Y = y*0.000597964111328125; 
+        printf("%f\r\n",Y);
+        }
+        else{
+        biasy--;
+        y = accel[0]+biasy;
+        Y = y*0.000597964111328125; 
+        printf("%f\r\n",Y);
+        }
+        biasysum = biasysum + biasy;
+        }
+        biasyav = biasysum/101;
+        printf("bias=%f\r\n",biasyav);
+        getchar();
+//X軸方向の加速度バイアス計算終了。
     while(1){
         mpu.readAccelData(accel);//加速度の値をaccel[3]に代入
         x = accel[0]+biasx;//x軸方向の加速度
-        y = accel[1];//y軸方向の加速度
+        y = accel[1]+biasy;//y軸方向の加速度
         z = accel[2]+biasz;//z軸方向の加速度
         X = x*0.000597964111328125;
         Y = y*0.000597964111328125;