Гирлянда на RGB светодиодах
- Реклама
Да, я видел, просто упустил настройку АЦП для ND_COLOR и RND_DELAY. Там сначала идет генерация RND_PROGRAMM. Вот для нее сделал, а дальше не обратил внимания. В 886 АЦП по другому.
Всех с Новым Годом!
Особая благодарность Fallk и Kef за программную и аппаратную поддержку.
Гирлянда работает уже несколько дней, проблем не обнаружено. Питание пробовал от 4,0 до 5,5в., работает одинаково хорошо.
Соединял модули (30шт.) витой парой, при терминальном резисторе 200 ом и питании больше 4,9в. на последних двух-трех секциях некоторые цвета сбоили, вспомнилось что волновое сопротивление витой пары 120 ом., такой терминальный резистор и поставил, ради эксперимента даже добавил еще 10 секций, все работает без сбоев в широком диапазоне питания.
Возникли некоторые пожелания по прошивке.
Понятно что последовательность эффектов выбирается рандомно, но иногда неприятно бросается в глаза когда неяркий (например бегают по гирлянде несколько огоньков) и не очень динамичный эффект неожиданно сменяется ярким динамичным эффектом, когда начинают быстро меняться цвета всех светодиодов. Возможно что при выборе таких эффектов лучше будет перед ним принудительно вставлять что-то среднее по динамичности и заполненности гирлянды.
И еще возникла мысль варианта эффекта (подобного вроде не увидел), когда один-два-три и т.д. (количество выбирается случайно) огонька случайного цвета бегут с концов к центру, при встрече взраваются например белым цветом и так несколько циклов. Примерно так же бегущие с концов огоньки проходят в центре сквозь друг друга меняя цвет или разбегаются от центра к концам изменив свой цвет.
Особая благодарность Fallk и Kef за программную и аппаратную поддержку.
Гирлянда работает уже несколько дней, проблем не обнаружено. Питание пробовал от 4,0 до 5,5в., работает одинаково хорошо.
Соединял модули (30шт.) витой парой, при терминальном резисторе 200 ом и питании больше 4,9в. на последних двух-трех секциях некоторые цвета сбоили, вспомнилось что волновое сопротивление витой пары 120 ом., такой терминальный резистор и поставил, ради эксперимента даже добавил еще 10 секций, все работает без сбоев в широком диапазоне питания.
Возникли некоторые пожелания по прошивке.
Понятно что последовательность эффектов выбирается рандомно, но иногда неприятно бросается в глаза когда неяркий (например бегают по гирлянде несколько огоньков) и не очень динамичный эффект неожиданно сменяется ярким динамичным эффектом, когда начинают быстро меняться цвета всех светодиодов. Возможно что при выборе таких эффектов лучше будет перед ним принудительно вставлять что-то среднее по динамичности и заполненности гирлянды.
И еще возникла мысль варианта эффекта (подобного вроде не увидел), когда один-два-три и т.д. (количество выбирается случайно) огонька случайного цвета бегут с концов к центру, при встрече взраваются например белым цветом и так несколько циклов. Примерно так же бегущие с концов огоньки проходят в центре сквозь друг друга меняя цвет или разбегаются от центра к концам изменив свой цвет.
Пожалуйста
и Вас с Новым Годом!!!
и Вас с Новым Годом!!!
Уже думал про это - буду делать на досугеvlad465 писал(а):И еще возникла мысль варианта эффекта (подобного вроде не увидел), когда один-два-три и т.д. (количество выбирается случайно) огонька случайного цвета бегут с концов к центру, при встрече взраваются например белым цветом и так несколько циклов. Примерно так же бегущие с концов огоньки проходят в центре сквозь друг друга меняя цвет или разбегаются от центра к концам изменив свой цвет.
Это отлично!
Тогда еще подумаю, может придут еще какие-то интересные мысли.
Тогда еще подумаю, может придут еще какие-то интересные мысли.
- Реклама
До отделной статьи далеко, но для новой темы самый разBaxster писал(а):Чувствую, что надо будет отдельную статью делать для новой гирлянды на WS2812B
Для сохранения данной темы предлагаю перенести обсуждение протокола WS сюда:
http://radiokot.ru/forum/viewtopic.php?f=2&t=99060
- Сообщения: 15
- Зарегистрирован: Вт янв 07, 2014 17:17:31
Попробовал я вырезать квадратик в шарике. Довольно сложно сделать ровно и квадратно. Плюс как его крепить то? Клеевым пистолетом снаружи между шариком и платой?rx3apf писал(а):одна квадратная дырка 5x5 mm.
До этого только картинки смотрел, а тут пересмотрел еще и видео работы. Порадовали эффекты. Пришла идея о совмещении нескольких гирлянд, которые висят на окнах в один каскад, т.е. 2-3 независимые гирлянды, связываются между собой через модуль 2.4ГГц (NRF24L01+ например), тем самым можно реализовать бегущие огоньки через все окна. Это уже скорее не для себя, а для окружающих.Ссылка на видео работы:
http://youtu.be/4YASYV8eKOI
Fallk
Гирлянда отработала десять дней без нареканий.
Последние три дня виснет
, один-два раза в сутки.
После перезапуска питания не включается, нужно сделать выдержку.
МК не греется, питание хорошее, БП пока даже не импульсный.
Есть подозрение на перегрузку порта (терминальный резистор 120ом). Порт может себя так вести?
В связи с возникшей проблемой вопрос: можно ли транслировать сигналы одновременно в несколько портов?
Даже если не удастся их объединить с целью повышения нагрузочной способности, то хотя бы чтобы переключиться на другой порт если сдохнет основной.
А вообще наверно нужно поставить буфер на выходе порта.
Гирлянда отработала десять дней без нареканий.
Последние три дня виснет
После перезапуска питания не включается, нужно сделать выдержку.
МК не греется, питание хорошее, БП пока даже не импульсный.
Есть подозрение на перегрузку порта (терминальный резистор 120ом). Порт может себя так вести?
В связи с возникшей проблемой вопрос: можно ли транслировать сигналы одновременно в несколько портов?
Даже если не удастся их объединить с целью повышения нагрузочной способности, то хотя бы чтобы переключиться на другой порт если сдохнет основной.
А вообще наверно нужно поставить буфер на выходе порта.
- Сообщения: 101
- Зарегистрирован: Пн окт 28, 2013 17:50:33
Вероятно, нужен какой-то кондуктор. Начинаем с круглой дырки, растачиваем квадратным мелким надфилем. Целлулоид твердый, надфилем получается. Важно, чтобы было симметрично относительно склейки, а то будет некрасиво. Т.е. ориентируем склейку на "экватор", дырку - на "полюсе". Наверное, кондуктор должен иметь отверстие под сам шарик, как на овоскопе, и собственно направляющую дырку для протачивания. Если, конечно, речь не о одном-двух шариках, а о целой гирлянде. Вариант - как-то термически, нагретым нихромовым резаком.Baxster писал(а):Попробовал я вырезать квадратик в шарике. Довольно сложно сделать ровно и квадратно.rx3apf писал(а):одна квадратная дырка 5x5 mm.
Крепить - на счет термопистолета сомневаюсь. Может и сам шарик от температуры повести, к тому же "термосопли" на холоде становятся довольно хрупкими. Полагаю, что лучший вариант - строительный силиконовый герметик, прозрачный или белый.
SPI програмный, так что можно вывести куда угодно хоть на VSS 
Почему стал виснуть - а кот его знает, как говорят - У меня все нормально
Если есть необходимость то в программе легко поменять выход SPI? даже можно транслировать в несколько, но в таком случае буфер будет более правильно, какой нить логический полевик.
Почему стал виснуть - а кот его знает, как говорят - У меня все нормально
Если есть необходимость то в программе легко поменять выход SPI? даже можно транслировать в несколько, но в таком случае буфер будет более правильно, какой нить логический полевик.
А не сложно будет в программе на 30 звеньев вывести трансляцию параллельно на несколько портов?
Хоть переключу/попробую запараллелить, понять в чем причина зависаний.
Хоть переключу/попробую запараллелить, понять в чем причина зависаний.
- Сообщения: 101
- Зарегистрирован: Пн окт 28, 2013 17:50:33
Это неправильный подход (у PIC16, конечно, порты довольно мощные, но неправильно их выводить наружу непосредственно, когда нагрузка в общем случае непредсказуема). Надо на выход поставить буфер (неинвертирующий или пару инвертирующих). HC244, например. А то даже и AC244 (им легче работать на низкоомную линию). А чтобы не перегружать по постоянке, терминирующий резистор можно отвязать по постоянке конденсатором в пару сотен pF, либо использовать последовательное согласование со стороны передатчика, тогда терминатор вообще не нужен.
Хочется выяснить причину появившихся зависаний, в порте ли проблема.
Возможна проблема в кварце или кондеров в обвязке.
В моем проекте "нарды" было что-то подобное, уменьшил емкость конденсаторов на кварце и проблема исчезла.
В моем проекте "нарды" было что-то подобное, уменьшил емкость конденсаторов на кварце и проблема исчезла.
Кварц с встроенными кондерами. И десять дней работало как часы. 
И ничего не греется, к БП тоже претензий быть не может.
И ничего не греется, к БП тоже претензий быть не может.
На другой порт переделать не проблема.
Я у себя поставил на CLOCK и DATA последовательно по резистору 10 Ом и никакого терминального резистора не ставил. Работает на ура. Может Вам поможет.
Если хотите на другой порт, можно переделать.
Я у себя поставил на CLOCK и DATA последовательно по резистору 10 Ом и никакого терминального резистора не ставил. Работает на ура. Может Вам поможет.
Если хотите на другой порт, можно переделать.
выход SCLK переназначен на PORTB 2 (нога 23)
#define SCLK PORTB,2
В исходниках здесь меняется выход
А вот про последовательное согласование линии - завтра попробую. Есть у меня гирлянда без репитеров, глючит страшно и не работатет генератор случайных чисел. Попробую переменником подобрать сопротивление и использовать второй модуль АЦП, первый видимо исдох.
#define SCLK PORTB,2
В исходниках здесь меняется выход
А вот про последовательное согласование линии - завтра попробую. Есть у меня гирлянда без репитеров, глючит страшно и не работатет генератор случайных чисел. Попробую переменником подобрать сопротивление и использовать второй модуль АЦП, первый видимо исдох.
- Вложения
-
- P00_RGB-garlands_V04_port.HEX
- (14.7 КБ) 409 скачиваний
Fallk Спасибо.
Про последовательное согласование линии тоже интересно, напишите о результатах.
И все же интересна бы прошивка с дублированием на два порта, если это не сложно.
Проще просто перепаять проводок, чем еще и перепрошивать МК.
К тому же у меня две гирлянды по 30 звеньев, думал сделать одну длинную гирлянду, можно будет их попробовать подцепить к одному МК не перегружая порты.
Как ни странно, сегодня не гирлянда не висла, работает нормально вторые сутки.
Мог бы по привычке грешить на плохое питание, но гирлянда запитана от хорошего настольного БП, и в новогодние праздники были проблемы с электричеством, свет заметно моргал (доморгался, 2-го сгорела проводка в подвале соседнего дома, пожарные приехали, потушили и заодно обрубили эл-во в этом подъезде), но гирлянда работала без зависаний.
Про последовательное согласование линии тоже интересно, напишите о результатах.
И все же интересна бы прошивка с дублированием на два порта, если это не сложно.
Проще просто перепаять проводок, чем еще и перепрошивать МК.
К тому же у меня две гирлянды по 30 звеньев, думал сделать одну длинную гирлянду, можно будет их попробовать подцепить к одному МК не перегружая порты.
Как ни странно, сегодня не гирлянда не висла, работает нормально вторые сутки.
Мог бы по привычке грешить на плохое питание, но гирлянда запитана от хорошего настольного БП, и в новогодние праздники были проблемы с электричеством, свет заметно моргал (доморгался, 2-го сгорела проводка в подвале соседнего дома, пожарные приехали, потушили и заодно обрубили эл-во в этом подъезде), но гирлянда работала без зависаний.
Да мне кажется проще повесить на линию полевой транзистор или обычный или на логике что то собрать. Это хорошо SPI програмный, а если был бы аппаратный? 
Попробуйте, сегодня лениво. Завтра сделаю на несколько выходов
У меня были зависания из за того что добавил прерывание по входу, стояло в программе в начале. Сначала контроллер постоянно в него входил, приходилось передергивать питание. После я его перенес подальше в программе и у меня глюк пропал. У меня тут уже куча прошивок, никак не получу доступ к статье, подправить в ней. Может у Вас старая прошивка какая. Показывать мне ее бесполезно, я не опознаю вариант
. В последней косяки подчищенны.
Попробуйте, сегодня лениво. Завтра сделаю на несколько выходов
У меня были зависания из за того что добавил прерывание по входу, стояло в программе в начале. Сначала контроллер постоянно в него входил, приходилось передергивать питание. После я его перенес подальше в программе и у меня глюк пропал. У меня тут уже куча прошивок, никак не получу доступ к статье, подправить в ней. Может у Вас старая прошивка какая. Показывать мне ее бесполезно, я не опознаю вариант
Прошивка последняя из этой темы. 
По эффектам:
В прошивке реализован такой эффект, когда гирлянда залита каким-то цветом, затем с концов заполняется другим. При этом до конца не заполняется, два средних светодиода остаются прежнего цвета, думаю что это нехорошо. Как вариант еще можно сделать чтобы при заполнении уже от центра разбегалось заполнение другим цветом к краям.
Еще мысли на будущее:
Часто встречается эффект когда несколько огоньков бегают от края к краю. Можно модифицировать чтобы огоньки как бы бегали по кругу, уходя в один конец и появляясь с другого, как вариант при новом появлении меняли цвет.
Также наверно интересно будет если несколько огоньков бегут с одной стороны в другой конец, при этом на полпути вдогонку появляются другого цвета вдвое быстрее, догоняют, и здесь можно тоже придумать эффектную концовку.
По эффектам:
В прошивке реализован такой эффект, когда гирлянда залита каким-то цветом, затем с концов заполняется другим. При этом до конца не заполняется, два средних светодиода остаются прежнего цвета, думаю что это нехорошо. Как вариант еще можно сделать чтобы при заполнении уже от центра разбегалось заполнение другим цветом к краям.
Еще мысли на будущее:
Часто встречается эффект когда несколько огоньков бегают от края к краю. Можно модифицировать чтобы огоньки как бы бегали по кругу, уходя в один конец и появляясь с другого, как вариант при новом появлении меняли цвет.
Также наверно интересно будет если несколько огоньков бегут с одной стороны в другой конец, при этом на полпути вдогонку появляются другого цвета вдвое быстрее, догоняют, и здесь можно тоже придумать эффектную концовку.


