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

Новые статьи

● Проект 12: Управляем реле через транзистор

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

Необходимые компоненты:

Реле - это электрически управляемый, механический переключатель, имеет две раздельные цепи: цепь управления, представленная контактами (А1, А2), и управляемая цепь, контакты 1, 2, 3 (см. рис. 12.1).

Цепи никак не связаны между собой. Между контактами А1 и А2 установлен металлический сердечник, при протекании тока по которому к нему притягивается подвижный якорь (2). Контакты же 1 и 3 неподвижны. Стоит отметить, что якорь подпружинен, и пока мы не пропустим ток через сердечник, якорь будет прижатым к контакту 3. При подаче тока, как уже говорилось, сердечник превращается в электромагнит и притягивается к контакту 1. При обесточивании пружина снова возвращает якорь к контакту 3.

При подключении реле к Arduino контакт микроконтроллера не может обеспечить мощность, необходимую для нормальной работы катушки. Поэтому следует усилить ток - поставить транзистор. Для усиления удобнее применять n-p-n-транзистор, включенный по схеме ОЭ (см. рис. 12.2). При таком способе можно подключать нагрузку с большим напряжением питания, чем питание микроконтроллера.
Резистор на базе - ограничительный. Может варьироваться в широких пределах (1-10 кОм), в любом случае, транзистор будет работать в режиме насыщения. В качестве транзистора может быть любой n-p-n-транзистор. Коэффициент усиления практически не имеет значения. Выбирается транзистор по току коллектора (нужный нам ток) и напряжению коллектор-эмиттер (напряжение, которым запитывается нагрузка).

Для включения реле, подключенного по схеме с ОЭ, на вывод Arduino необходимо подать 1, для выключения - 0. Подключим реле к плате Arduino по схеме на рис. 12.3 и напишем скетч управления реле. Каждые 5 секунд реле будет переключаться (включаться/выключаться). При переключении реле раздается характерный щелчок.
Содержимое скетча показано в листинге 12.1.

int relayPin = 10 ; // подключение к выводу D10 Arduino void setup () { pinMode(relayPin, OUTPUT); // настроить вывод как выход (OUTPUT) } // функция выполняется циклически бесконечное число раз void loop () { digitalWrite(relayPin, HIGH); // включить реле delay(5000 ); digitalWrite(relayPin, LOW); // выключить реле delay(5000 ); }

Порядок подключения:

1. Подключаем элементы к плате Arduino по схеме на рис. 12.3.
2. Загружаем в плату Arduino скетч из листинга 12.1.
3. Каждые 5 секунд происходит щелчок переключения реле если подключить контакты реле, например в разрыв подключенной к сети 220 В патрона с лампой накаливания, то увидим процесс включения/выключения лампы накаливания раз в 5 секунд (рис. 12.3).


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

Нагрузки постоянного тока.

Первый способ - подключение через резистор

Самый простой способ - подходит для несильноточных нагрузок - светодиодов.

Rгас = (U/ I) – Rн

Где U - напряжение питания(в Вольтах), I - допустимый ток через схему(в Амперах), Rн - сопротивление нагрузки(в Омах)

Второй способ - Биполярный транзистор

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

В данной схеме применен n-p-n транзистор, включенный по схеме ОЭ. При таком способе можно подключать нагрузку с большим напряжением питания, чем питание Вашего устройства. Резистор R1 нужен для ограничения тока, протекающего через транзистор, обычно ставится на 1-10 кОм.

Третий способ - полевой транзистор

Для управления нагрузкой, ток которой составляет десятки ампер(особо мощные электродвигатели, лампы и тд) применяется полевой транзистор.

Резистор R1 ограничивает ток через затвор. Так как полевой транзистор управляется малыми токами и если выход Вашего устройства, к которому подключен затвор, окажется в высокоимпедансном Z-состоянии полевик начнет открываться-закрываться непредсказуемо, вылавливая помехи. Для устранения такого поведения выход устройства «прижимается» к земле резистором 10кОм.
У полевого транзистора есть особенность - его медлительность. При превышении допустимой частоты он станет перегреватся.

Переменный ток.

Первый способ - реле.

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

Недостатки реле - его медлительность и механический износ деталей.

В следующих статьях будут устройства, которые должны управлять внешней нагрузкой. Под внешней нагрузкой я понимаю все, что прицеплено к ножкам микроконтроллера – светодиоды, лампочки, реле, двигатели, исполнительные устройства … ну Вы поняли. И как бы не была заезжена данная тема, но, чтобы избежать повторений в следующих статьях, я все-же рискну быть не оригинальным — Вы уж меня простите:). Я кратенько, в рекомендательной форме, покажу наиболее распространенные способы подключения нагрузки (если Вы что-то захотите добавить – буду только рад).
Сразу договоримся, что речь идет о цифровом сигнале (микроконтроллер все-таки цифровое устройство) и не будем отходить от общей логики: 1 -включено, 0 -выключено. Начнем.

Нагрузкой постоянного тока являются: светодиоды, лампы, реле, двигатели постоянного тока, сервоприводы, различные исполнительные устройства и т.д. Такая нагрузка наиболее просто (и наиболее часто) подключается к микроконтроллеру.

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

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

Rгасящий = (5v / 0.02A) – Rн = 250 – Rн

Как видно, даже в самом худшем случае, когда сопротивление нагрузки равно нулю достаточно 250 Ом для того, что бы ток не превысил 20мА. А значит, если неохота чего-то там считать — ставьте 300 Ом и Вы защитите порт от перегрузки. Достоинство способа очевидно – простота.

1.2 Подключение нагрузки при помощи биполярного транзистора.
Если так случилась, что Ваша нагрузка потребляет более 20мА, то, ясное дело, резистор тут не поможет. Нужно как-то увеличить (читай усилить) ток. Что применяют для усиления сигнала? Правильно. Транзистор!

Для усиления удобней применять n-p-n транзистор, включенный по схеме ОЭ . При таком способе можно подключать нагрузку с большим напряжением питания, чем питание микроконтроллера. Резистор на базе – ограничительный. Может варьироваться в широких пределах (1-10 кОм), в любом случае транзистор будет работать в режиме насыщения. Транзистор может быть любой n-p-n транзистор. Коэффициент усиления, практически не имеет значения. Выбирается транзистор по току коллектора (нужный нам ток) и напряжению коллектор-эмиттер (напряжение которым запитывается нагрузка). Еще имеет значение рассеиваемая мощность — чтоб не перегрелся.

Из распространенных и легко доступных можно заюзать BC546, BC547, BC548, BC549 с любыми буквами (100мА), да и тот-же КТ315 сойдет (это у кого со старых запасов остались).
- Даташит на биполярный транзистор BC547

1.3 Подключение нагрузки при помощи полевого транзистора.
Ну а если ток нашей нагрузки лежит в пределах десятка ампер? Биполярный транзистор применить не получиться, так как токи управления таким транзистором велики и скорей всего превысят 20мА. Выходом может служить или составной транзистор (читать ниже) или полевой транзистор (он же МОП, он же MOSFET). Полевой транзистор просто замечательная штука, так как он управляется не током, а потенциалом на затворе. Это делает возможным микроскопическим током на затворе управлять большими токами нагрузки.

Для нас подойдет любой n-канальный полевой транзистор. Выбираем, как и биполярный, по току, напряжению и рассеиваемой мощности.

При включении полевого транзистора нужно учесть ряд моментов:
— так как затвор, фактически, является конденсатором, то в моменты переключения транзистора через него текут большие токи (кратковременно). Для того чтобы ограничить эти токи в затвор ставиться ограничивающий резистор.
— транзистор управляется малыми токами и если выход микроконтроллера, к которому подключен затвор, окажется в высокоимпедансном Z-состоянии полевик начнет открываться-закрываться непредсказуемо, вылавливая помехи. Для устранения такого поведения ножку микроконтроллера нужно «прижать» к земле резистором порядка 10кОм.
У полевого транзистора на фоне всех его положительных качеств есть недостаток. Платой за управление малым током является медлительность транзистора. ШИМ, конечно, он потянет, но на превышение допустимой частоты он Вам ответит перегревом.

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

Микросхема очень легко подключается к микроконтроллеру (просто ножка к ножке) имеет удобную разводку (вход напротив выхода) и не требует дополнительной обвязки. В результате такой удачной конструкции ULN2003 широко используется в радиолюбительской практике. Соответственно достать ее не составит труда.
- Даташит на сборку Дарлингтонов ULN2003

Если Вам нужно управлять устройствами переменного тока (чаще всего 220v), то тут все сложней, но не на много.

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

Достоинства такого способа большой коммутируемый ток (зависит от выбранного реле), гальваническая развязка. Недостатки: ограниченная скорость/частота включения и механический износ деталей.
Что-то рекомендовать для применения не имеет смысла — реле много, выбирайте по нужным параметрам и цене.

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


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

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

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

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

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

Работа схемы

Начнем с программы инициализации контроллера. Вывод GP0 должен быть сконфигурирован на вход. При этом он будет иметь высокоимпедансное состояние. Еще такое состояние вывода называют третьим состоянием. Можно представить, что вывод 7 DD1 висит в воздухе и на состояние оптронов не оказывает никакого влияния. По последовательной цепи управления, состоящей из стабилитрона VD1, резистора R1, светодиодов оптронов U1 и U2, резистора R2 и еще одного стабилитрона VD2, в таком состоянии ток протекать не будет. Потому что суммарное пробивное напряжение стабилитронов (3В+3В=6В), имеющих напряжение стабилизации 3 вольта, больше, чем напряжение, приложенное к этой цепи 5 вольт.

Для включения реле Р1 необходимо в программе микроконтроллера вывод GP0 сконфигурировать на выход и оставить его в нулевом состоянии. Таким образом, напряжение питания 5 вольт будет приложено к верхней половине вышеупомянутой цепи. В данной ситуации пяти вольт уже хватает, чтобы открылся стабилитрон VD1 и через светодиод оптрона U1 стал протекать открывающий его транзистор ток. При величине резистора, указанной на схеме 130 Ом, через светодиод оптрона протекал ток, примерно 5 мА. Для большинства оптронов этого вполне достаточно для полного открывания его транзистора. Через открытый транзистор оптрона и резистор R3 начнет подаваться напряжение на базу транзистора VT1, это приведет к его открыванию и соответственно к срабатыванию реле Р1. Что будут коммутировать реле, думать вам. Для выключения реле следует перевести вывод контроллера опять в третье состояние. Для включения реле Р2 необходимо так же перевести вывод микроконтроллера GP0 в состояние вывода информации и сформировать на нем логическую «1». Теперь транзистор выходного буфера контроллера закоротит верхнюю половину цепи управления, и напряжение питания +5 вольт будет подано на нижнюю половину цепи управления. Далее сработает оптрон U2, а за ним транзистор VT2 с реле Р2. Для выключения реле опять следует перевести вывод контроллера опять в третье состояние.

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

Привет, Geektimes!

Управление мощными нагрузками - достаточно популярная тема среди людей, так или иначе касающихся автоматизации дома, причём в общем-то независимо от платформы: будь то Arduino, Rapsberry Pi, Unwired One или иная платформа, включать-выключать ей какой-нибудь обогреватель, котёл или канальный вентилятор рано или поздно приходится.

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

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

Я же хочу рассказать про простую и довольно очевидную, но при этом редко встречающуюся схему, умеющую вот такое:

  • Гальваническая развязка входа и нагрузки
  • Коммутация индуктивных нагрузок без выбросов тока и напряжения
  • Отсутствие значимого тепловыделения даже на максимальной мощности

Но сначала - чуть-чуть иллюстраций. Во всех случаях использовались реле TTI серий TRJ и TRIL, а в качестве нагрузки - пылесос мощностью 650 Вт.

Классическая схема - подключаем пылесос через обычное реле. Потом подключаем к пылесосу осциллограф (Осторожно! Либо осциллограф, либо пылесос - а лучше оба - должны быть гальванически развязаны от земли! Пальцами и яйцами в солонку не лазить! С 220 В не шутят!) и смотрим.

Включаем:

Пришлось почти на максимум сетевого напряжения (пытаться привязать электромагнитное реле к переходу через ноль - задача гиблая: оно слишком медленное). В обе стороны бабахнуло коротким выбросом с почти вертикальными фронтами, во все стороны полетели помехи. Ожидаемо.

Выключаем:

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

Итак, «голым» реле коммутировать индуктивную нагрузку плохо. Что сделаем? Попробуем добавить снаббер - RC-цепочку из резистора 120 Ом и конденсатора 0,15 мкФ.

Включаем:

Лучше, но не сильно. Выброс сбавил в высоте, но в целом сохранился.

Выключаем:

Та же картина. Мусор остался, более того, осталось искрение контактов реле, хоть и сильно уменьшившееся.

Вывод: со снаббером лучше, чем без снаббера, но глобально проблемы он не решает. Тем не менее, если вы желаете коммутировать индуктивные нагрузки обычным реле - ставьте снаббер. Номиналы надо подбирать по конкретной нагрузке, но 1-Вт резистор на 100-120 Ом и конденсатор на 0,1 мкФ выглядят разумным вариантом для данного случая.

Литература по теме: Agilent - Application Note 1399, «Maximizing the Life Span of Your Relays ». При работе реле на худший тип нагрузки - мотор, который, помимо индуктивности, при старте имеет ещё и очень низкое сопротивление - добрые авторы рекомендуют уменьшить паспортный ресурс реле в пять раз .

А теперь сделаем ход конём - объединим симистор, симисторный драйвер с детектированием нуля и реле в одну схему.

Что есть на этой схеме? Слева - вход. При подаче на него «1» конденсатор C2 практически мгновенно заряжается через R1 и нижнюю половину D1; оптореле VO1 включается, дожидается ближайшего перехода через ноль (MOC3063 - со встроенной схемой детектора нуля) и включает симистор D4. Нагрузка запускается.

Конденсатор C1 заряжается через цепочку из R1 и R2, на что уходит примерно t=RC ~ 100 мс. Это несколько периодов сетевого напряжения, то есть, за это время симистор успеет включиться гарантированно. Далее открывается Q1 - и включается реле K1 (а также светодиод D2, светящий приятным изумрудным светом). Контакты реле шунтируют симистор, поэтому далее - до самого выключения - он в работе участия не принимает. И не греется.

Выключение - в обратном порядке. Как только на входе появляется «0», C1 быстро разряжается через верхнее плечо D1 и R1, реле выключается. А вот симистор остаётся включённым примерно 100 мс, так как C2 разряжается через 100-килоомный R3. Более того, так как симистор удерживается в открытом состоянии током, то даже после отключения VO1 он останется открытым, пока ток нагрузки не упадёт в очередном полупериоде ниже тока удержания симистора.

Включение:

Выключение:

Красиво, не правда ли? Причём при использовании современных симисторов, устойчивых к быстрым изменениям тока и напряжения (такие модели есть у всех основных производителей - NXP, ST, Onsemi, etc., наименования начинаются с «BTA»), снаббер не нужен вообще, ни в каком виде.

Более того, если вспомнить умных людей из Agilent и посмотреть, как меняется потребляемый мотором ток, получится вот такая картинка:

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

Да, схема сложнее и дороже, чем обычное реле или обычный симистор. Но часто она того стоит.