Temperatur-Kontrolle: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Zeile 86: | Zeile 86: | ||
<li>[[Schleifen|beim Start]] <spoiler text="Block"> [[Datei:beim_start_leer.png|150px]] </spoiler> | <li>[[Schleifen|beim Start]] <spoiler text="Block"> [[Datei:beim_start_leer.png|150px]] </spoiler> | ||
<li>[[Variablen|Variable]] <spoiler text="Block"> [[Datei:setze_TempWert0.png|300px]] </spoiler> | <li>[[Variablen|Variable]] <spoiler text="Block"> [[Datei:setze_TempWert0.png|300px]] </spoiler> | ||
<li>pausiere <spoiler text="Block"> [[Datei:Pausiere_100.png| | <li>pausiere <spoiler text="Block"> [[Datei:Pausiere_100.png|300px]] </spoiler> | ||
<li>[[Schleifen|wenn Knopf A gedrückt]] <spoiler text="Block"> [[Datei:wenn_knopf_a.png]] </spoiler> | <li>[[Schleifen|wenn Knopf A gedrückt]] <spoiler text="Block"> [[Datei:wenn_knopf_a.png|300px]] </spoiler> | ||
<li>analoge Werte von Pin in [[Variablen|Variable]] einlesen <spoiler text="Block"> [[Datei:setze_TempWert_analoge_werte_pin0.png]] </spoiler> | <li>analoge Werte von Pin in [[Variablen|Variable]] einlesen <spoiler text="Block"> [[Datei:setze_TempWert_analoge_werte_pin0.png|400px]] </spoiler> | ||
<li>zeige Zahl<spoiler text="Block"> [[Datei:zeige_zahl0.png]] </spoiler> | <li>zeige Zahl<spoiler text="Block"> [[Datei:zeige_zahl0.png|300px]] </spoiler> | ||
</ol> | </ol> | ||
Version vom 18. Februar 2022, 16:02 Uhr
Raumtemperatur exakt messen? Ist doch eigentlich easy!
- „Sag mal Petra, ist dir auch so heiß wie mir?“
- „Äähhhm, … nein?! Aber vielleicht sollen wir mal die Raumtemperatur mit dem BBC micro:bit checken. Was meinst du, Marcel?“
- „Ja, genau. Der micro:bit hat ja einen Temperatursensor eingebaut, den könnten wir doch dazu verwenden. Oder?“
- „Hmmm, wart mal. Aber sitzt der Sensor nicht direkt auf der CPU und erwärmt sich dadurch sobald der micro:bit Strom hat?“
- „Oh, stimmt und dann messen wir ungenau. Aber wie messen wir dann die Raumtemperatur ohne CPU Abwärme, Petra?“
- „Marcel, ich glaube ich habe schon eine Idee! ...
- Dazu benötigen wir einen externen Sensor, der weit genug von der CPU entfernt ist - z.B. mit Krokoklemmen-Kabeln.
- Lass uns das doch gleich ausprobieren, einverstanden?“
Aufgabenstellung
Der BBC micro:bit dient als Messgerät für die echte 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 (ca. 5-10 Min.), misst er diese dauerhaft.
- Wird die Taste B gedrückt, zeigt er den Messwert der Spannung (0 - 3 Volt) als Zahl an.
- Durch Erfassen von zwei Messpunkten, kann die elektronische Schaltung kalibriert werden.
- Nach Kalbrierung und Umformung in eine Temperaturberechnung kann die Temperatur in Grad Celsius angezeigt werden.
- Bei Drücken der Taste A zeigt der micro:bit die umgerechnete Temperatur an.
<spoiler>
- Zur Ermittlung der Temperatur wird eine analoge Schaltung (vgl. Thermometer mit Quecksilber) aufgebaut.
- Dazu wird ein Stromkreis mit Krokoklemmen und Sensoren aufgebaut.
- Der Strom vom micro:bit gelangt über Kabel und Sensoren vom Stromausgang an einen Stromeingang des micro:bit.
- Es kann nun temperaturabhängig gemessen werden, wie viel davon vom ursprünglichen Strom tatsächlich in den micro:bit zurück kommt.
- Dieser Wert wird als auf der LED Matrix angezeigt und nach Kalibrierung in eine Temperatur umgewandelt angezeigt.
</spoiler>
Materialien
- BBC micro:bit
- 3 Krokodilklemmen-Kabel (unterschiedliche Farben) <spoiler>Einkaufsvorschlag: erhältlich bei Fa. Conrad</spoiler>
- 1 Thermistor 10 K <spoiler> Hier geht's zur Erklärung des Bauteils!
Einkaufsvorschlag: erhältlich bei Fa. Conrad</spoiler>
- 1 Widerstand 10 kOhm (braun, schwarz, orange, gold) <spoiler> Hier geht's zur Erklärung des Bauteils!
Farbcodeerklärung: https://www.conrad.at/de/ratgeber/technik-einfach-erklaert/widerstands-farbcode.html#beispiel
Einkaufsvorschlag: erhältlich bei Fa. Conrad</spoiler>
- 1 Thermometer zum Kalibrieren der analogen Schaltung
- 2 unterschiedliche Temperaturmessungen (mind. 10 Grad Celsius Unterschied) z.B. Zimmer und Kühlschrank
- etwas Zeit bei plötzlichem Temperaturwechsel zur Akklimatisierung (5-10 Min.)
Zeitaufwand
- ca. 2 Schulstunden zum Aufbau der Schaltung und Kailbrieren des Messaufbaus <spoiler>Die Bestimmung der Steigung einer Geraden, sollte extra vorbereitet und zeitlich vor diesem Experiment durchgenommen werden!</spoiler>
- 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! Warum das? Teewasser, beispielsweise, wird auch nicht augenblicklich heiß, wenn es auf eine aufgeheizte Herdplatte gestellt wird. Und, es dauert ebenfalls ein weilchen, bis das heiße Wasser wieder auf Umgebungstemperatur abkühlt. Durch die Trägheit der verwendeten Materialen ist es notwendig zusätzliche Zeit einzuplanen!
Also, "abwarten und Tee trinken"! ;-)</spoiler>
Schwierigkeitsgrad
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></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
Unterrichtsfächer
INF, M, Physik, TW
Tipps und Hilfestellung
Ziel
Der BBC micro:bit soll die Umgebungstemperatur messen, den Messwert auf Knopfdruck anzeigen und die daraus errechnete Temperatur auf Druck des anderen Knopfs im Display anzeigen.
<spoiler>
- Zu Beginn wollen wir nur zwei Widerstandswerte (0-1023) und Temperaturen (innen/ außen) mit dem Thermometer messen, siehe Thermometer_kalibrieren.
- Durch Drücken des Knopfs B wird der aktuelle Messwert (0-1023) angezeigt. Dies wird für die Innen- und Außentemperatur (oder Kühlschrank) gemacht.
- Dann berechnen wir die Steigung der Geraden aus den zwei Messpunktwerten und denn Nullpunkt z.B. mit Geogebra Kalibrierung
- Nach Kalibrierung der Schaltung kann der micro:bit jede beliebige Temperatur messen und anzeigen (Wartezeit für Thermistor ca. 5-10 Min.)
- Durch Drücken des Knopfs A wird die umgerechnete Temperatur angezeigt.
- Verschwende keine Energie und optimiere deinen Code, je weniger Zeilen desto besser. Probiere so wenig Zeilen wie möglich zu verwenden.
</spoiler>
Erforderliche Programmierblöcke
- beim Start <spoiler text="Block"> </spoiler>
- Variable <spoiler text="Block"> </spoiler>
- pausiere <spoiler text="Block"> </spoiler>
- wenn Knopf A gedrückt <spoiler text="Block"> </spoiler>
- analoge Werte von Pin in Variable einlesen <spoiler text="Block"> </spoiler>
- zeige Zahl<spoiler text="Block"> </spoiler>
Eckpfeiler zur Programmierung
- Durch Auslesen des analogen Spannungswertes eines Pins kann der micro:bit als Messgerät verwendet werden.
- Die Spannung des micro:bits von 3 Volt wird durch die elektronische Schaltung (Thermistor + Widerstand) und etwas Wartezeit (ca. 5-10 Min.) auf die aktuelle Temperatur eingestellt.
- Dann lesen wir die Spannung an PIN 0 aus und bilden diesen Wert in einer Variable ab.
- Den Spannungswert der Variablen geben wir zur Kalibrierung bei Drücken des Knopfs B im Display aus.
- Die eingelesene Variable muss nur noch in eine Temperatur umgewandelt werden,
- Der umgerechnete Wert wird durch Drücken des Knopfs A im Display angezeigt.
Schritt für Schritt zur Lösung
- Hinweise zur Lösungsfindung und die Lösung findest du auf der Lösungsseite zu diesem Beispiel.
Präsentation und Reflexion
- Stelle dein Ergebnis vor!
- Was kann dein Messgerät? Messen andere micro:bits und deren elektronische Temperaturschaltung (Thermistor + Widerstand) gleiche Werte?
- Vergleiche die Werte von unterschiedlichen Orten - innen, außen, Schatten, Sonne, Kühlschrank, etc.
- Hast du aussagekräftige Werte bekommen? Stimmen die micro:bit Werte mit denen des externen Thermometers halbwegs überein?
- Was hat dir bei der Entwicklung deines Produkts gefallen?
- Welche Schwierigkeiten hattest du? Wie konntest du sie lösen?
- Erläutere, wie dein Programm aussieht!
- Was war bei dieser Aufgabe interessant für dich?
Weiterentwicklung
- Audioalarm bei Unter- bzw. Überschreiten eines Schwellenwertes (Komfortzone)
- Smileys bei angenehmen Temperaturen, Eiszapfen und Kochtopf bei Unter- bzw. Überschreiten der "angenehmen Zone".
- Temperaturwerte zu anderen micro:bits senden - Außentemperatur, Kühlschranktemperatur, etc.