Contrôler une LED avec la Raspberry Pi

Включайте и выключайте светодиод с помощью Raspberry Pi и Python.

Обновлено 5 июня 2019 - 0 Комментарии - , , ,

ⓘ Эта статья могла быть частично или полностью переведена с помощью автоматических средств. Приносим извинения за возможные ошибки.

Это первое руководство из серии, посвященной использованию портов GPIO Raspberry Pi для управления электронными компонентами.

Как вы, наверное, знаете, у Raspberry Pi есть порты, называемые GPIO (General Purpose Input Output), которые позволяют управлять рядом электронных компонентов.

В этом руководстве мы увидим, как использовать эти порты GPIO для управления светодиодом с Raspberry Pi.

Необходимое оборудование

Чтобы следовать этому руководству, вам потребуются следующие материалы:

Этому руководству можно полностью следовать без необходимости пайки каких-либо компонентов.

Кроме того, вам нужно будет установить Raspbian на SD-карту и иметь возможность управлять Raspberry Pi напрямую с помощью клавиатуры / мыши / экрана или через SSH.

Основы GPIO

Порты GPIO — это физические порты, обычно имеющие форму квадратных металлических контактов, которые позволяют передавать электрический сигнал.

контакты gpios
Разъемы GPIO, предназначенные для пайки

Порт GPIO передает относительно двоичный сигнал (без тока или тока). В случае Raspberry Pi порты GPIO работают при напряжении 3,3 В и около 20 мА.

Таким образом, порты GPIO — это простой способ связи или управления физическими элементами.

Самые последние модели Raspberry Pi имеют 40 разъемов GPIO, которые разделены на разные категории с конкретным использованием.

  • Power +: непрерывное питание
  • GND: Ground = возврат на землю
  • I2C: синхронный последовательный протокол
  • SPI: Другой синхронный последовательный протокол
  • UART: асинхронный протокол + преобразование последовательной связи в параллельную.
  • GPIO: Общий порт, который можно преобразовать в I2C или SPI.

Порты GPIO пронумерованы от 1 до 40, начиная с верхнего левого угла, когда вы держите порты Raspberry pi GPIO вправо. Это так называемый режим нумерации «Доска». Существует другой режим нумерации, основанный на адресации процессора, называемый режимом «BCM».

В контексте этого руководства мы будем использовать только порты типа GPIO и GND и нумерацию «Board».

Подключите светодиод к Raspberry Pi

Для подключения мы будем использовать следующие компоненты: светодиод, резистор, макет и Raspberry.

Первым шагом нашего руководства будет разработка схемы подключения светодиода к Raspberry Pi. Не волнуйтесь, это очень просто и нам не придется строить сложные диаграммы!

Как выбрать сопротивление?

Первое, что нужно знать, это то, что в светодиоде всегда должен использоваться резистор. Это потому, что светодиоды имеют так называемое «пороговое напряжение». Проще говоря, слишком большой ток и светодиод сразу же перегорает, поэтому резистор является защитой.

Поэтому нам придется выбрать, какое сопротивление использовать. Для этого существует математическая формула для расчета размера используемого резистора.

Rmin = (Ualim - Uled) / Imax

Если у вас нет хороших остатков от уроков физики, я думаю, это вас не слишком далеко зайдет. Небольшое объяснение:

  • Rmin: минимальное используемое сопротивление, выраженное в омах (Ом).
  • Ualim: напряжение источника питания, выраженное в вольтах (В).
  • Uled: пороговое напряжение светодиода, выраженное в вольтах (В).
  • Imax: максимальная сила света светодиода, выраженная в амперах (A).

Как мы уже говорили, наши GPIO обеспечивают 3,3 В и 20 мА. Светодиод имеет максимальную интенсивность 20 мА (20 мА = 0,020 А) и пороговое напряжение 1,5 и 1,9 В.

Таким образом, формула следующая:

Rmin = (3.3 - 1.5) / 0.020

Таким образом, мы получаем минимальное сопротивление 90 Ом, которое мы округлим до 100 Ом. Мы займем немного места, выбрав вместо него резистор 270 Ом (или 330 Ом, нормализованные значения), тем самым защитив нас от возможного пика тока на GPIO.

Чтобы найти значение сопротивления, есть две возможности:

  • Это указано на бумажной полоске, которая удерживает светодиоды вместе.
  • Вам необходимо прочитать цветные кольца на резисторе, чтобы рассчитать его номинал. В Интернете вы найдете учебные пособия и сайты, которые помогут вам. (100 Ом = коричнево-черно-коричневый, 270 Ом = красно-пурпурный-коричневый и 330 Ом = оранжево-оранжево-коричневый)

Подключите светодиод к GPIO Raspberry Pi.

Теперь, когда мы знаем, какой резистор использовать, нам просто нужно все подключить к Raspberry Pi.

Для этого возьмем два кабеля типа папа / мама Dupont, мы выберем красный кабель для источника питания и черный кабель для возврата на землю (это соглашение).

Подключите красный кабель к порту 7 GPIO, а черный — к порту GPIO 6.

Подключите два кабеля к макетной плате, разделив их несколькими рядами. Подключите красный кабель к аноду вашего светодиода (удлиненная или длинная ножка), одну ножку резистора к катоду (другую ножку светодиода, следовательно, короткую ножку) и другую ножку резистора. к черному кабелю.

Совет: не можете вспомнить, какая ножка является анодом, а какая — катодом? Простая мнемоника, удлиненные анодные каналы!

Не очень понятно? Не паникуйте: «Лучше небольшой рисунок, чем длинная речь!»

Красный к аноду, катод к сопротивлению, сопротивление к черному!

Если вы хотите убедиться, что все работает нормально, можно провести небольшой простой тест. Отсоедините красный кабель от GPIO # 7 и подключите его к # 1. Это обеспечивает постоянное напряжение 3,3 В, при правильной разводке светодиод будет гореть :)!

Напишите программу для управления светодиодом с Raspberry

Теперь, когда наша схема готова, нам просто нужно написать программу для управления портами GPIO для включения и выключения светодиода.

Для этого мы собираемся использовать язык программирования Python. В этом руководстве мы будем оставаться очень простыми и просто приведем пример программы, объясняющий, как ее использовать и как она работает.

Так что это не курс Python. Однако, если вы хотите, мы недавно опубликовали вводный курс Python, который научит вас использовать Python для написания собственных программ для ваших проектов!

Итак, создайте папку /home/pi/electronic и файл led.py в этой папке и напишите там следующий код:

Обратите внимание, что тексты за # Комментарии используются для объяснения того, что делает код, но не влияют на программу. Вам не нужно его копировать, кроме первых двух строк.

#!/usr/bin/env python3
#-- coding: utf-8 --

import RPi.GPIO as GPIO #Importe la bibliothèque pour contrôler les GPIOs

GPIO.setmode(GPIO.BOARD) #Définit le mode de numérotation (Board)
GPIO.setwarnings(False) #On désactive les messages d'alerte

LED = 7 #Définit le numéro du port GPIO qui alimente la led

GPIO.setup(LED, GPIO.OUT) #Active le contrôle du GPIO

state = GPIO.input(LED) #Lit l'état actuel du GPIO, vrai si allumé, faux si éteint

if state : #Si GPIO allumé
    GPIO.output(LED, GPIO.LOW) #On l’éteint
else : #Sinon
    GPIO.output(LED, GPIO.HIGH) #On l'allume

Сделав это, мы сделаем программу исполняемой. Для этого просто выполните следующую команду:

chmod +x /home/pi/electronic/led.py

Все, что вам нужно сделать, это запустить скрипт, вызвав его так:

/home/pi/electronic/led.py

Каждый раз, когда вы запускаете скрипт, светодиод будет включаться, если он не горит, и гаснуть, если он горит.

Вот и все, теперь вы знаете основы включения и выключения светодиода с помощью Raspberry Pi. Все, что вам нужно сделать, это адаптировать код под свои нужды. Для этого не стесняйтесь обращаться к нашему курсу по Python!

Все, что вам нужно сделать, это перейти к следующему руководству из этой серии, прочитать RFID-карту с Raspberry Pi!

доля
Новостная рассылка
Автор:
Raspberry Pi FR
Присоединяйтесь к сообществу Raspberry Pi
Компьютер за 35 долларов уже продано 10 миллионов копий
КУПИТЬ НОВУЮ RASPBERRY PI 4
Связанные руководства
Используйте считыватель RFID с Raspberry Pi. Активируйте последовательный порт TTL Raspberry Pi и убедитесь, что он работает. Создание кластера Raspberry Pi с docker Swarm Включите встроенный зеленый светодиод Raspberry Pi. Научитесь программировать на Python 3 и Raspberry Pi, вводный курс.
Комментариев нет
доля
Подписаться на новости
Подпишитесь на рассылку новостей.
Тебе понравилась эта статья ?
Подпишитесь и будьте в курсе!