Inhaltsverzeichnis:

Pumpkin Pi Digitaler Dekorationscontroller - Gunook
Pumpkin Pi Digitaler Dekorationscontroller - Gunook

Video: Pumpkin Pi Digitaler Dekorationscontroller - Gunook

Video: Pumpkin Pi Digitaler Dekorationscontroller - Gunook
Video: AtmosFX Funny Singing Pumpkins as digital Decoration [How To Setup Halloween DIY Projection] 2024, Juli
Anonim
Pumpkin Pi Digitaler Dekorationscontroller
Pumpkin Pi Digitaler Dekorationscontroller
Pumpkin Pi Digitaler Dekorationscontroller
Pumpkin Pi Digitaler Dekorationscontroller

Hallo Leute, ich möchte euch den Pumpkin Pi vorstellen. Einfach ausgedrückt ist es ein I/O-Controller für den Raspberry Pi mit zwölf programmierbaren Ausgängen, aber mit ein wenig Hokuspokus (oder Python-Code für Sie und mich) wird er zu einem digitalen Dekorationscontroller, der zwei Videoausgänge mit Audio und Beleuchtung bietet FX mit Video synchronisiert.

Der HintergrundLast Halloween Ich beschloss, ein Schaufensterdisplay mit Hexenmotiv zu erstellen, nachdem ich kürzlich die digitalen Dekorationen von AtmosFX entdeckt hatte, fühlte ich mich inspiriert, sie gut zu nutzen und in mein Display zu integrieren.

Ich brauchte eine Möglichkeit, zwei Video-Playlists abwechselnd auf zwei verschiedenen Displays (einem Fernseher und einem Projektor) abzuspielen, ohne dass sich die Videos versehentlich überlappen. Ich wollte auch Beleuchtungseffekte integrieren, um die Atmosphäre zu verbessern.

Mehr zum Controller Da er von einem Halloween-Projekt inspiriert wurde, fand ich den Namen Pumpkin Pi sehr passend. Es ist beabsichtigt, Folgendes zu tun:

  • Steuern Sie bis zu 12x einzelne LEDs (oder 4x RGB-Streifen) über 12x programmierbare Ausgänge
  • Betrieb mit 12 V über eine eigene externe Stromversorgung
  • 3x Quad-NPN-Transistor-Arrays zur Unterstützung von 1 Ampere Ausgangsstrom pro Verbindung
  • Fügen Sie die Option hinzu, dass der PIR / Bewegungssensor die Wiedergabe und Aktionen auslöst
  • Video- und Audiowiedergabe mit den Videofunktionen des Raspberry Pi
  • Zwei Videos können gleichzeitig oder abwechselnd wiedergegeben werden, da beide Pis über ihre GPIOs verbunden sind, um programmierbare Aktionen auszulösen und unerwünschte Videoüberlappungen zu verhindern
  • Beleuchtungs-FX mit der Videowiedergabe synchronisieren
  • Eingebaute LEDs zur Anzeige des individuellen Ausgangsstatus

Alternative VerwendungSie können den Pumpkin Pi auch als Breakout-Board mit einem einzelnen Raspberry Pi verwenden und haben dennoch 12x programmierbare Ausgänge zur Steuerung von LEDs, Motoren, Relais usw.

Hinweis: Möchten Sie sehen, wie ich den Pumpkin Pi in meinem Halloween-Display verwendet habe? Schauen Sie sich mein Witching Hour Halloween Display Instructable an.

Schritt 1: Dinge, die Sie brauchen

Dinge, die du brauchen wirst
Dinge, die du brauchen wirst

Um den Pumpkin Pi neu zu erstellen, benötigen Sie die folgenden Werkzeuge und Komponenten:

Werkzeuge

  • Lötkolben
  • Multimeter
  • Kabelschneider
  • Schraubendreher (ich habe eine kleine flache Klinge mit meinen Klemmenblöcken verwendet)
  • Bohrer und Bohrer (ich habe 0.7mm und 1.0mm Hartmetallbits verwendet)
  • PCB Ätzkit

Komponenten

  • 1x Kupferplatine (ca. 102 mm x 70 mm)
  • 14x 1kΩ Widerstände
  • 2x 10kΩ Widerstände
  • 1x 4k7Ω Widerstand
  • 1x Kondensator (optional)
  • 1x rote 5mm LED und ein passender Strombegrenzungswiderstand
  • 12x gelbe 5mm LEDs mit integriertem Widerstand für 12V Versorgung
  • 3x ULN2074B Quad NPN Darlington Pair Transistor Arrays
  • 3x 16-fach IC-Sockel
  • 1x DC-Buchse
  • 1x 2-Wege-Header
  • 2x 40-Pin 2x20 Stiftleiste
  • 7x 3-Wege-5-mm-vertikaler Schraubklemmenblock für die Leiterplattenmontage
  • 1x PIR-Sensor (optional)

Der Himbeer-Pi

Sie benötigen auch einen Raspberry Pi (oder zwei) mit allem, was für die Verwendung des Pi erforderlich ist. Dazu gehören das Pi-Netzteil, die MicroSD-Karte und die Raspbian-Software. Für beste Videoleistung würde ich den Raspberry Pi 3 empfehlen.

Für die Videowiedergabe verwenden wir den OMXPlayer mit dem OMXPlayer-Wrapper (dazu aber später mehr!).

Hinweis: Dieses Instructable setzt voraus, dass Sie über Erfahrung oder Kenntnisse in Elektronik, Löten, PCB-Herstellung und dem Raspberry Pi verfügen. Wenn Sie eine dieser Fähigkeiten zum ersten Mal ausprobieren, würde ich Ihnen empfehlen, sich einige der folgenden Ressourcen anzusehen:

  • Elektronik Klasse. Enthält eine Kurzanleitung und behandelt Dinge wie Löten und grundlegende Komponenten.
  • PCB-Herstellung von ASCAS anweisbar. Behandelt die hier verwendete Tonertransfer-Herstellungstechnik.
  • Wenn Sie mit Leiterplatten noch weiter gehen möchten, besuchen Sie die Circuit Board Design Class.
  • Raspberry Pi-Klasse. Informieren Sie sich über den Raspberry Pi, erfahren Sie, wie Sie ihn einrichten und verwenden.

Schritt 2: Die Elektronik

Die Elektronik
Die Elektronik
Die Elektronik
Die Elektronik
Die Elektronik
Die Elektronik

Erstellen der Schaltung

Als erstes müssen Sie Ihre Schaltung erstellen. Der einfachste Weg zur Reproduktion ist die Herstellung der Leiterplatte im Tonertransferverfahren mit den beigefügten druckbaren Schaltungs-PDFs. Wenn Sie dies noch nicht ausprobiert haben, ist es viel einfacher, als Sie vielleicht denken, und Sie benötigen nur wenige Elemente, um loszulegen. Ich empfehle immer die DIY Customized Circuit Board (PCB Making) Instructable von ASCAS.

Hinweis: Ich habe auch die PCB-Designdatei hinzugefügt, die ich mit DesignSpark erstellt habe.

Sie benötigen einen Lötkolben und einige grundlegende Lötfähigkeiten, um alles auf der Platine zu montieren. Es gibt viele Instructables zum Löten, falls Sie neu sind, es gibt auch eine gute Instructables Electronics Class!

Wenn der PCB-Herstellungsprozess nicht für Sie geeignet ist, können Sie ihn auch auf einer Streifenplatine (Vero) oder auf einem Steckbrett neu erstellen (ich habe meinen Prototyp mit einem Steckbrett versehen, wie im obigen Bild gezeigt). In meinem Prototyp verwendete ich einzelne NPN-Darlington-Paar-Transistoren im Gegensatz zu den Transistor-Arrays auf einem IC. (Integrierter Schaltkreis).

Wie es funktioniert

Es ist im Grunde eine Breakout-Platine für den Pi, die zwölf der GPIO-Pins des Pi mit NPN-Darlington-Paar-Transistoren (in Form von drei Transistor-Arrays) verbindet. Wenn der relevante Pi-Ausgang hoch wird, schaltet er den Transistor um, um den Stromkreis zu vervollständigen.

Es gibt auch zwei weitere GPIO-Pins, die die beiden Pis über Pull-Down-Widerstände, die als Trigger fungieren, miteinander "verbinden" (mehr dazu später im Schritt "Programmieren des Pi").

Wie wird es angetrieben?

Der Pumpkin Pi wird über ein eigenes externes 12-V-Netzteil mit Strom versorgt. Bei Verwendung der von mir ausgewählten Transistoren kann es bis zu 1,75 Ampere Strom pro Ausgang (oder in diesem Fall 1 Ampere aufgrund meiner Wahl der Schraubklemmen) liefern. Die Pis werden über ihre eigenen Pi-Netzteile mit Strom versorgt, der Pumpkin Pi stellt nur sehr geringe Anforderungen an die Leistungsfähigkeit des Pi, da er nur zum Schalten von Transistoren verwendet wird. Die Schaltung enthält die Option eines Glättungskondensators, dies ist jedoch nicht unbedingt erforderlich. Ich habe einen 2200uF mit 16 V verwendet (was übertrieben ist, aber ich hatte sie zur Hand).

Anzeige-LEDs und Widerstände

Es gibt zwölf gelbe Ausgangsanzeige-LEDs und eine rote Betriebsstatus-LED. Stellen Sie sicher, dass Sie die richtige Strombegrenzungs-LED mit Ihrer roten Status-LED verwenden, meine hat eine Durchlassspannung von 3,2 V und einen Durchlassstrom von 20 mA, daher habe ich einen 470-Ω-Widerstand ausgewählt (basierend auf dem 12-V-Eingangsstrom). Wenn Sie sich nicht sicher sind, wie Sie den richtigen Widerstand für Ihre LED auswählen, sehen Sie sich diesen Rechnerassistenten an.

Sie haben vielleicht bemerkt, dass für jede der zwölf gelben Anzeige-LEDs keine Widerstände im Stromkreis vorhanden sind. Da ich Platz auf der Platine sparen wollte, habe ich mich für die Verwendung von LEDs mit integrierten Widerständen für die 12-V-Versorgung entschieden.

Bewegungsauslöser (PIR-Sensor) und Übersteuerung

Die Schaltung beinhaltet die Option eines Bewegungsauslösers. Es verwendet einen Pull-up-Widerstand, so dass jedes Mal, wenn der Alarmstift (auf der Platine als AL gekennzeichnet) auf Low geht, eine Aktion ausgelöst wird. Dies ist praktisch, wenn Sie möchten, dass Ihre digitale Dekorationswiedergabe bewegungsaktiviert wird.

Die Schaltung enthält auch eine Triggerüberbrückung. Wenn sich die Übersteuerung in einem geschlossenen Zustand befindet, verbindet sie den Eingang mit Masse, sodass Sie die Aktion manuell auslösen können. Verwenden Sie den zweipoligen Override-Header mit einem Schalter oder einem "Jumper".

Schritt 3: Einrichten des Raspberry Pi

Einrichten des Raspberry Pi
Einrichten des Raspberry Pi

Raspbian installieren

Um mit der Einrichtung des Raspberry Pi zu beginnen, müssen Sie Ihre MicroSD-Karte mit dem Raspbian-Image vorbereiten. Laden Sie das neueste Bild hier herunter (Raspbian Stretch war zum Zeitpunkt des Schreibens die neueste Version).

Wenn Ihre MicroSD-Karte bereit ist, legen Sie sie in den Pi ein und schalten Sie sie ein. An dieser Stelle möchten Sie wahrscheinlich einen Fernseher, eine Tastatur und eine Maus anschließen. Standardmäßig sollte der Pi in das GUI-Desktop-Betriebssystem booten. Ich empfehle Ihnen, das richtige Datum und die richtige Zeitzone auf Ihrem Pi einzustellen und möglicherweise eine Verbindung zu Ihrem WLAN herzustellen.

An dieser Stelle stelle ich normalerweise sicher, dass die SSH-Konnektivität aktiviert ist, damit ich über PuTTy über das Netzwerk auf das Pi-Terminal zugreifen kann liegt an Ihnen.

Hinweis: Dieses Instructable geht davon aus, dass Sie bereits mit dem Raspberry Pi vertraut sind. Wenn nicht, können Sie dem offiziellen Raspberry Pi-Leitfaden zum Installieren von Betriebssystemabbildern in Ihrer Umgebung hier folgen: Windows, MacOS, Linux.

Tipp: Wenn Sie mit dem Raspberry Pi völlig neu sind, empfehle ich Ihnen, sich diese Instructables-Klasse anzusehen.

Sobald Ihr Pi mit Raspbian betriebsbereit ist und die Grundeinrichtung abgeschlossen ist, können Sie ihn als Digital Decoration-Player einsetzen, der die Audio- und Videowiedergabe unterstützt. Denken Sie daran, dass Sie alle diese Schritte auf dem zweiten Pi wiederholen müssen, wenn Sie zwei Raspberry Pis für die duale Wiedergabefunktionalität verwenden.

OMXPlayer-Wrapper für Python

Um unsere Digital Decoration-Videos abzuspielen, verwenden wir den OMXPlayer. Dies unterstützt hochauflösende Videos (einschließlich HD) in einer Reihe gängiger Videoformate. Obwohl OMXPlayer 'out-of-the-box' in Raspbian enthalten ist, müssen Sie den OMXPlayer-Wrapper installieren, damit es mit den benutzerdefinierten Python-Skripten, die wir erstellen werden, gut funktioniert.

Vor der Installation des Wrappers empfehle ich, die Pakete des Systems zu aktualisieren. Führen Sie die folgenden Befehle von einem CLI-Terminal aus (der Pi muss mit dem Internet verbunden sein, damit dies funktioniert):

Aktualisieren Sie die Paketliste des Systems:

sudo apt-get update

Aktualisieren Sie alle Ihre installierten Pakete auf die neuesten Versionen:

sudo apt-get dist-upgrade

Bereinigen Sie den Speicherplatz, der zum Herunterladen von Aktualisierungspaketen verwendet wird:

sudo apt - sauber machen

Als nächstes möchten Sie den OMXPlayer-Wrapper selbst herunterladen. Führen Sie dazu den folgenden Befehl erneut von einem CLI-Terminal aus, bei dem der Pi mit dem Internet verbunden ist:

Installieren Sie den OMXPlayer-Wrapper:

sudo python3 -m pip install omxplayer-wrapper

Weitere Informationen zum omxplayer-wrapper finden Sie in der Dokumentation hier.

Tipp: Wenn beim Versuch, Videos mit dem OMXPlayer-Wrapper abzuspielen, DBUS-Verbindungsfehler auftreten, versuchen Sie, den Python3-dbus mit dem folgenden Befehl zu installieren:

sudo apt-get install python3-dbus

Andere Einstellungen und Optimierungen

Standard-Audioausgang

Der Raspberry Pi unterstützt die Audiowiedergabe über HDMI oder die 3,5-mm-Klinke. Wenn der Pi jedoch erkennt, dass das angeschlossene HDMI-Gerät Audio unterstützt, wird standardmäßig das HDMI-Gerät verwendet. Wenn Sie wie ich ein audiofähiges HDMI-Gerät haben, aber Ihre Audioausgabe stattdessen standardmäßig auf die 3,5-mm-Buchse schalten soll, können Sie dies erzwingen, indem Sie die folgende Zeile zur Datei config.txt auf dem Pi hinzufügen:

hdmi_ignore_edid_audio=1

Konsolenausgabe auf leer setzen

Wenn Sie nicht möchten, dass die Videoausgabe des Pi nach dem Booten den Konsolenbildschirm anzeigt, können Sie die Konsole auf leer setzen, indem Sie Folgendes am Ende der Datei /boot/cmdline.txt auf dem Pi hinzufügen. Beachten Sie, dass es sich um einen Kernel-Befehlsparameter handelt, der sich in einer einzelnen Textzeile befinden muss:

Konsoleblank=0

Empfohlen: