Автоматичний вимикач світла з таймером

Пропоную розглянути пристрій, який допоміг би забудькуватим людям трохи заощадити на електриці. А саме, адже, багато хто часто стикався з ситуацією, коли він чи хтось забув вимкнути світло в коридорі або ванній і пішов надовго у справах, а повернувшись, виявив, що лічильник світла накрутив трохи зайвого. Так ось, суть пристрою полягатиме в тому, щоб через певний проміжок часу вимкнути світло автоматично без втручання людського фактора. Єдине, що потрібно від користувача, задати проміжок часу вимикача, а також просто встановити в зручному чи необхідному місці зібрану схему, підключену до вимикача на стіні. або де, куди його ставлять (в сенсі вимикач).

Схема пристрою автоматичного вимикача з таймером, що настроюється, представлена ​​нижче:

світла

Розберемо влаштування схеми по деталях. "Серцем" конструкції є восьми бітний мікроконтролер AVR Attiny13 або Attiny13A. Даний мікроконтролер можна використовувати як у корпусі DIP-8, так і в корпусі SO-8 в залежності від того, як Ви розведете плату. До висновку PB5 мікроконтролера через резистор R1 підтягується позитивна напруга, це необхідно для того, щоб виключити мимовільний рестарт у випадку, якщо ловитимуться випадкові перешкоди. Номінал резистора R1 можна варіювати у деяких розумних межах. Для навмисного рестарту та ресета мікроконтролера передбачена кнопка S1 для короткочасного замикання виведення PB5 на землю. Цією кнопкою в основному доведеться користуватися вкрай рідко - передбачалася для скидання при налаштуванні. Час таймера в тій схемі визначається установкою перемичок (джемперів) на відповідні штирьові контакти. Або інакше замиканням висновків PB0, PB4 і PB3 на землю придопомоги цих самих перемичок. Програма мікроконтролера стежить за станом цих висновків і залежно від того замкнуті вони на землю чи ні, розраховує час затримки вимкнення світла. Час затримки можна встановити від 1 секунди до 351 секунди комбінуванням установкою перемичок. Наприклад, якщо замкнута лише перемичка Jmp3, то час затримки становитиме 51 секунду, якщо замкнута Jmp3 та Jmp1, час затримки становитиме 251 секунду. Думаю, сенс зрозумілий. А тепер чомусь скрізь присутня 1 секунда (1, 51, 251) - якщо всі перемички будуть розімкнуті, то час становитиме рівно 1 секунду. Мені здається, якщо в цьому випадку зробити нуль секунд, то пристрій при цьому не подасть ознак життя, випадково можна прийняти таку ситуацію за те, що таймер - вимикач не працює або вийшов з ладу, тому мінімальний час було прийнято за одну секунду. Час затримки розраховується за такою формулою: time=t1+t2+t3+1, де t1, t2, t3 - час замкнутих перемичок Jmp1, Jmp2, Jmp3 і час кожної з них становить 50, 100 і 200 секунд.

Тепер розглянемо алгоритм стеження станом перемикача світла. За цим стежить висновок PB1 мікроконтролера, програмно він налаштований на зовнішні переривання та переривання щодо кожної зміни логічного стану на цьому вході. Це означає. що по сто разів перемикати у вихідний стан вимикача світла не доведеться. Натиснули кнопку, світло загорілося, таймер закінчився, світло погасло, прийшли знову відтиснули кнопку, світло загорілося, таймер закінчилося, світло погасло і так далі. Щоб ці умови дотримувалися, виведення PB1 підтягнуто резистором R4 до землі. Номінал цього резистора також можна змінювати в межах розумного, інакше мікроконтролер не зможе відстежити логічні рівні при перевищенні певного значення. Резистор R2 обмежує струм іоберігає виведення мікроконтролера. Значення номіналу також можна змінювати з тими ж наслідками, що і R4. Ці два резистора за великим рахунком утворюють дільник напруги, від чого і залежать поєднання їх номіналів, але їхня головна функція не полягає в розподілі напруги.

Ключовим елементом для високої напруги у схемі є реле. Воно підключено за стандартним варіантом - через транзистор на котушку ледве комутується напруга 12 вольт. Якщо струм протікає, реле "клацає" і замикає нормально розімкнений контакт і навпаки, коли струм не протікає через котушку. R3 обмежує струм, що протікає через основу транзистора Т1. Номінал резистора можна варіювати, як завжди в розумних межах. Транзистор Т1 застосований марки BC547, але його можна замінити будь-який інший транзистор N-P-N структури. Діод VD1, включений паралельно до котушки реле, гасить напругу самоіндукції від котушки в момент вимкнення. Це необхідно для запобігання транзистору від виходу з ладу.

Для живлення цієї схеми застосовано найпростіший блок живлення на силовому трансформаторі. Марка трансформатора BV EI 382 1189 або інші подібні. Вибір за ним, тому що має малі габарити та достатні характеристики.

вимикач

Він перетворює 220 вольт на 9 вольт змінної напруги. Далі за схемою після трансформатора напруга випрямляється та згладжується конденсаторами. Номінал конденсатора C2 можна збільшити до 1000 мкФ або більше. Після випрямлення напруга складе приблизно 12 вольт (1,41*AC), при максимальному припустимому навантаженні самого трансформатора може трохи просідати, але схема таймера - вимикача споживає значно менше, тому тут не варто приділяти особливої ​​уваги. 12 вольт постійного струму стабілізуються мікросхемою L7805 до 5вольт, необхідні живлення мікроконтролера. Лінійний стабілізатор 7805 можна замінити на вітчизняний аналог КР142ЕН5А або другу мікросхему, що працює в імпульсному режимі, трохи виправивши схему відповідно до підключення такої мікросхеми (наприклад, MC34063 або LM2576).

Схема збиралася і налагоджувалась на макетній платі (тому друкована плата пристрою у статті буде відсутня):

світла

вимикач

Модуль реле був замінений на світлодіод для простоти демонстрації та тестування, так як налагоджувальна плата живиться від USB порту ноутбука.

Дана схема може стати хорошим подарунком для батьків або бабусь і дідусів, які в силу віку часто забувають вимикати світло. Вони обов'язково дуже позитивно оцінять вашу турботу. Тим більше, собівартість цього пристрою становить близько 5 уе.

Для програмування мікроконтролера ATtiny13A необхідно знати конфігурацію ф'юз бітів:

світла

Скріншот зроблений у програмі AVR studuo 4. Для тих, хто прошиває мікроконтролери в іншій програмі, раджу скористатися шістнадцятковою системою HIGH і LOW завдання ф'юз бітів для того, щоб не напортачити з розставленням галочок. У різних програмах для прошивки часто по-різному доводиться встановлювати галочки (інверсно чи не інверсно, а в AVR studio ще й пари галочок немає порівняно з sina prog, наприклад).