Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Webgesteuerte LED-Animationen mit Raspberry Pi und Arduino

Komponenten und Verbrauchsmaterialien

Raspberry Pi 3 Model B
× 1
Arduino UNO
Arduino Nano kann ebenfalls verwendet werden. Arduino Mega wird möglicherweise benötigt, um mehr LED-Pixel anzusteuern.
× 1
NeoPixel-Streifen
Jeder WS8212 LED-Streifen kann verwendet werden.
× 1

Apps und Onlinedienste

Arduino-IDE

Über dieses Projekt

Projektübersicht

Arduino Light Animation (ALA) ist eine Arduino-Bibliothek zur Steuerung von LEDs und zum Ausführen farbenfroher Animationen mit minimalem Aufwand. Die Bibliothek bietet mehr als 30 vordefinierte Animationen und mehrere Farbpaletten. Weitere Informationen zur ALA-Bibliothek finden Sie in meinem Blog.

Dieses Projekt stellt ein Raspberry Pi 3-Board vor, das eine Webseite bereitstellt, die es ermöglicht, Animationen, Farben und Geschwindigkeit von einem Smartphone oder einem PC mit dem Webbrowser zu steuern. Hier ist ein kurzes Video von AlaWeb in Aktion.

Für dieses Projekt sind nur wenige Komponenten erforderlich.

  • WS8212 RGB-LED-Streifen :Dieser Streifen enthält mehrere RGB-LEDs, die über eine Eindrahtschnittstelle einzeln angesteuert werden können, sodass Sie die Farbe jeder RGB-LED vollständig steuern können.
  • Arduino :Die berühmte Mikrocontroller-Platine wird meine ALA-Bibliothek ausführen, um den LED-Streifen anzusteuern, der die Befehle vom Raspberry PI über den seriellen USB-Port empfängt. Sie können Arduino Uno, Nano und Mega Board verwenden.
  • Himbeer-PI :Dieser kleine PC bietet die Webseite zur Steuerung der Beleuchtungs- und Animationsparameter.

Das Projekt ist recht einfach, wenn Sie mit Arduino- und Rapberry-PI-Boards vertraut sind. Ich habe das Projekt in zwei Schritte aufgeteilt, um Sie durch den Einrichtungsprozess zu führen.

Verkabelung

WS8213 LED-Streifen sind sehr einfach anzuschließen. Sie brauchen nur genug Strom, um alle diese LEDs zu betreiben. Für sehr kurze Streifen (nicht mehr als 10 LEDs) können Sie sie sogar direkt über Ihren USB-Anschluss mit Strom versorgen, aber für längere Streifen müssen Sie eine gute Stromquelle bereitstellen. Als Ausgangspunkt schlage ich vor, den Arduino 5V-Pin zur Stromversorgung des LED-Streifens zu verwenden, wie Sie im obigen Video sehen können.

  • Arduino GND-Pin an WS2812 GND
  • Arduino 5V-Pin an WS2812 5V
  • Arduino Pin 6 auf WS2812 Ctrl/Din Pin

Wenn Sie mehr Pixel ansteuern möchten, müssen Sie mehr Leistung bereitstellen. Die Berechnung ist einfach. Jede RGB-LED zieht 60mA bei vollem hellem Weiß. Um beispielsweise einen 2 m langen Streifen mit 60 LEDs/Meter zu betreiben, benötigen Sie ein 5 V Netzteil mit 2 m * 60 Pixel/m * 60 mA =7,2 A.

Schließen Sie Ihr Netzteil, das Arduino-Board und den WS8212-Streifen so an.

  • Power GND zu Arduino GND und WS2812 GND
  • Strom 5V an Arduino 5V Pin und WS2812 5V
  • Arduino-Pin 6 auf WS2812 CTRL-Pin

Beachten Sie, dass Sie durch die Stromversorgung des Arduino 5V-Pins Arduino mit Strom versorgen, sodass Sie ihn nicht an eine zweite Stromquelle am Hohlstecker anschließen müssen. Seien Sie sehr vorsichtig, wenn Sie dieses Verbindungsschema verwenden, da der 5-V-Pin den Spannungsregler und die Schutzvorrichtungen umgeht. Für weitere Details können Sie diese Anleitung lesen.

Weitere Informationen zum Verdrahtungsschema der WS8212 LED-Streifen finden Sie in dieser Anleitung.

Arduino-Setup

Verbinden Sie Ihr Arduino-Board mit dem USB-Port Ihres PCs. Öffnen Sie die Arduino IDE und starten Sie den Bibliotheksmanager (Skizze> Bibliothek einschließen> Bibliotheken verwalten), um die neueste ALA-Bibliothek zu installieren .

Öffnen Sie die RgbStripSerial Beispiel (Dateien> Beispiele> ALA> RgbStripSerial) und überprüfen Sie, ob die NUM_PIXELS Die konstante Definition entspricht der Anzahl der LEDs in Ihrem RGB-Streifen. Denken Sie daran, dass Sie das verbesserte Verbindungsschema verwenden müssen, wenn Sie mehr als 10 Pixel ansteuern möchten.

Sie können die Skizze jetzt auf Ihr Board hochladen, indem Sie Strg+U pressing drücken aus der Arduino IDE oder wählen Sie Upload Aktion im Sketch-Menü. Wenn Sie Probleme beim Hochladen der Skizze haben, überprüfen Sie den Board-Typ und den Port im Tools-Menü.

Öffnen Sie den Arduino Serial Monitor (Tools> Serial Monitor) und Sie sehen eine Willkommensnachricht wie diese.

Stellen Sie die Zeile „Newline“ unten rechts ein und stellen Sie sicher, dass die Baudrate auf 9600 eingestellt ist.

Versuchen Sie nun die folgenden Befehle (fett gedruckt) ohne Leerzeichen:

  • A=101 - schalte die LEDs ein
  • A=251 - führe eine "Larson-Scanner"-Animation aus
  • P=2 - legt eine Regenbogenpalette fest
  • A=242 - eine weitere Animation

Das ist cool oder?

Sie können die verschiedenen Befehle und Kombinationen nach dieser kurzen Referenz ausprobieren:

  • A=[Animationscode] - Stellen Sie die Animation ein. Verfügbare Animationscodes sind in der Header-Datei AlaLed.h aufgeführt.
  • B=[Helligkeit] - Stellen Sie die Helligkeit ein. Er muss im Bereich von [0-100] liegen.
  • D=[Dauer] - Legen Sie die Dauer des Animationszyklus in Millisekunden fest. Standardwerte liegen zwischen 500 und 5000.
  • C=[Farbe] - Stellen Sie die Farbe ein. Es muss eine hexadezimale RGB-Darstellung wie E8A240 sein.
  • P=[Palette] - Legen Sie die Palette fest. Er muss im Bereich von [0-5] liegen.

Jetzt können Sie die Animationen von Ihrem Smartphone aus steuern.

Raspberry PI-Setup

In diesem Teil des Projekts werden wir das Rapberry Pi-Board so einrichten, dass es einen kleinen Webserver betreibt, um den LED-Streifen über einen Webbrowser zu steuern. Beachten Sie, dass dieselbe Anwendung auf jedem PC mit installiertem Python 3 ausgeführt werden kann.

Voraussetzung ist, dass Ihr Raspberry PI bereits konfiguriert ist und das neueste Raspbian OS läuft (ich habe es mit Stretch getestet) und mit dem Internet verbunden.

Wir müssen zuerst einige Bibliotheken für Python 3 mit dem folgenden Befehl installieren:

sudo pip3 install pyserial Kolben 

Erstellen Sie ein Home-Verzeichnis für Ihr Projekt:

mkdir /home/pi/AlaWebcd /home/pi/AlaWeb 

Laden Sie das AlaWeb-Git-Repository in das LightStrip-Verzeichnis herunter und extrahieren Sie es.

wget https://github.com/bportaluri/AlaWeb/archive/master.zipunzip master.zip 

Die gesamte Software ist nun bereit und eingerichtet. Verbinden Sie den Arduino USB-Port mit dem Raspberry PI. Die gerade heruntergeladene AlaWeb-Anwendung kommuniziert mit dem Arduino-Board über die serielle USB-Verbindung.

cd AlaWeb-mastersudo python3 AlaWeb.py 

Die AlaWeb-Anwendung listet alle seriellen USB-Ports auf und versucht, Arduino automatisch zu erkennen. Wenn die Schleife weiterläuft, unterbrechen Sie die Ausführung und versuchen Sie, den Portnamen wie folgt zu übergeben (ersetzen Sie die Port-ID nach Bedarf):

 sudo python3 AlaWeb.py /dev/ttyACM0 

Wenn alles in Ordnung ist, sollten Sie so etwas sehen.

Öffnen Sie einen Webbrowser und verbinden Sie sich mit der angezeigten URL. Sie erhalten eine Webseite voller Schaltflächen, mit denen Sie den LED-Streifen über einen Webbrowser steuern können.

Viel Spaß!

Code

AlaWeb
AlaWeb ist der in Python und Flask geschriebene tini-Webserver zur Steuerung der Animationen über einen Webbrowser.https://github.com/bportaluri/AlaWeb
ALA
Arduino Light Animation (ALA) ist eine Bibliothek für Arduino-Boards, um die Entwicklung von Lichtanimationen mit LEDs und LED-Streifen zu vereinfachen. Besuchen Sie diese Seite für weitere Informationen:http://yaab-arduino.blogspot.it/p/ala.htmlhttps://github.com/bportaluri/ALA

Schaltpläne


Herstellungsprozess

  1. Erstellen Sie mit Samsung SAMIIO, Arduino UNO und Raspberry Pi in wenigen Minuten einen Brandmelder
  2. Aeroponik mit Raspberry Pi und Feuchtigkeitssensor
  3. Roboter bauen mit Raspberry Pi und Python
  4. Bauen Sie Ihren internetgesteuerten Videostreaming-Roboter mit Arduino und Raspberry Pi
  5. Webgesteuerter Raspberry Pi-Roboter mit Video
  6. LCD-Panel mit Arduino für Flugsimulator
  7. Schalter/LED-Panel mit Arduino für FS2020
  8. Arduino mit Bluetooth zur Steuerung einer LED!
  9. Arduino-Vierbeiner
  10. Steuerung des Servomotors mit Arduino und MPU6050