ЭЛЕКТРОНИКА Подсветка для моноколеса - вопросы по схеме

Riverey

✩✩✩✩✩✩✩
23 Мар 2020
5
0
Привет!
Я только начинаю разбираться с Arduino и пока только сделал несколько самых базовых проектов, следуя видео Гайвера. Теперь пытаюсь собрать и закодить что-то уже самостоятельно. К сожалению, мои познания в электротехнике очень базовые, поэтому появилось несколько вопросов - заранее прошу прощения, если вопросы глупые и буду рад любой помощи. Кроме того я хотел как-то проговорить проект - может, кто-то заметит какие-то ошибки, которые я упустил.

Сначала о проекте - я хочу модифицировать систему подсветки своего моноколеса (Ninebot Z10). В колесе сейчас стоят две ленты, но я бы хотел заменить их на более плотные, а так же добавить разных эффектов - стоковые ленты очень тусклые, а эффектов всего три. Кроме того, в планах добавить к этому всему радио модуль и пульт с парой кнопок и использовать подсветку в качестве поворотников.

Я хочу добавить ардуино с несколькими литиевыми банками. От основной батареи запитываться не хотелось бы, т.к. :
1) Не хочется влиять на запас хода
2) Не очень понимаю, как это можно было бы сделать - у меня на руках два коннектора от старых лент - на них, наверное, 5v (не было пока возможности измерить), но я не знаю какой в них запас по току, а питать я буду 86 5050 светодиодов, т.е. ток будет большой. Напряжение батареи 51.8в и я думаю что просто не найду в корпусе достаточно места под понижающий преобразователь, плюс он будет генерить тепло.

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

Устройство будет питаться от трёх одинаковых литиевых банок, подключённых параллельно через плату зарядки и защиты. В проекте будут две ленты по 43 smd 5050 светодиода каждая. Они будут подключены к плате зарядки через повышайку, которая будет поднимать напряжение до 5-ти вольт. И у повышайки и у платы зарядки, вроде, макс. ток разряда до 3А, так что должно хватить, т.к. я не планирую светить чистым белым светом. Плата Arduino Nano.

Вопросы:

1) Можно ли использовать один и тот же порт для зарядки и прошивки?
Я бы не хотел каждый раз снимать боковые панели колеса, когда я хочу перепрошить ардуинку. Я так понимаю, что питать в 5v и подключать usb порт одновременно будет нежелательно, т.к. ток может потечь в светодиодную ленту не от батареи а от usb порта через ардуино? Я знаю, что я мог бы запитать ардуино в VIN, т.к. он вроде отрезает питание от usb когда на нём больше 6в, но тогда мне понадобится ещё одна повышайка до 7в, а места не так много и хотелось бы обойтись одной.

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

Arduino_illustration.jpg

2) Как включать и выключать весь проект?
Я думал использовать один из оставшихся от родной подсветки коннекторов и смотреть, есть ли на нём напряжение - если да, это будет значить, что колесо включено и пытается светить подсветкой. Ардуино в таком случае будет всегда включена, и будет смотреть, есть ли на определённом пине напряжение и включать и выключать подсветку в зависимости от этого. Глупый вопрос - я должен подключить и плюс, и минус от этого коннектора (минус в минус ардуино).
Я читал что можно отключать некоторые части ардуино и переводить его в спящий режим, но не до конца разобрался как это сделать и как сделать чтобы ардуино выходила из него при подаче напряжения на пин.

3) Можно ли расшифровать сигнал от коннектора родной подсветки чтобы понять, с какой периодичностью загорается один из светодиодов?
Мне бы хотелось чтобы некоторые эффекты зависели от скорости колеса. У родной подсветки есть эффект цветовой волны которая привязана к скорости - если я настрою колесо показывать его, могу ли я считать сигнал с одного из оставшихся коннекторов от прошлых лент и как-то понять из него скорость? Например глядя на определённый светодиод этой ленты?

Заранее спасибо за помощь - надеюсь, я объянил свои вопросы достаточно понятно.

UPD: Проапдейтил картинкой с разобранным колесом и предполагаемым расположением деталей.
 

Вложения

Изменено:

Riverey

✩✩✩✩✩✩✩
23 Мар 2020
5
0
нет

2 выключателем

1 да
Спасибо за ответ =)

1) А почему? Зная количество светодиодов, неужели никак нельзя расшифровать сигнал? Учитывая что один и тот же паттерн повторяется?
Я понимаю что это, наверное, сложно, но просто хотелось хотя бы понять в каком направлении почитать.

2) Не хочется нажимать на отдельную кнопку и не хочется портить внешний вид. Я хотел спрятать порт зарядки под ту же заглушку, что и стандартный порт зарядки колеса. Хотелось именно чтобы ардуино просыпалась когда включается всё остальное.

3) Класс, значит, я верно расписал подключение?
 

kalobyte

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

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

3) Класс, значит, я верно расписал подключение?
когда схему нарисуеш, тогда будет видно точно
теоретически можно
 

Riverey

✩✩✩✩✩✩✩
23 Мар 2020
5
0
сложно, потому что протокол у светодиодов критичен к таймингам и эти тайминги достаточно сложно генерировать таким дохлым контроллером, а принимать и декодировать еще сложней
тем более определять паттерн
проще взять сигнал с датчика скорости на плате колеса
теоретически можно
Ясно, спасибо!
Значит пока не буду это делать, возможно попробую уже позже если дойдут руки и разберусь как сделать приложение для телефона. Плату колеса трогать не хочется, да я и не разберусь.


ну тогда тебе надо поставить полевики в цепь питания светодиодов или сделать полевик в цепи питания всей твоей ардуины и на затвор подавать напряжение откуда-нибудь с платы колеса, когда оно включается
это будет проще
А, ну вот, колесо же точно будет подавать напряжение на коннекторы светодиодных лент, пытаясь их включить. Если я буду считывать напряжение с какого-то пина, то смогу выключать подсветку, когда оно пропадает (возможно с каким-то красивым эффектом затухания).


когда схему нарисуеш, тогда будет видно точно
теоретически можно
Я вчера добавил в первый пост псевдо-схему в том же стиле что у Алекса на сайте, продублирую ещё раз =)

Arduino_illustration.jpg

Это пока просто основные элементы.
 

kalobyte

★★★✩✩✩✩
1 Янв 2020
726
146
Если я буду считывать напряжение с какого-то пина, то смогу выключать подсветку, когда оно пропадает
можно настроить пробуждение по прерыванию при изменении напряжения на обычном выводе

Я вчера добавил в первый пост псевдо-схему в том же стиле что у Алекса на сайте, продублирую ещё раз =)
повышающий преобразователь будет постоянно работать и быстро посадит акумы

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

так же сами контроллеры в светодиодах потребляют какой-то ток и целая их куча быстро высадит акумы
 

Riverey

✩✩✩✩✩✩✩
23 Мар 2020
5
0
можно настроить пробуждение по прерыванию при изменении напряжения на обычном выводе
Можешь чуть подробее написать? Это AttachInterrupt? А в чем разница, использовать его или просто в loop каждый раз проверять, есть ли напряжение на пине? Это как-то эффективнее?


повышающий преобразователь будет постоянно работать и быстро посадит акумы
Хм, а как тогда быть, что использовать? Я видел в интернете, люди вроде делают схемы на одной банке именно так.

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

По току каждый smd 5050, как я понимаю, ест около 30ма в режиме радуги, 86*30 = 2580ма, т.е. около трех с половиной часов работы с учётом трёх банок по 3200.

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

kalobyte

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

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

можно ардуино переключать на 3.7в и она будет работать.
будет, надо только сменить фьюзы и загрузчик, тогда она будет работать от 3.3в на 8мгц от внутреннего генератора
вроде этого тоже должно хватать для работы светодиодов

Я мог бы, возможно, поставить мосфет и пускать ток напрямую с платы зарядки, минуя повышайку и светодиодную ленту, когда ардуино в режиме ожидания?
ну его так и так надо ставить
 

Riverey

✩✩✩✩✩✩✩
23 Мар 2020
5
0
ну взять с платы колеса напряжение и завести его на вывод того преобразователя, вроде у него есть вход разрешения работы
Как я писал в начальном посте, напряжение которое выдаёт батарея - 51в, с таким этот преобразователь не справится, а места под какой-то большего размера нет. Мои расчёты разве не верны? Вроде трёх банок должно хватить, разве нет? На крайняк можно закинуть четвёртую, кажется могу ещё найти под неё место, хотя его и немного.

IMG_20200324_001413_HDR.jpg
Вот я распихал три банки по корпусу и место в общем-то и закончилось свободное.

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

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


будет, надо только сменить фьюзы и загрузчик, тогда она будет работать от 3.3в на 8мгц от внутреннего генератора
вроде этого тоже должно хватать для работы светодиодов
Я читал что и без этого люди питают от одной банки и всё более-менее нормально. Я почитаю про режим сна как ты посоветовал, но наверное это тоже могла бы быть опция - отключать повышайку и прикреплённую к ней ленту и просто питать ардуино от 3.7 прямо с платы зарядки.


Стараюсь проговаривать даже самые простые вещи, т.к. дейтвительно только начинаю в этом всём разбираться =)

Заменил пока ленту и собрал простой проект с парой эффектов чтобы посмотреть как оно смотрится - гораздо лучше стокового конечно - https://photos.app.goo.gl/32kf2bSNcDDJDKmL6