Relay Board Control
From aquarium-doc
Revision as of 08:50, 25 December 2022 by Uwe (talk | contribs) (Created page with "The following components utilise the relay board: * Refill Control: refilling of fresh water depending on water level * Feeder Control: stopping flow pumps, skimmer and actuating the feeder * Water Exchange Control: actuating the external pump for water exchange * Balling Control: actuating the pumps for mineral dosing There are two requirements, which ask for a more sophisticated control of the relay board: * The dosing of minerals needs to be as precise as possible. *...")
The following components utilise the relay board:
- Refill Control: refilling of fresh water depending on water level
- Feeder Control: stopping flow pumps, skimmer and actuating the feeder
- Water Exchange Control: actuating the external pump for water exchange
- Balling Control: actuating the pumps for mineral dosing
There are two requirements, which ask for a more sophisticated control of the relay board:
- The dosing of minerals needs to be as precise as possible.
- The communication with the board needs to be reinitialised and even reopened after certain periods of time.
The relay board control implements the following features:
- Low level communication via serial port to the board
- Watchdog for reading/writing to serial port
- Semaphores for avoiding conflicting access to relay board
- HW functionality test before executing commands
- Monitoring and repair of relay board states