Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
După ce am păcălit cu un kit Google AIY Voice pentru Raspberry Pi, am decis să refac hardware-ul pentru a crea un tonomat offline. Când un utilizator atinge butonul de sus, se va reda o melodie aleatorie stocată pe Pi. Butonul de volum este acolo pentru a ajuta la reglarea volumului și pentru a dezactiva melodia (deoarece odată ce o melodie este pornită, aceasta nu poate fi oprită). configurație (un Raspberry Pi cu difuzor și buton atașat). De asemenea, veți avea nevoie de un codificator rotativ pentru butonul de volum (l-am folosit pe acesta), precum și de fire, lipit și un fier de lipit pentru a atașa codificatorul la dispozitiv.
Pasul 1: Cablarea butonului de volum / codificatorului rotativ
Folosind fierul de lipit, atașați codificatorul rotativ la Voice HAT folosind fire. Pe codor, partea cu trei pini este pentru semnale pentru rotirea butonului în ambele direcții (fir roșu și verde), cu cea din mijloc (fir negru) fiind împământată. Cealaltă parte cu doi pini este pentru butonul din codificator, unul (fir alb) fiind pentru semnal, iar cealaltă (fir negru) pentru masă. Cablurile sunt lipite în secțiunea Servo a Voice HAT, urmând această diagramă pinout. Verde este agățat de GPIO 26, roșu este agățat de GPIO 6, negru este agățat de solul GPIO 26, în timp ce albul este agățat de GPIO 13 și negru este agățat de solul GPIO 13.
Pasul 2: Montarea butonului în cutie
Dacă folosiți cutia de carton din kitul Google așa cum am făcut-o, este destul de simplu. Am decupat un pătrat în manșonul interior pentru a se potrivi codificatorului, decât să fac o gaură în partea laterală a cutiei, chiar deasupra slotului pentru accesul cardului SD, pentru a introduce butonul. Fixați-l cu o șaibă și un șurub, apoi puneți capacul butonului de volum peste tija metalică pentru a-l bloca în poziție.
Pasul 3: Software - Muzică la apăsarea butonului
Presupun că înțelegeți noțiunile de bază pentru lucrul cu scripturi pe versiunile Raspberry Pis / Linux.
Scriptul muzical button.py, disponibil pe GitHub aici, așteaptă apăsarea butonului, moment în care extrage un fișier aleatoriu dintr-un director (/ home / pi / Muzică în cazul meu) și apoi îl redă folosind fie mpg123 sau aplay, în funcție de dacă piesa este un mp3 sau nu.
Fișierul este disponibil pe GitHub aici. Folosiți wget pentru a-l descărca pe dispozitivul dvs., plasându-l în directorul / home / pi.
Asigurați-vă că ați instalat python, mpg123 și aplay. Alerga
sudo apt-get install python mpg123 alsa-utils
pentru a obține toate fișierele necesare.
Faceți scriptul descărcat executabil executând
sudo chmod + x /home/pi/button.py
Scriptul presupune că utilizați GPIO 23, pinul implicit pentru butonul kit Google. Dacă utilizați un alt pin pentru buton, actualizați scriptul în consecință.
Pasul 4: Software - Volum
Scriptul de volum este disponibil pe GitHub aici. Puteți să-l descărcați utilizând wget. Plasați-l în directorul / home / pi / bin (creați unul dacă nu există deja).
Asigurați-vă că directorul bin este în PATH. Verificați tastând
ecou $ PATH
Dacă directorul nu apare, adăugați-l folosind
ecou "export PATH = $ HOME / bin: $ PATH" >> ~ /.bashrc
și reporniți dispozitivul după ce faceți acest lucru.
De asemenea, asigurați-vă că aveți Python3 pe dispozitiv pentru a rula scriptul. Ia-l folosind
sudo apt-get install python3 python3-rpi.gpio
Faceți executabil scriptul descărcat executând
sudo chmod + x / home / pi / bin / volume-control
Scriptul presupune că utilizați aceiași pini GPIO ca și mine. Dacă nu, modificați-le în secțiunea SETĂRI din script. Funcția de buton a codificatorului rotativ, GPIO 13, este setată în mod implicit la None. Dacă îl activați, puteți dezactiva și dezactiva sunetul cu butonul codificatorului.
Pasul 5: Software - Rulați scripturile la pornire
Pentru a rula scripturile imediat când dispozitivul pornește, apelați-le în fișierul rc.local.
Accesați fișierul dvs. rc.local cu
sudo nano /etc/rc.local
Acolo, în partea de jos, adăugați
python /home/pi/button.py &
sudo / home / pi / bin / volume-control &
între fi și ieșire 0. Asigurați-vă că includeți & după fiecare comandă pentru a împiedica Pi-ul să închidă în timpul procesului de pornire.
Pasul 6: Adăugați muzică
Adăugați muzică în directorul specificat (în mod implicit, / home / pi / Music), apăsați butonul și bucurați-vă!