Index: firmware/App/Controllers/Fans.c =================================================================== diff -u -r22f1a58ac8e419353ec004b04e7c765c1d59df2b -r922516483829939a2a387d4a2fddeccdb4c454d4 --- firmware/App/Controllers/Fans.c (.../Fans.c) (revision 22f1a58ac8e419353ec004b04e7c765c1d59df2b) +++ firmware/App/Controllers/Fans.c (.../Fans.c) (revision 922516483829939a2a387d4a2fddeccdb4c454d4) @@ -51,7 +51,8 @@ /// Fans status struct typedef struct { - F32 targetDutyCycle; ///< Fan's target duty cycle that was fed to the fans. + F32 dutyCycle; ///< Fans duty cycle that was fed to the fans. + F32 targetRPM; ///< Fans target RPM. OVERRIDE_F32_T rpm[ NUM_OF_FANS_NAMES ]; ///< Fan's current tachometers reading in RPM. } FAN_STATUS_T; @@ -89,7 +90,7 @@ * @details Inputs: none * @details Outputs: fansExecState, fansStatus, fansControlCounter, * fansPublishCounter, fansMonitorCounter, isPOSTComplete, hasAlarmBeenRaised, - * rpmAlarmStartTimer + * rpmAlarmStartTimer, fansStatus * @return none *************************************************************************/ void initFans( void ) @@ -108,6 +109,8 @@ // Initialize the fans for ( fan = FAN_INLET_1; fan < NUM_OF_FANS_NAMES; fan++ ) { + fansStatus.dutyCycle = 0.0; + fansStatus.targetRPM = 0.0; fansStatus.rpm[ fan ].data = 0.0; fansStatus.rpm[ fan ].ovData = 0.0; fansStatus.rpm[ fan ].ovInitData = 0.0; @@ -265,37 +268,40 @@ // If the fans calculated duty cycle is greater than the previous calculated duty cycle, we are ramping up // otherwise, we are ramping down - if ( dutyCycle >= fansStatus.targetDutyCycle ) + if ( dutyCycle >= fansStatus.dutyCycle ) { // If the delta duty cycle from the previous duty cycle is greater than the max allowed ramp up duty cycle, // otherwise, only add the delta duty cycle - if ( ( dutyCycle - fansStatus.targetDutyCycle ) >= FANS_MAX_ALLOWED_RAMP_UP_DELTA_DUTY_CYCLE ) + if ( ( dutyCycle - fansStatus.dutyCycle ) >= FANS_MAX_ALLOWED_RAMP_UP_DELTA_DUTY_CYCLE ) { - fansStatus.targetDutyCycle += FANS_MAX_ALLOWED_RAMP_UP_DELTA_DUTY_CYCLE; + fansStatus.dutyCycle += FANS_MAX_ALLOWED_RAMP_UP_DELTA_DUTY_CYCLE; } else { - fansStatus.targetDutyCycle = dutyCycle; + fansStatus.dutyCycle = dutyCycle; } } else { // If the delta duty cycle from the previous duty cycle is greater than the max allowed ramp down duty cycle, // otherwise, only add the delta duty cycle - if ( ( fansStatus.targetDutyCycle - dutyCycle ) >= FANS_MAX_ALLOWED_RAMP_DOWN_DELTA_DUTY_CYCLE ) + if ( ( fansStatus.dutyCycle - dutyCycle ) >= FANS_MAX_ALLOWED_RAMP_DOWN_DELTA_DUTY_CYCLE ) { // If we are ramping down, set the target duty cycle to max allowed ramp down duty cycle - fansStatus.targetDutyCycle -= FANS_MAX_ALLOWED_RAMP_DOWN_DELTA_DUTY_CYCLE; + fansStatus.dutyCycle -= FANS_MAX_ALLOWED_RAMP_DOWN_DELTA_DUTY_CYCLE; } else { - fansStatus.targetDutyCycle = dutyCycle; + fansStatus.dutyCycle = dutyCycle; } } + // Calculate the target RPM for the the duty cycle + fansStatus.targetRPM = fansStatus.dutyCycle * FANS_MAX_ALLOWED_RPM; + // Set the PWM to inlet and outlet fans - setInletFansDutyCycle( fansStatus.targetDutyCycle ); - setOutletFansDutyCycle( fansStatus.targetDutyCycle ); + setInletFansDutyCycle( fansStatus.dutyCycle ); + setOutletFansDutyCycle( fansStatus.dutyCycle ); // Reset the counter fansControlCounter = 0; @@ -362,7 +368,7 @@ temperature = getTemperatureValue( TEMPSENSORS_LOAD_CELL_A2_B2 ); maxTemperature = ( temperature > maxTemperature ? temperature : maxTemperature ); - temperature = getTemperatureValue( TEMPSENSORS_INTERNAL_THDO_RTD ); + temperature = getTemperatureValue( TEMPSENSORS_INTERNAL_TRO_RTD ); maxTemperature = ( temperature > maxTemperature ? temperature : maxTemperature ); temperature = getTemperatureValue( TEMPSENSORS_INTERNAL_TDI_RTD ); @@ -410,8 +416,8 @@ /*********************************************************************//** * @brief * The monitorFans function monitors the fans for RPM. - * @details Inputs: fansMonitorCounter, fansStatus - * @details Outputs: fansMonitorCounter + * @details Inputs: fansMonitorCounter, rpmAlarmStartTimer, hasAlarmBeenRaised + * @details Outputs: fansMonitorCounter, rpmAlarmStartTimer, hasAlarmBeenRaised * @return none *************************************************************************/ static void monitorFans( void ) @@ -428,7 +434,7 @@ // The RPM is expected to be 5500 @ 100% duty cycle // The nominal RPM = duty cycle * 5500 / 1.0 // The RPM tolerance is -25% to +50% of the nominal RPM - F32 fansNominalRPM = fansStatus.targetDutyCycle * FANS_MAX_ALLOWED_RPM; + F32 fansNominalRPM = fansStatus.dutyCycle * FANS_MAX_ALLOWED_RPM; F32 fansMinAllowedRPM = fansNominalRPM - ( fansNominalRPM * FANS_MIN_RPM_OUT_OF_RANGE_TOL ); F32 fansMaxAllowedRPM = fansNominalRPM + ( fansNominalRPM * FANS_MAX_RPM_OUT_OF_RANGE_TOL ); @@ -440,12 +446,15 @@ // If the RPM out of range alarm has been raised, do not raise it again, until its alarm silence time has been elapsed hasAlarmBeenRaised = ( TRUE == isAlarmActive( ALARM_ID_DG_FAN_RPM_OUT_OF_RANGE ) ? TRUE : FALSE ); + // If the alarm has been raised and the alarm start timer is 0, start the timer if ( ( TRUE == hasAlarmBeenRaised ) && ( 0 == rpmAlarmStartTimer ) ) { rpmAlarmStartTimer = getMSTimerCount(); } } } + // If the alarm has been raised the silence the alarm time has elapsed, get ready to raise the alarm in case the RPM was out of range + // Once the alarm is raised, it is not raised again for 24 hours else if ( ( TRUE == hasAlarmBeenRaised ) && ( TRUE == didTimeout( rpmAlarmStartTimer, SECONDS_IN_A_DAY ) ) ) { hasAlarmBeenRaised = FALSE; @@ -489,13 +498,14 @@ { FANS_DATA_T fansData; - fansData.fansTargetDutyCycle = fansStatus.targetDutyCycle * FRACTION_TO_PERCENT_FACTOR; - fansData.fanInlet1RPM = getMeasuredFanRPM( FAN_INLET_1 ); - fansData.fanInlet2RPM = getMeasuredFanRPM( FAN_INLET_2 ); - fansData.fanInlet3RPM = getMeasuredFanRPM( FAN_INLET_3 ); - fansData.fanOutlet1RPM = getMeasuredFanRPM( FAN_OUTLET_1 ); - fansData.fanOutlet2RPM = getMeasuredFanRPM( FAN_OUTLET_2 ); - fansData.fanOutlet3RPM = getMeasuredFanRPM( FAN_OUTLET_3 ); + fansData.dutyCycle = fansStatus.dutyCycle * FRACTION_TO_PERCENT_FACTOR; + fansData.targetFansRPM = fansStatus.targetRPM; + fansData.fanInlet1RPM = getMeasuredFanRPM( FAN_INLET_1 ); + fansData.fanInlet2RPM = getMeasuredFanRPM( FAN_INLET_2 ); + fansData.fanInlet3RPM = getMeasuredFanRPM( FAN_INLET_3 ); + fansData.fanOutlet1RPM = getMeasuredFanRPM( FAN_OUTLET_1 ); + fansData.fanOutlet2RPM = getMeasuredFanRPM( FAN_OUTLET_2 ); + fansData.fanOutlet3RPM = getMeasuredFanRPM( FAN_OUTLET_3 ); broadcastFansData( &fansData ); Index: firmware/App/Controllers/Fans.h =================================================================== diff -u -r22f1a58ac8e419353ec004b04e7c765c1d59df2b -r922516483829939a2a387d4a2fddeccdb4c454d4 --- firmware/App/Controllers/Fans.h (.../Fans.h) (revision 22f1a58ac8e419353ec004b04e7c765c1d59df2b) +++ firmware/App/Controllers/Fans.h (.../Fans.h) (revision 922516483829939a2a387d4a2fddeccdb4c454d4) @@ -27,7 +27,8 @@ /// Fans data publish typedef struct { - F32 fansTargetDutyCycle; ///< Fans target duty cycle + F32 dutyCycle; ///< Fans duty cycle + F32 targetFansRPM; ///< Fans target RPM F32 fanInlet1RPM; ///< Fan inlet 1 RPM F32 fanInlet2RPM; ///< Fan inlet 2 RPM F32 fanInlet3RPM; ///< Fan inlet 3 RPM Index: firmware/App/Controllers/LoadCell.c =================================================================== diff -u -r22f1a58ac8e419353ec004b04e7c765c1d59df2b -r922516483829939a2a387d4a2fddeccdb4c454d4 --- firmware/App/Controllers/LoadCell.c (.../LoadCell.c) (revision 22f1a58ac8e419353ec004b04e7c765c1d59df2b) +++ firmware/App/Controllers/LoadCell.c (.../LoadCell.c) (revision 922516483829939a2a387d4a2fddeccdb4c454d4) @@ -34,54 +34,58 @@ // TODO check the maximum weight on the load cells in tare. There was 1500 grams limit // but it has been removed. Check the load cells data sheet. -#define LOAD_CELL_REPORT_PERIOD (100 / TASK_PRIORITY_INTERVAL) ///< Broadcast load cell values message every 100 ms. +#define LOAD_CELL_REPORT_PERIOD (100 / TASK_PRIORITY_INTERVAL) ///< Broadcast load cell values message every 100 ms. /// Conversion factor from ADC counts to grams. -static const F32 ADC2GRAM = (0.0894 * 1.1338); -#define LOAD_CELL_FILTER_ALPHA 0.05 ///< Alpha factor for the alpha filter used on load cell readings. +static const F32 ADC2GRAM = (0.0894 * 1.1338); +#define LOAD_CELL_FILTER_ALPHA 0.05 ///< Alpha factor for the alpha filter used on load cell readings. -#define SIZE_OF_SMALL_LOAD_CELL_AVG 100 ///< Small load cell moving average has 100 raw samples @ 10ms intervals (1-second). -#define SIZE_OF_LARGE_LOAD_CELL_AVG 40 ///< Large load cell moving average has 40 samples from small filter @ 100ms intervals (4-second). +#define SIZE_OF_SMALL_LOAD_CELL_AVG 100 ///< Small load cell moving average has 100 raw samples @ 10ms intervals (1-second). +#define SIZE_OF_LARGE_LOAD_CELL_AVG 40 ///< Large load cell moving average has 40 samples from small filter @ 100ms intervals (4-second). -#define LOAD_CELL_ADC_ERROR_PERSISTENCE 500 ///< Alarm persistence period (in ms) for load cell ADC errors. -#define LOAD_CELL_MIN_ALLOWED_WEIGHT_GRAMS 1600 ///< Load cell minimum allowed weight in grams. -#define LOAD_CELL_MAX_ALLOWED_WEIGHT_GRAMS 4500 ///< Load cell maximum allowed weight in grams. -#define MAX_ALLOWED_EXTRA_WEIGHT_BEFORE_TARE_GRAMS 300 ///< Max allowed extra weight before tare in grams. -#define LOAD_CELL_WEIGHT_OUT_RANGE_PERSISTENT_PERIOD_MS (5 * MS_PER_SECOND) ///< Load cell weight out of range persistent period in milliseconds. +#define LOAD_CELL_ADC_ERROR_PERSISTENCE 500 ///< Alarm persistence period (in ms) for load cell ADC errors. +#define LOAD_CELL_MIN_ALLOWED_WEIGHT_GRAMS 0.0 ///< Load cell minimum allowed weight in grams. +#define LOAD_CELL_MAX_ALLOWED_WEIGHT_GRAMS 4500.0 ///< Load cell maximum allowed weight in grams. +#define LOAD_CELL_MIN_ALLOWED_WEIGHT_BEFORE_TARE_GRAMS 1600.0 ///< Load cell minimum allowed weight before tare in grams. +#define MAX_ALLOWED_EXTRA_WEIGHT_BEFORE_TARE_GRAMS 300.0 ///< Max allowed extra weight before tare in grams. +#define LOAD_CELL_WEIGHT_OUT_RANGE_PERSISTENT_PERIOD_MS (5 * MS_PER_SECOND) ///< Load cell weight out of range persistent period in milliseconds. +#define LOAD_CELL_PRIMARY_BACKUP_MAX_ALLOWED_DRIFT_GRAMS 60.0 ///< Load cell primary and backup maximum allowed weight drift in grams. +#define LOAD_CELL_PRIMARY_BACKUP_MAX_DRIFT_PERSISTENT_PERIOD_MS (5 * MS_PER_SECOND) ///< Load cell primary and backup maximum allowed weight drift persistent period in milliseconds. /// Load cell data structure. typedef struct { - U32 rawReading; ///< Latest raw load cell reading - OVERRIDE_F32_T weight; ///< Latest load cell weight - F32 autoCalOffset; ///< Load cell auto-calibration offset - F32 loadCellVelocity_g_min; ///< Velocity (in g/min) of load cell. + U32 rawReading; ///< Latest raw load cell reading + OVERRIDE_F32_T weight; ///< Latest load cell weight + F32 autoCalOffset; ///< Load cell auto-calibration offset + F32 loadCellVelocity_g_min; ///< Velocity (in g/min) of load cell. - F32 smallFilterReadings[ SIZE_OF_SMALL_LOAD_CELL_AVG ]; ///< Load cell samples for small load cell moving average. - F64 smallFilterTotal; ///< Small filter rolling total - used to calc small load cell moving average. - F32 smallFilteredWeight; ///< Load cell small filtered (100 100Hz raw sample) weight. + F32 smallFilterReadings[ SIZE_OF_SMALL_LOAD_CELL_AVG ]; ///< Load cell samples for small load cell moving average. + F64 smallFilterTotal; ///< Small filter rolling total - used to calc small load cell moving average. + F32 smallFilteredWeight; ///< Load cell small filtered (100 100Hz raw sample) weight. - F32 largeFilterReadings[ SIZE_OF_LARGE_LOAD_CELL_AVG ]; ///< Load cell samples for large load cell moving average. - F64 largeFilterTotal; ///< Large filter rolling total - used to calc small load cell moving average. - F32 largeFilteredWeight; ///< Load cell large filtered (40 10Hz filtered sample) weight. + F32 largeFilterReadings[ SIZE_OF_LARGE_LOAD_CELL_AVG ]; ///< Load cell samples for large load cell moving average. + F64 largeFilterTotal; ///< Large filter rolling total - used to calc small load cell moving average. + F32 largeFilteredWeight; ///< Load cell large filtered (40 10Hz filtered sample) weight. } LOADCELL_T; // ********** private data ********** static OVERRIDE_U32_T loadCellDataPublishInterval = { LOAD_CELL_REPORT_PERIOD, - LOAD_CELL_REPORT_PERIOD, 0, 0 }; ///< Broadcast load cell data publish interval. -static LOADCELL_T loadcells[ NUM_OF_LOAD_CELLS ]; ///< Load cell data structures. -static U32 loadCellFilterTimerCount = 0; ///< Load cell filtering timer count. -static U32 loadCellDataPublicationTimerCounter = 0; ///< Load cell data publication timer counter to CAN bus. + LOAD_CELL_REPORT_PERIOD, 0, 0 }; ///< Broadcast load cell data publish interval. +static LOADCELL_T loadcells[ NUM_OF_LOAD_CELLS ]; ///< Load cell data structures. +static U32 loadCellFilterTimerCount = 0; ///< Load cell filtering timer count. +static U32 loadCellDataPublicationTimerCounter = 0; ///< Load cell data publication timer counter to CAN bus. -static U32 smallReadingsIdx; ///< Index for next sample in load cell small rolling average sample array. -static U32 largeReadingsIdx; ///< Index for next sample in load cell large rolling average sample array. -static DG_LOAD_CELLS_CAL_RECORD_T loadCellsCalRecord; ///< Load cells calibration record. +static U32 smallReadingsIdx; ///< Index for next sample in load cell small rolling average sample array. +static U32 largeReadingsIdx; ///< Index for next sample in load cell large rolling average sample array. +static DG_LOAD_CELLS_CAL_RECORD_T loadCellsCalRecord; ///< Load cells calibration record. // ********** private function prototypes ********** static U32 getLoadCellDataPublishInterval( void ); static BOOL processCalibrationData( void ); -static void monitorLoadCellsWeightOutOfRange( void ); +static void monitorLoadCellsWeightOutOfRange( LOAD_CELL_ID_T loadCell ); +static void monitorLoadCellsPrimaryBackupDriftOutOfRange( void ); /*********************************************************************//** * @brief @@ -92,7 +96,6 @@ *************************************************************************/ void initLoadCell( void ) { - U32 cell; U32 i; U32 j; @@ -134,6 +137,9 @@ initPersistentAlarm( ALARM_ID_DG_LOAD_CELL_WEIGHT_OUT_OF_RANGE, LOAD_CELL_WEIGHT_OUT_RANGE_PERSISTENT_PERIOD_MS, LOAD_CELL_WEIGHT_OUT_RANGE_PERSISTENT_PERIOD_MS ); + + initPersistentAlarm( ALARM_ID_DG_LOAD_CELL_PRIMARY_BACKUP_DRIFT_OUT_OF_RANGE, LOAD_CELL_PRIMARY_BACKUP_MAX_DRIFT_PERSISTENT_PERIOD_MS, + LOAD_CELL_PRIMARY_BACKUP_MAX_DRIFT_PERSISTENT_PERIOD_MS ); } /*********************************************************************//** @@ -186,8 +192,6 @@ { loadcells[ ii ].weight.data = (F32)loadcells[ ii ].rawReading * ADC2GRAM; - loadcells[ ii ].weight.data = loadcells[ ii ].weight.data - loadcells[ ii ].autoCalOffset; - loadcells[ ii ].loadCellVelocity_g_min = ( getLoadCellWeight( (LOAD_CELL_ID_T)ii ) - loadcells[ ii ].smallFilterReadings[ smallReadingsIdx ] ) * (F32)SEC_PER_MIN; @@ -205,6 +209,12 @@ pow(loadCell, 2) * loadCellsCalRecord.loadCells[ (CAL_DATA_DG_LOAD_CELLS_T)ii ].secondOrderCoeff + loadCell * loadCellsCalRecord.loadCells[ (CAL_DATA_DG_LOAD_CELLS_T)ii ].gain + loadCellsCalRecord.loadCells[ (CAL_DATA_DG_LOAD_CELLS_T)ii ].offset; + + // Monitor the load cells weight + monitorLoadCellsWeightOutOfRange( (LOAD_CELL_ID_T)ii ); + + // Apply the tare offset. NOTE: tare must be applied after checking the weight out of range. + loadcells[ ii ].weight.data = loadcells[ ii ].weight.data - loadcells[ ii ].autoCalOffset; } smallReadingsIdx = INC_WRAP( smallReadingsIdx, 0, SIZE_OF_SMALL_LOAD_CELL_AVG - 1 ); @@ -241,8 +251,8 @@ loadCellDataPublicationTimerCounter = 0; } - // Monitor the weight of the load cells - monitorLoadCellsWeightOutOfRange(); + // Monitor the load cells drift + monitorLoadCellsPrimaryBackupDriftOutOfRange(); } /*********************************************************************//** @@ -291,7 +301,7 @@ { // For the first tare, the weight of the reservoir should be considered // The current weight of the load cell should not be greater than the weight of the reservoir + the extra weight - F32 deltaWeight = fabs( weight - LOAD_CELL_MIN_ALLOWED_WEIGHT_GRAMS ); + F32 deltaWeight = fabs( weight - LOAD_CELL_MIN_ALLOWED_WEIGHT_BEFORE_TARE_GRAMS ); isWeightOutOfRange = ( deltaWeight > MAX_ALLOWED_EXTRA_WEIGHT_BEFORE_TARE_GRAMS ? TRUE : FALSE ); } else @@ -496,27 +506,52 @@ * @brief * The monitorLoadCellsWeightOutOfRange function monitors the weight of the * load cells and if they are not in range, it raises an alarm. - * @details Inputs: loadcells + * @details Inputs: none * @details Outputs: none + * @param loadCell which is the load cell ID that its range is checked * @return none *************************************************************************/ -static void monitorLoadCellsWeightOutOfRange( void ) +static void monitorLoadCellsWeightOutOfRange( LOAD_CELL_ID_T loadCell ) { - LOAD_CELL_ID_T loadCell; - BOOL isWeightOutOfRange; - F32 weight; + F32 weight = getLoadCellSmallFilteredWeight( loadCell ); + BOOL isWeightOutOfRange = ( weight < LOAD_CELL_MIN_ALLOWED_WEIGHT_GRAMS ) || ( weight > LOAD_CELL_MAX_ALLOWED_WEIGHT_GRAMS ); - for ( loadCell = LOAD_CELL_RESERVOIR_1_PRIMARY; loadCell < NUM_OF_LOAD_CELLS; loadCell++ ) - { - // The load cells must have been tared before checking for the weight range - if ( loadcells[ loadCell ].autoCalOffset != 0 ) - { - weight = getLoadCellSmallFilteredWeight( loadCell ); - isWeightOutOfRange = ( weight < LOAD_CELL_MIN_ALLOWED_WEIGHT_GRAMS ) || ( weight > LOAD_CELL_MAX_ALLOWED_WEIGHT_GRAMS ); + checkPersistentAlarm( ALARM_ID_DG_LOAD_CELL_WEIGHT_OUT_OF_RANGE, isWeightOutOfRange, weight, LOAD_CELL_MAX_ALLOWED_WEIGHT_GRAMS ); +} - checkPersistentAlarm( ALARM_ID_DG_LOAD_CELL_WEIGHT_OUT_OF_RANGE, isWeightOutOfRange, weight, LOAD_CELL_MAX_ALLOWED_WEIGHT_GRAMS ); - } +/*********************************************************************//** + * @brief + * The monitorLoadCellsPrimaryBackupDriftOutOfRange function monitors the + * load cells' primary and backup drift. + * @details Inputs: none + * @details Outputs: none + * @return none + *************************************************************************/ +static void monitorLoadCellsPrimaryBackupDriftOutOfRange( void ) +{ + F32 drift; + + F32 loadCellADrift = fabs( getLoadCellSmallFilteredWeight( LOAD_CELL_RESERVOIR_1_PRIMARY ) - + getLoadCellSmallFilteredWeight( LOAD_CELL_RESERVOIR_1_BACKUP ) ); + + F32 loadCellBDrift = fabs( getLoadCellSmallFilteredWeight( LOAD_CELL_RESERVOIR_2_PRIMARY ) - + getLoadCellSmallFilteredWeight( LOAD_CELL_RESERVOIR_2_BACKUP ) ); + + BOOL isDriftOutOfRange = ( loadCellADrift > LOAD_CELL_PRIMARY_BACKUP_MAX_ALLOWED_DRIFT_GRAMS ) || + ( loadCellBDrift > LOAD_CELL_PRIMARY_BACKUP_MAX_ALLOWED_DRIFT_GRAMS ); + + if ( TRUE == isDriftOutOfRange ) + { + drift = ( loadCellADrift > LOAD_CELL_PRIMARY_BACKUP_MAX_ALLOWED_DRIFT_GRAMS ? loadCellADrift : loadCellBDrift ); } + else + { + // Pick the biggest drift in between the two load cells when none of the is above range + drift = ( loadCellADrift > loadCellBDrift ? loadCellADrift : loadCellBDrift ); + } + + checkPersistentAlarm( ALARM_ID_DG_LOAD_CELL_PRIMARY_BACKUP_DRIFT_OUT_OF_RANGE, isDriftOutOfRange, drift, + LOAD_CELL_PRIMARY_BACKUP_MAX_ALLOWED_DRIFT_GRAMS ); } Index: firmware/App/Controllers/Switches.c =================================================================== diff -u -rddb9707d9e6e46c4b384782aeec20d41f3822996 -r922516483829939a2a387d4a2fddeccdb4c454d4 --- firmware/App/Controllers/Switches.c (.../Switches.c) (revision ddb9707d9e6e46c4b384782aeec20d41f3822996) +++ firmware/App/Controllers/Switches.c (.../Switches.c) (revision 922516483829939a2a387d4a2fddeccdb4c454d4) @@ -233,7 +233,7 @@ * @details Outputs: switchesDataPublishInterval * @return TRUE if override successful, FALSE if not *************************************************************************/ -BOOL testResetSwitchesDataPublishIntervalOverrid( void ) +BOOL testResetSwitchesDataPublishIntervalOverride( void ) { BOOL result = FALSE; Index: firmware/App/Controllers/Switches.h =================================================================== diff -u -rb7c30522ec6cde3ca515f36a053a1fff4e14159c -r922516483829939a2a387d4a2fddeccdb4c454d4 --- firmware/App/Controllers/Switches.h (.../Switches.h) (revision b7c30522ec6cde3ca515f36a053a1fff4e14159c) +++ firmware/App/Controllers/Switches.h (.../Switches.h) (revision 922516483829939a2a387d4a2fddeccdb4c454d4) @@ -42,7 +42,7 @@ OPN_CLS_STATE_T getSwitchStatus( SWITCH_T switchId ); BOOL testSetSwitchesDataPublishIntervalOverride( U32 value ); -BOOL testResetSwitchesDataPublishIntervalOverrid( void ); +BOOL testResetSwitchesDataPublishIntervalOverride( void ); BOOL testSetSwitchesStatusOverride( U32 switchId, U32 status ); BOOL testResetSwitchesStatusOverride( U32 switchId ); Index: firmware/App/Controllers/TemperatureSensors.c =================================================================== diff -u -rddb9707d9e6e46c4b384782aeec20d41f3822996 -r922516483829939a2a387d4a2fddeccdb4c454d4 --- firmware/App/Controllers/TemperatureSensors.c (.../TemperatureSensors.c) (revision ddb9707d9e6e46c4b384782aeec20d41f3822996) +++ firmware/App/Controllers/TemperatureSensors.c (.../TemperatureSensors.c) (revision 922516483829939a2a387d4a2fddeccdb4c454d4) @@ -251,8 +251,8 @@ tempSensors[ TEMPSENSORS_LOAD_CELL_A2_B2 ].conversionCoeff = conversionCoeff; tempSensors[ TEMPSENSORS_LOAD_CELL_A2_B2 ].maxAllowedTemperature = NON_FLUID_PATH_TEMP_SENSORS_MAX_ALLOWED_DEGREE_C; - tempSensors[ TEMPSENSORS_INTERNAL_THDO_RTD ].conversionCoeff = conversionCoeff; - tempSensors[ TEMPSENSORS_INTERNAL_THDO_RTD ].maxAllowedTemperature = NON_FLUID_PATH_TEMP_SENSORS_MAX_ALLOWED_DEGREE_C; + tempSensors[ TEMPSENSORS_INTERNAL_TRO_RTD ].conversionCoeff = conversionCoeff; + tempSensors[ TEMPSENSORS_INTERNAL_TRO_RTD ].maxAllowedTemperature = NON_FLUID_PATH_TEMP_SENSORS_MAX_ALLOWED_DEGREE_C; tempSensors[ TEMPSENSORS_INTERNAL_TDI_RTD ].conversionCoeff = conversionCoeff; tempSensors[ TEMPSENSORS_INTERNAL_TDI_RTD ].maxAllowedTemperature = NON_FLUID_PATH_TEMP_SENSORS_MAX_ALLOWED_DEGREE_C; @@ -539,7 +539,7 @@ case TEMPSENSORS_INLET_PRIMARY_HEATER: // 295 case TEMPSENSORS_INTERNAL_COND_TEMP_SENSOR: // 299 case TEMPSENSORS_OUTLET_REDUNDANT: // 303 - case TEMPSENSORS_INTERNAL_THDO_RTD: // 307 + case TEMPSENSORS_INTERNAL_TRO_RTD: // 307 case TEMPSENSORS_INLET_DIALYSATE: // 311 case TEMPSENSORS_INTERNAL_TDI_RTD: // 315 { @@ -691,7 +691,7 @@ case TEMPSENSORS_LOAD_CELL_A1_B1: case TEMPSENSORS_LOAD_CELL_A2_B2: - case TEMPSENSORS_INTERNAL_THDO_RTD: + case TEMPSENSORS_INTERNAL_TRO_RTD: case TEMPSENSORS_INTERNAL_TDI_RTD: case TEMPSENSORS_INTERNAL_COND_TEMP_SENSOR: // Temperature(C) = ((ADC - 0x800000)/13584) - 272.5 @@ -807,7 +807,7 @@ processTempSnsrsADCRead( TEMPSENSORS_FPGA_BOARD_SENSOR, getFPGABoardTemp(), 0, ++simulatedCounter ); processTempSnsrsADCRead( TEMPSENSORS_LOAD_CELL_A1_B1, getFPGALoadCellsA1B1Temp(), getFPGAADC1ErrorCount(), getFPGAADC1ReadCount() ); processTempSnsrsADCRead( TEMPSENSORS_LOAD_CELL_A2_B2, getFPGALoadCellsA2B2Temp(), getFPGAADC2ErrorCount(), getFPGAADC2ReadCount() ); - processTempSnsrsADCRead( TEMPSENSORS_INTERNAL_THDO_RTD, getFPGATRoInternalTemp(), getFPGATRoErrorCount(), getFPGATRoReadCount() ); + processTempSnsrsADCRead( TEMPSENSORS_INTERNAL_TRO_RTD, getFPGATRoInternalTemp(), getFPGATRoErrorCount(), getFPGATRoReadCount() ); processTempSnsrsADCRead( TEMPSENSORS_INTERNAL_TDI_RTD, getFPGATDiInternalTemp(), getFPGATDiErrorCount(), getFPGATDiReadCount() ); processTempSnsrsADCRead( TEMPSENSORS_INTERNAL_COND_TEMP_SENSOR, getFPGACondSnsrInternalTemp(), getFPGARTDErrorCount(), getFPGARTDReadCount() ); @@ -874,7 +874,7 @@ data.fpgaBoard = getTemperatureValue( TEMPSENSORS_FPGA_BOARD_SENSOR ); data.loadCellA1B1 = getTemperatureValue( TEMPSENSORS_LOAD_CELL_A1_B1 ); data.loadCellA2B2 = getTemperatureValue( TEMPSENSORS_LOAD_CELL_A2_B2 ); - data.internalTHDORTD = getTemperatureValue( TEMPSENSORS_INTERNAL_THDO_RTD ); + data.internalTHDORTD = getTemperatureValue( TEMPSENSORS_INTERNAL_TRO_RTD ); data.internalTDIRTD = getTemperatureValue( TEMPSENSORS_INTERNAL_TDI_RTD ); data.internalCondSnsrTemp = getTemperatureValue( TEMPSENSORS_INTERNAL_COND_TEMP_SENSOR ); data.primaryThermoCoupleRaw = getFPGAPrimaryHeaterTemp(); Index: firmware/App/Controllers/TemperatureSensors.h =================================================================== diff -u -r3d131237935eb36e56e0d057a713430e31dc6405 -r922516483829939a2a387d4a2fddeccdb4c454d4 --- firmware/App/Controllers/TemperatureSensors.h (.../TemperatureSensors.h) (revision 3d131237935eb36e56e0d057a713430e31dc6405) +++ firmware/App/Controllers/TemperatureSensors.h (.../TemperatureSensors.h) (revision 922516483829939a2a387d4a2fddeccdb4c454d4) @@ -50,7 +50,7 @@ TEMPSENSORS_FPGA_BOARD_SENSOR, ///< FPGA board temperature sensor TEMPSENSORS_LOAD_CELL_A1_B1, ///< Load cell A1/B1 temperature sensor TEMPSENSORS_LOAD_CELL_A2_B2, ///< Load cell A2/B2 temperature sensor - TEMPSENSORS_INTERNAL_THDO_RTD, ///< THDo RTD internal temperature sensor + TEMPSENSORS_INTERNAL_TRO_RTD, ///< TRo RTD internal temperature sensor TEMPSENSORS_INTERNAL_TDI_RTD, ///< TDi RTD internal temperature sensor TEMPSENSORS_INTERNAL_COND_TEMP_SENSOR, ///< Conductivity sensor temperature sensor NUM_OF_TEMPERATURE_SENSORS ///< Number of temperature sensors Index: firmware/App/Modes/ModeHeatDisinfect.c =================================================================== diff -u -r67021fbc633259e8e1bce76749dbef7d0cb51998 -r922516483829939a2a387d4a2fddeccdb4c454d4 --- firmware/App/Modes/ModeHeatDisinfect.c (.../ModeHeatDisinfect.c) (revision 67021fbc633259e8e1bce76749dbef7d0cb51998) +++ firmware/App/Modes/ModeHeatDisinfect.c (.../ModeHeatDisinfect.c) (revision 922516483829939a2a387d4a2fddeccdb4c454d4) @@ -1081,7 +1081,7 @@ // Get the current volumes of R1 & R2. These values will be used to make sure the reservoirs' // volume does not change more than a certain amount during the actual heat disinfect cycle - R1HeatDisinfectVol = getLoadCellLargeFilteredWeight( LOAD_CELL_RESERVOIR_1_PRIMARY ); + R1HeatDisinfectVol = getLoadCellLargeFilteredWeight( LOAD_CELL_RESERVOIR_1_PRIMARY ); // TODO remove R2HeatDisinfectVol = getLoadCellLargeFilteredWeight( LOAD_CELL_RESERVOIR_2_PRIMARY ); stateTimer = getMSTimerCount(); Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r22f1a58ac8e419353ec004b04e7c765c1d59df2b -r922516483829939a2a387d4a2fddeccdb4c454d4 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 22f1a58ac8e419353ec004b04e7c765c1d59df2b) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 922516483829939a2a387d4a2fddeccdb4c454d4) @@ -2406,7 +2406,7 @@ } else { - result = testResetSwitchesDataPublishIntervalOverrid(); + result = testResetSwitchesDataPublishIntervalOverride(); } }