Talaan ng mga Nilalaman:

Ang Amazon Echo Controlled IR Remote: 11 Hakbang (na may Mga Larawan)
Ang Amazon Echo Controlled IR Remote: 11 Hakbang (na may Mga Larawan)

Video: Ang Amazon Echo Controlled IR Remote: 11 Hakbang (na may Mga Larawan)

Video: Ang Amazon Echo Controlled IR Remote: 11 Hakbang (na may Mga Larawan)
Video: Amazon Echo Dot 4th And Echo 4th Complete Setup Guide 2024, Hulyo
Anonim
Ang Amazon Echo Controlled IR Remote
Ang Amazon Echo Controlled IR Remote

Maaaring makontrol ng Amazon Echo system ang maraming mga aspeto ng isang matalinong tahanan, ngunit ang isang smart outlet ay maaari lamang i-off at i-on. Maraming mga aparato ay hindi agad na naka-on sa pamamagitan ng simpleng pag-plug in at nangangailangan ng mga karagdagang hakbang, tulad ng pagpindot sa mga pindutan sa isang remote o ang pisikal na aparato upang i-on o makuha ang nais na mga setting.

Sa gabay na ito, ang isang Raspberry Pi Zero W ay mai-configure upang kumilos bilang isang matalinong aparato sa bahay na maaaring kontrolin ng Amazon Echo, at magpadala ng anumang nais na mga utos ng IR sa isang aparato kapag hiniling na i-on o i-off.

Sa partikular na kaso na ito, mai-configure ang Pi upang malaman ang mga utos ng IR ng isang remote na ibinigay na may isang "ClassicFlame 23II310GRA 23" Infrared Quartz Fireplace Insert ". Magagamit ang isang IR LED upang ipadala ang mga utos ng IR ayon sa hinihiling, at sa wakas ang Pi ay naka-configure upang tularan ang isang aparato ng Philips Hue na maaaring kontrolin maging Echo.

Hakbang 1: Mga Kagamitan

Mga Kagamitan
Mga Kagamitan

Kailangan:

  • Raspberry Pi Zero W
  • 4 GB o mas mataas na Micro SDHC Class 10 memory card (16 GB Halimbawa)
  • MicroUSB
  • 1 IR LED
  • MicroUSB Power Adapter (2.1 amps o mas mataas na inirekumenda)
  • IR LED
  • IR Receiver VS / 1838B
  • 100 ohm risistor
  • Misc. kawad

Inirekomenda:

  • Headphone Jack
  • 1/8 pulgada headphone / audio wire
  • 2N2222 NPN Transistor
  • 1k ohm resistor
  • Kaso ng Rapsberry Pi Zero

Upang makumpleto ang paunang pagsasaayos ng isang Raspberry Pi Zero W, kakailanganin ang ilang karagdagang mga peripheral, ngunit hindi gagamitin ng buong oras ng nakumpletong proyekto

  • Mini HDMI to HDMI Adapter: Ginamit upang ikonekta ang Pi Zero W sa isang TV o monitor na may isang buong laki ng HDMI cable
  • USB OTG Cable: Ginamit upang mai-convert mula sa micro-USB hanggang sa buong laki ng (mga) USB port para sa pagkonekta ng isang keyboard at / o mouse
  • HDMI Cable: Ginamit upang kumonekta sa TV o subaybayan kasama ang isang adapter sa mini HDMI

Ang unang dalawang item pati na rin ang isang kaso ay kasama ang iba't ibang mga Pi Zero starter kit, tulad ng: MakerSpot Mega Kit

Hakbang 2: I-setup ang Raspberry Pi

Ang website ng Raspberry Pi ay may mahusay na walkthrough para sa pag-set up ng Raspbian Stretch OS sa isang Raspberry Pi. Inirerekumenda ko ang bersyon ng Lite para sa isang mas maliit na bakas ng paa kung ito ay proyekto lamang na tumatakbo sa Pi. Kung nais mong magkaroon ng higit pang mga pagpipilian sa Operating System sa hinaharap, o isang mas simpleng pag-set up, ang pagsunod sa mga tagubilin para sa NOOBS ay makakabangon sa iyo at tumakbo nang walang oras. Ang gabay na ito ay batay sa Raspbian, na kasama sa NOOBS

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

Kapag tumatakbo na ang Raspbian, paganahin ang SSH na payagan ang mga malalayong koneksyon sa aparato nang hindi nangangailangan ng monitor / keyboard / mouse upang direktang ma-konekta sa Pi. Kung nais mong opsyonal na magkaroon ng malayuang pag-access sa GUI, maaari mo ring paganahin ang pag-access ng VNC

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

Masidhing inirerekomenda din na magtakda ka ng isang static IP sa pag-configure ng wireless network upang hindi ito magbago sa paglipas ng panahon. Posibleng ang IP ay hindi maaaring magbago kung ang mga bagong aparato ay hindi regular na konektado sa wireless network, ngunit ang pag-configure nito bilang static ay matiyak na hindi ito magbabago.

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

Hakbang 3: Pag-configure ng LIRC

Pag-configure ng LIRC
Pag-configure ng LIRC
Pag-configure ng LIRC
Pag-configure ng LIRC
Pag-configure ng LIRC
Pag-configure ng LIRC
Pag-configure ng LIRC
Pag-configure ng LIRC

Ang mga sumusunod na hakbang ay lubos na nakabatay sa mahusay na mga gabay na matatagpuan dito:

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

Ang gabay na ito ay batay sa Rasbian Stretch at lirc 0.9.4c-9 Ang iba pang mga gabay ay maaaring batay sa mga naunang bersyon ng at banggitin ang isang file ng hardware.conf na hindi na kinakailangan sa bersyon na ito at mas mataas. Nalaman ko rin na hindi na kinakailangan sa aking mga system na baguhin ang file na / etc / modules Sa oras na ito, kakailanganin ang karagdagang mga pagbabago para sa bersyon ng kernel 4.19 na hindi naitala sa kasalukuyan. Mangyaring tiyaking nasa 4.14 ka para sa hanay ng mga tagubiling ito

Ginagamit ang library ng Linux Infrared Remote Control (LIRC) upang hawakan ang pagtanggap ng mga utos ng IR sa pamamagitan ng module ng tatanggap, i-save ang mga ito sa isang file, at pagkatapos ay ipadala ang mga utos kung ninanais sa pamamagitan ng IR LED.

Ang unang hakbang ay upang maitala ang mga signal ng IR mula sa aming umiiral na remote gamit ang IR Receiver at i-save ang mga ito sa isang file. Kailangan lang ang IR Receiver nang una upang malaman ang mga signal ng IR at pagkatapos ay maalis, kaya maaaring magamit ang isang pansamantalang koneksyon.

Ikonekta ang IR Receiver sa Raspberry Pi. Gamitin ang nakalakip na larawan upang makilala ang mga pin ng VCC, GND, at Signal. Gamit ang isang breadboard, mga wire ng hookup, o malikhaing baluktot ng mga pin sa mga sumusunod na koneksyon

Ang VCC ay kumokonekta sa 5 volt pinGND sa isang ground pin Signal sa Pin 23

Paganahin at kumonekta sa Raspberry Pi sa pamamagitan ng alinman sa pamamagitan ng pagbubukas ng terminal sa lokal na aparato, o paglikha ng isang koneksyon sa SSH gamit ang isang programa tulad ng Putty para sa Windows.

Ang mga sumusunod na linya ay maaaring makopya at mai-paste sa sesyon ng SSH. Magdaragdag / magbabago ang mga linya ng mga ito sa iba't ibang mga file ng pagsasaayos na kinakailangan para gumana ang lirc.

sudo apt update

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' / atbp / lirc / lirc_options.conf sudo shutdown -r ngayon

Hintaying mag-reboot ang aparato at mag-log in muli.

Opsyonal: Subukan ang IR Receiver

I-mount ang aparato ng LIRC upang kumpirmahin ang anumang input na maaaring matanggap. Maaaring kailanganin mong i-restart ang Pi pagkatapos makumpleto ang pagsubok na ito upang magamit ito para sa mga susunod na hakbang.

sudo systemctl stop lircd

mode2 -d / dev / lirc0Maghangad ng isang IR remote control sa receiver at pindutin ang isang pindutan at tiyaking lilitaw ang data sa screenCTRL + C upang mag-sto

Sa puntong ito, naka-install ang programa ng LIRC at nagagawa naming tingnan ang impormasyong IR.

Hakbang 4: Pagkuha ng mga IR Code

Maaaring ma-download ang isang remote profile mula sa website ng LIRC

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

at inilagay sa /etc/lirc/lircd.confg.d, o isang pasadyang profile ay maaaring malikha gamit ang iyong sariling remote.

Sa panahon ng prosesong ito, ilalagay mo ang pangalan ng key / button na iyong naitala. Ang mga wastong pangalan lamang ang pinapayagan, kaya patakbuhin ang sumusunod na utos upang matingnan ang lahat ng mga magagamit na pangalan

irrecord --list-namespace Halimbawa: Ginamit ko ang pangalang KEY_POWER nang naitala ko ang Power button sa aking remote at KEY_TIME kapag nagre-record ng timer button

Kung higit sa ilang mga susi ang naitala, inirerekumenda ko ang pagdokumento ng mga pangunahing pangalan na ginamit at kung anong pindutan ang mapa nila, dahil maaaring walang perpektong pangalan para sa naitala na pindutan. Gagawa nitong mas madaling mag-refer sa hinaharap.

Bumuo ng isang file ng Remote Configuration

Lumikha ng isang bagong file ng pagsasaayos ng remote control (gamit / dev / lirc0)

sudo systemctl stop lircd

cd ~ irrecord -d / dev / lirc0 Kung nakatagpo ka ng isang error na nagsasabing hindi ma-decode ang data o may mali, pindutin ang CTRL + C upang kanselahin at patakbuhin ang huling utos na asirrecord -f -d / dev / lirc0this pipilitin ang record na tumakbo sa raw mode at dapat payagan ang proseso na magpatuloy

Sundin ang mga direksyon sa screen. Sa sandaling nasimulan ang system, ipasok ang pangalan ng remote na iyong naitala (ang resulta ng file ay ibabatay sa pangalang ito), pagkatapos ay ipasok ang key name na iyong itatala, at pagkatapos ay pindutin ang pindutan sa remote habang itinuturo ito sa ang tatanggap hanggang ma-prompt para sa susunod na pangalan ng pindutan. Ulitin ang hakbang na ito para sa bawat pindutan sa remote na nais mong i-record.

Kopyahin ang iyong (mga) bagong file ng pagsasaayos sa direktoryo ng lircd.conf.d at simulang muli ang lirc

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

sudo systemctl start lircd

Sa puntong ito, ang mga malalayong code ay naitala sa isang file.

Hakbang 5: Headphone Jack (Opsyonal)

Headphone Jack (Opsyonal)
Headphone Jack (Opsyonal)
Headphone Jack (Opsyonal)
Headphone Jack (Opsyonal)

Upang gawing mas modular ang mga tumatakbo na wire at binago ang Raspberry Pi, ininit ko ang isang 1/8 pulgada na audio jack ng headphone sa kaso at nakakonekta ang mga wires sa jack. Ang mga wire ng headphone na may pagtutugma na plug ay ginamit upang ikonekta ang IR LED, kaya ang wire na ito ay maaaring ilipat sa isang hindi kapansin-pansin na hanapin upang ituro ang IR receiver ng aparato na nais kong kumonekta, ngunit madaling mai-unplug mula sa Pi nang hindi na kinakailangang alisin. lahat ng mga wires.

Puro opsyonal ito, ngunit madaling gamitin.

Hakbang 6: Pagkonekta sa IR LED (Mabilis)

Pagkonekta sa IR LED (Mabilis)
Pagkonekta sa IR LED (Mabilis)
Pagkonekta sa IR LED (Mabilis)
Pagkonekta sa IR LED (Mabilis)
Pagkonekta sa IR LED (Mabilis)
Pagkonekta sa IR LED (Mabilis)

Ang pagkonekta sa IR Emitting LED sa Raspberry Pi ay maaaring magawa ng maraming paraan. Ipinapakita ng hakbang na ito ang mabilis na paraan na konektado ko ito, ngunit kung saan nalaman ko sa paglaon ay maaaring lumampas sa kasalukuyang limitasyon sa mga pin ng Pi. Sa ngayon hindi pa ako nakakaranas ng anumang mga problema, ngunit ang isang mas mainam na paraan ng pagkonekta ay inilarawan sa susunod na hakbang

Kalkulahin ang risistor na kinakailangan para sa iyong IR LED. Maaaring makatulong ang https://ledcalculator.net/ sa pagtukoy ng tamang halaga ng resistor kung mayroon kang lahat ng mga pagtutukoy ng iyong LED. Sa kasong ito, ang boltahe ng pin 22 ay 3.3 volts, ang drop ng boltahe ng LED ay 1.2 volts, kasalukuyang rating ay 20 ma, at 1 LED ang ginamit, na nagreresulta sa halagang 110 ohm risistor na kinakailangan. Gumamit ako ng solong 100 ohm resistor.

Tandaan: Nagawa kong pansin sa paglaon na ang pinakamataas na kasalukuyang ng lahat ng mga pin sa anumang naibigay na oras ay 16 ma, kaya ang pagsasaayos na ito ay maaaring lumampas doon. Ang isang mas mahusay na pagsasaayos na may isang transistor at 5 volt supply ay inilarawan sa susunod na hakbang, ngunit pagkatapos ng ilang linggo ng pagtakbo sa pagsasaayos na ito, hindi pa ako nakakaranas ng anumang mga problema.

Ang Pin 22 sa Raspberry Pi ay konektado sa anode ng IR LED, na kung saan ay ang mas mahabang binti bilang default.

Ang mas maikling pin ng LED ay kumokonekta sa risistor at pagkatapos ay sa ground pin. Pinutol ko ang karamihan sa kawad sa risistor at solder ito nang direkta sa isang ground pin at sa ground wire na papunta sa LED.

Hakbang 7: Pagkonekta sa IR LED (tamang Paraan)

Pagkonekta sa IR LED (tamang Paraan)
Pagkonekta sa IR LED (tamang Paraan)
Pagkonekta sa IR LED (tamang Paraan)
Pagkonekta sa IR LED (tamang Paraan)

Upang maayos na ikonekta ang LED nang hindi hihigit sa limitasyon ng pagguhit ng Raspberry Pi, ikonekta ang mga LED sa 5 volt supply na may naaangkop na risistor, ikonekta ang pin ng cathode sa collector pin ng isang 2N2222 resistor, ikonekta ang Emitter pin ng transistor sa lupa, at ikonekta ang pin 22 ng Pi sa isang 1K ohm risistor sa base pin ng transistor. Pinapayagan nito ang isang napakaliit na kasalukuyang mula sa pin 22 upang ikonekta ang LED sa lupa, pagkumpleto ng circuit nang hindi hihigit sa pagguhit ng Pi.

Sa aking halimbawa, nag-wire ako ng 2 IR LEDs, upang makontrol ko ang pag-iilaw sa paligid pati na rin ang electric fireplace.

Hakbang 8: Pagsubok sa Pagpapadala ng Mga Command ng IR

Pagsubok sa Pagpapadala ng mga IR Command
Pagsubok sa Pagpapadala ng mga IR Command

Upang magpadala ng isang utos ng IR, ginagamit ang program na irsend.

Syntax: irsend

Halimbawa: irsend SEND_ONCE Spectrafire KEY_POWER Nagpapadala ito ng utos ng power button mula sa remote ng Spectrafire nang isang beses. Palitan ang Spectrafire ng anumang pinangalanan mong iyong remote. Ulitin sa iba pang mga pangunahing pangalan na ginamit kapag naitala ang file.

Sa yugtong ito, maaari kang magpadala ng anumang mga utos na naitala dati gamit ang IR LED na konektado sa Raspberry Pi.

Hakbang 9: Pag-install ng Ha-tulay

Upang payagan ang Echo na makontrol ang aming aparato, tutularan namin ang isang Philips Hue bombilya gamit ang ha-bridge. Kapag na-configure, makakakita ang Echo ng aparatong ito at magpadala ng mga on / off na utos dito.

Ang website para sa ha-bridge ay malinaw na binabalangkas ang proseso para sa kasalukuyang bersyon at lubos na inirerekomenda na suriin.

github.com/bwssytems/ha-bridge

Kopyahin at i-paste ang mga sumusunod na linya sa isang sesyon ng SSH upang mai-install at mai-configure ang HA Bridge. (Maaaring kailanganin na patakbuhin ang unang linya mismo, pagkatapos ay i-paste ang natitirang mga linya

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 / pinakabagong | grep 'browser_' | cut -d / "-f4) mv ha-bridge - *. jar ha-bridge.jar echo [Unit] | sudo tee /etc/systemd/system/habridge.service echo Paglalarawan = HA Bridge | sudo tee -a /etc/systemd/system/habridge.service echo Nais = 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 [Serbisyo] | 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 / etc / systemd / system / hab ridge.service echo [I-install] | sudo tee -a /etc/systemd/system/habridge.service echo WantedBy = multi-user.target | sudo tee -a /etc/systemd/system/habridge.service #Reload System Control at simulan ang serbisyo, setting upang paganahin sa startup sudo systemctl daemon-reload sudo systemctl start habridge.service sudo systemctl paganahin ang habridge.service

Hakbang 10: Paggaya ng isang Philips Hue Bulb

Paggaya ng isang Philips Hue Bulb
Paggaya ng isang Philips Hue Bulb
Paggaya ng isang Philips Hue Bulb
Paggaya ng isang Philips Hue Bulb

Sa pagpapatakbo ng ha-bridge, buksan ang isang web browser at ipasok ang IP address ng Raspberry Pi, at dapat lumitaw ang interface para sa ha-bridge.

I-click ang link na Magdagdag / Mag-edit sa tuktok ng pahina

Pangalan: Ipasok ang pangalang nais mong gamitin kapag nagsasalita ng mga utos

Sa seksyon na may label na "Sa Mga Item" itakda ang uri na "Ipatupad ang Command / Script / Program at ipasok ang utos sa kahon ng Target na Item. Kung nais ang maraming mga utos, i-click ang Idagdag na pindutan upang mai-save ang kasalukuyang linya at maglagay ng isa pang utos. Ito ay posible ring magtakda ng isang pagkaantala at ulitin ang isang utos ng isang tiyak na bilang ng beses. Sa kasong ito, kailangan ng pindutan ng kuryente na pinindot muna, pagkatapos ay ang pindutan ng Timer ay pinindot ng 3 beses upang maitakda ang auto-off timer sa loob ng 3 oras.

Ulitin ang parehong ideya para sa lugar na "Mga Off na Item", pag-click sa Idagdag kapag tapos na.

Sa tuktok ng pahina, i-click ang "Magdagdag ng Bridge Device" upang mai-save ito bilang isang bagong item, o I-update ang Bridge Device kung binabago ang isang mayroon nang.

Hangarin ang IR LED sa aparato. Sa pahina ng Mga Device ng Bridge, i-click ang pindutang I-ON o Subukan ang OFF upang i-verify na kumikilos ito ayon sa nais.

Hakbang 11: Pagkonekta sa Amazon Echo

Kumokonekta sa Amazon Echo
Kumokonekta sa Amazon Echo

Ang huling hakbang ay upang payagan ang Amazon Echo na makipag-usap sa aparatong ito. Tandaan: Ang parehong mga aparato ay dapat na magkatulad na network.

Pagpipilian 1) sabihin ang "Alexa, tuklasin ang mga smart home device"

Opsyon 2) Buksan ang Alexa app, mag-tap sa Menu> Smart Home at i-click ang link na "Tuklasin ang Mga Device"

Pagkatapos ng ilang sandali, dapat makilala ang aparato.

Magsalita, "Alexa, buksan ang pugon ng silid-tulugan" at i-verify na nakabukas ang aparato tulad ng inaasahan. Palitan ang Silid-tulugan ng Silid-aralan sa anumang pinangalanan mo ang iyong aparato sa ha-bridge. Ulitin ang proseso upang patayin ang aparato.

Kung hindi mo pa naka-mount ang IR LED, maghanap ng isang hindi kapansin-pansin na lugar upang mai-mount ito habang pinapayagan itong ituro sa pangkalahatang direksyon ng IR receiver sa aparato. Maaaring kailanganin mong ilipat ito upang ituro ang iba't ibang mga lugar upang mahanap ang pinakamahusay na lokasyon.

Inirerekumendang: