Я разработал устройства плавного пуска с использованием процессоров PIC16C74A / F77. Пересечение нуля может быть сложным, если вам также приходится работать в шумной обстановке.
Если вам не нужно, чтобы процессор был изолирован от линии, нет ничего плохого в том, что пара мощных резисторов питает вывод процессора. Я бы использовал пару диодов Шоттки, чтобы усилить диоды внутренней защиты, просто для надежности, но все будет работать нормально. Если вам нужна изоляция, используйте оптоизолятор с транзисторным выходом. Обратите внимание на скорость переключения оптики и минимизируйте ток транзисторного коллектора, чтобы максимизировать скорость переключения.
Сказав это, давайте перейдем к шуму. Если вы контролируете по фазе что-то кроме резистивного нагрева, вам придется бороться с шумом, а это значит, что очень вероятно, что вы будете иметь дело с шумом пересечения нуля. Не делайте ошибку новичка, подавая входной сигнал пересечения нуля на вывод прерывания; это превратит ваше программное обеспечение в дымящуюся массу мерзостей, когда процессор попытается справиться с прерываниями из миллиарда. (Я говорю по собственному опыту.) Включение RC или более продвинутого фильтра нижних частот на линии просто приведет к сдвигу фаз. Если вы можете работать с этим, отлично. Если нет (мне приходилось иметь дело с системами 50/60 и 400 Гц), то вы должны попробовать другие способы.
На моем собственном проекте я заботился об этом в программном обеспечении, опрашивая линию и фактически делая процедуру голосования, которая игнорировала переходные процессы. Сдвиг фазы был в пределах того, что я мог выдержать, он был быстрым и не дремал даже при сильном шуме. (Протестировано на объекте, где они снимают крышки фильтра с индукционной печи, я никогда раньше не видел такой шумной линии!) зафиксируйте «пересечение нуля», и микроконтроллер подтвердит его до того, как будет установлено следующее прерывание.
В общем и целом, я думаю, что надежное нахождение реального пересечения нуля в любой практической ситуации было одним из хитростей в конструкции устройства плавного пуска. Закрытие контура управления было вторичным, но в основном это просто настройка. Это кажется невероятно простой вещью, но я довольно много узнал о разнице между теорией и практикой за это время. :-)
изменить описание процедуры голосования:
Если я правильно помню, у меня была линия ввода-вывода, которая была высокой, когда линия была выше нуля, и низкой, когда линия была ниже нуля. Процедура голосования просто опрашивала эту линию, и если 2 из трех последних выборок были одинаковыми, я принял тот факт, что линия пересекла ноль. Это очень похоже на схему голосования UART для определения знака и пробела. Преимущество такой схемы состоит в том, что ваш фазовый сдвиг фиксирован (2 * частота дискретизации), и вы можете настроить его для типа шума, который вы испытываете. Я не припомню, насколько быстро проводился опрос, но если бы я рискнул предположить, я бы сказал 8 кГц, так как это число торчит у меня в голове.
Почему бы не использовать оптопару? SFH6206 от Vishay имеет два светодиода в параллельном режиме, поэтому он работает в течение полного цикла сетевого напряжения. Если входное напряжение достаточно высокое, выходной транзистор включается, а коллектор находится на низком уровне. Однако в районе пересечения нуля входное напряжение слишком низкое, чтобы активировать выходной транзистор, и его коллектор будет перегружен. Таким образом, вы получаете положительный импульс при каждом пересечении нуля.
источник
В этом примечании по применению микрочипа на стр. 3 предлагается резистор 20 МОм.
Я думаю, что вы можете использовать MOC3061, который имеет детектор пересечения нуля.
Но есть много моделей устройств, как вы можете видеть здесь .
источник
Я имел успех со следующей цепочкой обработки:
источник
Вероятно, есть МНОГИЕ способы сделать это ... но если бы я делал это, я бы использовал маленький изолирующий трансформатор на всякий случай. Никогда не рекомендуется подключать сеть к микроконтроллеру напрямую, даже через большой резистор.
Я полагаю, что вы можете использовать большой резисторный делитель для микро или маленький трансформатор, который понижает уровень напряжения сети до диапазона вашего микро. Конечно, вы также можете использовать их комбинацию.
Если вы не хотите использовать микроконтроллер, вы всегда можете использовать компаратор и проверить напряжение на уровне 0 В. Импульс от компаратора будет коротким, но есть способы с этим справиться.
источник