Innehållsförteckning:

Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels): 6 steg (med bilder)
Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels): 6 steg (med bilder)

Video: Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels): 6 steg (med bilder)

Video: Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels): 6 steg (med bilder)
Video: WS2812 Адресная светодиодная лента LED-144 2024, Juli
Anonim
Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels)
Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels)
Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels)
Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels)
Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels)
Bästa RGB -lysdioder för alla projekt (WS2812, Aka NeoPixels)

När vi arbetar med lysdioder gillar vi ofta att styra deras tillstånd (på/av), ljusstyrka och färg. Det finns många, många olika sätt att gå tillväga, men ingen är en så kompakt lösning som WS2812 RGB LED. I sitt lilla paket på 5 mm x 5 mm innehåller WS2812 3 superljusa lysdioder (rött, grönt och blått) och en kompakt förarkrets (WS2811) som bara kräver en datainmatning för att styra status, ljusstyrka och färg på de 3 lysdioderna. På bekostnad av att bara behöva en datalinje för att styra 3 lysdioder, kommer det ett krav på mycket exakt timing i kommunikationen med WS2811. Av denna anledning krävs en realtidsmikrokontroller (t.ex. AVR, Arduino, PIC). Tyvärr kan en Linux-baserad mikrodator eller en tolkad mikrokontroller som Netduino eller Basic Stamp inte ge tillräcklig timingnoggrannhet som behövs. Och så, i denna instruerbara går jag igenom processen med att sätta upp och styra en av dessa lysdioder med en Arduino Uno. Sedan visar jag hur enkelt det är att ansluta flera av dem för en fantastisk belysning! Svårighetsgrad: Nybörjare Tid till slut: 10-15 minuter

Steg 1: Lista över material

Lista över material
Lista över material

Denna underbara RGB LED kommer i ett 5050 (5mm x 5mm) paket med 6 kuddar som är ganska lätta att lödda på ett utbrottskort. Eftersom den enda ytterligare komponenten som behövs är en avkopplingskondensator, erbjuder WS2812 ärligt den bästa lösningen för att kontrollera färg och ljusstyrka hos en RGB-LED. Den inbäddade LED -drivrutinen med konstant ström (WS2811) är anmärkningsvärt användbar av två skäl: - En konstant ström på ~ 18mA driver varje LED även om spänningen varierar. - Det finns ingen anledning att lägga till strömbegränsande motstånd (a.k.a chokemotstånd) mellan strömförsörjningen och lysdioderna. Allt vi behöver är en mycket enkel design för att ge ström, mark och 1 kontrollingång för att skapa en fantastisk belysningsdisplay som består av inte en, utan en hel rad RGB -lysdioder. Det är rätt! Genom att ansluta Data Out -stiftet på en av dessa lysdioder till Data In -stiftet på en annan kan vi köra dem båda oberoende av varandra med samma kontrollingång! Om det inte är uppenbart hur du gör detta, var inte orolig, i slutet av denna instruktionsbok är du på god väg att lägga till WS2812 till alla projekt du vill ha! För denna instruerbara här är vad vi kommer att använda: Material: 3 x WS2812 RGB-lysdioder (förlödda på en liten brytskiva) 1 x Lödfri brödbräda Solid Core Wire (diverse färger; 28 AWG) 1 x Arduino Uno R3 1 x Break-away Pin Connector, 0.1 "Pitch, 8-Pin Male (Right-Angle) 1 x Pin Connector, 0.1" Pitch, 8-Pin Female (Right-Angle) 1 x Breakaway Pin Connector, 0.1 "Pitch, 8-Pin MaleTools: PC USB A/B Cable Wire Stripper Lödkolv Anmärkningar: Beroende på ditt projekt är WS2812 RGB-lysdioderna också tillgängliga utan utbrottskort för cirka $ 0,40 styck, men bekvämligheten med det förlödda alternativet är attraktivt för enkla applikationer.

Steg 2: Anslut stifthuvudena

Anslutning av stifthuvuden
Anslutning av stifthuvuden
Anslutning av stifthuvuden
Anslutning av stifthuvuden
Anslutning av stifthuvuden
Anslutning av stifthuvuden

Med allt material som anges i föregående steg är det ganska rakt fram att tända en WS2812 RGB LED. Först vill vi förbereda WS2812 Breakout Boards för att placera dem på den lödlösa brödbrädan. För att göra detta använder vi en trådskärare (de vanligaste skärverktygen fungerar lika bra) för att separera varje 8-pins remsa i 2 x 3-pins bitar. Tänk på att det är lite knepigt att göra snittet; ofta har jag försökt använda spåret mellan två manliga rubriker som en vägledning för snittet, och jag har slutat skära för mycket plast från ett huvud som jag tänkte behålla. Genom att”offra” stiftet där vi vill göra snittet undviker vi problemet helt och hållet. Med en tång drar vi bort tappen där vi vill skära (i detta fall den fjärde och åttonde stiftet). Efter att stiften har tagits bort kan vi enkelt klippa ner mitten av de nu tomma rubrikerna. Denna teknik fungerar lika bra med det kvinnliga huvudet. Efter att ha prikat och klippt bör vi ha 6 x 3-pins rubriker, det vill säga 2 x standard och 4 x rätvinklig (2 x hane, 2 x hona). Med hjälp av ett lödkolv kan vi nu ansluta stiften till var och en av de tre brytbrädorna på följande sätt. Ett bräde ska ha 2 x standardhuvuden, medan de andra två brädorna ska ha 1 x rätvinkligt huvud. På brädet som har standardstifthuvuden, placerar vi stiften på brädans bottenyta (sidan motsatt till där lysdioden är). På de andra två kan rätvinkliga rubriker (en av varje kön) placeras antingen på den övre eller nedre ytan. Observera att det är viktigt att vara konsekvent, från en bräda till den andra, om placeringen av manliga och kvinnliga rubriker. Det är bra att använda ytmonterad kondensator för orientering av brädorna; med detta som referens, bör det manliga huvudet lödas till slutet närmast kondensatorn. När stiften är lödda är vi redo att ansluta en av dem till Arduino!

Steg 3: Ansluta WS2812 Breakout Board till en Arduino

Ansluter WS2812 Breakout Board till en Arduino
Ansluter WS2812 Breakout Board till en Arduino
Ansluter WS2812 Breakout Board till en Arduino
Ansluter WS2812 Breakout Board till en Arduino
Ansluter WS2812 Breakout Board till en Arduino
Ansluter WS2812 Breakout Board till en Arduino

I det här steget gör vi de nödvändiga anslutningarna mellan en Arduino och en av våra WS2812 Breakout Boards. För detta ändamål använder vi den lödlösa brödbrädan och 3 x bygeltrådar. Om du använder en trådrulle är det nu dags att klippa 3 stycken, var och en ca 4 lång. Vi kan nu placera WS2812 Breakout Board (den med standardhuvudena) tvärs över avdelaren på vårt brödbräda. Se till att att Arduino är frånkopplad från både en strömkälla och USB, fortsätter vi att ansluta anslutningarna. På undersidan av WS2812 Breakout Board kan vi hitta namnet på varje stift: VCC, DI (DO), GND. Använda detta som en guide fortsätter vi med att ansluta 5V- och GND -stiften från Arduino till VCC respektive GND -stiften på WS2812 -kortet. Sedan ansluter vi stift 8 på Arduino digitala sida till DI -stiftet på WS2812 -kortet, som är mittstiftet på sidan närmast kondensatorn. Nu är vi redo att ladda vårt program till Arduino och få WS2812 att blinka!

Steg 4: Få det att blinka med Arduino IDE

Få det att blinka med Arduino IDE
Få det att blinka med Arduino IDE
Få det att blinka med Arduino IDE
Få det att blinka med Arduino IDE

Jag antar att du redan har installerat Arduino IDE på din dator --- massor av guider på webben förklarar processen ganska bra. Programmet som vi måste ladda till vår Arduino kan laddas ner här. Efter att vi helt enkelt kan dubbelklicka på filen primer.ino inuti firmware> exempel> primer-mappen för att ladda den till Arduino IDE (wirtten för version 1.0.5). Paketet innehåller nödvändiga bibliotek för att koden ska kunna kompileras så det ska inte vara några fel. Skicka en kommentar om du stöter på några problem med att kompilera. Efter att du valt Arduino -korttyp och USB -port med menyalternativet Verktyg, ladda upp koden och WS2812 bör börja blinka växelvis mellan rött, grönt och blått. Den snyggaste egenskapen med dessa WS2812 RGB-lysdioder är att de ganska enkelt kan "kopplas ihop" för att skapa långa remsor och matriser som innehåller många av dessa lysdioder. I nästa steg gör vi just detta med de 3 brädorna vi har förberett.

Steg 5: Gör en remsa av RGB -lysdioder

Gör en remsa av RGB -lysdioder
Gör en remsa av RGB -lysdioder
Gör en remsa av RGB -lysdioder
Gör en remsa av RGB -lysdioder

Den inbyggda LED-drivarkretsen (WS2811) möjliggör 'daisy-chaining' en LED till nästa med endast 1 datarad (!). Genom att ansluta datautmatningen för en WS2812 till en annan dataingång kan vi styra ljusstyrkan och färgen på en hel rad LED -lampor upp till 500 av dem på en Arduino! Naturligtvis, för att driva många lysdioder är vissa överväganden i ordning: - Varje pixel drar upp till 60mA (vit vid full ljusstyrka kräver att alla lysdioder är på, varje ritning ~ 20mA). - En Arduino kommer att maximera sitt RAM -minne med 500 lysdioder vid en uppdateringshastighet på 30 Hz. - För att ansluta två kort tillsammans är den rekommenderade maximala avskiljningen 6 "för att undvika strömavbrott och dataförstörelse. Med dessa överväganden i åtanke kan vi driva alla lysdioder med hjälp av 24-bitars färgupplösning, vid jämna ljusstyrkor, och ganska motståndskraftig mot förändringar i (små) batteribyteförändringar. Till 'daisy-chain' de brädor som vi förberett för denna instruerbara börjar vi med att ansluta honänden från den ena till den manliga änden på den andra av de två korten med höger- Med vårt Arduino-kort frånkopplat från ström och USB, placerar vi hanänden från två-brädets kedja på det lödlösa brödbrädet. redan. En sådan inriktning kommer att ha VCC- och GND-stiften från både det raka huvudet och kedjan på samma rad på brödbrädet. Vi placerar två-brädets kedja nära slutet av den tredje Breakout Board som är motsatt kondensatorn A Efter att allt är anslutet kan vi starta Arduino IDE och använda textredigeraren för att ändra definitionen "#define NUM_LEDS 1" till "#define NUM_LEDS 3". Efter att ha anslutit kortet igen till Power och/eller USB kan vi ladda upp det nya programmet … och … BAM! Alla tre lysdioder borde blinka precis så!

Steg 6: Into the Darkness, Let There Be Light

In i mörkret, låt det vara ljus!
In i mörkret, låt det vara ljus!
In i mörkret, låt det vara ljus!
In i mörkret, låt det vara ljus!

Denna instruktionsbok visade dig snabbt hur du använder WS2812 RGB LED förlödda på små utbrottskort. Vi använde en Arduino för att styra ljusstyrkan och färgen på lysdioderna. En sak som var lite nedslående är att koden vi använde fick lysdioderna att blinka samtidigt, med samma intensitet och färg. Detta driftsätt uppvisar inte den fulla potentialen för den "smarta" LED -drivrutinen (WS2811) som är inbäddad i detta paket. Och så, låt oss prova följande ändringar av den ursprungliga koden. Som tidigare laddar du ner och packar upp filen och öppnar sedan den inbyggda programvaran som ska laddas på Arduino (firmware> effekter> effekter.ino). Alla filer som behövs för denna demo är inkluderade så det finns inget behov av att lägga till tredjeparts libaries; koden ska kompileras utan några ändringar --- den är redan inställd för att hantera de 3 lysdioderna. Nu är det upp till din fantasi att utforma nästa projekt där dessa mycket användbara, kompakta, RGB -lysdioder kan lysa i sina lampor. Lägg gärna upp några av dina egna skapelser med WS2812 i kommentarfältet!

Rekommenderad: