Displays. LED-Streifen

Ähnliche Dokumente
Schnelleinstieg. Steckbretter

Eine tastergesteuerte LED

Willkommen! Verdrahten des Panels mit dem Raspberry Pi:

Pixel Matrix Shield Bedienungsanleitung

Willkommen!

Joy-IT RGB Shield. Ausgabe Copyright by Joy-IT 1

LCD Modul 84x84 Nokia 5110

Dokumentation Raspberry USV+ E

Ampelsteuerung Merkblatt 1 Wie werden die Bauteile angeschlossen?

Linker-Kit RGB LED Anleitung für den Arduino und Raspberry Pi

Informatik Enlightened. Station 0 - Einstieg

Arbeitsblatt Nr.19: RFID Kit

1 Einleitung Der Raspberry Pi...27

Was so passieren wird:

JOY-iT TFT-Display 1.8

I2C Serial 2.6 LCD Modul. Verwendung mit einem Arduino

Arduino - Einfacher Teiler

Ampelsteuerung Merkblatt 2 Wie wird der Arduino programmiert?

3. Hardware CPLD XC9536 von Xilinx. CPLD / FPGA Tutorial

Raspberry Pi meets Pocket Code. Tutorial: Ampelschaltung

Arduino Kurs Das LC-Display. Stephan Laage-Witt FES Lörrach

Bisher hatten immer nur als Ausgänge geschaltet und hierfür folgende Befehle benutzt:

Interaktionstoolkit How To

Linkerkit OLED Raspberry Pi und Arduino

BAUANLEITUNG ROBO-REGENTRUDE

Raspberry Pi 3B Advanced-Set

TCS3200 Farbsensor. Schritt 1 Anschließen des Sensors. Bild 1: TCS3200 Farbsensor

Einführung Arduino - Aufbau

Programmieren des ESP8266 mit OLED

LCD Modul 84x48. Verwendung mit einem Arduino

I2C Serial 2.6 LCD Modul

DC 5V Stepper Motor 28BYJ-48. Verwendung mit einem Arduino

Die Sonne spielt Musik

Erste Gehversuche mit ARDUINO (Teil 3) (DL6OAA) Die 7-Segmentanzeige (1-stellig)

Informatik Medien/Informatik

Arduino, IR Fernbedienung dekodieren

Die serielle Schnittstelle in der MSR - Technik

Microcontroller im Amateurfunk

Arduino Digispark. Ausgabe Copyright by Joy-IT 1

Wunderst du dich auch manchmal, wo die ganzen Kekse hin sind? Mit diesem Projekt kommst du dem Dieb schnell auf die Schliche.

RFID RC522. Ausgabe Copyright by Joy-IT 1

LCD Display 20x4 mit Buttons

TaT-Maker Steuerung. Selbstbauanleitung. von. Kurt Sepke

Eine tastengesteuerte Ampelanlage

BEDIENUNGSANLEITUNG 64-LED RGB-MATRIX

Projektworkshop Digitales Haustier. Digitales Haustier. Bau dir ein Digitales Haustier, das schnurrt, wenn du es streichelst. 1/8

RFID RC522. Ausgabe Copyright by Joy-IT 1

Sobald Ihr tolino über ein USB-Kabel mit Ihrem Computer verbunden ist, sehen Sie oben links in der Statusleiste dieses Symbol.

Wir hätten nie gedacht das drei Computer und Elektronik-Fans soweit kommen!! Mit diesem Video sagen wir vielen Dank!

NodeMCU ESP32 Betriebsanleitung

Übungen. Version

C++ mit dem Arduino (Uno und Mega2560)

Eine Roboter-Kanone. Projekt 20

Einen elektronischen Würfel programmieren

ERWEITERUNGSSHIELD MIT ANALOGEN EINGÄNGEN

Bauanleitung für die Solaranzeige Micro Wechselrichter + 7 Monitor

Anleitung Zusammenbau

Praktikum Analog- und Digitaltechnik. Versuch D3 Bluetooth-steuerung mit Arduino

LCD-Anzeige 10a Kurzbeschreibung

LED Skalenbeleuchtung mit einem Arduino

Deinen EV3-Kasten vorbereiten

INSTALLATION GOLDen GATE, TBLZ-1/

edition Make: Arduino Ein schneller Einstieg in die Microcontroller-Entwicklung von Maik Schmidt 2., akt. u. erw. Aufl. dpunkt.

Entfernungsmesser. für den Raspberry Pi. Tim Riddermann / Nils Wortmann

LED Skalenbeleuchtung mit einem Arduino

Die TRUST 2 PORT USB 2.0 PCI CARD funktioniert nicht mit dem Mac.

Einführung. Schritt 1: Sammle deine Materialien

ESP8266. Ausgabe Copyright by Joy-IT 1

Sensor Hot-Plug Interface. SHPI Rev: 02 - GER

Bihor Magnet Sensor KY-035

Linear Magnetic Hall Sensor KY-024

Arduino Kurs Timer und Interrupts. Stephan Laage-Witt FES Lörrach

System-Programmierung 10: Weitere Arten von I/O. CC BY-SA, Thomas Amberg, FHNW (soweit nicht anders vermerkt)

Motoren, Pumpen und Aktoren

Wir arbeiten ständig daran, unseren ChessGenius Exclusive noch besser zu machen. Deswegen freuen wir uns immer über Ihr Feedback unter

Anleitung Light Module LM2-S

SCHÜEX MECKLENBURG-VORPOMMERN

Arduino für FunkAmateure

IR-Schaltinterface IR-002

ARDUINO KENNENLERNEN WAS IST EIN ARDUINO?

AS-electronic, Inh.: Norbert Koppel, Zietenstr. 8, Wesel

Moto1. 28BYJ-48 Stepper Motor. Ausgabe Copyright by Joy-IT 1

Moto1. 28BYJ-48 Stepper Motor. Ausgabe Copyright by Joy-IT 1

- Der heisse Draht - Physical Computing. Workshop Oktober 2015 Olav Schettler

Die Verdrahtung ist relativ einfach, wir stecken das Modul auf einen der Kompatiblen Arduinos. Kompatibel sind:

Herunterladen der Harmony-App. Inhalt

Selbstschließende Hand (SsH)

Remotedownload. Die einfache Lösung für automatische Datenübertragung der digitalen Tachodaten. Installationsanleitung Digidown-T

IR-Schaltinterface IR-001

Mikrocontroller: Einführung

Arduino Grundkurs. 3. Schreibe eine Funktion für das Morsezeichen S und eine für O

PKS-Team. Installationsanleitung LAN-Relais 2-Fach und 8-Fach

Transkript:

273 14 Displays An einen Raspberry Pi können Sie nicht nur einen Monitor anschließen, sondern auch viele andere Ausgabegeräte, um Text, Zahlen und Grafiken anzuzeigen oder eine größere Anzahl LEDs im Ganzen zu steuern. Es gibt so viele Arten von Displays, dass wir sie hier gar nicht alle behandeln können. In diesem Kapitel beschränke ich mich daher auf zwei sehr nützliche Varianten, die unterschiedliche Techniken verwenden. LED-Streifen Die in Kapitel 6 beschriebenen RGB-LEDs bestehen aus drei Einzel-LEDs in einem Gehäuse. Bei einem anderen Typ, der sogenannten adressierbaren LED, enthält das Gehäuse zusätzlich noch einen Chip, der eine PWM-Steuerung der Farben ermöglicht, wie wir sie in Kapitel 6 mit dem Arduino und dem Raspberry Pi erreicht haben. Adressierbare LEDs können in großer Zahl von einem einzigen Mikrocontroller oder Computer wie einem Arduino oder Raspberry Pi gesteuert werden. Adafruit verkauft adressierbare LEDs unter dem Namen NeoPixel (wobei die Bezeichnung NeoPixel oftmals auch allgemein für adressierbare LEDs auch von anderen Herstellern benutzt wird, insbesondere auf ebay). Am häufigsten wird der Typ WS2812 verwendet. Er nutzt einen Standard zur seriellen Datenübertragung, sodass lange Ketten dieser LEDs zu großen Displays zusammengeschaltet werden können. Neben adressierbaren RGB-LEDs gibt es auch adressierbare Einzelfarben- LEDs. Diese LEDs sind manchmal in einem Raster angeordnet. Sie können sie aber auch auf einer Rolle kaufen und dabei jeweils einen Streifen mit der Anzahl der LEDs abschneiden, die Sie für Ihr Projekt gerade brauchen (siehe Abb. 14 1).

274 14 Displays Abb. 14 1 NeoPixel-LED-Streifen In Abbildung 14 1 können Sie erkennen, dass der Streifen wie ein Bandwurm in Segmente eingeteilt ist. Die drei Lötflächen an der Seite jeder LED sind für den Masse- und den 5-V-Anschluss sowie für den seriellen Datenkanal D0 eingerichtet, über den die LEDs in Reihe verbunden sind, d. h., der Ausgang einer LED geht an den Eingang der nächsten. Die Linienmarkierung, die durch die Mitte der Lötflächen quer über den Streifen verläuft, gibt an, wo Sie ihn zerschneiden können. Die Pfeile auf den Streifen geben die Richtung an, in der die seriellen Daten fließen. Sie schließen also immer die Datenverbindung links an, um die rechts davon liegenden LEDs zu steuern. Experiment: Einen RGB-LED-Streifen steuern Um LED-Streifen auszuprobieren, beschaffen Sie sich ein oder zwei Meter davon bei ebay oder Adafruit. Der Anschluss an den Arduino ist sehr einfach (siehe Abb. 14 2), für die Verbindung mit dem Raspberry Pi ist aber etwas mehr Arbeit erforderlich. Abb. 14 2 LED-Streifen am Arduino

Experiment: Einen RGB-LED-Streifen steuern 275 Stückliste Um dieses Experiment mit dem Arduino durchzuführen, benötigen Sie die folgenden Teile: Teil Bezugsquelle alternative Bezugsquelle Adressierbarer LED-Streifen WS2812 ebay, Adafruit: 1376 electronic-shop: 1376 3 Schaltdraht mit Steckern an beiden Enden Adafruit: 758 Flikto: 758 electronic-shop: 758 Da der Logikeingang von NeoPixel-Streifen offiziell nicht für die 3-V-Logik ausgelegt ist, brauchen Sie für den Raspberry Pi noch einige zusätzliche Teile. Sie können es jedoch auch zunächst ohne den Logikpegelwandler ausprobieren; es ist möglich, dass Ihr LED-Streifen trotzdem mit 3-V-Logik läuft. Ansonsten beschaffen Sie sich für den Anschluss an den Raspberry Pi noch folgende Teile: Name Teil Bezugsquelle alternative Bezugsquelle Steckbrett mit 400 Kontakten R1, R2 2 470--Widerstand, 1/4 W Adafruit: 64 Mouser: 291-470-RC Conrad: EIC-801 Flikto: flik.to/189 Mouser: 291-470-RC Q1 MOSFET 2N7000 Mouser: 512-2N7000 Mouser: 512-2N7000 Schaltdraht mit Buchse und Stecker Adafruit: 826 Flikto: PRT-12794 electronic-shop: 826 Abweichend von der üblichen Liste von Transistoren für unsere Projekte verwenden wir hier einen MOSFET niedriger Leistung als Logikpegelwandler, weil er viel besser auf die hochfrequenten seriellen Daten reagiert als beispielsweise der 2N3904. Sie könnten auch einen FQP30N06L nehmen, allerdings wäre dieses Hochleistungsgerät für dieses Projekt zu viel des Guten. Verbindungen mit dem Arduino Am Ende einer frischen Rolle ist oft ein Kabel mit einem dreipoligen Stecker für die Masse-, die 5-V- und die D0-Verbindung angebracht. In diesem Fall können Sie den Streifen einfach mithilfe von Schaltdraht mit Buchse und Stecker an ein Steckbrett oder den Arduino anschließen. Wenn Sie allerdings schon etwas von der Rolle abgeschnitten haben, müssen Sie selbst eine Verkabelung anlöten. Ich habe dafür drei Schaltdrähte mit zwei Steckern geopfert, indem ich die Stecker an einem Ende abgeschnitten und die Kabel an einen NeoPixel-Fünferstreifen angelötet habe, wie Sie in Abbildung 14 3 sehen.

276 14 Displays Abb. 14 3 Ein einsatzbereites NeoPixel-Display Die drei Stecker können direkt an den Arduino angeschlossen werden. Wie in Abbildung 14 2 gezeigt, muss der Datenpin D0 des Streifens dabei mit dem Pin D9 des Arduino verbunden werden. Stromverbrauch von adressierbaren LEDs Bei maximaler Helligkeit und weißem Licht ziehen adressierbare LEDs eine Menge Strom (ca. 60 ma pro LED). Bei fünf LEDs kommen Sie daher auf einen Verbrauch von 300 ma, was für den direkten Anschluss an einen Arduino oder Raspberry Pi gerade noch geeignet ist. Bei mehr LEDs sollten Sie jedoch eine eigene 5-V-Stromversorgung für den LED-Streifen bereitstellen. Die Software für den Arduino Adafruit stellt eine Arduino-Bibliothek bereit, die die Steuerung langer Streifen adressierbarer LEDs erleichtert. Laden Sie diese Bibliothek von https://github.com /adafruit/adafruit_neopixel herunter und installieren Sie sie in Ihrer Arduino- Umgebung (siehe den Kasten»Arduino-Bibliotheken installieren«in Kapitel 12). Den Arduino-Sketch für dieses Projekt finden Sie in arduino/experiments/ neopixel (siehe auch die Anleitung zur Installation der Sketche in»der Code zu diesem Buch«in Kapitel 2). #include <Adafruit_NeoPixel.h> const int pixelpin = 9; const int numpixels = 5; Adafruit_NeoPixel pixels = Adafruit_NeoPixel(numPixels, pixelpin, NEO_GRB + NEO_KHZ800); //

Experiment: Einen RGB-LED-Streifen steuern 277 void setup() { pixels.begin(); // } void loop() { for (int i = 0; i < numpixels; i++) { int red = random(255); int green = random(255); int blue = random(255); pixels.setpixelcolor(i, pixels.color(red, green, blue)); // pixels.show(); } delay(100l); } Importiert die NeoPixel-Bibliothek von Adafruit. Ändern Sie dies, wenn Sie den NeoPixel-Streifen über einen anderen Pin steuern wollen. Ändern Sie dies, wenn Sie einen Streifen mit mehr als fünf LEDs verwenden. Lesen Sie zuvor aber den Kasten»Stromverbrauch von adressierbaren LEDs«, um nicht zu viele LEDs anzuschließen. Initialisiert die NeoPixel-Bibliothek für Ihren Aufbau. Beginnt damit, Daten zur Anzeige zu senden. Weist jeder LED eine zufällige Farbe zu, aktualisiert das Display und legt eine Verzögerung von 1/10 Sekunde ein, bevor die Farben aller LEDs erneut geändert werden. Damit kann die Party losgehen. Die Funktion setpixelcolor() nimmt zwei Parameter entgegen, nämlich die Indexposition der LED, deren Farbe geändert werden soll, und die gewünschte Farbe, die wiederum in Form von drei Werten zwischen 0 und 255 für die drei Farbkanäle angegeben wird. Verbindungen mit dem Raspberry Pi Es kann sein, dass der LED-Streifen am Raspberry Pi auch ohne Logikpegelwandlung funktioniert. Probieren Sie das zunächst aus, bevor Sie das Steckbrett und den Wandler hinzunehmen. Schließen Sie dazu den NeoPixel-Fünferstreifen, den Sie für den Arduino hergestellt haben, über Schaltdraht mit Buchsen an beiden Enden wie folgt an den Raspberry Pi an: Masseanschluss des NeoPixel an den Masseanschluss des Raspberry Pi 5-V-Anschluss des NeoPixel an den 5-V-Anschluss des Raspberry Pi D0-Anschluss des NeoPixel an GPIO-Pin 18

278 14 Displays Abbildung 14 4 zeigt den direkten Anschluss des LED-Streifens an den Raspberry Pi. Abb. 14 4 Direkter Anschluss eines NeoPixel-Streifens an den Raspberry Pi Blättern Sie zum Abschnitt»Die Software für den Raspberry Pi«vor und probieren Sie das Programm neopixel_no_level_conv.py aus. Sollte der LED-Streifen dabei nicht aufleuchten und keine bunte Lichtshow liefern, müssen Sie einen Logikpegelwandler einbauen, um das Steuersignal von 3 V auf 5 V zu erhöhen. Von 3 V auf 5 V Das Steuersignal des Raspberry Pi von 3 V liegt unter dem Minimum von 4 V, das die adressierbare LED WS2812 als HIGH erwartet. Unter glücklichen Umständen kann der Pegel trotzdem ausreichen. Wenn nicht, verwenden Sie wie in Abbildung 14 5 gezeigt einen MOSFET, um den Signalpegel auf 5 V anzuheben. Als Nebenwirkung dieser Pegelerhöhung wird der Ausgang umgekehrt: Wenn der Raspberry Pi ein logisches LOW sendet (0 V), liefert der Ausgang zum LED-Streifen 5 V. Ist der GPIO-Pin dagegen HIGH (3,3 V), hat der Ausgang zum LED-Streifen 0 V. Zum Glück lässt sich das jedoch in der Software auf einfache Weise korrigieren.

Experiment: Einen RGB-LED-Streifen steuern 279 Abb. 14 5 Pegelwandlung von 3 V auf 5 V In Abbildung 14 6 sehen Sie den Aufbau auf dem Steckbrett für das Experiment mit Pegelwandlung. Abb. 14 6 Anschluss des Steckbretts an den Raspberry Pi mit Pegelwandlung Die Software für den Raspberry Pi Die hier verwendete Software beruht auf dem Adafruit-Tutorial (https://learn. adafruit.com/neopixels-on-raspberry-pi). Die in diesem Tutorial benutzte C-Bibliothek ist allerdings (zum Zeitpunkt der Entstehung dieses Buches) nicht mit dem Raspberry Pi 2 kompatibel. Erfreulicherweise hat Richard Hirst eine Version der Software erstellt, die auch auf dem Raspberry Pi 2 und älteren Modellen funktioniert. Installieren Sie die erforderlichen Pakete und Bibliotheken mit dem folgenden Befehl: $ sudo apt-get install build-essential python-dev git scons swig