Инфракрасный приемник VS1838B и Модуль инфракрасного приемника VS1838B

Описание

Инфракрасный приемник - простой и недорогой вариант для приема инфракрасного сигнала. Идеально подходит для дистанционного управления устройствами в зоне прямой видимости на небольшом расстоянии. Позволяет принимать сигналы с пультов управления различной бытовой техники большинства производителей.

Модуль инфракрасного приемника удобен для использования в проектах для соединения без пайки. Модуль содержит светодиод - индикатор получения данных.

Технические характеристики

  • Потребляемый ток: 1,5 мА
  • Рабочая частота: 38 КГц
  • Расстояние приема сигнала: 20 м
  • Эффективный угол приема сигнала: 90˚
  • Рабочее напряжение (приемник): 2,7 - 5,5 В
  • Рабочее напряжение (модуль): 2,7 - 5,5 В

Физические размеры

  • Приемник (Д х Ш х В): 7 х 5 х 29 мм
  • Модуль (Д х Ш х В): 30 х 20 х 12 мм

Плюсы использования

  • Простой в использовании и подключении
  • Идеально подойдет для проектов с беспроводной связью

Минусы использования

  • Между приемником и пультом не должно быть преград, что неудобно в управлении движущимися объектами

Библиотека для работы с приёмником

Пример подключения и использования

Пример 1: В примере иллюстрируется подключение инфракрасного приемника, получение значений нажатия кнопок и вывод данных в монитор Serial - порта. (Примеры тестировались на контроллере Smart UNO)

Схема подключения:

Скетч для загрузки:

Внимание! В Arduino IDE уже есть предустановленная библиотека <RobotRemote>, однако она работает некорректно и её необходимо удалить перед загрузкой скетча и библиотеки <IRremote.h> (чтобы две библиотеки не конфликтовали между собой). Для этого перейдите в папку установки Arduino, в раздел Libraries и удалите папку RobotRemote.

#include <IRremote.h> //подключение библиотеки
int IR_pin = 8; //пин подключения инфракрасного приемника
decode_results results; //переменная для хранения результата приема

IRrecv irreceiver(IR_pin); //создание объекта приемника

void setup()
{
  Serial.begin(9600); //инициализация Serial - порта
  irreceiver.enableIRIn(); //инициализация приемника
}

void loop()
{
  if (irreceiver.decode(&results)) { //если что-то пришло
    Serial.println(results.value); //сообщить значение приема в монитор
    irreceiver.resume(); //возобновление работы ИК приемника
  }
}

Пример 2: В примере иллюстрируется подключение модуля инфракрасного приемника VS1838B, получение значений нажатия кнопок и вывод данных в монитор Serial - порта. (Примеры тестировались на контроллере Smart UNO)

Схема подключения:

Скетч для загрузки:

Внимание! В Arduino IDE уже есть предустановленная библиотека <RobotRemote>, однако она работает некорректно и её необходимо удалить перед загрузкой скетча и библиотеки <IRremote.h> (чтобы две библиотеки не конфликтовали между собой). Для этого перейдите в папку установки Arduino, в раздел Libraries и удалите папку RobotRemote.

#include <IRremote.h> //подключение библиотеки
int IR_pin = 8; //пин подключения инфракрасного приемника
decode_results results; //переменная для хранения результата приема

IRrecv irreceiver(IR_pin); //создание объекта приемника

void setup()
{
  Serial.begin(9600); //инициализация Serial - порта
  irreceiver.enableIRIn(); //инициализация приемника
}

void loop()
{
  if (irreceiver.decode(&results)) { //если что-то пришло
    Serial.println(results.value); //сообщить значение приема в монитор
    irreceiver.resume(); //возобновление работы ИК приемника
  }
}