Turinys:

„Amazon Echo“valdomas IR nuotolinio valdymo pultas: 11 žingsnių (su nuotraukomis)
„Amazon Echo“valdomas IR nuotolinio valdymo pultas: 11 žingsnių (su nuotraukomis)

Video: „Amazon Echo“valdomas IR nuotolinio valdymo pultas: 11 žingsnių (su nuotraukomis)

Video: „Amazon Echo“valdomas IR nuotolinio valdymo pultas: 11 žingsnių (su nuotraukomis)
Video: 🟡 POCO X5 PRO – IŠSAMUSIAUSIA APŽVALGA ir TESTAI 2024, Liepa
Anonim
„Amazon Echo“valdomas IR nuotolinio valdymo pultas
„Amazon Echo“valdomas IR nuotolinio valdymo pultas

„Amazon Echo“sistema gali valdyti daugelį išmaniųjų namų aspektų, tačiau išmanusis lizdas gali tik išjungti ir įjungti. Daugelis įrenginių neįsijungia akimirksniu, tiesiog prijungus ir reikalauja papildomų veiksmų, pvz., Paspaudus nuotolinio valdymo pulto arba fizinio įrenginio mygtukus, norint įjungti arba gauti norimus nustatymus.

Šiame vadove „Raspberry Pi Zero W“bus sukonfigūruotas veikti kaip išmaniųjų namų įrenginys, kurį gali valdyti „Amazon Echo“, ir siunčia bet kokias norimas IR komandas į įrenginį, kai prašoma įjungti arba išjungti.

Šiuo konkrečiu atveju „Pi“bus sukonfigūruotas taip, kad išmoktų IR komandas nuotolinio valdymo pulte, kuriame yra „ClassicFlame 23II310GRA 23“infraraudonųjų spindulių kvarco židinio intarpas “. Tada IR šviesos diodas bus naudojamas išsiųsti IR komandas pagal pareikalavimą ir galiausiai „Pi“, sukonfigūruotas imituoti „Philips Hue“įrenginį, kurį galima valdyti, yra „Echo“.

1 žingsnis: medžiagos

Medžiagos
Medžiagos

Būtina:

  • Raspberry Pi Zero W
  • 4 GB ar didesnė „Micro SDHC 10“klasės atminties kortelė (16 GB pavyzdys)
  • „MicroUSB“
  • 1 IR šviesos diodas
  • „MicroUSB“maitinimo adapteris (rekomenduojamas 2,1 ampero ar didesnis)
  • IR šviesos diodas
  • IR imtuvas VS/1838B
  • 100 omų rezistorius
  • Įvairūs viela

Rekomenduojamas:

  • Ausinių lizdas
  • 1/8 colio ausinių/garso laidas
  • 2N2222 NPN tranzistorius
  • 1k omo rezistorius
  • „Rapsberry Pi Zero“dėklas

Norint užbaigti pradinę „Raspberry Pi Zero W“konfigūraciją, reikės kelių papildomų periferinių įrenginių, tačiau jie nebus naudojami visą laiką iki užbaigto projekto

  • Mini HDMI į HDMI adapteris: naudojamas prijungti „Pi Zero W“prie televizoriaus ar monitoriaus viso dydžio HDMI kabeliu
  • USB OTG kabelis: naudojamas konvertuoti iš „micro-USB“į viso dydžio USB prievadą (-us), kad būtų galima prijungti klaviatūrą ir (arba) pelę
  • HDMI kabelis: naudojamas prijungti prie televizoriaus ar monitoriaus kartu su mini HDMI adapteriu

Į pirmuosius du daiktus ir dėklą įeina įvairūs „Pi Zero“pradiniai rinkiniai, tokie kaip: „MakerSpot Mega Kit“

2 veiksmas: nustatykite „Raspberry Pi“

„Raspberry Pi“svetainėje yra puikus aprašymas, kaip nustatyti „Raspbian Stretch“OS „Raspberry Pi“. Aš rekomenduoju „Lite“versiją mažesniam pėdsakui, jei tai tik projektas, veikiantis „Pi“. Jei ateityje norite turėti daugiau operacinės sistemos parinkčių arba atlikti paprastesnę sąranką, laikydamiesi NOOBS instrukcijų greitai pradėsite veikti. Šis vadovas yra pagrįstas Raspbian, kuris įtrauktas į NOOBS

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

Kai „Raspbian“veikia, įjunkite SSH, kad būtų galima nuotoliniu būdu prisijungti prie įrenginio, nereikia monitoriaus/klaviatūros/pelės prijungti tiesiai prie „Pi“. Jei norite pasirinktinai turėti nuotolinę prieigą prie GUI, taip pat galite įjungti VNC prieigą

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

Taip pat labai rekomenduojama belaidžio tinklo konfigūracijoje nustatyti statinį IP, kad laikui bėgant jis nesikeistų. Gali būti, kad IP gali nesikeisti, jei nauji įrenginiai nėra reguliariai prijungiami prie belaidžio tinklo, tačiau sukonfigūravus jį kaip statinį, jis to nepadarys.

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

3 žingsnis: LIRC konfigūravimas

LIRC konfigūravimas
LIRC konfigūravimas
LIRC konfigūravimas
LIRC konfigūravimas
LIRC konfigūravimas
LIRC konfigūravimas
LIRC konfigūravimas
LIRC konfigūravimas

Šie veiksmai yra labai pagrįsti čia esančiais puikiais vadovais:

alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/https://camp.isaax.io/en/isaax-examples/ir-control-via- lirc-on-aviečių-pi-nulis-w

Šis vadovas yra pagrįstas „Rasbian Stretch“ir „lirc 0.9.4c-9“. Kiti vadovai gali būti pagrįsti ankstesnėmis versijomis ir paminėti hard.conf failą, kuris nebereikalingas naudojant šią ir naujesnę versiją. Taip pat pastebėjau, kad mano sistemose nebereikia keisti /etc /modules failo. Šiuo metu 4.19 versijos branduolio versijoje reikės atlikti papildomų pakeitimų, kurie šiuo metu nėra dokumentuoti. Įsitikinkite, kad naudojate 4.14, kad gautumėte šį nurodymų rinkinį

„Linux“infraraudonųjų spindulių nuotolinio valdymo (LIRC) biblioteka naudojama IR komandų priėmimui per imtuvo modulį tvarkyti, išsaugoti jas faile ir, jei reikia, siųsti komandas per IR šviesos diodą.

Pirmasis žingsnis yra įrašyti IR signalus iš esamo nuotolinio valdymo pulto naudojant IR imtuvą ir išsaugoti juos faile. IR imtuvas reikalingas tik iš pradžių IR signalams išmokti, o po to gali būti pašalintas, todėl galima naudoti laikiną ryšį.

Prijunkite IR imtuvą prie Raspberry Pi. Naudokite pridedamą paveikslėlį, kad atpažintumėte VCC, GND ir signalo kaiščius. Naudodami duonos lentą, sujungimo laidus arba kūrybiškai sulenkdami kaiščius prie šių jungčių

VCC prijungiamas prie 5 voltų kaiščio GND prie įžeminimo kaiščio Signalas prie 23 kaiščio

Įjunkite ir prisijunkite prie „Raspberry Pi“atidarę terminalą vietiniame įrenginyje arba sukurdami SSH ryšį naudodami tokią programą kaip „Putty for Windows“.

Toliau pateiktas eilutes galima nukopijuoti ir įklijuoti į SSH seansą. Jie pridės/pakeis eilutes į įvairius konfigūracijos failus, reikalingus „lirc“veikimui.

sudo apt atnaujinimas

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 dabar

Palaukite, kol įrenginys bus paleistas iš naujo, ir vėl prisijunkite.

Neprivaloma: išbandykite IR imtuvą

Sumontuokite LIRC įrenginį, kad įsitikintumėte, jog galima gauti bet kokią įvestį. Jums gali tekti iš naujo paleisti „Pi“, kai šis testas bus baigtas, kad jis būtų prieinamas vėlesniems veiksmams.

sudo systemctl sustabdyti lircd

mode2 -d /dev /lirc0Nukreipkite IR nuotolinio valdymo pultą į imtuvą ir paspauskite mygtuką ir įsitikinkite, kad ekrane rodomi duomenys CTRL+C

Šiuo metu įdiegta LIRC programa ir mes galime peržiūrėti IR informaciją.

4 žingsnis: IR kodų fiksavimas

Nuotolinį profilį galima atsisiųsti iš LIRC svetainės

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

ir įdėti į /etc/lirc/lircd.confg.d, arba galite sukurti pasirinktinį profilį naudodami savo nuotolinio valdymo pultą.

Šio proceso metu įvesite įrašomo klavišo/mygtuko pavadinimą. Leidžiami tik galiojantys vardai, todėl paleiskite šią komandą, kad peržiūrėtumėte visus galimus pavadinimus

irrecord --list-namespace Pavyzdys: aš naudoju pavadinimą KEY_POWER, kai nuotolinio valdymo pulte įrašiau maitinimo mygtuką, ir KEY_TIME, kai įrašiau laikmačio mygtuką

Jei įrašoma daugiau nei keli klavišai, rekomenduoju dokumentuoti naudojamų klavišų pavadinimus ir mygtuką, į kurį jie susiejami, nes gali būti, kad nėra tobulai įrašomo mygtuko pavadinimo. Tai palengvins nuorodą ateityje.

Sukurkite nuotolinės konfigūracijos failą

Sukurkite naują nuotolinio valdymo pulto konfigūracijos failą (naudodami /dev /lirc0)

sudo systemctl sustabdyti lircd

cd ~ irrecord -d /dev /lirc0 Jei susiduriate su klaida sakydamas, kad negalite iššifruoti duomenų arba kažkas nepavyko, paspauskite CTRL+C, kad atšauktumėte ir paleistumėte paskutinę komandą, nes asirrecord -f -d /dev /lirc0this privers įrašą veikti neapdorotu režimu ir turėtų leisti procesui tęsti

Vykdykite ekrane pateikiamas instrukcijas. Kai sistema bus inicijuota, įveskite įrašomo nuotolinio valdymo pulto pavadinimą (gautas failas bus pagrįstas šiuo pavadinimu), tada įveskite rakto, kurį ketinate įrašyti, pavadinimą ir paspauskite nuotolinio valdymo pulto mygtuką, nukreipdami jį į imtuvą, kol bus paprašyta įvesti kito mygtuko pavadinimą. Pakartokite šį veiksmą kiekvienam nuotolinio valdymo pulto mygtukui, kurį norite įrašyti.

Nukopijuokite naują konfigūracijos failą (-us) į katalogą lircd.conf.d ir vėl paleiskite „lirc“

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

sudo systemctl paleisti lircd

Šiuo metu nuotoliniai kodai buvo įrašyti į failą.

5 veiksmas: ausinių lizdas (pasirinktinai)

Ausinių lizdas (pasirinktinai)
Ausinių lizdas (pasirinktinai)
Ausinių lizdas (pasirinktinai)
Ausinių lizdas (pasirinktinai)

Kad veikiantys laidai ir „Raspberry Pi“modifikavimas būtų moduliškesni, karštai priklijavau 1/8 colio ausinių garso lizdą prie korpuso ir prijungiau laidus prie lizdo. Ausinių laidai su atitinkamu kištuku buvo naudojami prijungti IR šviesos diodą, todėl šį laidą buvo galima nukreipti į nepastebimą vietą, nukreiptą į įrenginio, kurį norėjau prijungti, IR imtuvą, tačiau jį buvo galima lengvai atjungti nuo „Pi“, nereikia jo išimti visus laidus.

Tai visiškai neprivaloma, tačiau pravertė.

6 veiksmas: IR šviesos diodo prijungimas (greitas)

IR šviesos diodo prijungimas (greitas)
IR šviesos diodo prijungimas (greitas)
IR šviesos diodo prijungimas (greitas)
IR šviesos diodo prijungimas (greitas)
IR šviesos diodo prijungimas (greitas)
IR šviesos diodo prijungimas (greitas)

IR skleidžiantį šviesos diodą prie Raspberry Pi galima prijungti keliais būdais. Šis žingsnis rodo greitą jo prijungimo būdą, tačiau vėliau sužinojau, kad gali viršyti dabartinę „Pi“kaiščių ribą. Iki šiol nesusidūriau su jokiomis problemomis, tačiau kitame žingsnyje aprašytas idealus prisijungimo būdas

Apskaičiuokite rezistorių, reikalingą jūsų IR šviesos diodui. https://ledcalculator.net/ gali padėti nustatyti tinkamą rezistoriaus vertę, jei turite visas savo šviesos diodo specifikacijas. Šiuo atveju 22 kaiščio įtampa yra 3,3 voltai, šviesos diodo įtampos kritimas yra 1,2 volto, srovės stipris yra 20 ma ir buvo naudojamas 1 šviesos diodas, todėl reikėjo 110 omų rezistoriaus vertės. Aš naudojau vieną 100 omų rezistorių.

Pastaba: vėliau man buvo atkreiptas dėmesys, kad visų kaiščių maksimali srovė bet kuriuo metu yra 16 ma, todėl ši konfigūracija gali viršyti. Kitame žingsnyje aprašoma geresnė konfigūracija su tranzistoriumi ir 5 voltų maitinimu, tačiau po kelių savaičių veikimo šioje konfigūracijoje dar nesusidūriau su jokiomis problemomis.

„Raspberry Pi“22 kaištis bus prijungtas prie IR šviesos diodo anodo, kuris pagal nutylėjimą yra ilgesnė koja.

Trumpesnis šviesos diodo kaištis jungiasi prie rezistoriaus, o paskui į įžeminimo kaiščio. Nupjoviau didžiąją dalį rezistoriaus laido ir litavau tiesiai prie įžeminimo kaiščio ir įžeminimo laido, einančio į šviesos diodą.

7 žingsnis: IR šviesos diodo prijungimas (teisingas metodas)

IR šviesos diodo prijungimas (teisingas metodas)
IR šviesos diodo prijungimas (teisingas metodas)
IR šviesos diodo prijungimas (teisingas metodas)
IR šviesos diodo prijungimas (teisingas metodas)

Norėdami tinkamai prijungti šviesos diodą, neviršydami „Raspberry Pi“traukimo ribos, prijunkite šviesos diodus prie 5 voltų maitinimo šaltinio su atitinkamu rezistoriumi, prijunkite katodo kaištį prie 2N2222 rezistoriaus kolektoriaus kaiščio, prijunkite tranzistoriaus spindulį prie žemės, ir prijunkite Pi kaištį 22 prie 1K omo rezistoriaus prie tranzistoriaus pagrindo kaiščio. Tai leidžia labai mažai srovei nuo 22 kaiščio prijungti šviesos diodą prie žemės, užbaigiant grandinę neperpiešiant Pi.

Savo pavyzdyje aš prijungiau 2 IR šviesos diodus, kad galėčiau valdyti aplinkos apšvietimą ir elektrinį židinį.

8 veiksmas: IR komandų siuntimo testavimas

Siunčiamų IR komandų tikrinimas
Siunčiamų IR komandų tikrinimas

IR komandai siųsti naudojama irsend programa.

Sintaksė: irsend

Pavyzdys: „irsend SEND_ONCE Spectrafire“KEY_POWER Tai vieną kartą siunčia įjungimo mygtuko komandą iš „Spectrafire“nuotolinio valdymo pulto. Pakeiskite „Spectrafire“bet kokiu nuotolinio valdymo pulto pavadinimu. Pakartokite su kitais raktų pavadinimais, naudojamais įrašant failą.

Šiame etape galite siųsti bet kokias komandas, anksčiau įrašytas naudojant IR LED, prijungtą prie „Raspberry Pi“.

9 žingsnis: „Ha-bridge“montavimas

Kad „Echo“galėtų valdyti mūsų įrenginį, mes imituosime „Philips Hue“lemputę naudodami „ha-bridge“. Sukonfigūravęs „Echo“galės aptikti šį įrenginį ir siųsti jam įjungimo/išjungimo komandas.

„Ha-bridge“svetainė aiškiai apibūdina dabartinės versijos procesą ir ją labai rekomenduojama peržiūrėti.

github.com/bwssytems/ha-bridge

Nukopijuokite ir įklijuokite šias eilutes į SSH seansą, kad įdiegtumėte ir sukonfigūruotumėte „HA Bridge“. (Gali tekti paleisti pirmą eilutę, tada įklijuoti likusias eilutes

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 Description = HA Tiltas | sudo tee -a /etc/systemd/system/habridge.service echo Nori = 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 [Paslauga] | sudo tee -a /etet/systemd/system/habridge.service echo Type = paprasta | 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 [Įdiegti] | 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, nustatymas įjungti paleidžiant sudo systemctl daemon -reload sudo systemctl start habridge.service sudo systemctl enable habridge.service

10 veiksmas: imituokite „Philips Hue“lemputę

„Philips Hue“lemputės emuliacija
„Philips Hue“lemputės emuliacija
„Philips Hue“lemputės emuliacija
„Philips Hue“lemputės emuliacija

Kai „ha-bridge“veikia, atidarykite žiniatinklio naršyklę ir įveskite „Raspberry Pi“IP adresą, o ha-bridge sąsaja turėtų pasirodyti.

Puslapio viršuje spustelėkite nuorodą Pridėti/redaguoti

Pavadinimas: įveskite vardą, kurį norite naudoti sakydami komandas

Skiltyje „Ant daiktų“nustatykite tipą „Vykdyti komandą/scenarijų/programą ir įveskite komandą laukelyje Tikslinis elementas. Jei norite kelių komandų, spustelėkite mygtuką Pridėti, kad išsaugotumėte dabartinę eilutę, ir įveskite kitą komandą. Taip pat galima nustatyti uždelsimą ir pakartoti komandą tam tikrą skaičių kartų. Tokiu atveju pirmiausia reikia paspausti maitinimo mygtuką, tada 3 kartus paspausti laikmačio mygtuką, kad būtų nustatytas 3 valandų automatinio išjungimo laikmatis.

Pakartokite tą pačią idėją ir srityje „Išjungti“, kai baigsite, pridėti.

Puslapio viršuje spustelėkite „Pridėti tiltinį įrenginį“, kad išsaugotumėte jį kaip naują elementą, arba atnaujinkite „Bridge“įrenginį, jei modifikuojate esamą.

Nukreipkite IR šviesos diodą į prietaisą. Puslapyje „Tilto įrenginiai“spustelėkite mygtuką Įjungti arba Išjungti, kad įsitikintumėte, jog jis veikia taip, kaip pageidaujama.

11 veiksmas: prisijunkite prie „Amazon Echo“

Prisijungimas prie „Amazon Echo“
Prisijungimas prie „Amazon Echo“

Paskutinis žingsnis yra leisti „Amazon Echo“bendrauti su šiuo įrenginiu. Pastaba: abu įrenginiai turi būti to paties tinklo.

1 variantas) pasakykite „Alexa, atraskite išmaniuosius namų įrenginius“

2 parinktis) Atidarykite „Alexa“programą, bakstelėkite Meniu> Išmanieji namai ir spustelėkite nuorodą „Atrasti įrenginius“

Po kelių minučių prietaisas turėtų būti atpažintas.

Pasakykite „Alexa, įjunkite miegamojo židinį“ir patikrinkite, ar prietaisas įsijungia, kaip tikėtasi. Pakeiskite miegamojo židinį bet kokiu jūsų prietaiso pavadinimu „ha-bridge“. Pakartokite procesą, kad išjungtumėte įrenginį.

Jei dar neįdėjote IR šviesos diodo, suraskite nepastebimą vietą, kur jį pritvirtinti, tuo pačiu leisdami nukreipti į bendrą prietaiso IR imtuvo kryptį. Jei norite rasti geriausią vietą, gali tekti perkelti jį į skirtingas sritis.

Rekomenduojamas: