Ultimate Guide för att ansluta LED -ljusremsor till Arduino

Ultimate Guide för att ansluta LED -ljusremsor till Arduino

Framväxten av LED -belysning har varit stratosfärisk, och det är lätt att se varför. De är billiga att producera, förbrukar betydligt mindre ström än andra belysningsalternativ, och blir i de flesta fall inte heta, vilket gör dem säkra för en mängd olika användningsområden.





En av de vanligaste LED -produkterna är LED -remsan. I den här artikeln kommer vi att täcka hur du ställer in de två vanligaste typerna med en Arduino. Dessa projekt är mycket enkla, och även om du är en nybörjare med Arduino eller DIY -elektronik, kommer du att kunna göra detta.





Vi kommer också att använda Arduino IDE för att styra dem. Detta projekt använder en Arduino Uno, även om du kan använda nästan alla kompatibla kort (till exempel NodeMCU).





Välj din remsa

När du handlar LED -remsor finns det några saker att tänka på. Först är funktionalitet. Om du planerar att använda remsorna mest för omgivningsbelysning är det enkelt 12v RGB LED remsa ( SMD5050 ) skulle vara rätt val.

Många av dessa remsor har en infraröd fjärrkontroll för att styra dem, men i det här projektet kommer vi att använda en Arduino istället. Tillbringa lite tid med att shoppa runt, i skrivande stund var det möjligt att få dessa remsor för så lite som $ 1 per meter .



Bildkredit: phanu suwannarat via Shutterstock

jämför 2 filer i anteckningsblock ++

Om du vill ha något lite högre teknik, överväg WS2811 / 12 / 12B . Dessa remsor (ibland kallade Neopixels ) har integrerade chipset som gör att de kan adresseras individuellt. Det betyder att de kan mer än bara omgivande belysning.





Du kan använda dem för att bygga en billig LED -pixeldisplay från grunden. Du kan till och med använda dem för att göra din egen personliga molnlampa inomhus.

Dessa remsor kräver bara 5v för att driva dem. Även om det är möjligt att driva små mängder av dem direkt från ett Arduino -kort, är det i allmänhet en bra idé att använda en separat 5V strömförsörjning för att rädda dig själv från lukten av stekt Arduino. Om du letar efter individuellt programmerbara lysdioder är dessa något för dig. I skrivande stund är de tillgängliga för runt $ 4 per meter .





En annan sak att tänka på är var dessa remsor sannolikt kommer att användas. Båda dessa typer av remsor finns i olika längder, LED -densiteter (antalet LED per meter) och olika grader av väderbeständighet.

När du tittar på LED -remsor, var uppmärksam på siffrorna på listan. Vanligtvis är det första numret antalet lysdioder per meter och bokstäverna IP följt av siffror blir dess väderbeständighet. Till exempel om listan säger 30 IP67 , det betyder att det kommer att finnas 30 Lysdioder per meter. De 6 betecknar att den är helt tätad från damm, och 7 betyder att den är skyddad mot tillfällig nedsänkning i vatten. (Lära sig mer om väderbeständighet och IP -betyg .) När du har valt din LED -remsa är det dags att koppla ihop den med en Arduino. Låt oss börja med SMD5050.

Bli ansluten

För att ansluta en 12v LED -remsa till en Arduino behöver du några komponenter:

  • 12v RGB LED -remsa ( SMD5050 )
  • 1 x Arduino Uno (vilket kompatibelt kort som helst)
  • 3 x 10k Ohm motstånd
  • 3 x Logisk nivå N-kanal MOSFET
  • 1 x brödbräda
  • Anslutningskablar
  • 12v strömförsörjning

Låt oss prata om innan vi sätter upp kretsen MOSFET .

När du kontrollerar något som är högre spänning än din mikrokontroller, behöver du något däremellan för att stoppa ditt bräda att bli stekt. Ett av de enklare sätten att göra detta är att använda en MOSFET. Genom att skicka pulsbreddsmodulation ( PWM ) signaler till Port ben, är det möjligt att styra hur mycket kraft som passerar mellan dränera och källa ben. Genom att föra var och en av LED -remsans färger genom MOSFET kan du styra ljusstyrkan för varje enskild färg på LED -remsan.

När du använder mikrokontroller är det viktigt att använda komponenter på logiknivå för att säkerställa att saker fungerar som du vill. Se till att dina MOSFET är logisk nivå och inte standard- .

Ställ in din krets så här:

  1. Anslut Arduino -stift 9 , 6 , och 5 till Port benen på de tre MOSFET: erna, och anslut en 10k motstånd i linje med varje till markskenan.
  2. Anslut Källa benen till markskenan.
  3. Anslut Dränera benen till Grön , Netto , och Blå kontakter på LED -remsan.
  4. Anslut strömskenan till +12v kontakt på LED -remsan (observera att i den här bilden är strömkabeln svart för att matcha färgerna på kontakterna på min LED -remsa).
  5. Anslut Arduino -marken till markskenan.
  6. Anslut din 12v strömförsörjning till kraftskenorna.

De flesta LED -remsor har Dupont [Broken URL Removed] -kontakter, som är lätta att ansluta till. Om din inte gör det kan du behöva löda ledningar till LED -remsan. Inte få panik om du är ganska ny på lödning, det är ett enkelt jobb, och vi har en guide för att komma igång med lödning om du skulle behöva det.

Vi kommer att driva vårt Arduino -kort med USB för detta projekt. Du kan välja att driva ditt kort med VIN -stiftet, men se till att du känner till strömbegränsningarna för ditt kort innan du gör detta.

När din krets är klar ska den se ut ungefär så här:

Nu när du har anslutit allt är det dags att göra en enkel Arduino -skiss för att kontrollera den.

Fade It Up

Anslut ditt Arduino -kort till din dator via USB och öppna Arduino IDE. Se till att du har rätt kort och portnummer valt för ditt kort i Verktyg> Styrelse och Verktyg> Port menyer. Öppna en ny skiss och spara den med ett lämpligt namn.

Denna skiss kommer att blekna lamporna i en färg i taget, hålla dem på i några sekunder och sedan tona ut dem tills de är släckta igen. Du kan följa med här och göra skissen själv, eller helt enkelt ladda ner komplett kod från GitHub.

Börja med att definiera vilken stift kommer att användas för att styra MOSFET: erna.

#define RED_LED 6
#define BLUE_LED 5
#define GREEN_LED 9

Därefter behöver du några variabler. Skapa en overall ljusstyrka variabel, tillsammans med en variabel för varje enskild färgs ljusstyrka. Vi kommer bara att använda huvudvariabeln för ljusstyrka för att stänga av lysdioderna, så ställ in det till det maximala ljusstyrkan på 255 här.

du måste också skapa en variabel för att styra hur snabbt blekning kommer att ske.

int brightness = 255;
int gBright = 0;
int rBright = 0;
int bBright = 0;
int fadeSpeed = 10;

I din uppstart funktion kommer vi att ställa in våra Arduino -stift för att mata ut. Vi kommer också att ringa ett par funktioner med en fördröjning på 5 sekunder emellan. Dessa funktioner finns inte ännu, men oroa dig inte, vi kommer till dem.

void setup() {
pinMode(GREEN_LED, OUTPUT);
pinMode(RED_LED, OUTPUT);
pinMode(BLUE_LED, OUTPUT);
TurnOn();
delay(5000);
TurnOff();
}

Skapa nu Sätta på () metod:

void TurnOn() {
for (int i = 0; i <256; i++) {
analogWrite(RED_LED, rBright);
rBright +=1;
delay(fadeSpeed);
}

for (int i = 0; i <256; i++) {
analogWrite(BLUE_LED, bBright);
bBright += 1;
delay(fadeSpeed);
}
for (int i = 0; i <256; i++) {
analogWrite(GREEN_LED, gBright);
gBright +=1;
delay(fadeSpeed);
}
}

Dessa tre för slingor tar varje färg upp till sin fulla ljusstyrka under en tid som anges av fadeSpeed värde.

Slutligen måste du skapa Stäng av() metod:

void TurnOff() {
for (int i = 0; i <256; i++) {
analogWrite(GREEN_LED, brightness);
analogWrite(RED_LED, brightness);
analogWrite(BLUE_LED, brightness);

brightness -= 1;
delay(fadeSpeed);
}
}
void loop() {
}

Denna metod gäller vår ljusstyrka variabel till alla tre färgpinnarna och reducerar dem till noll över en tidsperiod. Vi behöver också en tom loop -metod här för att undvika kompileringsfel.

När du har slutfört denna skiss, spara den. Verifiera skissen och ladda upp den till ditt Arduino -kort. Om du får fel, kolla igenom koden igen för eventuella irriterande stavfel eller saknade semikolon.

Nu ska du se din LED -remsa öka varje färg individuellt, hålla den vita färgen i 5 sekunder och sedan blekna enhetligt till ingenting:

Om du har problem, dubbelkolla kablarna och koden igen.

Detta projekt är ett enkelt sätt att komma igång, men idéerna i det kan utvidgas till en riktigt effektiv belysning. Med bara några fler komponenter kan du skapa ditt eget soluppgångslarm. Om du har ett startpaket med din Arduino kan du använda valfri knapp eller sensor för att aktivera dina lysdioder när du kommer in i rummet, till exempel:

hur man tar bort annat lagringsutrymme på iphone

Nu när vi har täckt SMD5050 -tal , låt oss gå vidare till WS2812B remsor.

Ljusa idéer

Dessa remsor kräver färre komponenter för att få dem att fungera, och det finns ett utrymme för exakt vilka värden på komponenter du kan använda. Kondensatorn i denna krets ser till att 5v lysdioderna får en stadig strömförsörjning. Motståndet säkerställer att datasignalen som tas emot från Arduino är fri från störningar.

Du kommer behöva:

  • WS2811 / 12 / 12B 5v LED -remsa (alla tre modellerna har integrerade chips och fungerar ungefär på samma sätt)
  • 1 x Arduino Uno (eller liknande kompatibelt kort)
  • 1 x 220-440 Ohm Motstånd (allt mellan dessa två värden är bra)
  • 1 x 100-1000 microFarad Kondensator (allt mellan dessa två värden är bra)
  • Brödbräda och anslut kablar
  • 5V strömförsörjning

Ställ in din krets enligt diagrammet:

Observera att kondensatorn måste ha rätt riktning. Du kan se vilken sida som fästs på markskenan genom att leta efter minustecknet (-) på kondensatorns kropp.

Den här gången driver vi Arduino med 5v strömförsörjning. Detta gör att projektet står ensamt när vi är klara, även om det finns viktiga saker att notera här.

Först och främst, se till att ditt kort kan ta in 5V innan du ansluter det till strömkällan. Nästan alla utvecklingskort körs på 5v via USB -porten, men strömförsörjningstapparna på vissa kan ibland hoppa över spänningsregulatorerna och göra dem till toast.

Det är också bra att se till att flera separata strömkällor inte är anslutna till Arduino - koppla ur USB -kabeln när du använder en extern strömförsörjning.

När du har anslutit det ska det se ut så här:

Nu när vår LED -remsa är inkopplad, låt oss gå vidare till koden.

vilket av följande är processen för att åtgärda problem som upptäcks av antivirus

Dansande ljus

För att säkert kunna programmera vårt kort, koppla bort VIN ledning från kraftledningen. Du fäster den igen senare.

Anslut din Arduino till datorn och öppna Arduino IDE. Kontrollera att du har rätt kort och portnummer valt i Verktyg> Styrelse och Verktyg> Port menyer.

Vi kommer att använda FastLED bibliotek för att testa vår installation. Du kan lägga till biblioteket genom att klicka på Skiss> Inkludera bibliotek> Hantera bibliotek och söker efter FastLED. Klicka på installera så läggs biblioteket till IDE.

Under Arkiv> Exempel> FastLED Välj DemoReel100 skiss. Denna skiss cyklar olika saker som kan göras med WS2812 LED -remsor, och är otroligt lätt att sätta upp.

Allt du behöver ändra är DATA_PIN variabel så att den matchar stift 13 , och den NUM_LEDS variabel för att definiera hur många lysdioder som finns i remsan du använder. I det här fallet använder jag bara en liten rad med 10 lysdioder skurna från en längre remsa. Använd mer för en större ljusshow!

Det är allt! Ladda upp skissen till ditt kort, koppla bort USB -kabeln och slå på din 5v strömförsörjning. Slutligen, koppla tillbaka Arduino VIN till kraftledningen och titta på showen!

Om inget händer, kontrollera över din ledning och att du angav rätt Arduino -stift i demoskissen.

Oändliga möjligheter

Demoskissen visar några av de många möjliga kombinationer av effekter som kan uppnås med WS2812 -remsorna. Förutom att vara ett steg upp från vanliga LED -remsor kan de också användas praktiskt. Ett bra nästa projekt skulle vara bygga din egen ambilight för ditt mediecenter.

Även om dessa remsor definitivt är mer funktionella än SMD5050 -talet, ska du inte rabattera de vanliga 12v LED -remsorna ännu. De är oslagbara när det gäller pris, och det finns ett stort antal applikationer för LED -ljusremsor .

Att lära sig att arbeta med LED -remsor är ett bra sätt att bekanta sig med grundläggande programmering på Arduino, men det bästa sättet att lära sig är genom att mixtra. Ändra koden ovan och se vad du kan göra! Om allt detta var lite för mycket för dig, överväg att börja med dessa Arduino -projekt för nybörjare .

Bildkrediter: mkarco/Shutterstock

Dela med sig Dela med sig Tweet E-post Canon vs Nikon: Vilket kameramärke är bättre?

Canon och Nikon är de två största namnen i kameraindustrin. Men vilket märke erbjuder den bättre sortimentet av kameror och objektiv?

Läs Nästa
Relaterade ämnen
  • DIY
  • Arduino
  • LED -remsa
  • Led-lampor
Om författaren Ian Buckley(216 artiklar publicerade)

Ian Buckley är frilansjournalist, musiker, artist och videoproducent som bor i Berlin, Tyskland. När han inte skriver eller på scenen, pysslar han med DIY -elektronik eller kod i hopp om att bli en galet forskare.

Mer från Ian Buckley

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e -böcker och exklusiva erbjudanden!

Klicka här för att prenumerera