Spisu treści:
- Krok 1: Skonfiguruj i przetestuj sprzęt
- Krok 2: Konfiguracja serwera WWW
- Krok 3: Kod PHP i skrypty internetowe
- Krok 4: Wniosek
Wideo: R Pi -Remote Control PA i system oświetlenia: 4 kroki (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:32
Jest to prosty projekt do tworzenia ogłoszeń dźwiękowych oraz włączania i wyłączania świateł na PI zdalnie z przeglądarki internetowej. Oto, czego potrzebujesz:
1) Raspberry Pi z preinstalowanym Apache i PHP. Użyłem starego Pi v1, na którym leżałem. Zakładam, że masz go podłączony do sieci domowej przez Wi-Fi lub Ethernet.
2) Głośnik(i) audio, które można podłączyć do Pi za pomocą złącza głośnika wyjściowego. Użyłem starego zestawu głośników ze starego systemu stereo.
3) Zestaw lampek choinkowych - kupiłem je w Poundland.
4) Zaciski krokodylkowe i kable do płytek stykowych do podłączenia / testowania Pi do głośników i świateł. (patrz 7)
5) Komputer stacjonarny lub laptop z emulatorem terminala Putty w celu uzyskania dostępu do Raspberry Pi
6) Drut termokurczliwy
7) Pistolet na gorące powietrze do podłączenia przewodów głośnikowych i oświetleniowych
Podstawową ideą jest to, że używam formularza internetowego do zdalnego wysyłania ogłoszeń przez moich głośników, a także włączania i wyłączania światła. Używam skryptów PHP, które z kolei wykonują Espeak dla bitu tekstu na mowę i polecenia GPIO dla świateł. Zakładam, że wiesz, jak zainstalować Apache i PHP na swoim Raspberry Pi. Jest bardzo dobrze udokumentowany.
Starałem się utrzymać ten niski koszt, więc użyłem starego głośnika systemu stereo, który miałem, a po usunięciu połączeń i odsłonięciu kabli podłączyłem go do starego kabla mikrofonowego, który również przeciąłem. Oznaczało to, że podczas gdy głośność głośnika była niższa niż w przypadku głośnika zasilanego zewnętrznie, mogłem zasilać wszystko z Raspberry Pi. To samo dotyczyło świateł. Wyjąłem z nich skrzynkę zasilacza 3,3 V, odsłoniłem przewody i podłączyłem je do Pi za pomocą żeńskich / męskich złączy płytki stykowej. Wszystko to połączyłem za pomocą krokodylków.
Po testach i walidacji połączyłem później wszystkie przewody z drutem termokurczliwym za pomocą pistoletu na gorące powietrze.
Krok 1: Skonfiguruj i przetestuj sprzęt
Zasiliłem Pi i podłączyłem głośniki do gniazda wyjściowego audio Pi. Połączyłem światła, podłączając jeden koniec do GPIO17 (6. pin na wewnętrznej kolumnie) i GND (3. pin na zewnętrznej kolumnie) - patrz zdjęcie powyżej. PROSZĘ PAMIĘTAĆ, ŻE UŻYŁEM PI w wersji 1, WIĘC PROSZĘ ODPOWIEDNIO ZMIENIĆ PINY, JEŚLI UŻYWASZ PÓŹNIEJSZEJ WERSJI PI.
Powyżej pokazano przewód termokurczliwy i pistolet na gorące powietrze do podłączenia przewodów głośnikowych i oświetleniowych
Następnie, gdy wszystko było włączone, zalogowałem się do Pi za pomocą Putty z mojego laptopa z systemem Windows. Aby znaleźć adres IP Pi, otwórz adres IP routera w przeglądarce internetowej (zwykle jest to 192.168.1.254), która wyświetli listę podłączonych urządzeń, w tym nazwę hosta Pi i adres IP. Możesz użyć jednego z nich, aby zalogować się do Putty, ale zwykle używam adresu IP, ponieważ mam kilka PI. Alternatywnie możesz zalogować się do Putty, próbując nazwy hosta, takiej jak pi lub raspberrypi. Gdy w Putty zostaniesz poproszony o podanie nazwy użytkownika i hasła, spróbuj pi/raspberry, które są wartościami domyślnymi. (UŻYWANIE USTAWIEŃ DOMYŚLNYCH JEST BARDZO NIEBEZPIECZNE I POZWALA CIĘ OTWIERAĆ NA ATAK HAKERSÓW, NAWET W SIECI PRYWATNEJ). Z mojego doświadczenia wynika, że programy Pi, biblioteki Espeak i GPIO są domyślnie instalowane na większości obrazów Pi.
Dobra, gdy uzyskasz dostęp do wiersza poleceń na RaspberryPi wypróbuj następujące polecenia - sudo alsamixer, które powinny ujawnić kontrolki karty dźwiękowej - jeśli masz głośnik pasywny, tak jak używałem, będziesz musiał zwiększyć głośność do max. Następnie włącz światła
sudo /usr/local/bin/gpio -g tryb 17 outsudo /usr/local/bin/gpio -g zapis 17 1
następnie zgaś światła
(Uwaga: wszelkie problemy po prostu spróbuj sudo gpio itp. - sprawdź również, czy gpio jest zainstalowane, wpisując gpio -v - jeśli musisz zainstalować, spójrz na
sudo /usr/local/bin/gpio -g zapis 17 0
Teraz przetestuj, że espeak działa
~ $ sudo espeak "to jest test"
Rzadko miałem problemy z Espeak, ale napotykałem problemy, gdy głośność Alsamixera jest niska, a czasami inne programy chwytały kartę dźwiękową. Musisz uruchomić ps -ef i zobaczyć, jakie inne procesy medialne są uruchomione. Możesz użyć czegoś takiego jak sudo kill -9 $(sudo ps aux | sudo grep -v grep | sudo grep mplayer | sudo awk '{print $2}') do ich zabicia - użyjemy tego później w skrypcie PHP
Krok 2: Konfiguracja serwera WWW
Jest kilka kroków, które musimy wykonać
1) Znajdź właściciela usługi internetowej / serwera apache2 - uruchom sudo ps aux | egrep '(apache|httpd)' i powinieneś zobaczyć www-data2) dodaj www-data do sudo group - uruchom sudo nano /etc/sudoers --- dodaj linię www-data ALL=(ALL) NOPASSWD: ALL
3) dodaj www-data do grupy audio - sudo adduser www-data audio
4) Opcjonalnym krokiem jest utworzenie pliku phpinfo, który poinformuje Cię o wszystkich funkcjach PHP, które posiadasz i lokalizacji
plik konfiguracyjny, jeśli chcesz coś zmienić. Na przykład, niektóre wersje PHP blokują funkcję shell_exec(), której potrzebujemy do uruchamiania programów wiersza poleceń, takich jak Espeak, z serwera WWW. Oto jak skonfigurować phpinfo..
Przejdź do domyślnego katalogu internetowego, zwykle /var/www lub /var/www/html….. jest to ten z plikiem index.html i wpisz sudo nano phpinfo.php, a następnie wpisz następujące polecenie w edytorze nano i naciśnij Ctrl, aby Zapisz i wyjdź
Nie zapomnij, aby był wykonywalny, wpisując sudo chmod 755 phpinfo.php - Aby go wyświetlić, otwórz następujący adres URL w przeglądarce internetowej, używając swojej nazwy hosta zamiast mojej, tj. raspberrypi -
?>
Krok 3: Kod PHP i skrypty internetowe
Użyłem tutaj dwóch programów - jednego do formularza internetowego (espeak_form.php) i drugiego, który przetwarza dane formularza (my_espeak.php) Umieściłem je powyżej jako pliki tekstowe i aby przenieść je do twojego Pi, używając Putty stwórz oba php pliki, a następnie wytnij i wklej z odpowiednich plików tekstowych pokazanych powyżej
pi@raspberrypi /var/www $ sudo nano /var//www/my_espeak.php
pi@raspberrypi /var/www $ sudo nano /var//www/espeak_form.php
Pamiętaj, aby uczynić je wykonywalnymi, wpisując sudo chmod 755 *.php
Napisany przeze mnie skrypt PHP formularza internetowego (espeak_form.php) nie zdobędzie żadnych nagród za projekt, ale ma 2 podformularze. Jedna służy do tworzenia ogłoszenia (tekst na mowę), a druga służy do włączania i wyłączania świateł. Podformularz espeak pozwala wybrać różne akcenty, głos żeński i funkcję szeptu, Rdzeniem my_espeak.php jest użycie funkcji php - shell_exec(). Jak widać, pozwala to PHP na wykonywanie poleceń Linuksa bez potrzeby korzystania z innych bibliotek, jak trzeba by powiedzieć w Pythonie.
Krok 4: Wniosek
Jest to dość złożone rozwiązanie, ponieważ używasz wielu elementów środowiska Pi, tj. PHP, funkcji wiersza poleceń, Apache, GPIO itp. Mam nadzieję, że ilustruje to, co możesz zrobić z PI konkretnie i IOT w ogóle. Istnieje wiele innych sposobów, aby to osiągnąć, a nawet możesz kontrolować to z Internetu, jeśli rozumiesz przekierowanie portów, firewall i/lub VPN. Mam nadzieję, że Ci się podobało, ale oto moje zastrzeżenie:
NIE MOGĘ GWARANTOWAĆ, ŻE JEST TO BEZPIECZNY SYSTEM I DLATEGO PROSZĘ NIE UŻYWAĆ GO DO CELÓW, KTÓRE OBEJMUJĄ PRZETWARZANIE WRAŻLIWYCH DANYCH OSOBOWYCH LUB KOMERCYJNYCH. RÓWNIEŻ PODŁĄCZ SWOJE KABLE BEZPIECZNIE I JEŚLI KORZYSTASZ Z POŁĄCZEŃ TYMCZASOWYCH, NP. KROKODYLE NIE POZOSTAWIAJ WTEDY SYSTEMU BEZ NADZORU ANI NIE UŻYWAJ W TRUDNYCH WARUNKACH.
Jest to fantastyczny sposób, aby dowiedzieć się dużo o IOT i po prostu pamiętaj, zanim zaczniesz myśleć o komercyjnych aplikacjach przy użyciu takich metod. Raspberry Pi jest tak dobre, jak jego karta SD. Powiedziałbym, że rok przy normalnym użytkowaniu w porównaniu do niektórych serwerów, których używałem, które działały przez ponad 10 lat.
Mimo wszystko, powodzenia.
Zalecana:
Inteligentny system oświetlenia chodnika - zespół Sailor Moon: 12 kroków
Inteligentny system oświetlenia chodnika - Team Sailor Moon: Cześć! To są Grace Rhee, Srijesh Konakanchi i Juan Landi, a razem jesteśmy Drużyną Czarodziejki z Księżyca! Dziś przedstawimy Ci dwuczęściowy projekt DIY, który możesz zrealizować we własnym domu. Nasz ostatni inteligentny system oświetlenia chodników obejmuje ul
Automatyczny system oświetlenia i pompy akwariowej z Arduino i zegarem RTC: 3 kroki
Automatyczny system oświetlenia i pompy w akwarium Z Arduino i zegarem RTC: Akwarium można przekształcić w samopodtrzymujący się ekosystem bez interwencji wymagającej odrobiny staranności i technologii :) Aby zbudować automatyczny system oświetlenia i pompy w akwarium, oczywiście skonfiguruj system ręczny pierwszy. Użyłem 2 reflektorów po 50 W każdy i 1 6 W
System automatycznego oświetlenia samochodu: 4 kroki
Car Auto Light System: hej, nowoczesny samochód jest wyposażony w automatyczny system oświetlenia samochodowego, co oznacza, że reflektory włączają się i wyłączają automatycznie w zależności od światła otoczenia, więc gdy robi się ciemno lub jedziesz w Tanelu, światła włączają się automatycznie. nawet pomyślałem switchi
DIY Zestaw oświetlenia motocyklowego Topbox Givi V56 ze zintegrowanymi sygnałami: 4 kroki (ze zdjęciami)
DIY Zestaw oświetleniowy do motocykla Givi V56 ze zintegrowanymi sygnałami: Jako motocyklista jestem zbyt zaznajomiony z traktowaniem mnie, jakbym był niewidzialny na drodze. Jedną rzeczą, którą zawsze dodaję do moich rowerów, jest kufer górny, który zwykle ma zintegrowane światło. Niedawno przeszedłem na nowy rower i kupiłem Givi V56 Monokey
System oświetlenia wnętrza Ford Mustang 2007: 3 kroki
2007 Ford Mustang Interior Lighting System: To jest do instalacji zestawu oświetlenia LED dla każdego samochodu, ale do tego użyłem 2007 Ford Mustang. Ten dzieciak oświetlenia zbliża się zarówno do stóp przednich, jak i pasażera, a także do tylnych siedzeń