Anschluss: |
Grove: A0 (C19, C20) |
Schnittstelle: | I²C |
Ausgabewerte: |
|
Dass sich die Umweltfaktoren Temperatur, Luftfeuchtigkeit und CO2-Konzentration infolge des Klimawandels auf der Erde verändern werden, ist heute unumstritten. Mit dem Calliope mini können diese Daten gesammelt und ausgewertet werden. Dieser Sensor kann aber auch dazu dienen die Co2 Konzentration im Klassenraum zu messen oder optimale Wachstumsbedingungen für Zimmer-, oder Gewächshauspflanzen zu schaffen.
Makecode
Zuerst muss das MakeCode-Paket für den Sensor geladen werden. Das funktioniert, indem man auf Fortgeschritten > Erweiterungen klickt und den Sensor aus der Liste der angebotenen Sensoren auswählt oder in der Suchleiste oben den folgenden Link eingibt:
https://github.com/calliope-edu/CO2-Sensor-SCD40
Anschließend tauchen die Blöcke links unter dem Namen SCD40 auf. Es gibt jeweils für die Luftfeuchtigkeit, Temperatur, CO2 Wert einen Ausgabeblock, welche mit Zeige Zahl z.B. ausgelesen werden können.
Außenluft hat üblicherweise eine CO2-Konzentration von etwa 400 ppm.
Python
Paket hinzufügen
Im Pythoneditor musst du zuerst das Modul "Ultraschallsensor" in dein Projekt importieren. Lade dazu die folgende Datei herunter:
SCD40.py vertical_align_bottom
In dem Pythoneditor klicke auf den Reiter "Projekte" und anschließend auf "Öffnen..." um eine Datei in dein Projekt zu laden. Wähle die Datei scd40.py aus und füge sie zu deinem Projekt als weitere Datei hinzu, indem du in dem Dialog "Datei ändern" das kleine Icon klickst und "Datei hinzufügen" auswählst.
Nun ist die Erweiterung hinzugefügt und die kann über from SCD40 import *
im Projekt main.py verwendet werden.

SCD40 programmieren
Über die Funktion get_co2
kann der CO2-Gehalt, mit get_temperature()
die Temperatur und mit get_relative_humidity()
die Luftfeuchtigkeit ausgegeben werden.
Mit print
können die Werte im seriellen Monitor ausgegeben werden. Sollen sie z.B. zusammen mit dem Text CO2 dargestellt werden, müssen sie zuvor mit str()
in einen String umgewandelt werden.
from calliopemini import *
from scd40 import *
while True:
display.scroll(get_co2())
print("CO2:" + str(get_co2()))
print("Temperatur: " + str(get_temperature()))
print("Luftfeuchtigkeit: " + str(get_relative_humidity()))
sleep(1000)
Programm vertical_align_bottom
Projekte die bereits mit dem Sensor/Aktor umgesetzt wurden, findest du hier: