kz ru
Каталог

Проект 6: Прием инфракрасных сигналов (IR Reception)

Не вызывает сомнения тот факт, что инфракрасное дистанционное управление широко распространено в повседневной жизни. Оно используется для управления различными бытовыми приборами, такими как телевизоры, стереосистемы, видеомагнитофоны и спутниковые приемники сигналов. Инфракрасное дистанционное управление состоит из инфракрасной передающей и инфракрасной приемной систем, то есть из инфракрасного дистанционного управления, инфракрасного приемного модуля и микроконтроллера с декодированием.
Инфракрасный передатчик в дистанционном управлении излучает сигнал носителя с частотой 38 кГц. Этот сигнал кодируется чипом кодирования в дистанционном управлении. Он состоит из секции кода пилота, пользовательского кода, обратного кода пользователя, кода данных и обратного кода данных. Интервал времени импульса используется для различия между сигналами 0 и 1, и кодирование состоит из этих 0 и 1 сигналов. Пользовательский код на одном и том же дистанционном управлении остается постоянным, в то время как код данных может различать клавиши.

FFA25D FF629P FFE21D
FF22DD FF02FD FFC23D
FFE01F FFA857 FF906F
FF6897 FF9867 FFB04F
FF30CF FF18E7 FF7A85
FF10EF FF38C7 FF5AA5
FF42BD FF4AB5 FF52AD

Когда нажимается кнопка на дистанционном управлении, оно отправляет инфракрасный носительный сигнал. Когда ИК-приемник получает сигнал, программа декодирует носительный сигнал и определяет, какая клавиша была нажата. МК декодирует полученный сигнал 01, определяя, какая клавиша была нажата с помощью дистанционного управления. Инфракрасный приемник, который мы используем, - это инфракрасный приемный модуль. Он состоит в основном из инфракрасного приемного устройства, которое интегрирует в себе прием, усиление и демодуляцию. Внутренний интегральный схема модуля выполнена демодуляцию и может работать от приема инфракрасного сигнала до вывода и совместима с сигналами TTL. Кроме того, он подходит для инфракрасного дистанционного управления и передачи данных по инфракрасному каналу. Инфракрасный приемный модуль, изготовленный приемником, имеет всего три контакта: сигнальный провод, VCC и GND. Это очень удобно для взаимодействия с Arduino и другими микроконтроллерами.

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

Рабочее напряжение: 3,3-5 В (постоянный ток)
Выходной сигнал: Цифровой сигнал
Угол приема: 90 градусов
Частота: 38 кГц
Дистанция приема: 10 м

Тестовый код:

 


//*************************************************************************************
/*
4wd BT Car
lesson 6.1
IR remote
https://alash-electronics.kz/blogs/wiki
*/
#include <IRremote.h> // Подключение библиотеки IRremote
int RECV_PIN = 3; // Определение пина IR-приемника как D3
IRrecv irrecv(RECV_PIN);
decode_results results; // Результаты декодирования будут храниться в results
void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // Включение приемника
}
void loop() {
if (irrecv.decode(&results)) // Если декодирование успешно, получен набор инфракрасных сигналов
{
Serial.println(results.value, HEX); // Вывод кода в 16-ричной системе
irrecv.resume(); // Получить следующее значение
}
delay(100);
}
//*************************************************************************************

Результат теста:

После успешной загрузки кода на плату, подключите компоненты согласно схеме подключения, затем подключите плату к компьютеру с помощью USB-кабеля для питания. После включения откройте последовательный монитор и установите скорость передачи данных на 9600. Вытащите пульт дистанционного управления и отправьте сигнал на инфракрасный приемник. Вы увидите значение клавиши, соответствующей нажатой клавише. Если удерживать клавишу слишком долго, то могут появиться символы с ошибками.

Объяснение кода:

irrecv.enableIRIn(): После включения декодирования инфракрасных сигналов будут приниматься IR-сигналы.
decode(): Функция "decode()" будет непрерывно проверять успешность декодирования.
irrecv.decode(&results): После успешного декодирования эта функция вернет "true" и результаты будут храниться в "results". После декодирования IR-сигналов выполняется функция "resume()", и продолжается прием следующего сигнала.


Практическое расширение:

Мы декодировали значение клавиши дистанционного управления. А как насчет управления светодиодом с помощью измеренного значения? Мы можем разработать эксперимент. Подключите светодиод к D9, затем нажмите клавиши на дистанционном управлении, чтобы включить и выключить светодиод.

 

 


//*************************************************************************************
/*
4wd BT Car
lesson 6.2
IR remote LED
https://alash-electronics.kz/blogs/wiki
*/
#include <IRremote.h>
int RECV_PIN = 3; // Определение пина IR-приемника как D3
int LED_PIN = 9; // Определение пина светодиода как 9
int a = 0;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn(); // Инициализация IR-приемника
pinMode(LED_PIN, OUTPUT); // Установка пина светодиода как выход
}
void loop() {
if (irrecv.decode(&results)) {
if (results.value == 0xFF02FD && (a == 0)) {
Serial.println("HIGH");
digitalWrite(LED_PIN, HIGH);
a = 1;
} else if (results.value == 0xFF02FD && (a == 1)) {
Serial.println("LOW");
digitalWrite(LED_PIN, LOW);
a = 0;
}
irrecv.resume();
}
}
//*************************************************************************************
После успешной загрузки кода на плату, подключите компоненты согласно схеме подключения, затем подключите плату к компьютеру с помощью USB-кабеля для питания. После включения нажмите клавишу "OK" на дистанционном управлении, чтобы включить и выключить светодиод.

Комментарии
Отзывов еще никто не оставлял
Товары упомянутые в статье
В наличии
Предзаказ
арт. 7-6
IR пульт с приемником Напряжение питания приемника 5V
500 тг
В наличии
Предзаказ
арт. 5-52
Инфракрасный датчик VS1838B, работающий на частоте 38 кГц. Применяется в...
100 тг 60 тг
Предзаказ
Предзаказ успешно отправлен!
Имя *
Телефон *
Добавить в корзину
Название товара
100 тг
1 шт.
Перейти в корзину
Обратный звонок
Запрос успешно отправлен!
Имя *
Телефон *
Заказ в один клик
С помощью уведомлений о заказе можно не только получать актуальную информацию по заказу, но и иметь быстрый канал связи с магазином