Устройство плавного включения
После того, как "галогенки", установленные в новый потолок, стали перегорать почти еженедельно, вопросу продления срока их службы я посвятил некоторую часть своего времени. Результатами поисков и размышлений стали несколько схем, позволяющих увеличить срок службы не очень дешевых ламп.
Итак, сначала вопрос: "почему они перегорают?". Ответ довольно прост: "Это выгодно производителям... :)"
Действительно, если почитать Википедию, можно найти статью про Картель Фебус, участники которого договорились не делать долговечных ламп... Но, лампы мы не переделаем, остается бороться за их живучесть.
Не секрет, что лампы накаливания (к которым относятся и "галогенки") перегорают в момент включения. Это связано с тем, что в "холодном" состоянии сопротивление нити накаливания во много раз меньше, чем в "нагретом" - это свойство проводимости металлов изучают в школе. Таким образом, в момент включения через нить лампы проходит ток в несколько раз превышающий номинальный, что приводит ... к ее интенсивному износу (так выразимся...). Вывод: надо сделать так, чтоб в момент включения на лампу было приложено напряжение в несколько раз меньшее номинального. Далее, по мере прогрева спирали, напряжение можно постепенно довести до номинального.
Первым решением вопроса напрашивается аналоговый путь: включаем лампу через гасящее сопротивление, которое на себя берет основную мощность, а через несколько секунд "закорачиваем" его. Такие решения можно встретить и выполненные на электромагнитных реле, и на транзисторном ключе (моя первая статья, посвященная этой теме - кстати, пошел уже третий год работы этой схемы - пока все нормально: ни одна из шести ламп не перегорела). Встречаются и более изящные аналоговые решения с использованием элементов с обратной зависимостью сопротивления от температуры (есть такие в старых телевизорах). В этом случае лампа и такой элемент работаю идеально-противоположным образом: в момент включения его сопротивление велико, а по мере прогрева, падает до минимума.
В этой статье будет описан цифровой способ решения задачи. Забегая вперед, скажем, что такие решения выпускаются серийно, например, описанный мной блок "ЭРА". Но, до покупки этого "чуда" я реализовал свои мысли на другом микроконтроллере...
Итак, сначала вопрос: "почему они перегорают?". Ответ довольно прост: "Это выгодно производителям... :)"
Действительно, если почитать Википедию, можно найти статью про Картель Фебус, участники которого договорились не делать долговечных ламп... Но, лампы мы не переделаем, остается бороться за их живучесть.
Не секрет, что лампы накаливания (к которым относятся и "галогенки") перегорают в момент включения. Это связано с тем, что в "холодном" состоянии сопротивление нити накаливания во много раз меньше, чем в "нагретом" - это свойство проводимости металлов изучают в школе. Таким образом, в момент включения через нить лампы проходит ток в несколько раз превышающий номинальный, что приводит ... к ее интенсивному износу (так выразимся...). Вывод: надо сделать так, чтоб в момент включения на лампу было приложено напряжение в несколько раз меньшее номинального. Далее, по мере прогрева спирали, напряжение можно постепенно довести до номинального.
Первым решением вопроса напрашивается аналоговый путь: включаем лампу через гасящее сопротивление, которое на себя берет основную мощность, а через несколько секунд "закорачиваем" его. Такие решения можно встретить и выполненные на электромагнитных реле, и на транзисторном ключе (моя первая статья, посвященная этой теме - кстати, пошел уже третий год работы этой схемы - пока все нормально: ни одна из шести ламп не перегорела). Встречаются и более изящные аналоговые решения с использованием элементов с обратной зависимостью сопротивления от температуры (есть такие в старых телевизорах). В этом случае лампа и такой элемент работаю идеально-противоположным образом: в момент включения его сопротивление велико, а по мере прогрева, падает до минимума.
В этой статье будет описан цифровой способ решения задачи. Забегая вперед, скажем, что такие решения выпускаются серийно, например, описанный мной блок "ЭРА". Но, до покупки этого "чуда" я реализовал свои мысли на другом микроконтроллере...
Принцип работы цифрового устройства
В цифровом устройстве лампа подключается к сети через ключевой элемент - симистор (по схеме - U2). После включения симистор закрыт в каждом полупериоде напряжения питания. Под управлением микроконтроллера DD1 ("под рукой" оказался самый дешевый AVR ATtiny13) , постепенно в каждом полупериоде симистор открывается на все большее время, и, через 3-4 секунды остается открытым практически на весь положительный и отрицательный полупериоды сетевого напряжения. Таким образом достигается плавное нарастание мощности на лампе.
Назначение остальных элементов на схеме:
- конденсатор 0,33мк - это "гасящий резистор" для создания "нормального" питания микроконтроллера (емкостное сопротивление требуемой рассеиваемой мощности в габаритах намного меньше обычного резистора - пришлось бы его ставить ватт на 10);
- резистор 130кОм служит для разряда емкости после выключения питания (часто его не ставят - не "шибко страшно");
- резистор 270 Ом нужен для ограничения "пускового" тока, когда конденсатор разряжен и все напряжение сети "пролазит" на диоды...;
- стабилитрон ограничивает напряжение на выводах питания микроконтроллера;
- диоды - это выпрямитель;
- электролит - сглаживает пульсации по питанию (очень интересно, в промсхемах, в той же "ЭРЕ", этот конденсатор отсутствует (во всяком случае, он не такой "запредельной" емкости), но у меня без него - никак...);
- резистор 100 Ом в цепи управляющего электрода симистора - токоограничивающий для микроконтроллера;
- остальные резисторы и конденсатор нужны для микроконтроллера, чтоб знать когда начинается полуволна сетевого напряжения.
Программное обеспечение
Алгоритм работы программы микроконтроллера довольно прост: при подаче питания, запускается таймер на формирование прерываний по переполнению, разрешаются прерывания от внешнего сигнала по входу РВ1, симистор выключается. Далее программа работает только на обслуживании двух прерываний.
Начало периода сетевого напряжения вызывает прерывания External_0 (по входу РВ1). В этом прерывании в таймер загружается значение переменной Time_Tek, определяющей время, через которое надо открыть симистор - в начале оно максимально и может доходить до целого полупериода (10мс). Разрешаются прерывания от таймера.
По переполнению таймера вызывается подпрограмма обслуживания прерывания Timer_0_Overflow. В ней на управляющий электрод симистора выдается короткий импульс включения (выключится симистор при переходе напряжения сети через ноль). Затем в таймер загружается отсчет в 10мс для включения симистора в другом полупериоде (когда в отрицательной полуволне не сработает прерывание по входу РВ1).
При следующем переполнении (через 10мс) снова формируется импульс, который включит симистор. Затем скорректируется время в переменной Time_Tek (чтоб в следующем периоде открыть симистор на "по-дольше"). И, в заключении, запретим прерывания от таймера и разрешим внешнее прерывание - ждем следующего периода.
И так, до полного открытия симистора в каждой полуволне сетевого напряжения.
На практике опробован другой вариант алгоритма, где замерялся период сетевого напряжения. Затем, исходя из полученного значения задавались интервалы срабатывания таймера для включения симистора. Этот вариант, казалось бы более "правильный" и не зависимый от частоты работы микроконтроллера..., но практика показала стабильность показанного выше алгоритма более высокой.
Начало периода сетевого напряжения вызывает прерывания External_0 (по входу РВ1). В этом прерывании в таймер загружается значение переменной Time_Tek, определяющей время, через которое надо открыть симистор - в начале оно максимально и может доходить до целого полупериода (10мс). Разрешаются прерывания от таймера.
По переполнению таймера вызывается подпрограмма обслуживания прерывания Timer_0_Overflow. В ней на управляющий электрод симистора выдается короткий импульс включения (выключится симистор при переходе напряжения сети через ноль). Затем в таймер загружается отсчет в 10мс для включения симистора в другом полупериоде (когда в отрицательной полуволне не сработает прерывание по входу РВ1).
При следующем переполнении (через 10мс) снова формируется импульс, который включит симистор. Затем скорректируется время в переменной Time_Tek (чтоб в следующем периоде открыть симистор на "по-дольше"). И, в заключении, запретим прерывания от таймера и разрешим внешнее прерывание - ждем следующего периода.
И так, до полного открытия симистора в каждой полуволне сетевого напряжения.
На практике опробован другой вариант алгоритма, где замерялся период сетевого напряжения. Затем, исходя из полученного значения задавались интервалы срабатывания таймера для включения симистора. Этот вариант, казалось бы более "правильный" и не зависимый от частоты работы микроконтроллера..., но практика показала стабильность показанного выше алгоритма более высокой.
Воплощение в "металле" и ... проблемы
Было собрано два устройства. Габариты получились довольно небольшими, основной объем занимает "гасящий конденсатор". Одно из устройств второй год работает на включении трех "галогенок" по 35Вт, при этом радиатор для симистора не потребовался.
Итак, самое интересное: проблемы, их объяснения, наметки на будущее и т.п.
Устройство, как и подобает настоящему творению, включается просто в разрыв цепи лампы. Отсюда проблема питания. В первые моменты все напряжение - нам, т.е. микроконтроллеру (т.к. симистор большую часть времени закрыт). При таком комфортном питании микроконтроллер работает "как надо" и частота колебаний встроенного RC генератора поддается определению. Но, по мере все большего времени открывания симистора, микроконтроллеру достается все меньше напряжения и говорить о какой-то стабильной (определенной) частоте генератора не приходится. Тут нам существенно помогает электролит (у меня аж 1000мк). Внешне эффект проявляется как мерцание лампы нагрузки. Увеличение емкости сглаживает эффект.
Но большая емкость приводит к тому что появляется огромное время выключения устройства. Когда мы выключаем свет - все гаснет, т.к нет напряжения. Но если мы свет сразу включим, то лампа загорится в полный накал. Это связано с тем что емкость электролита велика и ее хватает примерно на 30-40 секунд нормальной работы микроконтроллера при отсутствии напряжения в сети. Т.е. симистор продолжит получать импульсы открывания в каждом полупериоде на всю длину сразу при возникновении питающего напряжения... Получается, что следующее "плавное включение" возможно только через полминуты выключенного света...
Второе собранное устройство само по себе работало как и первое, но вместе они, работая на одной фазе, питая разные лампы, подключенные к одному общему проводу повели себя довольно странно. Даже когда цепь одного была разомкнута, замыкание второго приводило к миганиям его ламп. Тоже происходило и в другой комбинации. Видимо, большие токи утечек, наводки т.п. "потусторонние силы"...
Именно из-за указанных выше недостатков, статья публикуется тут "на заборе", а не в нормальном "за деньги" месте. Все-таки - опыт! Может кому пригодится...
PS Но одно устройство работает! Уже не первый год! И лампы НЕ ПЕРЕГОРАЮТ!!!
опубликовано 28 февраля 2013 года
Итак, самое интересное: проблемы, их объяснения, наметки на будущее и т.п.
Устройство, как и подобает настоящему творению, включается просто в разрыв цепи лампы. Отсюда проблема питания. В первые моменты все напряжение - нам, т.е. микроконтроллеру (т.к. симистор большую часть времени закрыт). При таком комфортном питании микроконтроллер работает "как надо" и частота колебаний встроенного RC генератора поддается определению. Но, по мере все большего времени открывания симистора, микроконтроллеру достается все меньше напряжения и говорить о какой-то стабильной (определенной) частоте генератора не приходится. Тут нам существенно помогает электролит (у меня аж 1000мк). Внешне эффект проявляется как мерцание лампы нагрузки. Увеличение емкости сглаживает эффект.
Но большая емкость приводит к тому что появляется огромное время выключения устройства. Когда мы выключаем свет - все гаснет, т.к нет напряжения. Но если мы свет сразу включим, то лампа загорится в полный накал. Это связано с тем что емкость электролита велика и ее хватает примерно на 30-40 секунд нормальной работы микроконтроллера при отсутствии напряжения в сети. Т.е. симистор продолжит получать импульсы открывания в каждом полупериоде на всю длину сразу при возникновении питающего напряжения... Получается, что следующее "плавное включение" возможно только через полминуты выключенного света...
Второе собранное устройство само по себе работало как и первое, но вместе они, работая на одной фазе, питая разные лампы, подключенные к одному общему проводу повели себя довольно странно. Даже когда цепь одного была разомкнута, замыкание второго приводило к миганиям его ламп. Тоже происходило и в другой комбинации. Видимо, большие токи утечек, наводки т.п. "потусторонние силы"...
Именно из-за указанных выше недостатков, статья публикуется тут "на заборе", а не в нормальном "за деньги" месте. Все-таки - опыт! Может кому пригодится...
PS Но одно устройство работает! Уже не первый год! И лампы НЕ ПЕРЕГОРАЮТ!!!
опубликовано 28 февраля 2013 года