Stap 3: Bedrading en montage van de LED 's
De LED-modules zijn vrij ongecompliceerd draad omhoog. De + 5 en op de grond komen rechtstreeks van de pins op de Arduino, en de gegevens afkomstig van digitale pin 6 voor mijn code - dat is configureerbaar in de code.
Gesneden 4" lengte van de 22 gauge draad in elk van de drie kleuren - 4 stelt in alle. Strip de uiteinden zeer kort voor de LED-verbindingen - ongeveer 1/8". Tin de draden en de LED stootkussens eerst te maken ze elkaar solderen makkelijker. Als de LED-pads via gaten, kunt u deze overslaan en gewoon soldeer de draden aan de achterzijde - vond ik dat makkelijker dan het solderen van de draden door de gaten.
Voor de eerste LED, zorg ervoor dat u de gegevens in pad - de LED's hebben een richting die u moet gebruiken. Invoer komt van de Arduino, en uitgang gaat naar de volgende LED. Dus, voor de eerste drie draden, één uiteinde zal verbinden met de Arduino - die een beetje langer kunnen worden gestript - 1/4", en het andere uiteinde gaat naar de eerste LED. Na dat, kunt u gewoon soldeer ze in een rij - Zie de foto's.
Als u wilt, kunt u de locatie en nauwer bedrading plannen - ik maakte hen hetzelfde en gebogen van de draden zo nodig.
De eerste LED na de Arduino #0, dan is de tweede een #1 enz - in orde als u verder weg van de Arduino. De volgorde is belangrijk voor het programma om te controleren of dat u de juiste zijn met de juiste kleuren oplichten.
Het kan helpen veel te laden van een testprogramma in de Arduino en testen met elke LED je soldeer.
Nadat de LEDs worden gesoldeerd, kunt u de tape of lijm deze aan de Raad van bestuur voor elk deel van de scène. De vaste kern draad maakt de verschuiving die gemakkelijk te plaatsen.
That's it! Een steekproefprogramma is gekoppeld, zodat u kunt zien hoe meerdere animaties tegelijkertijd uitvoeren. Als u andere ontwerpen, post ze in de comments!
Hier is de code die ik gebruikt, kan worden verbeterd, zeker!
/***************************************************************************** * * holiday scene animation for WS2812b LEDs connected to pin 6 * 4 LEDs: 0=tree star, 1=tree, 2=snowman, 3=santa nose * 11/15/2015 Carl F. Sutter * *******************************************************************************/ #include <Adafruit_NeoPixel.h> // support Adafruit! #define LED_PIN 6 #define NUMPIXELS 4 // Parameter 1 = number of pixels in strip // Parameter 2 = Arduino pin number (most are valid) // Parameter 3 = pixel type flags, add together as needed: // NEO_KHZ800 800 KHz bitstream (most NeoPixel products w/WS2812 LEDs) // NEO_KHZ400 400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers) // NEO_GRB Pixels are wired for GRB bitstream (most NeoPixel products) // NEO_RGB Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2) Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUMPIXELS, LED_PIN, NEO_GRB + NEO_KHZ800); int nose_red = 30; // current nose red color int nose_red_min = 10; // lowest red color for nose int nose_red_max = 50; // highest red color for nose int nose_red_step = 1; // step size for the nose color change boolean nose_up = true; // direction of nose color change - true=up, false=down - start on up void setup() { strip.begin(); strip.show(); // Initialize all pixels to 'off' randomSeed(analogRead(0)); } // setup void loop() { // tree star - random twinkles if (random(4) == 0) { // only change every 4 loops strip.setPixelColor(0, strip.Color(255, random(50,255), 0)); } // tree body //strip.setPixelColor(1, strip.Color(0, random(100,155), 0)); strip.setPixelColor(1, strip.Color(0, 100, 0)); // snowman strip.setPixelColor(2, strip.Color(30, 30, 255)); // santa nose if (nose_up) { nose_red += nose_red_step; if (nose_red > nose_red_max) { nose_red = nose_red_max; nose_up = false; } } else { nose_red -= nose_red_step; if (nose_red < nose_red_min) { nose_red = nose_red_min; nose_up = true; } } strip.setPixelColor(3, strip.Color(nose_red, 0, 0)); strip.show(); delay(40); } // loop