Мазмуну:
- Жабдуулар
- 1 -кадам: Идея
- 2 -кадам: Схемалык жана үн иштетүү
- 3 -кадам: LED дөңгөлөгү
- 4 -кадам: Визуализация
- 5 -кадам: Touch Button Controls
- 6 -кадам: Beat Detection жана Servo "dance"
- 7 -кадам: 3D формалары
- 8 -кадам: Электр менен камсыздоо
- 9 -кадам: Bluetooth Control
- 10 -кадам: Blynkке негизделген көзөмөлдөөчү колдонмо
- 11 -кадам: Эскиздер жана китепканалар
- 12 -кадам: Келечектеги жакшыртуулар
Video: Portable Party Lights: 12 кадам (Сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:39
Tinkercad долбоорлору »
Кечеге жарык алып келип, аны кызыктуу кыла аласызбы?
Бул суроо болчу. Жана жооп Ооба (албетте).
Бул көрсөтмө музыканы угуучу жана Neopixel LEDлеринин концентрдүү шакектеринен музыканын визуализациясын түзүүчү портативдүү түзмөк жасоо жөнүндө.
Түзмөктү "бийлөөгө", башкача айтканда, музыканын ыргагына өтүүгө аракет жасалды, бирок ыргакты аныктоо угулганга караганда татаал иш экенин көрсөттү (эч кандай оюн жок), андыктан "бийлөө" бир аз ыңгайсыз, бирок дагы эле бар.
Түзмөк Bluetooth иштетилген жана текст буйруктарына жооп берет. Party Lights (Android же iOS) көзөмөлдөө үчүн App жазууга убактым жок болчу. Эгерде тапшырманы аткара турган болсоңуз, мага кабарлаңыз !!!
Эгер сизге бул көрсөтмө жагып жатса, Make It Glow конкурсунда ага добуш бериңиз!
Жабдуулар
Party Lights түзүү үчүн сизге керек болот:
- STM32F103RCBT6 Leaflabs Leaf Maple Mini USB ARM Cortex -M3 Arduino модулу (шилтеме бул жерде) - аппараттын мээси. Бул салыштырмалуу арзан түзмөктөр ушунчалык күчтүү болгондуктан, эмне үчүн Arduinoго кайра баргыңыз келери белгисиз.
- MSGEQ7 Band Графикалык Эквалайзери IC DIP-8 MSGEQ7 (шилтеме бул жерде)
- HC-05 же HC-06 Bluetooth модулу (шилтеме бул жерде)
- Adafruit MAX9814 микрофону (шилтеме бул жерде)
- Стандарттык servo мотор (бул жердеги шилтеме), сиз түзмөгүңүздүн "бийлешин" каалайсыз
- CJMCU 61 Bit WS2812 5050 RGB LED драйверлерди өнүктүрүү кеңеши (бул жерде шилтеме)
- TTP223 Touch Key Module Capacitive Settable Self-Lock/No-Lock Switch Board (шилтеме бул жерде)
-
Ultra Compact 5000-mah Dual USB Outputs Super Slim Power Bank (шилтеме бул жерде)
- Резисторлор, конденсаторлор, зымдар, клей, бурамалар, прототипдөөчү такталар ж.
1 -кадам: Идея
Музыка булагына жакын жайгаштырыла турган жана түстүү музыкалык визуализацияларды түзө турган портативдүү түзүлүшкө ээ болуу идеясы. Сиз баскычтар (тийүү) жана Bluetooth аркылуу түзмөктүн жүрүм -турумун көзөмөлдөй алышыңыз керек.
Учурда, Party Lights 7 визуалдаштырууну ишке ашырат (эгер сизде дагы идеялар болсо, мага кабарлаңыз!):
- Концентрдүү түстүү чөйрөлөр
- Мальталык крест
- Пульсирленген жарыктар
- Камин (менин жеке сүйүктүүм)
- Жарык чырактар
- Жеңил дарактар
- Каптал сегменттер
Демейки боюнча, аппарат визуалдаштырууларды ар бир мүнөт сайын айлантат. Бирок, колдонуучу бир визуалдаштырууну жана/же алар аркылуу кол менен циклди тандай алат.
Түс палитрасын айланткан визуалдаштыруу, эгер колдонуучу белгилүү бир түс айкалышын жактырса, "тоңуп" калышы мүмкүн.
Жана дагы бир нече көзөмөл катары, колдонуучу микрофондун сезгичтигин өзгөртүп, servo мотордун "бий" режимин иштетип/өчүрө алат.
2 -кадам: Схемалык жана үн иштетүү
Чыркыраган схемалык файл Github пакетине "файлдар" ички папкасына киргизилген.
Негизинен, MSEQ7 чипи аудио сигналды 7 диапазонго бөлүп иштетет: 63Hz, 160Hz, 400Hz, 1kHz, 2.5kHz, 6.25kHz жана 16kHz
Микроконтроллер ошол 7 диапазонду ар кандай визуализацияларды түзүү үчүн колдонот, негизинен тиешелүү диапазондун амплитудаларын LED жарыктын интенсивдүүлүгүнө жана түстөрдүн айкалышына картага түшүрүү.
Үн булагы - бул кирешени башкаруунун 3 деңгээли бар микрофон. Сиз үн булагынын канчалык алыс/катуу экенине жараша баскычтардын бирин колдонуп, киреше орнотуулары аркылуу айлана аласыз.
Микроконтроллер ошондой эле 63 Гц "бас" диапазонунда "согуу" аныктамасын аткарууга аракет кылат. Мен дагы эле сокку тегиздөөнү аныктоонун жана сактоонун ишенимдүү жолунун үстүндө иштеп жатам.
"Тийүү" баскычтарын колдонуу эксперимент болчу. Менимче, алар абдан жакшы иштешет, бирок пресс -жооптордун жоктугу бир аз чаташтырат.
3 -кадам: LED дөңгөлөгү
Визуалдаштыруунун өзөгү 61 LED дөңгөлөгү.
Белгилей кетчү нерсе, бөлүк жеке шакектерден турат, аларды сиз чогуу коюуга туура келет. Мен тескерисинче электр линиялары үчүн жез зымдарды (ошондой эле шакектерди жакшы кармап турган) жана жука сигнал зымдарын ойлондум.
Жарык диоддору 0дөн 60ка чейин саналып, астынкы тышкы LEDдан баштап сааттын жебеси боюнча ичке карай кетет. Борбордук LED саны 60.
Ар бир визуалдаштыруу эки өлчөмдүү маалымат массивдерине таянат, алар ар бир LEDди максаттуу визуализация сегментинин белгилүү бир позициясына картага салышат.
Мисалы, концентрдик чөйрөлөр үчүн 5 сегмент бар:
- Сырткы тегерек, LED 0 - 23, 24 LED узун
- Экинчи сырткы тегерек, LED 24 - 39, 16 LED узун
- Үчүнчү тегерек (борбордо), LED 40 - 51, 12 LED
- Экинчи ички чөйрө, 52 - 59, 8 диоддор
- LEDдын ичинде, LED 60, 1 LED узун
Визуализация 7 аудио каналдын ичинен 5 картаны чагылдырат жана диоддордун тегерек тилкедеги абалына жараша бара -бара диапазондогу үндүн деңгээлине пропорционалдуу күйөт.
Башка визуалдаштыруу ар кандай маалымат структураларын жана форматтарын колдонот, бирок идея дайыма коддор менен эмес, маалымат массивдери менен шартталган визуализацияга ээ болуу. Ошентип, визуалдаштырууну кодду өзгөртпөстөн, ар кандай формага (аздыр -көптүр LED, көбүрөөк EQ диапазонуна) туураласа болот, жөн гана маалымат массивдериндеги баалуулуктар.
Мисалы, визуалдаштыруу 1 үчүн маалымат структурасы эскизде ушундай көрүнөт:
// Визуализация 1 & 3 - толук 5 чөйрөконст байт TOTAL_LAYERS1 = 5; const байт LAYERS1 [TOTAL_LAYERS1] [25] = {// 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 {24, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}, {16, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39}, {12, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51}, {8, 52, 53, 54, 55, 56, 57, 58, 59}, {1, 60}};
4 -кадам: Визуализация
Буга чейин 7 визуалдаштыруу жана старт-ап анимациясы бар:
Старт-анимация
Түзмөк күйгүзүлгөндө фейерверктин имитациясы көрсөтүлөт. Бул LED жана Servo сыноо ырааттуулугу болушу керек болчу, бирок кийинчерээк мындай тесттин анимацияланган версиясына айланды
Концентрик түстүү тегерекчелер
Жарыктар дисплейдин тегерегиндеги экв тилкесинин амплитудасына пропорционалдуу тегеректелген чөйрөлөрдө айланышат. Туш келди жана саат жебеси боюнча которулуп, түстөрдү 256 түстүү дөңгөлөктүн үстүнөн акырын айлантуу
Мальталык крест
Бир диапазон - бул борбордук LED. Дагы бир диапазон - бул диоддордун вертикалдуу жана горизонталдык линиялары, жана калган сегменттер ар биринин эквиваленттик диапазонун билдирет. Бардык сегменттер карама -каршылыкты сактоо үчүн 128 офсетте түстөрдү айландырышат.
Пульсирленген жарыктар
Ар бир тегерек экв тилкеси үчүн бирдикте бардык светодиоддорду күйгүзөт, ал эми түстөрдү бир аз жылдыруу менен жай айланат. EQ топтору акырындык менен бир чөйрөдөн экинчисине жылып, сырткы прогрессти жаратат.
Камин
Топтор төмөндөн өйдө карай ачык кызыл менен башталып, каминде күйүп жаткан отту окшоштуруп сары түстү кошкон жарым тегерекчелер. Маал -маалы менен ачык ак "учкун" туш келди учуп кетет. Түстүн айлануусу жок
Жарык чырактар
Ар бир концентрдик чөйрө өзүнчө EQ тобу. Жетектөөчү светодиоддор - борбордук LED астындагы вертикалдуу сызыкта. LED диапазонунун амплитудасына пропорционалдуу күйгүзүлгөндөн кийин, ал тийиштүү тегеректин айланасында "чуркай" баштайт, акырындык менен интенсивдүүлүгүн төмөндөтөт. Саат жана саат жебесине каршы айлануулар да колдоого алынат, туш келди которулат.
Жеңил дарактар
Сегменттер төмөн жактан өйдө карай түз сызыкта, андан кийин курма дарактарын туураган концентрдүү жарым тегерекчелерде жарыктандырылган. Түс айлануусу.
Каптал сегменттер
Бул мурунку Мальталык Кресттин версиясы, болгону 2 диагоналдуу сегменттер колдонулат. Үн толкундарынын сөлөкөтүнө окшош окшойт.
5 -кадам: Touch Button Controls
Сенсордук 4 баскыч бар:
- Визуалдаштырууларды айланып, экинчиси тандалмайынча учурдагы режимди кармап туруңуз (демейки визуалдаштыруу цикли ар 30 секундда)
- Учурдагы түс схемасы "тоңдуруу" / "тоңдуруу" - эгер сиз кайсы бир түс айкалышын жактырсаңыз, аны тоңдуруп койсоңуз болот - түстүн айлануусу өчүрүлгөн жана визуалдаштыруу дал ушул түс палитрасы менен уланат
- Микрофондун сезгичтигин тууралаңыз
- "Бий режимин" күйгүзүү / өчүрүү
Бий режиминде түзмөк учурда ойноп жаткан музыканын "ритмин" аныктап, ыргакка жараша башын бурууга аракет кылат. Азырынча "бийлөө" сулуу эмес, тескерисинче ыңгайсыз.
6 -кадам: Beat Detection жана Servo "dance"
Түзмөк 63 Гц диапазонунун ырааттуу чокуларынын аралыгы катары учурдагы обондун "согуусун" аныктоого дайыма аракет кылат. Бир жолу аныкталгандан кийин (жана бий режими КҮЙГӨН болсо), түзмөк ритмине жараша туш келди солго же оңго буруш үчүн өзүнүн серво моторун иштетет.
Муну ишенимдүүрөөк кылуу боюнча ар кандай жаркын идеялар кабыл алынат!
'Music_Test_LED' эскизи 7 EQ диапазонун Arduino IDE аркылуу пландоого ылайыктуу түрдө чыгарат.
7 -кадам: 3D формалары
Бүтүндөй Party Lights жыйнагы нөлдөн баштап Autodesk TinkerCADдын жардамы менен иштелип чыккан.
Оригиналдуу дизайн ушул жерде жайгашкан. Github.comдогу "файлдар/3D" папкасы STL моделдерин камтыйт.
Бул дизайн түзмөктүн кантип чогулганын көрсөтөт.
Бардык компоненттер басылып, андан кийин чогулуп/жабыштырылган.
"Күмбөздө" микроконтроллер, Bluetooth тактасы жана микрофон жайгашкан. Микроконтроллер 40 мм х 60 мм тактайга жайгаштырылган жана атайын рельстер менен колдоого алынган.
Серво куполдун "бутунда", ал эми баскычтар базада жайгашкан.
Батарейка бөлүмү жабдуулар бөлүмүндө айтылган батарейканын түрү үчүн атайын басылган. Эгерде сиз башка батареяны колдонууну чечсеңиз, анда бөлүм ошого жараша кайра иштелип чыгышы керек.
8 -кадам: Электр менен камсыздоо
Ultra-Compact 5000-mah Dual USB Outputs Super Slim Power Bank бир нече саат иштөө үчүн жетиштүү кубат берип жаткансыйт.
Батарея бөлүмү аппараттын калган бөлүгүнөн бөлүнүп калгандай кылып иштелип чыккан жана аны башка типтеги батарейкага алмаштырууга болот.
Батарейканы салып жатканда USB туташтыргычы орнотулган жана ысык желимделген.
9 -кадам: Bluetooth Control
HC-05 модулу түзмөктү зымсыз башкарууга мүмкүнчүлүк берүү үчүн кошулган.
Күйүк болгондо, түзмөк "LEDDANCE" аттуу Bluetooth туташуусун түзөт, аны телефонуңуз менен жупташтыра аласыз.
Идеалында, PartyLightsти көзөмөлдөөгө мүмкүндүк берген колдонмо болушу керек (түс палитрасын тандоо, баскычты басууну симуляциялоо ж.б.). Бирок, мен азырынча бирөөнү жаза элекмин.
Эгерде сиз Party Lights үчүн Android же iOS тиркемесин жазууга кызыкдар болсоңуз, мага кабарлаңыз!
Түзмөктү башкаруу үчүн, сиз учурда Bluetooth терминалы колдонмосун колдонуп, төмөнкү буйруктарды жөнөтө аласыз:
- LEDDBUTT - бул жерде '1', '2', '3' же '4' тиешелүү баскычты басууну симуляциялайт. Мисалы: LEDDBUTT1
- LEDDCOLRc - бул жерде c - 0ден 255ке чейинки сан - түстүү дөңгөлөктө каалаган түстүн абалы. Түзмөк көрсөтүлгөн LED түскө которулат.
-
LEDDSTAT - бир гана 0 жана 1ден турган 3 белгиден турган номерди кайтарат:
- биринчи позиция: '0' - түстөр айланбайт, '1' - түстөр айланат
- экинчи позиция: '0' - бий режими өчүк, '1' - бий режими күйүк
- үчүнчү позиция: '0' - микрофон кадимки пайдада, '1' - микрофон жогорку кирешеде
10 -кадам: Blynkке негизделген көзөмөлдөөчү колдонмо
Blynk (blynk.io)-бул IoT аппараттык-агностикалык платформасы. Мен Blynkти IoT автоматтык өсүмдүктөрдү сугаруу системасында колдонууга үйрөтчүмүн жана платформанын оңойлугуна жана бекемдигине таң калдым.
Blynk Bluetooth аркылуу четки түзмөктөргө туташууну колдойт - дал ушул бизге PartyLights үчүн керек.
Эгерде сизде буга чейин жок болсо, Blynk тиркемесин жүктөп алыңыз, Blynk PartyLights тиркемесин бул кадамга тиркелген скриншотторду колдонуп кайра түзүңүз. Сураныч, виртуалдык пин тапшыруулары скриншоттордо бирдей экенин текшериңиз, антпесе, колдонмодогу баскычтар ойлогондой иштебейт.
"Blynk_settings.h" файлында менин жеке Blynk UID бар. Сиз өзүңүздүн долбооруңузду түзгөнүңүздө, аны колдонуу үчүн жаңысы дайындалат.
PartyLightsBlynk.ino эскизин жүктөп, колдонмону күйгүзүңүз. Bluetooth түзмөгү менен жупташып, кечеден ырахат алыңыз.
11 -кадам: Эскиздер жана китепканалар
Негизги эскиз жана колдоочу файлдар Github.com сайтында жайгашкан.
Партиялык жарыктар эскизинде төмөнкү китепканалар колдонулган:
- TaskScheduler - кооперативдик көп тапшырма - бул жерде (мен иштеп чыккан)
- AverageFilter - шаблон орточо чыпкасы - бул жерде (мен иштеп чыккан)
- Servo - Servo control - бул стандарт Arduino китепканасы
- WS2812B -NEOPixel контролу - STM32 пакетинин бир бөлүгү катары келет
Бул Wiki барагы STM32 такталарын Arduino IDE менен кантип колдонууну түшүндүрөт.
12 -кадам: Келечектеги жакшыртуулар
Бул долбоордо бир нече нерселерди жакшыртууга болот, эгер сиз бул долбоорго кирсеңиз, эске алсаңыз болот:
- Maple Mini тактасынын ордуна ESP32 колдонуңуз. ESP32де 2 CPU, Bluetooth жана WiFi стектери бар жана 60МГц, 120МГц жана ал тургай 240МГцте иштей алат.
- Кичине дизайн - натыйжада түзмөк чоң иш. Ыкчамыраак болушу мүмкүн (айрыкча бийлөө идеясын жана ага байланыштуу сервону таштасаңыз)
- Beat аныктоо чексиз жакшыртылышы мүмкүн. Биз адамдарга табигый түрдө келген нерсе, компьютер үчүн кыйын иш болуп көрүнөт
- Дагы көптөгөн визуалдаштырууларды ойлоп таап, ишке ашырса болот.
- Жана, албетте, салкын UI менен зымсыз аппаратты башкаруу үчүн колдонмо жазылышы мүмкүн.
Сунушталууда:
FuseLight: Studio/Party Light ичине Эски/Эритилген Tubelightти буруңуз: 3 кадам (Сүрөттөр менен)
FuseLight: Студияга/Партиянын Жарыгына Эски/Эритилген Тубелайтты буруңуз: Бул жерде мен кээ бир негизги шаймандарды, RGB жарыктарын жана 3d басып чыгарууну колдонуп, Студияга/Бөлмөгө жарыкка айландырдым
Portable Disco V2 -Үн менен башкарылган LEDлер: 11 кадам (Сүрөттөр менен)
Portable Disco V2 -Sound Controlled LEDs: Мен биринчи портативдүү дискотекамды жараткандан бери электроника саякатым менен көп жолду басып өттүм. Оригиналдуу структурада мен прототип тактасындагы схеманы бузуп, тыкан, кичинекей чөнтөк дискотекасын курууга жетиштим. Бул жолу мен өзүмдүн ПХБны иштеп чыктым
Arduino & Neopixel Coke Bottle Rainbow Party Light: 7 кадам (сүрөттөр менен)
Arduino & Neopixel Coke Bottle Rainbow Party Light: Ошентип, менин уулум Дун эски кокс бөтөлкөлөрүнөн жана Glow таякчаларынан жасалган эң сонун кеченин жарыгын көрүп, анын алдыдагы мектеп экзамендерине даярдай алабызбы деп сурайт PartAYYY !! ! Мен так айтам, бирок булардын бир бөлүгүн алгың келбейт
3 Amazing BRAIN / MIND Control Projects Lights LedStrip LED Arduino жана Neurosky менен: 6 кадам (сүрөттөр менен)
3 Amazing BRAIN / MIND Control Projects Lights LedStrip LED Arduino жана Neurosky менен: Сиз качандыр бир убакта бул жөнүндө ойлонуу менен жарыкты күйгүзүп же өчүргүңүз келген беле? Же RGB LEDдин түсүнө карап, канчалык стрессте экениңизди билгиңиз келеби? Азырынча сиз бул Нускамаларды аткарсаңыз болот! Биз бара жаткан нерсени сезүү үчүн
LED Party Coat: 15 кадам (Сүрөттөр менен)
LED Party Coat: Нью -Йорк шаары акыры эскирген Кабаре мыйзамын жокко чыгарды. Келгиле, бийлейли. Сизге учурга ылайыктуу кийим керек болот. Бул пальто күтүлбөгөн жөндөмгө ээ жапайы мода бөлүгү: ал айланадагы жарык өчкөндө күйөт . Жандык сыяктуу