Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Dette startet da jeg trengte en ekstra oppbevaring ved siden av et skrivebord, men jeg ønsket å gi den en spesiell design. Hvorfor ikke bruke de fantastiske LED-stripene som kan adresseres individuelt og ta hvilken som helst farge? Jeg gir noen notater om selve hyllen i neste trinn, men her er det du trenger for å dekorere hyllen din:- noen få meter med LED-strimler med bakside med lim, ~ $ 40- en arduino nano, ~ $ 10 (hvilken som helst arduino faktisk)- noen tilkoblingskabler, hvite eller hvilken farge hyllen din faktisk er- noen tilkoblingskabler (valgfritt)- en ekstra smarttelefonlader (for å drive arduinoen usb plug)- litt loddetinn og et loddejern. Start her hvis du ikke vet hvordan du skal lodde ennå.- en wire stripper
Trinn 1: En rask merknad om hyllen
Bare for informasjon, her er hva jeg brukte for å bygge hyllen som ble kjøpt på amazon eller hjemmedepot:- en bokhylle, $ 50- en 4x2 kubehylle, $ 70- en annen 3x2 kubehylle, $ 57 for å nå veggen som Jeg gir ikke så mange detaljer om monteringen, men det innebærer å feste de øvre kuber sammen og på veggen med kraftige braketter. Gjør det med noen hjelp og bruk din sunne fornuft, eller hennes. Det kan imidlertid være lurt å plassere brakettene i hjørnet av terningene du ikke ser fra det mest naturlige stedet i rommet.
Trinn 2: Fest LED -stripene
Klipp LED -stripen i så mange biter du trenger, med en saks. I mitt tilfelle var det 14 turer med 8 lysdioder (= 8 "). Plasser dem deretter i skuffene dine, men husk:- Disse lysdiodene kan bli veldig lyse, og du vil ikke ha dem i direkte syn. Siden hyllene mine er helt over øyehøyde, plasserte jeg stripen på den nederste delen av terningene. Hvis din er på gulvet, må du plassere den på den øvre delen slik at du ikke ser dem når du står ved siden av den. - Det kan være lurt å holde stripen nær kanten av hyllen, fordi ting kan ende opp med å fylle esker og du ikke vil at de skal blokkere lyset fra lysdiodene. - respekt ("RESPEKT … !!") retningen angitt på stripen. Pilen viser i hvilken retning informasjonen flyter, fra arduinoen, til enden av stripen. En merknad om hvordan de fungerer: hver av WS2812 LED inneholder en mikrochip som mottar logiske 0s og 1s med en hastighet på 800 kHz. Etter oppstart, lytter den første lysdioden til dette signalet og fjerner de første 3 bytes (24 bit) fra strømmen av biter. Den bruker denne informasjonen for å stille inn fargen og overføre resten av signalet til neste LED, som skal utføre den samme oppgaven. Hver LED har en inngang og en utgang, derfor er retning viktig. - det forrige punktet innebærer at du på forhånd må tenke på hvor arduinoen skal mate stripen, og hvilken bane stripen skal ta. I mitt tilfelle var det ganske enkelt, og gjemte arduinoen i den lengste terningen, hvor jeg kan få lett tilgang til en dissimulert strømledning som kjører i hjørnet av rommet. Strimlene går gjennom alle terningene på det nivået, deretter opp, og gjennom alle terningene på det andre nivået.
Trinn 3: Tinn stripekoblingen på forhånd
Dette betyr at du legger en dråpe loddetinn på hver tilkoblingsende av LED -stripene. Med mine 14 stykker å koble sammen, og 3 tilkoblinger i hver ende (bakken, 5V, signal), gir 84 dråper loddetinn. Men det kommer til å gjøre livet ditt omtrent 84 ganger lettere i neste trinn !!!
Trinn 4: Koble til stripene
- Med wire stripper fjerner du bare 2 mm isolasjon fra ledningen. Tinn ledningen på forhånd (ved å varme den opp med loddejernet til den absorberer litt loddetinn).- Lod den rett på jordtilkoblingen til en av strimlene som skal tilkobles. Siden du har forhåndsinnstilt det, er det bare å trykke på loddejernet på ledningen som er plassert på tilkoblingen.- Trekk deretter ledningen tett til den tilsvarende forbindelsen til det andre stripestykket (bakken) og kutt ledningen nøyaktig på nivået tilkoblingen.- Fjern 2 mm isolasjon, fortinn og lodd den til kontakten.- På dette tidspunktet bør du ha en kabel som forbinder strimlene dine, og den skal ikke se løs ut. Gjør dette igjen for SIGNAL-kontaktene, og for 5V -kontaktene.
Trinn 5: Koble Arduino og kode
Adafruits flotte nettsted har noen veldig nyttige beste praksis angående tilkobling av en Arduino til en LED-stripe (den merket "Neo-Pixel"). Den er veldig tydelig, og du bør lese den: https://learn.adafruit.com/ adafruit-neopixel-uberguide/oversikthttps://learn.adafruit.com/adafruit-neopixel-uberguide/best-practiceshttps://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library- koble PIN6 (i kodeeksempel nedenfor, vi bruker pin 6) til den første LED -SIGNALEN, - koble Arduino Ground til den første LED GND - Strøm LED -stripen din med en 5V strømforsyning og koble din arduino til usb -laderen. - ADVARSEL: Hvis du driver stripen gjennom Arduino, må du ikke bruke pinnen "+5V" fra arduinoen. Denne pinnen involverer noen sensitive kretser på Arduino og kan brenne på grunn av strømmen som trekkes av LED -stripen. I stedet kan du prøve å bruke "Vin" -nålen. Hvis du planlegger å tegne mer enn 1A strøm (~ 20 til 50 mA per LED), kobler du en 5v strømforsyning direkte til LED -stripen (og bakken må deles med Arduinoene). Her er koden jeg brukte for en sakte bevegelse av farger gjennom kuber. Den er direkte hentet og tilpasset fra Neo_Pixel bibliotekseksempler: #include "Adafruit_NeoPixel.h" #define PIN 6 // Parameter 1 = antall piksler i stripe // Parameter 2 = Arduino pin number (de fleste er gyldige) // Parameter 3 = flagg av pikseltype, legg sammen etter behov: // NEO_KHZ800 800 KHz bitstream (de fleste NeoPixel -produkter m/WS2812 lysdioder) // NEO_KHZ400 400 KHz (klassiske 'v1' (ikke v2) FLORA -piksler, WS2811 -drivere) // NEO_GRB Piksler er kablet for GRB -bitstrøm (de fleste NeoPixel -produkter) // NEO_RGB -piksler er koblet til RGB -bitstrøm (v1 FLORA -piksler, ikke v2) Adafruit_NeoPixel -stripe = Adafruit_NeoPixel (8*14, PIN, NEO_GRB + NEO_KHZ800); // VIKTIG: For å redusere NeoPixel risiko, legg til 1000 uF kondensator på tvers av // piksel strømledninger, legg til 300 - 500 Ohm motstand på den første pikselens datainngang // og minimer avstanden mellom Arduino og første piksel. Unngå å koble til // på en strømkrets … hvis du må, må du koble til GND first.void setup () {strip.begin (); strip.show (); // Initialiser alle piksler til 'off'} void loop () {rainbowCycle (20);} void rainbowCycle (uint8_t wait) {uint16_t i, j; for (j = 0; j <256; j ++) {for (i = 0; i <strip.numPixels (); i ++) {strip.setPixelColor (i, Wheel ((((i) * 256 / strip.numPixels ())+j) & 255));} strip.show (); forsinkelse (vent);}} // Skriv inn en verdi 0 til 255 for å få en fargeverdi.// Fargene er en overgang r - g - b - tilbake til r.uint32_t Wheel (byte WheelPos) {if (WheelPos <85) {return strip. Color (WheelPos * 3, 255 - WheelPos * 3, 0);} ellers hvis (WheelPos <170) {WheelPos - = 85; return strip. Color (255 - WheelPos * 3, 0, WheelPos * 3);} else {WheelPos - = 170; return strip. Color (0, WheelPos * 3, 255 - WheelPos * 3);}}
Tredje premie i den fremhevede forfatterkonkurransen: Tarun Upadhyaya