Inhaltsverzeichnis
VOC-Sensor (Messung der Luftqualität)
Project information
- Maintainer:
- Interessenten:
- Status
- Planning
ESPHome Firmware
Verwendet diese esphome Firmware: https://git.unhb.de/smash/co2ampel
Vorhaben
Um zu Corona-Zeiten die Luftqualität im Netz39 messen zu können, wird geplant, einen VOC-Sensor zu verbauen.
Warum der VOC-Gehalt gemessen werden soll und eine CO2-Messung nicht ausreicht, kann man hier nachlesen: PDF
Related Work
Watterot hat auch ne CO2 Ampel, die kann man direkt kaufen, wenn man reich ist
Sensor
In der Make-Zeitschrift 5/20 wird eine CO2-Ampel vorgestellt, die sowohl CO2 als auch VOC misst.
Dort wurde für die VOC-Messungen der Sensor BME680 von Bosch verwendet. Dieser ist ziemlich klein, für low-power-Anwendungen geeignet und lässt sich über I2C/SPI ansprechen.
Der Sensor kann zusätzlich zu VOC-Messung außerdem die Temperatur, Luftfeuchtigkeit und Luftdruck messen. (Die drei Sachen werden benötigt, um die VOC-Messgenauigkeit zu gewährleisten)
Sensor-Firmwaretreiber
Bosch hat die Treiber für die Sensoren auf github veröffentlicht.
Bosch hat die Arduino-Bibliothek für die Sensorfusion als Binaryblob auf github veröffentlicht.
Von Adafruit gibts einen Arduino und einen CircuitPython Treiber
Firmware
Hier bastelt David mit RIOTos an der Firmware auf einem esp32. Übertragung der Daten geplant per WiFi und MQTT.
Arduino Code Beispiel für die Berechnung eines AirQualityIndex
Datenübertragung
Die Übertragung kann über BLE geschehen, sofern der Sensor mit Batterien betrieben werden soll. Bei einer festen Stromversorgung kann sie auch über ESP/WiFi oder CAN stattfinden.
Frontend
Die Daten sollen auf OpenHab gesammelt werden und dort ausgewertet werden und ggf. eine Statusmeldung zur Luftqualität im Space veröffentlicht werden.
- Openhab nutzt für Persistenz auch nur 3rd-Party-Datenbanken, z.B.
- Wir könnten die Daten auch direkt in einer Influxdb abliefern. (Dann muss man nicht zwingend OpenHab haben.)
- MQTT → InfluxDB ist möglich
- D.h. letztendlich reicht es für den VOC-Sensor, Daten in einem MQTT-Topic abzuladen. Der Rest kann bequemer auf einem RPi oder in einem Docker-Container gemacht werden.
Diskussion
- [tux] Wie wäre es mit einem komponentenbasierten Design?
- eine Komponente ist der VOC-Sensor, der für alle gleich sein kann
- zweite Komponente: Steuerung/Kommunikation, z.B. BLE mit STM oder WiFi mit ESP
- dritte Komponente: Stromversorgung: Batteriebetrieben oder mit ext. Versorgung
- [maxD] Wollen wir RIOT OS benutzen? Das hat sogar schon einen Treiber dafür: Externer Link
ToDo-Liste
- Batteriebetrieb oder Kabelgebunden
- David hat Breakoutboards bestellt, sind angekommen
- Design der Platine
- Sammlung der Daten in OpenHab
- OpenHab-Indikator, dass gelüftet werden muss oder Luftfilter anwerfen