Unterschiede zwischen den Revisionen 13 und 14
Revision 13 vom 2016-06-25 11:24:12
Größe: 6278
Autor: p54868FD8
Kommentar: Daten aktualisiert
Revision 14 vom 2017-12-17 12:16:45
Größe: 6357
Autor: p5B30C48D
Kommentar: Link zu Velux
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 12: Zeile 12:
   http://www.velux.de/produkte/lueftungsloesungen-belueftung/raumluftfuehler

Ziel: CO2 Sensor unter Linux nutzen, aktuelle ppm Werte mitschreiben und als Grafik anzeigen

Die Beschreibung bezieht sich auf Debian Stable.

Inzwischen als Debian Paket im Mainstream enthalten.

Quellen: https://thinserv2.at-inet.de/~benedikt/air-quality-sensor/

Benötigt werden für einen skole-messdaten-server

C02 Sensor kalibrieren

Der Sensor macht im Auslieferungszustand nur Relativwertmessungen weil er sich beim Einschalten selber kalibriert wobei er die jeweilige Umgebungslust als "Null" definiert.

Das läßt sich wie folgt ändern:

Dazu ist noch ein Windows Betriebssystem erforderlich: Airmonitor starten, STRG drücken und auf das Logo 3x klicken ergibt Expertenmodus.

Dann "Support Tools" - "Edit knobs"

Dort gibt es auch eine Option "ui16StartupBits". Diesen auf 0 und er kalibriert sich NICHT beim jedem neuen Aufstarten.

HGM: Option "ui16StartupBits = 0". Das funktioniert! Dann erfolgt keine neue Kalibrierung. Es muss also nur einmal richtig kalibriert werden und dann läufts.

CO2 Sensor finden

lsusb

sollte den USB Stick anzeigen, etwa:

Bus 002 Device 004: ID 03eb:2013 Atmel Corp.

UDEV Regel anlegen

  • UDEV Regel anlegen, damit ein auch normaler User die Software nutzen kann
  • als root:

# cd /etc/udev/rules.d
# echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2013", GROUP="air-quality-sensor" '> 90-air-quality-sensor.rules

Als Root die Aktualisierung aufrufen:

# udevadm trigger

Jetzt können alle User der Gruppe air-quality-sensor die USB Sticks abfragen.

  • crontab zur Zeitsteuerung
  • ein Verzeichnis für die logfiles
  • ein Verzeichnis für die scripte

Hinweise

Der Stick ist in der Lage die gemessene Daten auch ohne PC Anbindung in seinen internen Speicher abzulegen.

Dazu AirMonitor aufrufen. Dann das Menü "About" aufrufen. Dann im erscheinenden Fenster doppelt auf das Logo klicken. Das aktiviert den Expertenmodus. Dadurch erscheint ein neues Menü namens " Support Tools". Dort dann "Edit knobs" anklicken und nach "LogInterval" suchen. Hier ist es möglich eine Zahl ungleich Null einzugeben was zur Folge hat dass der Stick die gemessenen Daten in sein RAM ablegt solange er nicht mit einem PC verbunden ist und mit Strom versorgt wird (der einzugebene Wert wird als Sekunden interpretiert).

Auslesen geht dann mit "Download flash" im "File" Menü.

Nachteil beim Betrieb: Wenn der USB Stick angeschlossen wird dann kalibriert er sich erst einmal selbst auf die jeweilig vorhandene Umgebungsluft und setzt diesen Wert dann als Referenz. Wenn man ihn also in einem ungelüfteten Raum anschliesst dann wird er immer grün anzeigen. Gelb oder rot würde es dann nur werden wenn die Luft relativ gesehen schlechter wird.

Also ist die richtige Vorgehensweise so: Zuerst den USB Stick einer als gut bezeichneten Luft aussetzen, dann den Stick an USB anschliessen (mit Spannung versorgen) . Warten bis der "WARMUP" fertig ist (Grüne LED blinkt nicht mehr). Erst dann sollte der Stick ohne dass er vom USB getrennt wird in den Wohnraum geholt werden und dann zeigt er auch die Luftqualität innerhalb von Räumen relativ zu der Luft im Freien an.

HGM: Ich habe das mal gemacht mit der Kalibrierung an der frischen Luft. Dann passen die Werte ziemlich genau (+-50 ppm) zu meinem anderen CO2-Messgerät.

Lösung dafür:

Der Sensor macht im Auslieferungszustand nur Relativwertmessungen weil er sich beim Einschalten selber kalibriert wobei er die jeweilige Umgebungslust als "Null" definiert.

Das läßt sich wie folgt ändern:

Dazu ist noch ein Windows Betriebssystem erforderlich

Airmonitor starten, STRG drücken und auf das Logo 3x klicken ergibt Expertenmodus.

Dann "Support Tools" - "Edit knobs"

Dort kann man die Warnlevel einstellen und dort gibt es auch eine Option "ui16StartupBits". Diesen auf 0 und er kalibriert sich NICHT beim jedem neuen Aufstarten.

Im Loggingmode loggt er immer eine neue Session wenn er eingesteckt wird. Damit kann man also von Zimmer zu Zimmer gehen.

Dann unter "File" Download "Flash gehen".

Wenn der Speicher voll ist dann überschreibt er alte Daten.

HGM: Option "ui16StartupBits = 0". Das funktioniert! Dann erfolgt keine neue Kalibrierung. Es muss also nur einmal richtig kalibriert werden und dann läufts.

http://forum.micasaverde.com/index.php/topic,4705.0.html

http://code.google.com/p/airsensor-linux-usb/wiki/About

http://wiki.micasaverde.com/index.php/CO2_Sensor#air.c_source_code

http://www.appliedsensor.com/products/indoor-air-monitor.html

Entwurf für eine Präsentation bei der FrosCon 2014

  • Sticks kaufen
  • Software vorstellen
    • Jan-Benedict und Benedikt Wildenhain, Debian Paket
  • Beispiel Logdatei
    • Beim Aufwärmen:
      • Device 002:3,value = 450, quality = BLINK
    • Beim Betrieb:
      • Device 002:3,value = 524, quality = GREEN
  • Beispiel-Implementation
    • Cronjob anlegen
      • crontab -e
      • */5 * * * * /home/kurt/bin/co2ppm.sh
    • Ausführbare Datei co2ppm.sh mit Inhalt
      • tail -1 co2ppm_fortluft.log | grep 'Device 002:3' | sed 's#,# #g' | awk '{print strftime("%y%m%d %H:%M")" "$5}' >> technikluft.co2ppm.log

    • Die beiden Logfiles unterscheiden sich hautsächlich durch den Zeitstempel
      • tail co2ppm_fortluft.log
      • Device 002:3,value = 524, quality = GREEN
      • tail technikluft.co2ppm.log
      • 140810 15:45 524
    • Solch ein Logfile kann nun mit gnuplot in eine Grafik umgewandelt werden

http://www.skolelinux.de/images/co2ppm2014-08-10wz.png

KurtGramlich/AirSensor (zuletzt geändert am 2019-12-11 11:27:27 durch KurtGramlich)

Alle Inhalte in diesem Wiki stehen unter der Creative Commons SA 4.0 DE Lizenz