Реклама

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

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

Это введение служит первой частью более крупного проекта по автоматизации дома. Кристиан уже заложил основы начать с пи Raspberry Pi: неофициальный урокНезависимо от того, являетесь ли вы текущим владельцем 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 написать 4 1

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

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

питон

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

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

apt-get установить python-dev apt-get установить python-rpi.gpio

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

нано test.py

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

импорт RPi. GPIO как GPIO. время импорта. GPIO.setmode (GPIO.BCM) GPIO.setup (4, GPIO.OUT) для x в диапазоне (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
законченный

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

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

Джеймс имеет степень бакалавра в области искусственного интеллекта и сертифицирован CompTIA A + и Network +. Он является ведущим разработчиком MakeUseOf и проводит свое свободное время за игрой в VR-пейнтбол и настольные игры. Он строит компьютеры с детства.