- Необходимый материал
- Принципиальная электрическая схема
- Микроконтроллер PIC:
- Код и объяснение
- Работа датчика PIR с микроконтроллером PIC:
PIR (пассивный инфракрасный) или датчик движения используется для обнаружения движения движущегося человеческого тела или объектов. Всякий раз, когда кто-то подходит к датчику PIR, он дает высокий уровень на своем выходном контакте. Ранее мы связали PIR с другими микроконтроллерами:
- Детектор движения Arduino с использованием ИК-датчика
- Система домашней безопасности Raspberry Pi на базе IOT с оповещением по электронной почте
- Автоматический лестничный светильник с микроконтроллером AVR
Сегодня мы просто собираемся связать PIR с PIC микроконтроллером PIC16F877A. В этой схеме, если некоторые движущиеся объекты попадают в зону действия ИК-датчика, зуммер начинает пищать.
Необходимый материал
- PicKit 3
- Датчик PIR.
- PIC16F877A IC
- 40 - Пин-держатель IC
- Перфорированная доска
- Кварцевый генератор 20 МГц
- Женские и мужские булавки Bergstick
- Конденсатор 33pf - 2Nos, 100 мкФ и 10 мкФ.
- Резисторы 680 Ом, 10 кОм и 560 Ом
- LED любого цвета
- 1 комплект для пайки
- IC 7805
- Адаптер 12 В
- Зуммер
- Соединительные провода
- Макетная плата
Датчик PIR:
Датчик движения PIR недорогой, маломощный и простой в использовании детектор движения Sesnor. Датчик PIR принимает только инфракрасные лучи, но не излучает, поэтому он называется пассивным. PIR распознает любое изменение тепла, и если есть изменение, он дает ВЫСОКИЙ НА ВЫХОДЕ. ИК-датчик также называется пироэлектрическим или ИК-датчиком движения.
Каждый объект излучает некоторое количество инфракрасного излучения при нагревании, подобно тому, как человеческое тело излучает инфракрасное излучение из-за тепла тела. Инфракрасное излучение создается каждым объектом из-за трения между воздухом и объектом. Основным компонентом датчика PIR является пироэлектрический датчик. Наряду с этим, BISS0001 («Микросхема ИК-детектора движения»), некоторые резисторы, конденсаторы и другие компоненты, используемые для создания ИК-датчика. BISS0001 IC принимает входной сигнал от датчика и выполняет обработку, чтобы сделать выходной контакт ВЫСОКИМ или НИЗКИМ соответственно.
Узнайте больше о датчике PIR здесь. Вы также можете настроить чувствительность к расстоянию и время, в течение которого выходной контакт будет высоким при обнаружении движения. Он имеет две ручки потенциометра для регулировки этих двух параметров.
Принципиальная электрическая схема
Микроконтроллер PIC:
Чтобы запрограммировать микроконтроллер PIC для взаимодействия с PIR, нам понадобится IDE (интегрированная среда разработки), в которой происходит программирование. Компилятор, где наша программа преобразуется в MCU читаемом виде под названием HEX файлы. IPE (Integrated Среда программирования), который используется для вывода нашего шестнадцатеричного файла в наш PIC микроконтроллеры.
IDE: MPLABX v3.35
IPE: MPLAB IPE v3.35
Компилятор: XC8
Microchip предоставила все эти три программы бесплатно. Их можно скачать прямо с их официальной страницы. Я также предоставил ссылку для вашего удобства. После загрузки установите их на свой компьютер. Если у вас возникнут какие-либо проблемы, вы можете просмотреть видео, приведенное в конце.
Для того, чтобы сбросить или загрузить наш код в ПОС, нам потребуется PICkit 3. PICkit 3 программатор / отладчик является простой, недорогой внутрисхемный отладчик, который управляется с помощью компьютера под управлением MPLAB IDE (v8.20 или более поздней версии) программного обеспечения на платформа Windows. PICkit 3 программатор / отладчик является составной частью пакета инструментов инженера разработчиков. В дополнение к этому нам также понадобится другое оборудование, такое как плата Perf, паяльная станция, микросхемы PIC, кварцевые генераторы, конденсаторы и т. Д. Но мы будем добавлять их в наш список по мере прохождения наших руководств.
Мы будем программировать наш PIC16F877A, используя опцию ICSP, которая доступна в нашем MCU.
Чтобы записать код, выполните следующие действия:
- Запустите MPLAB IPE.
- Подключите один конец PicKit 3 к компьютеру, а другой конец - к контактам ICSP на перфорированной плате.
- Подключитесь к своему устройству PIC, нажав кнопку подключения.
- Найдите файл Blink HEX и нажмите «Программа».
Если вы новичок в микроконтроллере PIC, сначала просмотрите следующие руководства, чтобы узнать, как использовать и программировать PIC:
- Начало работы с микроконтроллером PIC: Введение в PIC и MPLABX
- Написание вашей первой программы с помощью микроконтроллера PIC и установка битов конфигурации
- Светодиод мигает с микроконтроллером PIC
Код и объяснение
Сначала нам нужно установить биты конфигурации в микроконтроллере pic, а затем начать с функции void main .
В приведенном ниже коде «XC.h» - это файл заголовка, который содержит все понятные имена для контактов и периферийных устройств. Также мы определили частоту кварцевого генератора, подключение контактов PIR и Buzzer в приведенном ниже коде.
#включают
В void main () TRISB = 0X00 используется для указания MCU, что выводы PORTB используются в качестве ВЫХОДА, TRISC = 0Xff используется для указания MCU, что выводы PORTB используются как INPUT. И «PORTB = 0X00» используется для указания MCU сделать весь ВЫХОД RB3 низким.
TRISB = 0X00; TRISC = 0Xff; PORTB = 0X00; // Делаем весь вывод RB3 LOW
Согласно приведенному ниже коду, всякий раз, когда PIR становится ВЫСОКИМ, зуммер становится ВЫСОКИМ или остается выключенным.
while (1) // Войдите в цикл Infinie While {if (PIR == 1) {Buzzer = 1; __delay_ms (1000); // Ждем} else {Buzzer = 0; }}}
Полный код с демонстрационным видео приведен в конце этого проекта.
Работа датчика PIR с микроконтроллером PIC:
В этом проекте нет сложной настройки оборудования, мы снова используем ту же плату микроконтроллера PIC (как показано ниже), которую мы создали в руководстве по миганию светодиодов. Просто подключите модуль датчика PIR к плате микроконтроллера PIC в соответствии со схемой подключения. После того, как вы закончите с подключениями, просто сбросьте код с помощью программатора PicKit 3, как описано в предыдущем руководстве, и наслаждайтесь результатом.
После загрузки программы датчик PIR готов выдать ВЫХОД. Всякий раз, когда человек или объект, излучающий ИК-излучение, попадает в диапазон ИК-излучения, он дает ВЫСОКИЙ ВЫХОД. И на основе этого выхода сработает зуммер. Если выход PIR высокий, вход зуммера становится высоким, и наоборот.
Вы можете контролировать расстояние срабатывания и временную задержку с помощью двух потенциометров, закрепленных на модуле PIR. Чтобы узнать больше о датчике PIR, перейдите по ссылке.