Arduino и светодиоды ws2811 реально ли?
- Войдите на сайт для отправки комментариев
Вс, 21/12/2014 - 14:15
Добрый день, я тут новенький и мало понимаю, но очень интересно научиться.
У меня есть вопрос, на который я не знаю ответа:
Есть гирлянда 50 лампочем ws2811 с питанием 12В. возможно ли подключить её и управлять с помощью Arduino? или гирлянда должна быть только 5В?
PS эта гирлянда имеет 3 контакта: +,- и управление.
конечно можно. погугли хоть на этом форуме
ещё несколько вопросов от новичка:
к примеруму Arduino Uno. в него можно зашить прошивку и использовать без компа? и можно ли в прошибке делать несколько программ и переключать их кнопкой?
можно и можно
но не несколько программ, а переключать подпрограммы. но чтобы места на все хватило
место для кода? т.е. чем грамотнее код (не изобретая колесо) тем меньше весит прошивка?
грамотнее да. но все равно под разное железо код разный. скомпилируй код для визнета например. и попробуй несколько таких запихнуть в уно
пришла моя лента
http://ru.aliexpress.com/item/WS2811-led-strip-5m-30-leds-m-10-pcs-ws281...
попробовал работает))
А что из нее сделать планируется?
ничего особенного. над окном за шторами сверху приклеить. как и ожидалось ребенку очень понравилось как цветами переливается
за счет того, что за шторами, свет будет более рассеянный
выбрал самый "спокойный" режим радуга, движение влево и вправо, без морганий из примеров fast_led
И моя гирлянда пришла. Разобрал старый БП от компа, выпаял лишние провода, впихал туда нану, кнопочки, крутилочки... Мегает! ))
Одна крутилка регулирует яркость гирлянды, вторая скорость еффектов, третью ещё не воткнул, купить надо, но думаю будет менять скорость смены цвета в радуге.
Кнопка из 3х задействована одна. Она переключает эффекты и записывает в ЕЕПРОМ, для того, чтобы при включении показывался ранее выбраный эффект.
Из эффектов пока 6 штук, все они из библтотеки FastLED. И ещё один - это я пробовал чтото своять :)
Зачем запихал в такую большую коробку? Потому что старых БП от компа у меня много :) . И сейчас будут подключаться 100 диодов (4 обрезка по 25шт) это на полной яркости белого цвета почти 6А, К следующему новому году наверно добавлю ещё 4 таких обрезка, будет уже 12А. Тот БП что я использовал выдаёт 18А по 5в линии, тоесть ещё запас на 4 обрезка по 25 диодов останется.
Позже выложу сыроватый скетч, авось кому сгодится, ато до нового года осталось совсем немного времени :)
Нашёл свободное место, подальше от высокочастотных и силовых узлов (разъём 220 не в счет :) )
К тому же будет доступ к USB разъёму.
Для органов управления так же найдено место, подальше от всего опасного
Сверлить тонкую жестянку, так чтобы было аккуратно - неочень получается
Паяем выходы, те что пойдёт на гирлянды. Для безопасности делаем это через резистор. Советуют 470ом, но у меня были в наличии на 330, сойдёт...
Распаял кнопки и переменники. Кнопки замыкают на массу и используется внутренняя подтяжка к плюсу, поэтому лишних резисторов не ставим. Все переменники подключены одним концом на массу, другим все в кучу, кондёрами (100мкф и 0.1мкф) на массу и через 200 ом резистор (ну вдруг там чего замкнёт) на +5в. Ползунки переменников идут в ардуино.
Подаём питание... И поскольку очень много говорят про всякие там помехи, фильтры - поставил пару кондёров (100мкф и 0.1мкф) Не потому что я чегото там просчитал, а просто у меня есть кондёры только 100мкф и 0.1мкф :D
Всё паялось обычным 40вт паялом, без всякого заземления со вставленой в панель ардуиной и как ни странно, всё работает :)
Библиотеку FastLED можно скачать тут
Скетч сырой, чтобы побыстрому справить новый год, а потом чего нибудь доработать. Например, пока совсем не используется раздельное подключение гирлянд, хотя возможность такая присутствует. Если чего свояю, выложу сюда. Если вдруг кто напишет какой красивый эффект - делитесь :)
а как сделать, чтоб при нулевом значении диоды не горели?
а как сделать, чтоб при нулевом значении диоды не горели?
При нулевом значении чего?
вот) на нем эффект висит, а мне нужно, чтоб выключал диоды. никак не могу допереть)
Вроде так. Может есть и более гуманные методы, но я про них не знаю. Да и этот метод неопробован, но вот чую - должно сработать :D
да вот что то типо того пробывал, белым загораются и все)
Ну если блек непрокатит, то CRGB(0, 0, 0); точно должно прокатить
Я тоже играюсь 300 Led лентой и матрицей 10х10 Led. Матрица по сути таже лента - 100 Led.
Я принципиально не использую крутилки и кнопки, все доллжно работать - включил и забыл.
Все задается случайными параметрами - цвет, яркость, направление, скорость перемещения, скорость нарастания яркости, скорость снижения яркости, длинна нарастающей и длинна спадающей частей волны, время возникновения и начальное полежение следущей волны. С точки зрения математики это один эффект - волна.
Максимальное количество различных одновременно шастающих и стоячих волн на ленте или матрице - это лишь вопрос объема памяти.
Сейчас пытаюсь определить рамки для всех случайных параметров и наиболее оптимальную цветовую модель вместо RGB для рассчетов.
Управление ИК пультом никто не пытался прикрутить?
Пользую не прикручивая такую :)
Правда в выключенном состоянии немного посвистывал преобразователь, пришлось слегка потыкать в него паяльником, теперь все ОК. :)
Не, это не подходит) у меня люстра из гитары) вот по сериал порту комманды отлично принимает, эффекты переключает, релюшки щелкает. А с Ик пультом чот беда. Не могу разобраться, так чтоб переключал эффекты) в тестовом скетче для ИК коды с пульта читает нормально, а в моем начинает получать разные коды с одной кнопки)
igreemi
Пульт передает посылки не останавливаясь, вероятно в Вашем скетче нужно оталавливать начало последовательности посылки, после чего получать пакет и сравнивать принятый код. У Вас вероятно читает не отслеживая начало пакета, потому всегда разное получает. Нужно скетчи смотреть и сравнивать.
Да вот вроде все как у всех в скетчах, но там они используют открытие закрытие пинов. Косяк где то у меня в скетче похоже, но я уже в затупе)http://arduino.ru/forum/proekty/rgb-lyustra-s-nulya
Да вот вроде все как у всех в скетчах, но там они используют открытие закрытие пинов. Косяк где то у меня в скетче похоже, но я уже в затупе)http://arduino.ru/forum/proekty/rgb-lyustra-s-nulya
Попробуйте другие библиотеки, такая же фигня была.
Пробовали, работает, а Вы зачем интересуетесь?
А скетч не остался? Если можно, выложите, может пойму в чем у меня косяк
Скетч на нестандартных либах с привязкой к конкретному пульту, потому сам он не поможет. Но могу сказать по памяти, что прием команды с ДУ и вывод видеоэффектов на ленту конфликтуют, вывод в ленту занимает время и пропускаются события с ДУ. Потому как только обнаруживается начало команды с пульта, работу с лентой приходится останавливать на доли секунды. Получается замирание, причем и на чужие пульты реагирует. Клацаеш каналы телика, лента в такт замирает на доли сек.
А как это лечить?
Можно топорно, поставить 2 арды, одна на пульт, другая на гирлянду, соединить несколько ног и кодировать выставляя уровни на ногах. Получится типа модуль обработчик приемника ИК и модуль управления светиков.
:)))))))))))))) ценник увеличится примерно на 150руб
Ну это менее интересно) ардуинка то еще одна есть, но хотелось бы получить весь комплекс от одной) там всего то надо управлять одной лентой и двумя релюхами)
Значит, ловить начало пакета, принимать 1 пакет, и следующий раз проверять пакет позже… Все равно, ИК сильно на долго занимает МК. Как не крути, алгоритм нужно продумывать и минимизировать работу с ИК.
Одну беду победил) команды стабильно принимает с пульиа, теперь другая, при поступлении команды срабатывает только один кадр эффекта)
А обязательно использовать
FastLED.h
С ней же скучно?
Ну вроде самая распространенная) мне щас не это важно, мне важно чтоб на одном контроллере запускались с ик пульта эффекты и переключались)
Решил не создавать новой темы.
Есть лента с диодами WS2811 Есть код:
Вот в чем вопрос: Свтодиод, первый по счету, не регулируется яркость зеленого цвета. В коде яркость 30 едениц, красный и синий работают нормально, зеленый моргает в полную яркость. Следующие по счету диоды работают нормально, зеленый тоже. Где то в глубине души знаю что проблема, скорее всего, в библиотеке, но знаний не хватает что бы разобраться. Если кто подскажет, заранее спасибо.
Вот в чем вопрос: Свтодиод, первый по счету, не регулируется яркость зеленого цвета... зеленый моргает в полную яркость. Следующие по счету диоды работают нормально, зеленый тоже. ... скорее всего, в библиотеке, ...
маловероятно, код отправляется всем и одинаковый (тестовый), очень вероятно контроллер диода с браком.
А сколько диодов в ленте??? в коде их 10, если я правильно код понял, сам не работал с такими контроллерами.
да и ссылку на исходник кода, плиз, вы ведь не сами его писали...
маловероятно, код отправляется всем и одинаковый (тестовый), очень вероятно контроллер диода с браком.
А сколько диодов в ленте??? в коде их 10, если я правильно код понял, сам не работал с такими контроллерами.
да и ссылку на исходник кода, плиз, вы ведь не сами его писали...
В первую очередь подумал на брак контроллера. Отрезал от ленты первый диод. подпаялся заново, опять не регулируется зеленый. получается отрезал исправный. по поводу количества, это лента на 300 диодов, использую только 10, хоть 60 хоть 100, без разницы.
Код из примеров библиотеки FastLed.h, писал не сам.
Блин, рано пошел вопросы задавать. Скачал эту же библиотеку с другого места, все заработало.
Гриша, все равно спасибо. Если кому будет нужна рабочая библиотека ссылка.
Скоро новый год! Заказал и уже получил ещё одну, такую же 100-диодную гирлянду, купил разъёмы типа-джек. Получилось 8 полос по 25 диодов. Кончились провода - как куплю допаяю, фотки выложу.
Кстати по поводу цены и 11.11 распродажи - заказывал гирлянду за 1788 без распродаж всяких. Сейчас она 2421р и типа распродажа! цена снижена до 1815 :D
Надо хотябы простецких горизонтальных (тоесть между лентами) эффектов запилить.
Никто чотких эффектов незапрограммил? :)
Дописал пару-тройку горизонтальных эффектов, в том числе "падающий снег" выложил всё в отдельной теме