Talaan ng mga Nilalaman:

AIY Universal IR Remote Control: 5 Hakbang
AIY Universal IR Remote Control: 5 Hakbang

Video: AIY Universal IR Remote Control: 5 Hakbang

Video: AIY Universal IR Remote Control: 5 Hakbang
Video: Управление люстрой v.01 Android + Arduino Bluetooth HC-05 Wireless remote control 2024, Nobyembre
Anonim
AiY Universal IR Remote Control
AiY Universal IR Remote Control

Inilalarawan ito na tumuturo kung paano gumawa ng isang unibersal na infrared na remote control ng AIY. Maaari itong magamit upang makontrol ang anumang TV, soundbar, digibox, dvd o bluray player sa pamamagitan ng paggamit ng iyong boses.

Tinatawag ko itong unibersal dahil naglalaman ito ng isang IR receiver na maaaring magamit upang maitala ang infrared signal mula sa anumang remote control.

Ang proyekto ng AIY ay gumagamit ng programa ng LIRC upang itala at maipadala ang signal ng IR.

Hakbang 1: Gumawa ng PCB

Gumawa ng PCB
Gumawa ng PCB
Gumawa ng PCB
Gumawa ng PCB

Listahan ng mga bahagi:

Dalawang 940nm 5mm infrared LED emitter

Isang tagatanggap ng infrared na TSOP38238

Isang 2n3904 transistor

Isang 10 ohm risistor

Isang veroboard

Apat na Single Connectors (Opsyonal - Pinutol ko ang isang anim na konektor ng pin sa solong mga konektor)

Mga cable upang kumonekta sa sumbrero ng AIY.

Tiyaking ang IR LED's ay may mahabang binti sa unang hilera, at maikling binti sa pangalawa. Pangalawang LED na may mahabang binti sa pangalawang hilera, at maikling binti sa pangatlo.

Ang transistor ay dapat na may base sa pangatlo, ang kolektor sa pang-apat, at ang emitter sa ikalima. Siguraduhin na ang patag na bahagi ng risistor ay nakaharap sa konektor.

Ang risistor ay pumupunta sa pagitan ng hilera lima at hilera ng walong.

Gumamit ng isang maikling piraso ng kawad upang ikonekta ang hilera isa sa hilera pitong.

Ikonekta ang IR receiver sa hilera pitong, walo at siyam.

Idagdag ang mga konektor sa mga hilera isa, apat, walo at siyam.

Ang mga konektor ay:

Isa sa hilera - + 5v lakas

Hilera apat - signal ng transmiter

Hilagang walo - Mababang

Hilera nuwebe - signal ng tatanggap

Hakbang 2: Kumonekta sa AiY Hat

Kumonekta sa AiY Hat
Kumonekta sa AiY Hat
Kumonekta sa AiY Hat
Kumonekta sa AiY Hat

Nag-solder ako ng mga pin ng header papunta sa aking AIY upang gawing mas madali ang pagkonekta ng mga bagay.

Ang mga ginamit kong pin ay Servo 0 (GPIO 26) at Servo 5 (GPIO 24) para sa signal. Gumamit din ako ng + 5v mula sa pahalang na pin na nasa itaas ng mga pin ng Servo. Kinuha ko ang lupa mula sa GND sa tabi ng Servo 0, ngunit maaari mong gamitin ang anumang lupa na gusto mo.

Gamit ang naaangkop na mga kable, ikinonekta ko ang sumbrero ng AIY sa board na tulad nito:

+ 5V upang hilera ang isa

Servo 0 (GPIO 26) upang hilera ang apat

GND sa hilera 8

Servo 5 (GPIO 24) upang hilera ang siyam.

Hakbang 3: I-install ang LIRC

Ipagpalagay na na-set up at nasubukan mo na ang AIY:

Kailangan naming i-install ang LIRC. Sundin ang mahalagang itinuturo ni mirza irwan Osman:

www.instructables.com/id/Install-Linux-Infrared-Remote-Control-LIRC-Package

O isang alternatibong tagubilin ay matatagpuan dito ni Alex Bane:

alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/

TANDAAN: para sa aking pag-set up kailangan ko upang matiyak na ang /boot/config.txt file ay may mga sumusunod:

dtoverlay = lirc-rpi, gpio_in_pin = 24, gpio_out_pin = 26

Hakbang 4: Kumuha o Gumawa ng mga LIRC File para sa Iyong Mga Device

Ang susunod na hakbang na ito ay lumilikha ng lircd.conf file na naglalaman ng mga detalye tungkol sa remote control para sa mga aparato na nais mong gamitin.

Mayroong dalawang paraan upang magawa ang file na ito:

1. Kung ikaw ay mapalad, maaari kang makahanap ng isang mayroon nang file sa mga pahina ng LIRC para sa iyong aparato

2. Kung hindi mo ito mahahanap, kakailanganin mong mag-record ng isang file gamit ang IR receiver at ang iyong remote control.

Para sa hakbang 1, pumunta sa home page ng LIRC at tingnan ang listahan ng mga sinusuportahang aparato:

www.lirc.org/

Kung mahahanap mo ang file para sa aparato, kailangan mong ilipat ang impormasyon sa file sa lircd.conf file / etc / lirc

Dahil ang aking AIY ay walang header, gumagamit ako ng WINScP upang gawin ang mga pagbabago sa lirc.conf.

Ang impormasyong kailangan mo ay nagsisimula sa "simulan ang malayuang" at nagtatapos sa "end remote"

TANDAAN: Kung nais mong kontrolin ang higit sa isang aparato, pagkatapos ay idagdag lamang ang karagdagang remote code sa parehong file pagkatapos ng umiiral na "end remote". Tiyaking ang bawat remote ay may natatanging pangalan. Gumagamit ako ng "mytv" para sa aking telebisyon, at "langit" para sa aking sky digibox atbp.

Kung hindi mo mahanap ang code para sa iyong aparato, kakailanganin mong i-record ito.

Sundin ang itinuturo na ito upang malaman kung paano itala ang bawat remote control gamit ang LIRC:

www.instructables.com/id/Record-Infrared-Codes-of-Any-Remote-Control-Unit-f/

Kapag naitala mo ang unang remote control, ulitin ang proseso hanggang sa maitala mo ang lahat ng mga remote. Maaari mo ring i-update ang lirc.conf file kasama ang lahat ng mga code na naitala mo. Kailangan kong gawin ito para sa aking soundbar.

Hakbang 5: Code AIY upang Makontrol ang Iyong Mga Device

Upang makontrol ang IR transmitter mula sa AIY, gawin ang mga kinakailangang pagbabago sa file na "assistant_library_with_local_commands_demo.py"

Maaari mong patakbuhin ang "assistant_library_with_local_commands_demo.py" mula sa Start Dev Terminal upang makita kung gumagana ang iyong code.

Awtomatiko akong nagsisimula sa aking AIY sa pag-boot up sa pamamagitan ng pagsunod sa tagubilin dito:

aiyprojects.withgoogle.com/voice/#akers-guide-3-4--run-your-app-automatically

Alamin na kung nais mong baguhin ang iyong code, kailangan mong ihinto ang pagtakbo ng AIY, at pagkatapos ay simulan itong muli sa pamamagitan ng paggamit ng mga ito:

sudo serbisyo my_assistant paghinto

sudo serbisyo my_assistant simula

Naglalaman ang nakalakip na code ng aking kasalukuyang nagtatrabaho na programa.

(Tandaan na ang code na ito ay naglalaman din ng mga karagdagang tampok tulad ng internet radio).

Ginagamit ng code ang mga pagkakaiba-iba sa pagpapadala ng LIRC send_start at send_stop upang maipadala ang kinakailangang signal ng IR. Nalaman ko na kinakailangan upang ipakilala ang isang pag-pause sa pagitan ng pagsisimula at pagtigil ng signal, at maaari itong mag-iba sa pagitan ng mga aparato (nangangailangan ng mas mahabang signal ang aking Panasonic TV kaysa sa kahon sa langit). Kaya halimbawa:

subprocess.call ('irsend SEND_START mytv KEY_POWER', shell = True)

oras. pagtulog (0.5)

subprocess.call ('irsend SEND_STOP mytv KEY_POWER', shell = True)

Upang magpadala ng mga kumbinasyon ng mga signal, halimbawa ang sky TV channel, gumawa ako ng isang listahan kung saan itinalaga ang isang parirala sa isang code code. Tandaan na minsan ang AIY ay hindi palaging maririnig ang tamang salita, kaya nagsama rin ako ng mga pagkakaiba-iba sa parirala (tulad ng bbc 1 at bbc isa, o salitang 'gabay' pati na rin 'dave' tulad ng AIY na laging ibinalik iyon kapag ako ay sinabi 'dave' - dapat itong ang aking accent!). Gumamit ako pagkatapos ng isang gawain na kukunin ang tatlong character code mula sa listahan at ipadala ang bawat numero (tingnan ang module ## Sky Channel na nagbabago ng gawain ##)

Posible ring magpadala ng mga kombinasyon ng mga signal sa maraming mga aparato. Kaya halimbawa mayroon akong isang "system on" na gawain na nagpapadala ng lakas sa TV, kumakain sa soundbar, sinisimulan ang sky box at ilipat ito sa BBC 1.

Kapag ang IR transmitter ay gumagana sa AIY, posible na isipin ang lahat ng iba't ibang mga kumbinasyon upang magamit ito. Halimbawa maaari akong magpadala ng isang utos ng oras upang ayusin ang dami sa sound bar.

Maligayang pagkontrol ng AIY IR!

Inirerekumendang: