update with altimeter, swimfile.txt endleg.txt, etc see changes_13sep.txt also reset_PI()
Dependencies: mbed MODSERIAL FATFileSystem
Sensors/Sensors.cpp@99:9d0849f5fcd7, 2019-06-28 (annotated)
- Committer:
- CodyMarquardt
- Date:
- Fri Jun 28 13:59:11 2019 +0000
- Revision:
- 99:9d0849f5fcd7
- Parent:
- 74:d281aaef9766
Program has bugs. Committing in order to access in MBED studio to debug
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tnhnrl | 73:f6f378311c8d | 1 | #include "Sensors.hpp" |
tnhnrl | 73:f6f378311c8d | 2 | #include "StaticDefs.hpp" |
tnhnrl | 73:f6f378311c8d | 3 | |
tnhnrl | 73:f6f378311c8d | 4 | Sensors::Sensors() { |
tnhnrl | 73:f6f378311c8d | 5 | _reference_voltage = 5.0; //check this against actual v_ref |
tnhnrl | 73:f6f378311c8d | 6 | } |
tnhnrl | 73:f6f378311c8d | 7 | |
tnhnrl | 73:f6f378311c8d | 8 | // extrapolated from graph if V_s = 5.0 |
tnhnrl | 73:f6f378311c8d | 9 | // https://www.nxp.com/docs/en/data-sheet/MPXA6115A.pdf |
tnhnrl | 73:f6f378311c8d | 10 | float Sensors::getInternalPressurePSI() { |
tnhnrl | 73:f6f378311c8d | 11 | return ( ( 22.029 * ( _reference_voltage * adc().readCh5() / 4095.0 ) + 10.884 ) * 0.145038 ); // Press_Xducer (on-board) |
tnhnrl | 73:f6f378311c8d | 12 | } |
tnhnrl | 73:f6f378311c8d | 13 | |
tnhnrl | 73:f6f378311c8d | 14 | float Sensors::getVoltageInput() { |
tnhnrl | 73:f6f378311c8d | 15 | return ( adc().readCh6() / 4095.0 * _reference_voltage * 7.8 ); |
tnhnrl | 73:f6f378311c8d | 16 | } |
tnhnrl | 73:f6f378311c8d | 17 | |
tnhnrl | 73:f6f378311c8d | 18 | float Sensors::getCurrentInput() { |
tnhnrl | 73:f6f378311c8d | 19 | return ( adc().readCh7() / 4095.0 * _reference_voltage ); |
tnhnrl | 73:f6f378311c8d | 20 | } |
tnhnrl | 73:f6f378311c8d | 21 | |
CodyMarquardt | 99:9d0849f5fcd7 | 22 | |
tnhnrl | 73:f6f378311c8d | 23 | float Sensors::getAltimeterChannelReadings() { |
tnhnrl | 74:d281aaef9766 | 24 | return adc().readCh2(); //channel 2 (third channel) from the schematic |
CodyMarquardt | 99:9d0849f5fcd7 | 25 | } |
CodyMarquardt | 99:9d0849f5fcd7 | 26 | |
CodyMarquardt | 99:9d0849f5fcd7 | 27 | float Sensors::getAltimeterReading_m() { // edit by CAM |
CodyMarquardt | 99:9d0849f5fcd7 | 28 | return _altimeter_slope * adc().readCh2() + _altimeter_intercept; |
CodyMarquardt | 99:9d0849f5fcd7 | 29 | } |
CodyMarquardt | 99:9d0849f5fcd7 | 30 | |
CodyMarquardt | 99:9d0849f5fcd7 | 31 | void Sensors::setAltimeterSlope(float S){ |
CodyMarquardt | 99:9d0849f5fcd7 | 32 | _altimeter_slope = S; |
CodyMarquardt | 99:9d0849f5fcd7 | 33 | return; |
CodyMarquardt | 99:9d0849f5fcd7 | 34 | } |
CodyMarquardt | 99:9d0849f5fcd7 | 35 | |
CodyMarquardt | 99:9d0849f5fcd7 | 36 | void Sensors::setAltimeterIntercept(float I){ |
CodyMarquardt | 99:9d0849f5fcd7 | 37 | _altimeter_intercept = I; |
CodyMarquardt | 99:9d0849f5fcd7 | 38 | return; |
tnhnrl | 73:f6f378311c8d | 39 | } |