Модуль ИК-приемника 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
3 месяцев назад

Keep up the fantastic work!

ginseng
Администратор
Ответить на  Derek Walters
3 месяцев назад

Thanks! We will try to make good content.