Temperatur-Kontrolle: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Zeile 46: | Zeile 46: | ||
== [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen == | == [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen == | ||
Das solltest du bereits können | Das solltest du bereits können: | ||
* Einen Prozentanteil schätzen können (Mathematik) | * Einen Prozentanteil schätzen können (Mathematik) | ||
* Eine Wertetabelle anlegen und auswerten können (Mathematik) | * Eine Wertetabelle anlegen und auswerten können (Mathematik) | ||
<br> | <br> | ||
* Programmbefehle zu Tastenfunktionen A und B zuordnen können | * Eine '''Variable''' zu erstellen | ||
Programmbefehle zu Tastenfunktionen A und B zuordnen können | |||
* Den Beschleunigungssensor anwenden | * Den Beschleunigungssensor anwenden | ||
Zeile 58: | Zeile 59: | ||
* das Arbeiten mit Pins und Krokoklemmen-Kabel | * das Arbeiten mit Pins und Krokoklemmen-Kabel | ||
* '''Sensordaten''' analog einzulesen, zu interpretieren, und umzurechnen | * '''Sensordaten''' analog einzulesen, zu interpretieren, und umzurechnen | ||
* die '''[https://de.wikipedia.org/wiki/Steigung#Steigung_einer_Geraden Steigung einer Geraden]''' mit 2-Punkt-Kalibrierung ausrechnen | * die '''[https://de.wikipedia.org/wiki/Steigung#Steigung_einer_Geraden Steigung einer Geraden]''' mit 2-Punkt-Kalibrierung ausrechnen (Mathematik) <spoiler>[[File:Wiki slope in 2d.svg|thumb left|Wiki Steigung in 2D]]</spoiler> | ||
<spoiler>[[File:Wiki slope in 2d.svg|thumb left|Wiki Steigung in 2D]]</spoiler> | |||
== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer == | == [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer == |
Version vom 22. Dezember 2021, 17:33 Uhr
Raumtemperatur exakt messen? Ist doch eigentlich easy!
- „Sag mal Petra, ist dir auch so heiß wie mir?“
- „Äähhhm, … nein?! Aber wir könnten die Raumtemperatur mit dem microbit checken. Was meinst du, Marcel?“
- „Naja, der hat ja so einen Sensor auf der CPU, glaube ich. Aber wie messen wir dann den Raum?“
- „Marcel, das geht einfach mit einem 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 eletronische 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>
Einkaufsvorschlag: erhältlich bei Fa. Conrad</spoiler>
- 1 Widerstand 10 kOhm (braun, schwarz, orange, gold) <spoiler>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!</spoiler>
Schwierigkeitsgrad
Kompetenzen
Das solltest du bereits können:
- Einen Prozentanteil schätzen können (Mathematik)
- Eine Wertetabelle anlegen und auswerten können (Mathematik)
- Eine Variable zu erstellen
Programmbefehle zu Tastenfunktionen A und B zuordnen können
- Den Beschleunigungssensor anwenden
Du lernst
- vernetztes und fachübergreifendes Denken
- das Formulieren und Kodieren von Abläufen in formalen Algorithmen
- das Arbeiten mit Pins und Krokoklemmen-Kabel
- Sensordaten analog einzulesen, zu interpretieren, und umzurechnen
- die Steigung einer Geraden mit 2-Punkt-Kalibrierung ausrechnen (Mathematik) <spoiler></spoiler>
Unterrichtsfächer
INF, BU, WE
Tipps und Hilfestellung
Ziel
Der 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.
- 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 *">
Start
* Der Block "leer" wird systembedingt mit angezeigt. </spoiler> - Variable <spoiler text="Block *">
let TempWert = 0
* Der Block "beim Start" wird systembedingt mit angezeigt. </spoiler> - pausiere <spoiler text="Block">
basic.pause()
* Der Block "beim Start" wird systembedingt mit angezeigt. </spoiler> - Wenn Knopf A gedrückt <spoiler text="Block">
input.onButtonPressed(Button.A, function () {})
</spoiler> - analoge Werte von Pin in Variable einlesen <spoiler text="Block *">
TempWert = pins.analogReadPin(AnalogPin.P0)
* Der Block "beim Start" wird systembedingt mit angezeigt. </spoiler> - zeige Zahl<spoiler text="Block *">
basic.showNumber()
* Der Block "beim Start" wird systembedingt mit angezeigt. </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 Überschreiten der "angenehmen Zone".
- Temperaturwerte zu anderen micro:bits senden - Außentemperatur, Kühlschranktemperatur, etc.