Ultimate Guide til Tilkobling LED Lys Strips til Arduino

En av de vanligste LED-produktene er LED-stripen. I denne artikkelen vil vi dekke hvordan du konfigurerer de to vanligste typene med en Arduino.

En av de vanligste LED-produktene er LED-stripen.  I denne artikkelen vil vi dekke hvordan du konfigurerer de to vanligste typene med en Arduino.
Annonse

Stigningen av LED-belysning har vært stratosfærisk, og det er lett å se hvorfor. De er billige å produsere, bruker betydelig mindre strøm enn andre belysningsalternativer, og i de fleste tilfeller blir de ikke varme, noe som gjør dem trygge for en rekke bruksområder.

En av de vanligste LED-produktene er LED-stripen. I denne artikkelen vil vi dekke hvordan du konfigurerer de to vanligste typene med en Arduino. Disse prosjektene er svært enkle, og selv om du er nybegynner med Arduino Komme i gang med Arduino: En nybegynnersveiledning Komme i gang med Arduino: En nybegynnersguide Arduino er en åpen kilde-elektronikk prototypeplan basert på fleksibel, brukervennlig maskinvare og programvare. Det er ment for kunstnere, designere, hobbyister, og alle som er interessert i å lage interaktive objekter eller miljøer. Les mer eller DIY elektronikk Nybegynnerens elektronikk: 10 ferdigheter du trenger å vite Nybegynnerens elektronikk: 10 ferdigheter du trenger å vite Mange av oss har aldri engang rørt et loddejern - men å gjøre ting kan være utrolig givende. Her er ti av de mest grunnleggende DIY elektronikk ferdighetene for å hjelpe deg med å komme i gang. Les mer, du vil kunne gjøre dette.

Vi vil også bruke Arduino IDE til å kontrollere dem. Dette prosjektet bruker en Arduino Uno, selv om du kan bruke nesten alle kompatible kort (for eksempel NodeMCU Møt Arduino Killer: ESP8266 Møt Arduino Killer: ESP8266 Hva om jeg fortalte deg at det er et Arduino-kompatibelt dev-kort med innebygd Wi -Fi for mindre enn $ 10? Vel, det er. Les mer).

Velg din stripe

Når du handler for LED-striper, er det noen ting du bør vurdere. Først er funksjonalitet. Hvis du planlegger å bruke stripene for det meste for omgivende belysning, ville det være et enkelt 12v RGB LED- stripe ( SMD5050 ) det riktige valget.

Mange av disse stripene kommer med en infrarød fjernkontroll for å kontrollere dem, men i dette prosjektet skal vi bruke en Arduino til i stedet. Tilbring litt tid på å shoppe, på tidspunktet for skrivingen var det mulig å få disse stripene til så lite som $ 1 per meter.

LED Strip Lights
Image Credit: phanu suwannarat via Shutterstock

Hvis du vil ha noe litt høyere tech, bør du vurdere WS2811 / 12 / 12B . Disse strimlene (noen ganger referert til som Neopixels ) har integrerte brikkesett som gjør at de kan adresseres individuelt. Dette betyr at de er i stand til mer enn bare omgivende belysning.

Du kan bruke dem til å bygge en billig LED-pikselhelgeprojekt: Bygg et gigantisk LED-pikselskjerm-weekendprosjekt: Bygg en gigantisk LED-pikselskjerm Jeg elsker LED-piksler: lys, enkel å kontrollere, billig og så allsidig. I dag vil vi gjøre dem til en stor pikselskjerm som kan henges på veggen. Les mer skjerm fra grunnen av. Du kan til og med bruke dem til å lage din egen personlige innendørs storm skyvlampe.

LED Pixel Display

Disse stripene krever bare 5v for å drive dem. Selv om det er mulig å drive små mengder direkte fra et Arduino bord, er det generelt en god idé å bruke en separat 5V strømforsyning for å spare deg for lukten av stekt Arduino. Hvis du leter etter individuelt programmerbare lysdioder, er disse for deg. På tidspunktet for skriving er de tilgjengelige for rundt $ 4 per meter.

En annen ting å vurdere er hvor disse stripene vil bli brukt. Begge disse typene stripe kommer i varierende lengder, LED-tettheter (antall lysdioder per meter) og forskjellige grader av værbestandighet.

Når du ser på LED-striper, vær oppmerksom på tallene på noteringen. Vanligvis vil det første nummeret være antall lysdioder per meter, og bokstavene IP etterfulgt av tall vil være dens værbestandig. For eksempel, hvis oppføringen oppgir 30 IP67, betyr det at det vil være 30 lysdioder per meter. Den 6 betegner at den er helt lukket fra støv, og 7 betyr at den er beskyttet mot midlertidig nedsenking i vann. (Lær mer om værbestandighet og IP-klassifisering Hva gjør en enhet vanntett eller vanntett? Hva gjør en enhet vanntett eller vannavstøtende? Mange enheter markedsføres som vanntette, men det kan være svært misvisende. De fleste er faktisk vannavstøtende Hva er forskjellen? Her er alt du trenger å vite om det. Les mer.) Når du har valgt LED-stripen, er det på tide å koble den sammen med en Arduino. La oss starte med SMD5050.

Koble til

Elektroniske komponenter påkrevd

For å koble til en 12v LED-stripe til en Arduino, trenger du noen få komponenter:

  • 12v RGB LED-stripe ( SMD5050 )
  • 1 x Arduino Uno (noe kompatibelt bord vil gjøre)
  • 3 x 10k ohm motstandere
  • 3 x logisk nivå N-kanal MOSFETer
  • 1 x brødbrett
  • Hookup ledninger
  • 12V strømforsyning

Før du setter opp kretsen, la oss snakke om MOSFETs .

Når du kontrollerer noe som er høyere spenning enn din mikrokontroller, trenger du noe mellom å hindre at styret blir stekt. En av de enkleste måtene å gjøre dette på er å bruke en MOSFET. Ved å sende pulsbreddemodulasjons ( PWM ) signaler til portbenet, er det mulig å kontrollere hvor mye strøm som passerer mellom drenerings- og kildebenene. Ved å passere hver av LED-stripens farger gjennom MOSFET, kan du styre lysstyrken til hver enkelt farge på LED-stripen.

Når du bruker mikrokontroller, er det viktig å bruke logikknivåkomponenter for å sikre at ting fungerer slik du vil. Pass på at MOSFETene dine er logikknivå og ikke standard .

Sett opp krets slik:

Arduino MOSFET-krets

  1. Koble Arduino-pinnene 9, 6 og 5 til portbenene til de tre MOSFETene, og koble en 10k motstand i tråd med hver til bakken.
  2. Koble kildebenene til bakken.
  3. Koble avløpsbenene til de grønne, røde og blå kontaktene på LED-stripen.
  4. Koble strømskinnen til + 12v- kontakten på LED-stripen (merk at i dette bildet er strømkabelen svart for å matche kontaktens farger på min LED-stripe).
  5. Koble Arduino bakken til bakken.
  6. Koble 12v strømforsyningen til strømskinner.

De fleste LED-striper har Dupont-kontakter, som er lette å koble til. Hvis du ikke trenger det, må du kanskje lodde ledninger til LED-stripen. Ikke bli panikk hvis du er ganske ny til lodding, det er en enkel jobb, og vi har en veiledning for å komme i gang med lodding. Lær hvordan å lodde, med disse enkle tips og prosjekter Lær hvordan du lader, med disse enkle tips og prosjekter er Er du litt skremt av tanken på et varmt jern og smeltet metall? Hvis du vil begynne å jobbe med elektronikk, må du lære å lodde. La oss hjelpe. Les mer hvis du trenger det.

Vi vil drive vår Arduino-styret via USB for dette prosjektet. Du kan velge å drive styret ditt ved hjelp av VIN-pinnen, men sørg for at du vet kraftbegrensningene for brettet ditt før du gjør dette.

Når kretsen er fullført, bør det se slik ut:

Arduino MOSFET på brødbrett

Nå som du har koblet til alt, er det på tide å lage en enkel Arduino-skisse for å kontrollere den.

Fade det opp

Koble Arduino-kortet til datamaskinen via USB og åpne Arduino IDE. Kontroller at du har riktig bord og portnummer valgt for brettet ditt i Verktøy> Styret og Verktøy> Portmenyer. Åpne en ny skisse og lagre den med et passende navn.

Denne skissen vil forsvinne lysene i en farge av gangen, holde dem på i noen sekunder, så fade dem ut til de er slått av igjen. Du kan følge gjennom her og lage skissen selv, eller bare laste ned hele koden fra GitHub.

Begynn med å definere hvilke pinner som skal brukes til å styre MOSFETene.

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

Deretter trenger du noen variabler. Opprett en total lysstyrkevariabel, sammen med en variabel for hver enkelt farges lysstyrke. Vi bruker bare lysstyrkevarianten for å slå av lysdiodene, så sett den til maksimal lysstyrkeverdi på 255 her.

Du må også opprette en variabel for å kontrollere hvor raskt fading vil skje.

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

I oppsettfunksjonen setter vi ut våre Arduino-pinner. Vi vil også ringe et par funksjoner med en 5 sekunders forsinkelse i mellom. Disse funksjonene eksisterer ikke ennå, men ikke bekymre deg, vi kommer til dem.

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

Opprett nå TurnOn () -metoden:

 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); } } 

Disse tre for sløyfer tar hver farge opp til full lysstyrke over en tid som er angitt av fadeSpeed- verdien.

Endelig må du opprette TurnOff () -metoden:

 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() { } 

Denne metoden gjelder vår lysstyrkevariabel til alle tre fargestifter og reduserer dem til null over en tidsperiode. Vi trenger også en tom sløyfemetode her, for å unngå kompileringsfeil.

Når du har fullført denne skissen, lagre den. Bekreft skissen og last opp den til din Arduino-brett. Hvis du får feil, sjekk gjennom koden på nytt for noen irriterende skrivefeil eller manglende semikolon.

Nå bør du se din LED stripe rampe opp hver farge individuelt, holde den hvite farge i 5 sekunder, og deretter jevnt fade til ingenting:

LED-striper blinker

Hvis du har problemer, må du kontrollere ledningen og koden på nytt.

Dette prosjektet er en enkel måte å komme i gang, men ideene som dekkes av det kan utvides til å skape virkelig effektiv belysning. Med bare noen få flere komponenter kan du lage din egen soloppgangsalarm Arduino Night Light og Sunrise Alarm Project Arduino nattlys og soloppgang alarmprosjekt I dag skal vi lage en soloppgangsvekkerklokke som forsiktig og sakte vekker deg uten å ty til en støtende støynivåmaskin. Les mer . Hvis du har en startpakke med Arduino Hva er i din Arduino Starter Kit? [Arduino Beginners] Hva er i din Arduino Starter Kit? [Arduino Beginners] Faced med en boks full av elektroniske komponenter, er det enkelt å bli overveldet. Her er en guide til nøyaktig hva du finner i ditt sett. Les mer du kan bruke hvilken som helst knapp eller sensor for å utløse lysdiodene dine når du går inn i rommet, for eksempel:

Arduino Motion Controlled Lighting

Nå som vi har dekket SMD5050-tallene, la oss gå videre til WS2812B- strimlene.

Lyse ideer

Disse strimlene krever færre komponenter for å få dem til å løpe, og det er noe å fortelle nøyaktig hvilke verdier av komponenter du kan bruke. Kondensatoren i denne kretsen sørger for at 5v-LEDene får en jevn strømforsyning. Motstanden sikrer at datasignalet mottatt fra Arduino er fri for eventuelle forstyrrelser.

Du vil trenge:

  • WS2811 / 12 / 12B 5v LED stripe (alle tre modellene har integrerte chips og fungerer mye på samme måte)
  • 1 x Arduino Uno (eller lignende kompatibelt kort)
  • 1 x 220-440 ohm motstand (alt mellom disse to verdiene er greit)
  • 1 x 100-1000 microFarad kondensator (alt mellom disse to verdiene er greit)
  • Brødbrett og koble opp ledninger
  • 5V strømforsyning

Sett opp kretsen som vist i diagrammet:

Arduino Circuit

Vær oppmerksom på at kondensatoren må være riktig orientering. Du kan fortelle hvilken side som festes til bakken ved å lete etter minus (-) skiltet på kondensatorens kropp.

Denne gangen driver vi Arduino med 5V strømforsyning. Dette gjør prosjektet stå alene når vi er ferdige, selv om det er viktige ting å merke seg her.

Først må du kontrollere at styret ditt kan ta 5v strøm inn før du kobler den til strømkilden. Nesten alle utviklingsbrett kjører ved 5v gjennom USB-porten, men strøminngangspinnene på noen kan noen ganger hoppe over spenningsregulatorene og gjøre dem til skål.

Det er også god praksis å sørge for at flere separate strømkilder ikke er koblet til Arduino - koble fra USB-kabelen når du bruker en ekstern strømforsyning.

Når du er koblet til, bør den se slik ut:

Arduino fullført krets

Nå som vår LED-strip er koblet inn, la oss gå videre til koden.

Danselys

For å trygt programmere styret, koble VIN- linjen fra strømledningen. Du reattach det senere.

Fest Arduino til datamaskinen og åpne Arduino IDE. Kontroller at du har riktig bord og portnummer valgt i Verktøy> Styret og Verktøy> Portmenyer.

Vi bruker FastLED- biblioteket til å teste ut oppsettet vårt. Du kan legge til biblioteket ved å klikke på Sketch> Include Library> Behandle biblioteker og søke etter FastLED. Klikk Installer, og biblioteket blir lagt til IDE.

Under Fil> Eksempler> FastLED velger du DemoReel100- skissen. Denne skissen sykler forskjellige ting som kan gjøres med WS2812 LED-stripene, og er utrolig enkelt å sette opp.

Alt du trenger å endre er DATA_PIN- variabelen slik at den samsvarer med pin 13 og NUM_LEDS- variabelen for å definere hvor mange lysdioder som er i stripen du bruker. I dette tilfellet bruker jeg bare en liten linje med 10 LEDS kuttet fra en lengre stripe. Bruk mer for et større lys show!

Arduino kode

Det er det! Last opp skissen til brettet ditt, koble fra USB-kabelen og slå på 5V strømforsyningen. Til slutt fest Arduino's VIN til kraftledningen og se på showet!

Arduino Finished Circuit

Hvis det ikke skjer noe, sjekk over ledningen og at du angav riktig Arduino-pinne i demoversikten.

Uendelige muligheter

Demo-skissen viser noen av de mange mulige kombinasjonene av effekter som kan oppnås med WS2812-stripene. Sammen med å være et steg opp fra vanlige LED-striper, kan de også settes til praktisk bruk. Et godt neste prosjekt vil bygge din egen ambilight De 8 beste TV-Ambilight-settene for behagelig bakgrunnsbelysning De 8 beste TV-Ambilight-settene for behagelig bakgrunnsbelysning Ambilight legger til gratis omgivende bakgrunnsbelysningseffekter på fjernsyn som forbedrer videoinnholdet på skjermen. Men det er mange Ambilight-kits der ute. Hvilken er den beste for deg? Les mer for mediasenteret ditt.

Selv om disse stripene er definitivt mer funksjonelle enn SMD5050-tallene, må du ikke rabatte standard 12v LED-stripene enda. De er uslåelige når det gjelder pris og det er et stort antall applikasjoner for LED-lysstrimler. 22 måter å lyse på livet ditt med RGB LED-striper. 22 måter å lyse opp på livet ditt med RGB LED-striper. Du kan kjøpe fem meter RGB-LEDer strip belysning for under $ 10 - så her er noen gode prosjekt ideer å bruke dem rundt hjemmet ditt. Les mer .

Å lære å jobbe med LED-striper er en god måte å bli kjent med grunnleggende programmering på Arduino, men den beste måten å lære er ved å tinkere. Endre koden ovenfor og se hva du kan gjøre! Hvis alt dette var litt for mye for deg, bør du vurdere å begynne med disse Arduino-prosjektene for nybegynnere. 10 Great Arduino-prosjekter for nybegynnere. 10 Great Arduino-prosjekter for nybegynnere. Å fullføre et Arduino-prosjekt gir deg en følelse av tilfredshet som ingen andre. De fleste nybegynnere er ikke sikker på hvor du skal begynne, og selv begynnerprosjekter kan virke ganske skremmende. Les mer .

Bildekreditter: mkarco / Shutterstock

In this article