Update 03.01.2016 Luftqualitäts-Sensor wieder verfügbar, bitte lesen im Blog-Beitrag!
30.10.2015 Bitte auch meinem Beitrag:
- MQ-2 Gassensor im Selbstbau lesen, dieser Blog-Beitrag ist alt
Update 11.11.2013, Erweiterung Blog-Beitrag: Netatmo-Wetterstation mit Luftqualitäts-Sensor
Update 01.11.2013, Aktualisierung Fhem Code
Ursprünglicher Beitrag:
Der Luftqualtitäts-Sensor Voltcraft CO 20 (Rehau, Velux) erfaßt sämtliche in der Luft enthaltene reduzierende Gase, dazu gehören vor allem CO und die große Zahl der VOCs (engl. volatile organic compounds, zu deutsch: flüchtige organische Verbindungen) zum Beispiel aus Parfüm, Reinigungsmitteln, Gebäudematerialien, Zigarettenrauch, Kochvorgänge und besonders vom Menschen und seinen Aktivitäten :-). Ein großer Vorteil ist, das er als USB-Stick daherkommt und man so mobil ist. Man kann also schnell die Raumluft in seinem Büro auf der Arbeit messen. Ein anderer Meßvektor wäre eine Messung im Auto. Einfach den USB-Stick in die USB-Buchse des Autos stecken, und so sieht man durch die eingebauten LEDs sofort, ob ggf. schädliche Gase den Innenraum des Autos erreichen.
Auto Amazon Links: Keine Produkte gefunden. http_request_failed: Es wurde keine gültige URL übermittelt. URL: https://ws-eu.amazon-adsystem.com/widgets/q?SearchIndex=All&multipageStart=0&multipageCount=20&Operation=GetResults&Keywords=B00ZXP6EI4|B000ZL21QA&InstanceId=0&TemplateId=MobileSearchResults&ServiceVersion=20070822&MarketPlace=DE Cache: AAL_08993197a600881475183849aa3efe99
Logging-Funktion: Die Meßwerte werden aufgezeichnet und können später mit einer Software ausgelesen werden. Die Windows-Software zeichnet einen Graphen in Abhängigkeit von der Luftqualität als Funktion der Zeit auf. Die Luftqualität wird in 3 Abschnitten aufgeteilt: Gut = Grün – Messwert von 450 bis 1000, Mäßig = Gelb – Messwert von 1001 bis 1500 und Schlecht = Rot – Messwert von 1501 bis 2000 und darüber. Diese Werte haben sich in der Klimaindustrie etabliert.
Einfache Tests: Ein einfacher Test genügt, um die Funktion zu überprüfen. Einfach mal den Sensor anhauchen und kurz abwarten. Wenn man das Windows-Programm live mitlaufen lässt, erkennt man sofort einen Ausschlag der Meßkurve. Ich bin natürlich hingegangen und habe den Extrem-Test durchgeführt: Ein Aldi-Brillentuch genommen (welches Alkohol enthält) und einfach nur in die Nähe des Sensors bewegt: Die Meßwerte sind nahezu explodiert, bei mir lagen die innerhalb Sekunden bei über 13000 (bei 2000 ist eigentlich die Grenze).
Stromaufnahme: Die Stromaufnahme beträgt 40mA, getestet mit dem USB-Doktor
Auto Amazon Links: Keine Produkte gefunden. http_request_failed: Es wurde keine gültige URL übermittelt. URL: https://ws-eu.amazon-adsystem.com/widgets/q?SearchIndex=All&multipageStart=0&multipageCount=20&Operation=GetResults&Keywords=B07TYLWJBG&InstanceId=0&TemplateId=MobileSearchResults&ServiceVersion=20070822&MarketPlace=DE Cache: AAL_bff24e6c20e9dd2fda5dec48392bc53b
Er sollte mit jedem handelsüblichen Akkupack (Power Bank) funktionieren.
Fake oder kein Fake?: In einigen Foren habe ich gelesen, das der Sensor ein Fake ist, weil dieser nur eine Zahl ausgibt, aber keine Aufschlüsselung der einzelnen (Schad)-Stoffe. Die Firma Applied-Sensor, welche diesen Sensor entwickelte, beliefert die Industrie (Automobil, Gebäudeautomationsfirmen) mit dieser Art von Sensoren. Der Grund für die Ausgabe mit nur einer Zahl bekam ich auf Nachfrage: „Der Sensor ist nicht selektiv und erfaßt nur einen Summenparameter aller vorhandenen reduzierenden Gase. Wir messen eine Widerstandsänderung und rechnen diese mittels Algorithmus in ppm CO2.“
Fhem und Voltcraft CO 20: Jetzt wird die Sache interessant für alle, die meinen Blog hier kennen und auch den kostenlosen Hausautomations-Server Fhem benutzen: Der USB-Stick kann leicht an den Raspberry Pi (-> mein Erfahrungsbericht) angeschlossen werden, sodass hier die Luftqualitäts-Daten geloggt werden können. Interessierte können sich in dem entsprechenen Thread des fhem-Forums und in Google-Code die notwendigen Informationen holen. Ich benutze immer noch eine (von mir modifizierte) C-Version mit einem Cron-Job, welcher alle 5 Minuten einen Wert von 450-2000 in die Log-Datei von Fhem schreibt.
Cron-Job:
*/5 * * * * /opt/fhem/send2fhem.sh
send2fhem.sh
#!/bin/bash
SERVER=“localhost:7072″
# Get temperature
VOC=`/opt/fhem/airsensor -v -o |tr -d ‚\040\010\012\015’`
# If TEMP contains value then send it to fhem
VARNAME=“airquality.livingroom“
VARVALUE=“$VOC“
# Send data
/opt/fhem/fhem.pl $SERVER „set $VARNAME $VARVALUE“
Die Eingabe muss mit einem LINUX-kompatiblen Editor erfolgen, z. B. nano oder vi, sonst kommen Fehlermeldungen.
Wenn man nach der Google-Anleitung vorgegangen ist, dann die airsensor-Datei in /opt/fhem kopieren und alle Rechte geben (777):
Testen kann man es auf der Konsole, wenn man
sudo /opt/fhem/send2fhem.sh
eingibt. Nach ein paar Sekunden sollte dann ein gemessener Luftqualitäts-Wert auf der Console sichtbar sein.
Einige Blog-Leser haben danach folgenden Fehler erhalten:
send2fhem.sh: 14: send2fhem.sh: /opt/fhem/fhem.pl: Permission denied
-rw-r–r– 1 fhem dialout 105283 Dec 15 18:58 fhem.pl
Lösung: Ich gebe bei jedem Update Root-Rechte auf die fhem.pl – Datei, dann funktioniert es.
Das Snippet für die Cfg sieht so aus:
# airquality sensor VOLTCRAFT CO-20
define airquality.livingroom dummy
attr airquality.livingroom alias Luftqualität 450 bis 1000 ist gut, 1001 bis 1500 mittelmäßig, darüber schlecht
attr airquality.livingroom room Plots
define FileLog_airquality.livingroom FileLog ./log/airquality.livingroom-%Y.log airquality.livingroom
attr FileLog_airquality.livingroom logtype airquality:airquality,text
define weblink_airquality.livingroom SVG FileLog_airquality.livingroom:airquality:CURRENT
der gplot sieht so aus (noch etwas beta)
# Created by FHEM/98_SVG.pm, 2013-10-24 18:46:23
set terminal png transparent size crop
set output '.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title ''
set ytics
set y2tics
set grid ytics
set ylabel "Luftqualität"
set y2label ""
#FileLog 3:airquality.livingroom.*::$fld[2]>1000?1000:$fld[2]
#FileLog 3:airquality.livingroom.*::$fld[2]>1500?1500:$fld[2]
#FileLog 3:airquality.livingroom.*::
#FileLog 3:airquality.livingroom.*::
#FileLog 3:airquality.livingroom.*::
plot „“ using 1:2 axes x1y2 title ‚.‘ ls l1fill lw 0.2 with lines,\
„“ using 1:2 axes x1y2 title ‚.‘ ls l4fill lw 1 with lines,\
„“ using 1:2 axes x1y2 title ‚.‘ ls l0fill lw 1 with lines,\
„“ using 1:2 axes x1y2 title ‚.‘ ls l4fill lw 1 with lines,\
„“ using 1:2 axes x1y2 title ‚Luftqualität‘ ls l7 lw 1 with lines
Als Snapshot zeige ich Euch mal das Ergebnis (die dritte Grafik):
Diese Funktion läuft bei mir im Dauerbetrieb schon seit November 2013 störungsfrei. Wichtig: Den Stick nicht direkt in den USB-Anschluß des Raspberry-Pi anstecken, sondern nur über einen mit externer Spannungsquelle versorgten USB-Hub, zum Beispiel diesen hier: Hama USB 2.0 Hub 1:4 mit Netzteil schwarz
Update: 05.01.2016: Ihr könnt auch noch einfacher den Stick in Fhem einbinden. André aus dem Fhem-Forum hat ein Plug-In für diesen Sensor geschrieben. Hier müsst ihr folgendes Modul mit sudo apt-get install libdevice-usb-perl oder mit cpan install Device::USB installieren. Ebenfalls sind folgende Zeilen in Fhem eintragen, und schon klappt es:
define co20 CO20
attr co20 interval 1800
define FileLog_co20 FileLog ./log/co20-%Y.log co20:voc:.*
Filterung nach Literal (gut / schlecht)
define doif_luftquali_wz DOIF (([co20:voc] > 200) && [co20:voc] < 700) (setreading co20 Luftqualiliteral gut) (setreading co20 Luftqualino 1)\
DOELSEIF (([co20:voc] > 700) && ([co20:voc] )< 1400 )(setreading co20 Luftqualiliteral mäßig) (setreading co20 Luftqualino 2)\
DOELSEIF ([co20:voc] > 1400) (setreading co20 Luftqualiliteral Schlecht)(setreading co20 Luftqualino 3)\
DOELSE ([co20:voc] = 0) (setreading co20 Luftqualiliteral Fehler)(setreading co20 Luftqualino 0)
Kalibrierung des Sensors: Der Sensor wird bei jedem Einstecken normalerweise kalibriert, will heißen, das beim Einstecken des Sensors eine gute Luft herrschen sollte. Leider geht dieser Wert wieder verloren, wenn man ihn vom Strom abzieht. Doch dafür gibt es Abhilfe: Einen Doppelclick mit gedrücker STRG-Taste auf das Applied-Sensor-Logo (bzw. Rehau-Logo) und schon erscheint ein zusätzliches Menü Support Tools bzw. Hilfsmittel. Dort ruft man den Menü-Punkt edit Knobs auf und ändert den letzten Punkt
ui16StartupBits=0
Aufstellung des Sensors bei Langzeitmessung: Möchte man den Sensor dauerhaft platzieren, so sollte er in ungefähr 1.1 m Höhe und frei stehen. Also nicht in dem Schrank stellen oder ins Regal um eine optimale Messung zu erreichen.
Fazit: Der Voltcraft CO 20 Sensor in Form eines USB-Sticks ist eine einfache und sinnvolle Möglichkeit, schnell die Qualtität der Raumluft zu testen. Durch die 3 Ampel-LEDs hat man auch schnell unterwegs die Ergebnisse – auch ohne Computer. Interessant wird der Stick, wenn man ihn an einem Hausautomations-Server (z. B. Fhem) anschließt. Hierdurch kann bei schlechter Luft beispielsweise eine eMail ausgelöst werden oder auch automatisch ein Fenster geöffnet oder geschlossen werden.
Nachtrag: Ein anderes interessantes Gerät, um die Luftqualität und sogar noch die Temperatur / Luftfeuchtigkeit zu messen heißt Netatmo. Hierzu gibt es auch eine IOS / Android-App, welche die Werte ständig auf das Display gezeigt werden. Mehr Informationen über Netatmo gibts bei amazon: Netatmo NWS01 Wetterstation für Apple iPhone und Android
Über ein Python-Script kann man Netatmo auch in Fhem integrieren. Mehr Infos gibt es wie immer im Fhem-Forum.
Kaufen bei amazon.de: REHAU Raumluftsensor USB Stick
.
.
Das könnte Euch auch interessieren:
- Passender Ständer für den Voltcraft CO 20 Stick: LogiLink CU0013A Verlängerungskabel USB 2.0 mit Docking Station
- Hausautomation mit Fhem: Übersicht und Möglichkeiten zur Realisierung – ein Blogbeitrag
- Luftdruck-Sensor BMP085 am Raspberry Pi oder Arduino Uno ( Blog-Beitrag )
- MQ-2 Gassensor im Selbstbau
- MQ-2 und Luftqualitäts-Sensor im Vergleich
- Technische Daten des Sensors (PDF)
- Mess-Software airmonitor herunterladen: Rehau oder bei Velux