Inhoudsopgave:

RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control - Ajarnpa
RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control - Ajarnpa

Video: RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control - Ajarnpa

Video: RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control - Ajarnpa
Video: Led Sync to Music 2024, Juli-
Anonim
RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control
RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control

Dit project gebruikt arduino om een RGB-ledstrip te bedienen met je telefoon via bluetooth. U kunt van kleur veranderen, lichten laten synchroniseren met muziek of ze automatisch laten aanpassen aan de omgevingsverlichting.

Stap 1: Componenten

Componenten
Componenten
Componenten
Componenten
Componenten
Componenten

Voor dit project heb je de volgende componenten nodig:

LED-strips natuurlijk, ik heb 10 meter RGB-strips met hoge dichtheid besteld bij aliexpress voor ongeveer 1 €/m: https://it.aliexpress.com/item/10000000224362.html…, de lijm is behoorlijk slecht, maar verder zijn ze zijn geweldig voor de prijs. bij het kiezen van wat je wilt kopen, moet je gaan voor de RGB "domme" strips, geen adresseerbare en geen RGBW. Noteer ook het vermogen per meter van uw strip en vermenigvuldig dit met de meters die u nodig hebt om een ruwe schatting van het vermogen te krijgen. 5050 LED-strips zijn ongeveer 7 W/m voor het type 30 LED/m met lage dichtheid en 14 W/m voor het type 60 LED/m met hoge dichtheid

12/24v schakelende voeding, afhankelijk van uw stripspanning. Je kunt een ATX voeding gebruiken maar kies in ieder geval een voeding met een geschikt vermogen. Ik raad aan om een voeding te kopen die minstens 30% meer vermogen heeft dan je eigenlijk nodig hebt voor de LED's, vooral als je een goedkope koopt zoals deze: https://it.aliexpress.com/item/32304688758.html?sp …. Mijn Strips waren 14W/m, ik moest 7,5m van stroom voorzien, dus ik had ongeveer 105W nodig, ik kocht voor de zekerheid een 180W nominale voeding. Ik raad het niet af om dit te kopen als je nieuw bent met elektronica, omdat het hoogspanningsterminals heeft blootgelegd, doe het op eigen risico

Arduino, ik heb een PRO-micro gebruikt, maar je kunt gebruiken wat je wilt, houd er rekening mee dat je misschien enkele pinnen en de naam van de seriële poort in mijn code moet wijzigen als je een andere microcontroller gaat gebruiken

3x N-kanaal mosfets, ik ben voor IRF3205 gegaan omdat ik ze al bij de hand had, ze zijn in staat tot 80 Ampère en hebben een redelijk lage weerstand, dus ze zouden voldoende goed moeten zijn. Als je merkt dat ze de neiging hebben om oververhit te raken, kun je ook wat heatsinks toevoegen zoals ik deed

3x TC4420 mosfet-stuurprogramma's, ze zijn misschien niet nodig, afhankelijk van uw stroombehoefte, lees verder voor uitleg

HC-05 bluetooth-module, let op dat je een 5v logisch niveau kiest, of je hebt mogelijk extra circuits nodig (een spanningsdeler zou moeten werken) om de spanning die uit de TX van de Arduino komt te verlagen

7805 spanningsregelaar / 5v buck-converter om arduino en bluetooth-module van stroom te voorzien

5x 0.1uF, 1x 100uF condensatoren, 4x 10kohm weerstanden

(optioneel)

  • electrect microfoonmodule, het bestaat uit een microfoon en een versterker met instelbare versterking die een analoge spanning uitzendt die klaar is om van de Arduino te worden gelezen. Je kunt je eigen circuit bouwen of helemaal niet gebruiken als je niet wilt dat je lichten op het ritme van de muziek aan gaan.
  • fotoweerstand, kunt u ook een eenvoudige LED gebruiken die als lichtsensor wordt gebruikt, maar u moet de code wijzigen om deze te laten werken.

Stap 2: Schema

Schematisch
Schematisch
Schematisch
Schematisch
Schematisch
Schematisch

Maak het circuit op een breadboard om het te testen, repliceer het mosfet-stuurprogrammacircuit (tweede afbeelding) 3 keer, één voor elk kanaal, sluit de 3 PWM-uitgang van de Arduino aan op de PWM-ingangen van het stuurcircuit. Als u geen speciale mosfet-stuurprogramma-IC wilt gebruiken, kunt u een eenvoudige push-pull-driver bouwen met behulp van twee NPN-transistors, u kunt meer informatie vinden op internet. Als je van plan bent om het circuit voor slechts een paar LED's te gebruiken, kun je de poort van de mosfets rechtstreeks verbinden met de PWM-uitgangen van de arduino via een 100ohm-weerstand, en een 10Kohm-weerstand toevoegen tussen source en drain van de mosfets, maar dit is niet aanbevolen omdat het de mosfets niet volledig aanzet en dus veel inefficiëntie veroorzaakt.

De 3 R G B pads van de ledstrip moeten worden aangesloten op de afvoer van de 3 mosfets, en de andere pad op +12v.

Stap 3: Coderen

Dit is de code die je moet uploaden naar de Arduino, wat het doet is in feite wat registermagie op laag niveau gebruiken om drie 15KHz pulsbreedte-gemoduleerd signaal (PWM) te genereren om de drie mosfets aan te sturen met een variabele werkcyclus. In de lus controleert het op inkomende transmissie van de bt-module en wanneer het iets ontvangt, werkt het de kleur en de modus bij, ook slaat het alles op in de interne EEPROM, zodat het de instellingen onthoudt wanneer het opnieuw wordt opgestart. Er zijn momenteel 3 modi geïmplementeerd:

Kleurmodus: geef gewoon een vaste kleur weer

Muziekmodus: schakel alle uitgangen even uit als een geluidsdrempel wordt bereikt, waardoor er in feite een stroboscoopeffect ontstaat dat synchroon loopt met uw muziek. Als het niet werkt zoals bedoeld, moet u de microfoongevoeligheid aanpassen met de pot op de module, de drempelwaarde in de code met het label "thd" of de afstand tussen microfoon en geluidsbron

Ambient-modus: het meet de hoeveelheid licht in de kamer via de fotoresistor en vervaagt de helderheid van de door u gekozen kleur dienovereenkomstig. In de mobiele app of in de code kun je de HIGH en LOW drempels aanpassen die bepalen op welke waarde (0-1023) de lampen volledig aan of helemaal uit gaan. Als u in deze modus enige flikkering opmerkt, kunt u de lichtsensor weg van de LED-strips zelf plaatsen om interferentie te voorkomen

Voel je vrij om de code aan te passen en meer modi toe te voegen, als je mijn hulp nodig hebt om de code te begrijpen, mijn e-mail bovenaan het bestand.

Stap 4: Android-app

Android-app
Android-app

Je moet deze app downloaden:

en download en importeer ook het.kwl-bestand.

Als je je eigen app wilt maken die met mijn code werkt, heb je de volgende dingen nodig:

schuifregelaar voor RODE waarde die verzendt:" r+waarde tussen 0 en 1023+x" (es: "r130x")

schuifregelaar voor GROENE waarde die verzendt: "g+waarde tussen 0 en 1023+x"

schuifregelaar voor BLAUWE waarde die verzendt: "b+waarde tussen 0 en 1023+x"

schuifregelaar voor hoge drempel die verzendt: "h+waarde tussen 0 en 1023+x"

schuifregelaar voor lage drempel die verzendt: "l+waarde tussen 0 en 1023+x"

drukknop die "m" verzendt voor muziekmodus

drukknop die "a" verzendt voor ambient-modus

drukknop die "c" verzendt voor kleurmodus

Stap 5: Perf Board Circuit

Perf Board Circuit
Perf Board Circuit

Als je het volledig werkende circuit op een breadboard hebt kun je het verplaatsen naar een stuk perfboard, gebruik dikke sporen voor de afvoer en bronaansluiting van de mosfets en schroefklemmen om ledstrips en stroom op het circuit aan te sluiten. Als je thermische problemen hebt, voeg dan wat heatsinks toe. Als je een enkele heatsink voor alle drie de mosfets wilt gebruiken, zorg er dan voor dat je ze van elkaar isoleert met behulp van thermische pads of je maakt de uitgangen kort omdat de afvoer van de mosfets intern is verbonden met de metalen deel van het lichaam.

Stap 6: Je bent klaar

Image
Image

Sluit wat ledstrips en voeding aan op je schakeling en je bent klaar.

Dat is het, op dit punt zou je een werkend DING moeten hebben.

Laat het me weten als je problemen of suggesties hebt in het opmerkingengedeelte.

PS In de video hierboven wordt de effectiviteit van synchronisatie met muziek niet zo goed getoond als in het echte leven vanwege de lage videoframerate.