Понедельник, Сентябрь 23, 2019
Электрика

Управление розеткой через ИК пульт


83Просмотров
Telderi

Управление розеткой через ИК пульт
Управление розеткой через ИК пультДелать мы будем розетку которая включается и выключается при помощи инфракрасного пульта дистанционного управления.Сразу говорю если что-то не понятно я всё объясню в комментариях.Внимание напряжение 220 В

Что нам понадобится:

  • Arduino
  • ИК приёмник
  • ИК пульт
  • Перемычки типа папа-мама и папа-папа
  • Твёрдотельное реле на 220 В
  • Розетка с одним разорванным проводом
  • Макетная плата
  • Лампочка с патроном-вилкой

Управление розеткой через ИК пульт

Собираем всё это в единое

Для начала мы возьмём розетку открутим 2 винта и вскроем её.Управление розеткой через ИК пульт
Потом зажмём 2 провода в двух клемах при помощи отвёртки и разрежем один провод пополам. Так чтобы получилось как на картинке.Управление розеткой через ИК пульт
Далее вставляем два провода которые мы разрезали в твёрдотельное реле на 220 В как показано на картинке только наоборот! Управление розеткой через ИК пульт
Управление розеткой через ИК пульт
Управление розеткой через ИК пульт
Теперь подключаем всё как на картинке. Управление розеткой через ИК пульт
ИК датчик :

  • левая нога GND
  • средняя нога 5В
  • правая нога А0

Твёрдотельное реле на 220 В

  • vcc – 5 В
  • gnd – GND
  • IN – D9

А вот и сам скетч

#include <IRremote.h> // подключаем библиотеку для работы с ИК приёмником

IRrecv irrecv(A0); // указываем пин, к которому подключен IR приемник
decode_results results;

void setup() // процедура setup
{
irrecv.enableIRIn(); // запускаем прием инфракрасного сигнала
pinMode(9, OUTPUT); // пин 9 будет выходом (англ. «output»)
pinMode(A0, INPUT); // пин A0 будет входом (англ. «intput»)

Serial.begin(9600); // подключаем монитор порта
}

void loop() // процедура loop
{
if (irrecv.decode(&results)) // если данные пришли выполняем команды
{
Serial.println(results.value); // отправляем полученные данные на порт

// включаем и выключаем светодиоды, в зависимости от полученного сигнала

if (results.value == 16754775) {
digitalWrite(9, HIGH); // выключаем лампочку
}
if (results.value == 16775175) {
digitalWrite(9, LOW); // включаем лампочку
}

irrecv.resume(); // принимаем следующий сигнал на ИК приемнике
}
}
Скачать скетч

sketch_feb18b1_ino.zip

[734 b] (скачиваний: 186)

После того как залили скетч открываем монитор порта и нажимаем кнопку на ИК пульте. Результат однократного нажатия записываем вместо if (results.value == 16775175) { digitalWrite(9, LOW);}Теперь опять можно залить скетч и пользоваться им!Пользуйтесь аккуратно! За причинённые вами травмы я не несу ответственности!

Источник: usamodelkina.ru
kwork

Добавить комментарий

18 − шестнадцать =