Station 4 -...

9
1 Informatik Enlightened Station 4 - Farbthermometer Abb. 4: RGB-LED Temperatur zum Leuchten bringen Ihr habt euch also für ein Projekt aus der Kategorie „Die Welt ein bisschen besser machen“ entschieden. Warum dieses Projekt die Welt besser macht? Wie viele Menschen haben sich schon die Finger verbrannt, weil die Herdplatte noch heiß war? Oder haben angewidert das Gesicht verzogen, weil der Tee schon kalt war? Das alles passiert nur weil der Mensch Temperatur nicht sehen kann. Das könnt ihr jetzt ändern! Eure Aufgabe heute ist es, ein Thermometer zu konstruieren, das mittels verschiedener Farben anzeigt welche Temperatur gerade herrscht. Farbmischung Aufbau der Schaltung Eure Schaltung beinhaltet folgende Elemente: 3x 220 Ω Widerstand 1x Temperaturfühler LM35 1x RGB-LED 4 gelbe lange, je 1 blaues und rotes kurzes und langes Kabel RGB-LEDs RGB-LEDs sehen zwar aus wie normale LEDs (die ihr ja aus dem Einstiegsprojekt kennt), aber in Wirklichkeit verstecken sich darin drei verschiedene LEDs! Nämlich eine Rote, eine Grüne und eine Blaue LED, daher auch der Name RGB-LED. Das wirft natürlich die Frage auf, warum sie keine sechs Beinchen, sondern nur vier haben. Das liegt daran, dass der Hersteller die Minus-Pole schon im Gehäuse verbunden hat. Hier muss das längste Beinchen mit dem Minuspol verbunden werden. Legt ihr die LED so vor euch, dass das längste Beinchen an dritter Stelle liegt, könnt ihr im Bild ablesen, welches Beinchen zum Plus-Pol welcher Farbe gehört. Diese drei Farben reichen um alle sichtbaren Farben darzustellen. Doch dazu später mehr. Abb. 1: Einige LEDs Abb. 2: Ein Brunnen mit LEDs verbaut Abb. 3: Widerstand, Temperaturfühler und RGB-LED

Transcript of Station 4 -...

Page 1: Station 4 - Farbthermometerschuelerlabor.informatik.rwth-aachen.de/sites/default/files/dokument… · 2 Informatik Enlightened Station 4 - Farbthermometer Eure ToDo’s: 1. Als erstes

1

Informatik Enlightened

Station 4 - Farbthermometer

Abb. 4: RGB-LED

Temperatur zum Leuchten bringen

Ihr habt euch also für ein Projekt aus der Kategorie „Die Welt

ein bisschen besser machen“ entschieden. Warum dieses

Projekt die Welt besser macht? Wie viele Menschen haben sich

schon die Finger verbrannt, weil die Herdplatte noch heiß war?

Oder haben angewidert das Gesicht verzogen, weil der Tee

schon kalt war? Das alles passiert nur weil der Mensch

Temperatur nicht sehen kann. Das könnt ihr jetzt ändern!

Eure Aufgabe heute ist es, ein Thermometer zu konstruieren,

das mittels verschiedener Farben anzeigt welche Temperatur

gerade herrscht.

Farbmischung

Aufbau der Schaltung

Eure Schaltung beinhaltet folgende Elemente:

3x 220 Ω Widerstand

1x Temperaturfühler LM35

1x RGB-LED

4 gelbe lange, je 1 blaues und rotes kurzes und langes Kabel

RGB-LEDs

RGB-LEDs sehen zwar aus wie normale LEDs (die ihr ja aus dem Einstiegsprojekt kennt), aber in

Wirklichkeit verstecken sich darin drei verschiedene LEDs! Nämlich eine Rote, eine Grüne und

eine Blaue LED, daher auch der Name RGB-LED. Das wirft natürlich die Frage auf, warum sie

keine sechs Beinchen, sondern nur vier

haben. Das liegt daran, dass der Hersteller

die Minus-Pole schon im Gehäuse

verbunden hat.

Hier muss das längste Beinchen mit dem

Minuspol verbunden werden. Legt ihr die

LED so vor euch, dass das längste Beinchen

an dritter Stelle liegt, könnt ihr im Bild

