add control status

This commit is contained in:
2024-12-21 22:02:16 +01:00
parent 9abf64f9dd
commit 4ef6c8bd08
6 changed files with 95 additions and 18 deletions

View File

@ -40,6 +40,7 @@ Sntp <|-- Metrics
class Control{
+taskControl()
-timetable
+getControlState()
}
class Safety{
@ -71,7 +72,56 @@ Sntp <|-- Metrics
}
```
### Hardware
### Prometheus Metrics
`curl http://X.X.X.X:9100/metrics`
#### Example
```
burner_fault_pending 1
circulation_pump_enabled 0
burner_enabled 1
safety_contact_enabled 1
chamber_temperature 21.812500
chamber_temperature_avg10 21.837500
chamber_temperature_avg60 21.825521
inlet_flow_temperature 22.437500
inlet_flow_temperature_avg10 22.437500
inlet_flow_temperature_avg60 22.434896
outdoor_temperature 21.937500
outdoor_temperature_avg10 21.937500
outdoor_temperature_avg60 21.933594
return_flow_temperature 22.375000
return_flow_temperature_avg10 22.375000
return_flow_temperature_avg60 22.375000
chamber_temperature_state 0
outdoor_temperature_state 0
inlet_flow_temperature_state 0
return_flow_temperature_state 0
safety_state 0
control_state 5
sntp_state 0
system_unixtime 1734814285
uptime_seconds 90
wifi_rssi -63
```
#### Status Encoding
##### Digital Themperatur Sensor DS10B20
- chamber_temperature_state
- outdoor_temperature_state
- inlet_flow_temperature_state
- return_flow_temperature_state
| Enum eSensorErrorState in [safety.h](main/safety.h) | Value | Description |
|------------------------------------------------------|--------|----------------------|
| SENSOR_NO_ERROR | 0 | |
| SENSOR_TOO_HIGH | 1 | Sanity check failed |
| SENSOR_TOO_LOW | 2 | Sanity check failed |
| SENSOR_UNCHANGED | 3 | Sanity check failed |
| SENSOR_NOT_FOUND | 4 | No Communication |
## Hardware
| Function | ESP32 | PLC ES32C14 |
|---------------------------------------|-------|---------------------------|
@ -80,3 +130,5 @@ Sntp <|-- Metrics
| Output Safety Contact (powers Burner) | IO12 | Relay 3 NC2 |
| Input Burner Fault | IO19 | Digital Input IN1 |
| Input Temperature DS10B20 | IO04 | 1-Wire |