Wetterstation: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Zur Navigation springen Zur Suche springen
Oliver.kastner (Diskussion | Beiträge)
Oliver.kastner (Diskussion | Beiträge)
Zeile 12: Zeile 12:
== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung==
== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung==
:Der BBC micro:bit dient als Messgerät für die Luftfeuchtigkeit und Raumtemperatur ohne dabei die CPU Abwärme mit zu messen.
:Der BBC micro:bit dient als Messgerät für die Luftfeuchtigkeit und Raumtemperatur ohne dabei die CPU Abwärme mit zu messen.
::Sobald der micro:bit mit Strom versorgt ist und sich an die Umgebungstemperatur angepasst hat, misst er dauerhaft und zeigt die Messwerte als Graph in der Konsole.
::Sobald der micro:bit mit Strom versorgt ist und sich an die Umgebungstemperatur angepasst hat, misst er dauerhaft und zeigt die Messwerte als Graph in der Konsole des Browsers.
::Wird die Taste A gedrückt, zeigt er den Wert der Temperatur als Zahl.
::Wird die Taste A gedrückt, zeigt er den Wert der Temperatur als Zahl.
::Wird die Taste B gedrückt, zeigt er den Wert der Luftfeuchtigkeit als Zahl.
::Wird die Taste B gedrückt, zeigt er den Wert der Luftfeuchtigkeit als Zahl.

Version vom 30. Dezember 2021, 18:11 Uhr

  Template, muss noch geändert werden

Icon Luftfeuchtigkeit und Raumtemperatur exakt messen, geht das?

Detailansicht der digtalen Schaltung
Detailansicht der digtalen Schaltung
„Sag mal Bernhard, sind dein Augen auch so trocken?“
„Ja, eigentlich schon! Ich glaube, das muss wohl am ständigen Heizen in der kalten Jahreszeit liegen. Was meinst du, Martina?“
„Ja, genau. Das könnten wir doch gleich einmal messen. Meinst du das geht mit dem micro:bit?“
„Martina, das geht schon. Einfach einen externen Sensor an den micro:bit anhängen und schon können wir Luftfeuchtigkeit und Temperatur messen. Mit ein paar Krokoklemmen-Kabeln ist das gleich erledigt.
„Wenn das so einfach geht, dann lass uns das doch gleich ausprobieren, Bernhard. Einverstanden?“

Icon Aufgabenstellung

Der BBC micro:bit dient als Messgerät für die Luftfeuchtigkeit und Raumtemperatur ohne dabei die CPU Abwärme mit zu messen.
Sobald der micro:bit mit Strom versorgt ist und sich an die Umgebungstemperatur angepasst hat, misst er dauerhaft und zeigt die Messwerte als Graph in der Konsole des Browsers.
Wird die Taste A gedrückt, zeigt er den Wert der Temperatur als Zahl.
Wird die Taste B gedrückt, zeigt er den Wert der Luftfeuchtigkeit als Zahl.

<spoiler>

  • Zur Ermittlung der Luftfeuchtigkeit und Temperatur wird eine digitale Schaltung aufgebaut.
  • Dazu wird ein Stromkreis mit Krokoklemmen und Sensoren (Bauteil DHT11/ DHT22) aufgebaut.
  • Der Strom vom micro:bit gelangt über Kabel an die Sensoren im Bauteil und wieder zurück an einen Stromeingang des micro:bit.
  • Es kann nun der Bauteil angesteuert werden und je nach Funktion die aktuelle Temperatur oder die gemessene Luftfeuchtigkeit angezeigt werden.
  • Dieser Wert wird auch als Graph auf Konsole im Browserfenster angezeigt.

</spoiler>

Icon Materialien

  • BBC micro:bit
  • 3 Krokodilklemmen-Kabel (unterschiedliche Farben) <spoiler>Einkaufsvorschlag: erhältlich bei Fa. Conrad</spoiler>
  • 1 digitaler Sensor DHT11/ DHT22 <spoiler>DHT22
    Einkaufsvorschlag: erhältlich bei Fa. Conrad

    ACHTUNG, die Anschlüsse der drei PINs des Sensors können je nach Hersteller variieren!
    Bitte achte darauf, dass die Anschlüsse Minus auf GND und Plus auf 3V angeklemmt werden. Der dritte PIN des Sensors gehört dann auf PIN 0 des micro:bits angelschossen.</spoiler>
  • etwas Zeit bei plötzlichem Temperaturwechsel zur Akklimatisierung

Icon Zeitaufwand

  • ca. 1 Schulstunde zur Erklärung und zum Aufbau und der digitalen Schaltung
  • ca. 1-2 Schulstunden zum Entwickeln des Programmes und für erste Messungen <spoiler>Achtung! Jeweils ca. 5 - 10 Minuten zur Anpassung an die jeweilige Umgebungstemperatur mit einrechnen!</spoiler>

Icon Schwierigkeitsgrad

borderlessborderlessborderless

Icon Kompetenzen

Das solltest du bereits können:

  • eine Zahl aufrunden und abrunden können (Mathematik)
  • eine Zahl um eine Kommastelle nach links und rechts verschieben können (Mathematik)


  • eine Variable erstellen und Werte zuweisen können
  • Programmbefehle den Knöpfen A und B zuordnen können
  • eine Zahl anzeigen können
  • eine Anzeige der LEDs selbst zeichnen können


Du lernst

  • die Steigung einer Geraden mit 2-Punkt-Kalibrierung auszurechnen (Mathematik) <spoiler>Wiki Steigung in 2D</spoiler>
  • das Formulieren und Kodieren von Abläufen in formalen Algorithmen (Informatik)
  • das Arbeiten mit Pins und Krokoklemmen-Kabel (Technisches Werken)


  • Sensordaten analog einzulesen und zu interpretieren
  • mit Variablen zu rechnen durch Anwendung von mathematischen Operationen (+ - x ÷)
  • das Ergebnis einer mathematischen Operation zu runden
  • selbst ermittelte Werte einer Kalibrierung zur Umrechnung von Messwerten einzusetzen

Icon Unterrichtsfächer

INF, Physik, TW

Icon Tipps und Hilfestellung

Ziel

Der micro:bit soll die Umgebungstemperatur und Luftfeuchtigkeit messen und dauerhaft in der Konsole als Graph darstellen. Auf Knopfdruck A erscheint die Temperatur und auf Knopfdruck B die Luftfeuchtigkeit.
<spoiler>

  • Zu Beginn wollen wir nur zwei Widerstandswerte und Temperaturen (innen/ außen) messen
  • Dann berechnen wir die Steigung der Geraden und denn Nullpunkt, was durch diese zwei Messpunkte vordefiniert ist
  • Nach Kalibrierung der Schaltung kann der micro:bit jede beliebige Temperatur messen und anzeigen
  • Verschwende keine Energie und optimiere deinen Code, je weinger Zeilen desto besser</spoiler>

Erforderliche Programmierblöcke

  1. beim Start <spoiler text="Block *">
    leer


    * Der Block "leer" wird systembedingt mit angezeigt. </spoiler>
  2. zeige LEDs <spoiler text="Block *">
    basic.showLeds(`. . . . . . . . . . . . # . . . . . . . . . . . .`)


    * Der Block "beim Start" wird systembedingt mit angezeigt. </spoiler>
  3. pausiere <spoiler text="Block">
    basic.pause()


    * Der Block "beim Start" wird systembedingt mit angezeigt. </spoiler>
  4. wenn Knopf A gedrückt <spoiler text="Block">
    input.onButtonPressed(Button.A, function () {})
    </spoiler>
  5. digitale Werte von Sensor-Pin einlesen (Erweiterung) <spoiler text="Block *">
     </spoiler>
    
  6. zeige Text<spoiler text="Block *">
    basic.showString()


    * Der Block "beim Start" wird systembedingt mit angezeigt. </spoiler>

Eckpfeiler zur Programmierung

  1. Durch Ansteuern des digitalen Sensors über einen Pin übergibt dieser die aktuellen Messwerte an den micro:bit.
  2. Wir lesen danach entweder die Temperatur oder die Luftfeuchtigkeit, und geben diese Werte jeweils auf Knopfdruck aus.
  3. Wenn der Knopf A gedrückt wird soll die Temperatur erscheinen. Und bei Drücken von Knopf B soll die Luftfeuchtigkeit angezeigt werden.
  4. Schritt für Schritt zur Lösung

    Hinweise zur Lösungsfindung und die Lösung findest du auf der Lösungsseite zu diesem Beispiel.

    Icon Präsentation und Reflexion

    1. Stelle dein Ergebnis vor!
    2. Was kann dein Messgerät? Messen andere micro:bits und deren elektronische Temperaturschaltung (Thermistor + Widerstand) gleiche Werte?
    3. Vergleiche die Werte von unterschiedlichen Orten - innen, außen, Schatten, Sonne, Kühlschrank, etc.
    4. Hast du aussagekräftige Werte bekommen? Stimmen die micro:bit Werte mit denen des externen Thermometers halbwegs überein?
    5. Was hat dir bei der Entwicklung deines Produkts gefallen?
    6. Welche Schwierigkeiten hattest du? Wie konntest du sie lösen?
    7. Erläutere, wie dein Programm aussieht!
    8. Was war bei dieser Aufgabe interessant für dich?

    Icon Weiterentwicklung

    • Audioalarm bei Unter- bzw. Überschreiten eines Schwellenwertes (Komfortzone)
    • Smileys bei angenehmen Temperaturen, Eiszapfen und Kochtopf bei Überschreiten der "angenehmen Zone".
    • Temperaturwerte zu anderen micro:bits senden - Außentemperatur, Kühlschranktemperatur, etc.