Как использовать Raspberry Pi Build HAT: создать установку для определения цвета

Windows

[ad_1]

Последнее дополнение от Raspberry Pi, Построить шляпу является результатом сотрудничества между Raspberry Pi и Lego Education. Эта новая плата позволяет использовать мощь Raspberry Pi с совместимыми компонентами Lego, такими как моторы и датчики из наборов Spike Prime, Technic и Mindstorms. Lego существует уже несколько десятилетий и хорошо известен как простой в использовании инструмент для строительства, но знаете ли вы, что его можно использовать для создания сложных проектов, таких как роботы собирают кубики рубика?

Доступный за 25 долларов, Build HAT был создан для расширения возможностей оригинальных наборов Lego, ориентированных на языки программирования на основе блоков. Благодаря простому в использовании модулю Python Build HAT и его четырем разъемам LPF2 (которые используются в деталях Lego) мы можем смешивать Lego с существующими надстройками Raspberry Pi.

Чтобы представить Build HAT, мы создали простую установку для определения цвета. Мы нажимаем кнопку, и датчик цвета считывает любой объект, находящийся под ним. Цвет, который «видит» датчик, воспроизводится с помощью Blinkt за 10 долларов.

Прикрепить кнопку и датчик к Build HAT очень просто благодаря разъемам LPF2, поэтому все, о чем нам нужно беспокоиться, это собрать установку для размещения нашего проекта.

Для этого проекта вам понадобится:

  • Любая модель Raspberry Pi с 40-контактным GPIO
  • Построить шляпу
  • Сборка блока питания HAT
  • Комплект Lego Spike Prime (включает датчик силы и датчик цвета).
  • Пиморони Блинкт
  • Расширенный заголовок GPIO
  • Последняя версия ОС Raspberry Pi, установленная на карту microSD

Настройка сборки HAT

Добавить Build HAT к Raspberry Pi относительно просто, и мы можем добавить еще одну плату HAT поверх Build HAT, используя расширенный заголовок.

1. Поместите расширенный заголовок GPIO на GPIO. Это увеличивает длину контакта GPIO, позволяя ему «протыкать» Build HAT.

2. Подключить сборку HAT к GPIO Raspberry Pi. Используйте входящие в комплект проставки M2,5 9 мм. чтобы плата не касалась аудио/видео разъема.

(Изображение предоставлено Tom’s Hardware)

3. Поместите Blinkt на расширенные контакты GPIO. Обратите внимание, что изогнутые края Blinkt должны совпадать с углами Raspberry Pi.

(Изображение предоставлено Tom’s Hardware)

4. Подключите датчик силы Lego к порту A, и Датчик цвета к порту B построить HAT.

(Изображение предоставлено Tom’s Hardware)

5. Включите Raspberry Pi с помощью блока питания Build HAT.

(Изображение предоставлено Tom’s Hardware)

6. С рабочего стола нажмите на Главное меню >> Настройки >> Конфигурация Raspberry Pi.

(Изображение предоставлено Tom’s Hardware)

7. Нажмите «Интерфейсы», а затем установите для параметра «Последовательный порт» значение «Включить», а для параметра «Последовательная консоль» — значение «Отключено». Build HAT взаимодействует с Raspberry Pi через последовательный интерфейс, который использует некоторые контакты GPIO.

8. Откройте терминал и установите модуль Build HAT Python.

$ pip3 install buildhat

9. Установите модуль Pimoroni Blinkt Python с помощью пользовательского интерактивного установщика.

$ curl https://get.pimoroni.com/blinkt | bash

Кодирование проекта

1. Перейдите в Главное меню >> Программирование и выберите Тонни.

(Изображение предоставлено Tom’s Hardware)

2. В новый документ импортируйте три модуля кода. Первый — это модуль Build HAT, в частности, классы для работы с датчиками силы и датчиками цвета. Время следующей установки, чтобы добавить задержки в код. Наконец, импортируйте модуль Blinkt для управления светодиодами.

from buildhat import ForceSensor, ColorSensor
import time
import blinkt

3. Создайте два объекта, кнопку и cs который мы будем использовать, чтобы сообщить Build HAT, к какому порту мы подключили датчик силы и датчик цвета.

button = ForceSensor('B')
cs = ColorSensor('A')

4. Добавьте строку кода, которая гарантирует, что Blinkt отключится, когда код закончится.

blinkt.set_clear_on_exit()

5. Добавьте цикл для непрерывного выполнения кода, первый шаг — проверить состояние датчика силы, чтобы увидеть, был ли он нажат.

while True:
    if button.is_pressed() == True:

6. Добавьте две строки кода, которые активируются при нажатии датчика силы. Код активирует датчик цвета, а затем считывает показания, сохраняя данные в формате RGB в виде списка.

       cs.on()
        colors = cs.get_color_rgbi()


7. Добавьте строку для печати содержимого списка «цвета», затем сохраните первое, второе и третье значения. из списка цветов в переменные r, g, b.

        print(colors)
        r = colors[0]
        g = colors[1]
        b = colors[2]

8. Установите Blinkt, чтобы использовать значения r, g, b для подсветки светодиодов RGB. чтобы соответствовать цвету, который «видит» датчик цвета.

        blinkt.set_all(r, g, b)
        blinkt.show()




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

        time.sleep(5)
        blinkt.set_all(0, 0, 0)
        blinkt.show()

10. Добавьте условие else, которое обеспечит отключение датчика цвета, когда он не используется.

    else:
        cs.off()

11. Сохраните код как lego-color-blinkt.py.

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

(Изображение предоставлено Tom’s Hardware)

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

(Изображение предоставлено Tom’s Hardware)

Полный список кодов

from buildhat import ForceSensor, ColorSensor
import time
import blinkt

button = ForceSensor('B')
cs = ColorSensor('A')
blinkt.set_clear_on_exit()

while True:
    if button.is_pressed() == True:
        cs.on()
        colors = cs.get_color_rgbi()
        print(colors)
        r = colors[0]
        g = colors[1]
        b = colors[2]
        blinkt.set_all(r, g, b)
        blinkt.show()
        time.sleep(5)
        blinkt.set_all(0, 0, 0)
        blinkt.show()

    else:
        cs.off()

[ad_2]

Оцените статью
( Пока оценок нет )
Добавить комментарий

Top.Mail.Ru
اجمل جسم بنت hardpornx.net سكس تمريض
free punjabi xxx video porno-trash.net video 9.com
hot namitha indianhottube.com odia sxy
sonagachi girls rate pornucho.mobi nayanthara home
babhi porn yourporn.name dpsbokaro
xxxstepmom freepakistaniporn.com xnxxx sex videos
tamil sex videos twitter ganstagirls.info hindi x picture
www. kamukta.com mom2fuck.mobi xxx pourn
سكس الابن وامة freepornhunter.net سكس نيك موت
جنس كلاسيك bibshe.com فنانات عرب عاريات
warangal sex videos mojoporn.net english sex with
سكس امهات مصرى porn2you.org مدرسة شبرا الشرموطة
indian sexuniversity indiansexmms.me hyd x videos
shiro bara no kishi loriana hentaisin.com bricola 5
futanari club hentai hentai.name floatzel hentai