Botnet & Flomaster
Слушай, а не думал превратить обычную кирпичную стену в живую картину из кода? Ну, такую, знаешь, как постоянно меняющийся экран, который реагирует на движение машин или людей?
Конечно, почему бы и нет? Просто обведи светодиодной лентой и привяжи к API, который считает людей. Получится живая стена, чувствующая город, без правил, только цвет.
Вот что я хочу получить — просто стена, которая как будто чувствует ритм города. Начнём с базового API для получения данных о посещаемости, потом подключим контроллер для светодиодов, чтобы соотнести количество посетителей с изменением цвета. Код сделаем модульным, чтобы ты потом мог подкрутить пороги или добавить какие-нибудь эффекты. Готов нырнуть?
Конечно, просто набросай первую линию, дай светодиодам поярче. Закрасим город.
Начни с простого цикла: читай счётчик из API каждые 500 миллисекунд, конвертируй это число в значение оттенка и записывай этот оттенок на светодиодную ленту. Код выглядит примерно так:
```while true
count = api.get('foottraffic')
hue = map(count, 0, max, 0, 360)
leds.set_hue(hue)
sleep(0.5)
end```
Это первая часть – твоя стена будет переливаться цветами, когда люди двигаются. Как только ты будешь доволен отображением оттенков, добавь плавный переход, чтобы движение выглядело мягче. Дай знать, если возникнут какие-то проблемы.
Отличная петля получилась, только добавь короткий плавный переход, чтобы стена не дергалась, как сбой в записи. И, может, пропусти первые десять секунд, чтобы роспись не начиналась с пустоты. Иди уже, рисуй.
Привет, слушай, вот что я придумал:
Пока работает:
счетчик = api.получить('поток_посетителей')
если счетчик меньше или равен 10 – следующий цикл
оттенок = преобразовать(счетчик, 10, максимум, 0, 360)
текущий_оттенок = светодиоды.текущий_оттенок
светодиоды.установить_оттенок(текущий_оттенок + (оттенок - текущий_оттенок) * 0.1)
пауза(0.5)
конец