Свързване на IR приемник към Arduino, роботика на Arduino

Помислете за свързване на IR приемник към Arduino. Ще ви кажем коя библиотека да използвате и ще демонстрираме скицата за работата на IR приемника на Arduino.

В този урок ще разгледаме свързването на IR приемник към Arduino. Ще ви кажем коя библиотека трябва да се използва за IR приемника, ще демонстрираме скица за тестване на работата на инфрачервен приемник от дистанционно управление и ще анализираме командите на езика C ++ за получаване на сигнал. Веднага отбелязваме, че инфрачервеният сензор Arduino не е подходящ за всяко дистанционно управление, честотата на сигнала може да варира.

IR приемно устройство. Принцип на действие

Приемниците на инфрачервено лъчение днес се използват широко в домакинските уреди, поради тяхната достъпна цена, простота и лекота на използване. Тези устройства ви позволяват да контролирате устройства с помощта на дистанционно управление и могат да бъдат намерени в почти всяка технология. Но въпреки това постепенно Bluetooth модулът набира все по-голяма популярност.

Как работи IR приемник. Обработка на сигнала от дистанционно управление

IR приемникът на Arduino е способен да приема и обработва инфрачервен сигнал под формата на импулси с определена продължителност и честота. Използва се при производството на сензор за препятствия и далекомер за Arduino. Обикновено IR приемникът има три крака и се състои от следните елементи: PIN фотодиод, усилвател, лентов филтър, амплитуден детектор, интегриращ филтър и изходен транзистор.

Под действието на инфрачервеното лъчение във фотодиода, което между областитеp иn създава допълнителна област на полупроводника (i -регион), започва да тече ток. Сигналът отива към усилвателя и след това към лентовия филтър, който е настроен на фиксирана честота: 30; 33;36; 38; 40 и 56 килохерца и предпазва приемника от смущения. Смущения могат да създават всякакви домакински уреди.

За да може сигналът от дистанционното управление да бъде получен от Arduino IR приемника, дистанционното управление трябва да е на същата честота, на която е настроен филтърът в IR приемника. Следователно не всяко дистанционно управление ще работи. Трябва да изберете IR приемник и IR предавател с еднаква честота. След филтъра сигналът отива към амплитудния детектор, интегриращия филтър и изходния транзистор.

Как да свържете IR приемник към Arduino

Корпусите на инфрачервените приемници съдържат оптичен филтър за защита на устройството от външни електромагнитни полета, изработени са в специална форма за фокусиране на полученото лъчение върху фотодиода. За да свържете IR приемника към Arduino UNO, използвайте три крака, които се свързват към - GND, 5V и A0. Съветваме ви да използвате 3,3 волта за стартиране, за да не изгорите IR сензора при настройка.

За урока ни трябват следните части:

  • платка Arduino Uno / Arduino Nano / Arduino Mega;
  • дъска за хляб;
  • IR приемник;
  • дистанционно;
  • 1 LED и резистор 220 Ohm;
  • жици "баща-баща" и "баща-майка".
Схема за свързване на IR приемника към аналоговия порт Arduino

Свържете IR приемника, както е показано по-горе, и свържете светодиодите към щифтове 12 и 13. Преди да изтеглите програмата, ще трябва да инсталирате библиотеката IRremote.h, ако вече не е инсталирана. Тази библиотека не принадлежи към стандартните библиотеки на средата за програмиране Arduino IDE. Можете да изтеглите библиотеката IRremote.h и готовата скица в един архив от Google Drive, като използвате връзката тук.

Скица на IR приемник Arduino:

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

  1. Библиотеката IRremote.h съдържа наборкоманди и ви позволява да опростите скицата;
  2. Операторът decode_results присвоява получените сигнали от дистанционното управление към резултатите от името на променливата.

IR сензорът може да се използва в много устройства на микроконтролера Arduino, включително дистанционно управление на сервото на Arduino от IR приемника. Когато настройвате, трябва да включите монитора на порта Arduino IDE и да разберете какъв сигнал изпраща този или онзи бутон на дистанционното управление. Получените кодове трябва да се използват в скицата след двойния знак за равенство в условията if ().

Пропуснали сте кодирането на сигнала на IR дистанционното управление, поставете “0x” преди кода

Проверих отново всичко. Всичко е правилно написано в скицата за свързване на IR приемника към Arduino

На вашите рисунки на един десният крак е 5B, левият е A0, на следващата фигура е обратното.

Благодаря, ще го оправим. Но не всички IR приемници имат разводка точно както е показано на фигурата, тя може да се различава

Качих скицата в Arduino, но ако натисна бутона на дистанционното управление, там не се показва нищо (PORT MONITOR). Какво да правя?

Опитайте различни опции за свързване на IR сензора. Ако не работи, честотата на IR приемника и дистанционното управление може да не съвпадат. Трябва да вземете друго дистанционно управление или друг IR сензор.

И как да направите така, че да включвате / изключвате светодиода с един бутон на дистанционното управление? Лично опитах не работи, само различно. Всяка информация би била полезна.

Здравейте. Аз също се опитах да направя това - не се получи.

if (results.value == 16718055)digitalWrite(led2, !digitalRead(led2)); натискане на един бутон за включване и изключване

Благодаря ти много!

Здравейте! Не зарежда библиотеката IRremote.h, пише "грешка при зареждане в платката." Какво да правя?

Запишете грешката

Когато щракнете върху бутона, същият бутон показва няколко кода, защо?

Обикновено се изпраща допълнителен втори сигнал от всички бутони на дистанционното към инфрачервения приемник, той е еднакъв за всички бутони, така че не го използвайте. За какво е? Евентуално за идентифициране на дистанционното.