Съдържание:

Универсално IR дистанционно управление AIY: 5 стъпки
Универсално IR дистанционно управление AIY: 5 стъпки

Видео: Универсално IR дистанционно управление AIY: 5 стъпки

Видео: Универсално IR дистанционно управление AIY: 5 стъпки
Видео: Broadlink RM4 Pro - универсальный wi-fi пульт для IR и RF кодов, интеграция в Home Assistant 2024, Ноември
Anonim
Универсално IR дистанционно управление AIY
Универсално IR дистанционно управление AIY

Тази инструкция описва как да направите AIY универсално инфрачервено дистанционно управление. Това може да се използва за управление на всеки телевизор, звукова лента, дигибокс, DVD или Bluray плейър с помощта на вашия глас.

Наричам го универсален, тъй като съдържа IR приемник, който може да се използва за запис на инфрачервения сигнал от всяко дистанционно управление.

Проектът AIY използва програмата LIRC за запис и предаване на IR сигнала.

Стъпка 1: Направете печатна платка

Направете печатна платка
Направете печатна платка
Направете печатна платка
Направете печатна платка

Списък с части:

Два 940nm 5 мм инфрачервени LED излъчвателя

Един инфрачервен приемник TSOP38238

Един транзистор 2n3904

Един 10 омов резистор

Един вероборд

Четири единични конектора (по избор - нарязах шест пинов конектор на единични конектори)

Кабели за свързване към AIY шапка.

Уверете се, че инфрачервените светодиоди имат дългия крак на първия ред и късия крак на втория. Втори светодиод с дълъг крак на втория ред и къс крак на трети.

Транзисторът трябва да има основата на третия, колекторът на четвъртия, а излъчвателят на петия. Уверете се, че плоската страна на резистора е обърната към конектора.

Резисторът преминава между ред пети и ред осми.

Използвайте къса жица, за да свържете ред първи към ред седем.

Свържете IR приемника към ред седем, осем и девети.

Добавете съединителите към редове първи, четири, осем и девет.

Съединителите са:

Ред първи - +5v мощност

Ред четири - сигнал на предавателя

Осем ред - Земя

Девети ред - сигнал на приемника

Стъпка 2: Свържете се с AIY Hat

Свържете се с AIY Hat
Свържете се с AIY Hat
Свържете се с AIY Hat
Свържете се с AIY Hat

Запоял съм щифтове за заглавки към моя AIY, за да направя свързването на нещата много по -лесно.

Пиновете, които използвах, са Servo 0 (GPIO 26) и Servo 5 (GPIO 24) за сигнала. Използвах също +5v от хоризонталния щифт над серво щифтовете. Взех земята от GND до Servo 0, но можете да използвате всякаква земя, която искате.

Използвайки подходящите кабели, свързах AIY шапката към дъската по следния начин:

+5V към първия ред

Серво 0 (GPIO 26) до четвърти ред

GND към ред 8

Серво 5 (GPIO 24) до девети ред.

Стъпка 3: Инсталирайте LIRC

Ако приемем, че вече сте настроили и тествали AIY:

Трябва да инсталираме LIRC. Следвайте тази ценна инструкция от Мирза Ирван Осман:

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

ИЛИ алтернативна инструкция може да бъде намерена тук от Алекс Бейн:

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

ЗАБЕЛЕЖКА: За моята настройка трябваше да се уверя, че /boot/config.txt файлът има следното:

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

Стъпка 4: Вземете или направете LIRC файлове за вашите устройства

Тази следваща стъпка създава файла lircd.conf, който съдържа подробности за дистанционното управление за устройствата, които искате да използвате.

Има два начина да направите този файл:

1. Ако имате късмет, можете да намерите съществуващ файл на страниците на LIRC за вашето устройство

2. Ако не можете да го намерите, тогава ще трябва да запишете файл с помощта на IR приемника и вашето дистанционно управление.

За стъпка 1 отидете на началната страница на LIRC и прегледайте списъка с поддържани устройства:

www.lirc.org/

Ако можете да намерите файла за устройството, тогава трябва да прехвърлите информацията във файла във файла lircd.conf /etc /lirc

Тъй като моят AIY е без заглавия, използвам WINScP, за да направя промените в lirc.conf.

Информацията, от която се нуждаете, започва с „start remote“и завършва с „end remote“

ЗАБЕЛЕЖКА: Ако искате да управлявате повече от едно устройство, просто добавете допълнителния код за дистанционно управление в същия файл след съществуващото „край на дистанционното“. Уверете се, че всяко дистанционно има уникално име. Използвам "mytv" за телевизора си и "небе" за моя sky digibox и т.н.

Ако не можете да намерите кода за вашето устройство, ще трябва да го запишете.

Следвайте тази инструкция, за да научите как да записвате всяко дистанционно управление с помощта на LIRC:

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

След като сте записали първото дистанционно управление, повторете процеса, докато не запишете всички дистанционни управления. След това можете да актуализирате файла lirc.conf с всички кодове, които сте записали. Трябваше да направя това за моята звукова лента.

Стъпка 5: Кодирайте AIY за контрол на вашите устройства

За да контролирате IR предавателя от AIY, направете необходимите промени във файла "assistant_library_with_local_commands_demo.py"

Можете да стартирате „assistant_library_with_local_commands_demo.py“от Старт Dev терминал, за да видите дали кодът ви работи.

Моят AIY стартира автоматично при стартиране, като следвам инструкциите тук:

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

Имайте предвид, че ако искате да промените кода си, трябва да спрете работата на AIY и след това да го стартирате отново, като използвате тези:

sudo услуга my_assistant стоп

sudo услуга my_assistant старт

Прикаченият код съдържа текущата ми работна програма.

(Имайте предвид, че този код съдържа и допълнителни функции като интернет радио).

Кодът използва вариации при изпращане на LIRC send_start и send_stop за предаване на необходимия IR сигнал. Открих, че е необходимо да се въведе пауза между стартиране и спиране на сигнала и това може да варира между устройствата (моят телевизор Panasonic изисква по -дълъг сигнал от небето). Така например:

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

time.sleep (0.5)

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

За да изпращам комбинации от сигнали, например небесния телевизионен канал, създадох списък, който обозначи фраза към кода на канала. Имайте предвид, че понякога AIY не винаги ще чуе правилната дума, затова включих и вариации на фразата (като bbc 1 и bbc one, или думата „ръководство“, както и „dave“, тъй като AIY винаги връщаше това, когато каза „Дейв“- това трябва да е моят акцент!). След това използвах рутина, която ще вземе кода от три знака от списъка и ще предаде всеки номер (вижте модул ## Програма за смяна на Sky канал ##)

Също така е възможно да се изпращат комбинации от сигнали до няколко устройства. Така например например имам програма за включване на системата, която изпраща захранване към телевизора, включва към звуковата лента, стартира sky box и го превключва на BBC 1.

След като IR предавателят работи с AIY, е възможно да се измислят всички различни комбинации, за да се използва. Например мога да изпратя команда за време, за да настроя силата на звука на звуковата лента.

Честито дистанционно управление AIY IR!

Препоръчано: