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