40

Прямое управление симистором с микроконтроллера

Серия Регулятор со стабилизацией оборотов

Иногда возникает необходимость порулить с микроконтроллера чем-то на 220 вольт, задумчиво покручивая фазу. Стандартный способ - сделать это через симистор с оптроном. Если управляете лампочкой - вам повезло. Если чем-то вроде коллекторного мотора от стиралки (индуктивной нагрузкой) - вперед, навстречу приключениям.

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


Что же не так с оптроном?


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


- Снаббер непосредственно на сам мотор - довольно тоскливый вариант. И по размерам и по расчетам. Допустим, мы хитровывернутые, и знаем про Subberless Triac (c dV/dt 200-1000). Берем, ставим. Победа? А вот хрен! Внезапно обнаруживается, что силовой триак работает, но оптический продолжает дурить по тем же самым причинам. И если бесснабберные силовые симисторы валяются занедорого на каждом углу, то оптроны - нет.


- Ну ок, делаем snubber network непосредственно на оптрон. Подробности в Panasonic Application Note 030, Driving Triacs with Phototriacs. Все понятно, номиналы не очень большие, можно развести SMD на плате. Но все равно, SMD-резисторов понадобится несколько последовательно, и совсем компактно развести не получится.

Альтернативы


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


- Делать питание микроконтроллера с "общим плюсом", огребая альтернативные приключения с негативными LDO и заведением сигналов на АЦП.

- Управлять триаком импульсами через конденсатор.


Последний подход почему-то не очень распространен, но весьма интересен. Для подробностей рекомендую почитать ST AN440. Triac control with a microcontroller powered from a positive supply. Нам нужен самый простой вариант:

Я такое проверял, работает отлично. И возможно кому-то понравится даже для управления лампочкой, за счет простоты. Компоненты низковольтные, можно располагать очень компактно.


Но и у этой схемы есть ограничения - ток микроконтроллера не резиновый, да и блока питания тоже. Поэтому нам подойдут только те бесснабберные триаки, которым для управления хватает 10ма (это на ток нагрузки ~ 4А). Если вам такого достаточно - ну и отлично. Лично мне хватило. Но что делать если нужны более толстые триаки, с током управления 35-60ма? Честно скажу, сам не пробовал, но придумал вот такой вариант:

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


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


Что еще нужно знать


- Чтобы триак оставался включенным после управляющего импульса, это надо делать не при нулевом напряжении, а немного позже

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


Можно конечно начать контролировать фазу тока, но по личному опыту - просто сделайте задержку на 10% от zero cross и не заморачивайтесь. Мотор вносит задержку процентов пять, ну может семь для экзотических случаев. А если посчитать не использованную энергию - там будут единицы процентов. Так что тут оптимизировать нет смысла.


Надеюсь, это кому-нибудь пригодится или будет хотя бы интересным :).

Вы смотрите срез комментариев. Показать все
1
Автор поста оценил этот комментарий
при нулевом напряжении и закрытом тиристоре нет никакого запаздывания. тиристор заперт = тока нет. тиристор не хочет открываться по одной причине: при нулевом напряжении, даже откройся тиристор, ток будет нулевым, что ниже тока удержания
раскрыть ветку (28)
0
Автор поста оценил этот комментарий

У вас не будет закрытого симистора при нулевом напряжении, когда нагрузка индуктивная. Неожиданно, правда :) ?

раскрыть ветку (27)
2
Автор поста оценил этот комментарий
Вот неплохие AN, сам разбирался, когда магнетронами управлял. https://www.google.com/url?sa=t&source=web&rct=j&amp...
https://www.google.com/url?sa=t&source=web&rct=j&amp...
У магнетронов full-wave в основном управление и первое включение желательно в максимум напряжения делать, в статье приводятся расчёты и модели по броску тока в время включения. Спецы до нас поставили MOC с zero cross и включали магнетроны произвольно и симисторы часто горели. В итоге поставили MOC без zero cross и сделали тонкую подстройку момента включения. Даже вроде опытным путем подбирали задержку для минимума броска тока, получилось действительно около максимума напряжения.
раскрыть ветку (17)
0
Автор поста оценил этот комментарий

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


Насчет магнетронов, IMO ключевой момент у любой индуктивности, который имеет значение - это если сердечник в насыщение войдет. Не знаю, можно ли такое с первого импульса устроить, есть сомнения (но я могу многого не знать). Мне кажется, в первую очередь важно помнить, что индуктивность желательно коммутировать "симметрично" на второй полуволне, чтобы сердечник нормально перемагничивался.


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

раскрыть ветку (16)
0
Автор поста оценил этот комментарий
Магнетроны не коммутируют каждую полуволну. Их коммутируют на определённое количество целых волн, важен только первоначальный момент включения.
раскрыть ветку (15)
0
Автор поста оценил этот комментарий

Интересно. Не знал что индуктивность могут настолько впритык делать. По идее оно тогда должно очень не любить броски сетевого напряжения.

раскрыть ветку (14)
1
Автор поста оценил этот комментарий
не работал с магнетронами, но подозреваю, что они питаются через здоровенный трансформатор, стоящий в той же микроволновке. а вот тут уже легко поймать насыщение и причин тому две:
- сетевые трансформаторы обычно считают с небольшим насыщением - петля намагничивания трансформаторного железа это позволяет;
- если последняя полуволна при подключенном трансформаторе была в условном плюсе, то и остаточная намагниченность магнитопровода будет в условном плюсе. при новом включении трансформатора на такой же "плюсовой" полуволне магнитопроводу некуда деваться - он от "плюсовой" остаточной намагниченности лезет дальше в "плюс", что неминуемо приводит к глубокому насыщению и превращает железку в дуб мореный.
очевидно, что с первой причиной бороться никто не станет - это экономически обосновано. а борьба со второй причиной - либо при каждом включении трансформатора менять полярность на отрицательную по отношению к последней, либо ограничить насыщающий фактор (вольт-секундная площадь). простейшие умозаключения приводят к тому, что половина полуволны гарантированно не насыщает магнитопровод, следовательно, включение в верхней точке синусоиды не вызовет аварийных бросков при любой относительной полярности импульса.
зы есть и другие способы борьбы с пусковым током трансформатора, но они малоприменимы к микроволновке
раскрыть ветку (13)
1
Автор поста оценил этот комментарий

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


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

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

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

А почему бы тогда не включать на спаде, при приближении к нулю как примерно на величину гистерезиса?
Мне просто случилось немного больно от прочитанных тонкостей т.к. хотел делать софт старт компрессора кондея (до вменяемого предела конечно, иначе его не стронуть). Или хотя бы для начала пускатель убрать, з0бодал хлопать.

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

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

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

раскрыть ветку (6)
0
Автор поста оценил этот комментарий
если речь идет про индуктивную нагрузку, то резкое прикладывание напряжения не вызовет мгновенное нарастание тока. а неприятны именно резкие изменения тока
раскрыть ветку (5)
1
Автор поста оценил этот комментарий
включать на спаде, учитывая гистерезис конкретной железяки - суть кустарщина и радиогубительство. на производстве никто не спросит разработчика включателя и просто поменяют материал магнитопровода. считать все заново? не наш метод! ловим начало спада и гарантированно можем работать с любым железом
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

ну про конкретно гистерезис я конечно прогнал, так - плюс/минус километр прикинуть)

Автор поста оценил этот комментарий
неожиданно. если я подключил напряжение к схеме, но не открыл тиристор, то откуда возьмется открытый тиристор? по моему опыту, пока тиристор не откроешь тем или иным способом, он считается запертым, если исключить экзотику в виде запираемых тиристоров
раскрыть ветку (8)
1
Автор поста оценил этот комментарий

Вы как истинный математик, пишите совершенно верные, но одновременно совершенно бесполезные вещи. Ни кому не интересен момент подачи питания на схему. Интерес представляет установившийся режим, когда симистор коммутируется на каждой полуволне. И после того как вы его включите, при индуктивной нагрузке он закроется после zero cross, а не одновременно. И так на каждой полуволне.

раскрыть ветку (7)
0
Автор поста оценил этот комментарий

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

возможно, я некорректно понял вот эти ваши слова. ну тут уж претензия к обоим - мне за непонятливость, вам - за невнятность.

раскрыть ветку (6)
0
Автор поста оценил этот комментарий

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

раскрыть ветку (5)
0
Автор поста оценил этот комментарий
ну тогда подкину вам еще путного: десять миллиампер для мелкого симистора заявлено при НКУ. когда будет минус сорок - он почти гарантированно не откроется. поэтому для промышленного диапазона температур точок надо поднимать.
раскрыть ветку (4)
Автор поста оценил этот комментарий

Никогда не сталкивался. Можете показать, где в даташите пишут что Igt надо поднимать для сильно отрицательных температур? И на сколько именно.

раскрыть ветку (3)
0
Автор поста оценил этот комментарий
вот
Иллюстрация к комментарию
0
Автор поста оценил этот комментарий
так там же картинки нарисованы. так и написано, что вот это ток управления по отношению к нормализованному. вполне приемлемые величины, кстати
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Нашел. https://www.st.com/resource/en/datasheet/z04.pdf Figure 6. Мне не особо актуально, но спасибо за инфу, буду иметь в виду. Вообще из stm32 можно 80ма вымутить, если три ножки запараллелить. Но из них до триака ~ 30 доползут. Последний вариант схемы - как раз на всякие стремные случаи, чтобы не устраивать броски по питанию, когда потребление в пять раз подскакивает.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества