Ардуино: модуль реле

Мы уже знаем как управлять слабым светодиодом и даже мощным двигателем с помощью Ардуино. Но как быть, если мы задумаем управлять устройствами, подключенными к бытовой сети? Напомню, что даже небольшая настольная лампа питается от источника переменного тока с напряжением 220 Вольт. Обычный полевой транзистор, который мы использовали в схеме с двигателем уже не подойдет.

Чтобы управлять мощной нагрузкой да еще и с переменным током воспользуемся реле. Это такое электромеханическое устройство, которое механическим способом замыкает цепь нагрузки с помощью электромагнита. Посмотрим на внутренности:

Схема реле

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

relay

У реле есть два основных применения. Во-первых, мы можем подав всего 5 Вольт на катушку, замкнуть цепь очень мощной нагрузки. Например, реле, используемое в уроках для Ардуино, может включить свет в доме или отключить забытый утюг. Во-вторых, некоторые виды реле могут одновременно замкнуть и разомкнуть сразу несколько разных цепей с разным напряжением.

Список необходимых компонентов

Для выполнения простого примера с модулем реле, потребуется Ардуино-совместимый контроллер, датчика света, макетная плата и немного проводов вилка-розетка. Необходимые компоненты можно добавить в корзину прямо здесь, и затем оформить заказ в нашем интернет-магазине.

В корзину
В корзину
В корзину
В корзину
В корзину

Подключение реле к Ардуино

Релейный модуль для Ардуино

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

У одинарного модуля реле есть всего три контакта. Подключим их по следующей схеме.

РелеGNDVCCIn
Ардуино УноGND+5V3

Кстати, вход реле является инвертированным. Это означает, что высокий уровень на контакте In выключит катушку реле, а низкий уровень — включит.

Принципиальная схема

Подключение реле к Ардуино

Внешний вид макета

Подключение реле к Ардуино

Программа для Ардуино

Напишем простую программу, которая будет включать лампу на 3 секунды, а затем гасить на 1 секунду.

const int relPin = 3;

void setup() {
    pinMode(relPin, OUTPUT);
}

void loop() {
    digitalWrite(relPin, HIGH);
    delay(1000);
    digitalWrite(relPin, LOW);
    delay(3000);
}

Загружаем программу на Ардуино. Теперь подключаем питание к лампе и к реле. Наконец, подаем питание на контроллер.

Датчик света и реле. Управление при помощи Ардуино.

Автоматический светильник или уличный фонарь

С помощью контроллера, реле и датчика света можно сделать несложный автоматический светильник. Контроллер будет зажигать лампу в момент, когда уровень света на датчике станет меньше заданного значения.

В качестве датчика используем готовый модуль на основе фоторезистора. Подключим все три устройства по следующей схеме.

Принципиальная схема

Подключение фотодатчика и реле к Ардуино

Внешний вид макета

Подключение фотодатчика и реле к Ардуино

Программа автоматического светильника

Аналоговый вывод датчика дает значения в диапазоне от 0 до 1023. Причем, 0 — для максимального уровня света и 1023 для полной темноты.

Сначала нам нужно определиться при каком уровне света включать лампу, а при каком выключать. В нашей лаборатории при свете дня датчик показывает значение L = 120, а ночью около L = 700. Будем включать реле при L > 600, и выключать при L < 200. Вспомним как работать с аналоговыми входами и напишем программу.

const int photoPin = A5;
const int relPin = 3;

void setup() {
    pinMode(photoPin, INPUT);
    pinMode(relPin, OUTPUT);
}

void loop() {
    if( analogRead(photoPin) < 200 )
        digitalWrite(relPin, HIGH);
    if( analogRead(photoPin) > 600 )
        digitalWrite(relPin, LOW);
}

Загружаем программу на Ардуино и проводим эксперимент. Лучше всего это делать ночью.

Задания

1. Музыка реле. Как известно, электромеханическое реле издает щелчок при срабатывании. Попробуйте воспользоваться этим для проигрывания какой-нибудь несложной мелодии.

2. Управление двигателем. Имея два трехконтактных реле, таких же как в этом уроке, можно собрать схему для изменения направления вращения двигателя.


Изменено:

Ардуино: модуль реле: 8 комментариев

    • резистор обычно не преобразует напряжение, а «потребляет» его.
      если вы имели ввиду потребление, то оно зависит от нескольких параметров. зайдите на любой сайт расчета сопротивления резистора, там подставив параметры, можете спокойно получить ответ.

  1. Я плохо разбираюсь, подскажите. GND — это земля, т.е. провод заземления?
    Если я блок питания 5V подключаю, то GND на «-«, а VCC на «+» подключать?

    • Верно! Это не заземление, так в электронике обозначают «общий» провод. Так повелось, что за общий стали принимать именно минус.

    • Если реле выключено, то контакт C (COM) соединен с NC (Normally connected), и не соединен c NO (Normally opened).
      При подаче напряжения на катушку реле, контакт C перекидывается с NC на NO — и всё становится наоборот.

  2. Если микроконтроллер и реле выключены, а нагрузка (лампа)
    подключена к COM и NC, то нагрузка выключена. Включаем микроконтроллер, и нам сразу надо подать высокий уровень на вход реле, чтоб нагрузка не включилась на доли секунды. Как избежать низкого уровня на входе реле при включении и включении микроконтроллера? Может есть реле с не инвертируемым входом, чтоб отсутствие сигнала и низкий сигнал значило тоже самое для реле?

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.