Съдържание:
- Стъпка 1: Компоненти
- Стъпка 2: Захранване на RGB лентата с транзистори и източник на захранване
- Стъпка 3: Контролиране на цветовете на RGB LED лентата
- Стъпка 4: Контролирайте цвета на RGB LED лентата в зависимост от показанията на сензора
- Стъпка 5: Окончателният код
- Стъпка 6: Готови сте
Видео: RGB термометър, използващ PICO: 6 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:51
Това беше крайният резултат от нашите усилия днес. Това е термометър, който ще ви уведоми колко е топло в стаята ви, като използвате RGB LED лента, поставена в акрилен контейнер, който е свързан с температурен сензор за отчитане на температурата. И ние ще използваме PICO, за да оживим този проект.
Стъпка 1: Компоненти
- PICO, достъпно на mellbell.cc ($ 17)
- 1 метрова RGB LED лента
- 3 TIP122 Darlington транзистор, пакет от 10 в ebay ($ 3.31)
- 1 PCA9685 16-канален 12-битов PWM драйвер, наличен в ebay ($ 2.12)
- 12v източник на захранване
- 3 1k ohm резистора, пакет от 100 в ebay ($ 0,99)
- Макет, наличен в ebay ($ 2.30)
- Мъжки - женски джъмперни проводници, пакет от 40 в ebay ($ 0,95)
Стъпка 2: Захранване на RGB лентата с транзистори и източник на захранване
LED лентите са гъвкави платки, които са пълни със светодиоди. Те се използват по много начини, тъй като можете да ги използвате в къщата си, колата или велосипеда си. Можете дори да създадете готини RGB носими устройства, като ги използвате.
И така, как работят? Всъщност е доста просто. Всички светодиоди в LED лентата са свързани паралелно и действат като един огромен RGB светодиод. И за да го стартирате, просто трябва да свържете лентата към източник на захранване с висок ток 12v.
За да управлявате LED лентата с микроконтролер, трябва да отделите източника на захранване от източника на управление. Тъй като LED лентата се нуждае от 12v, а нашият микроконтролер не може да предложи толкова голямо изходно напрежение и затова свързваме външен източник на захранване с висок ток 12v, докато изпращаме управляващите сигнали от нашия PICO.
Също така текущото теглене на всяка RGB клетка е високо, тъй като всеки отделен светодиод в нея - червеният, зеленият и синият светодиод - се нуждае от 20mA, за да работи, което означава, че имаме нужда от 60mA, за да работи, осветява една RGB клетка. И това е много проблематично, защото нашите GPIO щифтове могат да захранват максимум 40mA на пин, а свързването на RGB лентата към PICO директно ще го изгори, така че моля не го правете.
Но има решение и то се нарича Дарлингтънски транзистор, който е чифт транзистори с много високо усилване на тока, което ще ни помогне да увеличим тока си, за да задоволим нуждите си.
Нека първо да научим повече за текущата печалба. Текущото усилване е свойство на транзисторите, което означава, че токът, преминаващ през транзистора, ще бъде умножен по него и уравнението му изглежда така:
ток на натоварване = входен ток * усилване на транзистора.
Това е още по -силно в транзистор от Дарлингтън, тъй като това е чифт транзистори, а не единствен, а техните ефекти се умножават помежду си, което ни дава огромни текущи печалби.
Сега ще свържем LED лентата към нашия външен източник на захранване, транзистора и разбира се нашия PICO.
- База (транзистор) → D3 (PICO)
- Колектор (транзистор) → B (LED лента)
- Излъчвател (транзистор) → GND
- +12 (LED лента) → +12 (източник на захранване)
Не забравяйте да свържете GIC на PICO към заземяващите източници на захранване
Стъпка 3: Контролиране на цветовете на RGB LED лентата
Знаем, че нашият PICO има един PWM пин (D3), което означава, че той не може да контролира нашите 16 светодиода. Ето защо въвеждаме PCA9685 16-канален 12-битов PWM I2C модул, който ни позволява да разширим PICO PWM щифтовете.
На първо място, какво е I2C?
I2C е комуникационен протокол, който включва само 2 проводника за комуникация с едно или повече устройства чрез адресиране на адреса на устройството и кои данни да се изпращат.
Има два типа устройства: Първият е главното устройство, което отговаря за изпращането на данни, а другото е подчиненото устройство, което получава данните. Ето изводите на модула PCA9685:
- VCC → Това е мощността на самата платка. 3-5v макс.
- GND → Това е отрицателният извод и той трябва да бъде свързан към GND, за да завърши веригата.
- V+ → Това е допълнителен захранващ щифт, който ще захранва сервомоторите, ако някой от тях е свързан към вашия модул. Можете да го оставите изключен, ако не използвате серво.
- SCL → Сериен пинов часовник и го свързваме към SCL на PICO.
- SDA → ПИН за серийни данни и го свързваме към SDA на PICO.
- OE → изход с активиран изход, този щифт е активен LOW, когато щифтът е LOW всички изходи са разрешени, когато е HIGH всички изходи са забранени. И този незадължителен щифт се използва за бързо активиране или деактивиране на щифтовете на модула.
Има 16 порта, всеки порт има V+, GND, PWM. Всеки PWM пин работи напълно независимо и те са настроени за серво, но можете да ги използвате лесно за светодиоди. Всеки ШИМ може да обработва 25mA ток, така че бъдете внимателни.
Сега, когато знаем какви са щифтовете на нашия модул и какво прави, нека да го използваме за увеличаване на броя на PICO PWM щифтовете, така че да можем да контролираме нашата RGB LED лента.
Ще използваме този модул заедно с транзисторите TIP122 и ето как трябва да ги свържете към вашия PICO:
- VCC (PCA9685) → VCC (PICO).
- GND (PCA9685) → GND.
- SDA (PCA9685) → D2 (PICO).
- SCL (PCA9685) → D3 (PICO).
- PWM 0 (PCA9685) → БАЗА (първи TIP122).
- ШИМ 1 (PCA9685) → БАЗА (втори TIP122).
- PWM 2 (PCA9685) → БАЗА (трети TIP122).
Не забравяйте да свържете GIC на PICO с GND на захранването. И не забравяйте да не свързвате PCA9685 VCC щифта с +12 волта на захранването, в противен случай той ще се повреди
Стъпка 4: Контролирайте цвета на RGB LED лентата в зависимост от показанията на сензора
Това е последната стъпка в този проект и с него нашият проект ще се трансформира от „глупав“в умен и способен да се държи в зависимост от заобикалящата го среда. За да направим това, ще свържем нашия PICO с температурния сензор LM35DZ.
Този сензор има аналогово изходно напрежение, което зависи от температурата около него. Той започва при 0v, съответстващ на 0 по Целзий, и напрежението се увеличава с 10mV за всяка степен над 0c. Този компонент е много прост и има само 3 крака и те са свързани, както следва:
- VCC (LM35DZ) → VCC (PICO)
- GND (LM35DZ) → GND (PICO)
- Изход (LM35DZ) → A0 (PICO)
Стъпка 5: Окончателният код
Сега, когато имаме всичко свързано с нашия PICO, нека започнем да го програмираме така, че светодиодите да променят цвета си в зависимост от температурата.
За това се нуждаем от следното:
Конст. променлива, наречена "tempSensor" със стойност A0, която получава отчитането си от температурния сензор
Целочислена променлива, наречена "sensorReading" с начална стойност 0. Това е променливата, която ще запази необработеното отчитане на сензора
Плаваща променлива, наречена "volts" с начална стойност 0. Това е променливата, която ще запише преобразуваната стойност на суровото отчитане на сензора във волта
Плаваща променлива, наречена "temp" с начална стойност 0. Това е променливата, която ще запише преобразуваните показания на волта на сензора и ще ги преобразува в температура
Целочислена променлива с име "картографирана" с начална стойност 0. Това ще запази PWM стойността, в която съпоставяме временната променлива, и тази променлива контролира цвета на LED лентата
Използвайки този код, PICO ще прочете данните от температурния сензор, ще ги преобразува във волта, след това в Целзий и накрая ще картографира градуса по Целзий в стойност на ШИМ, която може да бъде прочетена от нашата LED лента, и това е точно това, от което се нуждаем.
Стъпка 6: Готови сте
Направихме и акрилен контейнер за LED лентата, за да я изправим по хубав начин. Можете да намерите CAD файловете тук, ако искате да ги изтеглите.
Вече имате страхотно изглеждащ LED термометър, който автоматично ви показва температурата, когато го погледнете, което е доста удобно меко казано: P
Оставете коментар, ако имате предложения или обратна връзка, и не забравяйте да ни последвате във facebook или да ни посетите на mellbell.cc за още страхотно съдържание.
Препоръчано:
Използвайте смартфон като безконтактен термометър / преносим термометър: 8 стъпки (със снимки)
Използвайте смартфон като безконтактен термометър / преносим термометър: Измерване на телесната температура с безконтактно / безконтактно като термо пистолет. Създадох този проект, защото Thermo Gun сега е много скъп, така че трябва да намеря алтернатива, за да направя DIY. И целта е да се направи с нискобюджетна версия
RGB пръстен термометър: 4 стъпки
RGB пръстен термометър: В тази статия ще направя термометър, използвайки 16 -битов RGB Neo пикселен пръстен. Максималната температура, която може да се измери с този инструмент, е 48 градуса по Целзий. Така че, тъй като използва 16 светодиода, всеки RGB LED ще представлява 3 градуса Целзий. Цветът и числото
Цифров термометър DHT11, използващ ESP8266: 4 стъпки
Цифров термометър DHT11 с помощта на ESP8266: В предишната статия вече обсъдих DH11 и как да го покажа на изходни устройства като 7 сегментни, LCD, сериен монитор и RGB пръстен. И в тази статия ще ви покажа как да следите температурата и влажността използване на браузър на мобилен телефон
Инфрачервен термометър на базата на Arduino - Инфрачервен термометър, използващ Arduino: 4 стъпки
Инфрачервен термометър на базата на Arduino | Инфрачервен термометър, използващ Arduino: Здравейте, момчета, в тази инструкция ще направим безконтактен термометър, използващ arduino. Тъй като понякога температурата на течността/твърдото вещество е твърде висока или твърде ниска, а след това е трудно да се установи контакт с нея и да се прочете температура тогава в този пейзаж
Цифров термометър, използващ NodeMCU и LM35: 5 стъпки
Цифров термометър, използващ NodeMCU и LM35: Направете свой собствен цифров термометър и наблюдавайте температурата през интернет отвсякъде. Тази инструкция е основна, за да започнете да се занимавате с IoT. Ще свържем температурен сензор LM35 с NodeMCU 1.0 (ESP-12E). LM35 е температурен сензор