Модуль ИК-приемника KY-022

Модуль инфракрасного приемника KY-022 может использоваться во многих проектах Arduino, где вам нужно заставить Arduino взаимодействовать с внешними устройствами или заставить 2 Arduino взаимодействовать между собой на небольшом расстоянии. Модуль построен на базе ИК-приемника VS1838B.

Для информации


Чтобы реализовать двухстороннюю связь между двумя платами ардуино, необходимо использовать две пары модуля ИК-приемника KY-022 в сочетании с модулем инфракрасного передатчика KY-005.

Характеристики модуля

Рабочее напряжениеот 2.7 до 5.5 В
Рабочий токот 0.8 до 1.5 мА
Расстояние15 м
Угол приема± 45º
Частота38 кГц
Максимальное напряжение для низкого уровня LOW0.4 В
Минимальное напряжение для высокого уровня HIGH4.5 В
Размер модуля20×14 мм
Основные характеристики модуля

Электрическая схема модуля

Схема модуля очень проста, поскольку все функции выполняются инфракрасным приемником VS1838. Внутри него есть все схемы, которые обеспечивают усиление, фильтрацию, сравнение принятого сигнала и т.д. На самом модуле есть светодиод с токоограничивающим резистором на 1 кОм, который загорается при приеме сигнала.

Функциональная схема VS1838
Функциональная схема VS1838
Electrical diagram module KY-022
Электрическая схема модуля KY-022
Module KY-022 PCB
Печатная плата модуля KY-022

Подключение KY-022 к Ардуино

Схема подключения модуля к Ардуино УНО представлена ниже:

KY-022 connection diagram
Схема подключения
KY-022Arduino UNO
SКонтакт 11
Средний вывод+5В
GND
  • Сигнальный контакт S модуля подключается к контакту D11 ардуино уно;
  • Средний контакт питание модуля подключается к контакту 5V ардуино;
  • Контакт модуля подключается к контакту GND ардуино.

Выровняйте ИК-приемник и передатчик, расположив их друг к другу.

Код для Ардуино и модуля KY-022

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

Ссылку на библиотеку можно найти в разделе Загрузки ниже.

Для информации


Рекомендуем прочитать статью про пульт и ИК-приемник.

Для 2-й версии библиотеки

// Код для версии библиотеки 2.0.1
#include <IRremote.h>           // Подключаем библиотеку
const int RECV_PIN = 7;         // Сигнальный вывод, подключенный к Ардуино
IRrecv irrecv(RECV_PIN);        // Создаем объект 
decode_results results;         // Объявляем переменную для хранения принятого значения
void setup()
{
  Serial.begin(9600);           // Инициализируем последовательный порт
  irrecv.enableIRIn();          // Включаем ИК
  irrecv.blink13(true);         // Если сигнал пришел, диод D13 будет мигать
}
void loop()
{
  if (irrecv.decode(&results))  // Проверяем, пришли ли данные
  {
        Serial.println(results.value, HEX); // Выводим в порт
        irrecv.resume();                    // Получаем следующее значение
  }
}

Для 4-й версии библиотеки

// Код для версии 4.2.0
#include <IRremote.hpp>         // Подключаем библиотеку
#define IR_RECEIVE_PIN 7        // Сигнальный вывод, подключенный к Ардуино
void setup()
{
  Serial.begin(9600); 
  IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK); // Инициализация приемника
}
void loop() {
  if (IrReceiver.decode()) {        // // Проверяем, пришли ли данные
      Serial.println(IrReceiver.decodedIRData.decodedRawData, HEX); // Выводим в порт
      IrReceiver.resume(); // Включение приема следующего значения
  }
}

Загрузки

Где купить

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
2 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Derek Walters
16 дней назад

Keep up the fantastic work!

ginseng
Администратор
Ответить на  Derek Walters
14 дней назад

Thanks! We will try to make good content.