Raumluftqualität mit FHEM überwachen

Loxone im Einsatz? Dann schau dir unseren LoxKurs an und profitiere von unserem Wissen!

Jedes Smart Home kann Temperaturen messen und Lichter steuern. Ein Raumluftsensor gehört hingegen schon eher zu den Exoten in der Smart-Home-Sensorlandschaft, obwohl es zahlreiche Einsatzszenarien gibt. Laut Umweltbundesamt halten wir uns heute immerhin im Schnitt 90% des Tages in Innenräumen auf und atmen dabei zwischen 10 und 20 Kubikmeter Luft pro Tag durch unsere Lungen (Umweltbundesamt). Grund genug, sich mit dem Thema Raumluftqualität auch im Smart Home zu beschäftigen. Während gängige Raumluftsensoren für bekannte Hausautomation-Systeme gerne mal 150 Euro oder mehr kosten, testen wir dir in diesem Howto einen knapp 35 Euro teuren Raumluftsensor (Amazon-Link), der seit Jahren immer wieder im Zusammenhang mit FHEM verwendet wird.

Smart Home Gear zu diesem Blogpost (Affiliate-Links)

REHAU Raumluftsensor

Ich hatte schon vor Jahren auf Robins Blog und auch im FHEM-Forum über den Raumluftsensor gelesen und war seither nie dazu gekommen, das Ganze selbst einmal auszuprobieren. Jetzt habe ich es endlich geschafft und freue mich, meine Insights teilen zu können. Doch zunächst erst einmal ein paar Zeilen zu dem Sensor.

Der REHAU-Raumluftsensor (Amazon-Link) basiert auf einer AppliedSensor iAQ-Engine, der ebenfalls im VELUX Raumluftfühler und im VOLTCRAFT CO-20 zu finden ist.

Der Innenraumsensor misst sog. Volatile Organic Compounds (VOC), also flüchtige, organische, gasförmige Stoffe in der Innenraumluft. Diese korrelieren mit der CO2-Konzentration in der Luft, sodass indirekt (approximativ über einen Algorithmus) auch Atemluft im Raum Bestandteil der Messung des Sensors ist, auch wenn die Menge an CO2 in der Luft nicht direkt gemessen werden kann (so wie bei einem CO2-Sensor).

VOC können je nach Konzentration Kopfschmerzen, Schwindel oder Müdigkeit hervorrufen. Der REHAU-Raumluftsensor erkennt unter anderem VOC von Atem, Kosmetik, Haushaltsmaterialien, Verbrennung oder Lacken/Klebstoffen. Dazu zählen z.B. Aceton, Ethanol, Formaldehyde oder Benzol. Eine vollständige Liste gemessener VOCs ist hier zu finden: https://www.rehau.com/de-de/privatkunden/raumluftsensor.

Optisch erinnert der Sensor an ein Speichermedium und kann wie ein USB-Stick direkt mit dem Smart Home Server verbunden werden. Wichtig ist, dass der Sensor nicht an einem passiven USB Hub betrieben werden sollte, weil der Widerstand, der die VOC-Messung durchführt, mit ausreichend Spannung versorgt werden muss. Dieser wird nämlich auf rund 300 Grad C erhitzt. Daher sollte man den Sensor direkt an einem USB-Port des Smart Home Servers verwenden oder an einem aktiven USB-Hub (Affiliate-Link).

In diesem Howto wird der Open Source Smart Home Server FHEM verwendet, der auf einem Intel NUC Barebone PC (Affiliate-Link) mit Ubuntu läuft. Mehr Informationen, Installation und Setup von FHEM findest du hier: Mit FHEM zum Low Budget-Smart Home – Der neue Einsteigerguide von meintechblog.

Raumluftsensor in Betrieb nehmen

Um den Raumluftsensor mit FHEM im Smart Home zu betreiben, ist zunächst eine Inbetriebnahme am angeschlossenen Server-PC notwendig. Hierzu wird der Sensor per USB mit dem Smart Home Server verbunden, woraufhin eine SSH-Verbindung mit dem Server hergestellt wird (per Terminal App auf einem Mac, per Putty bei einem PC).

ssh christoph@192.168.178.68

Dann werden zunächst (falls noch nicht vorhanden) noch einige benötigte Pakete installiert.

sudo apt-get -y install libusb-dev libdevice-usb-perl build-essential

Im nächsten Schritt wird die für den Sensor benötigte C-Datei heruntergeladen und verwendet.

wget https://github.com/tuxedo0801/usb-sensors-linux/raw/master/airsensor/airsensor.c
gcc -Wall -o airsensor airsensor.c -lusb

Mit dem Befehl

dmesg | tail

kann anschließend geprüft werden, ob der USB-Sensor erkannt wurde (siehe Screenshot).

Erscheint der Sensor hier, kann er getestet werden. Dazu wird der folgende Befehl verwendet.

sudo ./airsensor

Nach kurzer Wartezeit (ca. 11 Sekunden, was dem Update-Intervall des Sensors entspricht) erscheinen die ersten Messwerte im Terminal-Fenster (siehe Screenshot). Wie zu erkennen ist, schwankten die Werte bei mir sehr stark.

Ich war mir nicht sicher, ob das so passen sollte, denn eine Range von VOC-Werten zwischen 947 und 1380 innerhalb von gut 30 Sekunden kam mir seltsam vor. Ich habe daraufhin den Stick noch einmal abgezogen, dem Raum 10 Minuten frisch gelüftet und den Sensor dann erst wieder in Betrieb genommen (inkl. Reboot des Servers). Daraufhin lieferte der Sensor erst einmal minutenlang (über eine halbe Stunde) den Wert 450, was auf eine Kalibrierung hindeutet. Nach mehreren Stunden liefert der Sensor dann Messwerte.

Zwischenzeitlich habe ich viel über das Kalibrieren des Sensors gelesen und herausgefunden, wie kritisch dieser Prozess ist. Mittlerweile ist der Konsens, dass die Temperatur beim Kalibrieren idealerweise bei etwa 23 Grad C liegen sollte, was also nur im Sommer außen an der Frischluft funktioniert. Weiterhin macht das Kalibrieren wohl erst nach dem Einbrennen (Burn-In-Phase von mindestens 4 Tagen) Sinn.

Weil das Kalibrieren des Sensors so zentral ist, haben die Messwerte folglich keine absolute Aussagekraft, da sie von den Umgebungskonditionen während der Kalibrierung abhängen. Eine VOC-Konzentration von 1000, gemessen an einem Sensor, kann bei einem anders kalibrierten Sensor zu einem abweichenden Messwert führen.

Doch zurück zur Inbetriebnahme: Systemseitig ist das Setup des Sensors nun abgeschlossen. Schließlich muss FHEM über einen UDEV-Eintrag noch die Rechte erhalten, um nachfolgend ebenfalls auf die Messwerte des Sensors zuzugreifen. Dazu wird mit folgendem Befehl eine neue Datei angelegt.

sudo nano /etc/udev/rules.d/99-usb.rules

Die Datei erhält anschließend den folgenden Inhalt:

SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2013", MODE="0666" ```

Nach dem Speichern der Datei (CRTL & X // Y // ENTER) wird schließlich noch ein Reboot des Smart Home Servers durchgeführt.

sudo reboot

Innenraumsensor in FHEM einbinden

Da es den Sensor schon seit längerem gibt und die FHEM Community einfach gigantisch ist, gibt es mittlerweile auch schon ein eigenes FHEM-Modul zur Integration der Messwerte in das Smart Home. Um sicherzustellen, dass die neueste Version des Moduls „CO20“ vorhanden ist, empfiehlt es sich, FHEM mit den Befehlen „update check“ und „update“, die am oberen Bildrand des Web Interfaces eingegeben werden, auf den neuesten Stand zu bringen.

Daraufhin kann der Sensor bereits über die Kommandozeile im Web Interface eingerichtet werden:

define co20 CO20

In meinem Fall war der Status zunächst „disconnected“ (siehe Screenshot).

Ein Neustart von FHEM, konnte dieses Problem beheben („shutdown restart“ in der Kommandozeile). Nach dem Reboot wechselte der Status auf „open“. Nach kurzer Zeit tauchten auch die ersten VOC-Messwerte unter Readings auf.

Wie die Befehlsmöglichkeiten im oberen Bereich des Screens zeigen, steht zunächst nur die Funktion „get co20 update“ zur Verfügung. Das Modul stellt allerdings auch erweiterte Funktionen zur Verfügung (advanced-Mode). Dieser wird über die Attribute der Definition aktiviert. Dies geschieht entweder per Klick im Webinterface oder erneut in der Kommandozeile:

attr co20 advanced 1

Nach der Aktivierung stehen sowohl mehr Funktionen als auch mehr Readings zur Verfügung.

Zu den advanced Readings zählen vor allem der Debug Level und der in Ohm gemessene Widerstand des im Fühler eingebauten Sensor- und des Heating-Elements, auf deren Basis die VOC-Berechnung erfolgt. Das aber nur am Rande und zur Info ;)

Zu den advanced Set- Optionen gehört unter anderem die Möglichkeit, den Sensor neu zu kalibrieren, was ich dann nach der viertägigen Einbrennphase in einem gut gelüfteten Raum bei etwa 21 Grad über FHEM erneut durchgeführt habe:

set co20 recalibrate_heater

Anschließend spuckte der Sensor deutlich konstantere Werte aus.

Damit der Sensor dann die Kalibrierung behält, habe ich im Nachgang die Auto-Kalibrierung bei Neustart deaktiviert:

set co20 KNOB_ui16StartupBits 0

Der Sensor liefert im Standard alle 300 Sekunden einen aktuellen Messwert an FHEM. Über das Attribut „interval“ kann dieser Zeitpunkt individuell angepasst werden.

Um die Raumluftqualität auch im Zeitverlauf zu analysieren, können wir noch eine Verlaufsgrafik in FHEM anlegen. Dazu wird zunächst ein Filelog angelegt, das alle Werte des Sensors speichert und als Basis für die Grafik dient.

define FileLog_co20 FileLog ./log/co20-%Y.log co20

Nach einem Klick auf das Filelog und einem weiteren Klick auf „Create SVG“, öffnet sich der Dialog zur Erstellung einer SVG-Grafik. Für mehr Infos zu SVGs, bitte hier nachlesen: FHEM-Logfiles und -Graphen: Datenlast reduzieren und Werte ordentlich visualisieren.

Ich habe für meine Grafik folgende Werte genutzt:

  • Plot title: Raumluftqualität
  • Y-Axis label left: Raumluftqualität, right: Raumluftqualität
  • Grid aligned: left
  • Range as: left [400:3000]

Im unteren Bereich des Dialogs wird das entsprechende Filelog als Source gewählt und „4“ als Column angegeben. Ein anschließender Klick auf „Write.gplot file“ speichert die Verlaufsgrafik.

Ich habe testhalber das Updateintervall auf 30 Sekunden eingestellt (attr co20 interval 30). Im Verlaufsgraph erkennt man daraufhin vor allem im Vergleich zum oberen Verlaufsgraph, dass die VOC-Werte des Sensors schon einer gewissen Schwankung unterliegen.

In meiner Verlaufsgrafik erkennt man schon ganz schön, dass bei mir sehr schwankende Werte auftreten, sodass neben einer Tendenz, wohin sich die Raumluft entwickelt, keine exakten Informationen zu entnehmen sind. Da es aktuell (Stand Februar 2018) aussen auch sehr kalt ist, rentiert sich das Kalibrieren im Freiluftbereich nicht wirklich. Ich werde die nächsten Wochen noch ein paar Experimente mit dem Kalibrieren der Messung machen, jedoch entnehme ich auch den Diskussionen aus dem FHEM-Forum, dass die Messgenauigkeit des günstigen Sensors starken Schwankungen unterliegt. Sollte ich noch bahnbrechende Neuerungen herausfinden, werde ich hier in einem Update berichten.

Nach der optimierten Kalibrierung (nach vier Tagen Einbrennphase) direkt am USB-Port des Servers misst der Sensor dann konstantere Werte, wie im neuesten Graphen zu sehen ist.

Trotzdem mag ich die tendenzielle Messung der VOC-Werte im Raum für den günstigen Preis soweit ganz gerne. Je geringer der VOC-Wert, desto besser ist die Luftqualität. Als VOC-Grenze für „gute“ Luft hat sich der Wert 1000 etabliert, der in µg/m³ gemessen wird. Es gilt also, die Luftqualität, z.B. durch regelmäßiges Lüften, weit unter dieser Grenze zu halten. Der Innenraumsensor verfügt über eine LED-Anzeige, die per Farbe die Qualität der Luft signalisiert.

Im Standard sind folgende Werte als Thresholds für die grüne, gelbe und rote LED hinterlegt:

  • Grün: <1000
  • Gelb: <1500
  • Rot: >1500

Die Werte können im Advanced-Modus allerdings mit den FHEM-Befehlen

set co20 KNOB_CO2_VOC_level_warn1 WERT

bzw.

set co20 KNOB_CO2_VOC_level_warn2 WERT

individuell angepasst werden.

Überhalb der 1000er-Marke wird die orangefarbene LED aktiv, die auf eine verschlechterte Luft hinweist.

Spätestens wenn die rote LED aufleuchtet (>1500 VOC), sollte ernsthaft über eine Lüftung des Raums nachgedacht werden (vorausgesetzt, die Quelle der Luftverschlechterung stammt nicht von außen).

Das Feature der eingebauten LED ist insofern gigantisch, da man den Sensor so auch Smart-Home-unabhängig in anderen Umgebungen nutzen kann, beispielsweise am Arbeitsplatz, im Auto oder sonst wo, eben überall dort, wo eine USB-Stromversorgung ermöglicht werden kann.

Innenraumluft im Smart Home verbessern

Damit der Innenraumsensor effektiv zu Änderungen der Raumluftqualität, also zu einer Senkung der VOC in der Innenraumluft führt, reicht es allerdings nicht aus, die Luftqualität in einer Grafik zu zeichnen. Da die meisten Haushalte nicht über eine steuerbare Wohnraumlüftung verfügen und auch elektronische Fensterantriebe, wie der Homematic Winmatic (Affiliate-Link), eine geringe Verbreitung besitzen, ist die einfachste Form der Raumluftregulierung ein manuelles Lüften. Um dem Nutzer den Zeitpunkt für ein Lüften zu signalisieren, zeige ich dir im Folgenden die Verwendung von Pushnachrichten auf dein Smartphone, sobald die VOC-Konzentration in der Raumluft ein zu hohes Level erreicht.

Wie bereits im Blogpost Pushnachrichten im Smart Home mit FHEM und Pushover beschrieben, können Pushnachrichten ein wichtiges Tool im Smart Home sein. Für ein Howto zur Einrichtung und Inbetriebnahme von Pushover mit FHEM kannst du im verlinkten Artikel nachlesen.

Eine Pushmitteilung kann dann z.B. ab einem VOC-Wert von 1000 an den Nutzer versendet werden. Die dazugehörige Syntax eines DOIF-Programms in FHEM sieht dann z.B. so aus.

define doif_airquality DOIF ([07:00-22:00] and [co20:voc] > 1000) ({fhem("set Pushnachricht msg title='Arbeitszimmer' message='Raumluftqualität Arbeitszimmer schlecht! Bitte lüften!'")})

Das Programm besagt zunächst, dass ich derartige Pushmeldungen nur tagsüber, also zwischen 07 und 22 Uhr erhalten möchte.

Aus meinem täglichen Leben

Aktuell teste ich den Raumluftsensor in meinem kleinen Arbeitszimmer. Hier wird die Luft auf Grund der Raumgröße sehr schnell schlecht. In diesem Raum steht auch meine ganze IT-Hardware inkl. NAS, NUC als Multimedia- und Smart-Home-Server sowie Drucker und co. Aktuell experimentiere ich damit, durch den Raumluftsensor die Abluftsteuerung im Badezimmer zu automatisieren (Blogpost folgt). Ob der kleine Rehau-Sensor dazu taugt, kann ich aktuell noch nicht sagen, da mir die Werte noch zu stark schwanken und die VOC-Messungen scheinbar zu stark von anderen Faktoren (wie der Raumtemperatur) abhängen.

All in all taugt mir das Messen der Luftqualität mit dem Raumluftsensor allerdings schon ganz gut, allein schon deshalb, weil es mal über die Klassiker im Smart Home (Temperatur und Luftfeuchtigkeit) hinausgeht. Auch wenn der REHAU Sensor (Affiliate-Link) keine absolut vergleichbaren Messwerte liefert, kann er auf jeden Fall durch seinen Preis überzeugen. Ich bin gespannt, welche Erfahrungen ich im Langzeittest damit machen werde.

Habt ihr Erfahrungen mit Raumluftqualität im Smart Home gemacht? Schreibt es in den Kommentaren!

Smart Home Gear zu diesem Blogpost (Affiliate-Links)

Loxone im Einsatz? Dann schau dir unseren LoxKurs an und profitiere von unserem Wissen!

Verpasse keine Inhalte mehr! Trage dich in den Newsletter ein und folge uns auf Facebook.

Was ist ein Affiliate-Link? Wenn du auf einen Affiliate-Link klickst und über diesen Link einkaufst, bekomme ich vom betreffenden Online-Shop oder Anbieter eine Provision, was mich u.A. bei den laufenden Kosten den Blogs unterstützt. Für dich verändert sich der Preis nicht.

Christoph

berichtet seit Juni 2012 auf meintechblog.de über seine Erfahrungen zu Smart Home und Hausautomation und beschäftigt sich außerdem mit Smart Grids. Mehr Infos

13 Gedanken zu „Raumluftqualität mit FHEM überwachen“

  1. Hallo,

    ich hab in den meisten Räumen einen Raspberry mit Kodi (OpenElec) am laufen

    ist es irgendwie möglich den Sensor an diesen Raspberry anzuschliesen und am server auszulesen?

    DANKE
    Lg
    Erwin

  2. Hi Christoph, Jörg,
    mit der Luftqualli, ist ja seit dem Diesel ein richtiger Hype geworden :-)
    Alternativ zum USB-Stick, sollte man noch den Sensor CCS811 (ca. 9€) und AM2320 Temp/Hy (2,50€) erwähnen.
    Beide I2C. Liefert auch VOC und CO2. Kann man sowohl am Raspi, als auch am ESP8266 / Arduino betreiben.
    Libraries gibts bei Adafruit. Ich habe den CSS811 mit in das Gehäuse vom AM2320 eingebaut (siehe Bild) – klappt prima :-) [URL=http://www.bilder-upload.eu/show.php?file=3053e8-1519031554.png][IMG]http://www.bilder-upload.eu/thumb/3053e8-1519031554.png[/IMG][/URL]
    VG ralphi

    1. Hallo, ich denke das ein co2 Sensor für 10€ nicht gut sein kann. Ich habe mal gelesen das die guten bei 50€ anfangen.

  3. Gibt es auch Sensoren zur Überwachung der Luftqualität, die NICHT per USB mit dem Steuergerät verbunden sind? Schließlich wäre es sinnvoll, jeden Raum (insbesondere Schlafzimmer) mit einem Sensor auszustatten. Aber es kann ja nicht sinnvoll sein, in jedem Zimmer einen Raspi zu betreiben, oder?

    1. Das würde mich auch interessieren, da ich auch nicht unbedingt plane jeden Raum mit einem Raspi auszustatten.

  4. Ein wirklich interessanter Beitrag und ich würde es gerne auch ausprobieren. Leider kann ich den Sensor (und anscheinend Baugleiche) nirgends zum Bestellen finden. Hast du da einen Tipp?

  5. Hallo,
    jetzt hol ich mal das hier aus der Versenkung ^^
    Wie bekomme ich diese coole Graphik hin? Das „set co20 KNOB_CO2_VOC_level_warn1 WERT “ klappt bei mir nicht. Ich will das mein Gplot auch in so coolen Farben erscheint. Ab wert 0 bis wert a Grün, ab Wert a bis Wert b Gelb und ab wert b bis zum ende Rot
    Wie klappt das?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert