Humidistat
Arduino firmware for a humidistat (humidity controller)
Loading...
Searching...
No Matches
CascadeHumidistat.h
Go to the documentation of this file.
1#ifndef HUMIDISTAT_CASCADEHUMIDISTAT_H
2#define HUMIDISTAT_CASCADEHUMIDISTAT_H
3
4#include <etl/span.h>
5#include <etl/array.h>
6
7#include "aliases.h"
8#include "Humidistat.h"
10#include "FlowController.h"
11
16private:
18
19public:
26 CascadeHumidistat(HumiditySensor *hs, const ConfigStore *cs, etl::span<const FlowSensor, 2> flowSensors,
27 etl::array<uint8_t, 2> pins_solenoid, uint8_t pwmRes);
28
32 [[nodiscard]] const FlowController* getInner(uint8_t n) const;
33
34 // Overridden from Controller
35 void update();
37};
38
39
40#endif //HUMIDISTAT_CASCADEHUMIDISTAT_H
Control humidity using cascade PID: outer PID loop sets setpoints of two inner flow controllers,...
const FlowController * getInner(uint8_t n) const
Get a pointer to a inner FlowController instance.
CascadeHumidistat(HumiditySensor *hs, const ConfigStore *cs, etl::span< const FlowSensor, 2 > flowSensors, etl::array< uint8_t, 2 > pins_solenoid, uint8_t pwmRes)
Constructor.
FlowController fcs[2]
const ConfigStore & cs
Definition Controller.h:14
Controls flow. Holds a reference to a FlowSensor instance.
Base class for a humidistat. Holds a reference to a HumiditySensor instance.
Definition Humidistat.h:10
HumiditySensor & hs
Definition Humidistat.h:12
const uint8_t pwmRes
Definition main.cpp:44
Config store containing variables, which can be stored in EEPROM.
Definition EEPROMConfig.h:7