• Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

22 проекта на Omega2

  • записей
    10
  • комментария
    2
  • просмотра
    3 143

2.2 Светофор на светодиодах

Админ

387 просмотров

В этом уроке мы создадим миниатюрный светофор при помощи LED-индикаторов и Omega. Мы также познакомимся с основами управления GPIO в Omega при помощи программ на языке Python. 

4.jpg

Уровень навыков: начинающий

Необходимое время: 10 минут

Мы будем работать с модулем Python Onion GPIO. Это самый востребованный модуль для любого проекта, где необходимо управление и взаимодействие с другими электросхемами! 
Полный код для проекта «Светофор для начинающих» можно найти на GitHub по этой ссылке

Что потребуется:

  • Onion Omega2 или Omega2+
  • Любая док-станция Onion, которая работает с GPIO: Expansion Dock, Power Dock, Arduino Dock 2, Breadboard Dock
  • 1 макетная плата
  • 3 светодиода (красный, желтый, зеленый)
  • 4 соединительных провода (папа-папа)
  • 3 резистора 200 Ом (примерно)

5.jpg

1. Подготовим все необходимое

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

Соединяем LED

  1. Подключаем LED к макетной плате, при этом катод находится слева, а анод справа. Убедитесь, что красный провод расположен над желтым, а желтый над зеленым.
  2. Подключаем один конец резисторов 200 Ом к шине катодов, а другой конец — к минусовой шине слева на плате.
  3. Подключаем GPIO к LED следующим образом:
  • Красный к GPIO 2
  • Желтый к GPIO 1
  • Зеленый к GPIO 0

6.jpg

2. Устанавливаем Python

Устанавливаем Python, необходимый модуль Python и Git при помощи следующих команд: 

opkg update
opkg install python-light pyOnionGpio git git-http ca-bundle

Данные команды "подкачают" с сервера интерпретатор Python-ligt и другие необходимые пакеты.

3. Скачиваем код проекта 

Код для этого проекта можно найти на GitHub по этой ссылке. Используйте git, чтобы скачать код на свой Omega: перейдите в директорию /root и клонируйте репозиторий GitHub: 

cd /root
git clone https://github.com/OnionIoT/starter-traffic-light.git

Так как код проекта – это всего лишь один файл, то вы можете скачать код напрямую без установки и работы с git:

mkdir /root/starter-traffic-light
cd /root/starter-traffic-light
wget https://raw.githubusercontent.com/OnionIoT/starter-traffic-light/master/main.py

4. Запускаем проект

Введите директорию проекта и запустите файл main.py:

cd starter-traffic-light
python main.py

После этого, вы должны увидеть как меняются цвета!

Подробнее о коде

Мы используем модуль Python Onion GPIO для управления GPIO. Этот модуль наделяет объект удобными функциями, такими как setOutputDirection() и setValue(), что позволяет контролировать GPIO в Omega2 и сэкономить много времени на те задачи, которые остаются, что называется, за кадром.
Для того чтобы подробнее узнать, как работает GPIO, заглянем в файл main.py:

  • Во-первых, были созданы объекты OnionGpio и присвоены GPIO номера. Теперь мы видим три объекта OnionGpio, каждый контролирует один GPIO.
  • Затем, все три GPIO настроены на вывод, значение по умолчанию 0 или OFF. Это осуществляется за счет вызова функции setOutputDirection() для каждого из объектов OnionGpio.
  • После этого в любое время можно изменить значения GPIO, вызвав функцию setValue(). Функция setSignal() задает значение для всех трех GPIO, в зависимости от цвета, который будет показывать миниатюрный светофор.



0 комментариев


Нет комментариев для отображения

Создайте аккаунт или войдите для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас