state-handler: remove stateSensors
This commit is contained in:
parent
940b978764
commit
a8bb6e44ff
@ -171,14 +171,6 @@ private:
|
||||
*/
|
||||
void stateAuto (const Event &event);
|
||||
|
||||
/** Sensors state
|
||||
*
|
||||
* - print current sensrs readings
|
||||
*
|
||||
* @param event
|
||||
*/
|
||||
void stateSensors (const Event &event);
|
||||
|
||||
/**
|
||||
* @brief Get pressure with the state
|
||||
*
|
||||
@ -206,6 +198,8 @@ private:
|
||||
void pid ();
|
||||
|
||||
int fan_speed_normalized ();
|
||||
|
||||
void updateSensorValues ();
|
||||
};
|
||||
|
||||
#endif /* STATE_HANDLER_H_ */
|
||||
|
||||
@ -6,7 +6,6 @@
|
||||
*/
|
||||
|
||||
#include "StateHandler/StateHandler.h"
|
||||
#define PID 1
|
||||
|
||||
StateHandler::StateHandler (LiquidCrystal *lcd, ModbusRegister *A01,
|
||||
PressureWrapper *pressure, Timer *global)
|
||||
@ -128,7 +127,7 @@ StateHandler::stateManual (const Event &event)
|
||||
case Event::eTick:
|
||||
if (event.value % 5000 == 0)
|
||||
{
|
||||
SetState (&StateHandler::stateSensors);
|
||||
updateSensorValues ();
|
||||
displaySet (SENSORS);
|
||||
}
|
||||
if (event.value % 500 == 0)
|
||||
@ -153,42 +152,21 @@ StateHandler::stateAuto (const Event &event)
|
||||
handleControlButtons (event.value);
|
||||
break;
|
||||
case Event::eTick:
|
||||
if (event.value % 2 == 0)
|
||||
if (event.value % 5000 == 0)
|
||||
{
|
||||
updateSensorValues ();
|
||||
displaySet (SENSORS);
|
||||
}
|
||||
if (event.value % 500 == 0)
|
||||
{
|
||||
SetState (&StateHandler::stateGetPressure);
|
||||
}
|
||||
if (event.value % 150 == 0)
|
||||
{
|
||||
SetState (&StateHandler::stateSensors);
|
||||
// displaySens ();
|
||||
}
|
||||
pid ();
|
||||
this->A01->write (fan_speed.getCurrent ());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
StateHandler::stateSensors (const Event &event)
|
||||
{
|
||||
switch (event.type)
|
||||
{
|
||||
case Event::eEnter:
|
||||
sensors_data[TEMPERATURE] = humidity.readT ();
|
||||
sensors_data[PRESSUREDAT] = pressure->getPressure ();
|
||||
sensors_data[CO2] = co2.read ();
|
||||
state_timer->tickCounter(5);
|
||||
sensors_data[HUMIDITY] = humidity.readRH ();
|
||||
break;
|
||||
case Event::eExit:
|
||||
break;
|
||||
case Event::eKey:
|
||||
break;
|
||||
case Event::eTick:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
StateHandler::stateGetPressure (const Event &event)
|
||||
{
|
||||
@ -257,6 +235,7 @@ StateHandler::fan_speed_normalized ()
|
||||
return speed * 10;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
StateHandler::pid ()
|
||||
{
|
||||
@ -268,3 +247,15 @@ StateHandler::pid ()
|
||||
derivative = error - last_error;
|
||||
fan_speed.setInit ((kP * error) + (kI * integral) + (kD * derivative));
|
||||
}
|
||||
|
||||
void
|
||||
StateHandler::updateSensorValues ()
|
||||
{
|
||||
|
||||
sensors_data[TEMPERATURE] = humidity.readT ();
|
||||
sensors_data[PRESSUREDAT] = pressure->getPressure ();
|
||||
sensors_data[CO2] = co2.read ();
|
||||
state_timer->tickCounter(5);
|
||||
sensors_data[HUMIDITY] = humidity.readRH ();
|
||||
}
|
||||
|
||||
|
||||
@ -79,14 +79,14 @@ main (void)
|
||||
DigitalIoPin b_toggle (0, 5, true, true, true); // A3
|
||||
SwitchController sw_toggle (&b_toggle, &ventMachine,
|
||||
BUTTON_CONTROL_TOG_MODE);
|
||||
|
||||
int getcounterValue = 0;
|
||||
while (1)
|
||||
{
|
||||
|
||||
getcounterValue = glob_time.getCounter();
|
||||
sw_up.listen ();
|
||||
sw_down.listen ();
|
||||
sw_toggle.listen ();
|
||||
ventMachine.HandleState (Event (Event::eTick, glob_time.getCounter ()));
|
||||
ventMachine.HandleState (Event (Event::eTick, getcounterValue));
|
||||
glob_time.tickCounter (1);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user