Обзор модуля HX1838 с ИК пультом — 21 кнопка

модуля HX1838 с ИК пультом

В этой статье расскажу о популярном инфракрасном пульте управления модель HX1838 (ИК пульт), а так же покажу пример подключения ИК пульта и Arduino. С его помощью можно создавать роботов с дистанционным управлением, управлять различными устройствами и так далее.

Технические параметры 

► Модель: HX1838
► Датчик пульта: VS1833B
► Напряжение питания: 3.3 В — 5 В.
► Количество кнопок: 21 шт.
► Расстояние приема: до 8 м (зависит от внешних факторов).
► Габариты платы модуля: 24 мм х 16 мм х 33 мм
► Габариты пульта: 87 мм х 40 мм х 7 мм

Общие сведения

Что значит инфракрасный?
Инфракрасное излучение — это форма света, похожая на обычный свет. Единственная разница между ИК-светом и видимым светом — это частота и длина волны. Инфракрасное излучение находится за пределами диапазона видимого света, поэтому люди не могут его видеть. Поскольку ИК является светом, для связи от приемника до передатчик, необходима прямая видимость.

ИК передатчика и приемника
Для инфракрасной связи требуется ИК-передатчик и ИК-приемник. Передатчик похож на стандартный светодиод, за исключением того, что он излучает свет в ИК-спектре. Если посмотреть на переднюю часть пульта, можно увидеть ИК-передатчик.

ИК пульт

ИК-приемник представляет собой фотодиод и предварительный усилитель, который преобразует ИК-свет в электрический сигнал. Так как всегда есть посторонние ИК шумы (дневной свет, лампы и так далее) и чтобы все эти шумы не мешали передачи сигнала, была выбрана частота в 38 кГц с длиной волны 940 нм (большинство ИК пультов работают на этой частоте). Таким образом, ИК-приемник будет знать, что сигнал на частоте 38 кГц был отправлен от передатчика.

Модуль HX1838

Назначение выводов
► VCC:  «+» питание модуля
► GND: «-» питание модуля
► D0:  цифровой выход

Подключение
модуля HX1838 с ИК пультом к Arduino

Необходимые детали:
► Arduino UNO R3 x 1 шт.
► Модуля HX1838 с ИК пультом — 21 кнопка x 1 шт.
► Провод DuPont, 2,54 мм, 20 см, F-M (Female — Male) x 1 шт.
► Кабель USB 2.0 A-B x 1 шт.

Подключение:
ИК приемник, можно подключить напрямую или воспользоватся небольшой платой, которая обычно идет в комплекте (в примере используется плата). Собираем схему согласно рисунку ниже.

Подключение модуля HX1838 с ИК пультом к Arduino

Программа:
После сборки схемы, можно скачать и установить библиотеку «IRremote«, далее скачиваем или копируем скетч и загружаем его в плату Arduino.

/*
Тестировалось на Arduino IDE 1.8.5
Дата тестирования 19.02.2019г.
*/ 

#include <IRremote.h>                  // Подключаем библиотеку IRremote

const int RECV_PIN = 7;                // Указываем к какому выводу подключен IN
IRrecv irrecv(RECV_PIN);
decode_results results;

void setup()
{
  Serial.begin(9600);                  // Открытие последовательную связь
  irrecv.enableIRIn();                 // Запустить приемника    
}

void loop()
{
  if (irrecv.decode(&amp;results))         
  {
   Serial.println(results.value, HEX); // Печатаем полученные показания
   irrecv.resume();                    // Получение следующего значения
  }
   delay(100);
}

Скачать скетч

Теперь открываем окно «Мониторинг порта» и при нажимаем кнопок на пульте, можно увидеть шестнадцатеричный код кнопок.

Подключение модуля HX1838 с ИК пультом к Arduino

Используя данный пример, можно получить таблицу ключей. Кстати, при непрерывном нажатии клавиши получаем код 0XFFFFFFFF.

Подключение модуля HX1838 с ИК пультом к Arduino
Подключение модуля HX1838 с ИК пультом к Arduino

Управление светодиодами с помощью ИК пультом

Необходимые детали:
► Arduino UNO R3 x 1 шт.
► Модуля HX1838 с ИК пультом — 21 кнопка x 1 шт.
► Светодиод красный 5 мм x 2 шт.
► Провод DuPont, 2,54 мм, 20 см, F-M (Female — Male) x 1 шт.
► Кабель USB 2.0 A-B x 1 шт.

Подключение:
Теперь покажу как можно управлять выводами Arduino с помощью ИК пульта. В этом примере будем управлять светодиодами, при нажатии определенной кнопки. При необходимости, можно легко изменить данный код под ваши нужны, например, для управления сервоприводами, реле или двигателями при нажатии любой кнопки на ИК пульте.
Схема содержит ИК-приемник, подключенный к Arduino (вывод 7) и два красных светодиода подключенных к 10 и 11 выводу Arduino.

Подключение модуля HX1838 с ИК пультом к Arduino

Программа:
Скетч проверяет какая из кнопок нажата и выводит 10 или 11 вывод в высокое состояние «High» на 2 секунд, затем в «Low«.

/*
Тестировалось на Arduino IDE 1.8.5
Дата тестирования 19.02.2019г.
*/ 

#include IRremote.h>                            // Подключаем библиотеку IRremote

const int RECV_PIN = 7;                          // Указываем к какому выводу подключен IN
IRrecv irrecv(RECV_PIN);
decode_results results;
const int redPin = 10;                           // Указываем к какому выводу светодиод 1
const int redPin2 = 11;                          // Указываем к какому выводу светодиод 2


void setup()
{
  irrecv.enableIRIn();
  irrecv.blink13(true);
  pinMode(redPin, OUTPUT);
  pinMode(redPin2, OUTPUT);
}

void loop()
{
    if (irrecv.decode(&results))
    {
      switch(results.value)
      {
       case 0xFF38C7:                           // Кнопка "5"
       digitalWrite(redPin, HIGH);
       delay(2000);
       digitalWrite(redPin, LOW);
       }
      switch(results.value)
      {
       case 0xFF18E7:                           // Кнопка "2"
       digitalWrite(redPin2, HIGH);
       delay(2000);
       digitalWrite(redPin2, LOW);
      }
      irrecv.resume(); 
    }
}

Скачать скетч

Подключение модуля HX1838 с ИК пультом к Arduino

Вот и все, будут вопросы пишите.

Ссылки
  Библиотека IRremote v.2.2.0

Купить на Aliexpress
  Контроллер Arduino UNO R3
  Модуль HX1838 с ИК пультом
  Комплект проводов DuPont, 2,54 мм, 20 см

Купить в Самаре и области
  Купить контроллер Arduino UNO R3
  Модуль HX1838 с ИК пультом
  Купить комплект проводов DuPont, 2,54 мм, 20 см

Читайте также:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *