Поиск

24 июля 2013 г.

Защита ламп от перегорания и включение от датчика движения

Ниже описан простенький контроллер плавного включения галогеновых ламп на ATtiny9 /10. 
Без плавного включения, хоть одна галогенка перегорала раз в несколько месяцев, а иногда чаще. С плавным включением не менял лампы уже более года.

Еще используется датчик движения HC-SR501, выключающий свет по таймауту, если его забыли выключить.

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



Лампы включаются с помощью симистора, а плавность достигается медленным изменением фазового угла.
Датчик перехода через ноль построен на сдвоенной оптопаре и срабатывает по нарастающему фронту INT0.
Начало и конец импульса включения симистора выполняется в прерываниях сравнения таймера — COMPA и COMPB. В регистры OCR0A и OCROB заносятся значения начала и конца импульса.

Датчик движения — пассивный на PIR сенсоре — типа HC-SR501.
При подаче напряжения на датчик, он всегда сначала срабатывает на заданное время, которое задается резистором регулировки длительности импульса, потом сигнал снимается на время паузы, и начинается его нормальная работа. 
Можно использовать это для своих целей, измерив время этого импульса при включении устройства.
Время в секундах таймаута выключения получается умножением длительности импульса датчика на 16.

Схема (D1, D3, R6 не используются, красная нумерация ножек для оптосимистора VO2223).


Мне попался пищащий конденсатор C1. Из-за него плавное включение споровождалось звуковыми эффектами.
В итоге я его убрал (заменил на перемычку) и убрал R4.

Исходник: LampControl.zip

Комментариев нет:

Отправить комментарий