Flying Sea Glider / Mbed 2 deprecated 2019_19feb19_jcw_noSD

Dependencies:   mbed MODSERIAL FATFileSystem

Committer:
danstrider
Date:
Mon Oct 23 12:50:53 2017 +0000
Revision:
10:085ab7328054
Parent:
9:d5fcdcb3c89d
Child:
11:3b241ecb75ed
checked out on the hardware

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mkelly10 9:d5fcdcb3c89d 1 #include "config_functions.h"
mkelly10 9:d5fcdcb3c89d 2 #include "StaticDefs.hpp"
mkelly10 9:d5fcdcb3c89d 3
mkelly10 9:d5fcdcb3c89d 4 int load_BCE_config()
mkelly10 9:d5fcdcb3c89d 5 {
mkelly10 9:d5fcdcb3c89d 6 ConfigFile cfg;
mkelly10 9:d5fcdcb3c89d 7 int count = 0;
danstrider 10:085ab7328054 8 if (!cfg.read("/local/bce.txt")) {
mkelly10 9:d5fcdcb3c89d 9 error("File Read Error");
danstrider 10:085ab7328054 10 }
mkelly10 9:d5fcdcb3c89d 11 char value[BUFSIZ];
mkelly10 9:d5fcdcb3c89d 12
mkelly10 9:d5fcdcb3c89d 13 if (cfg.getValue("PGain", &value[0] , sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 14 bce().setControllerP(atof(value));
mkelly10 9:d5fcdcb3c89d 15 count++;
mkelly10 9:d5fcdcb3c89d 16 }
mkelly10 9:d5fcdcb3c89d 17 if (cfg.getValue("IGain", &value[0] ,sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 18 bce().setControllerI(atof(value));
mkelly10 9:d5fcdcb3c89d 19 count++;
mkelly10 9:d5fcdcb3c89d 20 }
mkelly10 9:d5fcdcb3c89d 21 if (cfg.getValue("DGain", &value[0] , sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 22 bce().setControllerD(atof(value));
mkelly10 9:d5fcdcb3c89d 23 count++;
mkelly10 9:d5fcdcb3c89d 24 }
mkelly10 9:d5fcdcb3c89d 25 if (cfg.getValue("zeroCounts", &value[0],sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 26 bce().setZeroCounts(atoi(value));
mkelly10 9:d5fcdcb3c89d 27 count++;
mkelly10 9:d5fcdcb3c89d 28 }
mkelly10 9:d5fcdcb3c89d 29 if (cfg.getValue("PistonTravelLimit", &value[0], sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 30 bce().setTravelLimit(atof(value));
mkelly10 9:d5fcdcb3c89d 31 count++;
mkelly10 9:d5fcdcb3c89d 32 }
mkelly10 9:d5fcdcb3c89d 33 if (cfg.getValue("slope", &value[0], sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 34 bce().setPotSlope(atof(value));
mkelly10 9:d5fcdcb3c89d 35 count++;
mkelly10 9:d5fcdcb3c89d 36 }
mkelly10 9:d5fcdcb3c89d 37 if (cfg.getValue("filterWn", &value[0], sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 38 bce().setFilterFrequency(atof(value));
mkelly10 9:d5fcdcb3c89d 39 count++;
mkelly10 9:d5fcdcb3c89d 40 }
mkelly10 9:d5fcdcb3c89d 41 if (cfg.getValue("deadband", &value[0], sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 42 bce().setDeadband(atof(value));
mkelly10 9:d5fcdcb3c89d 43 count++;
mkelly10 9:d5fcdcb3c89d 44 }
mkelly10 9:d5fcdcb3c89d 45
mkelly10 9:d5fcdcb3c89d 46 return count;
mkelly10 9:d5fcdcb3c89d 47 }
mkelly10 9:d5fcdcb3c89d 48
mkelly10 9:d5fcdcb3c89d 49 int load_BATT_config()
mkelly10 9:d5fcdcb3c89d 50 {
mkelly10 9:d5fcdcb3c89d 51 ConfigFile cfg;
mkelly10 9:d5fcdcb3c89d 52 int count = 0;
danstrider 10:085ab7328054 53 if (!cfg.read("/local/batt.txt")) {
mkelly10 9:d5fcdcb3c89d 54 error("File Read Error");
danstrider 10:085ab7328054 55 }
mkelly10 9:d5fcdcb3c89d 56 char value[BUFSIZ];
mkelly10 9:d5fcdcb3c89d 57
mkelly10 9:d5fcdcb3c89d 58
mkelly10 9:d5fcdcb3c89d 59 if (cfg.getValue("PGain", &value[0] , sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 60 batt().setControllerP(atof(value));
mkelly10 9:d5fcdcb3c89d 61 count++;
mkelly10 9:d5fcdcb3c89d 62 }
mkelly10 9:d5fcdcb3c89d 63 if (cfg.getValue("IGain", &value[0] ,sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 64 batt().setControllerI(atof(value));
mkelly10 9:d5fcdcb3c89d 65 count++;
mkelly10 9:d5fcdcb3c89d 66 }
mkelly10 9:d5fcdcb3c89d 67 if (cfg.getValue("DGain", &value[0] , sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 68 batt().setControllerD(atof(value));
mkelly10 9:d5fcdcb3c89d 69 count++;
mkelly10 9:d5fcdcb3c89d 70 }
mkelly10 9:d5fcdcb3c89d 71 if (cfg.getValue("zeroCounts", &value[0],sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 72 batt().setZeroCounts(atoi(value));
mkelly10 9:d5fcdcb3c89d 73 count++;
mkelly10 9:d5fcdcb3c89d 74 }
mkelly10 9:d5fcdcb3c89d 75 if (cfg.getValue("PistonTravelLimit", &value[0], sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 76 batt().setTravelLimit(atof(value));
mkelly10 9:d5fcdcb3c89d 77 count++;
mkelly10 9:d5fcdcb3c89d 78 }
mkelly10 9:d5fcdcb3c89d 79 if (cfg.getValue("slope", &value[0], sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 80 batt().setPotSlope(atof(value));
mkelly10 9:d5fcdcb3c89d 81 count++;
mkelly10 9:d5fcdcb3c89d 82 }
mkelly10 9:d5fcdcb3c89d 83 if (cfg.getValue("filterWn", &value[0], sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 84 batt().setFilterFrequency(atof(value));
mkelly10 9:d5fcdcb3c89d 85 count++;
mkelly10 9:d5fcdcb3c89d 86 }
mkelly10 9:d5fcdcb3c89d 87 if (cfg.getValue("deadband", &value[0], sizeof(value))) {
mkelly10 9:d5fcdcb3c89d 88 batt().setDeadband(atof(value));
mkelly10 9:d5fcdcb3c89d 89 count++;
mkelly10 9:d5fcdcb3c89d 90 }
mkelly10 9:d5fcdcb3c89d 91
danstrider 10:085ab7328054 92 return count;
danstrider 10:085ab7328054 93 }
danstrider 10:085ab7328054 94
danstrider 10:085ab7328054 95 int load_DEPTH_config()
danstrider 10:085ab7328054 96 {
danstrider 10:085ab7328054 97 ConfigFile cfg;
danstrider 10:085ab7328054 98 int count = 0;
danstrider 10:085ab7328054 99 if (!cfg.read("/local/depth.txt")) {
danstrider 10:085ab7328054 100 error("File Read Error");
danstrider 10:085ab7328054 101 }
danstrider 10:085ab7328054 102 char value[BUFSIZ];
mkelly10 9:d5fcdcb3c89d 103
danstrider 10:085ab7328054 104 if (cfg.getValue("PGain", &value[0] , sizeof(value))) {
danstrider 10:085ab7328054 105 depthLoop().setControllerP(atof(value));
danstrider 10:085ab7328054 106 count++;
danstrider 10:085ab7328054 107 }
danstrider 10:085ab7328054 108 if (cfg.getValue("IGain", &value[0] ,sizeof(value))) {
danstrider 10:085ab7328054 109 depthLoop().setControllerI(atof(value));
danstrider 10:085ab7328054 110 count++;
danstrider 10:085ab7328054 111 }
danstrider 10:085ab7328054 112 if (cfg.getValue("DGain", &value[0] , sizeof(value))) {
danstrider 10:085ab7328054 113 depthLoop().setControllerD(atof(value));
danstrider 10:085ab7328054 114 count++;
danstrider 10:085ab7328054 115 }
danstrider 10:085ab7328054 116 if (cfg.getValue("filterWn", &value[0], sizeof(value))) {
danstrider 10:085ab7328054 117 depthLoop().setFilterFrequency(atof(value));
danstrider 10:085ab7328054 118 count++;
danstrider 10:085ab7328054 119 }
danstrider 10:085ab7328054 120 if (cfg.getValue("deadband", &value[0], sizeof(value))) {
danstrider 10:085ab7328054 121 depthLoop().setDeadband(atof(value));
danstrider 10:085ab7328054 122 count++;
danstrider 10:085ab7328054 123 }
danstrider 10:085ab7328054 124
danstrider 10:085ab7328054 125 return count;
danstrider 10:085ab7328054 126 }
danstrider 10:085ab7328054 127
danstrider 10:085ab7328054 128 int load_PITCH_config()
danstrider 10:085ab7328054 129 {
danstrider 10:085ab7328054 130 ConfigFile cfg;
danstrider 10:085ab7328054 131 int count = 0;
danstrider 10:085ab7328054 132 if (!cfg.read("/local/pitch.txt")){
danstrider 10:085ab7328054 133 error("File Read Error");
danstrider 10:085ab7328054 134 }
danstrider 10:085ab7328054 135 char value[BUFSIZ];
danstrider 10:085ab7328054 136
danstrider 10:085ab7328054 137 if (cfg.getValue("PGain", &value[0] , sizeof(value))) {
danstrider 10:085ab7328054 138 pitchLoop().setControllerP(atof(value));
danstrider 10:085ab7328054 139 count++;
danstrider 10:085ab7328054 140 }
danstrider 10:085ab7328054 141 if (cfg.getValue("IGain", &value[0] ,sizeof(value))) {
danstrider 10:085ab7328054 142 pitchLoop().setControllerI(atof(value));
danstrider 10:085ab7328054 143 count++;
danstrider 10:085ab7328054 144 }
danstrider 10:085ab7328054 145 if (cfg.getValue("DGain", &value[0] , sizeof(value))) {
danstrider 10:085ab7328054 146 pitchLoop().setControllerD(atof(value));
danstrider 10:085ab7328054 147 count++;
danstrider 10:085ab7328054 148 }
danstrider 10:085ab7328054 149 if (cfg.getValue("filterWn", &value[0], sizeof(value))) {
danstrider 10:085ab7328054 150 pitchLoop().setFilterFrequency(atof(value));
danstrider 10:085ab7328054 151 count++;
danstrider 10:085ab7328054 152 }
danstrider 10:085ab7328054 153 if (cfg.getValue("deadband", &value[0], sizeof(value))) {
danstrider 10:085ab7328054 154 pitchLoop().setDeadband(atof(value));
danstrider 10:085ab7328054 155 count++;
danstrider 10:085ab7328054 156 }
danstrider 10:085ab7328054 157
danstrider 10:085ab7328054 158 return count;
mkelly10 9:d5fcdcb3c89d 159 }