TigerJython4Kids
HomeTurtlegrafikRobotikDatenbanken
CO2 Sensor

9. CO2 - SENSOR

 

 

DU LERNST HIER...

 

mit einem CO2-Sensor die CO2-Konzentration im Raum messen und überwachen. Der CO2-Wert ist ein zuverlässiger Indikator für die Luftqualität. Frische Raumluft ist heute besonders wichtig, um das Ansteckungsrisiko mit Covid-19 zu reduzieren.

 

 

SGP30 AIR QUALITY SENSOR

  Der CO2-Sensor SGP30 liefert hochpräzise Messwerte der CO2-Konzentration in der Luft. Das Modul sgp_mini, welches die Kommunikation mit diesem Sensor unterstützt, ist im TigerJython (ab Version 2.22 [Sep-18-2021]) integriert. Nach der Installation einer neuen Version musst du den Calliope neu flashen.

Der Gas Sensor TVOC/eCO2 mit integriertem SGP30 kann z.B. bei www.brack.ch für Fr. 12.60 oder bei www.mouser.ch für Fr. 10.25 bestellt werden.

 

 


Mit wenig Aufwand kannst du eine einfache Messstation für die Messung der CO2-Konzentration in deinem Klassenzimmer einrichten.

Am Calliope wird der Sensor mit dem mitgelieferten I2C-Kabel an der I2C- Schnittstelle (rechts vom der USB-Büchse) angeschlossen.


 

Beim Callibot wird diese Schnittstelle auch für die Motorsteuerung verwendet. Da du die Motoren bei der CO2-Messung nicht brauchst, kannst du den Motoranschluss vorübergehend wegnehmen.

 

 

MUSTERBEISPIELE

 

Beispiel 1: CO2 - Konzentration messen und anzeigen


In deinem Programm importierst du das Modul sgp_mini, in welchen das Abfragen der Messwerte des SGP30-Sensors implementiert ist. Der Befehl sgp_mini.getValues() gibt ein Tupel mit zwei Werten zurück:

  • CO2-Konzentration in ppm*
  • TVOC Total Volantile Organic Componds*

Die beiden Werte werden mit print-Befehl im Terminal-Fenster ausgeschrieben. sleep(500) gibt die Messperiode an.

 


Programm:

from calliope_mini import *
import sgp_mini

while True:
    co2, voc = sgp_mini.getValues()
    print ("CO2 = ", co2, "  TVOC = ", voc)   
    sleep(500)
► In Zwischenablage kopieren

Nach dem Programmstart wird der Sensor zuerst Kalibriert und gibt die ersten 20 Sekunden den CO2-Wert 400 zurück. Danach werden die gemessenen CO2-Werte korrekt angezeigt.

* Der CO2-Gehalt in der Luft wird in parts per million, kurz ppm angegeben. SGP30-Sensor gibt die Werte im Bereich 400 - 60000 ppm zurück, wobei bei Werten grösser als 1000, wird die Luft nicht mehr als "frisch" bezeichnet.

* In den Innenräumen gibt es viele Quallen, die Schadstoffe abgeben (Lampen, Bodenbeläge, Reinigungsmittel...). Je nach ihrer Konzentration gibt der Sensor TVOC-Werte im Bereich 0 bis 60 000 zurück. Für den primären Zweck, das Ansteckungsrisiko mit Covid-19 zu reduzieren, hat dieser Messwert keine grosse Bedeutung.

 

Beispiel 2: Ein Messgerät für CO2 Konzentration im Klassenzimmer

Grenzwerte für die Messung der CO2 Konzentration:

  • < 1000 ppm: Luft ist frisch
  • 1000 - 1400 ppm: bald lüften
  • > 1400 ppm: Fenster öffnen

Mit den LEDs auf deinem Calliope kannst für diese Messbereiche verschiedene Symbole anzeigen. Wenn der Grenzwert von 1400 ppm überschritten wird, wird ein Warnsignal abgespielt.

 

Das Programm bleibt auf dem Calliope gespeichert. Du kannst ihn also beim Computer ausstecken und an eine andere Stromquelle, beispielsweise Powerbank, anschliessen.

Programm:

from calliope_mini import *
import sgp_mini
from music import pitch

while True:
    co2, voc = sgp_mini.getValues()
    print ("Co2 = ", co2) 
    if co2 < 1000:
        display.show(Image.YES)
    elif co2 < 1400:
        display.show(Image.ARROW_S) 
    else:
        display.show(Image.NO)      
        pitch(800, 500)      
    sleep(500)
► In Zwischenablage kopieren

 

 

MERKE DIR...

 

Der Sensor misst den CO2-Gehalt in ppm (parts per million) und liefert Messwerte im Bereich 400-60 000. Für Werte < 1000 ist die Luft gut, bei Werten > 1400 ist eine Frischluftzufuhr unbedingt empfohlen. Eine hohe CO2-Konzentration im Raum erhöht das Ansteckungsrisiko mit dem Corona-Virus.

 

 

ZUM SELBST LÖSEN

 

 


1.


Messe die CO2-Werte mit der Messperiode von 2 Sekunden und schreibe die Ergebnisse mit Laufschrift auf dem Calliope-Display.

 
 
 



 

ZUSATZAUFGABE: CO2-SENSOR SELBST ZUSAMMENLÖTEN

 
Falls du Freude an der Elektronik hast, kannst du einen CO2- Sensor verwenden, bei dem alle Elektronik-Komponenten sichtbar sind. Der GY-SPG30 Air Quality Sensor (erhältlich z.B. bei eckstein-shop.de) ist mit dem oben verwendeten SPG30-Sensor kompatibel und kann mir dem gleichen Modul sgp_mini programmiert werden.



 

 


Der Sensor wird mit einem I2C-Kabel angeschlossen, welches am Sensor angelötet werden muss.
Du nimmst ein Grove-Kabel mit einem I2C-Stecker, isolierst die viel dünne Kabel ab und lötest das schwarze Kabel bei GND, das rote bei VCC, das gelbe bei SCL und das weisse bei SDA an.



rot
schwarz
gelb
weiss
 
 


Am Calliope wird der Sensor an der I2C-Schnittstelle (rechts vom der USB-Büchse) angeschlossen.

 

   
12-
Fachliche Hinweise:

Zusatzmodule

Fallst du die neue TigerJython-Version (Version 2.22 [Sep-18-202])installiert hast, wird das Modul sgp_mini beim Flashen automatisch auf den Calliope kopiert. Das Modul sgp_mini gehört zu den Zusatzmodulen und du kannst es sehr einfach nachinstallieren, ohne TigerJython neu installieren zu müssen. Dazu klickst du im TigerJython auf Hilfe/APLU Dokumentation und wählst Calliope/Zusatzmodule/Download. Nach dem Auspacken der Datei cpmodules.zip öffnest du die Datei sgp_mini.py im TigerJython-Editor und wählst Tools/Modul hinunterladen / Editor . Das Modul wird auf dem Calliope gespeichert und kann verwendet werden.