- Требуемый материал:
- Модуль ИК-датчика:
- Принципиальная схема и пояснения:
- Программирование вашего Raspberry Pi:
- За работой:
Как мы все знаем, Raspberry Pi - замечательная платформа для разработки, основанная на микропроцессоре ARM. Благодаря своей высокой вычислительной мощности он может творить чудеса в руках любителей электроники или студентов. Все это возможно только в том случае, если мы знаем, как заставить его взаимодействовать с реальным миром. Существует множество датчиков, которые могут обнаруживать определенные параметры в реальном времени и передавать их в цифровой мир. Мы рассмотрели множество проектов Raspberry Pi с множеством датчиков. Raspberry Pi также является благом для проектов IoT, поскольку это карманный компьютер со встроенным Wi-Fi, имеющий возможности микроконтроллера.
В этом уроке мы узнаем, как подключить ИК-датчик к Raspberry pi. Эти датчики чаще всего используются в небольших роботах, таких как робот-следящий за линией, робот, избегающий кромки и т. Д. Проще говоря, он может обнаруживать присутствие объектов перед ним, а также различать белый и черный цвет. Звучит круто, правда?
Итак, давайте узнаем, как подключить этот датчик к Raspberry Pi. В этом проекте, когда перед ИК-датчиком нет объекта, красный светодиод остается включенным, и как только мы помещаем что-то перед ИК-датчиком, красный светодиод гаснет и загорается зеленый светодиод. Эта цепь также может служить в качестве цепи охранной сигнализации.
Требуемый материал:
- Raspberry Pi 3 (любая модель)
- Модуль ИК-датчика
- Зеленый и красный светодиоды
- Макетная плата
- Соединительные провода
Модуль ИК-датчика:
Инфракрасные датчики (Инфракрасный датчик) - это модули, которые обнаруживают присутствие объектов перед ними. Если объект присутствует, он дает 3,3 В на выходе, а если его нет, он дает 0 В. Это стало возможным благодаря использованию пары ИК-пары (передатчик и приемник), передатчик (ИК-светодиод) будет излучать ИК-луч, который будет отражаться, если перед ним находится объект. Этот ИК-луч будет получен обратно приемником (фотодиодом), и выходной сигнал будет иметь высокий уровень после усиления с использованием линка операционного усилителя LM358. Вы можете узнать больше о схеме модуля ИК-датчика здесь.
ИК-датчик, используемый в этом проекте, показан выше. Как и все ИК-датчики, он имеет три контакта: 5V, Gnd и Out соответственно. Модуль питается от вывода 5V от Raspberry Pi, а вывод подключен к GPIO14 Raspberry Pi. Потенциометр в верхней части модуля можно использовать для регулировки диапазона ИК-датчика.
Принципиальная схема и пояснения:
Принципиальная схема подключения Raspberry Pi с ИК-датчиком показана ниже. Как видите, принципиальная схема очень проста. Мы напрямую запитали ИК-модуль от 5V и заземляющего контакта Raspberry Pi. Выходной контакт ИК-модуля подключен к GPIO14. Мы также использовали два светодиода (зеленый и красный) для индикации состояния объекта. Эти два светодиода подключены к GPIO3 и GPIO2 соответственно.
Поскольку контакты GPIO Raspberry Pi имеют напряжение 3,3 В, ограничивающий ток резистор не является обязательным. Однако, при желании, между выводом заземления светодиодов и Raspberry Pi можно добавить резистор номиналом 470 Ом. Вся схема питается от мобильного зарядного устройства 5 В через порт micro USB Raspberry Pi.
Примечание. При подключении любого датчика убедитесь, что земля датчика подключена к заземлению MCU или MPU (здесь Raspberry Pi). Только тогда они смогут общаться.
Программирование вашего Raspberry Pi:
Здесь мы используем язык программирования Python для программирования RPi. Есть много способов запрограммировать Raspberry Pi. В этом руководстве мы используем Python 3 IDE, так как она является наиболее часто используемой. Полная программа Python приводится в конце данного руководства. Узнать больше о программе и запустить код в Raspberry Pi можно здесь.
Мы поговорим о нескольких командах, которые мы собираемся использовать в программе PYHTON,
Мы собираемся импортировать файл GPIO из библиотеки, функция ниже позволяет нам программировать контакты GPIO PI. Мы также переименовали «GPIO» в «IO», поэтому в программе всякий раз, когда мы хотим обратиться к контактам GPIO, мы будем использовать слово «IO».
импортировать RPi.GPIO как IO
Иногда, когда контакты GPIO, которые мы пытаемся использовать, могут выполнять другие функции. В этом случае мы будем получать предупреждения при выполнении программы. Команда ниже указывает PI игнорировать предупреждения и продолжить выполнение программы.
IO.setwarnings (Ложь)
Мы можем ссылаться на контакты GPIO PI, либо по номеру контакта на плате, либо по номеру их функции. Как и «PIN 29» на плате, это «GPIO5». Итак, мы говорим здесь, что будем обозначать булавку цифрой 29 или 5.
IO.setmode (IO.BCM)
Мы устанавливаем 3 контакта в качестве контактов ввода / вывода. Два выходных контакта будут управлять светодиодом, а входной контакт будет считывать сигнал с ИК-датчика.
IO.setup (2, IO.OUT) #GPIO 2 -> Красный светодиод как выход IO.setup (3, IO.OUT) #GPIO 3 -> Зеленый светодиод как выход IO.setup (14, IO.IN) #GPIO 14 -> ИК-датчик в качестве входа
Теперь нам нужно выключить зеленый светодиод и включить красный светодиод, когда объект находится далеко. Это можно сделать, проверив вывод GPIO14.
if (IO.input (14) == True): # объект далеко IO.output (2, True) # Красный светодиод ВКЛ. IO.output (3, False) # Зеленый светодиод ВЫКЛ.
Точно так же мы должны включить зеленый светодиод и выключить красный светодиод, когда объект находится рядом.
if (IO.input (14) == False): # объект рядом с IO.output (3, True) # Зеленый светодиод ВКЛ. IO.output (2, False) # Красный светодиод ВЫКЛ.
Команда ниже используется как бесконечный цикл, с этой командой операторы внутри этого цикла будут выполняться непрерывно.
Пока 1:
За работой:
После того, как вы создали свой код на Python, выполните его с помощью команды run. Если программа выполняется без ошибок, вы должны увидеть следующий экран.
Вы также должны увидеть, как загорается красный светодиод, когда перед датчиком нет предметов, как показано ниже.
Теперь поднесите что-нибудь к ИК-светодиоду, и вы должны заметить, что красный светодиод погаснет, а зеленый загорится. Полную работу можно посмотреть на видео, приведенном ниже.
Надеюсь, вы поняли проект и смогли построить что-то полезное. Если возникнут какие-либо вопросы, опубликуйте их в разделе комментариев ниже или на форуме.