Brewery-Controller/boil_kettle/thermoControl.h
Chris Giacofei 18c43187cb Initial junk to get temp control working.
Totally not working yet, just getting it pushed
to the remote
2022-01-18 19:45:05 -05:00

34 lines
691 B
C++

#ifndef THERMOCONTROL_h
#define THERMOCONTROL_h
enum modes : uint8_t {OFF, AUTOMATIC, MANUAL};
class thermoControl {
private:
double *input_temp;
double *output_pwm;
double *setpoint_temp;
double *hysteresis;
double *max_threshold;
double outMax;
double outMin;
modes OpMode;
unsigned long SampleTime;
unsigned long lastTime;
public:
thermoControl(double*, uint8_t*, uint8_t*, uint8_t*, uint8_t*);
bool Compute();
void SetSampleTime(int);
void SetPowerLimits(uint8_t, uint8_t);
void SetHysteresis(double);
void SetThreshPWR(uint8_t);
void SetMode(modes);
modes GetMode();
modes CycleMode();
};
#endif