Kazalo:
- 1. korak: Nastavite in preizkusite strojno opremo
- 2. korak: Nastavitev spletnega strežnika
- 3. korak: Koda PHP in spletni skripti
- 4. korak: Zaključek
Video: R Pi -Daljinski upravljalnik PA in sistem razsvetljave: 4 koraki (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:07
To je preprost projekt za zvočne objave in vklop in izklop luči na PI na daljavo iz spletnega brskalnika. Torej, kaj potrebujete:
1) Raspberry Pi z vnaprej nameščenima Apacheom in PhP. Uporabil sem stari Pi v1, ki sem ga imel naokoli. Predvidevam, da ste ga povezali z domačim omrežjem prek wi-fi-ja ali etherneta.
2) Zvočniki (zvočniki), ki jih je mogoče priključiti na Pi prek povezave izhodnega zvočnika. Uporabil sem star niz zvočnikov iz starodavnega stereo sistema.
3) Komplet božičnih luči - mojo sem kupil iz Poundlanda.
4) Krokodilske sponke in kabli za povezavo do / zvočnikov in luči za priključitev / preskus Pi (glej 7)
5) Računalnik ali prenosni računalnik s terminalskim emulatorjem Putty za dostop do Raspberry Pi
6) Termoskrčljiva žica
7) Pištola z vročim zrakom za priključitev žic zvočnikov in razsvetljave
Osnovna ideja je, da uporabljam spletni obrazec za daljinsko objavo prek zvočnikov (zvočnikov) in tudi vklop in izklop luči. Uporabljam skripte PHP, ki nato izvajajo Espeak za bit v govor in ukaze GPIO za luči. Predvidevam, da veste, kako namestiti Apache in PhP na svoj Raspberry Pi. Je zelo dobro dokumentirano.
Poskušal sem obdržati to nizko ceno, zato sem uporabil stari zvočnik stereo sistema, ki sem ga imel, in potem, ko sem odstranil povezave in izpostavil kable, sem ga priključil na stari mikrofonski kabel, ki sem ga tudi prerezal. To je pomenilo, da je glasnost zvočnika je bila nižja od zvočnika z zunanjim napajanjem, vse sem lahko napajal iz Raspberry Pi. Enako je veljalo za luči. Odstranil sem jim napajalno omarico 3.3V, izpostavil žice in jih povezal s Pi z uporabo ženskih / moških priključkov na plošči. Vse to sem povezal s krokodilskimi posnetki.
Po testiranju in validaciji sem pozneje vse žice povezal s toplotno skrčljivo žico s pištolo za vroč zrak.
1. korak: Nastavite in preizkusite strojno opremo
Napajal sem Pi in zvočnike priključil na Pi -jev avdio izhod. Luči sem priključil tako, da sem en konec priključil na GPIO17 (6. pin navzdol na notranjem stolpcu) in GND (3. pin navzdol na zunanjem stolpcu) - glej zgornjo fotografijo. Prosimo, upoštevajte, da sem uporabil različico PI 1, zato prosimo, da PIN spremenite v skladu s tem, če uporabljate poznejšo različico PI.
Zgoraj sta prikazana termoskrčljiva žica in pištola s toplim zrakom za priključitev žic zvočnikov in razsvetljave
Nato sem se z vsem vklopljenim prijavil na Pi z uporabo Puttyja iz prenosnika Windows. Če želite najti naslov IP Pi, odprite naslov IP usmerjevalnika v spletnem brskalniku (običajno je to na primer 192.168.1.254), ki bo prikazal seznam povezanih naprav, vključno z imenom gostitelja Pi in naslovom IP. Za prijavo v Putty lahko uporabite katerega koli od teh, vendar običajno uporabljam naslov IP, ker imam številne PI. Druga možnost je, da se prijavite v Putty tako, da poskusite z imenom gostitelja, na primer pi ali raspberrypi. Ko vas Putty pozove, da vnesete uporabniško ime in geslo, poskusite pi/raspberry, ki sta privzeti. (UPORABA DEFAULTOV JE ZELO NESIGURNA in vas pusti, da se odprete za napad na hekerje, tudi če ste v zasebnem omrežju). Po mojih izkušnjah so programi Pi, knjižnice Espeak in GPIO privzeto nameščeni na večini slik Pi.
V redu, ko dostopate do ukazne vrstice na RaspberryPi, poskusite z naslednjimi ukazi - sudo alsamixer, ki naj razkrije kontrole zvočne kartice - če imate pasivni zvočnik, kot sem ga uporabil, boste morali glasnost povečati na max. Nato vklopite luči
sudo/usr/local/bin/gpio -g način 17 outsudo/usr/local/bin/gpio -g pisanje 17 1
nato ugasnite luči
(Ne pozabite na težave, samo poskusite z sudo gpio itd. -preverite tudi, ali je gpio nameščen, tako da vnesete gpio -v -če ga morate namestiti, si oglejte
sudo/usr/local/bin/gpio -g zapiši 17 0
Zdaj preizkusite, ali espeak deluje
~ $ sudo espeak "to je test"
Redko sem imel težave z Espeakom, vendar sem naletel na težave, ko je glasnost Alsamixerja nizka, včasih pa so drugi programi zgrabili zvočno kartico. Zagnati morate ps -ef in videti, kateri drugi medijski procesi se izvajajo. Za njihovo ubijanje lahko uporabite nekaj takega, kot je sudo kill -9 $ (sudo ps aux | sudo grep -v grep | sudo grep mplayer | sudo awk '{print $ 2}') -To bomo uporabili kasneje v skriptu PHP
2. korak: Nastavitev spletnega strežnika
Izvesti moramo številne korake
1) Poiščite lastnika spletne storitve / strežnika apache2 - zaženite sudo ps aux | egrep '(apache | httpd)' in prikazati bi morali www-data2) dodati www-data v skupino sudo-zaženite sudo nano /etc /sudoers --- dodajte vrstico www-data ALL = (ALL) NOPASSWD: ALL
3) dodajte www-podatke v avdio skupino-sudo adduser www-data audio
4) Izbirni korak je ustvariti datoteko phpinfo, ki vam pove vse funkcije PHP, ki jih imate, in lokacijo
conf, če želite spremeniti stvari. Na primer, nekatere različice PHP blokirajo funkcijo shell_exec (), ki jo potrebujemo za zagon programov ukazne vrstice, kot je Espeak, s spletnega strežnika. Evo, kako nastavite phpinfo..
Običajno pojdite na privzeti spletni imenik/var/www ali/var/www/html….. to je tisti z datoteko index.html in vnesite sudo nano phpinfo.php, nato v urejevalnik nano vnesite naslednje in pritisnite control O za shranite in zapustite
Ne pozabite narediti izvedljivega, tako da vnesete sudo chmod 755 phpinfo.php - Če si ga želite ogledati, odprite naslednji URL v svojem spletnem brskalniku z imenom gostitelja namesto mojega, to je raspberrypi -
?>
3. korak: Koda PHP in spletni skripti
Tukaj sem uporabil dva programa - enega za spletni obrazec (espeak_form.php) in drugega, ki obdeluje podatke obrazca (my_espeak.php), sem jih zgoraj vključil kot besedilne datoteke in jih prenesel v svoj Pi, z uporabo Putty ustvari obe php datoteke, nato pa izrežite in prilepite iz ustreznih besedilnih datotek, prikazanih zgoraj
pi@raspberrypi/var/www $ sudo nano /var//www/my_espeak.php
pi@raspberrypi/var/www $ sudo nano /var//www/espeak_form.php
Ne pozabite jih narediti izvedljive, tako da vnesete sudo chmod 755 *.php
Skript PHP spletnega obrazca (espeak_form.php), ki sem ga napisal, ne bo prejel nobene nagrade za oblikovanje, ima pa 2 podobrazca. Ena za objavo (besedilo v govor), druga pa za izklop in izklop luči. Podobrazec espeak vam omogoča izbiro različnih naglasov, ženskega glasu in funkcije šepeta, Jedro mojega_espeak.php je uporaba funkcije php - shell_exec (). Kot lahko vidite, to PHP -ju dovoljuje izvajanje ukazov Linuxa brez potrebe po drugih knjižnicah, kot bi morali reči v Pythonu.
4. korak: Zaključek
To je razmeroma zapletena rešitev, saj uporabljate številne elemente okolja Pi, na primer PHP, funkcije ukazne vrstice, Apache, GPIO itd. Upam, da ponazarja, kaj lahko naredite s PI -ji in IOT -om v splošnem. Obstaja več drugih načinov za dosego tega in ga lahko nadzirate celo iz interneta, če razumete posredovanje vrat, požarni zid in/ ali VPN. Upam, da ste uživali, ampak tukaj je moja zavrnitev odgovornosti:
NI MOGEM GARANCIRATI, DA JE TO VAREN ALI VAREN SISTEM, zato ga NE UPORABLJAJTE V NAMENE, KI VKLJUČUJEJO OBDELAVO ZASEBNIH, OSEBNIH ALI KOMERCIALNO OSETLJIVIH PODATKOV. TUDI VARNO PRIKLJUČITE SVOJE KABLE IN ČE UPORABLJATE ZAČASNE VEZE, npr. KROKODILSKE POSEKE TUDI NE PUSTITE SISTEMA NADZORNEGA ALI UPORABLJAJTE V TEŠKEM OKOLJU.
To je fantastičen način, da se veliko naučite o IOT -u in se spomnite, preden razmišljate o komercialnih aplikacijah z uporabo takšnih metod. Raspberry Pi je tako dober kot njegova kartica SD. Rekel bi eno leto pri normalni uporabi v primerjavi z nekaterimi strežniki, ki sem jih uporabljal in so delovali več kot 10 let.
Kakorkoli, srečno.
Priporočena:
(Posodobi - obstaja majhna težava) UPRAVLJALNIK ZA IGRE USB ZA PK: 10 korakov (s slikami)
(Posodobi - obstaja majhna težava) UPRAVLJALNIK ZA IGRE USB ZA PC: KRMILNIK ZA IGRE ZA KOTAR IGRO (KOT)
Klubski sistem razsvetljave z MadMapper & Teensy 3,2: 14 korakov
Klubski sistem razsvetljave z MadMapper & Teensy 3.2: Leta 2018 sem naredil prvo različico tega nizkoproračunskega klubskega svetlobnega sistema za silvestrovanje v Ramallah Palestini s svojim kolektivom UNION, več o zgodbi in kolektivu na koncu tega Članek. Sistem je temeljil na WS2812
UPRAVLJALNIK ZA ZASTAVE Z UPORABO PLUTOX: 4 koraki
UPRAVLJALNIK NA ZAŠČITKI Z UPORABO PLUTOX: PrimusX je krmilnik leta, ki se uporablja v brezpilotnih letalih PlutoX. Plošča PrimusX komunicira z uporabo ESP8266-12F. Ima tudi MPU in barometer, zato sem pomislil, zakaj ne bi upravljal brezpilotnega letala z uporabo samo plošče PrimusX in ploščo pritrdil na zapestje in upravljal
2007 Ford Mustang Sistem notranje razsvetljave: 3 koraki
Sistem notranje razsvetljave Ford Mustang iz leta 2007: To je namestitev kompleta LED razsvetljave za kateri koli avto, za tega pa sem uporabil Ford Mustang iz leta 2007. Ta luč se približuje sprednjim in sovoznikovim nogam ter tudi zadnjim sedežem
Sistem zasilne razsvetljave za merjenje statične električne energije: 8 korakov
Sistem zasilne razsvetljave, ki temelji na merjenju statične električne energije: Ste kdaj pomislili, da bi ob izklopu glavnega napajanja naredili sistem razsvetljave v sili. Ker imate še malo znanja o elektroniki, morate vedeti, da lahko preprosto preverite razpoložljivost električne energije, tako da preprosto izmerite