CO2 Sensor

12. CO2 SENSOR

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


 

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 über die 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 solcher Hub, dem am micro:bit angeschraubt werden kann, ist im IoT-Set enthalten. Der I2C-Hub kann aber auch einzeln für Fr. 6.- bei der TigerJython-Group 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.

 

 

ZUSATZINFORMATION

 

Mit einem Grove-Maqueen-Kabel, welches im IoT-Set vorhanden ist, kannst du CO2-Sensor direkt am mbRobot anschliessen. Den Ultraschallsensor kannst du wegnehmen, dann steckst du den Grove-Stecker auf die 4 PINs des mbRobots (das rote Kabel auf +).

 
Die beiden oben stehenden Programme können unverändert verwendet werden (Importzeile: from micro:bit import *).

 

 

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.
Der micro:bitV2 verfügt über

 
 

 

 

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 vier 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.

 

 

Den GY-SPG30 Air Quality Sensor kannst du aber auch mit einem Grove-Kabel direkt am mbRobot anschliessen. Du isolierst die 4 dünne Kabel ab und lötest das rote bei VCC, das schwarze bei GND, das dunkelblaue bei SCL und das violette bei SDA.

Den Grove-Stecker steckts du auf die 4 PINs, die sich auf dem mbRobot hinter dem Ultraschallsensor befinden, ein (das rote Kabel bei +). Dann musst du wieder den micro:bit einstecken.



rot auf VCC
schwarz auf GND
dunkelblau auf SCL
violett auf SDA
 

 

Beim Maqueen Plus steckst du den Grove-Stecker an die PINs 3V3 (rot), GND, SCL und SDA und importierts das Modul microbit (from microbit import *).

Eventuell muss du vorher noch das Modul sgp auf das micro:bit kopieren (Download sgp.zip). Öffne die Datei sgp.py im TigerJython-Editor und wähle "Tools/Modul hinunterladen".

 

 


Warning: include(a/12-1.html): Failed to open stream: No such file or directory in /var/www/html/robotik/mbrobot/co2.inc.php on line 354

Warning: include(): Failed opening 'a/12-1.html' for inclusion (include_path='.:/usr/local/lib/php') in /var/www/html/robotik/mbrobot/co2.inc.php on line 354