Автоматичен ключ за осветление с таймер
Предлагам да помислим за устройство, което би помогнало на забравителните хора да спестят малко електричество. А именно, в крайна сметка мнозина често се сблъскват със ситуация, в която той или някой забрави да изключи светлината в коридора или банята и си тръгна за дълго време по работа, а когато се върна, установи, че светломерът се е прецакал малко. И така, същността на устройството ще бъде автоматично изключване на светлината след определен период от време без намесата на човешкия фактор. Единственото нещо, което се изисква от потребителя, е да зададе времевия интервал на превключвателя и просто да инсталира сглобената верига, свързана към превключвателя на стената на удобно или необходимо място. или някъде другаде, където са го поставили (в смисъл на ключ).
Електрическата схема на прекъсвача с регулируем таймер е показана по-долу:

Нека анализираме подробно устройството на веригата. "Сърцето" на дизайна е осем-битов микроконтролер 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 секунда. Струва ми се, че ако в този случай направим нула секунди, тогава устройството няма да покаже признаци на живот, случайно можете да вземете тази ситуация за факта, че таймерът - превключвател не работи или не работи, така че минималното време беше взето като една секунда. Времето на забавяне се изчислява по следната формула: време=t1+t2+t3+1, където t1, t2, t3 - времето на затворените джъмпери Jmp1, Jmp2, Jmp3 и съответно времето на всеки от тях е 50, 100 и 200 секунди.
Сега помислете за алгоритъма за наблюдение на състоянието на превключвателя на светлината. Това се следи от изхода PB1 на микроконтролера, той е програмно конфигуриран за външни прекъсвания и прекъсвания при всяка промяна на логическото състояние на този вход. Това означава. че не е нужно да превключвате ключа за осветлението в първоначалното му състояние сто пъти. Те натиснаха бутона, светлината светна, таймерът приключи, светлината изгасна, те дойдоха отново, натиснаха бутона, светлината светна, таймерът приключи, светлината изгасна и т.н. За да бъдат изпълнени тези условия, щифтът PB1 се изтегля от резистора R4 към земята. Стойността на този резистор също може да бъде променена в разумни граници, в противен случай микроконтролерът няма да може да проследи логическите нива, когато определена стойност бъде превишена. Резистор R2 ограничава тока изащитава изхода на микроконтролера. Номиналната стойност също може да бъде променена със същите последствия като R4. Тези два резистора по същество образуват делител на напрежение, който определя комбинацията от техните стойности, но основната им функция не е да разделят напрежението.
Ключовият елемент за високо напрежение във веригата е релето. Свързва се по най-стандартния вариант - през транзистора към бобината едва се превключва напрежение от 12 волта. Ако тече ток, релето "щрака" и затваря нормално отворения контакт и обратно, когато през бобината не тече ток. R3 ограничава тока, протичащ през основата на транзистора T1. Стойността на резистора може да варира, както винаги в разумни граници. Транзисторът T1 се използва с марка BC547, но може да бъде заменен с всеки друг транзистор N-P-N структура. Диодът VD1, свързан паралелно с бобината на релето, гаси напрежението на самоиндукция от бобината в момента на изключване. Това е необходимо, за да се предпази транзистора от повреда.
За захранване на тази верига беше използвано най-простото захранване на силов трансформатор. Марката на използвания трансформатор е BV EI 382 1189 или друга подобна. Изборът е негов, тъй като е с малки размери и достатъчни характеристики.

Преобразува 220 волта в 9 волта AC. Освен това, според веригата след трансформатора, напрежението се коригира и изглажда от кондензатори. Стойността на кондензатора C2 може да бъде увеличена до 1000 uF или повече. След коригиране напрежението ще бъде приблизително 12 волта (1,41 * AC), при максимално допустимото натоварване на самия трансформатор, то може да падне малко, но схемата на таймер-превключвател консумира много по-малко, така че не трябва да обръщате специално внимание тук. 12 волта постоянен ток, стабилизиран от L7805 на 5волта, необходими за захранване на микроконтролера. Линейният стабилизатор 7805 може да бъде заменен с домашен аналог KR142EN5A или друга микросхема, работеща в импулсен режим, като леко коригира веригата в съответствие с връзката на такава микросхема (например MC34063 или LM2576).
Веригата е сглобена и дебъгвана на макет (следователно печатната платка на устройството ще отсъства в статията):


Релейният модул е заменен със светодиод за лесна демонстрация и тестване, тъй като развойната платка се захранва от USB порта на лаптопа.
Тази схема може да послужи като добър подарък за родители или баби и дядовци, които поради възрастта си често забравят да изключат осветлението. Те със сигурност ще оценят вашата загриженост много положително. Освен това цената на това устройство е около 5 години.
За да програмирате микроконтролера ATtiny13A, трябва да знаете конфигурацията на бита на предпазителя:

Екранната снимка е направена в програмата AVR studuo 4. За тези, които флашват микроконтролери в друга програма, ви съветвам да използвате шестнадесетичната система HIGH и LOW за настройка на битовете на предпазителите, за да не се забърквате с квадратчетата за отметка. В различни програми за мигане често трябва да зададете квадратчетата за отметка по различни начини (обратно или не обратно, а в AVR studio също няма квадратчета за отметка в сравнение със sina prog, например).