Рубрики
Без рубрики

Украсьте свою малиновую пи с пиморони Blinkt!

Сделайте свою малину Pi Shine в синие и фиолетовые цвета. Tagged с RaspberryPi, Pimoroni, Python, начинающими.

Вы знаете, эти игровые ПК с их удивительными светодиодами, вращающимися вокруг? Ну, у меня нет одного из них. Но I являюсь Обучение Linux на моей Raspberry Pi. И я учусь быстрее, работая над забавными небольшими боковыми проектами. Поэтому я решил спешить с помощью моей малины Pi, используя Pimoroni Blinkht. .

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

Настройка Pimoroni Blinktt

Настройка Blinkt довольно прямо вперед. Сначала убедитесь, что поместите Blinkt на 40-контактный заголовок PI Raspberry Pi. Округлые углы Blinkt должны выровнять с закругленным углом PI.

Убедитесь, что вы вошли в ваш PI, а в Terminal Run

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

Это установит программное обеспечение, которое вам нужно будет запустить Blinkt. Мы используем Документация Чтобы узнать, как настроить линейный синий/фиолетовый узор.

Создайте и откройте новый файл Python в вашем терминале. В моем случае я создал один в папке Pimoroni:

$ nano Pimoroni/blue_purple.py 

Я сделал это, используя нано редактор. Вы также можете создать файл другого способа и открыть его в предпочтительном редакторе.

Импортные зависимости

Во-первых, нам нужно импортировать библиотеки, которые нам нужны. В верхней части файла мы импортируем Blinkt Чтобы контролировать светодиоды, время создавать тайм-ауты и numpy создать целый ряд десятичных знаков.

#!/usr/bin/env python

import blinkt 
import time
import numpy

Переменные

Создайте список цветов в формате RGB. С этим я имею в виду, что мы создаем список списков. Каждый маленький список содержит номер для R, G и B.

Тогда мы используем numpy Создать диапазон плавающихся между 0 и 0,5 Отказ Диапазон изготовлен из шагов 0,03 Отказ Этот диапазон поможет нам постепенно зажечь каждый пиксель.

COLOR_LIST = [[0, 127, 255], [0, 0, 255], [127, 0, 255], [255, 0, 255], [255, 0, 127]]
BRIGHTNESS_RANGE = numpy.arange(0, 0.5, 0.03)

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

blinkt.set_clear_on_exit()

Установка пикселей

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

def set_brightness(pixel, r, g, b, brightRange):
    for brightness in brightRange:
        blinkt.set_pixel(pixel, r, g, b, brightness)
    blinkt.show()
        # we need to run show after setting the pixel
        # otherwise we won't see anything change.
    time.sleep(0.01)
        # give it a little time to add a slight effect.

Во время петли

Теперь мы собираемся добраться до настоящего цикла, которая собирается сделать наш пиморони Blinkt Light.

Мы собираемся начать цикл и внутреннюю петлю на каждом цветовом массиве в Color_list Отказ

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

Библиотека Blinkt имеет собственную константу под названием Blinkt. Num_pixels Это вырывает количество пикселей, доступных на устройстве. Для каждого пикселя мы называем Set_Brights функция. Передаем цвета пикселей и RGB вместе с Brightness_range Отказ

try:       
    while True:
        for color in COLOR_LIST:
            for pixel in range(blinkt.NUM_PIXELS):
                set_brightness(pixel, color[0], color[1], color[2], BRIGHTNESS_RANGE)
            for pixel in reversed(range(blinkt.NUM_PIXELS)):
                set_brightness(pixel, color[0], color[1], color[2], reversed(BRIGHTNESS_RANGE))
except KeyboardInterrupt:
    pass

Потому что мы хотим, чтобы пиксели зажечь, а затем постепенно выключаются снова, мы делаем обратное для петли. Увидеть разницу между ними? Мы используем обратный (диапазон (Blinkt. Num_pixels)) И мы также отправляем обратный Brightness_range Отказ

Это сейчас! Попробуйте, сохранив файл и запустил его:

$ python blue_purple.py

Чтобы остановить скрипт, используйте Ctrl-C Отказ

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

Проверить Готовый скрипт

Источники: Начните с Blinkt Pimoroni Blinktt Documentation Keyboardintrupt

Оригинал: “https://dev.to/khenhey/beautify-your-raspberry-pi-with-the-pimoroni-blinkt-2ld6”