Често виждаме броячи на посетители на стадиона, търговския център, офисите, класните стаи и т.н. Как те преброяват хората и включват или изключват светлината, когато никой не е вътре? Днес сме тук с проект за автоматичен контролер за стайно осветление с двупосочен брояч на посетителите с помощта на Arduino Uno. Това е много интересен проект за любители и студенти, както за забавление, така и за учене.
Компоненти
- Arduino UNO
- Реле (5v)
- Съпротивлява се
- Модул на IR сензора
- 16x2 LCD дисплей
- Дъска за хляб
- Свързване на проводници
- Led
- BC547 транзистор
Проектът на „ Цифров брояч за посетители “ се основава на взаимодействието на някои компоненти като сензори, двигатели и др. С микроконтролер arduino. Този брояч може да брои хората в двете посоки. Тази верига може да се използва за изчисляване на броя на хората, които влизат в зала / мол / дом / офис във входната порта и може да преброи броя на хората, напускащи залата, чрез намаляване на броя на същата врата или изходна порта и зависи от сензора настаняване в мол / зала. Може да се използва и при портите на паркинги и други обществени места.
Този проект е разделен на четири части: сензори, контролер, дисплей на брояча и порта. Сензорът ще наблюдава прекъсване и ще подава вход към контролера, който ще стартира нарастване или намаляване на брояча в зависимост от влизането или излизането на човека. И броенето се показва на 16x2 LCD през контролера.
Когато някой влезе в стаята, IR сензорът ще бъде прекъснат от обекта, тогава другият сензор няма да работи, защото сме добавили забавяне за известно време.
Обяснение на веригата
Има някои раздели на цялата схема за броячи на посетители, които са сензорна секция, секция за управление, секция за дисплей и секция за водача.
Сензорна секция: В този раздел сме използвали два IR сензорни модула, които съдържат IR диоди, потенциометър, Comparator (Op-Amp) и светодиоди. Потенциометърът се използва за задаване на еталонно напрежение на единия терминал на компаратора, а IR сензорите усещат обекта или човека и осигуряват промяна в напрежението на втория терминал на компаратора. След това компараторът сравнява двете напрежения и генерира цифров сигнал на изхода. Тук в тази схема сме използвали два компаратора за два сензора. LM358 се използва като компаратор. LM358 има вградени два нискошумови Op-усилвателя.
Контролен раздел: Arduino UNO се използва за контрол на целия процес на този проект за броячи на посетители. Изходите на компараторите са свързани към цифрови щифтове 14 и 19 на arduino. Arduino чете тези сигнали и изпраща команди към веригата на драйвера на релето, за да задейства релето за управление на крушката. Ако откриете някакви затруднения при работа с реле, разгледайте този урок за управление на релето на arduino, за да научите повече за управлението на релето с Arduino.
Раздел на дисплея: Разделът на дисплея съдържа 16x2 LCD. Този раздел ще покаже преброения брой хора и състоянието на светлината, когато никой няма в стаята.
Секция за релеен драйвер : Секцията за релеен драйвер се състои от транзистор BC547 и реле от 5 волта за управление на крушката. Транзисторът се използва за задвижване на релето, тъй като arduino не подава достатъчно напрежение и ток за задвижване на релето. Затова добавихме верига на релеен драйвер, за да получим достатъчно напрежение и ток за релето. Arduino изпраща команди към този транзистор на релейния драйвер и тогава крушката ще се включи / изключи съответно.
Диаграма на брояча на посетителите
Изходите на IR сензорните модули са директно свързани към цифрови щифтове arduino 14 (A0) и 19 (A5). И транзисторът на релейния драйвер при цифров щифт 2. LCD е свързан в 4-битов режим. RS и EN щифтът на LCD е директно свързан на 13 и 12. Пинът за данни на LCD D4-D7 също е директно свързан към arduino на D11-D8 съответно. Останалите връзки са показани в схемата по-долу.
Обяснение на кода
Първо включихме библиотека за LCD и дефиниран пин за същия. И също така дефиниран входен изходен щифт за сензори и релей.
След това се дава посока към входния изходен щифт и инициализиран LCD в контура за настройка.
В функция на цикъла четем входа на сензорите и увеличаваме или намаляваме броенето в зависимост от операцията за влизане или излизане. И също така проверете за нулево състояние. Нулево състояние означава, че няма никой в стаята. Ако нулевото условие е вярно, тогава arduino изключва крушката, като деактивира релето през транзистора.
И ако нулевото условие е невярно, тогава arduino включва светлината. Ето две функции за влизане и излизане.