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
System/StaticDefs.cpp@74:d281aaef9766, 2018-08-14 (annotated)
- Committer:
- tnhnrl
- Date:
- Tue Aug 14 21:06:48 2018 +0000
- Revision:
- 74:d281aaef9766
- Parent:
- 73:f6f378311c8d
- Child:
- 76:c802e1da4179
1) Fixed deadband on float broadcast ; 2) Fixed find neutral commands
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tnhnrl | 45:16b8162188ca | 1 | #include "StaticDefs.hpp" |
tnhnrl | 45:16b8162188ca | 2 | |
tnhnrl | 45:16b8162188ca | 3 | //Declare static global variables using 'construct on use' idiom to ensure they |
tnhnrl | 45:16b8162188ca | 4 | // are always constructed correctly and avoid "static initialization order fiasco". |
tnhnrl | 45:16b8162188ca | 5 | |
tnhnrl | 45:16b8162188ca | 6 | Timer & systemTime() { |
tnhnrl | 45:16b8162188ca | 7 | static Timer s; |
tnhnrl | 45:16b8162188ca | 8 | return s; |
tnhnrl | 45:16b8162188ca | 9 | } |
tnhnrl | 45:16b8162188ca | 10 | |
tnhnrl | 45:16b8162188ca | 11 | Ticker & pulse() { |
tnhnrl | 45:16b8162188ca | 12 | static Ticker pulse; |
tnhnrl | 45:16b8162188ca | 13 | return pulse; |
tnhnrl | 45:16b8162188ca | 14 | } |
tnhnrl | 45:16b8162188ca | 15 | |
tnhnrl | 74:d281aaef9766 | 16 | //MODSERIAL & pc() { |
tnhnrl | 74:d281aaef9766 | 17 | // //static MODSERIAL pc(USBTX, USBRX); |
tnhnrl | 74:d281aaef9766 | 18 | // return pc; |
tnhnrl | 74:d281aaef9766 | 19 | //} |
tnhnrl | 74:d281aaef9766 | 20 | |
tnhnrl | 74:d281aaef9766 | 21 | MODSERIAL & xbee() { |
tnhnrl | 74:d281aaef9766 | 22 | static MODSERIAL xb(p9, p10); //XBee tx, rx pins |
tnhnrl | 74:d281aaef9766 | 23 | //static MODSERIAL xb(USBTX, USBRX); //XBee tx, rx pins |
tnhnrl | 74:d281aaef9766 | 24 | return xb; |
tnhnrl | 45:16b8162188ca | 25 | } |
tnhnrl | 45:16b8162188ca | 26 | |
tnhnrl | 45:16b8162188ca | 27 | LocalFileSystem & local() { |
tnhnrl | 45:16b8162188ca | 28 | static LocalFileSystem local("local"); |
tnhnrl | 45:16b8162188ca | 29 | return local; |
tnhnrl | 45:16b8162188ca | 30 | } |
tnhnrl | 45:16b8162188ca | 31 | |
mkelly10 | 51:c5c40272ecc3 | 32 | /*************************************************************** Conflict with IMU |
tnhnrl | 45:16b8162188ca | 33 | SDFileSystem & sd_card() { |
tnhnrl | 45:16b8162188ca | 34 | static SDFileSystem sd_card(p11, p12, p13, p14, "sd"); //SDFileSystem sd_card(MOSI, MISO, SCK, CS, "sd"); |
tnhnrl | 45:16b8162188ca | 35 | return sd_card; |
tnhnrl | 45:16b8162188ca | 36 | } |
mkelly10 | 51:c5c40272ecc3 | 37 | */ |
tnhnrl | 45:16b8162188ca | 38 | |
tnhnrl | 45:16b8162188ca | 39 | SpiADC & adc() { |
tnhnrl | 45:16b8162188ca | 40 | static SpiADC adc(p5,p6,p7,p8,LED2); |
tnhnrl | 45:16b8162188ca | 41 | return adc; |
tnhnrl | 45:16b8162188ca | 42 | } |
tnhnrl | 45:16b8162188ca | 43 | |
tnhnrl | 53:c0586fe62b01 | 44 | LinearActuator & bce() { // pwm,dir,res,swt |
tnhnrl | 53:c0586fe62b01 | 45 | static LinearActuator bce(0.01,p22,p15,p16,p17,0); //interval , pwm, dir, reset, limit switch, adc channel (confirmed) |
tnhnrl | 45:16b8162188ca | 46 | return bce; |
tnhnrl | 45:16b8162188ca | 47 | } |
tnhnrl | 45:16b8162188ca | 48 | |
tnhnrl | 53:c0586fe62b01 | 49 | LinearActuator & batt() { // pwm,dir,res,swt |
tnhnrl | 53:c0586fe62b01 | 50 | static LinearActuator batt(0.01,p21,p20,p19,p18,1); //interval , pwm, dir, reset, limit switch, adc channel (confirmed) |
tnhnrl | 45:16b8162188ca | 51 | return batt; |
tnhnrl | 45:16b8162188ca | 52 | } |
tnhnrl | 45:16b8162188ca | 53 | |
tnhnrl | 52:f207567d3ea4 | 54 | ServoDriver & rudder() { |
tnhnrl | 56:48a8a5a65b82 | 55 | static ServoDriver rudder(p26); //current rudder pin on the latest drawing 06/11/2018 |
tnhnrl | 52:f207567d3ea4 | 56 | return rudder; |
tnhnrl | 45:16b8162188ca | 57 | } |
tnhnrl | 45:16b8162188ca | 58 | |
mkelly10 | 51:c5c40272ecc3 | 59 | //*************Need to adjust class************** |
tnhnrl | 45:16b8162188ca | 60 | omegaPX209 & depth() { |
tnhnrl | 45:16b8162188ca | 61 | static omegaPX209 depth(p19); // pin |
tnhnrl | 45:16b8162188ca | 62 | return depth; |
tnhnrl | 45:16b8162188ca | 63 | } |
tnhnrl | 45:16b8162188ca | 64 | |
tnhnrl | 45:16b8162188ca | 65 | IMU & imu() { |
tnhnrl | 57:ec69651c8c21 | 66 | static IMU imu(p28, p27); // tx, rx pin |
tnhnrl | 45:16b8162188ca | 67 | return imu; |
tnhnrl | 45:16b8162188ca | 68 | } |
tnhnrl | 45:16b8162188ca | 69 | |
tnhnrl | 45:16b8162188ca | 70 | OuterLoop & depthLoop() { |
tnhnrl | 45:16b8162188ca | 71 | static OuterLoop depthLoop(0.1, 0); // interval, sensor type |
tnhnrl | 45:16b8162188ca | 72 | return depthLoop; |
tnhnrl | 45:16b8162188ca | 73 | } |
tnhnrl | 45:16b8162188ca | 74 | |
tnhnrl | 45:16b8162188ca | 75 | OuterLoop & pitchLoop() { |
tnhnrl | 45:16b8162188ca | 76 | static OuterLoop pitchLoop(0.1, 1); // interval, sensor type |
tnhnrl | 45:16b8162188ca | 77 | return pitchLoop; |
tnhnrl | 45:16b8162188ca | 78 | } |
tnhnrl | 45:16b8162188ca | 79 | |
tnhnrl | 54:d4990fb68404 | 80 | OuterLoop & headingLoop() { |
tnhnrl | 54:d4990fb68404 | 81 | static OuterLoop headingLoop(0.1, 2); // interval, sensor type |
tnhnrl | 54:d4990fb68404 | 82 | return headingLoop; |
tnhnrl | 45:16b8162188ca | 83 | } |
tnhnrl | 45:16b8162188ca | 84 | |
tnhnrl | 45:16b8162188ca | 85 | StateMachine & stateMachine() { |
tnhnrl | 45:16b8162188ca | 86 | static StateMachine stateMachine; |
tnhnrl | 45:16b8162188ca | 87 | return stateMachine; |
tnhnrl | 45:16b8162188ca | 88 | } |
tnhnrl | 45:16b8162188ca | 89 | |
tnhnrl | 45:16b8162188ca | 90 | ConfigFileIO & configFileIO() { |
tnhnrl | 45:16b8162188ca | 91 | static ConfigFileIO configFileIO; |
tnhnrl | 45:16b8162188ca | 92 | return configFileIO; |
tnhnrl | 45:16b8162188ca | 93 | } |
tnhnrl | 45:16b8162188ca | 94 | |
tnhnrl | 45:16b8162188ca | 95 | SequenceController & sequenceController() { |
tnhnrl | 45:16b8162188ca | 96 | static SequenceController sequenceController; |
tnhnrl | 45:16b8162188ca | 97 | return sequenceController; |
tnhnrl | 45:16b8162188ca | 98 | } |
tnhnrl | 45:16b8162188ca | 99 | |
tnhnrl | 73:f6f378311c8d | 100 | Sensors & sensors() { |
tnhnrl | 73:f6f378311c8d | 101 | static Sensors sensors; |
tnhnrl | 73:f6f378311c8d | 102 | return sensors; |
tnhnrl | 73:f6f378311c8d | 103 | } |
tnhnrl | 73:f6f378311c8d | 104 | |
tnhnrl | 45:16b8162188ca | 105 | MbedLogger & mbedLogger() { |
tnhnrl | 45:16b8162188ca | 106 | static MbedLogger mbedLogger("/local/"); //local file system |
tnhnrl | 45:16b8162188ca | 107 | return mbedLogger; |
tnhnrl | 45:16b8162188ca | 108 | } |
tnhnrl | 45:16b8162188ca | 109 | |
tnhnrl | 45:16b8162188ca | 110 | MbedLogger & sdLogger() { |
tnhnrl | 45:16b8162188ca | 111 | static MbedLogger sdLogger("/sd/"); |
tnhnrl | 45:16b8162188ca | 112 | return sdLogger; |
tnhnrl | 45:16b8162188ca | 113 | } |
tnhnrl | 45:16b8162188ca | 114 | |
tnhnrl | 45:16b8162188ca | 115 | DigitalOut & led1() { |
tnhnrl | 45:16b8162188ca | 116 | static DigitalOut led1(LED1); |
tnhnrl | 45:16b8162188ca | 117 | return led1; |
tnhnrl | 45:16b8162188ca | 118 | } |
tnhnrl | 45:16b8162188ca | 119 | |
tnhnrl | 45:16b8162188ca | 120 | DigitalOut & led2() { |
tnhnrl | 45:16b8162188ca | 121 | static DigitalOut led2(LED2); |
tnhnrl | 45:16b8162188ca | 122 | return led2; |
tnhnrl | 45:16b8162188ca | 123 | } |
tnhnrl | 45:16b8162188ca | 124 | |
tnhnrl | 45:16b8162188ca | 125 | DigitalOut & led3() { |
tnhnrl | 45:16b8162188ca | 126 | static DigitalOut led3(LED3); |
tnhnrl | 45:16b8162188ca | 127 | return led3; |
tnhnrl | 45:16b8162188ca | 128 | } |
tnhnrl | 45:16b8162188ca | 129 | |
tnhnrl | 45:16b8162188ca | 130 | DigitalOut & led4() { |
tnhnrl | 45:16b8162188ca | 131 | static DigitalOut led4(LED4); |
tnhnrl | 45:16b8162188ca | 132 | return led4; |
tnhnrl | 73:f6f378311c8d | 133 | } |
tnhnrl | 73:f6f378311c8d | 134 | |
tnhnrl | 73:f6f378311c8d | 135 | Gui & gui() { |
tnhnrl | 73:f6f378311c8d | 136 | static Gui pythonGUI; |
tnhnrl | 73:f6f378311c8d | 137 | return pythonGUI; |
tnhnrl | 45:16b8162188ca | 138 | } |