CO2 Sensor

12. CO2 Sensor

TigerJython (ab Version 2.25 [Jan-20-2022] erforderlich.


 

DU LERNST HIER...

 

mit dem 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, 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 micro:bit 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. Das Anschluss Kabel ist in der Lieferung integriert.

 
 


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

 

.

 


Am mico:bit wird der Sensor mit dem mitgelieferten I2C Kabel über einen I2C-Hub angeschlossen. Ein speziell angefertigter I2C-Hub, der am micro:bit angeschraubt werden kann, ist im IoT-Set enthalten. Der I2CHub kann aber auch einzeln für Fr. 6.- bei der TJGroup bestellt werden. Für den Versand in der Schweiz wird Fr. 1.-, aussehalb der Schweiz Fr. 3.- verrechnet.

Die Bestellung erfolgt mit einem EMail an

 

 

MUSTERBEISPIELE

 

Beispiel 1: CO2 Konzentration messen und anzeigen

In deinem Programm importierst du mit import sgp das Modul sgp, in dem SGP30-Sensor und das Abfragen der Messwerte des SGP30-Sensor implementiert ist. Der Befehl sgp.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 microbit import *
import sgp

while True:
    co2, voc = sgp.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. Dann 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 für die Werte grösser als 1000, wird die Luft nicht mehr als frisch bezeichnet.

* In Innenräumen gibt es viele Quallen, die Schadstoffe abgeben (Lampen, Bodenbeläge, Reinigungsmittel...). Der Sensor gibt TVOC-Werte im Bereich 0 bis 60 000 zurück.

 

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

Für die Messung der CO2 Konzentration gelten folgende Grenzwerte:

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

Mit den LEDs auf deinem micro:bit kannst für diese Messbereiche verschiedene Symbole anzeigen. Das Programm bleibt auf dem micro:bit gespeichert. Du kannst ihn also beim Computer ausstecken und an eine andere Stromquelle, beispielsweise Powerbank, anschliessen.

 

Programm:

from microbit import *
import sgp

while True:
    co2, voc = sgp.getValues()
    print ("Co2 = ", co2) 
    if co2 < 1000:
        display.show(Image.YES)
    elif co2 < 1400:
        display.show(Image.ARROW_S) 
    else:
        display.show(Image.NO)      
    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 micro:bit-Display.

 
 
2.

Baue eine CO2-Messanlage, die bei einem CO2-Wert > 1400 einen akustischen Signal abspielt. Micro:bit V2 verfügt über einen Lautsprecher, beim micro:bit V1 musst du wie im Kapitel "Sound" einen Lautsprecher anschliessen. Zum Testen kannst du den Schwellenwert 1400 ppm herabsetzen.

 
 

 

 

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 ist mit dem oben verwendeten SPG30-Sensor kompatibel und kann mir dem gleichen Modul sgp 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 mico:bit wird der Sensor über einen I2C-Hub angeschlossen.

 

12-
Fachliche Hinweise:

Zusatzmodule

Fallst du die neue TigerJython-Version (Version 2.22 [Sep-18-2021])installiert hast, wird das Modul sgp beim Flashen automatisch auf den micro:bit kopiert. Das Modul sgp 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 micro:bit/Zusatzmodule/Download. Nach dem Auspacken der Datei mbmodules.zip öffnest du die Datei sgp.py im TigerJython-Editor und wählst Tools/Modul hinunterladen / Editor . Das Modul wird auf dem micro:bit gespeichert und kann verwendet werden.