ARDUINO Подсветка лестницы. Обсуждение проекта

akulaa

✩✩✩✩✩✩✩
31 Май 2023
10
3
Скажите сейчас уже реализовано (в прошивке) разное светодиодов на ступень!? 14 ступенек по метру ленты, одна короче будет.
Или можно сделать по 57 светодиодов (ws2811) на ступень? Или так работать не будет?
 
Изменено:
  • Лойс +1
Реакции: effectaxe

АндрейМ747

✩✩✩✩✩✩✩
27 Ноя 2023
5
2
Если сюда кто-то из знающих ещё заходит, помогите разобраться. Я правильно понимаю, что пока прога выполняет
void animatedSwitchOff и void animatedSwitchOn , то пирсенсор не опрашивается и если в этот момент зайти на лестницу, то подсветка не включится. Понимаю, что переключение дежурных диодов происходит относительно редко и относительно недолго, но, всё же неприятно ночью неожиданно ходить по слабоосвещённой лестнице или возвращаться помахать сенсору . Подскажите в каком направлении поковырять, чтоб это поправить. Или я что-то не досмотрел в проге и такого бага нет?

@Alex1873,Проще всего, в угоду функционалу, избавиться от красивости, отключив плавное затухание и загорание. Но хотелось бы победить это програмно. Можно ещё на уровне железа заставить пирсенсоры в сработанном положении задерживаться дольше, чем происходит смена дежурных диодов, но хотелось бы програмно. Можно ещё, наверное, как-то отслеживать сработку сенсора через прерывание по смене уровня на входе сенсора и менять переменную. Подскажите как это реализовать в ардуино. Раньше я пробовал только в кодвижен немного АВРки програмить.
 
  • Лойс +1
Реакции: Alex1873

rain251

✩✩✩✩✩✩✩
13 Май 2024
1
0
Всем привет.
бегло просмотрел и не нашел ответа - многими просимое !плавное! одноцветное включение - выключение ступенек так никто и не реализовал? или в этой прошивке это невозможно/дико сложно сделать?
Сейчас делаю себе лестницу и хотелось бы такой простой эффект, все эти огни, радуги , фейерверки надоели еще на стадии настольной сборки схемы..
 

Bruzzer

★★★✩✩✩✩
23 Май 2020
456
131
или в этой прошивке это невозможно/дико сложно сделать?
В этом проекте весь код не сложный. (Почти вся сложность спрятана в библиотеках).
Но если пожелание АндрейМ747 по поводу ночного режима легко реализовать просто добавив "заплатку" вызывая уже существующую функцию, то ваше пожелание требует бОльших усилий, хотя принципиальных сложностей нет. Возможно большая часть времени уйдет на решение эстетических вопросов - насколько плавное включение, сколько ступенек участвуют в "плавности" одновременно и т.д. Например сейчас на включение ступеньки отводится 0.3 сек - существенна ли для такого интервала плавность или нет.
(П.С. Я лестницу не делал, посмотрел код из интереса. )
 
  • Лойс +1
Реакции: АндрейМ747

effectaxe

✩✩✩✩✩✩✩
4 Дек 2022
1
0
Подскажите куда копать или как сделать с лентой WZ2811?! У меня 5 ступеней по 7 чипов, и 9 по 9 чипов. Как правильно написать в скетче?
 

Bruzzer

★★★✩✩✩✩
23 Май 2020
456
131
@effectaxe,
Это делается штатными средствами, и есть в описании.
Ниже приведен кусок кода для 8 ступенек с 16 чипами в каждой

Количество диодов в каждой ступеньке описывается в массиве.
Количество строк в массиве равно должно быть равно вашему количеству ступенек STEP_AMOUNT.
Вместо 16 пишите свое количество 7 или 9 для каждой ступеньки
C++:
#define STRIP_LED_AMOUNT 128  // количество чипов WS2811/WS2812 на всех ступеньках. Для WS2811 кол-во чипов = кол-во светодиодов / 3
#define STEP_AMOUNT 8        // количество ступенек

// описание всех ступенек с возможностью подсветки ЛЮБЫХ ступенек в ночном режиме
Step steps[STEP_AMOUNT] = {   
{ 16, 0b0100100100100100 },   // первая ступенька 16 чипов, 0b0100100100100100 - каждый третий чип активен в ночном режиме
{ 16, 0b0000000000000000 },   // вторая ступенька 16 чипов, 0b0000000000000000 - не активен в ночном режиме
{ 16, 0b0000000000000000 },   // 3
{ 16, 0b0000000000000000 },   // 4
{ 16, 0b0000000000000000 },   // 5
{ 16, 0b0000000000000000 },   // 6
{ 16, 0b0000000000000000 },   // 7
{ 16, 0b0100100100100100 }    // 8
};
 
  • Лойс +1
Реакции: effectaxe

Anton87

✩✩✩✩✩✩✩
4 Июл 2024
3
0
Доброго дня. Может кто подсказать как сделать, что поменять в коде чтобы при эффекте "огонь" ступеньки так-же зажигались по одной и тухли по одной. как в "радуге" или в одноцветном режиме?

У меня еще проблема. Цвета как-то не правильно горят. Желтый, какой то фиолетовый. Зеленый должен быть, а он совсем не зеленый. Белый только правильно. Менял RGB на BGR и еще во всех комбинациях. не меняется. Но это не важно по сути. А вот что бы ступеньки переключались в эффекте "огонь" хотелось бы.
 
Изменено:

Endry971

✩✩✩✩✩✩✩
25 Июн 2024
14
4
@Anton87,
На счет огня не знаю. у меня совсем другая подсветка. А вот на счет цвета подскажу. Вам в библиотеке нужно поменять.... Сейчас гляну. Откройте библиотеку microLED, внутри, блокнотом можно откройте файл ws2812_send.h и как на фото поменяйте цифлы. Думаю будет счастье!
 

Вложения

  • Лойс +1
Реакции: Anton87

Anton87

✩✩✩✩✩✩✩
4 Июл 2024
3
0
Ура! Поменялось!!!!!! Спасибо! Ендрю!!! Осталось найти как " огонь" сделать чтобы по порядку ступеньки зажигались. И еще бы что бы плавно желательно конечно. Я не понимаю как. А так все заработало! И огонь стал огнем!!!!!! Еще раз спасибо!
 

Endry971

✩✩✩✩✩✩✩
25 Июн 2024
14
4
Понимаю что и тут не просто одну деталь поменять.
Когда не знаешь Как переписать код, Прибегаем к хитрости. Сделайте что на фото и будут переключатся ступеньками а не сразу. Но даже в чем то интереснее будет. Лестница пробежит одним цветом, а потом загорится эффект огня следом вся. Правда быстро. И назад так-же. Надо найти просто задержку включения эффекта огня и увеличить время включения. Тогда думаю будет медленнее переключатся. Такой вот костыль)) Но работает. К сожалению я не программист. Но простые вещи маленько могу найти и попытаться обмануть систему. А вообще может придет разработчик и поможет. Не знаю.
 

Вложения

  • Лойс +1
Реакции: Bruzzer и Anton87

Endry971

✩✩✩✩✩✩✩
25 Июн 2024
14
4
непонятно нужно это будет кому-нибудь или нет. Пока я добавляю в прошивку только то что нравится лично мне и когда есть немного времени на это.
Думается что нужно будет по любому кому-нибудь. Почему нет. Кстати я вчера стараясь помочь парню, разглядел эффект огня. Сразу что то не разглядел. Думаю лучший эффект. Не так прям чересчур как радуга все переливается красками, но и не так как одноцветное "плоско". В самый раз. А то что включается сразу массивом конечно по мне так минус. Ступеньками было-бы интереснее. Так что я плюсую за добавку "фитчи")) Кстати ардуино я сделал типа флешки. Удобно вытаскивать для прошивки. Может интересно кому.
 

Вложения

Изменено:

bort707

★★★★★★✩
21 Сен 2020
3,046
909
Так что я плюсую за добавку "фитчи"))
Голосовать это к избиркому.

Раньше тут так было:

  • Автор пишет то, что интересно ему. Это доступно для всех.
  • Если не устраивает готовое - дописываешь сам.
  • Если не устраивает, но сам не умеешь - находишь того, кто умеет и заказываешь ему доработку. Даже ветки отдельные были по каждому проекту такие, "Задание на доработку". А теперь народ "голосует"
 

Endry971

✩✩✩✩✩✩✩
25 Июн 2024
14
4
Голосовать это к избиркому.

Раньше тут так было:
  • Если не устраивает готовое - дописываешь сам.
Я не голосую. Еще раз говорю. Не кто не кому не чего не должен. Просто дал понять что мне тоже по душе такая доделка. Геннадий же написал что не понятно нужна такая штука народу или нет. А как ему знать если не кто не говорит. Вот я обозначился. Только и всего. Будет время сам может допишу. Просто от не знания много времени уходит разбираться как это работает какие фунции кода в связке с другими. Да еще в блокноте. Надо с++ поставить. быстрее будет. и IDA еще. Давно не шаманил. Но я в делфи делал разные лончеры для EXE файлов. Это другое.
 

Bruzzer

★★★✩✩✩✩
23 Май 2020
456
131
@Endry971,
В актуальной версии режим Fire выбивается из остальных режимов.
  • Разную длину ступенек не поддерживает.
  • Выглядит не доделанным (или не переделанным) т.к. комментарии не соответствуют действительности, передаваемые параметры не используются и т.д.
Если за визуальный пример был взят эффект аналогичный огню Гайвер Лампы, то в принципе на лестнице такой красоты может не получиться. Может поэтому его и забросили. Если кто знает - напишите.
(Собственно основная цель данного сообщения - спросить про историю Fire).

Если же "классический" Fire не обязателен, то возможно устроит более легкий (понятный) эффект.
 

Endry971

✩✩✩✩✩✩✩
25 Июн 2024
14
4
@Endry971,
В актуальной версии режим Fire выбивается из остальных режимов.
  • Разную длину ступенек не поддерживает.
Это да. Я понял что этот эффект просто заливается массивом. Я просто думал что если взять к примеру эффект Радуги, задублировать, но в место перелива цвета по всей лестницы прикрутить перелив именно ступеней каждой типа огонь. В общем пардон если что не так сказал. Ясно одно, что это довольно существенное изменение всего кода.
 

bort707

★★★★★★✩
21 Сен 2020
3,046
909
Может поэтому его и забросили. Если кто знает - напишите.
Насколько я помню, изначально эффект огня откуда-то стащили в виде готового кода и в таком виде он кочует тут из проекта в проект, зачастую используемый безо всякого понимания. Например, в каком-то проекте я видел "огонь" с ограничением ширины картинки в 16 пикселей, вставленный в матрицу шириной 32. Естесственно, на выходе получается ерунда. А потом говорят. что эффект "не работает".

Разную длину ступенек не поддерживает.
этот эффект просто заливается массивом
и то и другое не проблема.
Чтобы обойти ограничение на разную ширину ступенек надо просто генерить эффект на ширину самой широкой ступеньки.
А чтобы выводить последовательно - опять же, генерить сразу на всю лестницу, но засвечивать только нужные ступеньки. вот и все.
 
  • Лойс +1
Реакции: Bruzzer

poty

★★★★★★✩
19 Фев 2020
3,220
938
Эффект огонь случайный, поэтому его применение в ограниченном временном промежутке более чем странно само по себе. Подсветка лестницы нужна для того, чтобы в темноте не споткнуться о ступени, а как об этом можно говорить, если в какие-то моменты будет светиться только часть ступени или не светиться вовсе. Последовательное включение не гарантирует, что первые ступени вообще включатся из-за эффекта случайности. Поэтому считаю этот эффект для лестницы - просто не подходит.
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,251
1,297
Москва
Я бы понял если бы эффект огонь работал в режиме ожидания и на очень маленькой яркости, а не как полноценная подсветка пути.

Для применения огня скорее всего надо объявлять доп массив, как сказал bort707, ширина - самая широкая ступень, другой размер - кол-во ступеней, а потом, при заполнении этого массива надо проецировать массив огня на массив ступеней с учетом реальной ширины каждой ступени. т.е. если макс ширина 10, а ширина ступени 8 я бы брал из огня ячейки 2-9 ( или 1-8 начиная с нуля). Но это для ардуины проблема.
Если использовать матрицу под огонь, то переделывать остальные эффекты.

А вообще все эти эффекты баловство и пускания пыли перед гостями.
 

Bruzzer

★★★✩✩✩✩
23 Май 2020
456
131
@Старик Похабыч,
Я не смотрел подробно алгоритм расчета огня, но на первый взгляд там не используются предыдущие значения, а каждый раз считается заново.
Если так, то доп массив не нужен и исправляется довольно легко (спасибо bort707 за подсказку.)
Добавил (исправил) в симуляторе.#582
 

bort707

★★★★★★✩
21 Сен 2020
3,046
909
А вообще все эти эффекты баловство и пускания пыли перед гостями
Меня все это интересует только с точки зрения программирования. Чисто технически изменить вывод "огня" так, чтобы он зажигался по ступенькам - на мой взгляд не сложно.
А уж будет ли это красиво - совершенно другой и, прямо скажем, не особо волнующий меня вопрос:)
 

Константин 271

★★★✩✩✩✩
12 Июл 2020
950
105
А вообще все эти эффекты баловство и пускания пыли перед гостями.
Нет, это ещё красиво, эффектно, у меня дома всегда работает и прежде всего удобно нам. Ночью реально помогает. Яркость сама подстраивается. Поступенечный розжиг - тоже приятен. А гости - да, их изумление идёт приятным бонусом
 
  • Лойс +1
Реакции: Endry971

bort707

★★★★★★✩
21 Сен 2020
3,046
909
это для ардуины проблема
Я еще 3 года назад писал, что давно пора отказаться от Уно нано в этом проекте и перейти на современные контроллеры. Тот же рп2040 стоит как нано, но при этом имеет на борту в 100 раз больше памяти для эффектов
 
  • Лойс +1
Реакции: Endry971