5000-4 HB_DIN-A5_Rücken_5mm.qxp_Layout 1 22.03.17 12:18 Seite 1 Selber programmieren hat noch nie so viel Spaß gemacht … … wie mit den Arduino-Projekten für Young Makers. Denn mit diesem Paket geht es gleich ans Eingemachte: Schon bald blinkt die erste LED, und kurz darauf hast du eine ganze Ampelanlage aufgebaut und programmiert.
15000-4 Titelei.qxp 22.03.
15000-4 Titelei.qxp 22.03.
15000-4 Titelei.qxp 22.03.
15000-4 Titelei.qxp 22.03.17 12:15 Seite 4 Liebe Kunden! Dieses Produkt wurde in Übereinstimmung mit den geltenden europäischen Richtlinien hergestellt und trägt daher das CE-Zeichen. Der bestimmungsgemäße Gebrauch ist in der beiliegenden Anleitung beschrieben. Bei jeder anderen Nutzung oder Veränderung des Produktes sind allein Sie für die Einhaltung der geltenden Regeln verantwortlich. Bauen Sie die Schaltungen deshalb genau so auf, wie es in der Anleitung beschrieben wird.
Inhaltsverzeichnis 1 Nano-Platine und PC vorbereiten .................................................. 6 Arduino und kompatible Platinen ............................................................. 7 Was du sonst noch brauchst ..................................................................... 7 Software installieren ................................................................................. 8 2 Die Teile im Paket ..........................................................................
Nano-Platine und PC vorbereiten 1 Das Programmieren von Mikrocontrollern war früher nur etwas für Ingenieure und Informatiker. Arduino ermöglicht dank übersichtlicher Hardware und einfach zu verstehender Software auf einmal jedem den Einstieg in die Mikrocontrollertechnik. Die Arduino-Plattform, eine Serie kleiner, kostengünstiger Platinen auf der Basis von Atmel-Mikrocontrollern, wurde ursprünglich für Bastler und Künstler entwickelt, die damit interaktive elektronische Objekte schufen.
der Maker-Szene zum allgemeinen Standard für mikrocontrollergesteuerte Hardwareprojekte geworden. ARDUINO UND KOMPATIBLE PLATINEN Die Arduino-Plattform bietet mittlerweile eine große Vielfalt von Platinen für unterschiedliche Anwendungszwecke. Neben dem Original-Arduino gibt es jede Menge kompatibler Platinen, die nicht nur fast gleich aussehen, sondern auch wie der echte Arduino funktionieren. Für die Experimente ist in diesem Paket eine kompatible Nano-Platine enthalten.
Nano-Platine und PC vorbereiten 1 Linux und Mac OS angeboten. Eine App für Chromebooks befindet sich noch in der Experimentierphase, funktioniert aber schon ziemlich zuverlässig. USB-KABEL Die Verbindung zwischen PC und Nano erfolgt über ein USB-Kabel mit einem MicroUSB-Stecker auf einer Seite. Du brauchst dir ein solches Kabel nicht extra zu besorgen, fast alle modernen Smartphones verwenden diesen Steckertyp.
Schließe den Nano über das USB-Kabel am PC an. Verwende nach Möglichkeit einen USB2.0-Anschluss, da es an USB-3.0Anschlüssen eher zu Verbindungsproblemen kommen kann. Anfrage der Windows Benutzerkonnutzerkon t erkon tensteuerung bestätigt werden. Solltest du nicht mit Administratorrechten angemeldet sein, muss ein Administrator diese Anfrage bestätigen. Installiere den Treiber mit einem Doppelklick auf die Datei CH341SER.EXE E aus dem entpackten Download.
Nano-Platine und PC vorbereiten 1 DIE PROGRAMMIERSPRACHE SNAP4ARDUINO Für die Projekte im Paket verwenden wir die besonders einfach zu erlernende Programmiersprache Snap4Arduino. Lade dir die aktuelle Version bei snap4arduino.org herunter oder verwende einfach die Datei Snap4Arduino.exe aus den Downloads zum Paket. Snap4Arduino verwendet wie viele andere interaktive Programme die StandardFirmata als Grundlage 10 zur Kommunikation zwischen PC und Arduino.
palette Arduino und d klicke auf Mit Arduino verbinden. Wähle dann den vom Nano verwendeten Port aus. Snap4Arduino unterstützt mehrere Arduinos an einem PC. Wenn mehrere Ports angezeigt werden, ist meistens der mit der höheren Nummer der richtige. Probiere es einfach aus. Bestätige die erfolgreiche Verbindung mit einem Klick auf OK. 11 15000-4 Arduino für Young Makers_NEU03.indd 11 17.03.
2 Die Teile im Paket In diesem Kapitel erhältst du das nötige Expertenwissen, um mit den Bauteilen in diesem Paket perfekt umgehen zu können. 1 Arduino-kompatible Nano-Platine 1 Steckbrett 2 LEDs grün (mit Vorwiderstand) d) 2 LEDs rot (mit Vorwiderstand) 2 LEDs gelb (mit Vorwiderstand) 1 20-MOhm-Widerstand 12 Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 12 17.03.
1 Potenziometer 15 kOhm 2 2 Krokodilklemmenkabel Knete in verschiedenen Farben (die Farben der Knete können abweichen) 1 Schaltdraht (isoliert) 1 blanker Schaltdraht 13 15000-4 Arduino für Young Makers_NEU03.indd 13 17.03.
2 Die Teile im Paket STECKBRETTER Für den schnellen Aufbau elektronischer Schaltungen, ohne löten zu müssen, ist im Paket ein Steckbrett enthalten. Elektronische Bauteile können direkt in ein Lochraster gesteckt werden. Bei diesen Steckbrettern sind die äußeren Längsreihen alle mit Kontakten (X und Y) miteinander verbunden. Diese Kontaktreihen werden oft als Plus- und Minuspol zur Stromversorgung der Schaltungen genutzt.
Der Nano auf einem Steckbrett – links außen der USB-Anschluss WARUM EIGENTLICH KNETE? Knete leitet den Strom etwa so gut wie deine Haut. Sie lässt sich leicht in jede beliebige Form bringen, und ein Knetekontakt fasst sich viel besser an als ein einfaches Stück Draht. Die Fläche, mit der deine Hand den Kontakt berührt, ist deutlich größer. So kommt es nicht so leicht zu einem „Wackelkontakt“.
2 Die Teile im Paket KNETEKONTAKTE BAUEN Für einen Knetekontakt brauchst du als Erstes ein Stück Knete. Forme aus einem Stück der Knete eine etwa 2 bis 3 cm große Kugel oder eine andere Form, die gut in der Hand liegt. 1 Schneide mit einer Zange ein etwa 4 bis 5 cm langes Stück vom blanken Draht ab, biege es zu einem „U“ und stecke die beiden Enden so weit in die Knetekugel, dass der Draht nicht mehr von allein herausrutscht. 2 Am Ende sollte der Draht noch etwa 0,5 cm aus der Knete herausstehen.
Das andere Ende des Krokodilklemmenkabels soll mit der Elektronik auf dem Steckbrett verbunden werden. Schneide dazu noch ein kürzeres, nur etwa 2 cm langes Stück vom blanken Draht ab und biege daraus ebenfalls ein „U“. Stecke dieses dann in das Steckbrett. Auf den Zeichnungen sind diese Kabelanschlüsse in Grau dargestellt, 4 um die blanken Drähte von nd den n far farbigen isolierten Verbindungskabeln zu unterscheiden.
Die Teile im Paket 2 Klemme zuletzt das Krokodilklemmenkabel des Knetekontakts an den gerade gebauten Anschluss auf dem Steckbrett. 5 Da du jetzt weißt, was ein Knetekontakt ist und wie man diese nützlichen Dinge bastelt, werden wir das bei den einzelnen Experimenten nicht mehr jedes Mal erklären. WENN DIE KNETE HART WIRD ... Die Knete ist so weich, weil sie ein bisschen Wasser enthält.
KNETE WIEDER WEICH MACHEN Nimm ein Stofftuch, das nicht fusselt (sonst hast du die Fusseln später an der Knete kleben) und mache es mit Wasser nass. Drücke es dann so weit aus, dass es sich nur noch ganz leicht feucht anfühlt. Wickle die Knete in das Tuch ein und lass sie über Nacht darin liegen. Am nächsten Morgen wird sich die Oberfläche leicht glitschig anfühlen. Knete die Masse dann gut durch. Dadurch verteilt sich die Feuchtigkeit gleichmäßig, und die Knete kann wieder ganz normal benutzt werden.
2 Die Teile im Paket VORSICHTSMASSNAHMEN Verbinde auf keinen Fall irgendwelche Pins des Nano miteinander und warte ab, was passiert. Einige Pins sind direkt mit Anschlüssen des Mikrocontrollers verbunden, ein Kurzschluss kann den Nano komplett zerstören – zumindest theoretisch. Die Platinen sind erstaunlich stabil gegen Schaltungsfehler. Nicht alle Pins lassen sich frei programmieren. Einige sind für die Stromversorgung und andere Zwecke fest eingerichtet.
Die farbigen Ringe auf den Widerständen geben den Widerstandswert an. Mit etwas Übung sind sie deutlich leichter zu erkennen als winzig kleine Zahlen, die man nur noch auf ganz alten Widerständen findet. Die meisten Widerstände haben vier solcher Farbringe. Die ersten beiden Farbringe bezeichnen die Ziffern, Farbe der dritte einen Multiplikator kator und d der vierte die Toleranz. Dieser Toleranzring ist meistens gold oder silbern – Farben, die auf den ersten Ringen nicht vorkommen.
2 Die Teile im Paket In welcher Richtung ein Widerstand eingebaut wird, ist egal. Bei LEDs dagegen spielt die Einbaurichtung eine wichtige Rolle. POTENZIOMETER Ein Potenziometer ist ein einstellbarer Widerstand. Der Widerstand zwischen den beiden äußeren Anschlüssen ist immer gleich. Durch Drehen des Knopfs lässt sich der Widerstand zwischen dem mittleren Anschluss und den äußeren einstellen.
LED IN WELCHER RICHTUNG ANSCHLIESSEN? Die beiden Anschlussdrähte einer LED sind unterschiedlich lang. Der längere ist der Pluspol (die Anode), der kürzere der Minuspol (die Kathode). Einfach zu merken: Das Pluszeichen hat einen Strich mehr als das Minuszeichen und macht damit den Draht optisch etwas länger. Außerdem sind die meisten LEDs auf der Minusseite abgeflacht, so wie ein Minuszeichen. Leicht zu merken: Kathode = kurz = Kante. brauchst du keine zusätzlichen Vorwiderstände anzuschließen.
2 Die Teile im Paket tet. Die LED leuchtet immer, man braucht keinerlei Programm dazu. 24 Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 24 17.03.
25 15000-4 Arduino für Young Makers_NEU03.indd 25 17.03.
3 Wechselblinklicht BAUTEILE 1x Nano 1x Steckbrett 1x LED rot (mit Vorwiderstand) 1x LED grün (mit Vorwiderstand) 1x isolierte Drahtbrücke 26 Jetzt geht es los. Unser erstes Snap4Arduino-Programm soll zwei LEDs abwechselnd blinken lassen. Das klingt nicht weiter aufregend, liefert aber wichtiges Fachwissen, um später weitere Elektronik anzuschließen. Baue die LEDs wie auf dem Steckbrett in der Abbildung auf, schließe sie an die Pins D6 und D9 an und verbinde die Masseleitung mit dem GND-Pin.
PROGRAMMIEREN MIT SNAP4ARDUINO Starte auf dem PC Snap4Arduino. Bevor du mit dem Programmieren beginnen kannst, muss eine Verbindung zum Nano hergestellt werden. Schalte dazu oben links auf die Blockpalette Arduino und klicke auf Mit Arduino verbinden. Wähle den vom Nano verwendeten Port aus. Snap4Arduino unterstützt mehrere Arduinos an einem PC. Solange nur ein Arduino angeschlossen ist, wird der Port automatisch ausgewäh ausgewählt. gewäh Bestätige die erfolgreiche Verbindung mit einem Klick auf OK.
3 Wechselblinklicht code einzugeben. Die Blöcke werden einfach per Drag and Drop aneinandergehängt. Die Programmieroberfläche enthält vier Teilfenster, die so bezeichnet werden, wie auf der Abbildung zu sehen ist. Die Blockpalette im linken Teil des Fensters enthält nach Themen geordnet die verfügbaren Blöcke. Diese Themenbereiche lassen sich über die farbigen Schaltflächen oben links in der 28 Blockpalette auswählen. Die Blöcke haben zur besseren Unterscheidung auch die entsprechenden Farben.
DIE PROGRAMME ZUM PAKET Am besten baust du die Programme anhand der Abbildungen am Bildschirm selbst zusammen. Du kannst sie aber auch unter www.buch.cd d herunterladen. Entpacke in diesem Fall die ZIP-Datei aus dem Download in ein Verzeichnis auf der Festplatte. Klicke dann oben links in Snap4Arduino auf das Dateisymbol und wähle Importieren, um die Programme, die im XML-Format vorliegen, in Snap4Arduino zu importieren.
3 Wechselblinklicht Klicke oben links auf das gelbe Symbol Steuerung. Dann werden in der Blockpalette links die Blöcke zur Steuerung angezeigt. 30 Ziehe die Blöcke, die du brauchst, einfach aus der Blockpalette links in das Programmfenster in der Mitte. Wenn du einen neuen Block dicht Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 30 17.03.
unter einen anderen schiebst, rastet er ein und verbindet sich automatisch. Einen nicht mehr benötigten Block kannst du jederzeit von den anderen Blöcken abtrennen und wieder zurück auf die Blockpalette ziehen. Um einen digitalen Pin des Nano einoder auszuschalten, verwendet man den Block Setze digitalen Pin... auf... von der Palette Arduino. Wähle im Listenfeld den Pin 6 aus.
3 Wechselblinklicht Ziehe den Block wahrr in das passende Feld ganz rechts im Block Setze digitalen Pin... auf... und ziehe den ganzen Block dann in die fortlaufend-Schleife. Nachdem die LED an Pin 6 eingeschaltet ist, wartet das Programm eine Hundertstelsekunde. Solche sogenannten „Timeouts“ (oder auf Deutsch „Auszeiten“) baut man immer dann ein, wenn Programme direkt mit Hardware kommunizieren.
auf... in die Schleife. Wähle in diesem Block den Pin 9 aus und ziehe ganz rechts in das Feld einen Logikwert falsch von der Blockpalette Operatoren. Danach soll das Programm eine halbe Sekunde warten, bis die LED am Pin 6 wieder ausgeschaltet und dafür die LED am Pin 9 eingeschaltet wird. Füge dazu einen warte...Sek Block ein und schreibe in das Textfeld 0.5. Danach wird auf die gleiche leiche h We Weise die LED am Pin 9 ein- und die am Pin 6 ausgeschaltet.
3 Wechselblinklicht Mit einem Klick auf das rote Stopp-Symbol oben rechts kannst du das Programm wieder anhalten. TIPP Soll die LED schneller blinken, verkürze die Zeiten in den beiden warte... Sek-Blöcken innerhalb der Schleife. Soll sie langsamer blinken, verlängere die Wartezeiten. 34 Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 34 17.03.
Vergiss nicht, das fertige Programm mit dem Menüpunkt Sichern als im Dateimenü zu speichern, um es später wiederverwenden zu können. 35 15000-4 Arduino für Young Makers_NEU03.indd 35 17.03.
4 Fußgängerampel Einzelne LEDs ein- und wieder auszuschalten mag im ersten Moment ganz spannend sein, aber dafür braucht man eigentlich keinen Computer. Eine Ampel mit ihrem typischen Lichtwechsel von Grün über Gelb nach Rot und dann über die Lichtkombination Rot-Gelb wieder zu Grün ist da schon viel spannender.
KABELFARBEN Üblicherweise werden in der Elektrotechnik rote Kabel für die Verbindung mit dem Pluspol der Schaltung und schwarze oder blaue Kabel für die Verbindung mit der Masseleitung verwendet. Um leichter erklären zu können, welcher Knetekontakt gemeint ist, verwenden wir in der Abbildung dementsprechend rote und blaue Knete. Der Massekontakt ist zusätzlich mit einem Minuszeichen gekennzeichnet. 37 15000-4 Arduino für Young Makers_NEU03.indd 37 17.03.
4 Fußgängerampel Beim Berühren des Knetekontakts startet der typische Ampelzyklus einer Fußgängerampel. Im Ruhezustand leuchtet die Fußgängerampel rot, die Verkehrsampel grün. 38 HIGH ODER LOW? Ein digitaler Pin, der vom Programm ein- oder ausgeschaltet werden kann, wird wie im ersten Experiment als Ausgang bezeichnet, da der Nano hier ein Signal ausgibt, nämlich Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 38 17.03.
falsch für ausgeschaltet oder wahr für eingeschaltet. DER TRICK MIT DEN KNETEKONTAKTEN Umgekehrt kann ein digitaler Pin auch als Eingang benutzt werden, der dem Programm ein falsch oder wahrr bzw. eine 0 oder eine 1 schickt. Dies hängt davon ab, welches Signal am Eingang anliegt. Man unterscheidet in der Digitalelektronik zwischen Low-Signalen (= niedrig, falsch, 0) und High-Signalen (= hoch, wahr, 1).
4 Fußgängerampel ACHTUNG! Berühre nie eine Steckdose oder ein nicht isoliertes Kabel, das am 230-V-Stromnetz angeschlossen ist! Auch diesen Strom würdest du, da du über deine Füße immer mit der Masseleitung Erde verbunden bist, direkt dorthin leiten – und das ist lebensgefährlich! Das wäre vergleichbar mit einem Blitzeinschlag in deinem Körper. Ein Gewitter ist nichts anderes als ein Kurzschluss zwischen positiv geladenen Wolken und der Erde, der durch die feuchte Luft herbeigeführt wird.
Fasst du gleichzeitig mit der anderen Hand den roten Knetekontakt am Pin A2 an, wird das schwache High-Signal dort von dem deutlich stärkeren Low-Signal der Hand überlagert und zieht den entsprechenden Pin auf Low. ES GEHT LOS Nachdem du die Schaltung aufgebaut und die Knetekontakte angeschlossen hast, starte das Programm 02ampel und klicke auf das grüne Fähnchen. 41 15000-4 Arduino für Young Makers_NEU03.indd 41 17.03.
4 Fußgängerampel Klicke auf das grüne Fähnchen, um das Programm zu starten. Die Verkehrsampel leuchtet grün, die Fußgängerampel rot – genau so, wie es echte Ampeln stundenlang tun, solange kein Fußgänger kommt und auf den Knopf drückt. Nimm den blauen Knetekontakt an der Masseleitung in die Hand. Berühre zusätzlich den roten Knetekontakt.
tern besteht, die unterschiedlich lange leuchten. 0,5 Sek. 0,5 Sek. 3 Sek. Mit dem letzten Lichtmuster – Fußgänger rot, Verkehrsampel grün – erreicht die Ampel wieder den Standardzustand. Das Programm muss allerdings dafür sorgen, dass auch dieser immer für eine Mindestzeit eingehalten wird. Selbst wenn ständig Fußgänger auf den Knopf drücken, müssen die Autos auch einmal inmall fahr fahren dürfen. In unserer Modellampel sind 0,5 Sek. 0,5 Sek. >= 3 Sek.
4 Fußgängerampel den blauen Knetekontakt in eine Hand und bitte eine andere Person, den roten Knetekontakt in die Hand zu nehmen. Noch passiert gar nichts. Wenn ihr euch an die Hand nehmt, startet der Ampelzyklus. Der Stromkreis ist über eure Hände geschlossen. 44 ES GEHT AUCH OHNE MASSEKONTAKT Nimm einmal nur den roten Knetekontakt in die Hand, ohne über den blauen Knetekontakt mit der Masseleitung verbunden zu sein.
Das bedeutet, dass der Nano-Pin mit der Masse verbunden ist – aber wie? Ein Mensch ist über seine Füße fast immer mit der Masse der Erde verbunden. Wie hoch allerdings der Widerstand zwischen deiner Hand und der Erde ist, hängt von vielen Dingen ab, vor allem davon, was du für Schuhe anhast und auf welchem Fußboden du stehst. Barfuß im nassen Gras ist die Verbindung zur Masse der Erde am besten, aber auch auf Steinfußboden funktioniert es meistens gut.
4 Fußgängerampel Jetzt beginnt wie im letzten Programm eine fortlaufend-Schleife. Innerhalb der Schleife wird in einem falls-Block der Knetekontakt abgefragt. Die Blöcke innerhalb des fallsBlocks werden immer nur dann ausgeführt, wenn die Abfrage im Titelbalken dieses Blocks ein wahres Ergebnis liefert. Ist das Ergebnis der Abfrage hingegen falsch, passiert gar nichts, und die Blöcke unterhalb des fallsBlocks werden ausgeführt. In unserem Fall startet dann die fortlaufend-Schleife neu.
ANALOGE UND DIGITALE NANO-PINS Da Snap4Arduino die im Nano eingebauten Pulldown-Widerstände immer einschaltet, werden digitale Eingänge immer auf 0 gezogen. Sie haben auch ohne Berührung einen Low-Pegel. Deshalb nutzen wir zur Abfrage der Knetekontakte einen analogen Eingangspin. Diese liefern Zahlenwerte zwischen 0 und 1023, je nach anliegendem Eingangspegel.
4 Fußgängerampel Wenn diese Abfrage wahr ergibt, der analoge Pin also einen Wert kleiner als 200 liefert, weil der Knetekontakt berührt wird, werden nacheinander die unterschiedlichen Lichtmuster der Ampel geschaltet. Die Ampel wartet jedes Mal 0,5 Sekunden bis zum nächsten Lichtmuster. Während die Fußgängerampel grün leuchtet, wird 3 Sekunden gewartet. Werden zwei LEDs scheinbar gleichzeitig geschaltet, ist wie im letzten Experiment eine Auszeit von einer Hundertstelsekunde im Programm eingebaut.
WENN ES NICHT FUNKTIONIERT In manchen Fällen kann es passieren, dass die Ampel angeht, auch wenn du gar keinen der Knetekontakte berührst. Dies kann verschiedene Ursachen haben, zum Beispiel, dass die Tischplatte oder eine andere Unterlage, auf der die Knetekontakte liegen, leitfähig ist und so den Stromkreis schließt. Wenn du den roten Knetekontakt am isolierten Kabel hochhebst, ohne die Knete oder eine blanke Drahtstelle zu berühren, sollte alles wieder ruhig sein.
5 LED-Würfel Typische Spielwürfel mit einem bis sechs Augen kennt jeder, und vermutlich hat auch jeder welche zu Hause. Wesentlich cooler ist ein elektronisch gesteuerter Würfel, der mit einer Steuerung über einen Knetekontakt die Augen aufleuchten lässt – aber nicht einfach ein bis sechs LEDs in einer Reihe, sondern so, wie die Augen auf dem Spielwürfel angeordnet sind. Spielwürfel haben Augen in der typischen quadratischen Anordnung, wozu man sieben LEDs braucht, die in vier Gruppen gesteuert werden.
51 15000-4 Arduino für Young Makers_NEU03.indd 51 17.03.
5 LED-Würfel Die Schaltung sieht auf den ersten Blick deutlich komplizierter aus als die vorherigen. Immerhin werden neben dem Nano noch sieben 52 weitere elektronische Bauteile und zusätzlich diverse Drähte auf dem Steckbrett aufgebaut. Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 52 17.03.
BAUTEILE 1x Nano 1x Steckbrett 2x LED rot (mit Vorwiderstand) 2x LED gelb (mit Vorwiderstand) 2x LED grün (mit Vorwiderstand) 1x 20-Mohm-Widerstand (rot-schwarzblau) 5x isolierte Drahtbrücke (unterschiedliche Längen) 2x blanke Drahtbrücke 2x Knetekontakt Nachdem du die Schaltung aufgebaut und die Knetekontakte angeschlossen hast, starte das Programm 03wuerfel01. 53 15000-4 Arduino für Young Makers_NEU03.indd 53 17.03.
5 LED-Würfel Alle LEDs sind am Anfang aus. Berühre nun kurz die beiden Knetekontakte, um zu würfeln. Wenn du wieder loslässt, wird die gewürfelte Zahl so lange angezeigt, bis du die Knetekontakte wieder berührst. SO FUNKTIONIERT DAS PROGRAMM Wenn du auf das grüne Fähnchen klickst, startet sofort die 54 Endlosschleife, die darauf wartet, dass du den Knetekontakt berührst.
Danach wird eine zufällige Zahl zwischen 1 und 6 erzeugt und in der Variablen w gespeichert. Variablen sind kleine Speicherplätze, in denen man sich, während ein Programm Gib dann der Variablen einen Namen, wir verwenden einfach w (wie Würfel). In der Blockpalette werden verschiedene Blöcke zur Arbeit mit Variablen angezeigt. läuft, eine Zahl oder irgendetwas anderes merken kann. Wenn das Programm beendet wird, werden die Variablenspeicher automatisch geleert.
5 LED-Würfel Wenn du den Schalter links neben der Variable w einschaltest, wird diese Variable automatisch auf der Bühne in einem kleinen orangefarbenen Feld angezeigt. So siehst du immer die gewürfelte Zahl und kannst leicht kontrollieren, ob die LEDs funktionieren. Dieses Zahlenfeld ist sehr klein. Klicke mit der rechten Maustaste darauf und wähle aus dem Menü groß. Jetzt ist die Zahl besser zu erkennen. 56 Ziehe nun den Block setze...auff in das Programmfenster.
WIE ENTSTEHEN EIGENTLICH ZUFALLSZAHLEN? Man denkt vielleicht, in einem Programm könne nichts zufällig passieren, alles sei geplant. Wie kann ein Programm dann in der Lage sein, zufällige Zahlen zu generieren? Teilt man eine große Primzahl durch irgendeinen Wert, ergeben sich ab der x-ten Nachkommastelle Zahlen, die kaum noch vorhersehbar sind und sich auch ohne jede Regelmäßigkeit ändern, wenn man den Divisor regelmäßig erhöht.
5 LED-Würfel Baue den Block in das Programm ein. Dieses sollte nun so aussehen: Nachdem die Zahl gewürfelt wurde, folgen sechs falls-Blöcke für jeden möglichen Würfelwert. 58 Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 58 17.03.
Jeder dieser Blöcke schaltet, wenn eine bestimmte Zahl gewürfelt wurde, die entsprechende Kombination von LEDs ein. Ziehe den grünen =-Block in das Abfragefeld des falls-Blocks. Ziehe dann den Block der Variable w aus der Blockpalette Variablen in das erste der beiden kleinen weißen Felder im grünen Block. Schreibe in das zweite Feld eine 1. Jetzt wird der Block innerhalb der Klammer immer dann abgearbeitet, wenn das Würfelergebnis eine 1 ist.
5 LED-Würfel LED-WÜRFEL MIT ECHTEM WÜRFELEFFEKT Ein wirklicher Würfel zeigt nicht sofort die endgültige Augenzahl an, sondern rollt noch eine kurze Zeit, in der man Würfelergebnisse sieht, die sich dann doch nicht bewahrheiten. Das Programm 03wuerfel02 2 simuliert das Rollen, indem der Würfel erst ein paar andere Würfelergebnisse mit immer längeren kurzen Pausen dazwischen anzeigt, bevor das endgültige Ergebnis erscheint. 60 Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 60 17.03.
Das Programm nutzt den gleichen Würfelmechanismus, würfelt aber nach dem Berühren des Knetekontakts nicht nur einmal, sondern viermal hintereinander, wobei die Wartezeiten vor dem Löschen des Ergebnisses jedes Mal um 0,2 Sekunden länger werden. Dazu wird zu Beginn direkt nach dem Berühren des Knetekontakts eine neue Variable n auf 0,1 Sekunden gesetzt. Dies ist die Wartezeit zwischen den beiden ersten Ergebnissen. Anschließend startet eine wiederhole...
6 LED dimmen LEDs sind typische Bauteile zur Ausgabe von Signalen in der Digitalelektronik. Sie können zwei verschiedene Zustände annehmen, nämlich ein und aus, 1 und 0 oder HIGH H und LOW. Das Gleiche gilt für die als Ausgänge definierten digitalen Pins. Demnach wäre es theoretisch nicht möglich, eine LED zu dimmen. Mit einem Trick ist es dennoch möglich, die Helligkeit einer LED an einem digitalen Pin zu regeln.
BAUTEILE 1x Nano 1x Steckbrett 1x LED gelb (mit Vorwiderstand) 1x 15-kOhm-Potenziometer 4x isolierte Drahtbrücke (unterschiedliche Längen) des Signal, das sich in sehr kurzen Abständen ein- und ausschaltet. Die Spannung des Signals bleibt immer gleich, nur das Verhältnis zwischen Level LOW W (0 V) und Level HIGH (+3,3 V) wird verändert. Das sogenannte Tastverhältnis gibt die Dauer des eingeschalteten Zustands im Verhältnis zur Gesamtdauer eines Schaltzyklus an.
6 LED dimmen Um eine LED wirklich wie eine Wohnzimmerlampe zu dimmen, verwenden wir das Potenziometer aus dem Paket. Ein Potenziometer ist ein einstellbarer Widerstand, mit dem sich ein Spannungsteiler bauen lässt, der 64 eine beliebige Spannung zwischen 0 V und der verwendeten Ausgangsspannung liefern kann. Dazu werden die beiden äußeren Anschlüsse des Potenziometers mit 0 V und +5 V verbunden, der mittlere Anschluss, der Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 64 17.03.
ACHTUNG! Dieses Experiment zeigt einen der wenigen Fälle, in denen die +5-V-Leitung des Nano verwendet wird. Die meisten Projekte nutzen nur +3,3 V, da die digitalen Eingänge, im Gegensatz zu den analogen Eingängen, nur mit 3,3 V belastet werden dürfen. mit dem drehbaren Schleifer verbunden ist, wird an einen analogen Eingang des Nano angeschlossen.
6 LED dimmen SO FUNKTIONIERT DAS PROGRAMM Wenn du auf das grüne Fähnchen klickst, startet die Endlosschleife, die den Wert des analogen Pins 5 ausliest und durch 4 teilt. Das Ergebnis wird in der Variablen x gespeichert und auf der Bühne angezeigt. 66 Anschließend wird der PWM-Pin 9 auf diesen Wert gesetzt. Damit leuchtet die angeschlossene LED je nach Einstellung des Potenziometers unterschiedlich hell. Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 66 17.03.
PWM-WERTE UND ANALOGE EINGANGSWERTE Die analogen Eingänge des Nano werten einen analogen Spannungswert aus und liefern abhängig von der anliegenden Spannung digitale Werte zwischen 0 und 1023. Dabei steht 0 für 0 V und 1023 für +5 V Spannung am jeweiligen Pin. PWM-Werte müssen aber zwischen 0 und 255 5 liegen. Um einen Wert zwischen 0 und 1023 in einen Wert zwischen 0 und 255 5 umzurechnen, teilt man ihn einfach durch 4. 67 15000-4 Arduino für Young Makers_NEU03.indd 67 17.03.
7 Pegelanzeige Wie man mit analogen Werten die Helligkeit einer LED steuert, hast du bereits ausprobiert – um einen analogen Wert aber wirklich zu visualisieren, ist diese Methode nicht aussagekräftig genug. Helligkeiten werden sehr subjektiv wahrgenommen und hängen auch stark von der Umgebung und den verwendeten LEDs ab. An einer Pegelanzeige lassen sich analoge Werte viel deutlicher ablesen.
Die LEDs sind mit den digitalen Pins 2, 4, 6, 8, 10 und 12 verbunden, das Potenziometer verwendet wie im letzten Projekt den analogen Eingang A5. Das Programm 05pegel lässt je nach Einstellung des Potenziometers unterschiedlich viele LEDs leuchten. Ähnliche Anzeigen werden zum Beispiel bei Lautstärkereglern an HiFi-Anlagen verwendet. 69 15000-4 Arduino für Young Makers_NEU03.indd 69 17.03.
7 Pegelanzeige SO FUNKTIONIERT DAS PROGRAMM Die Nummern der für die LEDs verwendeten Pins sind in einer Liste gespeichert. Das hat den Vorteil, dass ein Programm mithilfe mathematischer Formeln auf beliebige 70 Werte der Liste zugreifen kann, die einfach nur durchnumeriert sind. Listen werden in Snap4Arduino in Variablen gespeichert. Lege also als Erstes eine Variable x an. Der kleine Hacker 15000-4 Arduino für Young Makers_NEU03.indd 70 17.03.
Ziehe den roten Block Liste in einen Setze...auf...-Block, um in der Variablen eine Liste anzulegen. Klicke fünfmal hintereinander auf den Pfeil nach rechts, der sich ganz rechts im Block Liste befindet. Damit legst du insgesamt sechs Felder für die sechs LEDs in dieser Liste an. Schreibe in diese sechs Felder die Nummern der digitalen Pins, an denen die LEDs angeschlossen sind. Die Liste wird zu Beginn des Programms angelegt und in der Variablen x gespeichert.
7 Pegelanzeige Der Block Länge von... gibt die Anzahl der Elemente in einer Liste an. Natürlich hätten wir den Wert des analogen Pins auch direkt durch 146 teilen können, um einen Zahlenwert zwischen 0 und 6 zu erhalten. Die ausführliche Berechnungsformel über die Länge der Liste hat aber den Vorteil, dass man, ohne das Programm zu verändern, weitere LEDs anschließen und der Liste hinzufügen kann, um die Anzeige zu verlängern. Umgekehrt können auch LEDs weggenommen und die Liste verkürzt werden.
anhand des Potenziometerwerts festlegt, ob die jeweilige LED einoder ausgeschaltet wird. Eine falls...sonst...-Abfrage innerhalb der Schleife prüft, ob der errechnete Wert p größer ist als die aktuelle Nummer der LED, die in der Variablen i gespeichert ist. Wenn ja, wird diese LED eingeschaltet. 73 15000-4 Arduino für Young Makers_NEU03.indd 73 17.03.
7 Pegelanzeige Hier zeigt sich der große Vorteil von Listen gegenüber einzelnen Variablen: Mit dem Block Element... von... kann jedes Element einer Liste einfach über seine Nummer angesprochen werden. In unserem Fall wird die LED mit der Nummer i ein- oder ausgeschaltet. Dazu verwenden wir den bereits bekannten Setze digitalen Pin... auf ...-Block.