Подсветка потолка. Солнечная система.

Сергей1

✩✩✩✩✩✩✩
10 Мар 2020
8
0
Здравствуйте, товарищи!
Моя супруга давно просит меня сделать потолок в ванной комнате, мол надо натянуть или подвесной сделать.
А, поскольку у меня маленький ребенок, я всегда хотел сделать на поолке что-то типа Солнечной системы в миниатюре.
Посмотрев ролике на этом сайте про то как можно использовать адресную ленту с контроллером ардуино появилась идея сделать Солнечную систему динамичной, добавить в конструкцию ардуино с такими лентами.
На картинке кругами изображны солнце и остальные планеты. Солнце должно переливаться, а планетам достаточно просто светиться. Звезды могут загораться хаотично, плавно изменяя степень свечения, так и складоваться в созвездия.
Мой вопрос к вам - на чем это можно реализовать?Потолок.png
 

Вложения

Сергей1

✩✩✩✩✩✩✩
10 Мар 2020
8
0
@_BadWolf_, Спасибо за ответ. Я ОЧЕНЬ мало знаком с ардуино, не знаю на каких элементах можно реализовать. В качестве подсветки звезд что использовать - один диод для каждой звезды или можно как-то адресную ленту? При этом чтобы имелась возможность зажигать звезды, например, в созвездия. Если да диодах, то нужен шилд расширения дискретных выходов? Если необходимо плавно изменять свечение звезд, то нужен аналоговый выход? На каких элементах все построить? Еще хочу подключить динамик чтобы воспроизводить музыку и речь.
 

kalobyte

★★★✩✩✩✩
1 Янв 2020
726
146
или можно как-то адресную ленту?
есть отдельные адресные диоды на креплении типа платы
https://www.aliexpress.com/item/32805045364.html
https://www.aliexpress.com/item/4000547790027.html

для кругов есть готовые платы
https://www.aliexpress.com/item/32966927129.html

Еще хочу подключить динамик чтобы воспроизводить музыку и речь.
для этого есть плеер на микросд карточке с простым управлением по юарту
https://www.aliexpress.com/item/33047673289.html

самое сложное тут это нарисовать этот потолок и отфрезеровать, а потом смонтировать все эти диоды на потолке и заклеить накладкой со звездами
паять навесу то еще удовольствие
 
  • Лойс +1
Реакции: Сергей1

Сергей1

✩✩✩✩✩✩✩
10 Мар 2020
8
0
Спасибо за ссылки
@kalobyte, https://aliexpress.ru/item/32805045364.html - не пойму как это работает, эти диоды можно будет раздвинуть на расстояние 10 см друг от друга? к ардуино как их подключать? управление тоже по юарту?
самое сложное тут это нарисовать этот потолок и отфрезеровать, а потом смонтировать все эти диоды на потолке и заклеить накладкой со звездами
паять навесу то еще удовольствие
Вот с деревом как раз мне работать не сложно.
 

_BadWolf_

★✩✩✩✩✩✩
2 Янв 2020
49
16
не пойму как это работает, эти диоды можно будет раздвинуть на расстояние 10 см друг от друга? к ардуино как их подключать? управление тоже по юарту?
Это просто заготовка, сзади есть контакты, к ним нужно паять 3 проводка к предыдущему и 3 к следующему диоду - соединять диоды последовательно out -> in, соблюдать направления. К ардуине 1 проводом подключается + провод земли.
 

kalobyte

★★★✩✩✩✩
1 Янв 2020
726
146
управление тоже по юарту?
нет, там свой протокол
это называется адресный диод
вот тут библиотека для них
https://alexgyver.ru/microled/

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

Сергей1

✩✩✩✩✩✩✩
10 Мар 2020
8
0
ну тогда половина работы сделана, написать прогу не так сложно
в том то и дело, что я дружу с программированием и деревом) но вот с радиоэлектроникой туго.

Это просто заготовка, сзади есть контакты, к ним нужно паять 3 проводка к предыдущему и 3 к следующему диоду - соединять диоды последовательно out -> in, соблюдать направления. К ардуине 1 проводом подключается + провод земли.
то есть все 200 диодов, что у меня будут, я смогу подключить к одному выходу на ардуино и зажигать их в произвольном порядке? Нужен ли для такого количества диодов дополнительный источник питания и если да то какой?
 

poty

★★★★★★✩
19 Фев 2020
2,956
886
Да, они подключаются последовательно (вернее - на одну шину).
Блок питания будет зависеть от количества одновременно включенных диодов и вида примененных элементов (есть несколько видов с разной мощностью, количеством в элементе,...).
Я бы настоятельно рекомендовал при использовании одновременно 50-100 штук ставить фильтр между точкой подключения в общую сеть и "гирляндой" - ШИМ там убойный.
 

kalobyte

★★★✩✩✩✩
1 Янв 2020
726
146
и если да то какой?
светодиоды питаются от 5в и каждый максимум потребляет порядка 60ма
5 х 0.06 = 0.3вт
0.3вт х 100 = 30вт

тебе нужен бп на 5в 8-10а
на последний светодиод надо тоже припаять 2 провода для питания, а то при максимальной яркости будет просаживаться там
 
  • Лойс +1
Реакции: Сергей1

Сергей1

✩✩✩✩✩✩✩
10 Мар 2020
8
0
Я бы настоятельно рекомендовал при использовании одновременно 50-100 штук ставить фильтр между точкой подключения в общую сеть и "гирляндой" - ШИМ там убойный.
Не могли ли вы нарисовать схему как это выглядит, на слух плохо воспринимаю? Диодов будет около 150 - 200.

В гайде по подключению ленты указано, что управление лентой осуществляется по протоколу, а на схеме лента подключается на дискретный выход ардуино. В моем понимании дискретный выход принимает значения. например, 0-5 вольт. Протокол же реализует отправку пакета из набора бит. Чего я не понимаю?
 

poty

★★★★★★✩
19 Фев 2020
2,956
886
Не могли ли вы нарисовать схему как это выглядит, на слух плохо воспринимаю? Диодов будет около 150 - 200.
Вы же уже нашли руководство, там полная информация по подключениям имеется. Например.
Пришло в голову, что речь может идти о схеме фильтра или о схеме его подключения. Частично это описано по ссылке выше. Я считаю, что должен быть обязательно добавлен сетевой фильтр (например, B84111-A-B60, не призываю использовать именно этот фильтр, так как он достаточно дорогой, есть варианты существенно дешевле; как вариант - вынуть из какого-нибудь "пилота").
В гайде по подключению ленты указано, что управление лентой осуществляется по протоколу, а на схеме лента подключается на дискретный выход ардуино. В моем понимании дискретный выход принимает значения. например, 0-5 вольт. Протокол же реализует отправку пакета из набора бит. Чего я не понимаю?
Дискретный выход - это "электрический" уровень подключения. Он, действительно, принимает уровни - низкий и высокий (пусть будет 0В и 5В, чтобы было проще, хотя в реальности - чуть выше нуля и чуть ниже напряжения питания, которое может быть и 3,3В, например). Для целей передачи информации некоторая комбинация последовательно идущих смен уровня принимается за логический (битовый) ноль, другая комбинация - за логическую (битовую) единицу. Для того, чтобы обозначить начало/окончание передачи или приёма данных также назначаются свои комбинации смен уровня (иногда такие комбинации должны передаваться через другие выходы микропроцессора, а иногда - в составе того же самого выхода). В некоторых случаях назначается контрольная последовательность (контрольная сумма или обратный ответ от приёмника). Вот всё это вместе взятое ("формат" нуля, единицы, порядок передачи байта - от младшего к старшему или от старшего к младшему, стартовые/стоповые последовательности, контроль данных...) и называется "протокол".
 
Изменено:
  • Лойс +1
Реакции: Сергей1

kalobyte

★★★✩✩✩✩
1 Янв 2020
726
146
Протокол же реализует отправку пакета из набора бит. Чего я не понимаю?
вот контроллер и формирует последовательность бит определенным макаром и эту последовательность понимает светодиод

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

Сергей1

✩✩✩✩✩✩✩
10 Мар 2020
8
0
вот контроллер и формирует последовательность бит определенным макаром и эту последовательность понимает светодиод
т.е. если я, например, Modbus реализую программно(используя двухпроводный канал передачи данных), то этот протокол реализуется аппаратно, отбивая морзянку с дискретного выхода ардуино?
В таком случае состояние скольки диодов можно изменить за одну секунду, т.е. сколько можно отправить команд за секунду? или какова длительность одной команды?
 

poty

★★★★★★✩
19 Фев 2020
2,956
886
т.е. если я, например, Modbus реализую программно(используя двухпроводный канал передачи данных), то этот протокол реализуется аппаратно, отбивая морзянку с дискретного выхода ардуино?
Да, с известной долей образности можно сказать и так. :)
В таком случае состояние скольки диодов можно изменить за одну секунду, т.е. сколько можно отправить команд за секунду? или какова длительность одной команды?
Для этого отошлю Вас к datasheet. (подсказка: 800кбит/сек, для управления одним светодиодом нужно передать 24 бита для каждого из трёх цветов + сделать задержку 50 мкс, итого - 1,25*24*3+50=140мкс) Но, как Вы понимаете, такой скорости нужно ещё добиться непосредственно от Ардуино!
Вообще, я бы посоветовал уточнить ТЗ: во-первых, определиться с одновременно горящими диодами (поскольку это, как я понял, будет основное освещение), "распараллелить" управление группами светодиодов между выводами Ардуино, а то и между разными процессорами, оценить длину кода для эффектов и т.п.
 
  • Лойс +1
Реакции: Сергей1

kalobyte

★★★✩✩✩✩
1 Янв 2020
726
146
то этот протокол реализуется аппаратно
если конкретно про модбас, то это протокол 3го уровня, реализуемый софтово, но поверх аппаратного интерфейса юарт, который имеет свой протокол юарт, а дальше идет протокол 1го уровня, который реализует электрический интерфейс рс232, 485

скорость зависит от скорости настройки юарт и тут она может быть 9600 или 115200 бит в секунду
юарт передает 8 бит данных + вроде 2 бита синхронизации
итого 10 бит
115200/10 = 11520 байт в секунду

надо учитывать, что протоколы высоких уровней содержать служебную инфу + полезные данные и поэтому скорость передачи полезных данных будет еще меньше

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

Сергей1

✩✩✩✩✩✩✩
10 Мар 2020
8
0
Для этого отошлю Вас к datasheet. (подсказка: 800кбит/сек, для управления одним светодиодом нужно передать 24 бита для каждого из трёх цветов + сделать задержку 50 мкс, итого - 1,25*24*3+50=140мкс)
Этого вполне достаточно для приемлемого управления 200 диодами даже с учетом того, что реальная скорость будет меньше. Даже распараллеливать не надо, как я считаю.
А что будет если один из диодов перестанет работать? Отвалятся все диоды, которые идут после него?
Спасибо за даташит, но не нашел как происходит адресация?
 

poty

★★★★★★✩
19 Фев 2020
2,956
886
Распараллеливать или нет - это решать Вам, конечно, здесь я могу только точку зрения высказать. :)
По поводу неисправности диода: разделим их (неисправности) на две большие части:
- неисправность излучающих элементов, драйверов и т.п. - ни на что не влияет, кроме того, что ячейка будет гореть постоянно/не гореть совсем;
- неисправность микропроцессора- "отрубит" в худшем случае всю линейку ячеек, подключенных позднее в шине.
"Адресация" проста: первые 9 байтов вынимаются из потока и управляют первой ячейкой. Последующие данные передаются на вторую ячейку, которая изымает еще 9 байтов, передает остатки далее и т.д.

Я к тому, что для изменения, допустим, 100-го элемента в шине Вы должны будете передать как минимум 100*9=900 байт.
 
  • Лойс +1
Реакции: Сергей1

kalobyte

★★★✩✩✩✩
1 Янв 2020
726
146
А что будет если один из диодов перестанет работать?
в новых версиях с буквой б кажется исправили этот глюк и если что-то повредится в диоде, то сигнал все равно пойдет дальше
 
  • Лойс +1
Реакции: Сергей1

poty

★★★★★★✩
19 Фев 2020
2,956
886
@kalobyte, я в этом сильно сомневаюсь. Это во-первых, отключает функцию восстановления импульсов, во-вторых, сбивает адресацию по шине: данные, которые должен был исключить сбойный элемент попадут на следующий.