Cuprins:

Telecomanda IR controlată Amazon Echo: 11 pași (cu imagini)
Telecomanda IR controlată Amazon Echo: 11 pași (cu imagini)

Video: Telecomanda IR controlată Amazon Echo: 11 pași (cu imagini)

Video: Telecomanda IR controlată Amazon Echo: 11 pași (cu imagini)
Video: Пошаговое подключение и настройка поворотной Wi-Fi IP-камеры видеонаблюдения 2024, Noiembrie
Anonim
Telecomanda IR controlată Amazon Echo
Telecomanda IR controlată Amazon Echo

Sistemul Amazon Echo poate controla o mulțime de aspecte ale unei case inteligente, dar o priză inteligentă poate opri și porni doar. Multe dispozitive nu se pornesc instantaneu prin simpla conectare și necesită pași suplimentari, cum ar fi apăsarea butoanelor unei telecomenzi sau a dispozitivului fizic pentru a porni sau a obține setările dorite.

În acest ghid, un Raspberry Pi Zero W va fi configurat pentru a acționa ca un dispozitiv inteligent de acasă care poate fi controlat de Amazon Echo și pentru a trimite orice comandă IR dorită către un dispozitiv atunci când i se solicită pornirea sau oprirea.

În acest caz specific, Pi va fi configurat pentru a învăța comenzile IR ale unei telecomenzi prevăzute cu un "ClassicFlame 23II310GRA 23" Insert Infrared Quartz Fireplace Insert ". Un LED IR va fi apoi utilizat pentru a trimite comenzile IR la cerere și, în final, Pi-ul configurat pentru a emula un dispozitiv Philips Hue care poate fi controlat este Echo.

Pasul 1: Materiale

Materiale
Materiale

Necesar:

  • Raspberry Pi Zero W
  • Card de memorie Micro SDHC Clasa 10 de 4 GB sau mai mare (Exemplu de 16 GB)
  • Micro USB
  • 1 LED IR
  • Adaptor de alimentare MicroUSB (recomandat 2,1 amperi sau mai mare)
  • LED IR
  • Receptor IR VS / 1838B
  • Rezistor de 100 ohmi
  • Diverse sârmă

Recomandat:

  • Mufă pentru căști
  • Sârmă pentru căști / audio de 1/8 inch
  • 2N2222 NPN tranzistor
  • Rezistor de 1k ohm
  • Husa Rapsberry Pi Zero

Pentru a finaliza configurația inițială a unui Raspberry Pi Zero W, vor fi necesare câteva periferice suplimentare, dar nu vor fi utilizate cu normă întreagă de proiectul finalizat

  • Adaptor Mini HDMI la HDMI: Folosit pentru a conecta Pi Zero W la un televizor sau monitor cu un cablu HDMI de dimensiuni complete
  • Cablu USB OTG: folosit pentru a converti de la micro-USB la porturi USB de dimensiuni complete pentru conectarea unei tastaturi și / sau a unui mouse
  • Cablu HDMI: utilizat pentru conectarea la televizor sau monitor împreună cu un adaptor la mini HDMI

Primele două articole, precum și o carcasă sunt incluse diverse seturi de pornire Pi Zero, cum ar fi: MakerSpot Mega Kit

Pasul 2: Configurați Raspberry Pi

Site-ul web Raspberry Pi are o soluție excelentă pentru configurarea Raspbian Stretch OS pe un Raspberry Pi. Recomand versiunea Lite pentru o amprentă mai mică dacă acesta este doar un proiect care rulează pe Pi. Dacă doriți să aveți mai multe opțiuni ale sistemului de operare în viitor sau o configurare mai simplă, urmarea instrucțiunilor pentru NOOBS vă va pune în funcțiune în cel mai scurt timp. Acest ghid se bazează pe Raspbian, care este inclus cu NOOBS

www.raspberrypi.org/learning/software-guide/

Odată ce Raspbian rulează, activați SSH pentru a permite conexiuni la distanță cu dispozitivul fără a fi nevoie ca un monitor / tastatură / mouse să fie conectat direct la Pi. Dacă doriți să aveți opțional acces la distanță la GUI, puteți activa și accesul VNC

www.raspberrypi.org/documentation/remote-access/ssh/

De asemenea, este foarte recomandat să setați un IP static pe configurația rețelei wireless, astfel încât să nu se schimbe în timp. Este posibil ca IP-ul să nu se schimbe dacă dispozitivele noi nu sunt conectate în mod regulat la rețeaua fără fir, dar configurarea acestuia ca statică va asigura că nu.

www.circuitbasics.com/how-to-set-up-a-static-ip-on-the-raspberry-pi/

Pasul 3: Configurarea LIRC

Configurarea LIRC
Configurarea LIRC
Configurarea LIRC
Configurarea LIRC
Configurarea LIRC
Configurarea LIRC
Configurarea LIRC
Configurarea LIRC

Următorii pași se bazează pe ghidurile excelente găsite aici:

alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/https://camp.isaax.io/en/isaax-examples/ir-control-via- lirc-on-raspberry-pi-zero-w

Acest ghid se bazează pe Rasbian Stretch și lirc 0.9.4c-9 Alte ghiduri se pot baza pe versiuni anterioare și menționează un fișier hardware.conf care nu mai este necesar odată cu această versiune și versiuni superioare. De asemenea, am constatat că nu mai este necesar în sistemele mele să modific fișierul / etc / modules În acest moment, vor fi necesare modificări suplimentare pentru kernel versiunea 4.19 care nu sunt documentate aici în prezent. Vă rugăm să vă asigurați că sunteți pe 4.14 pentru acest set de instrucțiuni

Biblioteca Linux Infrared Remote Control (LIRC) este utilizată pentru a gestiona recepționarea comenzilor IR prin modulul receptor, salvarea acestora într-un fișier și apoi trimiterea comenzilor atunci când se dorește prin LED-ul IR.

Primul pas este de a înregistra semnalele IR de la telecomanda noastră existentă folosind receptorul IR și de a le salva într-un fișier. Receptorul IR este necesar inițial numai pentru a afla semnalele IR și apoi ar putea fi eliminat, astfel încât ar putea fi utilizată o conexiune temporară.

Conectați receptorul IR la Raspberry Pi. Utilizați imaginea atașată pentru a identifica pinii VCC, GND și Signal. Folosirea unei plăci, a firelor de conectare sau a îndoirii creative a știfturilor la următoarele conexiuni

VCC se conectează la pinul de 5 volți GND la un pin de masă Semnal la pinul 23

Porniți și conectați-vă la Raspberry Pi prin deschiderea terminalului de pe dispozitivul local sau prin crearea unei conexiuni SSH utilizând un program precum Putty pentru Windows.

Următoarele linii pot fi copiate și lipite în sesiunea SSH. Vor adăuga / modifica linii la diferite fișiere de configurare necesare pentru ca lirc să funcționeze.

actualizare sudo apt

sudo apt install -y lirc echo dtoverlay = lirc-rpi, gpio_in_pin = 23, gpio_out_pin = 22 | sudo tee -a /boot/config.txt sudo sed -i '/ driver = * / cdriver = default' /etc/lirc/lirc_options.conf sudo sed -i '/ device = * / cdevice = / dev / lirc0' / etc / lirc / lirc_options.conf sudo shutdown -r acum

Așteptați ca dispozitivul să repornească și să vă conectați din nou.

Opțional: testați receptorul IR

Montați dispozitivul LIRC pentru a confirma că orice intrare poate fi recepționată. Este posibil să trebuiască să reporniți Pi după finalizarea acestui test pentru a-l face disponibil pentru pașii ulteriori.

sudo systemctl stop lircd

mode2 -d / dev / lirc0Îndreptați o telecomandă IR către receptor și apăsați un buton și asigurați-vă că datele apar pe ecran CTRL + C pentru stocare

În acest moment, programul LIRC este instalat și putem vizualiza informații IR.

Pasul 4: Captarea codurilor IR

Un profil la distanță poate fi descărcat de pe site-ul web LIRC

lirc-remotes.sourceforge.net/remotes-table.html

și plasat în /etc/lirc/lircd.confg.d sau un profil personalizat poate fi creat cu propria telecomandă.

În timpul acestui proces, veți introduce numele tastei / butonului pe care îl înregistrați. Sunt permise numai numele valide, deci executați următoarea comandă pentru a vizualiza toate numele disponibile

irrecord --list-namespace Exemplu: am folosit numele KEY_POWER când am înregistrat butonul de pornire de pe telecomandă și KEY_TIME când am înregistrat butonul temporizator

Dacă se înregistrează mai mult de câteva taste, vă recomand să documentați numele cheilor utilizate și la ce buton mapează, deoarece este posibil să nu existe un nume perfect pentru butonul înregistrat. Acest lucru va face mai ușoară referința în viitor.

Generați un fișier de configurare la distanță

Creați un nou fișier de configurare a telecomenzii (folosind / dev / lirc0)

sudo systemctl stop lircd

cd ~ irrecord -d / dev / lirc0 Dacă întâmpinați o eroare care spune că nu puteți decoda datele sau ceva nu a funcționat corect, apăsați CTRL + C pentru a anula și rula ultima comandă asirrecord -f -d / dev / lirc0 aceasta va forța înregistrarea să ruleze în modul brut și ar trebui să permită procesului să continuă

Urmați instrucțiunile de pe ecran. Odată ce sistemul este inițializat, introduceți numele telecomenzii pe care o înregistrați (fișierul rezultat se va baza pe acest nume), apoi introduceți numele cheii pe care urmează să o înregistrați, apoi apăsați butonul de pe telecomandă în timp ce îl îndreptați către receptorul până când vi se solicită următorul nume al butonului. Repetați acest pas pentru fiecare buton de pe telecomandă pe care doriți să îl înregistrați.

Copiați peste fișierele de configurare noi în directorul lircd.conf.d și începeți din nou lirc

sudo cp ~ / *. lircd.conf /etc/lirc/lircd.conf.d

sudo systemctl start lircd

În acest moment, codurile de la distanță au fost înregistrate într-un fișier.

Pasul 5: mufa pentru căști (opțional)

Mufă pentru căști (opțional)
Mufă pentru căști (opțional)
Mufă pentru căști (opțional)
Mufă pentru căști (opțional)

Pentru a face cablurile de rulare și modificarea Raspberry Pi mai modulare, am lipit la cald o mufă audio pentru căști de 1/8 inch și am conectat firele la mufă. Sârmele pentru căști cu mufa potrivită au fost utilizate pentru a conecta LED-ul IR, astfel încât acest fir ar putea fi direcționat către o locație discretă pentru a indica receptorul IR al dispozitivului pe care am vrut să îl conectez, dar ar putea fi ușor deconectat de la Pi fără a fi nevoie să îl scoateți. toate firele.

Acest lucru este pur opțional, dar a fost util.

Pasul 6: Conectarea LED-ului IR (rapid)

Conectarea LED-ului IR (rapid)
Conectarea LED-ului IR (rapid)
Conectarea LED-ului IR (rapid)
Conectarea LED-ului IR (rapid)
Conectarea LED-ului IR (rapid)
Conectarea LED-ului IR (rapid)

Conectarea LED-ului de emisie IR la Raspberry Pi se poate face în mai multe moduri. Acest pas arată modul rapid în care l-am conectat, dar despre care am aflat mai târziu poate depăși limita de curent de pe pinii lui Pi. Până acum nu am întâmpinat probleme, dar o modalitate mai ideală de conectare este descrisă în pasul următor

Calculați rezistența necesară pentru LED-ul IR. https://ledcalculator.net/ vă poate ajuta să determinați valoarea corectă a rezistorului dacă aveți toate specificațiile LED-ului dvs. În acest caz, tensiunea pinului 22 este de 3,3 volți, căderea de tensiune a LED-ului este de 1,2 volți, curentul nominal este de 20 ma și a fost utilizat un LED, rezultând o valoare de 110 ohmi rezistență necesară. Am folosit un singur rezistor de 100 ohmi.

Notă: Mi s-a adus mai târziu la cunoștință faptul că curentul maxim al tuturor pinilor la un moment dat este de 16 ma, astfel încât această configurație ar putea să o depășească. O configurație mai bună cu un tranzistor și alimentare de 5 volți este descrisă în pasul următor, dar după câteva săptămâni de rulare în această configurație, nu am întâmpinat încă probleme.

Pinul 22 de pe Raspberry Pi va fi conectat la anodul LED-ului IR, care este în mod implicit piciorul mai lung.

Pinul mai scurt al LED-ului se conectează la rezistor și apoi la pinul de masă. Am tăiat cea mai mare parte a firului de pe rezistor și l-am lipit direct la un știft de împământare și la firul de masă care merge la LED.

Pasul 7: Conectarea LED-ului IR (metodă corectă)

Conectarea LED-ului IR (metodă corectă)
Conectarea LED-ului IR (metodă corectă)
Conectarea LED-ului IR (metodă corectă)
Conectarea LED-ului IR (metodă corectă)

Pentru a conecta corect LED-ul fără a depăși limita de tragere a Raspberry Pi, conectați LED-urile la sursa de 5 volți cu rezistor adecvat, conectați pinul catodic la pinul colector al unui rezistor 2N2222, conectați pinul emițătorului tranzistorului la masă, și conectați pinul 22 al Pi la un rezistor de 1K ohm la pinul de bază al tranzistorului. Acest lucru permite un curent foarte mic de la pinul 22 să conecteze LED-ul la masă, completând circuitul fără a trage prea mult Pi.

În exemplul meu, am conectat 2 LED-uri IR, astfel încât să pot controla iluminatul ambiental, precum și șemineul electric.

Pasul 8: Testarea trimiterii comenzilor IR

Testarea trimiterii comenzilor IR
Testarea trimiterii comenzilor IR

Pentru a trimite o comandă IR, se utilizează programul irsend.

Sintaxă: irsend

Exemplu: irsend SEND_ONCE Spectrafire KEY_POWER Aceasta trimite comanda butonului de alimentare de la telecomanda Spectrafire o singură dată. Înlocuiți Spectrafire cu orice ați numit telecomanda. Repetați cu alte nume de chei utilizate la înregistrarea fișierului.

În această etapă, puteți trimite orice comandă înregistrată anterior folosind LED-ul IR conectat la Raspberry Pi.

Pasul 9: Instalarea Ha-bridge

Pentru a permite Echo să ne poată controla dispozitivul, vom emula un bec Philips Hue folosind ha-bridge. Odată configurat, Echo va putea detecta acest dispozitiv și îi poate trimite comenzi de pornire / oprire.

Site-ul web pentru ha-bridge prezintă în mod clar procesul pentru versiunea actuală și este foarte recomandat să îl revizuiți.

github.com/bwssytems/ha-bridge

Copiați și lipiți următoarele linii într-o sesiune SSH pentru a instala și configura HA Bridge. (Poate fi necesar să rulați prima linie în sine, apoi lipiți liniile rămase

sudo apt install -y oracle-java8-jdk

mkdir / home / pi / habridge cd / home / pi / habridge / rm ha-bridge - *. jar -f wget $ (curl -s https://api.github.com/repos/bwssytems/ha-bridge/releases / latest | grep 'browser_' | cut -d / "-f4) mv ha-bridge - *. jar ha-bridge.jar echo [Unit] | sudo tee /etc/systemd/system/habridge.service echo Descriere = HA Bridge | sudo tee -a /etc/systemd/system/habridge.service echo Vreau = network.target | sudo tee -a /etc/systemd/system/habridge.service echo After = network.target | sudo tee -a / etc /systemd/system/habridge.service echo | sudo tee -a /etc/systemd/system/habridge.service echo [Service] | sudo tee -a /etc/systemd/system/habridge.service echo Type = simplu | sudo tee -a /etc/systemd/system/habridge.service echo WorkingDirectory = / home / pi / habridge | sudo tee -a /etc/systemd/system/habridge.service echo ExecStart = / usr / bin / java -jar -Dconfig. file = / home / pi / habridge / data / habridge.config /home/pi/habridge/ha-bridge.jar | sudo tee -a /etc/systemd/system/habridge.service echo | sudo tee -a / etc / systemd / system / hab ridge.service echo [Instalare] | sudo tee -a /etc/systemd/system/habridge.service echo WantedBy = multi-user.target | sudo tee -a /etc/systemd/system/habridge.service #Reload System Control and start service, setare pentru a activa la pornire sudo systemctl daemon-reload sudo systemctl start habridge.service sudo systemctl enable habridge.service

Pasul 10: Emularea unui bec Philips Hue

Emularea unui bec Philips Hue
Emularea unui bec Philips Hue
Emularea unui bec Philips Hue
Emularea unui bec Philips Hue

Când ha-bridge rulează, deschideți un browser web și introduceți adresa IP a Raspberry Pi, iar interfața pentru ha-bridge ar trebui să apară.

Faceți clic pe linkul Adăugare / Editare din partea de sus a paginii

Nume: Introduceți numele pe care doriți să îl utilizați când vorbiți comenzi

În secțiunea etichetată „On Items”, setați tipul „Execute Command / Script / Program și introduceți comanda în caseta Item țintă. Dacă doriți mai multe comenzi, faceți clic pe butonul Adăugați pentru a salva linia curentă și introduceți o altă comandă. De asemenea, este posibil să setați o întârziere și să repetați o comandă de un anumit număr de ori. În acest caz, butonul de alimentare necesar este apăsat mai întâi, apoi butonul Timer apăsat de 3 ori pentru a seta temporizatorul de oprire automată timp de 3 ore.

Repetați aceeași idee pentru zona „Elemente dezactivate”, făcând clic pe Adăugare când ați terminat.

În partea de sus a paginii, faceți clic pe „Adăugați dispozitiv Bridge” pentru a-l salva ca element nou sau pe Actualizați dispozitiv Bridge dacă modificați unul existent.

Îndreptați LED-ul IR către dispozitiv. În pagina Dispozitive Bridge, faceți clic pe butonul Test ON sau Test OFF pentru a verifica dacă acționează după cum doriți.

Pasul 11: Conectarea la Amazon Echo

Conectarea la Amazon Echo
Conectarea la Amazon Echo

Ultimul pas este de a permite Amazon Echo să comunice cu acest dispozitiv. Notă: Ambele dispozitive trebuie să fie aceeași rețea.

Opțiunea 1) spuneți „Alexa, descoperiți dispozitive inteligente pentru casă”

Opțiunea 2) Deschideți aplicația Alexa, atingeți Meniu> Smart Home și faceți clic pe linkul „Descoperiți dispozitive”

După câteva momente, dispozitivul ar trebui să fie recunoscut.

Rostiți „Alexa, porniți șemineul dormitorului” și verificați dacă dispozitivul se aprinde conform așteptărilor. Înlocuiți Șemineul dormitorului cu orice nume pe dispozitivul dvs. în ha-bridge. Repetați procesul pentru a opri dispozitivul.

Dacă nu ați montat încă LED-ul IR, găsiți un loc discret pentru a-l monta, permițându-i să indice în direcția generală a receptorului IR din dispozitiv. Poate fi necesar să îl mutați pentru a indica diferite zone pentru a găsi cea mai bună locație.

Recomandat: