Симисторы или твердотельные реле

Щелкаем реле правильно: коммутация мощных нагрузок

Управление мощными нагрузками — достаточно популярная тема среди людей, так или иначе касающихся автоматизации дома, причём в общем-то независимо от платформы: будь то 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 и посмотреть, как меняется потребляемый мотором ток, получится вот такая картинка:

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

Читайте также:  Реле зарядки yamaha v max

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

Источник

Подключение твердотельного реле на симисторе к Ардуино.

Вывод, который через R1 подключается к первой ножке оптосимистора, подключаем к любому цифровому пину Андуино. В моём примере это будет 7 пин.

Вывод от 2-й ножки оптосимистора (у меня подключено через индикаторный светодиод) подключаем к пину GND Ардуино.

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

Скетч мигалка

void setup() <
pinMode(relayPin, OUTPUT);
>

void loop() <
digitalWrite(relayPin, LOW);
delay(5000);
digitalWrite(relayPin, HIGH);
delay(5000);
>

Подключение тактовой кнопки.

Тактовая кнопка подключается с подтягивающим резистором 10к. Один контакт кнопки подключается к пину 5V, второй к любому цифровому пину Arduino, у меня это 14 пин, который может быть как аналоговым (А0), так и цифровым.

Скетч с тактовой кнопкой, при нажатии на неё лампочка загорится, при отпускании — погаснет.

void setup() <
pinMode(relayPin, OUTPUT);
>

<
if(digitalRead(14)==HIGH)
<
digitalWrite(relayPin, HIGH);
delay(300);
>
else
<
digitalWrite(relayPin, LOW);
delay(300);
>
>

Тактовая кнопка в качестве выключателя.

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

void setup()
<
pinMode(relayPin, OUTPUT);

Результат выполнения скетча на видео.

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

Источник

Управление мощной нагрузкой

“Универсальное” электромагнитное реле

Электромагнитное реле является по сути управляемым механическим выключателем: подали на него ток – оно замкнуло контакты, сняли ток – разомкнуло. Контакты являются именно контактами: металлическими “пятаками”, которые прижимаются друг к другу. Именно поэтому такое реле может управлять как нагрузкой постоянного, так и переменного тока.

Сама катушка реле является неслабой индуктивной нагрузкой, что приводит к дополнительным проблемам (читай ниже), поэтому для управления “голым” реле нам понадобится дополнительная силовая и защитная цепь.

После изучения данного урока вы сами сможете её составить (транзистор и диод), а сейчас мы поговорим о модулях реле: готовая плата, на которой стоит само реле, а также цепи коммутации, защиты и даже оптическая развязка. Такие модули бывают “семейными” – с несколькими реле на борту. Спасибо китайцам за это! Смотрите варианты у меня в каталоге ссылок на Али.

Такое реле сделано специально для удобного управления с микроконтроллера: пины питания VCC (Vin, 5V) и GND подключаются к питанию, а далее реле управляется логическим сигналом, поданным на пин IN. С другой стороны стоит клеммник для подключения проводов, обычно контакты подписаны как NO, NC и COM. Это общепринятые названия пинов кнопок, переключателей и реле:

  • COM – Common, общий. Реле является переключающим, и пин COM является общим.
  • NO – Normal Open, нормально открытый. При неактивном реле данный контакт не соединён с COM. При активации реле он замыкается с COM.
  • NC – Normal Closed, нормально закрытый. При неактивном реле данный контакт соединён с COM. При активации реле он размыкается с COM.

Подключение нагрузки через реле думаю для всех является очевидным:

Важный момент: катушка реле в активном режиме потребляет около 60 мА, то есть подключать больше одного модуля реле при питании платы от USB не рекомендуется – уже появятся просадки по напряжению и помехи:

Такие модули реле бывают двух типов: низкого и высокого уровня. Реле низкого уровня переключается при наличии низкого сигнала (GND) на управляющем пине digitalWrite(pin, LOW) . Реле высокого уровня соответственно срабатывает от высокого уровня digitalWrite(pin, HIGH) . Какого типа вам досталось реле можно определить экспериментально, а можно прочитать на странице товара или на самой плате. Также существуют модули с выбором уровня:

На плате, справа от надписи High/Low trigger есть перемычка, при помощи которой происходит переключение уровня. Электромагнитное реле имеет ряд недостатков перед остальными рассмотренными ниже способами, вы должны их знать и учитывать:

  • Ограниченное количество переключений: механический контакт изнашивается, особенно при большой и/или индуктивной нагрузке.
  • Противно щёлкает!
  • При большой нагрузке реле может “залипнуть”, поэтому для больших токов нужно использовать более мощные реле, которые придётся включать при помощи… маленьких реле. Или транзисторов.
  • Необходимы дополнительные цепи для управления реле, так как катушка является индуктивной нагрузкой, и нагрузкой самой по себе слишком большой для пина МК (решается использованием китайского модуля реле).
  • Очень большие наводки на всю линию питания при коммутации индуктивной нагрузки.
  • Относительно долгое переключение (невозможно поставить детектор нуля, читай ниже), при управлении индуктивными цепями переменного тока можно попасть на большой индуктивный выброс, необходимо ставить искрогасящие цепи.

Важный момент связан с коммутацией светодиодных светильников и ламп, особенно дешёвых: у них прямо на входе стоит конденсатор, который при резком подключении в цепь становится очень мощным потребителем и приводит к скачку тока. Скачок может быть настолько большим, что 15-20 Ваттная светодиодная лампа буквально сваривает контакты реле и оно “залипает”! Данный эффект сильнее выражен на дешёвых лампах, будьте с ними аккуратнее (за инфу спасибо DAK). При помощи реле можно плавно управлять сильно инерционной нагрузкой, такой как большой обогреватель. Для этого нужно использовать сверхнизкочастотный ШИМ сигнал, у меня есть готовая библиотека. Не забываем, что реле противно щёлкает и изнашивается, поэтому для таких целей лучше подходит твердотельное реле, о котором мы поговорим ниже.

Читайте также:  Замена втягивающего реле стартера ниссан кашкай

Постоянный ток

Оптопара

Оптопара – отличный элемент, позволяет выполнять две функции: коммутировать нагрузку (пусть и небольшую) и полностью физически развязывает микроконтроллер с ней. Оптопары можно использовать для имитации нажатия кнопок у других внешних устройств, то есть замыкать чисто логический сигнал. Также можно использовать для разрывания питания различных датчиков и модулей в устройстве вместо транзистора. Оптопара состоит из двух частей: светодиод, который мы включаем при помощи микроконтроллера, и выходная часть, которая может быть разной (транзистор, симистор и проч.), таким образом сигнал с микроконтроллера отделяется от нагрузки через луч света, что очень важно при коммутации высоковольтных или каких-то чувствительных цепей. Для управления внешними устройствами надо брать оптопары с транзисторным выходом, например очень распространённую PC814 и её аналоги (FOD814, LTV814 и прочие), при желании можно выковырять почти из любого блока питания. Данная оптопара позволяет коммутировать нагрузку с напряжением до 60 Вольт и током до 50 мА. Покажу вырезку из даташита с этими параметрами, у остальных оптопар параметры будут называться точно так же:

Подключается оптопара следующим способом: светодиодом мы управляем с МК через резистор, а выход подключаем в разрыв нагрузки, соблюдая полярность. Что касается светодиода на управляющем входе оптопары – для него нужен резистор, как считать резистор для светодиода было рассказано в уроке про светодиоды. В большинстве случаев достаточно поставить резистор на 220 Ом, как и для любых светодиодов. Если ток светодиода будет меньше указанного, соответственно уменьшится максимальный ток выхода, что для этой оптопары уже критично (светодиод хочет аж 50 мА). Оптопара не предусмотрена для управления большой нагрузкой, обычно это коммутация других логических цепей, поэтому о токе можно не думать. Подключение нагрузки (условный нагрузочный резистор):

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

Существует также интересная оптопара TLP172 с мосфетным выходом, причём неполярным (может коммутировать нагрузку в любую сторону)! Управляет напряжением до 60 Вольт при токе до 400 мА – уже вполне серьёзная игрушка.

Транзистор

Самый компактный способ управлять нагрузкой постоянного тока – транзистор. Транзисторы бывают биполярные и полевые (MOSFET, полевик, ключ). Биполярные уже морально и физически устарели, имеют много характеристик и требуют дополнительного изучения темы, поэтому мы рассмотрим только полевые транзисторы. Схема типовая и выглядит вот так:

Или вот так, конкретно для корпуса to220. Также на этой схеме плата Ардуино питается от внешнего источника в пин Vin:

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

Что за резисторы?

  • Резистор на 100 Ом (можно ставить в диапазоне 100-500 Ом, мощность любая) выполняет защитную функцию: затвор полевика представляет собой конденсатор, в момент открытия затвора конденсатор начнёт заряжаться и в цепи пойдёт большой ток (практически короткое замыкание), который может повредить пин Ардуино. Резистор просто ограничивает ток в цепи пин-затвор и спасает пин от скачков тока. В целом можно его не ставить, но когда-нибудь оно обязательно сломается =)
  • Резистор на 10 кОм (можно ставить в диапазоне 5-50 кОм, мощность любая) выполняет подтягивающую функцию для затвора. Если случится так, что плата Ардуино выключена или сигнальный провод от неё отвалился – на затвор будут приходить случайные наводки и он может случайно открыться. Если в этот момент будет подключен источник питания – нагрузка тоже включится! Восстание машин начнётся именно с этого момента. Подтягивающий к GND резистор позволяет “прижать” затвор, чтобы он не открылся сам по себе. Имеет смысл ставить его прямо на корпус транзистора, если монтаж производится навесом:

Я привёл схему, в которой используется N-канальный полевой транзистор, который управляет линией GND. Существуют также P-канальные мосфеты, они управляют линией питания. Такие транзисторы в целом дороже, реже встречаются и имеют высокий порог напряжения открытия, т.е. для их работы придётся ставить ещё один транзистор (биполярный) и с его помощью подавать более высокий сигнал от внешнего источника на затвор P-канального полевика. Поэтому в 99% случаев просто используют более удобные N-канальные ключи. Как выбрать транзистор для своей задачи? Первым делом смотрим на напряжение открытия транзистора (как читать график в даташите – см. видео урок ниже), 100% подойдёт транзистор с пометкой Logic Level в описании или даташите: такие мосфеты точно будут работать на полную катушку от пина МК. Само собой ток и напряжение должны соответствовать (взяты с запасом) для нагрузки, которую будет коммутировать мосфет. Есть ещё параметр сопротивление открытого канала, на этом сопротивлении будет падать напряжение и превращаться в тепло. Для мощных нагрузок нужно рассматривать полевики с низким сопротивлением канала, чтобы сильно не грелись. Приведу свой список мосфетов в двух основных корпусах: выводной to220 и dpack для поверхностного монтажа, в нём “Ток при 3V” и “Ток при 5V” означает максимальный ток через транзистор (на нагрузку) в Амперах при управлении логическим сигналом 3 и 5 Вольт. Максимальное напряжение для нагрузки смотрите у конкретного транзистора, но у всех оно выше 24V. “R” – сопротивление открытого канала в миллиомах (10^-3 Ом). Также полевики отсортированы по увеличению цены в российских магазинах =)

Читайте также:  Распиновка реле вентилятора пежо 308
Маркировка R, мОм Ток при 3V Ток при 5V
IRLZ24NPBF 60 4 20
IRF3704ZPBF 7.9 10 >100
IRLB8743PBF 3.2 20 >100
IRL2203NPBF 7 30 >100
IRLB8748PBF 4.8 10 >100
IRL8113PBF 6 40 >100
IRL3803PBF 6 20 >100
IRLB3813PBF 1.95 20 >100
IRL3502PBF 7 >100 >100
IRL2505PBF 8 20 >100
IRF3711PBF 6 80 >100
IRL3713PBF 3 20 >100
IRF3709ZPBF 6.3 40 >100
AUIRL3705N 6.5 20 >100
IRLB3034PBF 1.7 >100 >100
IRF3711ZPBF 6 20 >100
Маркировка R, мОм Ток при 3V Ток при 5V
STD17NF03LT4 50 5 40
IRLR024NPBF 65 4 20
IRLR024NPBF 40 5 40
IRLR8726PBF 6 10 110
IRFR1205PBF 27 10
IRFR4105PBF 45 10
IRLR7807ZPBF 12 10 100
IRFR024NPBF 75 8
IRLR7821TRPBF 10 11 100
STD60N3LH5 8 30 160
IRLR3103TRPBF 19 11 100
IRLR8113TRPBF 6 40 110
IRLR8256PBF 6 10 110
IRLR2905ZPBF 13 100
IRLR2905PBF 27 20 90

Для слаботочных цепей мне нравится использовать полевик 2n7000 (купить мешок) – тянет до 400 мА. Корпус – компактный выводной to-92. Также у друзей-китайцев есть удобные готовые модули с мосфетами и всей необходимой обвязкой:

Ну и самый важный момент: на полевой транзистор можно подавать ШИМ сигнал для “плавного” управления нагрузкой: плавно менять скорость вращения мотора, яркость светодиодной ленты, мощность обогревателя и прочее прочее!


Твердотельное реле (SSR DC)

Более простой вариант – твердотельное реле (Solid State Relay, SSR) для постоянного тока (DC), найти можно на том же Aliexpress по запросу SSR DC. Внимательно смотрим на маркировку: под выходными клеммами должно быть написано VDC, т.е. постоянное напряжение. Твердотельное реле имеет стандартный корпус для моделей постоянного и переменного тока, поэтому нужно читать что написано и не перепутать. Также в маркировке после слова SSR обычно указан ток в Амперах, т.е. SSR-25 это реле на 25 Ампер. Максимальное напряжение указано под выходными клеммами.

Твердотельное реле подключается напрямую к Arduino, пин “-” к GND, “+” к любому цифровому пину. Выход реле ставится в разрыв цепи питания нагрузки, как выключатель. Важно не перепутать плюс и минус, потому что внутри реле представляет собой полевой транзистор на радиаторе =)

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

Симистор как вкл/выкл

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

Для управления нагрузкой только в режиме вкл/выкл желательно ставить оптопару с детектором нуля (например MOC306x), она будет сама отключать и включать нагрузку только в моменты перехода напряжения в сети через 0, что сильно уменьшает помехи в сети. Также здесь стоят резисторы: 220 Ом – для ограничения тока на светодиод оптопары (смотри характеристики оптопары, как подбирать резистор я писал выше). И резистор между оптопарой и симистором: 220-470 Ом с мощностью 1-2 Вт (будет греться). Симистор нужно брать с хорошим запасом по току, чтобы меньше грелся. Также симисторы бывают серии BTA и BTB, у BTA корпус (металлическая часть) изолирован и рекомендуется брать именно их, чтобы не шарахало током от радиатора. Распиновка компонентов:

У китайцев есть готовые модули с симистором и всей обвязкой. Кстати да, симистор греется под нагрузкой! Наличие радиатора обязательно, начиная с 200 Ватт.

Симистор как диммер

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

Для этой схемы нужна оптопара без детектора нуля, например серии MOC302x. Схема такой поделки может выглядеть вот так:

Резисторы 51к обязательно мощные, так как на них будет выделяться 1 Ватт: гасим лишнее напряжение, чтобы не сжечь светодиод оптопары детектора нуля. Также готовый модуль можно купить на Али. Выглядит он вот так и имеет пины питания, пин контроля симистора и вывод детектора нуля. Как со всем этим работать – смотрите видос ниже:

Где-то существует китайская библиотека для управления таким модулем, но она мне не очень понравилась. Привожу два примера для ручного управления таким диммером на базе библиотеки GyverTimers: одноканальный и многоканальный. В многоканальном режиме достаточно подключить к Ардуино выход детектора нуля только с одного модуля, а вот управляющие пины уже указать в скетче. Рассмотренные ниже примеры можно чуть оптимизировать, заменив digitalWrite() на быстрый аналог.

Источник

Оцените статью
Adblock
detector