RDC1-0019, Дистанційний якого навчають релейний вимикач. Для роботи з будь-яким пультом ДУ

Те, що у вас вже є, ви можете видалити в кошику.

Модуль призначений для самостійного повторення початківцям, дорослим електронникам.

Пристрій призначений для дистанційного керування навантаженням потужністю до 3 кВт з міццю ІК пульта дистанційного керування від будь-якого телевізора. Використовується будь-яка клавіша на пульті про призначення якої ви навіть не здогадуєтесь. Логіка роботи і налаштування дуже проста. При першому включенні модуля він відразу знаходиться в режимі очікування команди від ІК приймача, тобто натискання кнопки на пульті. Як тільки ви визначитеся з вільною кнопкою на пульті ДУ, направляйте пульт в сторону пристрою і тисніть кнопку. Мікроконтролер визначить виробника вашого пульта, дізнається код натиснутоюклавіші і запам'ятає його. Після цього натиснути дану клавішу буде включати або вимикати реле, до контактів якого підключена навантаження. Наприклад, модуль можна вбудувати в люстру і, не встаючи з дивана включити світло у вечірній час. А можна додати його в свій проект домашнього помічника або мультимедійної системи.

Нижче наведена схема, по якій можна визначити, що вся конструкція знаходиться під високою напругою, несумісним з життям.

Дотримуйтесь правил електробезпеки !!!

Дотримуйтесь правил електробезпеки

Прошивка модуля здійснюється через роз'єм XP1 (ISP) за допомогою будь-якої плати Arduino або нашого вибору програм Arduino Верба

Це відкритий проект! Ліцензія, під якою він поширюється - Creative Commons - Attribution - Share Alike license.

#include <IRremote.h> #define RECV_PIN 1 #define RELAY_PIN 3 #define START_ADR 100 IRrecv irrecv (RECV_PIN); decode_results results; decode_results RightCode; bool State = true; void setup () {irrecv.enableIRIn (); pinMode (RELAY_PIN, OUTPUT); while (! irrecv.decode (& RightCode)); digitalWrite (RELAY_PIN, HIGH); State = true; delay (300); irrecv.resume (); } Void loop () {if (irrecv.decode (& results)) {if (RightCode.value == results.value) {if (State) {digitalWrite (RELAY_PIN, LOW); State = false; } Else {digitalWrite (RELAY_PIN, HIGH); State = true; }} Delay (400); irrecv.resume (); }}