ablesen, welches Beinchen zum Plus-Pol

welcher Farbe gehört.

Diese drei Farben reichen um alle sichtbaren

Farben darzustellen. Doch dazu später mehr.

Abb. 1: Einige LEDs

Abb. 2: Ein Brunnen mit LEDs verbaut

Abb. 3: Widerstand,

Temperaturfühler

und RGB-LED

Page 2: Station 4 - Farbthermometerschuelerlabor.informatik.rwth-aachen.de/sites/default/files/dokument… · 2 Informatik Enlightened Station 4 - Farbthermometer Eure ToDo’s: 1. Als erstes

2

Informatik Enlightened

Station 4 - Farbthermometer

Eure ToDo’s:

1. Als erstes verbindet ihr die Plus- und Minus-Leiste des Steckbretts mit 5V bzw. GND auf

dem Arduino, so wie ihr es aus dem Einstiegsprojekt kennt.

2. Steckt die RGB-LED jetzt so in das Steckbrett, dass der Minus-Pin in der Minus-Leiste des

Steckbretts steckt. Die anderen Pins kommen jeweils in eine eigene Reihe des

Steckbretts.Anschließend werden die Reihen jeweils mit einem Widerstand mit der

anderen Seite des Steckbretts verbunden. Dort könnt ihr auch schon drei gelbe

Steckkabel einstecken, das obere Ende hängt aber erstmal in der Luft.

3. Nachdem ihr den Arduino mit dem Computer verbunden habt, könnt ihr auch

schon loslegen!

Verbindet die Steckkabel jeweils mit der Plus-Leiste und notiert auf der

nächsten Seite eure Beobachtungen!

Abb. 5: Komplette Schaltung

Page 3: Station 4 - Farbthermometerschuelerlabor.informatik.rwth-aachen.de/sites/default/files/dokument… · 2 Informatik Enlightened Station 4 - Farbthermometer Eure ToDo’s: 1. Als erstes

3

Informatik Enlightened

Station 4 - Farbthermometer

Verbundenes Kabel Farbe der LED

Links

Mitte

Rechts

Links & Mitte

Links & Rechts

Mitte & Rechts

Links & Mitte & Rechts

Wie kann es sein, dass das Ergebnis überhaupt nichts mit dem zu tun hat, was ihr im

Kunstunterricht über Farbmischung gelernt habt?

Additive Farbmischung

Aus dem Kunstunterricht kennt ihr ja den guten alten Malkasten.

Wenn ihr dort die Farben Blau und Gelb mischt und erhaltet ihr Grün.

Das funktioniert, weil sich das weiße Licht aus allen Farben zusammensetzt. Die Farben aus dem

Malkasten filtern bestimmte Anteile aus dem Licht, so dass bei Mischung mehrere Anteile

wegfallen. Mischt man alle Farben, so wird jeder Anteil gefiltert, das Resultat ist schwarz.

Im Gegensatz zu diesem sogenannten subtraktiven Farbmodell nehmt ihr

bei RGB-LEDs kein Licht weg, sondern mischt neues dazu. Mischt man alle

Anteile, so erhält man hier weißes Licht. Die Grundfarben

hier sind Rot, Grün und Blau. Mit diesen lassen sich alle

Farben des sichtbaren Lichts erzeugen.

Dieses Prinzip machen sich auch Fernseher und Monitore

zu nutze. Betrachtet ihr den Bildschirm aus der Nähe, so

seht ihr, dass auch dieser sich aus winzigen roten, grünen und blauen

Bildpunkten zusammen.

Natürlich macht es Sinn, die RGB-LED mit dem Arduino zu steuern, statt immer Kabel umstecken

zu müssen. Verbindet also die Kabel jetzt nicht mit der Plus-Leiste, sondern mit den digitalen

Pins 9 (Blau), 10 (Grün) und 11 (Rot) am Arduino.

9,10 und 11 sind Spezial-

Pins, zu erkennen an der

kleinen Schlange ~

Abb. 6:

Farbmischung

Abb. 7: Monitorbild

Page 4: Station 4 - Farbthermometerschuelerlabor.informatik.rwth-aachen.de/sites/default/files/dokument… · 2 Informatik Enlightened Station 4 - Farbthermometer Eure ToDo’s: 1. Als erstes

4

Informatik Enlightened

Station 4 - Farbthermometer

Jetzt geht es daran, mit eurem Vorwissen aus dem Einstiegsprojekt

die drei LEDs ein- und auszuschalten!

Legt dazu einen neuen Sketch an, erstellt das Grundgerüst und speichert alles unter einem

sinnvollen Namen!

Eure ToDo’s:

Hier nochmal eine Checkliste:

1. Ihr müsst für 3 LEDs auch 3 Variablen im Bereich Einstellungen benennen. Der Typ ist

.

2. Die LEDs sind an Ausgängen angeschlossen ( ).

3. Schaltet die LEDs nacheinander und in Kombinationen an und aus ( ).

4. Benutzt zwischen den Schaltvorgängen,

um die Unterschiede zu sehen.

5. Speichern und ausprobieren ;-)

Mehr als nur drei Farben Wie ihr ja bereits an der Tabelle auf Seite 2 gesehen

habt, können RGB-LEDs noch mehr als nur drei Farben darstellen. Dazu müsst ihr einfach 2 oder

auch 3 der eingebauten LEDs gemeinsam anschalten.

Eure ToDo’s:

1. Speichert euren bisherigen Sketch unter einem neuen Namen ab.

2. Verändert ihn nun so, dass eure RGB-LEB ein Farbenspiel aus

rot, grün, blau, gelb, pink, türkis und weiß

aufführt.

3. Testest euer Programm und das Speichern nicht vergessen.

All diese Farben könnt ihr später nutzen, um verschiedene Temperaturen darzustellen. So sieht

selbst eure kleine Schwester auf den ersten Blick den Unterschied zwischen warm und kalt!

Die Temperatur

Es gibt viele verschiedene elektronische Bauteile, die Temperaturen messen können. Der LM35

ist eines davon. Auch wenn er nicht danach aussieht, beherbergt er eine komplexe Schaltung,

die euch die Arbeit deutlich erleichtert.

Abb. 8: Verschiedenfarbige LEDs und eine RGB-LED

Page 5: Station 4 - Farbthermometerschuelerlabor.informatik.rwth-aachen.de/sites/default/files/dokument… · 2 Informatik Enlightened Station 4 - Farbthermometer Eure ToDo’s: 1. Als erstes

5

Informatik Enlightened

Station 4 - Farbthermometer

LM35

Der LM35 hat drei Beinchen. Die komplexe Schaltung im

Inneren muss mit Strom versorgt werden, hierfür dienen die

beiden äußeren Beinchen. Zeigt die flache Seite zu euch, so

muss das linke Beinchen mit dem 5V-Anschluss (also der

Plus-Leiste) verbunden werden, das rechte Beinchen

verbindet ihr mit GND (also der Minus-Leiste).

Wenn der LM35 furchtbar heiß wird, habt ihr ihn falsch herum verbaut.

Zieht dann zügig den Stecker (nicht den LM35, sonst verbrennt

ihr euch die Finger!) und korrigiert das.

Der mittlere Pin erfüllt die eigentliche Funktion des Temperaturmessers:

Pro 1 °C liegt hier eine Spannung von 10 mV an. Bei 20 °C liegen also 200

mV an.

Verbunden wird der mittlere Pin des LM35 mit einem analogen Eingang auf dem Arduino.

Notiert hier welchen ihr gewählt habt:

Eure ToDo’s:

1. Damit ihr jetzt direkt mit dem Programmieren anfangen könnt, legt ihr einen neuen Sketch (mit Grundgerüst) an und speichert ihn unter einem sinnvollen Namen.

2. Kopiert die Variablen für die RGB-LED aus dem vorherigen Sketch. Weist ihnen auch hier

in den richtigen Typ zu.

3. Legt eine weitere -Variable für den Pin des Temperatursensors an. Die analogen

Eingänge des Arduino werden mit der Funktion

ausgelesen. Diese Funktion liefert Werte zwischen 0 und 1023. 0 bedeutet, dass keine

Spannung anliegt; bei 1023 liegen volle 5 Volt an.

4. Bevor es weitergeht, speichert ihr den Sensorwert am besten in einer weiteren

Variablen. Der Sensor liefert nur ganze Zahlen, also braucht ihr eine Variable vom Typ

. Weist dieser in den Sensorwert zu.

Euch stehen also folgende Fakten zur Verfügung:

Ein Sensorwert zwischen 0 und 1023

Eine Skala der Spannung von 0 bis 5 V

Ein Sensor, der 10 mV, also 0,01V pro °C liefert

A__

Abb. 9:

LM35

Abb. 10: Schaltung mit

LM35

Page 6: Station 4 - Farbthermometerschuelerlabor.informatik.rwth-aachen.de/sites/default/files/dokument… · 2 Informatik Enlightened Station 4 - Farbthermometer Eure ToDo’s: 1. Als erstes

6

Informatik Enlightened

Station 4 - Farbthermometer

Ihr ahnt es vielleicht schon: Da steht eine Menge umrechnen an! Aber keine Sorge, das

wird jetzt Schritt für Schritt erledigt.

Neben den Variablen für die Pins und dem Sensorwert braucht ihr noch zwei weitere

Variablen. Diese sollen die Spannung und die Temperatur speichern. Um die Temperatur

zu errechnen, müsst ihr wissen, wieviel Spannung am Sensor anliegt. Dafür müsst ihr den

Sensorwert (der ja zwischen 0 und 1023 liegt) in die Spannung (diese geht von 0V bis 5V)

umrechnen. Dies gelingt euch mit folgender Formel:

5. Da das Ergebnis einer Division häufig eine Kommazahlen ist, braucht ihr einen neuen Typ

für diese Variablen: Dieser heißt float. Ihr erstellt diese Variablen also im Bereich

Einstellungen mit den Zeilen

6. Speichert mit Hilfe der Formel die anliegende Spannung in der entsprechenden

Variablen.

Der Sensor liefert 0,01 Volt pro °C, und da ihr jetzt die Spannung kennt, könnt ihr diese

durch den Umrechnungsfaktor 0,01 teilen und habt die Temperatur.

Wer in Mathe gut aufgepasst hat, der weiß, dass geteilt durch 0,01 das gleiche ist wie mal

100, daher sieht die Formel jetzt folgendermaßen aus:

7. Übertragt auch diese Umrechnung in euren Sketch.

Wenn ihr die Temperatur berechnet, habt ihr nichts davon, solange sie nicht ausgegeben

wird. Zur Ausgabe habt ihr im Einstiegsprojekt ein Werkzeug kennengelernt: Den

Seriellen Monitor.

Zur Erinnerung die wichtigsten Befehle:

8. Startet den Seriellen Monitor in und gebt in den Sensorwert, die

Spannung und auch die Temperatur aus.

Also, das war doch jetzt ziemlich viel auf einmal. Schaut mal auf die Checkliste auf der nächsten

Seite, ob ihr auch an alles gedacht habt!

5.0 statt 5 sagt dem Arduino,

dass er mit Kommazahlen

rechnen soll

Den ∙ sucht ihr auf eurer

Tastatur vergeblich!

Programmier-sprachen nutzen

den * als Mal.

Page 7: Station 4 - Farbthermometerschuelerlabor.informatik.rwth-aachen.de/sites/default/files/dokument… · 2 Informatik Enlightened Station 4 - Farbthermometer Eure ToDo’s: 1. Als erstes

7

Informatik Enlightened

Station 4 - Farbthermometer

Eure Checkliste

1. Habt ihr euren Sketch gespeichert?

2. Habt ihr im Bereich Einstellungen alle Variablen eingefügt und den richtigen Typ

angegeben?

[Hinweis: int-Variablen für die drei LED-Pins, den analogen Pin und den Sensorwert, float

für Temperatur & Spannung]

3. Haben die Pin-Variablen den richtigen Wert?

4. Nun zu :

a. Der pinMode muss für analoge Eingänge nicht festgelegt werden, für die LED-Pins

aber schon.

b. Habt ihr den Seriellen Monitor gestartet?

5. In :

a. Wird der Wert des analogen Eingangs gelesen?

b. Habt ihr die Formeln für Spannung und Temperatur richtig übertragen?

c. Werden die Ergebnisse auf dem Seriellen Monitor ausgegeben?

Abschließend sagt ihr dem Arduino noch mit (1000), dass es euch reicht, wenn er die

Temperatur einmal pro Sekunde überprüft.

Es ist an der Zeit, den Sketch zu testen! Schließt den Arduino über den USB-Anschluss an den

Laptop an und startet die Übertragung. Schaut euch auf dem Seriellen Monitor die Werte an und

vervollständigt diese Tabelle:

Temperatur Spannung Sensorwert

Raumluft

Finger

Die letzten beiden Zeilen könnt ihr nutzen, wenn ihr einen Fön oder einen Lüfter zur

Verfügung habt.

Das Farbthermometer

Funktioniert alles? Gut, jetzt habt ihr schon alles beisammen, um Temperaturen zu messen! Und

ihr habt eine RGB-LED, mit der ihr mehrere Farben darstellen könnt. Ihr habt also alles, um die

Temperatur anzuzeigen.

Was haltet ihr davon, die LED bei Raumtemperatur blau leuchten zu lassen? Wenn es wärmer

wird vielleicht über gelb nach rot zu wechseln? Nutzt die folgende Tabelle, um zu notieren, bei

welcher Temperatur ihr welche Farbe anzeigen wollt! Und natürlich auch welche der drei LEDs

dazu leuchten muss.

Page 8: Station 4 - Farbthermometerschuelerlabor.informatik.rwth-aachen.de/sites/default/files/dokument… · 2 Informatik Enlightened Station 4 - Farbthermometer Eure ToDo’s: 1. Als erstes

8

Informatik Enlightened

Station 4 - Farbthermometer

Temperatur Farbe R(ot) G(rün) B(lau)

Klingt nach einem Plan! Allerdings muss euer Sketch dafür noch ein wenig erweitert werden.

if-Anweisungen mit Bedingungen für Fortgeschrittene

Eine Bedingung muss nicht immer prüfen, ob zwei Dinge den gleichen Wert haben (zur

Erinnerung: == ), sondern auch ein Vergleich ob etwas kleiner (<), größer (>) oder

kleiner/größer gleich (<= bzw. >=) ist.

Mit „ “ könnt ihr auch mehr als eine Bedingung gleichzeitig abfragen. Verknüpft diese

Bedingungen dazu mit einem „&&“. Dabei müsst ihr aber um die einzelnen Bedingungen

Klammern schreiben. So wird die Anweisung nur ausgeführt, wenn beide Bedingungen

zutreffen.

Eure ToDo’s:

1. Erstellt für jeden Temperaturbereich eine -Anweisung. Dabei braucht der unterste und

der oberste Bereich jeweils nur eine Bedingung, alle Bereiche dazwischen jedoch zwei.

2. Lasst je nach Bereich die richtigen LEDs leuchten. Hinweis: Vergesst nicht die jeweils

anderen LEDs dabei wieder auszuschalten.

Wenn alles geklappt hat, sollte es bei euch etwa wie in den beiden Bildern funktionieren!

Wenn nicht, checkt noch mal eure if-Bedingungen und ob ihr jeweils die richtigen

LEDs ein- und ausgeschaltet habt!

Auf der nächsten Seite könnt ihr sehen, wie so eine komplette Schaltung aussehen könnte!

Page 9: Station 4 - Farbthermometerschuelerlabor.informatik.rwth-aachen.de/sites/default/files/dokument… · 2 Informatik Enlightened Station 4 - Farbthermometer Eure ToDo’s: 1. Als erstes

9

Informatik Enlightened

Station 4 - Farbthermometer

Alles klappt? Herzlichen Glückwunsch! Wem das noch nicht genug

ist, der kann sich noch an die Bonus-Aufgaben herantrauen. Fragt

einfach die Betreuer nach dem Bonus-Blatt.

Quellenverzeichnis:

Abb. 1 –

Abb. 2 –

Abb: 3, 9 – Quelle: Screenshots der Fritzing-Software (http://fritzing.org)

Abb. 4, 5, 8, 10, 11, 12 – Quelle: InoSphere

Abb. 6 –

Abb. 7 – Quelle: Wikipedia.org, Author: E. Schütte

Alle weiteren Grafiken/Icons – Quelle: InfoSphere

Abb. 11 und 12: Komplette Schaltungen