高高度CanSat Space SWANの投下時に使用したプログラム.(IZU2019)

Dependencies:   Nichrome_lib mbed ads1115_test BNO055_lib ADXL375_i2c ES920LR CCS811_lib SDFileSystem BME280_lib INA226_lib EEPROM_lib GPS_interrupt

Revision:
8:2ce2c7eebb92
Parent:
7:3a2d0474f1ca
--- a/main.cpp	Tue Mar 12 14:12:31 2019 +0000
+++ b/main.cpp	Sun Apr 21 10:37:15 2019 +0000
@@ -18,14 +18,14 @@
 設定値
 投下前に必ず確認!!
 *******************************************************************************/
-const float START_CONTROLL_TIME = 10.0f;
+const float START_CONTROLL_TIME = 1.0f;
 const float START_CONTROLL_ALT = -5.0f;
 
 const float RECOVERY_TIME = 120.0f;
 const float RECOVERY_SPEED = -2.0f;
 
-bool wait_GPS = false;
-bool ok_PC = true;
+bool wait_GPS = true;
+bool ok_PC = false;
 
 /*******************************************************************************
 コンストラクタ
@@ -35,9 +35,9 @@
 RawSerial serial_es920(p9, p10);
 ES920LR es920(serial_es920, pc, 115200);
 
-Serial GPS_serial(p13, p14, 38400);
+Serial GPS_serial(p13, p14, 9600);
 GPS_interrupt GPS(&GPS_serial);
-float GPS_freq = 4;
+float GPS_freq = 1;
 
 SDFileSystem sd(p5, p6, p7, p8, "sd");
 const char file_name[64] = "/sd/Space_SWAN_LOG.txt";
@@ -54,8 +54,8 @@
 
 Nichrome_lib Valve1(p23);
 Nichrome_lib Valve2(p24);
-Nichrome_lib Valve3(p24);
-Nichrome_lib Valve4(p25);
+Nichrome_lib Valve3(p25);
+Nichrome_lib Valve4(p26);
 Nichrome_lib Buzzer(p22);
 
 DigitalIn FlightPin(p15);
@@ -321,10 +321,12 @@
             startControllAttitude();
             start_controll_once = true;
         }
+        /*
         if(speed_ave > RECOVERY_SPEED && alt < 5.0f){
             timeout_recovery.detach();
             changePhase_RECOVERY();
         }
+        */
         break;
         
         case CANSAT_RECOVERY:
@@ -363,7 +365,25 @@
 *******************************************************************************/
 void controllAttitude(){
     if(controll_yn){
-        
+        if(euler[1] > 10){
+            Valve1.fire_on();
+            Valve3.fire_off();
+        }
+        else if(euler[1] < -10){
+            Valve1.fire_off();
+            Valve3.fire_on();
+        }
+        else{
+            Valve1.fire_off();
+            Valve3.fire_off();
+        }
+    }
+    
+    else{
+        Valve1.fire_off();
+        Valve2.fire_off();
+        Valve3.fire_off();
+        Valve4.fire_off();
     }
 }