Innehållsförteckning:

R Pi -fjärrkontroll PA och belysningssystem: 4 steg (med bilder)
R Pi -fjärrkontroll PA och belysningssystem: 4 steg (med bilder)

Video: R Pi -fjärrkontroll PA och belysningssystem: 4 steg (med bilder)

Video: R Pi -fjärrkontroll PA och belysningssystem: 4 steg (med bilder)
Video: Mitt jobb är att observera skogen och här händer något konstigt. 2024, November
Anonim
R Pi -Remote Control PA och belysningssystem
R Pi -Remote Control PA och belysningssystem
R Pi -Remote Control PA och belysningssystem
R Pi -Remote Control PA och belysningssystem
R Pi -Remote Control PA och belysningssystem
R Pi -Remote Control PA och belysningssystem

Detta är ett enkelt projekt för att göra ljudmeddelanden och tända och släcka lampor på en PI på distans från en webbläsare. Så här är vad du behöver:

1) Raspberry Pi med Apache och PhP förinstallerat. Jag använde en gammal Pi v1 som jag hade liggande. Jag antar att du har den ansluten till ditt hemnätverk via wi-fi eller ethernet.

2) Ljudhögtalare som kan anslutas till Pi via utgångshögtalaranslutningen. Jag använde en gammal uppsättning högtalare från ett gammalt stereosystem.

3) Uppsättning av julgransljus - jag köpte mina från Poundland.

4) Krokodilklämmor och paneler för anslutning / testning av Pi till högtalarna och lamporna. (Se 7)

5) PC eller laptop med Putty terminalemulator för åtkomst till Raspberry Pi

6) Krymptråd

7) Varmluftspistol för anslutning av högtalare och belysningskablar

Grundtanken är att jag använder ett webbformulär för att göra fjärrmeddelanden via mina högtalare och även tända och släcka lamporna. Jag använder PHP -skript som i sin tur kör Espeak för text till tal -bit och GPIO -kommandon för lamporna. Jag antar att du vet hur du installerar Apache och PhP på din Raspberry Pi. Det är mycket väl dokumenterat.

Jag försökte hålla denna låga kostnad och så jag använde en gammal stereohögtalare jag hade, och efter att ha tagit bort anslutningarna och exponerat kablarna kopplade jag den till en gammal mikrofonkabel som jag också hade klippt av. Detta innebar att medan högtalarvolymen var lägre än en externt driven högtalare, jag kunde driva allt från Raspberry Pi. Detsamma gällde lamporna. Jag tog bort 3.3v nätaggregat från dem, exponerade ledningarna och kopplade dem till Pi med hjälp av hona / manliga paneler. Jag kopplade alla dessa med krokodilklämmor.

Efter testning och validering kopplade jag senare alla trådar med värmekrymptråd med hjälp av en varmluftspistol.

Steg 1: Konfigurera och testa hårdvaran

Konfigurera och testa hårdvaran
Konfigurera och testa hårdvaran
Konfigurera och testa hårdvaran
Konfigurera och testa hårdvaran
Konfigurera och testa hårdvaran
Konfigurera och testa hårdvaran

Jag drev Pi och kopplade högtalarna till Pi: s ljudutgång. Jag kopplade lamporna genom att ansluta ena änden till GPIO17 (6: e stiftet ner på den inre kolonnen) och GND (3: e stiftet ner på den yttre kolonnen) - se bilden ovan. OBSERVERA ATT JAG ANVÄNDE EN PI -version 1 SÅ VÄNDIG ATT ÄNDRA PIN -KNAPPARNA OM DU ANVÄNDER EN SENARE VERSION AV PI.

Ovan visas värmekrymptråden och varmluftspistolen för anslutning av högtalare och belysningskablar

Därefter loggade jag in på Pi med hjälp av Putty från min Windows -bärbara dator. För att hitta Pi: s IP -adress öppnar du routerns IP -adress i din webbläsare (det brukar vara ungefär 192.168.1.254) som visar listan över anslutna enheter inklusive Pi -värdnamn och IP -adress. Du kan använda någon av dessa för att logga in på Putty men jag brukar använda IP -adressen eftersom jag har ett antal PI: er. Alternativt kan du logga in på Putty genom att prova ett värdnamn som pi eller raspberrypi. När du uppmanas att använda Putty för användarnamn och lösenord, försök med pi/hallon som är standardvärdena. (ANVÄNDNING AV STANDARDER ÄR MYCKET osäkert och lämnar dig öppen för att attackera från hackare även om de är i ett privat nätverk). Enligt min erfarenhet är Pi -programmen, Espeak- och GPIO -biblioteken installerade som standard på de flesta Pi -bilder.

Okej, när du öppnar kommandoraden på RaspberryPi försök med följande kommandon - sudo alsamixer som ska avslöja ett ljudkortskontroller - om du har en passiv högtalare, som jag har använt, måste du öka volymen till max. Slå sedan på lamporna

sudo/usr/local/bin/gpio -g -läge 17 outsudo/usr/local/bin/gpio -g skriv 17 1

släck sedan lamporna

(Observera eventuella problem, försök bara sudo gpio etc -kolla också om gpio är installerat genom att skriva gpio -v -om du behöver installera, titta på

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

Testa nu att espeak fungerar

~ $ sudo espeak "det här är ett test"

Jag har sällan haft problem med Espeak men har stött på problem när Alsamixer -volymen är låg och ibland har andra program tagit tag i ljudkortet. Du måste köra ps -ef och se vilka andra medieprocesser som körs. Du kan använda något som sudo kill -9 $ (sudo ps aux | sudo grep -v grep | sudo grep mplayer | sudo awk '{print $ 2}') för att döda dem -Vi använder detta senare i PHP -skriptet

Steg 2: Konfigurera webbservern

Konfigurera webbservern
Konfigurera webbservern
Konfigurera webbservern
Konfigurera webbservern

Det finns ett antal steg vi måste utföra

1) Hitta ägaren till webbtjänsten / servern apache2 - kör sudo ps aux | egrep '(apache | httpd)' och du bör se www-data2) lägg till www-data i sudogruppen-kör sudo nano /etc /sudoers --- lägg till rad www-data ALL = (ALL) NOPASSWD: ALL

3) lägg till www-data i ljudgruppen-sudo adduser www-data audio

4) Ett valfritt steg är att skapa en phpinfo -fil som berättar alla PHP -funktioner du har och platsen för

conf -filen om du vill ändra saker. Till exempel blockerar vissa versioner av PHP funktionen shell_exec () som vi behöver för att köra kommandoradsprogram som Espeak från webbservern. Så här konfigurerar du phpinfo..

Gå till din standardwebbkatalog vanligtvis/var/www eller/var/www/html ….. det är den med index.html -filen och skriv sudo nano phpinfo.php, skriv sedan följande i nano -redigeraren och tryck på kontroll O för att spara och avsluta

Glöm inte att göra den körbar genom att skriva sudo chmod 755 phpinfo.php - För att se den, öppna följande webbadress i din webbläsare med ditt värdnamn istället för mitt, dvs raspberrypi -

?>

Steg 3: PHP -koden och webbskript

PHP -koden och webbskript
PHP -koden och webbskript

Jag har använt två program här - Ett för webbformuläret (espeak_form.php) och det andra som bearbetar formulärdata (my_espeak.php) Jag har inkluderat dessa ovan som textfiler och för att överföra dem till din Pi, med Putty skapa både php filer och klipp sedan ut och klistra in från respektive textfiler som visas ovan

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

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

Kom ihåg att göra dem körbara genom att skriva sudo chmod 755 *.php

Webbformulärets PHP -skript (espeak_form.php) som jag skrev kommer inte att vinna några designpriser men det har 2 delformulär. Den ena för att göra meddelandet (text till tal) och den andra formen en används för att växla lamporna en och från. Underformatet espeak gör att du kan välja olika accenter, en kvinnlig röst och en viskningsfunktion, Kärnan i my_espeak.php är användningen av php -funktionen - shell_exec (). Som du kan se tillåter detta PHP att utföra Linux -kommandon utan att behöva andra bibliotek, som du skulle behöva säga i Python.

Steg 4: Slutsats

Detta är en ganska komplex lösning genom att du använder många element i Pi -miljön, dvs PHP, kommandoradsfunktioner, Apache, GPIO etc. Jag hoppas att det illustrerar vad du kan göra med PI specifikt och IOT i allmänhet. Det finns ett antal andra sätt att uppnå detta och du kan till och med styra det från internet om du förstår portvidarebefordran, brandvägg och/ eller VPN. Jag hoppas att du tyckte om det men här är min ansvarsfriskrivning:

JAG KAN INTE GARANTIERA ATT DETTA ÄR ETT SÄKERT ELLER SÄKERT SYSTEM OCH ANVÄND DET INTE DET FÖR SYFTE SOM INKLUDERAR BEHANDLING AV PRIVAT, PERSONLIGA ELLER KOMMERSIELL KÄNSLIGA DATA. ANSLUT OCKSÅ Dina kablar på ett säkert sätt och om du använder tillfälliga anslutningar, E. G. KROKODILKLIPP DÅ LÄMMER DU INTE SYSTEMET OBEHANDLAT ELLER ANVÄNDER DET I HARRA MILJÖER.

Detta är ett fantastiskt sätt att lära sig mycket om IOT och bara komma ihåg innan du tänker på kommersiella applikationer med metoder som detta. Raspberry Pi är bara lika bra som sitt SD -kort. Jag skulle säga ett år vid normal användning jämfört med vissa servrar jag använde som körde i 10+ år.

Hur som helst, lycka till.

Rekommenderad: