Управление внешним светодиодом с помощью Raspberry Pi и контактов GPIO

1656643213 upravlenie vneshnim svetodiodom s pomoshhyu raspberry pi i kontaktov gpio

Шахбаз Ахмед

1*4vVa8skvr2sj2WphTTWzZA
Источник изображения

В этой публикации мы рассмотрим контакты Raspberry Pi GPIO, создав программу GPIO Hello World, которая приведет к миганию красного светодиода. Мы будем использовать язык программирования Python. Я использую безголовый Raspberry Pi Zero WH (беспроводной с припаянными разъемами) из Raspbian Stretch Lite (операционная система Raspberry Pi с минимальным изображением на основе Debian Stretch).

Я буду разговаривать со своим безголовым Пи с помощью ssh и перенести необходимые файлы из моего Mac на Pi с помощью scp команды. Я предполагаю, что ваш Raspberry Pi запущен и работает с установленной ОС Raspbian. Если нет, то в Интернете есть много статей, которые описывают, как настроить ваш Pi и установить Raspbian, включая официальную документацию Raspberry Pi.

Вещи, которые вам понадобятся:

  • 1 x Raspberry Pi (я использую модель Pi Zero WH)
  • 1 х хлебная доска
  • 1х красный светодиод
  • 1 резистор 330 Ом
  • 2 кабеля переключения «мама» и «мама».

Конфигурация контактов GPIO

GPIO выступает за Входной выход общего назначения. С помощью контактов GPIO Raspberry Pi можно подключаться и взаимодействовать с внешними электронными компонентами. Последние модели Raspberry Pi (модели Pi 3, Pi Zero, Pi W и Pi WH и др.) содержат 40 контактов GPIO. Каждая булавка может включаться, выключаться или гаснуть. HIGH или LOW в электронном виде. Если шпилька есть HIGH он выдает 3,3 вольта, если штифт есть LOW он выключен.

0*Zpa1YOQcMlvu-Sxs

В нашем примере мы будем использовать pin 6 (земля) и pin 25. Чтобы узнать больше о контактах GPIO в Raspberry Pi, см. pinout.xyz.

Настройка схемы

Вы должны отключить Pi при построении схемы. Мы создадим схему, как показано на схеме ниже:

0*xch19X3RFpIZdFXw

Примечание: резистор на изображении имеет опоры 220 Ом, но я использовал в своей схеме 330 Ом.

  1. Для подключения используйте соединительный кабель pin 6 (Заземление) (черный кабель на изображении выше) к отрицательному ряду макетной платы.
  2. Для подключения GPIO используйте другую перемычку между женскими и мужскими. pin 25 к точке, представленной строкой A и колонка 12 на макетной плате, как показано выше (синий кабель на картинке выше).
  3. Подключите один конец 330 Ом резистор к отрицательному ряду (строки, выделенной зеленым цветом, где раньше подключался черный кабель выше), а другой конец подключите к точке, представленной строкой C колонка 11 на макетной плате, как показано выше.
  4. Короче конец СВЕТДИОДНЫЙ является отрицательным концом и более длинным является положительным концом. Более длинный конец всегда следует подсоединять к точке цепи с более высоким напряжением (то есть с более высоким потенциалом). Короче конец СВЕТДИОДНЫЙ подключено к GPIO pin 25 (который может выдавать 3,3 В) через синий кабель, а длинный конец подключен к земле pin 6 (который равен 0 В и действует как минусовая клемма аккумулятора) через черный кабель с резистором между ними.

Резистор

Учитывая, что я проходил вступительные курсы по электротехнике и электронике довольно давно (примерно 4-5 лет), у меня возникли два вопроса, на которые мне нужны были ответы. Прошу терпеть меня за наивность в этом контексте.

  1. Зачем нужен резистор в нашей схеме?
  2. Как мы определяем, сколько Ом (мера электрического сопротивления) должен иметь резистор?

Для рассеяния дополнительной электрической энергии (напряжения) от Raspberry Pi требуется резистор. Raspberry Pi рассчитан на подачу 50 мА при 3,3 В. Скажем, наш красный светодиод может иметь прямое напряжение (прямое напряжение – это «отрицательное напряжение», которое используется светодиодом, когда он включен) примерно 2 В и потребляет ток 4 мА. Таким образом, остальное 1,3 В должно рассеиваться резистором.

Используя закон Ома, V = IR, R = (3.3V - 2V) / (4/1000) который приходит вокруг 325 ohms — поэтому я рекомендую использовать a резистор 330 Ом.

Я узнал об этом по обсуждению на форуме Raspberry Pi.

Теперь, когда у нас есть полная схема, следующая часть — запрограммировать порты GPIO, чтобы произойти магия: заставить светодиод мигать. Мы будем использовать выход GPIO pin 25 чтобы светодиод мигал.

Запустите Pi и подключитесь к нему с помощью ssh. В терминале воспользуйтесь такой командой, чтобы установить библиотеку Python gpiozero. The gpiozero библиотека делает работу с контактами GPIO и подключенными внешними компонентами очень простой.

Для установки библиотеки Python введите sudo apt-get install python3-gpiozero.

Теперь мы запустим код Python. Сохраните приведенный ниже код в файловой системе Pi в файле под названием blink1.py. Сценарий в основном включает светодиод, подключенный к pin 25, переходит в спящий режим на 1 секунду, затем выключает светодиод и снова переходит в спящий режим на 1 секунду. И это делается непрерывно в цикле, пока программа не завершится (нажав ctrl + c).

Теперь из терминала перейдите в каталог, где сохранен сценарий, и запустите его с помощью команды: python3 blink1.py.

Вы увидите мигание красного светодиода:

0*5v09jlygdroPzBCF

Мы можем создать много интересных вещей, используя gpiozero используя аналогичную установку. Просмотрите документацию для gpiozero демонстрирующий несколько интересных примеров. Попытайтесь построить светофорную систему.

Впервые опубликовано на shahbaz.co 7 апреля 2018 года.

Добавить комментарий

Ваш адрес email не будет опубликован.