INHOUDSOPGAWE:

WS2812-B LED Met ATMEGA328 UNO V3.0 R3-bord: 11 stappe
WS2812-B LED Met ATMEGA328 UNO V3.0 R3-bord: 11 stappe

Video: WS2812-B LED Met ATMEGA328 UNO V3.0 R3-bord: 11 stappe

Video: WS2812-B LED Met ATMEGA328 UNO V3.0 R3-bord: 11 stappe
Video: Ambilight LED DIY | WS2812b(Neopixel) | Arduino Uno Project (without soldering | How to make ) 2024, November
Anonim
WS2812-B LED Met ATMEGA328 UNO V3.0 R3-bord
WS2812-B LED Met ATMEGA328 UNO V3.0 R3-bord

Beskrywing

Hierdie projek kombineer ICStation WS2812-B programmeerbare kleurvolle LED-bord met ATMEGA328 UNO V3.0 R3-kaartversoenbare Arduino UNO R3 om 'n visuele impak te skep. Boonop sal u daarvan hou as u 'n tema van 'Disco' hou. Laat ek jou wys hoe om een van hierdie dinge te maak.

Stap 1: Onderdele benodig:

Onderdele benodig
Onderdele benodig

· Arduino UNO (of versoenbare bord) · 4 x WS2812-B programmeerbare kleurvolle LED-bord

· 330 ohm weerstand

· 4700 uF 16V elektrolitiese kondensator

· Broodbord

· Jumperdrade van vroulik tot manlik

· Breadboard Jumper drade

· 2.1 mm DC -aansluiting met skroefaansluitings

· 5V 4A Plugpack kragtoevoer

Let wel: dit is moontlik om hierdie projek met batterye aan te dryf, maar word nie aanbeveel nie en op eie risiko.

Jy benodig ook 'n Disco Ball Cake wat jy sal moet maak (of koop). My vrou het hierdie een gemaak. En soos u binnekort sal sien, was die koek aan die binnekant pienk, want dit was 'n aarbeikoek.

Arduino Libraries en IDE U kan die Arduino IDE van hier af kry: https://www.arduino.cc/en/Main/Software Ek het weergawe 1.6.4 gebruik, wat waarskynlik verouderd is … maar tog goed werk.

U kan hier inligting kry oor hoe u die FastLED -biblioteek gebruik: https://fastled.io/ En u kan dit hier aflaai: FastLED -biblioteek Ek het weergawe 3.0.3 gebruik, wat waarskynlik ook verouderd is.

Stap 2: ARDUINO -KODE:

Stap 3: ARDUINO KODE BESKRYWING:

· FastLED -biblioteek: u moet seker maak dat u die FastLED -biblioteek in u Arduino IDE afgelaai en geïnstalleer het. Die biblioteek is in hierdie skets ingesluit, anders werk die FastLED -funksies nie.

· Die veranderlike "NUM_LEDS": vertel die Arduino hoeveel LED's gebruik word. In hierdie geval het ons 4 LED -ringe, met elke LED -ring wat 16 LED's bevat, en dus 'n totaal van 64 LED's. As u 'n laer getal definieer, byvoorbeeld 16, sal die skets slegs die LED's op die eerste LED -ring verlig.

· Die veranderlike "DATA_PIN": sê vir die Arduino watter digitale pen hy moet gebruik vir data -oordrag na die LED -ring. In hierdie geval gebruik ek Digital Pin 9.

· Ander veranderlikes: ek het 'n paar ander veranderlikes wat gebruik word vir LED -randomisering en kleurbeheer. Hue is die kleur van die LED. Deur die tintveranderlike te verhoog, kan u die LED's in 'n reënboogagtige patroon laat rondloop. Die "hue" -veranderlike is 'n 'byte', wat beteken dat dit slegs tot 'n maksimum waarde van 255 sal styg, voordat dit weer na nul spring.

Initialiseringskode: as u 'n ander LED -ring as die in hierdie tutoriaal het, moet u moontlik die initialiseringskode verander. Hierdie LED-ring het 'n WS2812-B-skyfiestel (volgens die ICStation-webwerf), en hierdie lyn:

· FastLED.addLeds (leds, NUM_LEDS); Sal die FastLED -biblioteek vertel watter chipset gebruik word (NEOPIXEL), die pen wat gebruik word vir data -oordrag (DATA_PIN), die LED -skikking wat beheer moet word (LED's) en die aantal LED's wat beheer moet word (NUM_LEDS). · In die " loop () ": gedeelte van die kode: die veranderlike" hue "word verhoog om 'n reënboog -effek te skep, en 'n ewekansige LED word gekies met behulp van die FastLED se random8 () -funksie.

· Die random8 (x) funksie: kies lukraak 'n getal van 0 tot x.

· Die randomSeed () -funksie: is daar om die getal werklik te randomiseer. Dit word gehelp deur die ewekansigheid van 'n drywende analogPin (A0) te lees. Dit hoef nie analogPin 0 te wees nie, dit kan 'n ongebruikte analoog pen wees.

· Leds [rnd].setHSV (tint, 255, 255): Hierdie reël stel die ewekansige LED in om 'n tint te hê wat gelyk is aan die "hue" -veranderlike, versadiging gelyk aan 255 en helderheid gelyk aan 255. Versadiging gelyk aan nul sal maak die LED skyn wit. Die helderheid van nul skakel die LED in wese uit.

· FastLED.show (): Geen fisiese veranderinge sal aan die LED -ringskerm aangebring word totdat 'n boodskap van die Arduino na die digitale invoerpen van die LED -ring gestuur word nie. Hierdie boodskap word oorgedra as u die FastLED.show () bel; funksie. Dit vertel die LED -ringe om hul skerm op te dateer met die inligting in die LED -skikking (LED's). As u dus alle LED's laat aanskakel, sal die bord die LED's eers verlig totdat die FastLED.show (); funksie genoem word. Dit is belangrik om te weet - veral as u probeer om u eie LED -rye te ontwerp.

· Die vertragingslyn (50): stel die tyd tussen flitse in op 50 millisekondes. U kan die vertraging verander om die aantal flitse per sekonde te verhoog of te verminder.

· Die leds .fadeToBlackBy (180) -funksie: vervaag die LEDS in wese met 180 eenhede. U kan hierdie getal verhoog of verlaag om die verlangde vervaagsnelheid te bereik. Wees egter gewaarsku dat as u vergeet om hierdie funksie te skakel, of as u nie die LED's genoegsaam vervaag nie, u ALLE LED's kan aanskakel, wat u Arduino -bord moontlik kan vernietig - dit wil sê, afhangende van die aantal LED -ringe wat u bel het, en hoe u gekies het om hulle te bestuur.

Stap 4: Die koek

Die koek
Die koek

· Skyfie 1 - Basisplaat: Dit is belangrik om die basisplaat te maak met al die elektronika aangebring en in werkende toestand Voordat u die koek daarop sit. Dit is 'n resep vir 'n ramp om LED's en kringe onder die basisplaat onder die basisplaat te plaas. Berei dus eers die basisplaat voor en gaan dan later na die koekvorm.

· Skyfie 2 - Bak koek: Jy benodig 'n paar halfrondkoekpanne om die twee kante van die bal te maak. U moet 'n relatief digte koek maak om die totale gewig van die koek, versiersel en fondant te weerstaan en om sy vorm te behou. Sodra dit afgekoel en afgekoel is, kan u dit bo -op mekaar plaas om 'n bol te vorm. Hulle word bymekaar gehou deur 'n laag versiersel tussen hulle.

· Skyfie 3 - Fondantversiersel: Die fondantversiersel moet op 'n spesiale kleefwerende mat uitgerol word. Ons het gevind dat die byvoeging van 'n bietjie meel die klewerigheid verminder. Daar is spesiale rolle wat verseker dat die dikte van die fondant deurgaans konsekwent is. U moet dit dan in vierkantige stukke sny (vierkante van ongeveer 1 cm het vir ons goed gewerk). Die vierkante word dan silwer geverf met 'n spesiale/eetbare silwer fondantglasuur. Miskien moet u 'n paar lae gebruik en dit laat droog word tussen die lae.

· Skyfie 4 - Yskoek op die basis: die koek kan óf op die basisplaat versier word … waarskynlik beter om dit van die basisplaat af te haal. Maar as u besluit om dit op die basisplaat te doen, moet u die LED's beskerm teen verdwaalde versiersel wat van die koek kan val (in die proses). Sodra die koek heeltemal versier is (met versiersel/ryp), moet u die koek in die sentrale posisie op die bord plaas. Daar is 'n kans dat die koek van die basis af kan gly … so doen wat jy moet doen om dit te laat bly.

· Skyfies 5-7 - Plaas fondantvierkante: terwyl die versiersel nog sag is, moet u die fondantvierkante vinnig, metodies en onvermoeid in 'n horisontale lineêre patroon om die koek plaas. Werk een ry op 'n slag na die noord- en suidpool van die koek. U kan 'n fondantsirkel vir die noordpool van die koek sny. In skyfie 7 sien jy 'n gaatjie aan die bokant van die koek. Dit is gemaak om 'n plastiekhouer binne te laat afkoel, wat later gebruik sou word om die versierings bo -op die koek vas te hou. Doen dit voordat die fondantsirkel bo -op die koek geplaas word.

· Skyfie 8 - Voeg glitter by: Nadat al die fondantvierkante op die koek geplaas is, is dit baie moontlik dat sommige van die silwer glans van die vierkante afgevee is. Dit is waar u weer met 'n paar lae silwer glans daaroor gaan, en op die laaste laag, voordat dit droog word, kan u eetbare glans rondom die koek strooi om die ekstra glans te gee.

· Skyfie 9 - Die eindproduk: Die laaste stap is om 'n paar draadskitter en 'n paar ander versierings bo -op die koek te voeg. Druk die drade deur die fondantdop aan die noordpool in die houer binne. Dit hou die drade vas sonder om al u harde werk te verwoes.

· WS2812-B-chipset: Hierdie LED-ring gebruik die WS2812-B-chipset en het 4 uitbreekpenne (GND, 5V, Din, Dout)

· Krag: Om hierdie module aan te dryf, moet u 5V en tot 1A stroom verskaf

· Seine: Om die LED -ring te beheer, moet u seine daarheen stuur via die digitale invoerpen (Din).

U kan nog 'n LED -ring aan hierdie een koppel deur die digitale uitgangspeld (Dout) te gebruik

Stap 5: Gids vir kraggebruik

Gids vir kraggebruik
Gids vir kraggebruik

· Algemene reël: Elke individuele LED op die ring kan rooi, groen en blou lig oordra. Die kombinasies van hierdie kleure kan enige ander kleur uitmaak. Wit lig bestaan uit al drie hierdie kleure op dieselfde tyd. Elke individuele kleur trek ongeveer 20mA stroom wanneer die kleur met maksimum helderheid vertoon word. As die wit met maksimum helderheid skyn, trek die enkele LED ongeveer 60mA.

· Kragvermenigvuldiger: as elke LED tot 60mA kan trek en daar is 16 LED's op 'n enkele LED -ring, dan is 16x60mA = 960mA per LED -ring. Om veilig te wees en om die wiskunde makliker te maak, moet u seker maak dat u genoeg stroom verskaf om 1A per LED -ring te akkommodeer. 4 LED -ringe benodig dus 'n 5V 4A -kragtoevoer as u die volledige funksionaliteit uit die modules wil haal.

Stap 6: Fritzing -diagram

Fritzing diagram
Fritzing diagram
Fritzing diagram
Fritzing diagram

Koppel EEN LED -ring aan op die Arduino

· 3 drade: U benodig slegs 3 drade om aan die LED -ring te koppel. As u net van plan is om 'n paar LED's op 'n slag aan te steek, behoort dit in orde te wees. · Die VEILIGE WEG: 'n Veiliger manier om dit te doen, is deur 'n eksterne kragtoevoer te gebruik om beide die Arduino en die LED -ring aan te dryf.

· Elektrolitiese kondensator: Deur 'n groot 4700 uF 16V elektrolitiese kondensator tussen die positiewe en negatiewe aansluitings van die kragtoevoer aan te sluit, met die negatiewe been van die kapasitor aan die negatiewe aansluiting van die kragtoevoer, beskerm u u LED -ringe teen enige aanvanklike stroom van stroom.

Beskermende weerstand: Dit is ook raadsaam om 'n weerstand van 300-400 ohm tussen die Arduino's Digital Pin 9 (D9) en die LED-ring se Digital Input pin (Din) te plaas. Dit beskerm die eerste LED teen moontlike spanningspieke

Geskikte drade: as u van plan is om 'n paar van hierdie LED -ringe aanmekaar te koppel (sien hieronder), sal u waarskynlik die drade so kort as moontlik wil hou en 'n ordentlike meetdraad gebruik wat die stroom wat daardeur trek, kan hanteer.

Stap 7: Koppel TWEE LED -ringe aan die Arduino

Koppel TWEE LED -ringe aan die Arduino
Koppel TWEE LED -ringe aan die Arduino

Drie ekstra drade: U benodig slegs 3 ekstra drade om 'n ekstra LED -ring aan te sluit. 'N Draad moet die digitale uitgang (Dout) van die eerste LED -ring aansluit op die digitale ingang (Din) van die 2de LED -ring.

Bly veilig: 'n Veiliger manier om dit te doen, is deur 'n eksterne kragtoevoer, 'n groot elektrolitiese kondensator by die terminale en 'n weerstand van 300-400 ohm tussen die Arduino en die digitale ingangspen van die eerste LED-ring te gebruik.

Stap 8: Koppel VIER LED -ring aan die Arduino

Koppel VIER LED -ring aan die Arduino
Koppel VIER LED -ring aan die Arduino

Vier en sestig LED's: U benodig 3 ekstra drade vir elke ekstra LED -ring. 4 LED -ringe bied 'n totaal van 64 LED's.

Kyk na die AMPS: Met volle helderheid kan hierdie opstelling moontlik tot 4 ampère (of ongeveer 1 amp per LED -ring) trek

Eksterne toevoer noodsaaklik: dit is noodsaaklik om 'n eksterne kragtoevoer te gebruik om hierdie LED's aan te dryf as daar so baie is. As u nie 'n eksterne kragtoevoer gebruik nie en u ALLE LED's per ongeluk verlig, sal u die mikrobeheerder waarskynlik beskadig as gevolg van oormatige stroomopname.

Stap 9: Verbindings tabelle

Verbindings tabelle
Verbindings tabelle

Hoe om EEN LED -ring aan te sluit op die Arduino

Stap 10: Hoe om TWEE LED -ringe aan die Arduino te koppel

Hoe om TWEE LED -ringe aan die Arduino te koppel
Hoe om TWEE LED -ringe aan die Arduino te koppel

Stap 11: Gevolgtrekking

Afsluiting
Afsluiting
Afsluiting
Afsluiting
Afsluiting
Afsluiting

In hierdie handleiding het ons u gewys hoe u 'n Disco Ball -koek kan versier en hoe u die RGB LED -ringe van ICStation kan gebruik.

Die skakel van die vier produkte in ICStation:

www.icstation.com/icstation-atmega328-board…

www.icstation.com/icstation-ws2812-programm…

www.icstation.com/1pcs-dupont-wire-10cm-254…

www.icstation.com/bread-board-jump-line-jum…

Dankie dat ons vriende Scott en sy gesin so 'n wonderlike voorlegging oor Led gemaak het.

Die oorspronklike bron van die inhoud kom van ons vriend Scott:

arduinobasics.blogspot.com.au/2016/06/ardui…

As u van hierdie gedeelte hou, deel dit dan met u vyande.

Lewer kommentaar as u dink dat u 'n beter resensie kan lewer.

As u meer idees oor IC -produkte het, kontak ons asseblief: [email protected]

Aanbeveel: