Пульт управления на Arduino в мобильнике

Arduino

Благодаря Arduino можно собрать универсальный пульт дистанционного управления (ПДУ). Очень удобно, когда с одного устройства можно управлять телевизором и медиаплеером. Самое замечательное, что все функции управления будут доступны на своем телефоне Android.

Комплектующие для сборки пульта на Arduino:

  • Плата Arduino Pro mini с процессором ATmega328.
  • Bluetooth модуль HC-05;
  • Инфракрасный приемник TSOP1138, TSOP2238, TSOP4838 (последние две цифры определяют несущую частоту в кГц).
  • Инфракрасный диод — передатчик от ненужного ПДУ.

Считывание IR кодов с ПДУ

Для считывания кодов команд с какого-нибудь пульта управления, работающего на самой распространенной частоте 36 кГц, нам потребуется подключить инфракрасный приемник TSOP всего лишь тремя проводами к плате Arduino.

Диапазон работы инфракрасных ПДУ находится в пределах 30–60 кГц. В нашем случае приемник TSOP выбран на частоту 38 кГц, так как отклонение в 10% допускается. Всего лишь понадобиться поднести ближе пульт к датчику в случае плохого приема сигнала.

Электрическая схема подключения TSOP1138, TSOP2238, TSOP4838 к Arduino Pro mini

Монтажная схема подключения TSOP1138, TSOP2238, TSOP4838 к Arduino Pro mini

После сборки схемы скачиваем библиотеку IRremote для Arduino на компьютер.

Устанавливаем и открываем в ней пример скетча IRrecvDump.

В примере скетча меняем номер пина получателя в строке int RECV_PIN = 11 на int RECV_PIN = 4.

Загружаем измененный пример в плату Arduino. Открываем в программе Arduino IDE Монитор порта, наводим имеющийся пульт управления на приемник TSOP и смотрим, считывает ли собранная схема IR коды от какой-то кнопки на пульте.

В приведенном примере, оба пульта от телевизора и медиаплеера передают данные в кодировке NEC.

Все считанные данные от пультов надо занести в таблицу.

Во втором столбце данные для телевизионного пульта TV, в третьем для пульта медиаплеера Player.

После успешного считывания IR кодов, разбираем собранную схему подключения TSOP к Arduino.

Сборка пульта управления на Arduino

 

Подсоединяем к плате Arduino инфракрасный диод и Bluetooth модуль HC-05.

Монтажная схема универсального пульта на Arduino

Собранный универсальный пульт управления на Arduino

Скачиваем образец скетча Universal_IR_pult

Теперь надо по очереди переписать в скетче коды кнопок для своих пультов, в соответствии с составленной таблицей. Сначала переписываем для телевизора, начиная со строчки:

if (x == 97) {
irsend.sendNEC(0x807F08F7, 32);
delay(40);

а затем для медиаплеера:

if (x == 97) {
irsend.sendNEC(0xFDC23D, 32);
delay(40).
 

Если ваш пульт передает данные в кодировке SONY, RC5, RC6, PANASONIC, тогда меняем в скетче запись NEC на соответствующую.

Готовую программу загружаем в плату Arduino.

Для проверки передачи данных, открываем в программе Arduino IDE Монитор порта, отправляем в него «1» (задействовано управление телевизором). Отправляем «а» — должно вывестись значение 97.

Потом прописываем «2» (задействовано управление медиаплеером) и снова вводим «а» — ждем вывода 97.

Имитация передачи данных с телефона на Arduino

 

Установка приложения Pult на телефон Android

Скачиваем приложение Pult.apk и устанавливаем на любое устройство Android, телефон или планшет.

Главный экран приложения Pult.apk

После нажатия на красный значок Bluetooth, выводится окно со списком доступных Bluetooth устройств

После удачного соединения с Bluetooth модулем HC-05, значок Bluetooth должен поменять свой цвет на синий.

Главный экран приложения Pult для режима телевизора TV

Главный экран приложения Pult для режима мультиплеера Player

 

Автор: Виталий Петрович. Украина, Лисичанск.

 

 

Оцените статью
Схемы.ру - Каталог схем и самоделок
Добавить комментарий