Вы хотите управлять своим телевизором, телеприставкой и другими устройствами с помощью RaspberryPi? В этом материале мы рассмотрим, как можно управлять телевизором или почти всем, что использует инфракрасный пульт дистанционного управления, с помощью Raspberry Pi. Это может быть частью проекта по домашней автоматизации.
В рамках данного проекта мы будем использовать LIRC. LIRC – это программное обеспечение, которое позволяет декодировать и отправлять инфракрасные сигналы многих (но не всех) широко используемых пультов дистанционного управления. И мы можем использовать LIRC с RaspberryPi.
Но перед этим нам нужно подключить некоторые компоненты, которые могут отправлять и принимать/декодировать ИК-сигналы. Если вы хотите отправлять данные через ИК-порт, вам понадобится ИК-светодиод.
Итак, сначала установите LIRC:
sudo apt-get install lirc
Затем отредактируйте /etc/modules и добавьте следующее (если вы используете другой вывод GPIO, измените строки):
lirc_dev
lirc_rpi gpio_in_pin=23 gpio_out_pin=22
Отредактируйте /etc/lirc/hardware.conf и измените содержимое на:
LIRCD_ARGS="--uinput"
LOAD_MODULES=true
DRIVER="default"
DEVICE="/dev/lirc0"
MODULES="lirc_rpi"
LIRCD_CONF=""
LIRCMD_CONF=""
Если вы используете более старое ядро 3.18, измените файл /boot/config.txt и добавьте следующую строку:
dtoverlay=lirc-rpi,gpio_in_pin=23,gpio_out_pin=22
Перезагрузите Raspberry Pi, чтобы применить изменения. После этого подключите ИК-светодиод. Можно использовать следующую схему:
В качестве Q1 можно использовать BC547, R1 = 220 Ом, R2 (в зависимости от светодиода, может быть необязательным элементом), ИК-светодиод 940 нм на 40 градусов.
После того, как вы установили и настроили LIRC для Raspberry Pi, первое, что нужно проверить, это то, находится ли ваш телевизор в базе данных LIRC. Для включения ТВ, а затем выполнения MUTE можно использовать небольшой скрипт:
#!/bin/bash
/usr/bin/irsend SEND_ONCE lg_tv KEY_POWER
sleep 10
/usr/bin/irsend SEND_ONCE lg_tv KEY_MUTE
© digitrode.ru