Ну вот, опять пост о непонятных для многих микроконтроллерах, микросхемах и прочей фигне радиотехнике. Но зато применение очень понятное — новогодние огни.
Все началось больше года назад, когда я приобрел управляемые светодиоды WS2812.
И с тех пор эти диоды мне не давали покоя — что же из них смонстрячить. Был и цифровой дисплей и цифро-аналоговые часы. Увы, все было не то — душа просила праздника. И вот за окном пошел снег, и я решил, что самое достойное им применение — иллюминация к Новому году.
Причем здесь Ардуино? Ардуино будет дальше под катом.
Наигравшись отдельными светодиодиками, микросхемами и печатными платами я решил в преддверии праздника себя не мучить пайкой печатных плат, а купить готовых контроллеров и ленту и сделать из них радующие глаза и сердце вещи. Тем более что были заказы на что-то подобное.
Ардуино получился самый дешевый, из того что я встречал
Это китайский клон Arduino Pro Mini с более слабой микросхемой Atmega 168PA. В отличие от более навороченной Atmega328P, 168-й имеет вдвое меньшее ОЗУ (1Кб вместо 2-х) и ПЗУ под программу (16Кб вместо 32Кб). Еще меньше размеры и стоимость, а даташит у них общий. Дизайн платы немного отличается от продающихся сейчас Pro Mini, и кварц там стоит огромный, но в целом платы вполне годные и очень привлекательные по цене.
Для моих задач контроллер полностью достаточен. Подошел бы и ATmega8 и некоторые ATtiny, но готовых плат за такие деньги я не встретил, а паять самому, как писал выше, не захотелось.
Несколько слов про ленту. Ленты с WS2812B были с разным количеством светодиодов на метр, разным цветом подложки и защитой. Я взял белого цвета, 60/м, без защиты. От обычных лент 5050 данные отличаются тем, что каждым светодиодом можно управлять в отдельности при помощи специального контроллера.
Ну а теперь перейду к празднику, так как делать буду снежинки. Собственный опыт показал, что слабое место самодельных устройств — их внешний вид. Поэтому я заказал изготовление корпусов своих снежинок из акрила методом лазерной резки. И не игрушкой в 300мВт, а нормальным 100-ваттным лазером с жидкостным охлаждением и обдувом воздуха.
Размер снежинок 25 и 30см. Количество светодиодов каждого луча — 5 и 8 соответственно. Пару штук сделал из самодельных полосок, остальные из светодиодной ленты.
проводки взяты из разобранных отрезков UTP-кабелей, коих на работе скопилось великое множество.
Теперь контроллер.
Паять все ножки в данном проекте к нему не обязательно — 4 штырька для программирования, спаянные с учетом минимизации высоты. (Простите за ушедший фокус)
В контроллер заливаю программу при помощи самого дешевого TTL-конвертера.
При программирование в Arduino IDE выбираю Arduino Pro Mini 5V Atmega168
Три проводка, питание, земля и цифровой выход, припаиваю прямо к плате. Плату креплю на 3М-ский скотч (а на что же еще, если не подходит синяя изолента?)
Приятной особенностью данных контроллеров оказался очень тускло горящий светодиод питания. Яркий бы пришлось выпаивать или заклеивать, так как световым эффектом он бы мешал.
Теперь питание. Питание 5В будет подаваться через разъем USB. Для этого прикупил таких вот разъемчиков
Зачем такие сложности с USB?
Ну во первых, большого количества блоков питания у меня нет, а снежинки я планировал отдавать разным людям.
Во вторых, зарядники USB от старых телефонов обычно у всех лежат по чуланам.
В третьих, стабилизатора питания в снежинке не предусмотрено, а вероятность, что на устройство будет подано питание, отличное от 5В, через такой разъем минимальное
А вот проводов нормальных под рукой не оказалось. Те что продаются в электро-товарах слишком толстые, а симпатичных тоненьких и белых не попалось.
Теперь можно включать мои снежинки:
Ну что еще сказать, на маленькую снежинку уходит ровно 0.5м ленты. Потребляет она при данных световых эффектах 270мА. Большая 510мА. Мой ноутбук вполне тянет по USB все разом. (Благо управление током зарядки и защита в нем есть)
В будущем году я планирую проапгрейтить все снежинки — добавить ИК-приемник, для того чтобы можно было управлять эффектами с любого ИК-пульта, ну и написать новых световых эффектов.
Следующие же подобные устройства буду делать на ESP8266. (Цена у них теперь соизмеримая с Ардуино — около $2) Можно будет управлять снежинкой прямо со смартфона и загружать эффекты из интернета. А также координировать работу снежинок единой программой в системе «Умный Новый год» ))) Ну и конечно, лазерная резка располагает разнообразию форм.
Можно было сделать управление несколькими снежинками с одного контроллера и БП, но тогда бы они потеряли автономность.
Шикарный результат, достойный высшей оценки! :)
Неистово плюсую :)
ИМХО можно смело в мелкосерийное производство запускать… А там уже как пойдет:))
Что касается «управлять снежинкой прямо со смартфона и загружать эффекты из интернета. А также координировать работу снежинок единой программой в системе «Умный Новый год» )))» вообще космос идея :))
Единственно я бы убрал большинство не симметричных эффектов. Как то они не так смотрятся, в глаза бросаются и отвлекают от любования этой шикарной поделкой :))
Я до конца ролик не осилил, но по первой его половине — частями согласен с обоими ораторами:
я бы УБРАЛ большинство несимметричных эффектов и ДОБАВИЛ бы спиралей.
Ох, что-то кот так часто (читай регулярно) присутствует при разработках, что можно поставить под сомнение правдивость выше написанного. А вдруг это сам кот своими лапами все проектирует и воплощает, а Алексей только приписывает себе его лавры? Даже подтверждения были, что четырёхлапый научен набору текста на ноутбуке. Очень уж кот гневно смотрит))
Шутка. Коту привет, продолжайте продуктивное сотрудничество. Переход на 8266 считаю оправдан (привет с 8266, ру) поскольку моделей уже больше, нежели ардуин и продолжает расти с одновременным падением цен.
Ну и счастливого НГ, раз пошла такая тема)
сделал все как написано. во время проверки/компилляции выдает сообщение об ошибке:
WARNING: Category '' in library SPI is not valid. Setting to 'Uncategorized'
Изменены опции сборки, пересобираем все
Внимание: platform.txt из ядра 'Digistump AVR Boards' содержит устаревшие recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} "{build.path}/{archive_file}" "{object_file}", автоматически преобразовано в recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} "{archive_file_path}" "{object_file}". Ожидайте обновления ядра.
Внимание: platform.txt из ядра 'Digistump AVR Boards' содержит устаревшие recipe.c.combine.pattern="{compiler.path}{compiler.c.elf.cmd}" {compiler.c.elf.flags} -mmcu={build.mcu} -o "{build.path}/{build.project_name}.elf" {object_files} "{build.path}/{archive_file}" "-L{build.path}" -lm, автоматически преобразовано в recipe.c.combine.pattern="{compiler.path}{compiler.c.elf.cmd}" {compiler.c.elf.flags} -mmcu={build.mcu} -o "{build.path}/{build.project_name}.elf" {object_files} "{archive_file_path}" "-L{build.path}" -lm. Ожидайте обновления ядра.
так я до ардуино и не добрался, всё сижу на stm8, stm32. А ведь, судя по коду, а точнее скетчам, слепить такого уровня поделку на скорую руку в разы быстрее на ардуино. Производительность и оптимизация сильно не нужна, модули дешевые, огоромное сообщество и куча готовых библиотек на все случаи жизни. Как только вспомню написание софтового 1-Wire под stm8s003, так всё желание творить домашние поделки пропадает(писал на GPIO, UART занят ESP)
Снежинки получились крутые, про эти светики слышал, но не трогал… забыл на распродаже заказать.
Вот этим и подкупает ардуино — скоростью разработки и обилием готовых библиотек.
Причем, никто не мешает при серийном производстве зашивать программы прямо в контроллеры без всяких загрузчиков
Сам сейчас переползаю с ардуино на стм32. Ни дня без кровавых слёз. Как всё-таки с ардуино проще. Любой вопрос решается за 0-15 минут гугленья, а для стм вообще не факт, что найдёшь инфу в нете, особенно под hal.
Да я всё надеюсь, что большая часть косяков выявлена, и дальше будет проще. К тому же мне нужны сторонние библиотеки, в наличии которых под mbed я не уверен. Так что продолжаем кушать кактус.
угу, читайте первым делом сообщество на предмет косяков в периферии, а так же errata.
ST вроде серьезная компания, а до сих пор у них есть косяки разного рода, требующие во многих кристаллов ппц каких костылей.
А библиотеки под stm8 официальные, хоть стой, хоть падай, по крайней мере раньше были такими.
Да вот как раз библиотек куча. Да и в случае чего легко переносятся. Но, НО! Это ардуина для армов — со всеми вытекающими последствиями. Чтобы было понятно насколько все местами плохо, линк.
В общем лучше курите RM-какой-то-там и руками по регистрам — в итоге и контроллет будет более родным и все более быстро и гибко.
Мда, читнул статейку. Ну ка этот mbed нафиг, сначала ищи косяк в такой громадине, а потом ещё и думай, как его обойти без коррекции либы. hal наше фсё, как максимум.
оптимизация… ардуино-для поделок, типа вот таких вот снежинок. То, что можно написать на stm32 не написать на ардуино никогда. Работа у меня такая, но я изначально на стм32 сидел, уже потом изучал стм8, а теперь хочу изучить ардуино именно для таких вот мелких поделок. Максимализм-это конечно хорошо, но прошлый мой домашний проект умного удлинителя с настраиваемыми таймерами включения/отключения нагрузок по расписанию, синхронизация времени с серверами MTP, при этом в отсуствии интернета можно ввести время вручную,WiFi мордой, выбора состояния нагрузки после пропадания питания(ON/OFF/последнее состояние), мониторингом тока нагрузки по каждой розетке в амперах, сервисными режимами запуска(в сервисном режиме устройство становится точкой доступа, в этом же режиме можно ввести имя точки доступа, пароль, к которой надо коннектиться, посмотреть список WiFi сетей, увидеть IP, выданный устройству и т.д.) вылился в несколько месяцев вечеров. Уместил я это, конечно, в stm8s003 в 20-пиновом тсоп корпусе, но пришлось ставить доп микруху под веб морду, на 4кб памяти программ не разгуляешься, а переписывать под stm32 уже не хотелось. ESP модуль со стоковой АТ прошивкой, еще контроллер его и пингует раз в минуту, если завис-перегружает. Так называемый Watchdog.
Так вот, не стоит оптимизация этого времени и эти усилий, особенно, если понять, что этот весь, или почти весь функционал можно было уместить в тот же ESP модуль, а под него даже уже Arduino IDE прошивки есть.
В том и дело, что для большинства проектов, ардуино — за глаза. И наличие готовых _отлаженных_ библиотек ещё более ускоряет разработку. Было бы у авр 64 кб памяти, я б и не смотрел на стм32. А так всё, приплыли. Функционал не доделан, всё оптимизировано, а память кончилась. Но может оно и к лучшему.
У esp крайне мало выводов gpio. Дисплей на spi, пара акселерометров на i2c, ножек 5 для управления мосфетами, ещё 4 для кнопочек, ещё пара для датчиков вида вкл/выкл, вешать просто некуда. Хотя памяти, как я вижу, действительно прорва.
Далеко не для каждого проекта он и нужен. Да и bluetooth модули стоят копейки, и работать с ними просто… пока не доходит до передачи пакетов, но тоже ничего ужасного.
Было бы у авр 64 кб памяти, я б и не смотрел на стм32
Я и написал. Это конечно не совсем авр, но скетчи пишутся в той же среде с теме же библиотеками и заливаются через туже прогу.
Только библиотеки не все подходят, но в основном проблем нет.
Так ты посмотри, сколько ножек у ардуины, и сколько у есп. Про сдвиг регистра вообще не понял. Вот сидит контроллер в стенд-бай, и просыпается по прерыванию от датчика. А со сдвигом что? Вечно переключать выводы, пожирая аккумулятор? Да и сама микруха сдвига требует только 2 провода для управления т.е. на spi уже точно не хватит. Не вариант.
2 провода по протоколу i2c — то есть еще можно на эти 2 провода еще 126 (если я не ошибаюсь) устройств (датчкиков, дисплеев, ...) навесить. И мы с вами про ESP-12E говорим, я правильно понимаю. Не про ESP-1
Да всё равно мало контактов. Хотя да, про 12 я подзабыл, давно интересовался этой темой. Но лично на мой проект не хватит. Точнее может и хватит, но городить, например, несколько кнопок на 1 контакт не интересно, а при микрухе сдвига просыпание по прерыванию от кнопки недоступно. И зачем весь этот огород, если wi-fi не нужен, а стм32 такие дешёвые? У каждого контроллера свой круг задач. Лично мне стм32 кажется гораздо более привлекательной.
Ну примерно так и есть в ESP.
Им правда по надежности до Ардуины еще идти и идти. Сколько мучался с программное перезагрузкой. Не пересоединяется с WiFi после нее (очень редко), передергивания питания помогает. Пришлось в одном критически важном проекте аппаратный таймер на 555 реализовывать.
Про помехи на неподтянутых GPIO можно вообще молчать
про мини на 328 меге всего на 15 центов дороже. А ардуина такая ардуина, что пара лишних библиотек — и вылетели за 16/1кб.
Вот недавно из спортивного интереса ковырял контроллер паяльника:
Скетч использует 13 108 байт памяти устройства.
Глобальные переменные используют 1 102 байт
И это при том, что всей работы — только индикатор и переменник для задачи температуры — ни кнопочек с энкодерами, ни меню, ни настроек…
И это при том, что намного более функциональная прошивка спокойно помещается в мегу8… (не для ардуиносрача, просто констатирую факт)
Когда начинаешь ATiny13 программировать, понимаешь, что 1Кб это очень много )))
В момент распродажи была разница в четверть доллара.
Про выбор контроллер уже сказал. Для моей задачи он больше чем достаточен:
Sketch uses 4 734 bytes (33%) of program storage space. Maximum is 14 336 bytes.
Global variables use 50 bytes (4%) of dynamic memory, leaving 974 bytes for local variables. Maximum is 1 024 bytes
Вообще супер получилось!!!
Только хотел написать про ESP8266+Arduino IDE а вы и сами в конце написали)
Сейчас тоже программирую ESP8266 столкнулся сразу с тем, что в место delay(1000); лучше использовать if(millis()%1000==0)
Иначе соединение на момент delay рвется.
Я через blynk конекчусь к ней.
Про ESP отдельная песня. Там WDT очень злобный, не любит длинных обработок. Пришлось посадить каждый такт эффекта на ticker из системной библиотеки.
Временем срабатывания тикера можно добиться стабильной работы даже с другими обработками
Спасибо за наводку!
Хотелось бы увидеть скетч с использованием ticker.
Я еще слаб во всем этом. ESP только вторую неделю мучаю. А ардуинку пару месяцов.
#include <Ticker.h>
Ticker ws_timer;
void setup(){
// Устанавливаем таймер на 200мс
ws_timer.attach(0.2,WS_loop);
}
void WS_loop(){
// Здесь формируем один такт эффкта
// Отладочные сообщения Serial.print писать не рекомендуется
}
Без проблем. WS2812 нормально работает при 3.7В. Ардуина в принципе тоже, в крайнем случае фьюз контроля напряжения питания отключить придется, и, в случае нестабильной работы, частоту снизить.
Маленькая снежинка потребляет 0,27 ампера. То есть батарея на 1000mAH хватит часа на четыре.
Сразу ставьте маленькую платку заряда, чтобы можно было заряжать. При зарядке идет 4.2В, тоже вполне рабочее для данной конструкции напряжение.
Ну это если через бортовой стабилизатор питать. А если напрямую через USB вход заводить минуя стабилизатор, то 5В нормально. И 3.3 тоже. У меня на этом напряжении все стабильно работает.
Пониженное напряжение заявлено для WS2812B, но раз Вы проверяли работоспособность, значит всё нормально :)
Кстати, чипы на Вашей ленте действительно больше похожи на WS2812В
Более того, когда испытывал ESP со своими полосками, на которых нет конденсаторов по питанию, при питании светодиодов от 5В часто возникали спонтанные мигания. При снижении питания до 3.3 эти мигания пропали.
Лента же стабильно работает.
Чипы они есть. С четыремя контактами. Но для ленты это совершенно несущественно. Это самому паять есть разница.
Хорошая идея и реализация! В свою очередь начал собирать дисплей на WS2812, на полной яркости токи конечно ого-го, приходится каждый модуль 8x8 подключать к питанию отдельно.
рацуха: если снежинки планируется использовать только одним фейсом(например, на стене), то светики клеим диодом к акрилу и обходимся одной заготовкой для одной снежинки :)
У меня первые две одну часть из фанеры имеют. Но когда сделал акрил с двух сторон обрадовался — отраженный свет дает отличную картинку и с обратной стороны. Так что снежинки практически двусторогии
Давно хотел задать вопрос. А тут такой повод.
Никто в Мск не знает недорогой конторы с нормальным ЧПУ-лазером и каким-никаким ассортиментом листовых пластиков?
Быстро поиском не находится — то заказы минимум от $100, то «мы с этим не работаем», то «своих материалов нет, подвозите, но это 100 км от Мск».
PS: Подумав, соглашусь с тем, что слово «лазер» в технологическом смысле для данного случая заменимо на «ЧПУ-гидроабразив» или даже на «ЧПУ-фрезер». Сам вопрос остаётся.
ЧПУ-гидроабразив — это вообще мимо. Я как-то резал пачку керамогранита у этих ребят — www.gidrorezka.ru/ — так вот лист акрила та установка превратит в пыль в первые секунды.
Я об это зубы обломал. Нужное оборудование есть у рекламных конторок (они из акрила режут вывески, гардеробные номерки, всякие стойки для рекламных листовок, таблички на двери). НО! они в большинстве своём работают с заказами от 5000 рэ. и располагаются в жопе мира.
Нашлась конторка в гаражах на Соколе, которая соглашалась резать свой материал по моему DWG-чертежу, принимала предоплату на карту Сбера и не требовала минималки, да съехала подальше — www.gradient-art.ru/
В результате просто кинул вопрос в «дворовую» группу на Facebook вопрос — у одного соседа нашёлся арендатор — такая же рекламная фирмочка с лазером. По знакомству обещают порезать. Так что не пренебрегайте соседями — «через одно рукопожатие» может найтись.
P.S. Рекомендую вот эту штуку — www.makercase.com/ С её помощью можно быстро-грязно наляпать заготовок коробок под поделки под нужную толщину акрила, а уже потом спокойненько доделать в Автокаде дырки, крепёж и т.п.
Очень удобно искать на оф. сайтах чертежи («schematic») в Eagle — они в два клика экспортируются в DWG, после чего вы получаете абсолютно точные габариты и расположение монтажных отверстий. Благодаря этому Ардуину можно закрепить в акриловой коробке в размеченные лазером дырки болтами M3 и она там стоит, как влитая:
Если надо сделать 2-3 снежинки, то все что Вам нужно — это канцелярский нож, металлическая линейка и пачка потолочной плитки, которая продается в любом строительном магазине.
Плюс однозначный.
Что удивило — что комплектация бралась не на тао, а то я уже привык, что автор там затаривается :)
если не подходит синяя изолента
Кто сказал, что не подходит?
Отрываем кусок синей изоленты, на неклекую сторону на половину длины куска наклеиваем тонкий двухсторонний скотч, изолента складывается — и получаем почти аутентичную синюю двустороннюю изоленту.
Ну, держать будет похужее, но традиции, блин… :)
Там выше писали про эту плату. И снежинку эту же на ней повторили
Из плюсов:
— USB/TTL на борту. Не нужен внешний USB/TTL конвертер
— Меньше размеры
— Меньше потребление (хотя с TTL конвертером может и не меньшее)
Из минусов
— Цена больше
— Характеристики (ОЗУ/ПЗУ) вдвое меньше
— GPIO намного меньше
— Для программирования нужно совершить некоторые телодвижения, так как Arduino IDE из коробки тиньки не поддерживает
Под конкретные задачи брать можно, где очень критичны размеры и потребление
Супер! Плюсую) Уже заказал ленту, правда, 144 светодиодов на метр) Ваш блог в закладках, думал тоже снежинку в подарок сделать, когда первый вариант видел)
Тоже на нее смотрел. Цена в расчете на один светодиод получается повыше.
Но плотность монтажа дает интересные возможности. Особенно, всякие дисплеи делать
Прочитал по диагонали, подумал «Зачем так сложно?»
А при просмотре видео отпала челюсть)
Автор, браво! Очень интересно, посмотрел другие ваши работы, часы, теперь «загорелся» купить такие светодиоды.
«А вот проводов нормальных под рукой не оказалось»
и тд и тп
Очень понравилось и теперь придется думать как внучке сделать алфавит по принципу караоке, чтоб читать училась.
Что бы буквы разными цветами загорались по-порядку. Интересно буквы от магнитного алфавиты подойдут (полистирол), они уже разноцветные.
Прикольно получилось. Сначала недоумевал, зачем на такую фигню еще ардуину тратить… пока не увидел видео. Я то думал это статичная снежинка, а она вон какая крутая :)
Если кого заинтересует, могу дать координаты человека, который режет акрил в Москве. За 4 снежинки (25 см) он с меня взял 1000 рублей. форма правильная, но по краям есть следы оплавления. на конечном изделии этого не будет видно, в крайнем случае можно обработать напильником.
Вопрос к москвичам все еще в силе. Никто не богат лишним метром LED ленты 60шт/м?
Хотел было облаять обзор (ненавижу предновогоднюю истерию — я убеждённый атеист) за в пустую потраченное время (делать больше нечего, типа?) и деньги (хотя и не мои).
Потом видео посмотрел. Впечатляет. Ещё бы со звуком синхронизировать (опять, блин, лишние провода — как достали!).
Автору за мозги и руки, которые из плеч — большой плюс (не путать с крестом! :-).
Очень захотелось повторить, но заказывать из Китаю времени уже нет, а в нашем городе нашёл только такую ленту RGB. Такая подойдёт для этой схемы? Если да, то нужно ли что-то менять? О том, что я «чайник» упоминать не нужно, надеюсь? :-). Не могу добавить фото, поэтому пишу: Feron, модель LS606? мощность 14.4W/m. feron.ru/categories/83-svetodiodnaya-lenta/products/3680-lenta-svetodiodnaya-ls606
Не пойдет
Там в каждом светодиоде WS2812/WS812B стоит микросхемка, позволяющая управлять каждым светодиодом по отдельности. В вашем случае управление производиться всей лентой целиком по каждому из 3-х цветов
Спасибо, ардуинка уже в пути, осталось придумать как использовать метр купленной ленты LS606 :-). Только что ввёл в ступор нескольких продавцов светодиодных лент на рынке вопросом о WS2812/WS812B — не знаю, не видел…
На обычных лентах тоже можно сделать.
Посадить каждый из 18-ти каналов (6 лучей * RGB) на выводы ардуино. Загрузить библиотеку SoftPWM на 18 каналах. Тоже может неплохо получиться. Только лучем целиком нужно будет управлять
извините за глупый наверно вопрос, но не нахожу на плате контактов А4, А5, А6. И кроме того получается, что для 18 каналов слишком много: «D2-D13 + A0-A6»=19. Мне не хватает на плате подключения только двух каналов (D2-D13+A0-A3=16 шт.) Резисторы с транзисторами нужно добавлять в случаи с подключением к ардуино моей обычной ленты RGB?
Вы на ESP8266 к этому году не сделали такого рода гирлянды? :)
Я просто хотел что-то подобное сделать только на RGB ленте, благо ESP8266 лежит.
PS или может быть подскажете где про такое почитать (я в этом деле новичок)
Неистово плюсую :)
ИМХО можно смело в мелкосерийное производство запускать… А там уже как пойдет:))
Что касается «управлять снежинкой прямо со смартфона и загружать эффекты из интернета. А также координировать работу снежинок единой программой в системе «Умный Новый год» )))» вообще космос идея :))
я бы УБРАЛ большинство несимметричных эффектов и ДОБАВИЛ бы спиралей.
Коту привет, лови что заслужил)))
Шутка. Коту привет, продолжайте продуктивное сотрудничество. Переход на 8266 считаю оправдан (привет с 8266, ру) поскольку моделей уже больше, нежели ардуин и продолжает расти с одновременным падением цен.
Ну и счастливого НГ, раз пошла такая тема)
Аватарка то характерная )))
У ESP еще много проблем со стабильностью работы, а также удобностью прошивки. Очень много проблем у всех с первой прошивкой.
Да и библиотек на него намного меньше пока. Так что ESP — своя ниша, Ардуино (читай AVR) своя
Снежинка хороша, да. И кот тоже ;)
Не знал про управляемые светики. Спасибо.
Видео напомнило бурильные машины из матрицы, вид сверху.
Только вот дешевле $1.3 я не нашел (Тем более $1.2 в момент распродаж)
WARNING: Category '' in library SPI is not valid. Setting to 'Uncategorized'
Изменены опции сборки, пересобираем все
Внимание: platform.txt из ядра 'Digistump AVR Boards' содержит устаревшие recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} "{build.path}/{archive_file}" "{object_file}", автоматически преобразовано в recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} "{archive_file_path}" "{object_file}". Ожидайте обновления ядра.
Внимание: platform.txt из ядра 'Digistump AVR Boards' содержит устаревшие recipe.c.combine.pattern="{compiler.path}{compiler.c.elf.cmd}" {compiler.c.elf.flags} -mmcu={build.mcu} -o "{build.path}/{build.project_name}.elf" {object_files} "{build.path}/{archive_file}" "-L{build.path}" -lm, автоматически преобразовано в recipe.c.combine.pattern="{compiler.path}{compiler.c.elf.cmd}" {compiler.c.elf.flags} -mmcu={build.mcu} -o "{build.path}/{build.project_name}.elf" {object_files} "{archive_file_path}" "-L{build.path}" -lm. Ожидайте обновления ядра.
что значит «Ожидайте обновления ядра»?
или библиотеки NeoPixel
Возможно неправильно выбран контроллер
библиотека взята с самопала
контроллер выбран Digispark (Default — 16.5mhz)
спасибо
Снежинки получились крутые, про эти светики слышал, но не трогал… забыл на распродаже заказать.
Причем, никто не мешает при серийном производстве зашивать программы прямо в контроллеры без всяких загрузчиков
Снежинки отдаленно похожи на NeoPixel Ring, который по определению для самоделок.
ST вроде серьезная компания, а до сих пор у них есть косяки разного рода, требующие во многих кристаллов ппц каких костылей.
А библиотеки под stm8 официальные, хоть стой, хоть падай, по крайней мере раньше были такими.
В общем лучше курите RM-какой-то-там и руками по регистрам — в итоге и контроллет будет более родным и все более быстро и гибко.
Так вот, не стоит оптимизация этого времени и эти усилий, особенно, если понять, что этот весь, или почти весь функционал можно было уместить в тот же ESP модуль, а под него даже уже Arduino IDE прошивки есть.
Ниже это я свой скетч на ESP компилил. Цитирую для наглядности памяти.
Или я что то не понимаю?
Только библиотеки не все подходят, но в основном проблем нет.
Всего два провода управления. До 8 микросхем на одной шине.
Им правда по надежности до Ардуины еще идти и идти. Сколько мучался с программное перезагрузкой. Не пересоединяется с WiFi после нее (очень редко), передергивания питания помогает. Пришлось в одном критически важном проекте аппаратный таймер на 555 реализовывать.
Про помехи на неподтянутых GPIO можно вообще молчать
Вот недавно из спортивного интереса ковырял контроллер паяльника:
И это при том, что всей работы — только индикатор и переменник для задачи температуры — ни кнопочек с энкодерами, ни меню, ни настроек…
И это при том, что намного более функциональная прошивка спокойно помещается в мегу8… (не для ардуиносрача, просто констатирую факт)
В момент распродажи была разница в четверть доллара.
Про выбор контроллер уже сказал. Для моей задачи он больше чем достаточен:
Разница все уменьшается… ;) Ну и нас (читателей) ведь интересует разница как минимум на дату публикации обзора.
Это сейчас. А как только решишь добавить пару плюшечек, никогда не знаешь в какой момент размер(ы) требуемой памяти резко прыгнут.
По 328-му с вами согласен. Но ведь его уже сколько раз обозревали. А этот — первый.
Взять тот же Arduino Due — он к AVR тоже никак не относится
Только хотел написать про ESP8266+Arduino IDE а вы и сами в конце написали)
Сейчас тоже программирую ESP8266 столкнулся сразу с тем, что в место delay(1000); лучше использовать if(millis()%1000==0)
Иначе соединение на момент delay рвется.
Я через blynk конекчусь к ней.
Временем срабатывания тикера можно добиться стабильной работы даже с другими обработками
Хотелось бы увидеть скетч с использованием ticker.
Я еще слаб во всем этом. ESP только вторую неделю мучаю. А ардуинку пару месяцов.
Один вопрос: Почему?
Попробую повторить.
А если добавить акб в изделие?
Маленькая снежинка потребляет 0,27 ампера. То есть батарея на 1000mAH хватит часа на четыре.
Сразу ставьте маленькую платку заряда, чтобы можно было заряжать. При зарядке идет 4.2В, тоже вполне рабочее для данной конструкции напряжение.
upd нашел, но по даташиту для mini на vin необходимо 7-9в
Синий цвет при этом не тускнеет?
Кстати, чипы на Вашей ленте действительно больше похожи на WS2812В
Лента же стабильно работает.
Чипы они есть. С четыремя контактами. Но для ленты это совершенно несущественно. Это самому паять есть разница.
Никто в Мск не знает недорогой конторы с нормальным ЧПУ-лазером и каким-никаким ассортиментом листовых пластиков?
Быстро поиском не находится — то заказы минимум от $100, то «мы с этим не работаем», то «своих материалов нет, подвозите, но это 100 км от Мск».
PS: Подумав, соглашусь с тем, что слово «лазер» в технологическом смысле для данного случая заменимо на «ЧПУ-гидроабразив» или даже на «ЧПУ-фрезер». Сам вопрос остаётся.
Нашлась конторка в гаражах на Соколе, которая соглашалась резать свой материал по моему DWG-чертежу, принимала предоплату на карту Сбера и не требовала минималки, да съехала подальше — www.gradient-art.ru/
В результате просто кинул вопрос в «дворовую» группу на Facebook вопрос — у одного соседа нашёлся арендатор — такая же рекламная фирмочка с лазером. По знакомству обещают порезать. Так что не пренебрегайте соседями — «через одно рукопожатие» может найтись.
P.S. Рекомендую вот эту штуку — www.makercase.com/ С её помощью можно быстро-грязно наляпать заготовок коробок под поделки под нужную толщину акрила, а уже потом спокойненько доделать в Автокаде дырки, крепёж и т.п.
Очень удобно искать на оф. сайтах чертежи («schematic») в Eagle — они в два клика экспортируются в DWG, после чего вы получаете абсолютно точные габариты и расположение монтажных отверстий. Благодаря этому Ардуину можно закрепить в акриловой коробке в размеченные лазером дырки болтами M3 и она там стоит, как влитая:
www. авито .ru/moskva/uslugi?bt=1&q=%D0%BB%D0%B0%D0%B7%D0%B5%D1%80%D0%BD%D0%B0%D1%8F+%D0%B3%D1%80%D0%B0%D0%B2%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0
www. авито .ru/moskva/uslugi?bt=1&q=%D1%87%D0%BF%D1%83+%D1%80%D0%B5%D0%B7%D0%BA%D0%B0
ru/moskva/predlozheniya_uslug/lazernaya_rezka_orgstekla_gravirovka_693215878&h=qAQHAdPhL
Резка деталек для вот такой поделки (по площади почти лист А3) вышла в 800 рублей с материалом:
Только пенопластовую не берите — она толстая.
Вот такая нужна (полистирольная). Ее толщина миллиметра 3-4.
Что удивило — что комплектация бралась не на тао, а то я уже привык, что автор там затаривается :)
Кто сказал, что не подходит?
Отрываем кусок синей изоленты, на неклекую сторону на половину длины куска наклеиваем тонкий двухсторонний скотч, изолента складывается — и получаем почти аутентичную синюю двустороннюю изоленту.
Ну, держать будет похужее, но традиции, блин… :)
С синей изолетой попробую в следующий раз )))
Все шикарно, однознано жирный +!!!
только на сайте ТС.
Находил в интернете в свободном скачивании векторные снежинки, наверное под сотню
+10 рублей и будет 328ая
ru.aliexpress.com/item/Digispark-ATTINY85-General-Micro-USB-Development-Board-For-Arduino-Worldwide-Store-C1/32408185663.html
Из плюсов:
— USB/TTL на борту. Не нужен внешний USB/TTL конвертер
— Меньше размеры
— Меньше потребление (хотя с TTL конвертером может и не меньшее)
Из минусов
— Цена больше
— Характеристики (ОЗУ/ПЗУ) вдвое меньше
— GPIO намного меньше
— Для программирования нужно совершить некоторые телодвижения, так как Arduino IDE из коробки тиньки не поддерживает
Под конкретные задачи брать можно, где очень критичны размеры и потребление
Но плотность монтажа дает интересные возможности. Особенно, всякие дисплеи делать
Ни у кого из Москвы нет лишнего метра такой ленты?
Это в нашей глуши WS2812 — диковина
А при просмотре видео отпала челюсть)
Автор, браво! Очень интересно, посмотрел другие ваши работы, часы, теперь «загорелся» купить такие светодиоды.
upd. а нашел тут, samopal.pro/ws2812-5, спасибо
и тд и тп
Очень понравилось и теперь придется думать как внучке сделать алфавит по принципу караоке, чтоб читать училась.
Что бы буквы разными цветами загорались по-порядку. Интересно буквы от магнитного алфавиты подойдут (полистирол), они уже разноцветные.
Вопрос к москвичам все еще в силе. Никто не богат лишним метром LED ленты 60шт/м?
Потом видео посмотрел. Впечатляет. Ещё бы со звуком синхронизировать (опять, блин, лишние провода — как достали!).
Автору за мозги и руки, которые из плеч — большой плюс (не путать с крестом! :-).
Там в каждом светодиоде WS2812/WS812B стоит микросхемка, позволяющая управлять каждым светодиодом по отдельности. В вашем случае управление производиться всей лентой целиком по каждому из 3-х цветов
Посадить каждый из 18-ти каналов (6 лучей * RGB) на выводы ардуино. Загрузить библиотеку SoftPWM на 18 каналах. Тоже может неплохо получиться. Только лучем целиком нужно будет управлять
В вашем случае каналов не 3, а 18. D2-D13 + A0-A6
Подскажите, можно ли запрограммировать эту снежинку в atmega8?
Так что все должно работать
Я просто хотел что-то подобное сделать только на RGB ленте, благо ESP8266 лежит.
PS или может быть подскажете где про такое почитать (я в этом деле новичок)
Там PWM на всех выходах есть еще и с регулируемой частотой.
Почитайте у меня на сайте много
samopal.pro
Там очень симпатичевя елочка на адресуемых светодиодах
samopal.pro/ws2812-attiny13a/
Можно код и на другой контроллер перенести
samopal.pro/snowflake2/
Автору ОГРОМНОЕ БЛАГОДАРЮ!