most functionality to splashdwon, find neutral and start mission. short timeouts still in code for testing, will adjust to go directly to sit_idle after splashdown

Dependencies:   mbed MODSERIAL FATFileSystem

Revision:
43:891baf306e0a
Parent:
38:83d06c294807
Child:
52:f207567d3ea4
--- a/ConfigFileIO/ConfigFileIO.cpp	Wed Feb 14 21:47:31 2018 +0000
+++ b/ConfigFileIO/ConfigFileIO.cpp	Wed Feb 14 21:54:03 2018 +0000
@@ -308,4 +308,71 @@
         count++;
     }     
     return count;
+}
+
+int ConfigFileIO::load_RUDDER_config() {
+    ConfigFile cfg;
+    int count = 0;
+    if (!cfg.read("/local/rudder.txt")){
+            error("File Read Error");
+    }
+    char value[BUFSIZ];
+    
+    if (cfg.getValue("PGain", &value[0] , sizeof(value))) {
+        rudderLoop().setControllerP(atof(value));
+        count++;
+    }
+    if (cfg.getValue("IGain", &value[0] ,sizeof(value))) {
+        rudderLoop().setControllerI(atof(value));
+        count++;
+    }
+    if (cfg.getValue("DGain", &value[0] , sizeof(value))) {
+        rudderLoop().setControllerD(atof(value));
+        count++;
+    }
+    if (cfg.getValue("filterWn", &value[0], sizeof(value))) {
+        rudderLoop().setFilterFrequency(atof(value));
+        count++;
+    }
+    if (cfg.getValue("deadband", &value[0], sizeof(value))) {
+        rudderLoop().setDeadband(atof(value));
+        count++;
+    }
+    
+    if (cfg.getValue("zeroOffset", &value[0], sizeof(value))) {
+        rudderLoop().setOutputOffset(atof(value));
+        count++;
+    }     
+    return count;
+}
+
+int ConfigFileIO::load_SERVO_config() {
+    ConfigFile cfg;
+    int count = 0;
+    if (!cfg.read("/local/servo.txt")){
+            error("File Read Error");
+    }
+    char value[BUFSIZ];
+    
+    if (cfg.getValue("setMinDeg", &value[0] , sizeof(value))) {
+        servo().setMinDeg(atof(value));
+        count++;
+    }
+    if (cfg.getValue("setMaxDeg", &value[0] ,sizeof(value))) {
+        servo().setMaxDeg(atof(value));
+        count++;
+    }
+    if (cfg.getValue("setCenterPMW", &value[0] , sizeof(value))) {
+        servo().setCenterPWM(atof(value));
+        count++;
+    }
+    if (cfg.getValue("setMinPWM", &value[0], sizeof(value))) {
+        servo().setMinPWM(atof(value));
+        count++;
+    }
+    if (cfg.getValue("setMaxPWM", &value[0], sizeof(value))) {
+        servo().setMaxPWM(atof(value));
+        count++;
+    }
+    return count;
 }
\ No newline at end of file