Inhoudsopgave:

Interactieve tuinverlichting, loopbrugverlichting - Ajarnpa
Interactieve tuinverlichting, loopbrugverlichting - Ajarnpa

Video: Interactieve tuinverlichting, loopbrugverlichting - Ajarnpa

Video: Interactieve tuinverlichting, loopbrugverlichting - Ajarnpa
Video: Zelf Doen: interactieve kerstverlichting met een LED-matrixbord 2024, Juli-
Anonim
Interactieve tuinverlichting, loopbrugverlichting
Interactieve tuinverlichting, loopbrugverlichting
Interactieve tuinverlichting, loopbrugverlichting
Interactieve tuinverlichting, loopbrugverlichting

Ik wilde een soort interactieve tuinverlichting bouwen voor mijn achtertuin. Het idee was dat als iemand een kant op liep, er een animatie zou plaatsvinden in de richting waarin jij liep. Ik begon met Dollar General $ 1,00 zonnelampen

Stap 1: Gut de Solor Lights

Gut de Solor Lights
Gut de Solor Lights
Gut de Solor Lights
Gut de Solor Lights
Gut de Solor Lights
Gut de Solor Lights

De eerste stap was om de lichten te strippen om plaats te maken voor meer leuke dingen. Ik begon met het verwijderen van de originele led en batterij. Zorg ervoor dat u deze onderdelen bewaart, want ze zullen nuttig zijn in een ander project. Ik heb ook de chromen koepel verwijderd die zich aan de onderkant van de zonnelamp bevond en deze aan de bovenkant gelijmd zoals te zien is op foto's

Stap 2: Betere verlichting installeren

Betere verlichting installeren
Betere verlichting installeren
Betere verlichting installeren
Betere verlichting installeren
Betere verlichting installeren
Betere verlichting installeren

voor de led heb ik waterdichte ws2811b gebruikt die hier te vinden is

www.ebay.com/itm/50-X-12mm-LED-Module-RGB-…

Ik was oorspronkelijk van plan om de PIR-sensoren in de zonnelampen te plaatsen. maar dit bleek wat problematisch te zijn omdat de sensor in principe niet voorbij het plastic kon kijken. het moet een soort UV-filter hebben. dus ik koos voor iets meer als dit

www.thingiverse.com/thing:2590216

Stap 3: Coderen

als je wilt dat de lichten geen sensor gebruiken of gewoon de hele tijd rennen, zoek dan naar de plaats die is becommentarieerd als "vlaggenstatus wijzigen" en stel deze in op ether 1 of 0 ik zal meer foto's toevoegen wanneer ik dit voor mezelf voltooi, dus het is nog steeds een werk in uitvoering, maar ik denk dat het te netjes is om niet meteen te delen. bedankt voor het kijken

ongeldige setup() {

// plaats hier uw setup-code om een keer uit te voeren: FastLED.addLeds(leds, NUM_LEDS); Serieel.begin(9600); pinMode (knopPin1, INPUT); pinMode (knopPin2, INPUT); }

lege lus() {

Serial.println (Vlagstatus);

if(FlagState == 0){ ForwardLeds(); } if(Vlagstatus == 1){ RevLeds(); } if(Vlagstatus == 2){ Wachten(); } }

ongeldig ForwardLeds(){

EersteLed = -1; LaatsteLed = 16; for(int i=0; i < 8; i++){ LastLed--; EersteLed++; leds [LaatsteLed] = CRGB::Wit; leds [EersteLed] = CRGB::Wit; vertraging (750); FastLED.show(); Serial.print ("witte pas"); Serieafdruk (i); Serial.println ("van 8"); } EersteLed = -1; LaatsteLed = 16; for(int i=0; i < 8; i++){ LastLed--; EersteLed++; leds [LaatsteLed] = CRGB::Blauw; leds [EersteLed] = CRGB::Blauw; vertraging (250); FastLED.show(); Serial.print ("Blauwe Pass"); Serieafdruk (i); Serial.println ("van 8"); } EersteLed = -1; LaatsteLed = 16; for(int i=0; i < 8; i++){ LastLed--; EersteLed++; leds[LastLed] = CRGB::Paars; leds[FirstLed] = CRGB::Paars; vertraging (250); FastLED.show(); Serial.print ("Red Pass"); Serieafdruk (i); Serial.println ("van 8"); } EersteLed = -1; LaatsteLed = 16; for(int i=0; i < 8; i++){ LastLed--; EersteLed++; leds [LaatsteLed] = CRGB::Zwart; leds [EersteLed] = CRGB::Zwart; vertraging (250); FastLED.show(); Serial.print (" Led uitzetten "); Serieafdruk (i); Serial.println ("van 8"); } Vlaggenstaat = 2; // vlagstatus wijzigen } void RevLeds () {Serial.println ("in omgekeerde richting"); EersteLed = 8; LaatsteLed = 7; for(int i=0; i <8; i++){ LastLed++; EersteLed--; leds [LaatsteLed] = CRGB::Wit; leds [EersteLed] = CRGB::Wit; vertraging (750); FastLED.show(); Serial.print ("Wit pass"); Serieafdruk (i); Serial.println ("van 8"); } EersteLed = 8; LaatsteLed = 7; for(int i=0; i <8; i++){ LastLed++; EersteLed--; leds [LaatsteLed] = CRGB::Blauw; leds [EersteLed] = CRGB::Blauw; vertraging (250); FastLED.show(); Serial.print ("Blauwe pas"); Serieafdruk (i); Serial.println ("van 8"); } EersteLed = 8; LaatsteLed = 7; for(int i=0; i <8; i++){ LastLed++; EersteLed--; leds[LastLed] = CRGB::Paars; leds[FirstLed] = CRGB::Paars; vertraging (250); FastLED.show(); Serial.print (" Rode pas "); Serieafdruk (i); Serial.println ("van 8"); }

EersteLed = 8;

LaatsteLed = 7; for(int i=0; i <8; i++){ LastLed++; EersteLed--; leds [LaatsteLed] = CRGB::Zwart; leds [EersteLed] = CRGB::Zwart; vertraging (250); FastLED.show(); Serial.print (" Led uitzetten "); Serieafdruk (i); Serial.println ("van 8"); } Vlaggenstaat = 2; // vlagstatus wijzigen } void Waiting () {buttonState1 = digitalRead (buttonPin1); buttonState2 = digitalRead (buttonPin2); if(buttonState1 == HOOG){ Serial.println("forward geactiveerd"); Vlaggenstaat = 0; } else if(buttonState2 == HOOG){ Serial.println("Rev geactiveerd"); Vlaggenstaat = 1; } Serial.println("loop Klaar met wachten"); }

Aanbevolen: