Управление реле ардуино: скетч

Содержание

3Скетч управления реле с помощью Arduino

Будем поочерёдно зажигать пару светодиодов одного цвета, и каждую секунду переключаться на пару другого цвета. Напишем вот такой скетч.

const int relay1 = 2; // пин управления 1-ым реле
const int relay2 = 3; // пин управления 2-ым реле

const int led1 = 4; // коммутируемый вывод - питание 1-го светодиода 
const int led2 = 5; // коммутируемый вывод - питание 2-го светодиода 

void setup() {
  pinMode(relay1, OUTPUT);
  pinMode(relay2, OUTPUT);
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  // установим оба реле в исходное положение:
  digitalWrite(relay1, HIGH);
  digitalWrite(relay2, HIGH);
  // подадим питание на светодиоды: 
  digitalWrite(led1, HIGH);  
  digitalWrite(led2, HIGH);
}

void loop() {
// переключим оба реле:
  digitalWrite(relay1, LOW);
  digitalWrite(relay2, LOW);
  delay(1000);
// переключим оба реле обратно:
  digitalWrite(relay1, HIGH);
  digitalWrite(relay2, HIGH);
  delay(1000);
}

Если вы собирали не по приведённой схеме, а вместо D4 и D5 подключали центральную точку реле напрямую к питанию +5V, то от констант led1 и led2 и от всего связанного с ними кода в скетче можно совершенно безболезненно избавиться.

Теперь загрузим скетч в память Arduino. Вот как это всё выглядит у меня. Реле громко пощёлкивают раз в секунду, а светодиоды весело моргают.

Демонстрация работы Arduino с модулем реле SRD-05VDC-SL-C

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

Работа схемы

Схема подключения герконового реле к плате Arduino Uno представлена на следующем рисунке.

Плата Arduino Uno

Arduino Uno представляет собой плату с открытым исходным кодом, построенную на основу микроконтроллера ATmega328p. Она имеет 14 цифровых контактов (6 из которых могут использоваться как выходы ШИМ), 6 аналоговых контактов, регуляторы напряжения и другие элементы. Arduino Uno имеет 32 кБ флэш памяти, 2 кБ SRAM (статическое ОЗУ) и 1 кБ EEPROM (энергонезависимая память). Плата работает на тактовой частоте 16 МГц. Arduino Uno обеспечивает связь по последовательного каналу связи, а также поддерживает протоколы связи I2C и SPI. В следующей таблице представлены технические характеристики платы Arduino Uno.

Микроконтроллер ATmega328p
Рабочее напряжение 5 В
Входное напряжение 7-12V (рекомендовано)
Количество цифровых контактов ввода/вывода 14
Количество аналоговых контактов 6
Flash memory (память программ) 32 Кб
SRAM (оперативная память) 2 Кб
EEPROM (энергонезависимая память) 1 Кб
Рабочая частота микроконтроллера 16 МГц

Чтобы подключить герконовое реле к плате Arduino Uno мы использовали делитель напряжения. Принцип его действия показан на рисунке ниже. Vo на этом рисунке будет равно +5V когда переключатель (реле) будет открыт и 0V когда переключатель будет закрыт. В этом проекте мы использовали реле с нормально разомкнутыми контактами – реле закрыто (контакты замкнуты) при наличии магнитного поля и открыто (контакты разомкнуты) при отсутствии магнитного поля.

Что понадобится для изготовления?

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

Для сборки реле времени вам понадобится:

  • набор радиодеталей – в каждом конкретном примере самодельного реле их перечень будет отличаться, но основная номенклатура останется неизменной (резисторы, конденсаторы, транзисторы, микросхемы, промежуточные реле или переключатели, блоки питания или понижающие трансформаторы, катушки и т.д.);
  • основание для набора элементов – печатная плата, диэлектрическая поверхность или каркас, также выбираются исходя из местных условий;


Рис. 3. Печатная плата

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

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

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

Рассмотрим одноканальный модуль реле. Он имеет всего 3 контакта, подключаются они к Ардуино Uno следующим образом: GND – GND, VCC – +5V, In – 3. Вход реле – инвертирован, так что высокий уровень на In выключает катушку, а низкий – включает.

Светодиоды нужны для индикации – при загорании красного LED1 подается напряжение на реле, при загорании зеленого LED2 происходит замыкание. Когда включается микроконтроллер, транзистор закрыт. Для его открытия на базу нужен минус, подается при помощи функции digitalWrite(pin, LOW);. Транзистор открывается, протекает ток через цепь, реле срабатывает. Чтобы его выключить, на базу подается плюс при помощи digitalWrite(pin, HIGH);.

Схема подключения лампы и внешний вид макета представлены на рисунках.

О том, как можно писать скетч для реле в ардуино мы уже писали ранее.

В этом уроке по реле Ардуино мы научимся управлять высоковольтными устройствами с помощью микроконтоллеров Arduino.

Пример для Arduino

В качестве мозга для управления реле рассмотрим платформу Arduino Uno.

Схема подключения

Подключите мини-реле к цифровому пину платформы Arduino. Для любителей надёжности, линии питания и управление реле мы вывели на специальный клеммник.

Для быстрой сборки и отладки устройства возьмите плату расширения Troyka Shield. А для коммуникации используйте трёхпроводной шлейф «мама-папа», который идёт в комплекте с реле.

А если вы уже отладили устройство и планируете упаковать всю конструкцию в корпус, рекомендуем взять Srew Shield и надёжно зафиксировать все сигналы через соединительные провода «мама-папа».

Исходный код

Прошейте платформу Arduino скетчем приведённым ниже.

relayBlink.ino
// пин подключения реле
#define RELAY_PIN 8
 
void setup() {
  // настраиваем пин реле в режим выхода
  pinMode(RELAY_PIN, OUTPUT);
}
 
void loop() {
  // подаём на пин реле «высокий уровень»
  digitalWrite(RELAY_PIN, HIGH);
  // ждём одну секунду
  delay(1000);
  // подаём на пин реле «низкий уровень»
  digitalWrite(RELAY_PIN, LOW);
  // ждём одну секунду
  delay(2000);
}

После загрузки скетча реле начнёт по циклу включатся на одну секунду и выключаться на две.

Схема датчика освещения на фоторезисторе и реле

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

#define PIN_RELAY 10
#define PIN_PHOTO_SENSOR A0

void setup() {
  pinMode(PIN_RELAY, OUTPUT);
  digitalWrite(PIN_RELAY, HIGH);
}

void loop() {
  int val = analogRead(PIN_PHOTO_SENSOR);
  if (val < 300) {
    // Светло, выключаем реле
    digitalWrite(PIN_RELAY, HIGH);
  } else {
    // Темновато, включаем лампочку
    digitalWrite(PIN_RELAY,  LOW);
  }
}

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

Для лучшего понимания работы с реле Ардуино давайте рассмотрим принципиальную схему релейного модуля в этой конфигурации. Таким образом, мы можем видеть ниже, что 5 вольт от нашего микроконтроллера, подключенного к выводу Vcc для активации реле через оптрон, также подключены к выводу JDVcc, который питает электромагнит реле. Таким образом, в этом случае мы не получили изоляции между реле и микроконтроллером.

Чтобы изолировать микроконтроллер от реле, нам нужно снять перемычку и подключить отдельный источник питания для электромагнита к JDVcc и контакту заземления. Теперь с этой конфигурацией микроконтроллер не имеет физического соединения с реле, он просто использует светодиодную подсветку ИС оптопары для активации реле.

Есть еще одна вещь, которую следует отметить в этой принципиальной схеме. Входные контакты модуля работают в обратном порядке. Как мы видим, реле будет активировано, когда входной контакт будет НИЗКИМ, потому что таким образом ток сможет течь от VCC к входному контакту, который является низким или заземленным, светодиод загорится и активирует реле. Когда входной вывод будет ВЫСОКИМ, ток не будет течь, поэтому светодиод не загорится и реле не будет активировано.

Защита от помех DC

Раздельное питание

Один из лучших способов защититься от помех по питанию – питать силовую и логическую части от отдельных источников питания: хороший малошумящий источник питания на микроконтроллер и модули/сенсоры, и отдельный на силовую часть. В автономных устройствах иногда ставят отдельный аккумулятор на питание логики, и отдельный мощный – на силовую часть, потому что стабильность и надёжность работы очень важна.

Искрогасящие цепи DC

При размыкании контактов в цепи питания индуктивной нагрузки происходит так называемый индуктивный выброс, который резко подбрасывает напряжение в цепи вплоть до того, что между контактами реле или выключателя может проскочить электрическая дуга (искра). В дуге нет ничего хорошего – она выжигает частички металла контактов, из за чего они изнашиваются и со временем приходят в негодность. Также такой скачок в цепи провоцирует электромагнитный выброс, который может навести в электронном устройстве сильные помехи и привести к сбоям или даже поломке! Самое опасное, что индуктивной нагрузкой может являться сам провод: вы наверняка видели, как искрит обычный выключатель света в комнате. Лампочка – не индуктивная нагрузка, но идущий к ней провод имеет индуктивность. Для защиты от выбросов ЭДС самоиндукции в цепи постоянного тока используют обыкновенный диод, установленный встречно-параллельно нагрузке и максимально близко к ней. Диод просто закоротит на себя выброс, и все дела:

Где VD – защитный диод, U1 – выключатель (транзистор, реле), а R и L схематично олицетворяют индуктивную нагрузку. Диод нужно ОБЯЗАТЕЛЬНО ставить при управлении индуктивной нагрузкой (электромотор, соленоид, клапан, электромагнит, катушка реле) при помощи транзистора, то есть вот так:

При управлении ШИМ сигналом рекомендуется ставить быстродействующие диоды (например серии 1N49xx) или диоды Шоттки (например серии 1N58xx), максимальный ток диода должен быть больше или равен максимальному току нагрузки.

Фильтры

Если силовая часть питается от одного источника с микроконтроллером, то помехи по питанию неизбежны. Простейший способ защитить МК от таких помех – конденсаторы по питанию как можно ближе к МК: электролит 6.3V 470 uF (мкФ) и керамический на 0.1-1 мкФ, они сгладят короткие просадки напряжения. Кстати, электролит с низким ESR справится с такой задачей максимально качественно.

Ещё лучше с фильтрацией помех справится LC фильтр, состоящий из индуктивности и конденсатора. Индуктивность нужно брать с номиналом в районе 100-300 мкГн и с током насыщения больше, чем ток нагрузки после фильтра. Конденсатор – электролит с ёмкостью 100-1000 uF в зависимости опять же от тока потребления нагрузки после фильтра. Подключается вот так, чем ближе к нагрузке – тем лучше:

Подробнее о расчёте фильтров можно почитать здесь.

Элементы платы

Реле

На Relay Shield установлены 4 электромеханических реле, имеющих нормально замкнутый (normal closed, NC) и нормально разомкнутый (normal open, NO) контакты. Если на управляющей обмотке реле отсутствует напряжение, то между нормально замкнутым и коммутируемым контактами есть электрическая связь, а между нормально разомкнутым и коммутируемым — нет. При подаче напряжения на управляющую обмотку нормально разомкнутый контакт замыкается, а нормально замкнутый — размыкается.

Характеристики используемых реле

  • Ток обмотки: 80 мА
  • Максимальное коммутируемое напряжение: 30 В постоянного тока; 250 В переменного тока
  • Максимальный коммутируемый ток: 5 А (NO), 3 А (NC)
  • Рекомендованная частота переключения: до 1 Гц
  • Время жизни: не менее 50000 переключений

Нагрузка

Нагрузка к реле подключается через колодки под винт. Контакт от источника напряжения подключается к выводу COM, а нагрузка — к контакту NO или NC, в зависимости от задачи которую должно выполнять реле.
Чаще всего реле используется для замыкания внешней цепи при подаче напряжения на управляющую обмотку. При таком способе даже если напряжение на Arduino по какой-то причине пропадёт, управляемая нагрузка будет автоматически отключена.
Схема подключения нагрузки к колодкам при этом будет следующей:

Используемые пины

Для управлением реле используются контакты 4, 5, 6 и 7 Arduino.

Реле Контакт Arduino
Реле 1 7
Реле 2 6
Реле 3 5
Реле 4 4

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

Контакты выбора управляющих пинов

Индикатор состояния и обвязка реле

Микроконтроллер не может напрямую управлять реле: оно потребляет слишком большой ток и порождает выбросы обратного напряжения при отключении. Поэтому каждое реле подключено к управляющим контактам через транзистор, а обратный диод защищает остальную схему от выбросов напряжения.
Между транзистором и обратным диодом находится индикатор состояния реле — светодиод. Светодиод горит если на реле подано напряжение. Если реле находится в нормальном состоянии — светодиод не горит.

Ограничения питания логической части

Отдельное реле в замкнутом состоянии потребляет 80 мА из логической цепи в 5 вольт. Все 4 реле при одновременном включении потребляют 320 мА. Если этот сценарий возможен в вашем проекте, необходимо удостовериться, что необходимый ток доступен.

Иными словами, все реле одновременно могут не работать в одном из следующих случаев.

  • Вы питаете Arduino от USB-порта с пределом по току в 200 мА, например, от разветвителя в клавиатуре. Используйте полноценный USB 2.0 или USB 3.0, чтобы обеспечить стабильное питание от USB
  • Вы питаете Arduino внешним источником питания с высоким входным напряжением. Несмотря на то, что линейный регулятор напряжения на плате Arduino выдаёт до 800 мА, их можно получить только, если обеспечена температура регулятора в 25 °C. Излишек напряжения линейный регулятор превращает в рассеиваемое тепло, компонент нагревается, предельный ток снижается. В этом случае используйте либо источник питания на 7–8 вольт вместо 8+, либо установите радиатор на регулятор напряжения, либо подавайте ровные 5 вольт непосредственно на пины 5V и GND или в порт USB.

Реле SRD-05VDC-SL-C описание и схема

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

Реле Ардуино: распиновка, характеристики

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

Согласно характеристикам реле SRD-05VDC-SL-C, для переключения контактов достаточно около 5 Вольт 20 мА, выводы на Ардуино способны выдавать до 40 мА. Таким образом с помощью Ардуино мы можем управлять не только лампой накаливания, но и любым бытовым прибором — обогревателем, холодильником и т.д. Полевые транзисторы на Ардуино могут управлять токами только до 100 Вольт.

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

Для лучшего понимания работы с реле Ардуино давайте рассмотрим принципиальную схему релейного модуля в этой конфигурации. Таким образом, мы можем видеть ниже, что 5 вольт от нашего микроконтроллера, подключенного к выводу Vcc для активации реле через оптрон, также подключены к выводу JDVcc, который питает электромагнит реле. Таким образом, в этом случае мы не получили изоляции между реле и микроконтроллером.

Чтобы изолировать микроконтроллер от реле, нам нужно снять перемычку и подключить отдельный источник питания для электромагнита к JDVcc и контакту заземления. Теперь с этой конфигурацией микроконтроллер не имеет физического соединения с реле, он просто использует светодиодную подсветку ИС оптопары для активации реле.

Есть еще одна вещь, которую следует отметить в этой принципиальной схеме. Входные контакты модуля работают в обратном порядке. Как мы видим, реле будет активировано, когда входной контакт будет НИЗКИМ, потому что таким образом ток сможет течь от VCC к входному контакту, который является низким или заземленным, светодиод загорится и активирует реле. Когда входной вывод будет ВЫСОКИМ, ток не будет течь, поэтому светодиод не загорится и реле не будет активировано.

Работа схемы

Схема устройства представлена на следующем рисунке.

В схеме необходимо сделать следующие соединения:

  • подсоединить нормально замкнутые выводы обоих реле к положительному выводу батареи;
  • подсоединить нормально разомкнутые выводы обоих реле к стоку MOSFET транзистора;
  • подсоединить исток MOSFET транзистора к отрицательному выводу батареи и к земле платы Arduino UNO;
  • затвор MOSFET транзистора подключить к контакту 6 платы Arduino (на этом контакте возможно формирование ШИМ сигнала);
  • подсоединить резистор 10 кОм между затвором и истоком MOSFET транзистора, а также подсоединить диод 1N4007 между истоком и стоком MOSFET транзистора;
  • подсоединить двигатель между средними выводами реле;
  • один из оставшихся выводов реле (для каждого реле) подключить к контакту Vin платы Arduino, а другой – к коллектору транзистора;
  • подсоединить эмиттеры обоих транзисторов к контакту GND (земля) платы Arduino;
  • контакты 2 и 3 платы Arduino подключить к кнопкам, вторые концы кнопок подключить к базе транзисторов;
  • подключить диоды параллельно выводам реле как показано на схеме;
  • оконечные контакты потенциометра подсоединить к контактам 5v и Gnd платы Arduino, а средний контакт потенциометра – к контакту A0.

Если батареи на 24 В у вас нет, то можно последовательно соединить две батареи на 12 В.

Функции транзисторов

Цифровые контакты платы Arduino не могут обеспечить достаточный ток для срабатывания реле на 5v. К тому же мы используем реле на 12v. Контакт Vin платы Arduino не может обеспечить достаточный ток для обоих реле. Поэтому транзисторы используются для «доставки» тока от контакта Vin платы Arduino к реле. Транзисторы управляются с помощью кнопок, один вывод которых подключен к их базе, а другой – к цифровому контакту платы Arduino

Функции платы Arduino

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

Функции MOSFET

MOSFET транзистор используется для управления скоростью вращения двигателя. Он включается и выключается (открывается и закрывается) с высокой частотой, поэтому и двигатель, соединённый последовательно со стоком MOSFET, управляется данной ШИМ (широтно-импульсной модуляцией). Чем больше коэффициент заполнения ШИМ, тем выше скорость вращения двигателя. Более подробно о подобном механизме управления с помощью ШИМ и MOSFET транзистора можно прочитать в статье про понижающий преобразователь напряжения постоянного тока на Arduino.

Расчеты тока

  • сопротивление катушки реле, измеренное нами с помощью мультиметра, составило примерно 400 Ом;
  • контакт Vin платы Arduino обеспечивает 12v;
  • поэтому получаем ток, необходимый для переключения реле равный 12/400 = 30 mA;
  • если энергия подается на оба реле, то получаем ток 30*2=60 mA;
  • контакт Vin платы Arduino рассчитан на максимальный ток 200mA, поэтому проблем с обеспечением тока возникнуть не должно.

Как использовать релейный модуль с устройствами высокого напряжения

Сначала давайте посмотрим на принципиальную схему. Как описано ранее, мы будем использовать адаптер 5 В в качестве отдельного источника питания для электромагнита, подключенного к JDVcc и заземляющему выводу. Вывод Arduino 5V будет подключен к выводу Vcc модуля, а вывод 7 к входному выводу In1 для управления реле. Теперь для части «высокое напряжение» нам понадобится вилка, розетка и кабель с двумя проводами. Один из двух проводов будет обрезан и подключен к общему и нормально разомкнутому контакту выходного разъема модуля. Таким образом, в этой конфигурации, когда мы активируем реле, мы получим замкнутую и рабочую высоковольтную цепь.

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

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

Платы дополнения (шилды)

Для увеличения возможностей материнских плат используют шилды (Shields) – расширяющие функционал дополнительные устройства. Они изготавливаются под конкретный форм-фактор, что отличает их от модулей, которые подключают к портам. Шилды стоят дороже модулей, однако работа с ними проще. Также они снабжены готовыми библиотеками с кодом, что убыстряет разработку собственных программ управления для “умного дома”.

Шилды Proto и Sensor

Эти два стандартных шилда не привносят каких-либо особых функций. Их используют для более компактного и удобного подключения большого числа модулей.

Proto Shield представляет собой практически полную копию оригинала в плане портов, а посередине модуля можно приклеить макетную плату. Это облегчает сборку конструкции. Такие дополнения существуют для всех полноформатных плат Arduino.

Proto Shield ставят поверх материнской платы. Это незначительно увеличивает высоту конструкции, но экономит много места в плоскости

Но если устройств очень много (более 10), то лучше использовать более дорогие коммутационные платы Sensor Shield.

У них не предусмотрен брэдборд, однако ко всем выводам портов индивидуально подведено питание и земля. Это позволяет не путаться в проводах и перемычках.

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

Также на этой плате есть колодки для простого подключения нескольких модулей: Bluetoots, SD-карты, RS232 (COM-port), радио и ультразвука.

Подключение вспомогательного функционала

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

Motor Shield. Он предназначен для управления скоростью и вращением маломощных двигателей. Оригинальная модель оснащена одним чипом L298 и может работать одновременно с двумя моторами постоянного тока или с одним сервоприводом. Есть и совместимая деталь от стороннего производителя, у которой два чипа L293D с возможностью управления вдвое большим количеством приводов.

Relay Shield. Часто используемый модуль с системах “умный дом”. Плата с четырьмя электромеханическими реле, каждое из которых допускает прохождение тока с силой до 5А. Этого достаточно для автоматического включения и отключения киловатных приборов или линий освещения, рассчитанных на переменный ток 220 В.

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

В LCD Shield встроены кнопки, позволяющие запрограммировать листание информации и выбор действий для подачи команд на микропроцессор

Data Logging Shield. Основная задача модуля – записывать данные с датчиков на полноформатную SD-карту объемом до 32 Gb с поддержкой файловой системы FAT32. Для записи на микро-SD карту нужно приобрести адаптер. Этот шилд можно использовать как хранилище информации, например, при записи данных с видеорегистратора. Производство американской фирмы Adafruit Industries.

SD-card Shield. Более простая и дешевая версия предыдущего модуля. Такие расширения выпускают многие производители.

EtherNet Shield. Официальный модуль для связи Arduino с Интернетом без участия компьютера. Есть слот для микро-SD карты, что позволяет записывать и отправлять данные через всемирную сеть.

Wi-Fi Shield. Позволяет осуществлять беспроводной обмен информацией с поддержкой режима шифрования. Служит для связи с интернетом и устройствами, которыми можно управлять через Wi-Fi.

GPRS Shield. Этот модуль, как правило, используют для связи “умного дома” с владельцем по мобильному телефону через SMS сообщения.

Модуль реле HL-52S для Ардуино

В качестве примера для этого урока по реле Arduino мы будем использовать 2-канальный релейный модуль HL-52S, который имеет 2 реле с номиналами 10 А при 250 и 125 В переменного тока и 10 А при 30 и 28 В постоянного тока. Выходной разъем высокого напряжения имеет 3 контакта, средний является общим контактом, и, как видно из маркировки, один из двух других контактов предназначен для нормально разомкнутого соединения, а другой — для нормально замкнутого соединения.

На одной из сторон модуля у нас есть 2 набора контактов. Первый имеет 4 контакта, заземление и контакт VCC для питания модуля и 2 входных контакта In1 и In2. Второй набор контактов имеет 3 контакта с перемычкой между JDVcc и контактом Vcc.

Внимание! При такой конфигурации электромагнит реле получает питание напрямую от платы Arduino, и если что-то пойдет не так с реле, микроконтроллер может быть поврежден

Как подключить реле к Ардуино

Для этого занятия нам потребуется:

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

GND — GND VCC — 5V In — любой цифровой порт

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

Скетч для управления реле от Ардуино

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

Что должен уметь «умный» дом?

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

Прежде всего, нужно определить, какими качествами должен и может обладать «умный» дом, если отбросить в сторону научную фантастику? Ведь в проекте вашего дома можно предусмотреть такие вещи, которые на деле мало выполнимы. Вряд ли вы сможете найти такую систему, которая будет сама выбирать вам одежду на работу. После некоторого исследования форумов и сайтов можно прийти к выводу, что такой дом должен уметь:

  1. Он должен управлять включением-выключением света. При наиболее прогрессивном векторе развития не просто отключать лампочки по сигналу с пульта или звуковому сигналу (хлопку), а, например, автоматически отключать свет, когда дома ни кого не будет или когда все в доме спят.
  2. Контроль температуры внутри дома. Это взаимодействие автоматизированного компьютера с вентиляционными, отопительными и им подобными системами. Принцип работы здесь достаточно прост: при изменении температуры, которое фиксирует датчик, система автоматически включает или выключает какие-либо нужные приборы. Здесь также есть перспективы, например создание такого набора команд, чтобы после того, как вы ложились спать, температура медленно понижалась (спать в глубокой фазе комфортнее в прохладной комнате), а после пробуждения (сигнала будильника), наоборот, повышалась (просыпаться приятнее в комнате более теплой).
  3. Мониторинг внешней среды. За этими научными терминами кроется определение уличной температуры, индикация дождя, снега и тому подобное. Как правило вся информация о погоде должна либо предаваться на какой-либо экран, а также может сопровождаться звуковыми сигналами. Один из конструкторов предложил идею более раннего пробуждения в случае дождя, так как в дождь человек медленнее собирается и дольше добирается на работу/учебу.
  4. Управление дверями и входом/выходом. В эту категорию включен довольно широкий спектр различных приспособлений, таких как охранная система (часто это набор ультразвуковых и инфракрасных датчиков, которые фиксируют наличие людей в помещений в тот момент, когда их там быть не должно), авто блокираторы двери, электронные замки различных модификаций (например, основанных на считывании отпечатков пальцев) и достаточно простые приспособления вроде автоматического закрывания двери, когда с вами живут люди, которые забывают закрывать ее за собой.
  5. Система оповещения о различных утечках, протечках, сюда же входит функция определения задымления и открытого огня в помещении. Модифицировать такую систему можно вплоть до того, чтобы она начинала звонить в пожарную службу.
  6. Прочие системы, видов которых может быть огромное множество. Из часто употребляемых можно выделить управление техникой (к примеру, автоматическое включение музыкальных приборов, телевизора), различные системы сбора данных (например, устройство раз в несколько минут выводит информацию о температуре воды в аквариуме).

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

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

Исходный код

Осталось написать простой код для нашего реле Ардуино и протестировать модуль на то, как он будет работать. Сам код достаточно простой, мы будем просто использовать контакт 7 для управления реле, поэтому мы определим его как выход и создадим программу, которая будет просто активировать и деактивировать реле каждые 3 секунды. Здесь я еще раз упомяну, что вход модуля работает обратно, поэтому низкий логический уровень на входе фактически активирует реле, и наоборот.

Были протестирована 3 устройства на основе данного примера. Сначала лампочка мощностью 100 Вт, затем настольная лампа и тепловентилятор. Все эти устройства работают на 220В. Таким образом возможно управлять любым высоковольтным устройством с помощью Arduino или любого другого микроконтроллера. И, конечно, возможности безграничны, например, мы можем управлять устройствами с помощью пульта дистанционного управления телевизора, Bluetooth, SMS, Интернета и так далее.

Источник

1Принцип действияи виды реле

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

Принцип действия замыкающего реле

Кроме того, существует множество других видов реле: переключающие, одноканальные, многоканальные, реле постоянного или переменного тока, и другие.