Начало работы с GPIO на Raspberry Pi

признаки-RPI-GPIOЕсли вы считаете, что Arduino был крутым, просто подождите, пока вы не дотронетесь до Raspberry Pi — эти вещи потрясающие. Помимо того, что они являются полностью функциональным компьютером, они также имеют выбор Универсальный ввод / вывод штырьки. Так же, как Arduino, мы можем использовать их для создания проектов электроники — и на удивление легко начать.

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

Это введение служит первой частью более крупного проекта по автоматизации дома. Кристиан уже заложил основы для начала работы с Pi, поэтому я не буду повторять здесь начальные шаги по загрузке ОС или подключению SD-карты — я предполагаю, что у вас есть рабочая система Raspian уже настроен.

Предупреждение: Хотя Raspberry Pi можно использовать аналогично Arduino, требуется немного больше внимания. Штыри пи работают на 3.3В, пока Arduino использует 5v. Хотя можно сломать Arduino, гораздо проще сломать Pi, так как контакты подключаются непосредственно к встроенному чипу — посылка 5В вниз может обжарить его.

Поэтому будьте очень осторожны при попытке воспроизвести проекты Arduino на своем Pi — либо следуйте конкретному руководству по Pi, либо убедитесь, что хорошо разбираетесь в базовой электронике.

Требования:

  • NPN-транзистор, такой как P2N2222A
  • Резистор 1к
  • Реле; Я использую 4-релейный модуль 5В, который имеет дополнительную встроенную схему защиты (поэтому нет необходимости в дополнительных диодах
  • Светодиод и резистор 220 Ом для тестирования
  • Проложить кабель

Разветвительный кабель («Cobbler Kit»)

Контакты GPIO расположены сбоку от Pi, рядом с разъемом видеовыхода RCA.

прорыв-кабель

Хотя вы можете технически подключить некоторые соединительные кабели с внутренним концом непосредственно к ним, они не помечены каким-либо полезным способом, и поэтому вы с большей вероятностью что-то сломаете. Вместо этого, получите отрывной кабель, такой как этот, от Adafruit или одного из многих более дешевых клонов на eBay. Возможно, вам придется припаять это, так как оно придет в форме набора.

прорыве доска

Хотя на стороне платы есть выемка для указания правильного размещения кабеля, на стороне Pi нет. Убедитесь, что контакты 3v и 5v в дальнем углу Pi совмещены с соответствующими контактами на плате. Конечно, если вы купили футляр, в котором не виден заголовок GPIO, вам нужно будет работать с голым пи или вырезать дыру.

ясно случай, GPIO

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

Основная цепь

Настройте схему, как описано ниже. Я пропустил релейную схему, так как она будет меняться. Использовать НЕТ (нормально закрытый) и COM клеммы вашего реле для вашего светодиода или другого устройства.

схема

Используйте контакт 4 от Raspberry Pi. На моей панели обсуждения она помечена + GPCLK0; независимо от того, это четвертый вывод, считая от 3V3.

pin4

Тестирование командной строки

В следующих примерах я предполагаю, что вы вошли через SSH или иным образом как пользователь root. Если нет, вам нужно будет ввести некоторые из команд с помощью sudo для повышения привилегий.

Во-первых, нам нужно установить WiringPi.

git clone git://git.drogon.net/wiringPi
cd wiringPi
./build

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

gpio -g mode 4 out
gpio -g write 4 1

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

Потрясающие. Если это не так, вернитесь и проверьте свою проводку. Реле щелкает?

питон

Хотя Python не является единственным способом связи с выводами GPIO, он обычно считается самым простым и наиболее часто встречается в существующих проектах. В отличие от C, Python относительно легко подобрать (вот 5 сайтов для изучения Python

).

Начните с установки следующих расширений Python:

apt-get install python-dev
apt-get install python-rpi.gpio

Теперь создайте новый файл с именем test.py. если вы используете командную строку, введите

nano test.py

Вставьте или введите следующее (также на эту вставку):

import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT)
for x in range(0,10):
time.sleep(5)
GPIO.output(4,1)
time.sleep(5)
GPIO.output(4,0)

Это очень простой скрипт Python, который включает светодиод (или что-то еще, что вы подключили к своему реле) на 5 секунд, а затем выключает на 5 секунд, 10 раз. Вы должны быть в состоянии понять большую часть кода. GPIO.setmode линия просто используется для обозначения схемы нумерации выводов, которую мы собираемся использовать.

Это оно! Чтобы запустить код, введите:

python test.py

законченный

На следующей неделе мы немного проработаем настройку и сделаем некоторые интересные вещи, такие как добавление голосового управления. Если вы собираетесь добавить электрические элементы высокого напряжения в цепь реле, вы должны быть уверены, что используете реле с соответствующим номиналом на проводе, и убедитесь, что все вложено так, чтобы оно было далеко от посторонних пальцев детей или мамы. Если серьезно, будь в безопасности.

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

Ссылка на основную публикацию
Adblock
detector