[Разработка под Arduino, DIY или Сделай сам] Крутые часы на адресных диодах
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Часть 1. Используемые компонентыЕщё несколько лет назад на просторах сети я увидел интересный проект, в котором автор сделал огромные цифровые часы (с 7-мисегментными цифрами), в основе которых лежит так называемая адресная светодиодная лента.Фото готового проекта
К сожалению, камера искажает цвет. На самом деле цвета равномерные и контрастные (цвет может быть любой)Я использовал размер цифры примерно 280х205 мм (почти лист А4), общий размер часов - 300х800 мм.Данный проект повторяли много раз, каждый раз по-разному, однако я не встречал понятного руководства по сборке данных часов, а кроме того, я постараюсь максимально подробно описать те особенности и трудности, с которыми пришлось столкнуться мне. Кроме того, данные часы работают у меня уже порядка 3 лет, и совсем недавно я обновил как программную, так и программную часть, оглядываясь на опыт их использования, в связи с чем расскажу о некоторых технических доработках, которые я применил в данном проекте.Что такое адресная светодиодная лентаОбычная RGB-светодиодная лента имеет 4 контакта: общий "+" и 3 "-", соответственно для каждого из основных цветов - красного, зелёного и синего.Многочисленные контроллеры позволяют данной ленте отображать оттенки цветов путём смешивания основных цветов, однако у данной ленты есть существенные ограничения: отрезок ленты светится только целиком и с одинаковой яркостью по всей длине.Лента на адресных диодах устроена иначе: на ней имеются контроллеры, которые позволяют управлять группой диодов (либо каждым диодом) по отдельности, позволяя независимо включать или выключать их, заставляя светиться любым цветом с любой яркостью. Лента имеет 3 контакта: "+", "-" и контакт управления, который подключается к микроконтроллеру.На момент создания часов было 2 типа ленты, сейчас их стало несколько больше:
- WS2811. Самая дешёвая из всех лент (считалась надёжнее "старшей" WS2812b). Позволяет управлять группами по 3 диода.
- WS2812b. Использовалась мной (считается ненадёжной, хотя за время использования часов проблем выявлено не было). Позволяет управлять каждый диодом в отдельности. Из минусов - при выходе из строя 1 диода - дальнейшие работать не будут.
- WS2813, WS2815, WS2815 - обновление WS2812, имеют "резервный" контакт передачи данных, увеличенная частота обновления. При выходе из строя одного диода остальной отрезок ленты сохраняет работоспособность. Минусы - цена. Подробнее о лентах и особенностях их подключения можно почитать здесь.
Итак, нам понадобится:
- Микроконтроллер;
- Модуль часов реального времени;
- Адресная диодная лента;
- Датчик температуры;
- Датчик освещённости;
- Модуль bluetooth.
- Блок питания;
- Шилд для arduino;
- Коннекторы, провода;
- Материалы для корпуса и рассеивателя.
Теперь подробнее об использованном оборудовании:Микроконтроллер
Arduino nano с распаянными "ногами"Я использовал Arduino Nano (на базе ATmega328) - самая доступная плата как по цене, так и по простоте освоения новичку. Продаётся как с распаянными "ногами", так и без них. Лучше брать сразу с "ногами", так как я рекомендую использовать шилд, который очень сильно упрощает сборку, повышая качество и модульность.Модуль часов реального времени
Модуль часов реального времени DS3231Настоятельно рекомендуется брать модель DS3231, так как у неё имеется встроенный датчик температуры, который нивелирует влияние перепадов температуры окружающей среды на показания часов.
Модули DS1302 и DS1307 к приобретению не рекомендуются, тем более что разница в цене незначительна.
Модуль выпускается в двух вариантах: полноразмерном (внизу) и компактном (вверху). Я брал полноразмерную версию, так как с ней удобнее работать.Светодиодная лента
Адресная светодиодная лентаСветодиодная лента. Именно она отвечает за индикацию.
Я в своём проекте использовал WS2812b 60 диодов на метр.
Можно сэкономить и взять WS2811 (но тогда придётся немного поправить скетч, и при подключении схемы учесть, что ей нужно 12V питания, в то время как WS2812b питается от 5V).
Во многих проектах использовалась лента с частотой 30 диодов на метр, но на мой взгляд, так делать не стоит.Датчик температуры
Датчик температуры DHT22 на платеИспользование датчика температуры опционально (в случае его отсутствия - необходимо удалить/закомментировать соответствующие строки в коде).
Я использовал модель DHT22 (кстати, измеряет также и влажность) - он дороже, чем его "младший брат" DHT11, однако, как пишут пользователи, младшая версия выдаёт значения, основанные на только ей известном алгоритме.
Рекомендуется брать сразу распаянный на плате (как на картинке слева).Датчик освещённости
Датчик освещённости BH1750Я использовал BH1750 по двум причинам:
1. Он аналоговый, то есть позволяет передавать числовое значение освещённости (в отличие от цифровых, которые имеют только значение порога "светло/темно").
2. Согласно тестам (статьи в сети), он адекватно реагирует на лампы дневного света, так как имеет "на борту" несколько разных сенсоров (некоторые датчики не улавливают свет от люминесцентных ламп).Модуль bluetooth
Модуль bluetoothОригинальный проект для корректировки времени использовал кнопки, однако, на мой взгляд, bluetooth даёт гораздо больше возможностей (например, просмотр отладочной информации).
Кроме того, у меня часы висят на высоте примерно 3,5 метров, так что корректировать их кнопками - то ещё удовольствие.
Модель - HC-05 или HC-06, сразу на плате с "ногами".Блок питанияЯ использую БП на 10 ватт (5V/2A), чего вполне хватает для моих часов (172 диода), особенно с учётом того, что они редко светят даже на половину своей яркости.Какой ток потребляет лента?Один цвет одного диода при максимальной яркости потребляет примерно 12 мА. В одном светодиоде три цвета, то есть если метр нашей ленты с плотностью 60 диод/метр будет светить белым светом максимальной яркости, получаем (12*3*60) примерно 2.1A.Однако нужно учитывать, что в данном проекте нет смысла запускать свечение ленты белым цветом; яркости у ленты так же с запасом.Кстати: WS2811 питается от 12V, WS2812b - от 5V.
Плата расширения (шилд) для Arduino NanoИспользование шилда так же опционально, однако он очень сильно упрощает сборку, а также повышает её модульность.
Первая версия часов была собрана без него, и как показала практика, использование шилда крайне рекомендуется.
Шилд позволяет извлечь микроконтроллер для обновления прошивки или заменить любой из модулей независимо от остального оборудования, а также дублирует пины питания и другие важные пины.Провода и коннекторы
Провода "мама-папа"Для соединения компонентов удобно использовать такие провода-джамеры (есть с более качественными концевиками). Могут быть различные варианты ("мама-мама", "папа-папа", "папа-мама").
Под блок разъём блока питания подбирается соответствующий разъём.Материалы корпуса и рассеивателяДля изготовления корпуса я использовал кусок экструзионного пенополистирола ("техноплекс") - в отличие от всем известного "пеноплекса", он серый, то есть не влияет итоговый оттенок цифр и кабель-канал для рамки корпуса.Для рассеивателя многие используют бумагу, что не очень практично и сильно ухудшает качество "изображения" цифр. Я использовал специальный светотехнический поликарбонат молочного цвета (opal). Он используется при изготовлении рекламных световых конструкций - можно поискать объявления в интернете или узнать у фирм, которые занимаются изготовлением рекламных конструкций. У меня лист толщиной примерно 4 мм, однако если бы у меня был выбор, то я бы рекомендовал взять более тонкий (толстый сильно "мылит" края цифр).Поликарбонат бывает разныйКак я понял, поликарбонат бывает обычный, тоже белого (молочного цвета). Предпочтительнее использовать именно "opal", так как он специально сделан для рассеивания света и имеет две разные стороны: одна направлена к источнику света, другая - наружу, к зрителю.Так как материала получается много, к концу написания этой части я подумал, что будет правильным разделить статью на части.В следующей части я расскажу про сборку компонентов, а разбор программной части, скорее всего оставлю на третью часть.
===========
Источник:
habr.com
===========
Похожие новости:
- [Настройка Linux, Разработка под Arduino, Разработка на Raspberry Pi, Умный дом] Безумный дом
- [Алгоритмы, Математика, DIY или Сделай сам] Математически оптимальные рождественские печеньки (перевод)
- [Программирование, Робототехника, Игры и игровые приставки, Логические игры, Электроника для начинающих] 5 игрушек, чтобы ребёнок почувствовал программирование
- [Научно-популярное, DIY или Сделай сам, Астрономия] Измеряем реальную долготу светового дня с помощью стрелочных часов
- [Схемотехника, DIY или Сделай сам, Электроника для начинающих] Максимально универсальный семисегментный дисплей. Часть вторая — Software
- [PHP, Symfony, MongoDB, Разработка под Arduino] Использование Shopker для IOT
- [3D-принтеры, DIY или Сделай сам] Я хотел купить недорогой 3D-принтер, но посмотрел YouTube и расхотел
- [Системное администрирование, DIY или Сделай сам] Hotspot для бизнеса своими руками
- [Реверс-инжиниринг, Программирование микроконтроллеров, Прототипирование, Интернет вещей, DIY или Сделай сам] Подключаемся к станку по изготовлению профлиста и считываем из него прокатную длинну
- [Научно-популярное, DIY или Сделай сам, Лайфхаки для гиков, Химия] Малышка на миллион. Сковиллей
Теги для поиска: #_razrabotka_pod_arduino (Разработка под Arduino), #_diy_ili_sdelaj_sam (DIY или Сделай сам), #_arduino, #_adresnye_svetodiody (адресные светодиоды), #_chasy (часы), #_samodelki (самоделки), #_razrabotka_pod_arduino (
Разработка под Arduino
), #_diy_ili_sdelaj_sam (
DIY или Сделай сам
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 23-Ноя 00:56
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Часть 1. Используемые компонентыЕщё несколько лет назад на просторах сети я увидел интересный проект, в котором автор сделал огромные цифровые часы (с 7-мисегментными цифрами), в основе которых лежит так называемая адресная светодиодная лента.Фото готового проекта К сожалению, камера искажает цвет. На самом деле цвета равномерные и контрастные (цвет может быть любой)Я использовал размер цифры примерно 280х205 мм (почти лист А4), общий размер часов - 300х800 мм.Данный проект повторяли много раз, каждый раз по-разному, однако я не встречал понятного руководства по сборке данных часов, а кроме того, я постараюсь максимально подробно описать те особенности и трудности, с которыми пришлось столкнуться мне. Кроме того, данные часы работают у меня уже порядка 3 лет, и совсем недавно я обновил как программную, так и программную часть, оглядываясь на опыт их использования, в связи с чем расскажу о некоторых технических доработках, которые я применил в данном проекте.Что такое адресная светодиодная лентаОбычная RGB-светодиодная лента имеет 4 контакта: общий "+" и 3 "-", соответственно для каждого из основных цветов - красного, зелёного и синего.Многочисленные контроллеры позволяют данной ленте отображать оттенки цветов путём смешивания основных цветов, однако у данной ленты есть существенные ограничения: отрезок ленты светится только целиком и с одинаковой яркостью по всей длине.Лента на адресных диодах устроена иначе: на ней имеются контроллеры, которые позволяют управлять группой диодов (либо каждым диодом) по отдельности, позволяя независимо включать или выключать их, заставляя светиться любым цветом с любой яркостью. Лента имеет 3 контакта: "+", "-" и контакт управления, который подключается к микроконтроллеру.На момент создания часов было 2 типа ленты, сейчас их стало несколько больше:
Arduino nano с распаянными "ногами"Я использовал Arduino Nano (на базе ATmega328) - самая доступная плата как по цене, так и по простоте освоения новичку. Продаётся как с распаянными "ногами", так и без них. Лучше брать сразу с "ногами", так как я рекомендую использовать шилд, который очень сильно упрощает сборку, повышая качество и модульность.Модуль часов реального времени Модуль часов реального времени DS3231Настоятельно рекомендуется брать модель DS3231, так как у неё имеется встроенный датчик температуры, который нивелирует влияние перепадов температуры окружающей среды на показания часов. Модули DS1302 и DS1307 к приобретению не рекомендуются, тем более что разница в цене незначительна. Модуль выпускается в двух вариантах: полноразмерном (внизу) и компактном (вверху). Я брал полноразмерную версию, так как с ней удобнее работать.Светодиодная лента Адресная светодиодная лентаСветодиодная лента. Именно она отвечает за индикацию. Я в своём проекте использовал WS2812b 60 диодов на метр. Можно сэкономить и взять WS2811 (но тогда придётся немного поправить скетч, и при подключении схемы учесть, что ей нужно 12V питания, в то время как WS2812b питается от 5V). Во многих проектах использовалась лента с частотой 30 диодов на метр, но на мой взгляд, так делать не стоит.Датчик температуры Датчик температуры DHT22 на платеИспользование датчика температуры опционально (в случае его отсутствия - необходимо удалить/закомментировать соответствующие строки в коде). Я использовал модель DHT22 (кстати, измеряет также и влажность) - он дороже, чем его "младший брат" DHT11, однако, как пишут пользователи, младшая версия выдаёт значения, основанные на только ей известном алгоритме. Рекомендуется брать сразу распаянный на плате (как на картинке слева).Датчик освещённости Датчик освещённости BH1750Я использовал BH1750 по двум причинам: 1. Он аналоговый, то есть позволяет передавать числовое значение освещённости (в отличие от цифровых, которые имеют только значение порога "светло/темно"). 2. Согласно тестам (статьи в сети), он адекватно реагирует на лампы дневного света, так как имеет "на борту" несколько разных сенсоров (некоторые датчики не улавливают свет от люминесцентных ламп).Модуль bluetooth Модуль bluetoothОригинальный проект для корректировки времени использовал кнопки, однако, на мой взгляд, bluetooth даёт гораздо больше возможностей (например, просмотр отладочной информации). Кроме того, у меня часы висят на высоте примерно 3,5 метров, так что корректировать их кнопками - то ещё удовольствие. Модель - HC-05 или HC-06, сразу на плате с "ногами".Блок питанияЯ использую БП на 10 ватт (5V/2A), чего вполне хватает для моих часов (172 диода), особенно с учётом того, что они редко светят даже на половину своей яркости.Какой ток потребляет лента?Один цвет одного диода при максимальной яркости потребляет примерно 12 мА. В одном светодиоде три цвета, то есть если метр нашей ленты с плотностью 60 диод/метр будет светить белым светом максимальной яркости, получаем (12*3*60) примерно 2.1A.Однако нужно учитывать, что в данном проекте нет смысла запускать свечение ленты белым цветом; яркости у ленты так же с запасом.Кстати: WS2811 питается от 12V, WS2812b - от 5V. Плата расширения (шилд) для Arduino NanoИспользование шилда так же опционально, однако он очень сильно упрощает сборку, а также повышает её модульность. Первая версия часов была собрана без него, и как показала практика, использование шилда крайне рекомендуется. Шилд позволяет извлечь микроконтроллер для обновления прошивки или заменить любой из модулей независимо от остального оборудования, а также дублирует пины питания и другие важные пины.Провода и коннекторы Провода "мама-папа"Для соединения компонентов удобно использовать такие провода-джамеры (есть с более качественными концевиками). Могут быть различные варианты ("мама-мама", "папа-папа", "папа-мама"). Под блок разъём блока питания подбирается соответствующий разъём.Материалы корпуса и рассеивателяДля изготовления корпуса я использовал кусок экструзионного пенополистирола ("техноплекс") - в отличие от всем известного "пеноплекса", он серый, то есть не влияет итоговый оттенок цифр и кабель-канал для рамки корпуса.Для рассеивателя многие используют бумагу, что не очень практично и сильно ухудшает качество "изображения" цифр. Я использовал специальный светотехнический поликарбонат молочного цвета (opal). Он используется при изготовлении рекламных световых конструкций - можно поискать объявления в интернете или узнать у фирм, которые занимаются изготовлением рекламных конструкций. У меня лист толщиной примерно 4 мм, однако если бы у меня был выбор, то я бы рекомендовал взять более тонкий (толстый сильно "мылит" края цифр).Поликарбонат бывает разныйКак я понял, поликарбонат бывает обычный, тоже белого (молочного цвета). Предпочтительнее использовать именно "opal", так как он специально сделан для рассеивания света и имеет две разные стороны: одна направлена к источнику света, другая - наружу, к зрителю.Так как материала получается много, к концу написания этой части я подумал, что будет правильным разделить статью на части.В следующей части я расскажу про сборку компонентов, а разбор программной части, скорее всего оставлю на третью часть. =========== Источник: habr.com =========== Похожие новости:
Разработка под Arduino ), #_diy_ili_sdelaj_sam ( DIY или Сделай сам ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 23-Ноя 00:56
Часовой пояс: UTC + 5