Одновременное управление несколькими кусками диодной ленты

Добрый день.

В ардуино новичек, образование не профильное - программист. Занимаюсь ардуино только зимами, темными вечерами :slight_smile:
Простые датчики, шилды моторчиков. Мелочи.
Возникла идея сделать что-то стоящее.
А именно подсветку лестницы в своём частном доме.

И вся загвоздка в индивидуальной плавности включения/выключения подсветки каждой ступени. Подходим к лестнице, по датчику (ам) движения начинаем процесс.
Вначале бегущие ступени, одна за одной, быстро включаются последовательно.
Затем плавно, но быстро от 0 до 255 включаются все ступени.
Начинаем подниматься. (имя примерную скорость подъема) и ступени за нами медленно тухнут, с разной скоростью.

Имеется 16 ступеней, но сразу хочется сделать масштабируемо, чтобы легко можно было и 20 и 30 ступенек подсвечивать. Поэтому какой-то расширитель портов.

Есть куча плат расширителей портов аналоговых и GPIO, и будто-бы все они могут писать только в один из своих выводов.

А хотелось бы как-бы параллельно управлять множеством аналоговых вывовдов.

Подскажите в какую сторону смотреть, может вообще подход не тот?
Пока только жду Breakout-TLC5940 (16 каналов) PWM Control LED Driver Board, вроде как он должен уметь.

С этими не получилось: CD74HC4067, HT16K33, MCP23017.

И второй вопрос, питать буду куски ленты длинной 1 м, 4.8 ватт, 12 вольт. Не адресные.
ИИ мне подсказал транзистор IRL520N через резистор 1Ком. питание от БП 12 вольт.
Оно работает и всё ок, но кажется свойства транзистора с большим слишком запасом. Может чем-то можно заменить, более подходящим?

Заранее благодарен.

74HC595 видимо

Спасибо. Почитал, похоже на то, что нужно.
Но все примеры, что видел, везде digitalWrite - получится ли его использовать для случая analogWrite, чтобы мне управлять яркостью, а не просто включением/выключением?

ну это видимо шимить выводом через SPI скорость то там приличная, но это несколько усложнит программирование
PS тут нужен уровень программирования несколько больше начального, никаких аналог врайт, хотя если всеми лентами сразу почему нет, выводом энейбл

Вот такое нашел, оно ли это?

“А что же делать, если нам нужно показать разную яркость светодиодов, подключённых к одному сдвиговому регистру. Здесь снова нужно будет пойти на хитрость — создать карту яркостей светодиодов, и зажигать каждую группу со своей яркостью по очереди, так быстро, чтобы создавалось ощущение постоянного свечения:”

https://developer.alexanderklimov.ru/arduino/shiftregister.php

ну так это я тебе как ненастоящий сталевар уже выше сказал

А почему не адресные диоды? Сильно дешевле получается, или другие причины?

Не знаком с технологией просто.
Поизучаю вопрос.

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

Подумайте - если на полпути вернуться решите, чем это закончится? А если двое пойдут - один вниз, другой вверх?

3 лайка

У Гайвера есть в проектах ARDUINO - Подсветка лестницы | AlexGyver Community
Баловство это. Но ведь кто то делает.

Одна адресная и ничего делить/городить не надо …

1 лайк

Ознакомтесь и делайте на адресной ленте - схема будет просто в разы проще.
Да и код тоже.

а может обычная лампочка и два выключателя, а то пихаем эти контроллеры куда ни попадя?

Отличное решение! Очень люблю эту микросхему, могу поделиться не попсовой документацией по ней, а также своими наработками и наблюдениями. Если она Вам подойдёт, то ничего и искать не надо.

Не подойти она может, например, потому, что она управляет группами с общим анодом (а у Вас там с чем?). Если нужно управлять группой с общим катодом, то там надо потрахаться, но в принципе, решаемо, могу показать схему. Также надо понимать, что её библиотека занимает сразу оба свободных таймера на 328р, но это не беда – есть решение вовсе без таймеров (всё ничуть не хуже, только управление яркостью становится на 12-ти, а 6-ти битным), это решение тоже здесь на форуме описано.

А так, всё с ней замечательно – можно каскадировать, выходы – открытый коллектор, т.е. можно использовать для светодиодов большие напряжения (до 17В). Вообще, с нею всё здорово! Я бы делал на ней (может, просто потому, что её хорошо знаю). Если чего, обращайтесь.

Кроме того, что большинство лотов с tlc5940 на Али - неработоспособные подделки.

Видимо, мне везло – ни разу не натыкался, а покупал немало, у меня и сейчас их несколько десятков в СВХ валяется. Ни одного неработоспособного экземпляра не видел.

У меня пока в поделке все ленты питаются через IRL520N.

  • питания всех лент соединен и идет на БП.
    Минус на свой транзистор, открытие транзистора с ардуино, через резистор 1КОм.

Сам транзистор пока под вопросом, мне кажется излишне мощный для такой нагрузки (12 Вольт, 5 Ватт).

Поделитесь пожалуйста информацией, если не сложно.
ugr@bk.ru

Сам вышел на неё по этой разработке
https://learn.sparkfun.com/tutorials/interactive-hanging-led-array#all-together-now

Хотел сказать плюсы питания лент соединены.

есть ещё по I2C управляемые PCF8574, PCF8575 кстати

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