Satura rādītājs:

Amazon Echo kontrolētā IR tālvadības pults: 11 soļi (ar attēliem)
Amazon Echo kontrolētā IR tālvadības pults: 11 soļi (ar attēliem)

Video: Amazon Echo kontrolētā IR tālvadības pults: 11 soļi (ar attēliem)

Video: Amazon Echo kontrolētā IR tālvadības pults: 11 soļi (ar attēliem)
Video: CS50 2015 - Week 10 2024, Jūlijs
Anonim
Amazon Echo kontrolētais IR tālvadības pults
Amazon Echo kontrolētais IR tālvadības pults

Amazon Echo sistēma var kontrolēt daudzus viedās mājas aspektus, bet viedo kontaktligzdu var tikai izslēgt un ieslēgt. Daudzas ierīces uzreiz neieslēdzas, vienkārši pievienojot tās elektrotīklam, un tām ir jāveic papildu darbības, piemēram, nospiežot tālvadības pults vai fiziskās ierīces pogas, lai ieslēgtu vai iegūtu vajadzīgos iestatījumus.

Šajā rokasgrāmatā Raspberry Pi Zero W tiks konfigurēts tā, lai tas darbotos kā vieda mājas ierīce, kuru var kontrolēt Amazon Echo, un nosūtītu jebkuras vēlamās IR komandas ierīcei, kad tiek prasīts to ieslēgt vai izslēgt.

Šajā konkrētajā gadījumā Pi tiks konfigurēts, lai apgūtu IR komandas no tālvadības pults, kas aprīkota ar "ClassicFlame 23II310GRA 23" Infrasarkanā kvarca kamīna ieliktni ". Pēc tam tiks izmantota IR gaismas diode, lai nosūtītu IR komandas pēc pieprasījuma, un visbeidzot Pi ir konfigurēts tā, lai atdarinātu Philips Hue ierīci, kuru var kontrolēt, izmantojot Echo.

1. solis: materiāli

Materiāli
Materiāli

Obligāti:

  • Raspberry Pi Zero W
  • 4 GB vai lielāka Micro SDHC 10. klases atmiņas karte (16 GB piemērs)
  • MicroUSB
  • 1 IR LED
  • MicroUSB strāvas adapteris (ieteicams 2,1 ampēri vai lielāks)
  • IR LED
  • IR uztvērējs VS/1838B
  • 100 omu rezistors
  • Dažādi vads

Ieteicams:

  • Austiņu ligzda
  • 1/8 collu austiņu/audio vads
  • 2N2222 NPN tranzistors
  • 1k omu rezistors
  • Rapsberry Pi Zero futrālis

Lai pabeigtu Raspberry Pi Zero W sākotnējo konfigurāciju, būs nepieciešamas dažas papildu perifērijas ierīces, taču pabeigtajā projektā tās netiks izmantotas visu laiku

  • Mini HDMI uz HDMI adapteris: izmanto, lai savienotu Pi Zero W ar televizoru vai monitoru, izmantojot pilna izmēra HDMI kabeli
  • USB OTG kabelis: izmanto, lai pārveidotu no mikro-USB uz pilna izmēra USB portu, lai savienotu tastatūru un/vai peli
  • HDMI kabelis: izmanto, lai izveidotu savienojumu ar televizoru vai monitoru kopā ar adapteri mini HDMI

Pirmie divi priekšmeti, kā arī futrālis ietver dažādus Pi Zero sākuma komplektus, piemēram: MakerSpot Mega Kit

2. darbība: iestatiet Raspberry Pi

Vietnē Raspberry Pi ir lielisks ceļvedis Raspbian Stretch OS iestatīšanai Raspberry Pi. Es iesaku Lite versiju mazākam nospiedumam, ja tas ir tikai projekts, kas darbojas ar Pi. Ja vēlaties nākotnē iegūt vairāk operētājsistēmas opciju vai vienkāršāku iestatīšanu, ievērojot NOOBS norādījumus, jūs sāksit darbu īsā laikā. Šī rokasgrāmata ir balstīta uz Raspbian, kas ir iekļauta NOOBS

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

Kad Raspbian darbojas, iespējojiet SSH, lai atļautu attālos savienojumus ar ierīci, neprasot monitora/tastatūras/peles savienojumu tieši ar Pi. Ja vēlaties pēc izvēles iegūt attālo piekļuvi GUI, varat arī iespējot VNC piekļuvi

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

Ir arī ļoti ieteicams bezvadu tīkla konfigurācijā iestatīt statisku IP, lai tas laika gaitā nemainītos. Iespējams, ka IP var nemainīties, ja jaunas ierīces nav regulāri pievienotas bezvadu tīklam, taču, konfigurējot to kā statisku, tas nenotiks.

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

3. darbība: LIRC konfigurēšana

LIRC konfigurēšana
LIRC konfigurēšana
LIRC konfigurēšana
LIRC konfigurēšana
LIRC konfigurēšana
LIRC konfigurēšana
LIRC konfigurēšana
LIRC konfigurēšana

Turpmākās darbības ir balstītas uz šeit atrodamajiem lieliskajiem ceļvežiem:

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

Šī rokasgrāmata ir balstīta uz Rasbian Stretch un lirc 0.9.4c-9. Citas rokasgrāmatas var balstīties uz iepriekšējām faila versijām un pieminēt failu hardware.conf, kas ar šo un jaunāku versiju vairs nav vajadzīgs. Es arī atklāju, ka manās sistēmās vairs nav nepieciešams modificēt failu /etc /modules. Pašlaik kodola versijai 4.19 būs nepieciešamas papildu izmaiņas, kas šeit pašlaik nav dokumentētas. Lūdzu, pārliecinieties, vai izmantojat 4.14

Linux infrasarkanās tālvadības pults (LIRC) bibliotēka tiek izmantota, lai apstrādātu IS komandu saņemšanu caur uztvērēja moduli, saglabātu tās failā un pēc tam nosūtītu komandas, ja nepieciešams, izmantojot IR LED.

Pirmais solis ir ierakstīt IR signālus no mūsu esošās tālvadības pults, izmantojot IR uztvērēju, un saglabāt tos failā. IR uztvērējs ir nepieciešams tikai sākotnēji, lai uzzinātu IS signālus, un pēc tam to var noņemt, lai varētu izmantot pagaidu savienojumu.

Pievienojiet IR uztvērēju Raspberry Pi. Izmantojiet pievienoto attēlu, lai identificētu VCC, GND un signāla tapas. Izmantojot maizes dēli, savienotājvadus vai radoši saliekot tapas šādiem savienojumiem

VCC savieno ar 5 voltu tapu GND ar zemējuma tapu Signāls līdz 23. tapai

Ieslēdziet un izveidojiet savienojumu ar Raspberry Pi, atverot termināli vietējā ierīcē vai izveidojot SSH savienojumu, izmantojot programmu, piemēram, Putty for Windows.

Šādas rindiņas var kopēt un ielīmēt SSH sesijā. Viņi pievienos/modificēs rindas dažādiem konfigurācijas failiem, kas nepieciešami lirc darbībai.

sudo apt atjauninājums

sudo apt instalēt -y lirc echo dtoverlay = lirc -rpi, gpio_in_pin = 23, gpio_out_pin = 22 | sudo tee -a /boot/config.txt sudo sed -i '/draiveris = */cdriver = noklusējums' /etc/lirc/lirc_options.conf sudo sed -i '/device = */cdevice =/dev/lirc0'/ etc/lirc/lirc_options.conf sudo shutdown -r tagad

Pagaidiet, līdz ierīce tiek restartēta un atkal piesakieties.

Pēc izvēles: pārbaudiet IR uztvērēju

Uzstādiet LIRC ierīci, lai apstiprinātu, ka var saņemt jebkuru ievadi. Pēc šī testa pabeigšanas, iespējams, būs jārestartē Pi, lai tas būtu pieejams vēlākām darbībām.

sudo systemctl stop lircd

mode2 -d /dev /lirc0Pavērsiet IR tālvadības pulti pret uztvērēju un nospiediet pogu un pārliecinieties, vai ekrānā parādās dati CTRL+C

Šajā brīdī ir instalēta LIRC programma, un mēs varam apskatīt IS informāciju.

4. solis: IR kodu uztveršana

Attālo profilu var lejupielādēt no LIRC vietnes

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

un ievietots /etc/lirc/lircd.confg.d, vai arī pielāgotu profilu var izveidot ar savu tālvadības pulti.

Šī procesa laikā jūs ievadīsit ierakstāmās atslēgas/pogas nosaukumu. Ir atļauti tikai derīgi vārdi, tāpēc izpildiet šo komandu, lai skatītu visus pieejamos nosaukumus

irrecord-list-namespace Piemērs: es izmantoju nosaukumu KEY_POWER, kad ierakstīju barošanas pogu tālvadības pultī, un KEY_TIME, ierakstot taimera pogu.

Ja tiek ierakstīti vairāk nekā daži taustiņi, es iesaku dokumentēt izmantoto atslēgu nosaukumus un pogu, uz kuras tie tiek kartēti, jo ierakstāmajai pogai var nebūt perfekta nosaukuma. Tas atvieglos atsauci nākotnē.

Izveidojiet attālās konfigurācijas failu

Izveidojiet jaunu tālvadības pults konfigurācijas failu (izmantojot /dev /lirc0)

sudo systemctl stop lircd

cd ~ neierakstīt -d /dev /lirc0 Ja rodas kļūda, sakot, ka nevar atšifrēt datus, vai kaut kas nav kārtībā, nospiediet taustiņu kombināciju CTRL+C, lai atceltu un palaistu pēdējo komandu, jo asirrecord -f -d /dev /lirc0šis piespiedīs ierakstu darboties neapstrādātā režīmā un ļaus procesam turpināt

Izpildiet ekrānā redzamos norādījumus. Kad sistēma ir inicializēta, ievadiet ierakstāmās tālvadības pults nosaukumu (iegūtais fails tiks balstīts uz šo nosaukumu), pēc tam ievadiet atslēgas nosaukumu, kuru ierakstīsit, un pēc tam nospiediet tālvadības pults pogu, vienlaikus norādot to uz uztvērēju, līdz tiek prasīts nākamās pogas nosaukums. Atkārtojiet šo darbību katrai tālvadības pults pogai, kuru vēlaties ierakstīt.

Kopējiet jauno (-os) konfigurācijas failu (-us) direktorijā lircd.conf.d un sāciet lirc no jauna

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

sudo systemctl start lircd

Šajā brīdī tālvadības kodi ir ierakstīti failā.

5. darbība: austiņu ligzda (pēc izvēles)

Austiņu ligzda (pēc izvēles)
Austiņu ligzda (pēc izvēles)
Austiņu ligzda (pēc izvēles)
Austiņu ligzda (pēc izvēles)

Lai vadus un Raspberry Pi modificēšanu padarītu modulārākus, es karsti pielīmēju 1/8 collu austiņu audio ligzdu pie korpusa un pievienoju vadus ligzdai. Lai savienotu IR gaismas diodi, tika izmantoti austiņu vadi ar atbilstošu kontaktdakšu, tāpēc šo vadu varēja novirzīt uz neuzkrītošu atrašanās vietu, lai norādītu uz tās ierīces IR uztvērēju, kuru es gribēju savienot, bet to varēja viegli atvienot no Pi, to nenoņemot visi vadi.

Tas ir tīri fakultatīvs, taču tas ir noderējis.

6. darbība: IR gaismas diodes pievienošana (ātra)

IR LED savienošana (ātra)
IR LED savienošana (ātra)
IR LED savienošana (ātra)
IR LED savienošana (ātra)
IR LED savienošana (ātra)
IR LED savienošana (ātra)

IR izstarojošās gaismas diodes pievienošanu Raspberry Pi var veikt vairākos veidos. Šis solis parāda ātro veidu, kā es to pievienoju, taču, ko es uzzināju vēlāk, var pārsniegt pašreizējo ierobežojumu Pi tapām. Līdz šim man nav radušās nekādas problēmas, bet ideālāks savienojuma veids ir aprakstīts nākamajā solī

Aprēķiniet rezistoru, kas nepieciešams jūsu IR LED. https://ledcalculator.net/ var palīdzēt noteikt pareizo rezistora vērtību, ja jums ir visas jūsu LED specifikācijas. Šajā gadījumā tapas 22 spriegums ir 3,3 volti, gaismas diodes sprieguma kritums ir 1,2 volti, strāvas stiprums ir 20 ma, un tika izmantota 1 gaismas diode, kā rezultātā bija nepieciešams 110 omu rezistors. Es izmantoju vienu 100 omu rezistoru.

Piezīme: man vēlāk tika paziņots, ka visu tapu maksimālā strāva jebkurā laikā ir 16 ma, tāpēc šī konfigurācija varētu pārsniegt to. Labāka konfigurācija ar tranzistoru un 5 voltu barošanu ir aprakstīta nākamajā solī, taču pēc vairāku nedēļu darbības šajā konfigurācijā es vēl neesmu saskāries ar problēmām.

Raspberry Pi 22. tapa tiks savienota ar IR LED anodu, kas pēc noklusējuma ir garāka kāja.

Gaismas diodes īsākā tapa savienojas ar rezistoru un pēc tam ar zemējuma tapu. Es nogriezu lielāko daļu rezistora stieples un pielodēju to tieši pie zemējuma tapas un pie zemējuma stieples, kas iet uz LED.

7. solis: IR LED pievienošana (pareiza metode)

IR gaismas diodes pievienošana (pareiza metode)
IR gaismas diodes pievienošana (pareiza metode)
IR LED pievienošana (pareiza metode)
IR LED pievienošana (pareiza metode)

Lai pareizi savienotu gaismas diodi, nepārsniedzot Raspberry Pi vilkšanas robežu, pievienojiet gaismas diodes 5 voltu barošanai ar atbilstošu rezistoru, pievienojiet katoda tapu 2N2222 rezistora kolektora tapai, pievienojiet tranzistora izstarotāja tapu zemei, un savienojiet Pi tapu 22 ar 1K omu rezistoru pie tranzistora bāzes tapas. Tas ļauj ļoti mazai strāvai no 22. tapas savienot gaismas diodi ar zemi, pabeidzot ķēdi, nepārzīmējot Pi.

Manā piemērā es pievienoju 2 IR gaismas diodes, lai es varētu kontrolēt apkārtējo apgaismojumu, kā arī elektrisko kamīnu.

8. darbība: IR komandu sūtīšanas pārbaude

IR komandu sūtīšanas pārbaude
IR komandu sūtīšanas pārbaude

Lai nosūtītu IS komandu, tiek izmantota programma irsend.

Sintakse: irsend

Piemērs: irsend SEND_ONCE Spectrafire KEY_POWER Tas vienreiz nosūta barošanas pogas komandu no Spectrafire tālvadības pults. Nomainiet Spectrafire ar jebkuru tālvadības pults nosaukumu. Atkārtojiet ar citiem taustiņu nosaukumiem, kas tiek izmantoti, ierakstot failu.

Šajā posmā jūs varat nosūtīt visas komandas, kas iepriekš ierakstītas, izmantojot IR LED, kas savienota ar Raspberry Pi.

9. solis: Ha-tilta uzstādīšana

Lai Echo varētu kontrolēt mūsu ierīci, mēs emulēsim Philips Hue spuldzi, izmantojot ha-bridge. Pēc konfigurēšanas Echo varēs noteikt šo ierīci un nosūtīt tai ieslēgšanas/izslēgšanas komandas.

Vietnē ha-bridge ir skaidri izklāstīts pašreizējās versijas process, un to ļoti ieteicams pārskatīt.

github.com/bwssytems/ha-bridge

Kopējiet un ielīmējiet šīs rindiņas SSH sesijā, lai instalētu un konfigurētu HA Bridge. (Var būt nepieciešams palaist pirmo rindu, pēc tam ielīmēt atlikušās rindas

sudo apt instalēt -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 Apraksts = HA Tilts | sudo tee -a /etc/systemd/system/habridge.service echo Vēlas = 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 = simple | 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/// systemd/system/hab ridge.service echo [Instalēt] | sudo tee -a /etc/systemd/system/habridge.service echo WantedBy = multi-user.target | sudo tee -a /etc/systemd/system/habridge.service #Atkārtoti ielādēt sistēmas vadību un sākt pakalpojumu, iestatot, lai ieslēgšanas laikā aktivizētu sudo systemctl dēmons -pārlādētu sudo systemctl start habridge.service sudo systemctl enable habridge.service

10. darbība: Philips Hue spuldzes atdarināšana

Philips Hue spuldzes atdarināšana
Philips Hue spuldzes atdarināšana
Philips Hue spuldzes atdarināšana
Philips Hue spuldzes atdarināšana

Kad darbojas ha-bridge, atveriet tīmekļa pārlūkprogrammu un ievadiet Raspberry Pi IP adresi, un vajadzētu parādīties ha-bridge interfeisam.

Lapas augšdaļā noklikšķiniet uz saites Pievienot/rediģēt

Nosaukums: ievadiet vārdu, kuru vēlaties izmantot, runājot komandas

Sadaļā ar nosaukumu "Par precēm" iestatiet veidu "Izpildīt komandu/skriptu/programmu un ievadiet komandu lodziņā Mērķa vienums. Ja vēlaties vairākas komandas, noklikšķiniet uz pogas Pievienot, lai saglabātu pašreizējo rindu, un ievadiet citu komandu. iespējams arī iestatīt aizkavi un atkārtot komandu noteiktu skaitu reižu. Šajā gadījumā vispirms bija jānospiež barošanas poga, pēc tam 3 reizes tika nospiesta taimera poga, lai iestatītu automātiskās izslēgšanās taimeri uz 3 stundām.

Atkārtojiet to pašu ideju apgabalā “Izslēgtie vienumi”, noklikšķinot uz Pievienot, kad esat pabeidzis.

Lapas augšdaļā noklikšķiniet uz "Pievienot tilta ierīci", lai to saglabātu kā jaunu vienumu, vai atjauniniet tilta ierīci, ja maināt esošu.

Pavērsiet IR gaismas diodi uz ierīci. Tilta ierīču lapā noklikšķiniet uz pogas Pārbaudīt ieslēgtu vai Izslēgt, lai pārliecinātos, ka tā darbojas kā vēlaties.

11. darbība. Savienojuma izveide ar Amazon Echo

Savienojuma izveide ar Amazon Echo
Savienojuma izveide ar Amazon Echo

Pēdējais solis ir ļaut Amazon Echo sazināties ar šo ierīci. Piezīme. Abām ierīcēm jābūt vienam un tam pašam tīklam.

1. variants: sakiet “Alexa, atklājiet viedās mājas ierīces”

2. iespēja) Atveriet lietotni Alexa, pieskarieties Izvēlne> Viedā māja un noklikšķiniet uz saites Atklāt ierīces

Pēc brīža ierīce ir jāatpazīst.

Runājiet: "Alexa, ieslēdz guļamistabas kamīnu" un pārbaudi, vai ierīce ieslēdzas, kā paredzēts. Aizstājiet guļamistabas kamīnu ar jebkādu ierīces nosaukumu, izmantojot ha-bridge. Atkārtojiet procesu, lai izslēgtu ierīci.

Ja vēl neesat uzstādījis IR LED, atrodiet neuzkrītošu vietu, kur to uzstādīt, vienlaikus ļaujot tam norādīt ierīces IR uztvērēja vispārējā virzienā. Lai atrastu labāko atrašanās vietu, jums, iespējams, vajadzēs to pārvietot, lai norādītu uz dažādiem apgabaliem.

Ieteicams: