Inhaltsverzeichnis:

R Pi -Remote Control PA und Beleuchtungssystem - Gunook
R Pi -Remote Control PA und Beleuchtungssystem - Gunook

Video: R Pi -Remote Control PA und Beleuchtungssystem - Gunook

Video: R Pi -Remote Control PA und Beleuchtungssystem - Gunook
Video: ПЕВИЦА И ВОКАЛЬНЫЙ ТРЕНЕР СЛУШАЕТ ГОЛОС ДИМАША / РЕАКЦИЯ С ПЕРЕВОДОМ 2024, November
Anonim
R Pi -Remote Control PA und Beleuchtungssystem
R Pi -Remote Control PA und Beleuchtungssystem
R Pi -Remote Control PA und Beleuchtungssystem
R Pi -Remote Control PA und Beleuchtungssystem
R Pi -Remote Control PA und Beleuchtungssystem
R Pi -Remote Control PA und Beleuchtungssystem

Dies ist ein einfaches Projekt zum Erstellen von Audioansagen und zum Ein- und Ausschalten von Lichtern auf einem PI aus der Ferne über einen Webbrowser. Das brauchen Sie also:

1) Raspberry Pi mit vorinstalliertem Apache und PHP. Ich habe einen alten Pi v1 benutzt, den ich herumliegen hatte. Ich gehe davon aus, dass Sie es über Wi-Fi oder Ethernet mit Ihrem Heimnetzwerk verbunden haben.

2) Audiolautsprecher, die über den Ausgangslautsprecheranschluss mit dem Pi verbunden werden können. Ich habe einen alten Lautsprechersatz aus einer alten Stereoanlage verwendet.

3) Set von Weihnachtsbaumlichtern - ich habe meine von Poundland gekauft.

4) Krokodilklemmen und Steckbrettkabel zum Anschließen / Testen des Pi an die Lautsprecher und Lichter. (siehe 7)

5) PC oder Laptop mit Putty-Terminalemulator für den Zugriff auf den Raspberry Pi

6) Schrumpfdraht

7) Heißluftpistole zum Anschließen von Lautsprecher- und Beleuchtungskabeln

Die Grundidee ist, dass ich ein Webformular verwende, um Ferndurchsagen über meine(n) Lautsprecher zu machen und auch das Licht ein- und auszuschalten. Ich verwende PHP-Skripte, die wiederum Espeak für das Text-to-Speech-Bit und GPIO-Befehle für die Lichter ausführen. Ich gehe davon aus, dass Sie wissen, wie Sie Apache und PHP auf Ihrem Raspberry Pi installieren. Es ist sehr gut dokumentiert.

Ich habe versucht, diese Kosten niedrig zu halten und habe einen alten Stereo-Systemlautsprecher verwendet, den ich hatte, und nachdem ich die Anschlüsse entfernt und die Kabel freigelegt hatte, schloss ich ihn an ein altes Mikrofonkabel an, das ich ebenfalls zerschnitten hatte Die Lautsprecherlautstärke war niedriger als bei einem extern betriebenen Lautsprecher, ich konnte alles über den Raspberry Pi mit Strom versorgen. Das gleiche galt für die Lichter. Ich entfernte die 3,3-V-Stromversorgungsbox von ihnen, legte die Drähte frei und schloss sie mit weiblichen / männlichen Steckbrettanschlüssen an den Pi an. All dies habe ich mit Krokodilklemmen verbunden.

Nach dem Testen und Validieren habe ich später alle Drähte mit Schrumpfdraht mit einer Heißluftpistole verbunden.

Schritt 1: Einrichten und Testen der Hardware

Einrichten und Testen der Hardware
Einrichten und Testen der Hardware
Einrichten und Testen der Hardware
Einrichten und Testen der Hardware
Einrichten und Testen der Hardware
Einrichten und Testen der Hardware

Ich habe den Pi mit Strom versorgt und die Lautsprecher an die Audioausgangsbuchse des Pi angeschlossen. Ich habe die Lichter angeschlossen, indem ich ein Ende an GPIO17 (6. Pin unten an der inneren Säule) und GND (3. Pin unten an der äußeren Säule) angeschlossen habe - siehe Foto oben. BITTE BEACHTEN SIE, DASS ICH EINE PI-Version 1 VERWENDET HABE, SO BITTE DIE PINS ENTSPRECHEND ÄNDERN, WENN SIE EINE SPÄTERE VERSION DER PI VERWENDEN.

Oben abgebildet sind der Schrumpfdraht und die Heißluftpistole zum Anschließen von Lautsprecher- und Beleuchtungskabeln

Als nächstes mit allem eingeschaltet, loggte ich mich mit Putty von meinem Windows-Laptop auf den Pi ein. Um die IP-Adresse des Pi zu finden, öffnen Sie die IP-Adresse Ihres Routers in Ihrem Webbrowser (normalerweise so etwas wie 192.168.1.254), der die Liste der verbundenen Geräte einschließlich des Pi-Hostnamens und der IP-Adresse anzeigt. Sie können beides verwenden, um sich bei Putty anzumelden, aber ich verwende normalerweise die IP-Adresse, da ich eine Reihe von PIs habe. Alternativ können Sie sich bei Putty anmelden, indem Sie einen Hostnamen wie pi oder raspberrypi ausprobieren. Wenn Sie auf Putty nach dem Benutzernamen und dem Passwort gefragt werden, versuchen Sie pi/raspberry, die die Standardeinstellungen sind. (Die VERWENDUNG VON STANDARDS IST SEHR UNSICHER UND MACHT SIE OFFEN FÜR ANGRIFFE VON HACKERN, SELBST IN EINEM PRIVATEN NETZWERK). Nach meiner Erfahrung sind die Pi-Programme, Espeak- und GPIO-Bibliotheken standardmäßig auf den meisten Pi-Images installiert.

Okay, wenn Sie auf die Befehlszeile auf dem RaspberryPi zugreifen, versuchen Sie die folgenden Befehle - sudo alsamixer, die eine Soundkartensteuerung anzeigen sollten - Wenn Sie einen passiven Lautsprecher haben, wie ich ihn verwendet habe, müssen Sie die Lautstärke auf max. Als nächstes schalten Sie das Licht ein

sudo /usr/local/bin/gpio -g mode 17 outsudo /usr/local/bin/gpio -g schreiben 17 1

dann schalte das Licht aus

(Hinweis: Bei Problemen versuchen Sie es einfach mit sudo gpio usw. - überprüfen Sie auch, ob gpio installiert ist, indem Sie gpio -v eingeben - wenn Sie dies installieren müssen, schauen Sie unter https://wiringpi.com/download-and-install/ nach.)

sudo /usr/local/bin/gpio -g write 17 0

Jetzt testen, ob espeak funktioniert

~ $ sudo espeak "Dies ist ein Test"

Ich hatte selten Probleme mit Espeak, aber Probleme, wenn die Alsamixer-Lautstärke niedrig ist und manchmal andere Programme die Soundkarte gepackt haben. Sie müssen ps -ef ausführen und sehen, welche anderen Medienprozesse ausgeführt werden. Sie können so etwas wie sudo kill -9 $(sudo ps aux | sudo grep -v grep | sudo grep mplayer | sudo awk '{print $2}') verwenden, um sie zu töten - Wir verwenden dies später im PHP-Skript

Schritt 2: Einrichten des Webservers

Einrichten des Webservers
Einrichten des Webservers
Einrichten des Webservers
Einrichten des Webservers

Es gibt eine Reihe von Schritten, die wir ausführen müssen

1) Finden Sie den Besitzer des Webservices / Servers Apache2 - führen Sie sudo ps aux |. aus egrep '(apache|httpd)' und Sie sollten www-data2 sehen. Fügen Sie www-data zur sudo-Gruppe hinzu - führen Sie sudo nano /etc/sudoers aus --- fügen Sie die Zeile www-data hinzu ALL=(ALL) NOPASSWD: ALL

3) www-data zur Audiogruppe hinzufügen - sudo adduser www-data audio

4) Ein optionaler Schritt besteht darin, eine phpinfo-Datei zu erstellen, die Ihnen alle PHP-Funktionen und den Speicherort mitteilt

die conf-Datei sollten Sie Dinge ändern wollen. Zum Beispiel blockieren einige PHP-Versionen die Funktion shell_exec(), die wir benötigen, um Befehlszeilenprogramme wie Espeak vom Webserver aus auszuführen. So richten Sie phpinfo ein..

Gehen Sie zu Ihrem Standard-Webverzeichnis normalerweise /var/www oder /var/www/html….. es ist das mit der Datei index.html und geben Sie sudo nano phpinfo.php ein, geben Sie dann Folgendes in den Nano-Editor ein und drücken Sie die Steuerung O, um speichern und schließen

Vergessen Sie nicht, es ausführbar zu machen, indem Sie sudo chmod 755 phpinfo.php eingeben - Um es anzuzeigen, öffnen Sie die folgende URL in Ihrem Webbrowser mit Ihrem Hostnamen anstelle von meinem, z. B. raspberrypi -

?>

Schritt 3: Der PHP-Code und die Webskripte

Der PHP-Code und die Webskripte
Der PHP-Code und die Webskripte

Ich habe hier zwei Programme verwendet - eines für das Webformular (espeak_form.php) und das andere, das die Formulardaten verarbeitet (my_espeak.php) Diese habe ich oben als Textdateien eingefügt und um sie auf Ihren Pi zu übertragen, mit Putty beide php erstellen Dateien ausschneiden und dann aus den jeweiligen oben gezeigten Textdateien ausschneiden und einfügen

pi@raspberrypi /var/www $ sudo nano /var//www/my_espeak.php

pi@raspberrypi /var/www $ sudo nano /var//www/espeak_form.php

Denken Sie daran, sie ausführbar zu machen, indem Sie sudo chmod 755 *.php eingeben

Das von mir geschriebene Webformular-PHP-Skript (espeak_form.php) wird keine Designpreise gewinnen, aber es hat 2 Unterformulare. Einer für die Durchsage (Text-to-Speech) und der andere wird verwendet, um die Lichter ein- und auszuschalten. Die Espeak-Subform ermöglicht die Auswahl verschiedener Akzente, einer weiblichen Stimme und einer Flüsterfunktion, Der Kern von my_espeak.php ist die Verwendung der PHP-Funktion - shell_exec(). Wie Sie sehen können, ermöglicht dies PHP, Linux-Befehle auszuführen, ohne dass andere Bibliotheken erforderlich sind, wie Sie es beispielsweise in Python benötigen.

Schritt 4: Fazit

Dies ist eine einigermaßen komplexe Lösung, da Sie viele Elemente der Pi-Umgebung verwenden, z. B. PHP, Befehlszeilenfunktionen, Apache, GPIO usw. Ich hoffe, dass sie veranschaulicht, was Sie mit PIs speziell und IOT im Allgemeinen tun können. Es gibt eine Reihe anderer Möglichkeiten, dies zu erreichen, und Sie können es sogar über das Internet steuern, wenn Sie Portweiterleitung, Firewalling und / oder VPN verstehen. Ich hoffe es hat euch gefallen, aber hier ist mein Haftungsausschluss:

ICH KANN NICHT GARANTIEREN, DASS DIES EIN SICHERES ODER SICHERES SYSTEM IST UND DAHER BITTE NICHT FÜR ZWECKE VERWENDEN, DIE DIE VERARBEITUNG VON PRIVATEN, PERSÖNLICHEN ODER GEWERBLICH SENSIBLEN DATEN EINSCHLIESSEN. VERBINDEN SIE AUCH IHRE KABEL SICHER UND WENN SIE TEMPORÄRE ANSCHLÜSSE VERWENDEN, Z. B. DANN LASSEN SIE DAS SYSTEM NICHT UNBEAUFSICHTIGT ODER IN HARTEN UMGEBUNGEN VERWENDEN.

Dies ist eine fantastische Möglichkeit, viel über IOT zu lernen und sich daran zu erinnern, bevor Sie über kommerzielle Anwendungen mit solchen Methoden nachdenken. Der Raspberry Pi ist nur so gut wie seine SD-Karte. Ich würde sagen, ein Jahr bei normaler Nutzung im Vergleich zu einigen Servern, die ich verwendet habe und die über 10 Jahre liefen.

Wie auch immer - Viel Glück.

Empfohlen: