Turinys:
- 1 veiksmas: nustatykite ir išbandykite aparatūrą
- 2 veiksmas: nustatykite žiniatinklio serverį
- 3 žingsnis: PHP kodas ir žiniatinklio scenarijai
- 4 žingsnis: Išvada
Video: R Pi -nuotolinio valdymo pulto ir apšvietimo sistema: 4 žingsniai (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:48
Tai paprastas garso pranešimų pateikimo ir PI nuotolinio įjungimo ir išjungimo šviesos šaltinis iš žiniatinklio naršyklės. Taigi štai ko jums reikia:
1) „Raspberry Pi“su iš anksto įdiegta „Apache“ir „PhP“. Aš naudoju seną Pi v1, kurį turėjau gulėti. Manau, kad jūs turite jį prijungti prie savo namų tinklo per „Wi-Fi“arba „Ethernet“.
2) Garso garsiakalbis (-iai), kurį (-ius) galima prijungti prie „Pi“per išvesties garsiakalbio jungtį. Aš naudoju seną garsiakalbių rinkinį iš senovės stereo sistemos.
3) Kalėdų eglutės žibintų rinkinys - aš nusipirkau savo iš Poundlando.
4) Krokodilo spaustukai ir duonos lentos kabeliai, skirti prijungti / išbandyti Pi prie garsiakalbių ir žibintų. (Žr. 7)
5) kompiuteris arba nešiojamas kompiuteris su „Putty“terminalo emuliatoriumi, kad galėtumėte pasiekti „Raspberry Pi“
6) Šilumos susitraukimo viela
7) Karšto oro pistoletas, skirtas garsiakalbiams ir apšvietimo laidams prijungti
Pagrindinė idėja yra ta, kad naudoju žiniatinklio formą nuotoliniams pranešimams skelbti per garsiakalbį (-ius), taip pat įjungti ir išjungti šviesas. Aš naudoju PHP scenarijus, kurie savo ruožtu vykdo „Espeak“teksto į kalbą bitui ir GPIO komandas šviesoms. Aš darau prielaidą, kad jūs žinote, kaip įdiegti „Apache“ir „PhP“savo „Raspberry Pi“. Tai labai gerai dokumentuota.
Aš bandžiau išlaikyti šią mažą kainą, todėl naudojau seną stereo sistemos garsiakalbį, kurį turėjau, o pašalinęs jungtis ir atskleidęs kabelius, prijungiau jį prie seno mikrofono kabelio, kurį taip pat nutraukiau. Tai reiškė, kad garsiakalbio garsumas buvo mažesnis nei išorinio maitinimo garsiakalbio, aš galėjau maitinti viską iš „Raspberry Pi“. Tas pats buvo ir su žibintais. Aš išėmiau iš jų 3,3 V maitinimo dėžę, atidengiau laidus ir prijungiau juos prie „Pi“, naudodamas moterų / vyrų duonos lentos jungtis. Visa tai sujungiau su krokodilo spaustukais.
Po bandymų ir patvirtinimo vėliau visus laidus prijungiau termiškai susitraukiančia viela, naudodami karšto oro pistoletą.
1 veiksmas: nustatykite ir išbandykite aparatūrą
Aš maitinau „Pi“ir prijungiau garsiakalbius prie „Pi“garso išvesties lizdo. Prijungiau žibintus, vieną galą prijungęs prie GPIO17 (6 kaištis žemyn vidinėje kolonoje) ir GND (3 kaištis žemyn ant išorinio stulpelio) - žr. Aukščiau esančią nuotrauką. ATKREIPKITE DĖMESĮ, KAD NAUDOJAU PI 1 versiją, tad, jei naudojate vėlesnę PI versiją, PAKEISKITE PIN kodus.
Aukščiau parodyta termiškai susitraukianti viela ir karšto oro pistoletas, skirtas garsiakalbiams ir apšvietimo laidams prijungti
Toliau, kai viskas buvo įjungta, prisijungiau prie „Pi“naudodami „Putty“iš savo „Windows“nešiojamojo kompiuterio. Norėdami rasti „Pi“IP adresą, savo interneto naršyklėje atidarykite maršrutizatoriaus IP adresą (paprastai tai yra kažkas panašaus į 192.168.1.254), kuriame bus rodomas prijungtų įrenginių sąrašas, įskaitant „Pi“pagrindinio kompiuterio pavadinimą ir IP adresą. Norėdami prisijungti prie „Putty“, galite naudoti bet kurį iš šių būdų, bet dažniausiai naudoju IP adresą, nes turiu daugybę PI. Arba galite prisijungti prie „Putty“, išbandydami pagrindinio kompiuterio pavadinimą, pvz., Pi arba raspberrypi. Kai būsite paraginti „Putty“įvesti vartotojo vardą ir slaptažodį, išbandykite „pi/raspberry“, kurie yra numatytieji. (NUOSTATŲ NAUDOJIMAS yra labai nesaugus ir leidžia jums atakuoti įsilaužėlius, net jei tai yra privatus tinklas). Mano patirtis rodo, kad „Pi“programos, „Espeak“ir GPIO bibliotekos yra įdiegtos pagal numatytuosius nustatymus daugumoje „Pi“vaizdų.
Gerai, kai pateksite į RaspberryPi komandų eilutę, išbandykite šias komandas - sudo alsamixer, kuri turėtų atskleisti garso plokštės valdiklius - jei turite pasyvų garsiakalbį, kaip aš naudojau, turėsite padidinti garsumą iki maks. Tada įjunkite šviesas
sudo/usr/local/bin/gpio -g režimas 17 outsudo/usr/local/bin/gpio -g write 17 1
tada išjunkite šviesas
(Atkreipkite dėmesį į bet kokias problemas, tiesiog pabandykite sudo gpio ir tt -taip pat patikrinkite, ar „gpio“įdiegta, įvesdami gpio -v -jei jums reikia įdiegti, peržiūrėkite
sudo/usr/local/bin/gpio -g rašyti 17 0
Dabar patikrinkite, ar espeak veikia
~ $ sudo espeak "tai testas"
Aš retai turėjau problemų su „Espeak“, tačiau susidūriau su problemomis, kai „Alsamixer“garsas yra mažas, o kartais kitos programos paimdavo garso plokštę. Turite paleisti ps -ef ir pamatyti, kokie kiti medijos procesai veikia. Norėdami juos nužudyti, galite naudoti kažką panašaus į sudo kill -9 $ (sudo ps aux | sudo grep -v grep | sudo grep mplayer | sudo awk '{print $ 2}') -tai naudojame vėliau PHP scenarijuje
2 veiksmas: nustatykite žiniatinklio serverį
Turime atlikti keletą žingsnių
1) Raskite žiniatinklio paslaugos / serverio apache2 savininką - paleiskite sudo ps aux | egrep '(apache | httpd)' ir turėtumėte pamatyti www-data2) pridėkite www-duomenis prie sudo grupės-paleiskite sudo nano /etc /sudoers --- pridėkite www-duomenų eilutę ALL = (ALL) NOPASSWD: ALL
3) pridėti garso duomenis prie garso grupės-sudo adduser www-data audio
4) Pasirenkamas žingsnis yra sukurti „phpinfo“failą, kuriame būtų nurodytos visos jūsų turimos PHP funkcijos ir vieta
conf failą, jei norite ką nors pakeisti. Pavyzdžiui, kai kurios PHP versijos blokuoja funkciją shell_exec (), kurią turime paleisti iš komandinės eilutės programų, tokių kaip „Espeak“iš žiniatinklio serverio. Štai kaip nustatote „phpinfo“.
Paprastai eikite į numatytąjį žiniatinklio katalogą/var/www arba/var/www/html….. tai yra tas, kuriame yra index.html failas, ir įveskite sudo nano phpinfo.php, tada įveskite šiuos žodžius į nano redaktorių ir paspauskite valdymo klavišą išsaugoti ir išeiti
Nepamirškite padaryti jo vykdomojo, įvesdami sudo chmod 755 phpinfo.php - Norėdami jį peržiūrėti, savo interneto naršyklėje atidarykite šį URL, naudodami savo, o ne mano, pagrindinį vardą, ty raspberrypi -
?>
3 žingsnis: PHP kodas ir žiniatinklio scenarijai
Čia naudoju dvi programas - vieną žiniatinklio formai (espeak_form.php), o kitą, kuri apdoroja formos duomenis (my_espeak.php) Įtraukiau jas kaip tekstinius failus ir perkeliu juos į „Pi“naudodami „Putty“sukuriu abu „php“failus, tada iškirpkite ir įklijuokite iš atitinkamų aukščiau pateiktų teksto failų
pi@raspberrypi/var/www $ sudo nano /var//www/my_espeak.php
pi@raspberrypi/var/www $ sudo nano /var//www/espeak_form.php
Nepamirškite padaryti jų vykdomųjų, įvesdami sudo chmod 755 *.php
Mano parašytas žiniatinklio formos PHP scenarijus (espeak_form.php) laimės ne dizaino prizus, bet turi 2 antrines formas. Vienas iš jų yra skirtas skelbimui (tekstas į kalbą), o kitas yra skirtas žibintams įjungti ir išjungti. Espeak antrinė forma leidžia pasirinkti skirtingus akcentus, moterišką balsą ir šnabždesio funkciją, „My_espeak.php“esmė yra naudoti „php“funkciją - „shell_exec ()“. Kaip matote, tai leidžia PHP vykdyti „Linux“komandas, nereikalaujant kitų bibliotekų, kaip jums reikia pasakyti „Python“.
4 žingsnis: Išvada
Tai yra gana sudėtingas sprendimas, nes naudojate daug Pi aplinkos elementų, t. Y. PHP, komandų eilutės funkcijas, „Apache“, GPIO ir tt. Tikiuosi, kad tai iliustruoja, ką galite padaryti konkrečiai naudodami PI ir bendrąją IOT. Yra daugybė kitų būdų tai pasiekti ir netgi galite tai valdyti iš interneto, jei suprantate uosto peradresavimą, užkardą ir (arba) VPN. Tikiuosi, kad jums patiko, bet čia yra mano atsisakymas:
NEGALIU GARANTUOTI, KAD ŠI SAUGI AR SAUGI SISTEMA IR TODĖL NEGALIMA NAUDOTI JOS TIKSLAMS, ĮSKAIČIUOTI PRIVATIŲ, ASMENINIŲ AR KOMERCINIŲ PATINKAMŲ DUOMENŲ APDOROJIMĄ. TAIP PAT, SAUGIAI PRIJUNGTI KABELIUS IR NAUDOTI LAIKINUS JUNGTIS, pvz. CROCODILE CLIPS tada nepalikite sistemos be priežiūros arba NAUDOTI AŠTINGOJE APLINKOJE.
Tai puikus būdas daug sužinoti apie IOT ir tiesiog prisiminti prieš galvojant apie komercines programas, naudojant tokius metodus kaip šis. „Raspberry Pi“yra tik tokia gera, kaip ir jos SD kortelė. Sakyčiau, metus įprastu naudojimu, palyginti su kai kuriais mano naudojamais serveriais, kurie veikė daugiau nei 10 metų.
Bet kokiu atveju, sėkmės.
Rekomenduojamas:
Automatizuota akvariumo apšvietimo sistema: 6 žingsniai
Automatizuota akvariumo apšvietimo sistema: Sveiki visi! Šiandienos projekte parodysiu, kaip sukurti automatinę jūsų akvariumo apšvietimo sistemą. Naudodamas „Wifi“valdiklį ir „Magic Home WiFi“programą, galėjau belaidžiu būdu pakeisti šviesos diodų spalvą ir ryškumą. Galiausiai
Automobilio automatinio apšvietimo sistema: 4 žingsniai
Automobilio automatinio apšvietimo sistema: Ei, vaikinai, šiuolaikiniame automobilyje yra automatinė automobilio apšvietimo sistema, o tai reiškia, kad priekiniai žibintai automatiškai įsijungia ir išsijungia, priklausomai nuo aplinkos šviesos, todėl kai sutemsta arba važiuojate taneliu, žibintai įsijungs automatiškai. net pagalvojau apie perjungima
2007 m. „Ford Mustang“salono apšvietimo sistema: 3 žingsniai
2007 m. „Ford Mustang“salono apšvietimo sistema: tai skirta LED apšvietimo komplekto montavimui bet kuriam automobiliui, tačiau šiam naudoju 2007 m. „Ford Mustang“. Šis apšviestas vaikas eina šalia priekinės ir keleivio kojų, taip pat galinės sėdynės
ELEKTRONINIO GREITIO VALDYMO (ESC) VALDYMO SIGNALO GENERATORIO ALTERNATYVA: 7 žingsniai
ELEKTRONINIO GREITIO VALDYMO (ESC) VALDYMO SIGNALŲ GENERATORIO ALTERNATYVA: Prieš kurį laiką savo „YouTube“kanale paskelbiau vaizdo įrašą (https://www.youtube.com/watch?v=-4sblF1GY1E), kuriame parodžiau, kaip pasidaryti vėjo turbiną. iš bešepetėlio nuolatinės srovės variklio. Aš padariau vaizdo įrašą ispanų kalba ir paaiškino, kad šis variklis buvo atiduotas
Apšvietimo ir saugumo valdymo jutiklių stočių tinklas: 5 žingsniai (su nuotraukomis)
Apšvietimo ir saugumo valdymo jutiklių stočių tinklas: naudodami šį jutiklių stočių tinklą, sukonfigūruotą pagrindinio/pavaldinio režimu, galėsite atlikti apšvietimą ir saugumą namuose. Šios jutiklių stotys (šiame projekte „Node01“, „Node02“) yra prijungtos prie pagrindinės stoties („Node00“), prijungtos prie jūsų