Съдържание:

Светлината на коледното дърво, контролирана от играчка .: 12 стъпки (със снимки)
Светлината на коледното дърво, контролирана от играчка .: 12 стъпки (със снимки)

Видео: Светлината на коледното дърво, контролирана от играчка .: 12 стъпки (със снимки)

Видео: Светлината на коледното дърво, контролирана от играчка .: 12 стъпки (със снимки)
Видео: Детето ми се храни само със зеленчуци 2024, Ноември
Anonim
Image
Image
Подготовка. LED лента
Подготовка. LED лента

Поздрави създателите!

Идват Коледа и Нова година. Това означава празнично настроение, подаръци и, разбира се, коледно дърво, украсено с ярки цветни светлини.

За мен светлините за коледно дърво на масовия пазар са твърде скучни. За да зарадвам децата, направих уникална украса за елха, която се управлява от играчка.

В това ръководство ще кажа как можете да го направите.

Стъпка 1: Идеята

Идеята е да поставите играчка, например мека, под елхата и да я направите умна. Искам играчка да прочете цвета на всеки прикрепен предмет и да нарисувам дърво в този цвят. Така това ще бъде забавна игра за деца, които могат да използват различни неща, за да нарисуват коледното дърво в различни цветове.

Стъпка 2: Подготовка. LED лента

Подготовка. LED лента
Подготовка. LED лента
Подготовка. LED лента
Подготовка. LED лента
Подготовка. LED лента
Подготовка. LED лента

Първо трябва да намеря заместител на обичайните коледни светлини.

Новите светлини трябва да са ярки, цветни и най -важното е да бъдат лесни за програмиране.

За коледните светлини избрах адресируема програмируема цифрова RGB ws2812b LED лента. Тези LED ленти са много популярни, можете да ги намерите навсякъде. Те са лесни за свързване към различни контролери на Arduino. Такива светодиоди се продават на ленти от няколко десетки парчета и се захранват от 5 12 или 24 V DC. Можете да свържете няколко ленти подред и да управлявате огромен брой светодиоди.

Намерих няколко такива ленти у дома. Моите ленти имат по 50 светодиода всяка и се задвижват от 5 V DC.

2 x WS2812B Предварително запоени LED модулни низови възела ~ 18 $

Ето възможна замяна от магазина на Amazon:

  • WS2812b 5m 60leds/пиксели/m Гъвкава индивидуално адресируема LED лента
  • ALITOVE 16.4ft WS2812B Индивидуално адресируема LED лента

LED лентите имат много разновидности. Те се различават по броя на светодиодите, разстоянието между светодиодите, групирането, захранващото напрежение и т.н. Изберете какво искате.

За моята играчка приготвих малко коледно дърво, така че 100 LED са ми достатъчни.

Стъпка 3: Подготовка. Играчка

Подготовка. Играчка
Подготовка. Играчка
Подготовка. Играчка
Подготовка. Играчка

Намерете играчката и решете къде да поставите контролера на LED лентата.

Тази стъпка е най -важната, защото резултатът ще бъде оценен от децата =).

В близкия магазин за играчки намерих прекрасна новогодишна мечка. Можете да подобрите играчка, която вече имате.

Реших да покрия контролера за LED ленти с плат и да го зашия на лапки. Искам мечката да изглежда така, сякаш държи подарък.

Купих две парчета плат със забавни шарки. Единият е мек за субстрата, а вторият е тънък за горния слой.

Стъпка 4: Подготовка. Електроника

Подготовка. Електроника
Подготовка. Електроника
Подготовка. Електроника
Подготовка. Електроника
Подготовка. Електроника
Подготовка. Електроника

Имате нужда от някои електронни компоненти, за да направите играчката по -умна.

Използвам пробивни дъски и щитове Arduino от магазина Amperka. Що се отнася до мен, те са много удобни поради модулна структура. Модулите могат лесно да се комбинират без запояване.

Може да ви е трудно да ги закупите, затова включвам връзки с възможна подмяна.

Контролер

Използвам платка за разработка на ESP-12, базирана на чипа ESP8266. Тези дъски са супер малки и имат достатъчно функционалност. Добър избор за малки проекти, изискващи ограничено пространство, дори ако не използвате WiFi и се свържете с интернет.

1 x Amperka Wi-Fi слот ~ 19 $

Използвам тази платка за разработка, защото е съвместима с други модули от същия производител.

Освен това има квадратна форма! Тя трябва лесно да се побере в малка подаръчна кутия за мечката.

Възможна подмяна:

  • ESP-12E NODEMCU
  • WEMOS D1 MINI

Цветен сензор

За определяне на цвета използвам пробивна платка за цветен сензор Amperka Troyka TCS34725. Моят сензор е съвместим с контролната платка, но може да бъде заменен с този:

1 x RGB цветен сензор с IR филтър и бял светодиод - TCS34725 ~ 8 $

Този сензор използва I2C интерфейс за комуникация. Той има вграден ярък светодиод и обширни настройки като увеличаване на цвета или интегриране на цветовете за по-точно разпознаване.

Бутон

Прост бутон, съвместим с Arduino. Използвам го като сензор за докосване, като уведомявам контролера, че е необходимо да прочетете цвета на нов елемент.

1 x модул с бутони Amperka Troyka ~ 1 $

Възможна подмяна:

  • Прекъсване на превключвателя на захранването с бутон Adafruit
  • Модул за бутони за електронни строителни блокове

AC-DC преобразувател на напрежение

За да захранвам LED лентата и контролера, закупих захранването AC-DC 5V 8A.

1 x 5V 8.0A 40W захранване ~ 16 $

Моята LED лента се захранва от 5V. 8A ток е достатъчен за огромен брой светодиоди. Захранвам и ESP контролера от това захранване. Не забравяйте да закупите захранващи устройства в изолирани корпуси, без отворени контактни подложки!

Възможна подмяна:

  • ALITOVE 5V 8A 40W AC към DC адаптер Захранващ преобразувател
  • ОЗНАЧАВАЙТЕ ДОБРИ оригинални LPV-60-5 5V 8A meanwell LPV-60 5V 40W

По избор:

DC-DC преобразувател на напрежение и драйвер WS2812b

За контролерите Arduino, сигналният проводник на LED лентата ws2812b може да бъде директно свързан към щифтове на платката на контролера. Повечето от пиновете за платка за разработка на ESP8266 не са съвместими с 5V логика. По -добре е сега да свържете LED лентата директно към такива контролери. За да разреша този проблем използвам този модул.

1 x Amperka Troyka ws2812 LED лента драйвер ~ 9 $

Използвам този модул, защото лесно се свързва към моя контролер. Също така, модулът има 5-волтов логически буфер и DC-DC преобразувател на напрежение 5 или 3.3V. По този начин ESP контролерът може да се захранва от един проводник заедно с 12 или 24V LED лента.

Стъпка 5: Сглобяване. Електроника

Сглобяване. Електроника
Сглобяване. Електроника
Сглобяване. Електроника
Сглобяване. Електроника
Сглобяване. Електроника
Сглобяване. Електроника
Сглобяване. Електроника
Сглобяване. Електроника

Сглобете електронни компоненти. Свързах компонентите си, както е показано на приложената диаграма.

Схемата може да се различава в зависимост от вашите компоненти, но значението остава същото.

  • Свържете бутон към контролера. Свързах го с щифт A2 Esp8266. Ако не използвате модул, можете да свържете общ моментен бутон чрез резистор.
  • Свържете цветен сензор към контролера. TCS34725 платките за пробив на цветен сензор комуникират чрез I2C шина. Свържете щифтовете SDA и SCL между сензора и контролера. Ако вашата сензорна платка има LED щифт за управление на вградения светодиод, свържете го. Свързах своя LED щифт с щифта A0 Esp8266.
  • Свържете единия край на LED лентата към контролера. ws2812b LED лентата се свързва към контролер с помощта на DI щифт. Логическото напрежение за LED ленти ws2812b е 5V. Ако използвате дъски като Arduino, можете да свържете DI щифта директно към щифта на контролера. Напрежението на логическото ниво за повечето платки Esp8266 е 3.3V, затова използвайте преобразувател на логическо ниво или драйвер за LED лента. Запоявах жицата на DI лентата към платката на драйвера и свързах платката на драйвера към щифта A5 Esp8266.
  • Прикрепете друг край на LED лентата към захранването. Този с DO щифта. Ако е необходимо, запойте щепсела към захранването. Не забравяйте да изолирате проводниците.

Моята LED лента ws2812b се захранва от 5V. Захранвах и лентата, и контролера от едно-единствено AC-DC 5V захранване. Ако вашата LED лента работи с 12 или 24V, използвайте преобразувателя на напрежението за понижаване, за да захранвате цялата електроника от едно захранване.

Стъпка 6: XOD

XOD
XOD
XOD
XOD

Нека програмираме контролера.

Както и в предишните ми проекти, използвам средата за визуално програмиране XOD за фърмуера на контролера.

Публикувал съм няколко библиотеки, които ще ви трябват, за да създадете програма. Така че, не забравяйте да ги добавите във вашето работно пространство XOD.

  • gabbapeople/christmas -tree - Библиотеката съдържа драйвер за неопиксел ws2811 и обвивката за цветен сензор tcs34725.
  • gabbapeople/color - Библиотека за работа с цвят в XOD.

След това ще опиша как да програмирате това устройство в XOD.

Стъпка 7: Програмиране

Програмиране
Програмиране
Програмиране
Програмиране
Програмиране
Програмиране
Програмиране
Програмиране

Ето възли, от които се нуждаете:

Възелът tsc-color-sensor.

Това е първият възел, който се поставя върху пластира. Използва се за измерване на стойността на цвета от сензора. Node използва интерфейса I2C за обмен на данни.

Цветният сензор открива цвета на повърхността в RGB скалата. Цветът е резултат от взаимодействие между източник на светлина, обект и наблюдател. В случай на отразена светлина, светлината, падаща върху обект, ще бъде отразена или погълната в зависимост от характеристиките на повърхността. Повечето цветни сензори съдържат бял светлинен излъчвател и три сензора за интензивност на светлината с цветни филтри.

  • LED и LUM входните щифтове са за вградения светодиод на пробивната платка на сензора. Този вграден светодиод е светлинен излъчвател на сензора. Според моята схема поставям стойността А0 на LED щифта и задавам стойността на 1 яркост на щифта LUM.
  • ИТ пинът задава стойността на времето за интегриране. Този фактор описва редица цикли за интегриране на цвят. Възможните стойности на IT са 1, 10, 20, 42, 64, 256.
  • Стойността на ПИН GAIN е коефициент на усилване. Този коефициент подобрява цвета. Можете да подобрите стойността на цвета с 4, 16 или 60 пъти. Не можете да подобрите цвета. Тогава стойността на щифта GAIN трябва да бъде равна на 1. Получих най -точния резултат, използвайки 20 IT стойност и 60 GAIN стойност.
  • ПИНът INIT задейства инициализацията на сензора и задава персонализирани фактори. Променям стойността на пина INIT на При зареждане.
  • UPD щифтът задейства ново отчитане на сензора. Нека тази стойност бъде непрекъсната.

Tcs-color-node извежда стойност на цвят под формата на цветен персонализиран тип.

Възелът ws2811

Този възел се използва за настройка на LED лентата или матрицата.

  • DI щифтът е за номера на порта на платката, към който е свързана LED лентата или матрицата. Според моята схема, аз сложих стойността A5 към него.
  • Поставете броя на използваните светодиоди към щифта SIZE. Имам 2 LED ленти от 50 диода, свързани помежду си, така че зададох стойността SIZE на 100.
  • Щифтът B задава общата яркост за всички светодиоди в диапазон от 0 до 100. Зададох яркостта на 80.

Този възел инициализира вашата LED лента или матрица и конструира персонализиран тип ws2811 за по -нататъшни операции.

Цветният възел

Когато възелът ws2811 е инсталиран, можете да контролирате LED лентата, като използвате различни функционални възли.

  • всички цветове. Node боядисва всички светодиоди на лентата или матрицата в избран цвят.
  • цветен пиксел. Цветове на възела конкретен светодиод на лентата в избрания цвят. Поставете номера на пиксела към PN пина.
  • цвят-n-пиксели. Цветовете на възела група от N светодиоди в избрания цвят. Посочете стартовия светодиоден номер на групата, като използвате щифта STRT. Посочете подредеността на група в щифта STEP. Например, за да нарисувате всеки втори светодиод, започващ с номер 30 и завършващ с номер 70, поставете следните стойности: STRT = 30; N = 40 (70-30); СТЪПКА = 2.

В този проект аз контролирам всички светодиоди едновременно и използвам възела за всички цветове.

Свързвам първия входен щифт на възела за всички цветове с изходния щифт на възела ws2811. След това свързвам входния щифт CLR, който приема стойността на цвета към изходния щифт на сензора.

Импулс върху щифта SET на възела за всички цветове задейства нов набор от цветове.

Бутонът възел

Използвам бутона, за да информирам контролера за нов обект пред сензора за цвят. За тази цел поставям възела на бутона върху пластира и свързвам неговия изходен PRS щифт с щифта SET на възела за всички цветове. По този начин щракването върху бутона генерира импулсен сигнал за промяна на цвета.

Прикрепих бутона към щифта A2 Esp8266, така че поставих стойността A2 към щифта PORT.

Пречистващият възел

Цветният сензор може да извежда цветови стойности в огромен диапазон. Но LED лентата не може да показва между нюанси. За да разреша това, използвам само така наречените чисти цветове. Те имат произволен оттенък, но винаги имат максимална наситеност. За да пречистя стойността на цвета, поставям пречистващия възел между tsc-color-sensor и color-all възли.

Пачът е готов. Можете да натиснете Deploy, да изберете типа платка и да я качите на устройството.

Стъпка 8: Сглобяване. Кадър

Сглобяване. Кадър
Сглобяване. Кадър
Сглобяване. Кадър
Сглобяване. Кадър
Сглобяване. Кадър
Сглобяване. Кадър

Мога да започна да създавам мек калъф, като се уверя, че устройството работи както трябва.

Като рамка отпечатах модел на кутията върху дебел картон.

След това огънете страните на кутията и направете квадратна дупка за сензора за цвят.

Забележка:

Направих този калъф специално за моите електронни компоненти, които най -вероятно се различават от вашите. Калъфът не е универсален, освен това можете да имате напълно различна играчка. Така че използвайте въображение!

Стъпка 9: Сглобяване. Плат

Сглобяване. Плат
Сглобяване. Плат
Сглобяване. Плат
Сглобяване. Плат
Сглобяване. Плат
Сглобяване. Плат

Сложих два различни плата един върху друг.

Меката дебела тъкан е за обем, а тънката за външен вид. И в двата плата направих дупка за сензора.

Закрепих картонената рамка върху плата с обикновена лепяща лента. По същия начин фиксирах ръбовете на отвора.

След това отрязах допълнителни парчета плат и заших ръчно контура на отвора отвътре.

Трябва да кажа, че не съм най -добрият шев, така че не съдете за качеството. =)

Стъпка 10: Сглобяване. Мек калъф

Сглобяване. Мек калъф
Сглобяване. Мек калъф
Сглобяване. Мек калъф
Сглобяване. Мек калъф
Сглобяване. Мек калъф
Сглобяване. Мек калъф
Сглобяване. Мек калъф
Сглобяване. Мек калъф

Разтегнах плата и го фиксирах със същата лепяща лента. Лентата ще остане вътре в кутията и няма да се вижда.

След това поставих устройството в рамка и го заших напълно по контура, с изключение на един ъгъл, където отиват проводниците.

Стъпка 11: Сглобяване. Играчка и устройство

Сглобяване. Играчка и устройство
Сглобяване. Играчка и устройство
Сглобяване. Играчка и устройство
Сглобяване. Играчка и устройство
Сглобяване. Играчка и устройство
Сглобяване. Играчка и устройство

Заших устройството си към лапите на плюшено мече.

Исках да изглежда така, сякаш държи малък коледен подарък.

Стъпка 12: Резултат

Резултат
Резултат
Резултат
Резултат

След като устройството е програмирано и фиксирано към играчката, можете да свържете LED лентата и да поставите играчката под дървото!

Прикрепете цветни предмети към подаръка на плюшените мечета и дървото ще бъде боядисано в същия цвят!

Абонирайте се, ако харесвате този мини-проект! =)

Ще има много различни забавни инструкции.

Препоръчано: