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

  • Tutorial
Все знают, насколько ардуинщики гордятся миганием лампочками
Так как мигать светодиодами не интересно, речь пойдет про управление лампой накаливания на 220 вольт, включая управление её яркостью. Впрочем, материал относится и к некоторым другим типам нагрузки. Эта тема достаточно избита, но информация об особенностях, которые необходимо учесть, разрозненна по статьям и темам на форумах. Я постарался собрать её воедино и описать различия между схемами и обосновать выбор нужных компонентов.

Выбор управляемой нагрузки

Существует много различных типов ламп. Не все из них поддаются регулировке яркости. И, в зависимости от типа лампы, требуются разные способы управления. Про типы ламп есть хорошая статья. Я же буду рассматриваться только лампы, работающие от переменного тока. Для таких ламп существует три основных способа управления яркостью (диммирование по переднему фронту, по заднему фронту и синус-диммирование).
Способы диммированияИллюстрация в формате SVG, может не отображжаться в старых браузерах и, особенно, в IE
Отличаются они тем, какая часть периода переменного тока пропускается через лампу. О применимости этих методов можно прочитать тут. В этой статье речь пойдет только о диммировании по преднему фронту, так как это самая простой и распространенный способ. Он подходит для управления яркостью ламп накаливания (включая галогенные), в том числе подключенных через ферромагнитный (не электронный) трансформатор. Эта же схема может применяться для управления мощностью нагревательных элементов и, в некоторой степени, электромоторов, а также для включения/выключения других электроприборов (без управления мощностью).

Выбор элементной базы

Различных вариантов схем управления нагрузкой в интернете много. Отличаются они по следующим параметрам:Первые два пункта определяются элементной базой. Очень часто для управления нагрузкой используют реле, как проверенный многолетним опытом элемент. Но, если вы хотите управлять яркостью лампы, её необходимо включать и выключать 100 раз в секунду. Реле не рассчитаны на такую нагрузку и быстро выйдут из строя, даже если смогут переключаться так часто. Если в схеме используется MOSFET, то его можно открывать и закрывать в любой момент. Нам нем можно построить и RL, и RC, и синус димер. Но так как он проводит ток только в одну сторону, понадобится два транзистора на канал. Кроме того, высоковольтные MOSFET относительно дороги. Самым простым и дешевым способом является использование симистора. Он проводит ток в обоих направлениях и сам закрывается, когда через него прекращает течь ток. Про то, как он работает можно прочитать в статье DiHalt'а. Далее я буду полагаться на то, что вы это знаете.

Фазовая модуляция

Чтобы управлять яркостью лампы нам нужно подавать импульсы тока на затвор симистора в моменты, когда ток через симистор достигает определенной величины. В схемах без микроконтроллера для этого применяется настраиваемый делитель напряжения и динистор. Когда напряжение на симисторе превышает порог, при котором открывается динистор, ток проходит на затвор симистора и открывает его.
Если же управление ведется с микроконтроллера, то возможны два варианта:
  1. Подавать импульсы равно в тот момент времени, когда нужно. Для этого придётся завести на микроконтроллер сигнал с детектора перехода напряжения через ноль
  2. К затвору симистора подключить компаратор, на который завести сигнал с делителя напряжения и с аналогового выхода микроконтроллера
Первый способ хорош тем, что позволяет легко организовать гальваническую развязку высоковольтной части и микроконтроллера. О её важности будет сказано позже. Но любители arduino будут огорчены: чтобы лапа горела ровно, не вспыхивая и не погасая, импульсы нужно подавать вовремя. Для этого управлять выводом нужно из прерывания таймера, а моменты перехода напряжения через ноль фиксировать с помощью «input capture». Это «недокументированные» функции. Проблема решается отказом от библиотек arduino и внимательным чтением datasheet'а на процессоры avr. Это не так сложно, как кажется.
Второй способ управления симистором крайне прост в программном плане, но из-за отсутствия гальванической развязки я бы не стал его применять.


Гальваническая развязка

Самый простой способ управлять симистором — это подключить к затвору ножку микроконтроллера. Есть даже специальная серия симисторов BTA-600SW управляемых малыми токами.Но тогда контроллер и вся низковольтная часть не будет защищена от помех, гуляющих по бытовой сети. Некоторое из них могут быть достаточно мощными, чтобы сжечь микроконтроллер, другие будут вызывать сбои. Кроме того, сразу возникают проблемы со связью микроконтроллера с компьютером или другими микроконтроллерами: нужно будет делать развязку в линии связи или использовать дифференциальные линии, ведь, чтобы управлять симистором прямо с ноги микроконтроллера, нулевой потенциал для него должен совпадать с потенциалом нуля в бытовой сети. У компьютера или другого такого же микроконтроллера, подключенного в другой точке сети, нулевой потенциал почти наверняка будет другим. Результат будет плачевным.
Простой способ обеспечить гальваническую развязку: использовать драйвер симистора MOC30XX. Эти микросхемы отличаются:
  1. Расчетным напряжением. Если для сетей 110 вольт, есть для 220
  2. Наличием детектора нуля
  3. Током, открывающим драйвер
Драйвер с детектором нуля (MOC306X) переключается только в начале периода. Это обеспечивает отсутствие помех в электросети от симистора. Поэтому, если нет необходимости управлять выделяемой мощностью или управляемый прибор обладает большой инерционностью (например это нагревательный элемент в электроплитке), драйвер с детектором нуля будет оптимальным выбором. Но, если вы хотите управлять яркостью лампы освещения, необходимо использовать драйвер без детектора нуля (MOC305X) и самостоятельно открывать его в нужные моменты.
Ток, необходимый для открытия важен, если вы хотите управлять несколькими нагрузками одновременно. У MOC3051 он 15 мА, у MOC3052 10мА. При этом микроконтроллеры stm могут пропускать через себя до 80-120 мА, а avr до 200 мА. Точные цифры нужно смотреть в соответствующих datasheet'ах.


Устойчивость к помехам/возможность коммутации индуктивной нагрузки

В электросети могут быть помехи, вызывающие самопроизвольное открытие симистора или его повреждение. Источником помех может служить:
  1. Нагрузка, управляемая симистором (обмотка мотора)
  2. Фильтр (snubber), расположенный рядом с симистором и призванный его защищать
  3. Внешняя помеха (грозовой разряд)
Помеха может быть как по напряжению, так и по току, причем более критичны скорости изменения соответствующих значений, чем их амплитуды. В datasheet'ах соответствующие значения указаны как:
V — максимальное напряжение, при котором может работать симистор. Максимальное пиковое напряжение не намного больше.
I — Максимальный ток, который может пропускать через себя симистор. Максимальный пиковый ток как правило значительно больше.
dV/dt — Максимальная скорость изменения напряжения на закрытом симисторе. При превышении этого значения он самопроизвольно откроется.
dI/dt — Максимальная скорость изменения тока при открытии симистора. При превышении этого значения он сгорит из-за того, что не успеет полностью открыться.
(dV/dt)c — Максимальная скорость изменения напряжения в момент закрытия симистора. Значительно меньше dV/dt. При превышении симистор продолжит проводить ток.
(dI/dt)c — Максимальная скорость изменения тока в момент закрытия симистора. Значительно меньше dI/dt. При превышении симистор продолжит проводить ток.
Подробно о природе этих ограничений и о том, как сделать фильтр, защищающий от превышения этих величин описано в Application Note AN-3008. К немо можно только добавить, что существуют 3Q симисторы, у которых значения dV/dt и dI/dt выше, чем у обычных за счет невозможности работать в 4ом квадранте (что обычно не требуется).

Выбор симистора


Максимальный ток коммутации
Максимальный ток коммутации ограничивается двумя параметрами: максимальным током, который может пропустить симистор и количеством тепла, которое вы можете от него отвести. С первым параметром все просто, он указан в datasheet'е. Но если посмотреть внимательно, то при токе в 16 ампер на BTA16-600BW выделяется около 20 ватт. Такую грелку уже не получится засунуть в коробку выключателя без вентиляции.

Минимальный ток коммутации
Симистор сохраняет проводимость до тех пор, пока через него идёт ток. Минимально необходимый ток указан в datasheet'е под именем latching current. Соответственно, слишком мощный симистор не сможет включать маломощную лампочку так как будет выключаться, как только с затвора пропадёт управляющий сигнал. Но так, как этот сигнал мы самостоятельно формируем микроконтроллером, то можно удерживать управляющий сигнал почти до самого конца полупериода, тем самым убрав ограничение на минимальную нагрузку. Однако, если не успеть снять сигнал, симистор не закроется и лампа не погаснет. При плохо подобранных константах лампы, работающие на не полной яркости периодически вспыхивают.

Изоляция
Симисторы в корпусе TO-220 могут быть изолированными или не изолированными. Я сначала сделал ошибку и купил BT137, в результате радиаторы охлаждения оказались под напряжением, что в моем случае нежелательно. Симисторы с маркировкой BTA изолированы, с маркировкой BTB нет.

Защита от перегрузки
Не стоит полагаться на автоматические выключатели. Посмотрите на спецификацию, при перегрузке в 1.4 раза автомат обязан выключиться не ранее, чем через час. А быстрое размыкание происходит только при перегрузке в 5 раз (для автоматов типа C). Это сделано для того, чтобы автомат не отключался при включении приборов, требующих при старте значительно больше энергии, чем при постоянной работе. Примером такого прибора является холодильник.
Симистор нужно защитить отдельным предохранителем, либо контролировать ток через него и отключать его при перегрузке, давая остыть.

Защита от короткого замыкания

При перегорании лампы накаливания может образовываться искровой разряд, имеющий очень низкое сопротивление. В результате цепь фактически замыкается накоротко, что приводит к выгоранию симистора.
Симистор может выгорать из-за двух причин:
  1. Превышение dI/dt. Симистор не успевает открыться полностью, ток идет не через весь кристалл, образуются локальные горячие области, выжигающие кристалл.
  2. Превышение интеграла Джоуля I^2t. Задает количество теплоты, накопление которой в кристалле приведет к разрушению кристалла.
dI/dt ограничивается индуктивностью проводки и внутренней ёмкостью симистора. Так как dI/dt достаточно велика (50 А/с для BTA16), может хватить индуктивности подводящей проводки, если она достаточно длинная. Можно подстраховаться и добавить небольшую индуктивность в виде нескольких витков провода вокруг сердечника.
С превышением интеграла Джоуля можно бороться либо уменьшая время прохождения тока через симистор, либо ограничивая ток. Так как симистор не закроется, пока ток не перейдет через ноль, не вводя дополнительных размыкателей нельзя сделать время прохождения тока менее одного полупериода. В качестве такого размыкателя можно использовать:
  1. Быстродействующий плавкий предохранитель. Обычный предохранитель не подойдет так как симистор сгорит до того, как он сработает. Но стоят такие предохранители дороже новых симисторов.
  2. Геркон/реле. Если удастся найти такое, чтобы выдерживало кратковременные большие токи.
Можно пойти по другому пути. BTA16-600 может выдержать ток в 160 амер в течении одного периода. Если сопротивление замыкаемой цепи будет порядка 1.5 Ом, то полупериод он выдержит. Сопротивление проводки даст 0.5 Ом. Остается добавить в цепь сопротивление в 1 Ом. Схема станет менее эффективной и появится еще одна грелка, выделяющая при штатной работе до 16 Вт тепла (0.45 Вт при работе 100 ваттной лампы), зато симистор не сгорит, если успеть его вовремя выключить и позаботиться о хорошем охлаждении, чтобы оставался запас на нагрев во время КЗ.
Из этого сопротивления можно извлечь дополнительную выгоду: измеряя падение напряжения на нем, можно узнавать ток, протекающий через симистор. Полученное значение можно использовать для того, чтобы определять короткое замыкание или перегрузку и отключать симистор.

Заключение

Я не претендую на абсолютную верность всего написанного. Статья писалась для того, чтобы упорядочить знания, прочитанные на просторах интернета и проверить, не забыл ли я чего. В частности раздел, касающийся защиты от перегрузок я еще не опробовал на практике. Если я где-то не прав, мне было бы интересно узнать об ошибках.
В статье нет ни одной схемы: знакомые с темой и так знают их наизусть, а новичку придётся заглянуть в datasheet к MOC3052 или в AN-3008 и, возможно, он заодно узнает что-то еще и не будет бездумно реализовывать готовую схему.
Share post
AdBlock has stolen the banner, but banners are not teeth — they will be back

More
Ads

Comments 64

    +6
    Вы забыли довольно толстый пласт с линеаризацией подаваемой мощности. То есть если просто время открытия менять линейно, яркость при этом меняться будет нелинейно. Я немного сумбурно описывал этот момент в статье про реализацию ПИД регулятора в разделе «VI. Управление мощностью».
      +1
      Не забыл, просто не стал писать про особенности программной реализации. Это отдельная тема.
      В прошивке, которая у меня дома управляет светом, это реализовано.
      –5
      всегда дико удивляла ненависть сообщества easyelectronics к сообществу arduino…
        +1
        Какая ненависть? Просто я потратил довольно много времени, прежде чем девушка перестала жаловаться на мигание ламп освещения. Вот я и поделился своим рецептом.
          0
          Девушка как двигатель прогресса?
      • UFO just landed and posted this here
          0
          Ну тогда вот текущая версия силовой платы:
          image
          Пять каналов и детектор перехода через ноль. Сопротивления расположены с обратной стороны.
          В следующей версии буду пытаться добавить защиту от перегрузки и располагать контроллер прямо на плате.

          Но пониманию статьи ни эта ни ваша картинка не помогут. Полезные картинки в AN-3008.
            0
            Ага, а это контроллер силовой части диммера: www.innovative-dsp.com/products/images/hsamainimage.gif
              –1
              Хороший контроллер для диммера:

              Features:
              2 — 14 Bit, 65 MHz A/D Channels
              2 — 14 Bit, 65 MHz D/A Channels
              On Boards TCXO (5ppm)
              1 or 2 Million Gate FPGA for user code

              Applications:
              Digital Radio
              Electronic Warfare
              Vector Signal Generator
              Signal Identification

              Но я предпочитаю более дешевые варианты.
              0
              Подскажите, пожалуйста, в качестве детектора перехода через ноль что нужно использовать?
                0
                Это сильно зависит от требований. Если гальванической развязки микроконтроллера нет, то можно прямо на ногу заводить через делитель напряжения. Но отсутствие гальванической развязки автоматом означает, что никаких проводных интерфейсов не делаем.
                Если развязку делать, то можно использовать оптрон pc814. Он будет срабатывать на каждые пол-периода.

                А дальше вопрос в том, хотите ли вы добавить больше электроники и получать четкие пики в момент перехода через 0 или же усложнить прошивку, но использовать минимум деталей. В первом случае надо будет усиливать сигнал от оптрона. А во втором можно подключить его прямо к ногам микроконтроллера, использовав внутренний pullup резистор.
                  0
                  + посмотреть точный момент перехода сигнала в 0 — это слегка заранее, чем полуволна, и учитывать в расчетах
              +1
              Что за макетка? И где силовые ключи?
              • UFO just landed and posted this here
                  –5
                  > Freeduino

                  Опять всякая гадость!
                  • UFO just landed and posted this here
              0
              Но, если вы хотите управлять яркостью лампы освещения, необходимо использовать драйвер без детектора нуля (MOC305X) и самостоятельно открывать его в нужные моменты.

              А как вы определяете нужный момент фазы, если у вас контроллер гальванически развязан с сетью?
                0
                Это делается очень просто, на мк сами ловим переход через ноль, и все. а дальше просто открываем через N время которое рассчитывается программно.

                p.s. если требуется развязка МК то просто через оптопару ищем момент перехода через ноль.
                  +2
                  Детектор нуля тоже можно сделать с гальванической развязкой. Вот так:
                  digihouse.xsgroup.ru/wiki/2/Датчик_перехода_фазы_через_ноль_(для_диммирования)
                  На картинке выше это маленькая черная 4х выводная микросхема и синий конденсатор в левой части платы.
                    0
                    Спасибо. Как раз скоро понадобится делать управление канальной вентиляцией — нагревателем и двигателем.
                    0
                    Можно здесь посмотреть вариант реализации Dimmer
                      0
                      Давайте посмотрим на описанный по ссылке диммер. Никакого описания, почему схема должна быть такой, какая она есть. Почемы выбраны те или иные компоненты.

                      Детектор нуля использует одно сопротивление. Можно было снизить нагрев использовав конденсатор.

                      На схеме указано, что сопротивление 0.5W, однако на нем будет выделяться 0.59. Может и сгореть.

                      MOC подключен через сопротивление в 510 Ом, arduino использует питание 5В, падение на диоде 1.2В, ток будет 74мА. Внимательно смотрим в datashit и видим, что максимально допустимый ток для оптрона 50 мА. Также превышен максимально допустимый ток для вывода arduino.

                      Симистор ничем не защищен и не обосновано, почему его можно не защищать.

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

                      Для сравнения, у меня arduino mega управляет 12 лампами, слушает 10 выключателей и у нее остается куча свободного времени.
                        0
                        Виноват, мощность, выделяющуюся на сопротивлении посчитал неправильно. Там диод и ток идет только половину времени.
                          0
                          «Детектор нуля использует одно сопротивление. Можно было снизить нагрев использовав конденсатор.
                          На схеме указано, что сопротивление 0.5W, однако на нем будет выделяться 0.59. Может и сгореть.»

                          Похоже Вы не учили закон Ома.

                          «MOC подключен через сопротивление в 510 Ом, arduino использует питание 5В, падение на диоде 1.2В, ток будет 74мА. Внимательно смотрим в datashit и видим, что максимально допустимый ток для оптрона 50 мА. Также превышен максимально допустимый ток для вывода arduino.»
                          Интересно на Вашу формулу расчета посмотреть, но все же лучше будет если Вы в расчетах будете использовать закон Ома.

                          «Симистор ничем не защищен и не обосновано, почему его можно не защищать»
                          Защищать от чего?

                          «В прерываниях нельзя сидеть долго, из них нужно выходить сразу, как только это возможно.»
                          Сами придумали или есть ссылка на первоисточник? Хотелось бы на Ваш код взглянуть, в статье его к сожалению не увидел.
                            0
                            Похоже Вы не учили закон Ома

                            Не закон ома, а формулу электрической мощности
                            p = u^2 / r = 220^2 / 82k = 0.59
                            Чуть позже я поправился, что так как там диод, то ток течет только половину времени и теповыделение будет в два раза меньше.
                            Интересно на Вашу формулу расчета посмотреть, но все же лучше будет если Вы в расчетах будете использовать закон Ома.

                            I = U / R = (5В — 1.2В) / 510 Ом = 0.0074 = 7.45 мА.
                            Ошибся на порядок, пока ехал в электричке. Впрочем, этого тока может быть недостаточно, чтобы открыть указанные в схеме MOC'и
                            Защищать от чего?

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

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

                            Сворй код я сейчас выкладывать не хочу.
                              0
                              Не закон ома, а формулу электрической мощности
                              p = u^2 / r = 220^2 / 82k = 0.59

                              То есть по Вашему эта формула ни какого отношения к закону Ома не имеет?
                              И еще, при расчете Вы забыли учесть коэффициент «Эффективного напряжения»

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

                              Ошибся на порядок, пока ехал в электричке.
                              Учим поговорку.

                              Впрочем, этого тока может быть недостаточно, чтобы открыть указанные в схеме MOC'и
                              Опять Вы гадаете на кофейной гуще? Откройте DS на MOC

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

                              А помехи в электросети могут вызывать спонтанное включение лампы.
                              Для спонтанного включения лампы придется открыть симистор, а он как мы знаем гальванически развязан от контроллера, а питание контроллера стабилизировано и отфильтрует любую помеху. Наверно помехе как то придется зажечь светодиод оптрона, для открытия симистора?
                              Может объясните как?

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

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

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

                                0
                                То есть по Вашему эта формула ни какого отношения к закону Ома не имеет?

                                Кажется, буковки одинаковые. Не надо троллить.
                                И еще, при расчете Вы забыли учесть коэффициент «Эффективного напряжения»

                                Простите? 220 — это и есть эффективное напряжение. Не говорите о том, чего не понимаете.
                                Опять Вы гадаете на кофейной гуще? Откройте DS на MOC

                                Input trigger current. Смотрим на графу максимального значения. Только у 3023 оно менее 7.5 мА. Все остальные могут не открыться.
                                Для спонтанного включения лампы придется открыть симистор, а он как мы знаем гальванически развязан от контроллера, а питание контроллера стабилизировано и отфильтрует любую помеху. Наверно помехе как то придется зажечь светодиод оптрона, для открытия симистора?
                                Может объясните как?

                                Прочтите статью, которую пытаетесь комментировать. Зажигать светодиод оптрона не надо. Поищите на этой странице символы «dV/dt».
                                Я то и читать почти не умею.

                                Чукча не читатель — чукча писатель. ОК.
                                По моему это Вы статью написали, я Вам ее дописывать не собираюсь.
                                У меня статья про Dimmer лежит в черновиках, как допишу так сразу выложу

                                Простите, что «угнал» тему. Только сначала добейтесь стабильной работы своей системы.
                                Судя по всему у Вас его просто нет.

                                А вы, батенька, тролль. Давайте я вас подразню?
                                Вот обработчик прерывания таймера:
                                // Event queue interrupt
                                void processQueue() {
                                    static const uint16_t GAP = 20;
                                    uint16_t zeroTime = timer::elapsedSinceZero();
                                    uint16_t next;
                                
                                    if (prevZeroTime > zeroTime) {
                                        guard = false;
                                    }
                                    prevZeroTime = zeroTime;
                                    if (guard) {
                                        OCR5A = max_time(timer::zeroCross() + timer::sinePeriod(), TCNT5 + 5);
                                        return;
                                    }
                                
                                    do {
                                        next = bulbQueue.execute(zeroTime);
                                        zeroTime = timer::elapsedSinceZero();
                                    } while(next < zeroTime + GAP && next >= zeroTime);
                                    if (next == uint16_t(~0)) {
                                        guard = true;
                                        bulbQueue.resetIterator();
                                        OCR5A = max_time(timer::zeroCross() + timer::sinePeriod(), TCNT5 + 5);
                                        if (bulbQueue.swapScheduled()) {
                                            bulbQueue.swap();
                                            interrupts();
                                            bulbQueue.populateMutable();
                                        }
                                    } else {
                                        OCR5A = max_time(timer::zeroCross() + (uint16_t)next, TCNT5 + 5);
                                    }
                                }
                                
                                ISR(TIMER5_COMPA_vect) {
                                    processQueue();
                                }
                                

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

                                И эта реализация потокобезопасна.

                                Приведенный выше код распространяется под GPL3. Впрочем, воспользоваться вы им не сможете, так как для этого надо написать остальные 4000 строк прошивки.
                                  –2
                                  Чукча не читатель — чукча писатель. ОК.
                                  А вы, батенька, тролль.
                                  Собственно ничего умней я от Вас и не ожидал.
                                  Я не вижу смысла продолжать общение с недалеким человеком.
                                    +1
                                    Я рад, что вы умеете выбирать наиболее конструктивные части из ответов и отвечать только на них.
                                    Только, пожалуйста, не учите людей писать плохой код. Стремитесь к хорошему.
                      –1
                      Непонятно, зачем городить на дискретных симисторах и оптронах, когда кругом навалом SSR модулей с опторазвязкой и встроенной схемой коммутации при переходе через «0» для минимизации помех?
                        0
                        Я хочу управлять яркостью лампы накаливания, поэтому открывать симистор нужно не в момент перехода через ноль. Поэтому мне не подходит схема со «встроенной схемой коммутации при переходе через «0» для минимизации помех».

                        А еще так дешевле.
                          0
                          Есть модификации и с фазовым управлением, но они подороже.
                          Управляемые напряжением на ебее от $4 с доставкой.
                            0
                            Спасибо, буду знать. Все зависит от задачи. Например сейчас у меня один контроллер управляет 12 лампами. У него нет столько аналоговых выходов. Кроме того, у него аналоговые выходы от 0 до 5 вольт, пришлось бы ставить транзисторы, чтобы поднять его до 0-10 вольт. Корпусов получилось бы столько же.
                          0
                          Плавную регулировку мощности двигателя вентилятора на них можно сделать?
                            0
                            А зачем регулировать мощность электродвигателя? Для плавного пуска?
                              0
                              Плавный пуск- раз. И скорость вращения — два.
                                0
                                Для переменного тока регулировать скорость напряжением — моветон.
                                  0
                                  А как правильно? Частотный преобразователь?
                                    +2
                                    В идеале да. Мы же про обычный асинхронный двигатель говорим? Полистайте для понимания теории: model.exponenta.ru/electro/0080.htm очень хорошо расписаны принципы. В частности, взгляните на раздел «Искуственные механические характеристики»: при изменении напряжения имеем падение момента двигателя (а благодаря этому можно уменьшить пусковой ток, между прочим, но для малых мощностей пусковой ток — это не тот параметр, на который нужно обращать внимание), а скорость практически не меняется. А про скорость есть раздел «Регулирование частоты вращения асинхронных двигателе», для стандартного двигателя годится только изменение частоты.
                                      0
                                      Спасибо за ссылку. Там всё расписано про трёхфазный двигатель. Я так понимаю, что если делают двигатель с однофазным питанием, то две остальные фазы формируют искусственно на конденсаторах и индуктивностях?
                                      И про скорость. Если момент упадёт, то при достаточном механическом сопротивлении упадут и обороты. Так ведь? Это, по идее, то, что и нужно — вентилятор будет меньше шуметь и меньше воздуха нагнетать. Я так понимаю, что при регулировке напряжением КПД будет невысоким, и это единственная проблема. Делают ведь регуляторы скорости на симисторном ключе, и ничего. Вот пример: www.electrotest.ru/file/sb002-instruction.pdf
                                        0
                                        Да, бытовые моломощные это по сути SSR с фазовым управлением. По вашей ссылке как раз такой + ограничители мин/макс мощности, что при управлении от МК лишнее.
                                          +3
                                          Однофазный двигатель, это, грубо, двигатель с одной парой полюсов + некоторые особенности. Конденсатор + пусковая обмотка используются для запуска двигателя как раз из-за этих особенностей. Если очень вдаваться в теорию, то вот, например: www.induction.ru/library/book_001/glava4/4-17.html
                                          Теперь про регулирование скорости напряжением.
                                          image
                                          Красные — это механические характеристики двигателя при изменении напряжения,
                                          темная прямая — механическая характеристика вентилятора.
                                          Точки пересечения характеристик — так называемые рабочие точки системы
                                          dn — это изменение скорости при заданном изменении напряжения. Если напряжение будет еще меньше, характеристика двигателя уйдет еще левее, пересечение может оказаться ниже nкр (критической скорости) и двигатель остановится. При малом моменте нагрузки наклон механической характеристики будет меньше (будет ближе к оси ординат), напряжение можно будет менять в больших пределах, но отклик по скорости опять же уменьшится, т.к. характеристики двигателя выходят из одной точки.
                                            +1
                                            Пробовал управлять однофазником через ЛАТР — сущая мука.
                                        0
                                        Вот например вентилятор: www.vzlk.ru/cat/vent/vents/kanal/krug/krug-vent-bk100/
                                        Скорость вентиляторов можно регулировать с помощью бесступенчатого симисторного регулятора скорости
                                          +1
                                          В принципе, для вентиляторной нагрузки фокус с изменением напряжения удастся, но большого диапазона изменения скорости не будет. При значительном уменьшении напряжения режим работы станет неустойчивым и двигатель остановится.
                                            +1
                                            Там может быть и коллекторный двигатель, хоть это и редкость.
                                      0
                                      Насчет плавности не скажу, но включать/выключать можно, только они не любят индуктивную нагрузку, номинальный ток надо выбирать раз в 8-10 больше чем ток двигателя.
                                    0
                                    Очень полезная статья. Не знал, чтослишком мощный симистор не сможет включать маломощную лампочку так как будет выключаться, из-за этого несколько недель рабочего времени убито в свое время :(
                                    А вот картинок маловато.
                                      0
                                      Картинку в inkscape ручками рисовали?
                                        +1
                                        Нет. Графики рисовал в gnuplot, вывел в SVG, затем в inkscape собрал из них картинку.
                                        +1
                                        Я как-то писал про практическое применение симисторов в опторазвязке, кому интересно habrahabr.ru/post/123933/
                                          0
                                          А можете поделиться идеологией и способами коммутации систем умного дома?
                                          У меня получилось так, что я купил компоненты, с которыми уже можно начать что-то делать, и теперь не понимаю, с чего начать.
                                            +1
                                            Вопрос очень общий. Начать надо с понимания того, что такое «Умный дом» конкретно для вас. Что он должен делать, а что не должен:
                                            Управлять светом
                                            Управлять климатом (теплые полы/кондиционирование/вентиляция)
                                            Управлять музыкой/видео (мультирум)
                                            Перенаправлять телефонные звонки в комнату, в которой находится владелец
                                            Охранная сигнализация
                                            Пожарная сигнализация
                                            Энергоэффективность (следить за потреблением энергии и распределять нагрузку по времени)
                                            Готовить кофе/еду

                                            Исходя из этого брать оборудование, которое покрывает ваши нужды и работает по одному и тому же протоколу. Также можно посмотреть на limux mce, как на систему, способную объединить переферию, работающую по разным протоколам.
                                              0
                                              Да, с готовыми компонентами и готовыми контроллерами с типичными программами все более-менее понятно.
                                              Хочется же сколхозить на ардуино, чтобы дополнять и настраивать можно было до бесконечности (а потом, когда-нибудь, в новый дом просто купить готовую систему, потому что все уже придумали, ага).
                                              Оказалось, что воображения ответить на вопрос «что я хочу, чтобы оно делало в первую очередь» не хватает.

                                              Поэтому интересно, с чего начинаются самодельные умные дома, и в частности, с чего начинается управление светом.
                                                +1
                                                Начинаются с желания научиться чему-то новому и понимания, что в худшем случае я смогу сделать так, чтобы все работало как обычно, без переделывания проводки.
                                                Управление освещением — относительно простая, а главное, вполне самостоятельная, часть системы. И при этом довольно полезная:
                                                Я могу выключить весь свет выключателем у входной двери.
                                                Свет над длинным рабочим столом управляется одним выключателем, но, при желании, я могу осветить только нужную половину стола.
                                                Я могу регулировать яркость света.
                                                Есть мысли, что некоторые выключатели нужно было расположить иначе. Я могу добавить новые в тех местах, где это удобно.
                                            0
                                            Схемку бы
                                              0
                                              Схему чего? В зависимости от того, чем управлять, схема будет разная. В зависмости от напряжения, выдаваемого контроллером будут разные токоограничивающие сопротивления.
                                              Конкретные схемы есть в datashit'е к MOC3051 и в AN-3008. Копировать их сюда я не имею права: они не мои. Рисовать их заново не вижу смысла: они есть в открытом доступе и они хороши.
                                              +6
                                              внимательным чтением datashit'а

                                              тонко =)
                                                0
                                                У автора видимо особая неприязнь к этим документам, чтобы так их обзывать :-)
                                                  0
                                                  Спасибо. Поправил, где мог.
                                                +1
                                                Тип корпуса, вероятно, имелся в виду TO-220.
                                                При этом микроконтроллеры stm могут пропускать через себя до 80-120 мА, а avr до 200 мА
                                                это на все выводы вместе, а один вывод AVR, к примеру, 20-40 мА.
                                                  0
                                                  Спасибо, действительно имелся в виду TO-220. Поправил.

                                                  Ограничение по току на один вывод в данном случае не критично: даже более прожорливый MOC3051 потребляет меньше. Но если микроконтроллер может прокачать через себя только 80 мА, а подключать к нему MOC3051, то можно сделать не более 5ти каналов. На это ограничение я и хотел обратить внимание.
                                                  0
                                                  Доброго времени суток. У меня возник вопрос касательно расчёта током гранича всю день резистора для цепи затвора симистора. Вот тут подробнее, https://toster.ru/q/325764

                                                  Хочу понять, почему и изходя из чего выбирается тот или иной токо ограничивающий резистор.
                                                  Силовой симистор BTA16-600B, оптопара с симисторным выходом MOC3052.
                                                  Задача открывать силовой симистор в произвольное время. Силовая Нагрузка потребителя сопротивлением 30 Ом.
                                                  Задача как полное открытие 100% мощности так и неполное 1% мощности, плавно регулируемое мк за счёт обратной связи детектора нуля. Подскажите как считать? Повторюсь что вот этот же вопрос на тостере https://toster.ru/q/325764
                                                    0

                                                    Доброго времени суток! Детектор перехода через ноль отвечает только за отпирание или он будет держать симистор открытым до нуля, даже если ик-светодиод уже отключен. Просто думаю: если рулить по переднему фронту, то можно ли будет менять состояние симистора между переходами через ноль, или детектор нуля будет держать состояние до нуля?

                                                    Only users with full accounts can post comments. Log in, please.