otamesi

Dependencies:   mbed

Revision:
32:c522d463c4fa
Parent:
31:1ee80995740a
Child:
33:8d3757a0cd93
--- a/main.cpp	Wed Dec 12 08:39:06 2018 +0000
+++ b/main.cpp	Wed Dec 12 10:22:22 2018 +0000
@@ -79,7 +79,9 @@
     
     wait(20);     //確認用
     
- printf("GPS start\r\n");
+     FILE *fp = fopen("/local/gps,foto.txt", "w");  // Open "gps.txt" on the local file system for writing
+    
+/* printf("GPS start\r\n");
    FILE *fp = fopen("/local/gps,foto.txt", "w");  // Open "gps.txt" on the local file system for writing
     fprintf(fp, "GPS Start\r\n");
     int n;
@@ -98,10 +100,10 @@
 
     }    
     fprintf(fp,"GPS finish\r\n");    
- //   fclose(fp);                     // GPSの測定終了 
+ //   fclose(fp);                     // GPSの測定終了   */
  
-          motorSpeed.period_ms(2);              //モーター調節
-          motorSpeed = 0.9;
+          motorSpeed.period_ms(4);              //モーター調節
+          motorSpeed = 0.955;
 
      
 compass.init();                  //地磁気センサー動作
@@ -237,7 +239,7 @@
         else if (test.read() == 0 and flag == 1){   //そうじゃなくて今度はとうとうtestが0でスリットの部分になった瞬間なのにスイッチが1で切れているときは
             flag = 0;                               //まずこれでスイッチを0にして入れる。
                                                     //こうすることで同じスリットの中でtestが複数回0を返した時に何回も52.5mmを加算しつづけるということがなくなる
-            rightrun += 54.95;                            //総距離runに52.5を加算する
+            rightrun += 56.25;                            //総距離runに52.5を加算する
             printf("test.read else\r\n");
         }
          if (test2.read() == 1 and flag2 == 0){
@@ -246,13 +248,13 @@
         }
         else if (test2.read() == 0 and flag2 == 1){
             flag2 = 0;
-            leftrun2 += 54.95;
+            leftrun2 += 56.25;
             printf("test2.read else\r\n");
         }
         printf("%f", rightrun);
         printf("\t%f\r\n", leftrun2);
         run=culculate_distance_3(rightrun,leftrun2);
-        if (2000<run<2100){ //半分くらい進んだら方位を計測し直す
+        if (15000<run && run<15050){ //半分くらい進んだら方位を計測し直す
         motor1.stop(0);
     motor2.stop(0);
     wait(1);
@@ -282,7 +284,7 @@
 }
 printf("searchN\r\n"); //機体が北を向く
 }
-        else if (run >= 4396){                             //もし総距離が250以上ならば、というのもここの値は暫定値。とりあえずゴール地点が決まればまたその値に修正する
+        else if (run >= 30000){                             //もし総距離が250以上ならば、というのもここの値は暫定値。とりあえずゴール地点が決まればまたその値に修正する
             break;                                  //つまりゴールについたらこのループからぬける
         }
         
@@ -327,7 +329,7 @@
 
             motor1.speed(msj1);       //機体を時計回りに90度回転
             motorReverse();
-            wait(0.4);
+            wait(0.5);
             printf("mortor rotation\r\n");
             
             motor1.stop(0);
@@ -347,7 +349,7 @@
 
             motor1.speed(-msj1);      //機体を反時計回りに90度回転
             motorForward();
-            wait(0.4);
+            wait(0.5);
             printf("mortor rotation\r\n");
             
             motor1.stop(0);
@@ -371,14 +373,14 @@
             else if (test.read() == 0 and flag == 1)
             {
                 flag=0;
-                rightrun += 52.5;
+                rightrun += 56.25;
             }
              if (test2.read() == 1 and flag2 == 0){
             flag2 = 1;
         }
         else if (test2.read() == 0 and flag2 == 1){
             flag2 = 0;
-            leftrun2 += 52.5;
+            leftrun2 += 56.25;
         }
         printf("%f", rightrun);
         printf("\t%f\r\n", leftrun2);
@@ -417,7 +419,7 @@
         //printf(" speed %f difference %f\r\n",speed,difference);//速度と加速度を表示
         printf("speed %f diference %f\r\n",speed,difference);//速度(m)と変位を表示*/
         
-        if (run >= 4396){                             //もし総距離が250以上ならば、というのもここの値は暫定値。とりあえずゴール地点が決まればまたその値に修正する
+        if (run >= 300000){                             //もし総距離が250以上ならば、というのもここの値は暫定値。とりあえずゴール地点が決まればまたその値に修正する
             break;                                  //つまりゴールについたらこのループからぬける
         }
         
@@ -436,7 +438,7 @@
 
             motor1.speed(-msj1);      //機体を反時計回りに90度回転
             motorForward();
-            wait(0.57);
+            wait(0.5);
             printf("mortor rotation\r\n");
             
             motor1.stop(0);
@@ -456,7 +458,7 @@
 
             motor1.speed(msj1);       //機体を時計回りに90度回転
             motorReverse();
-            wait(0.57);   
+            wait(0.5);   
             printf("mortor rotation\r\n");
             
             motor1.stop(0);