Turinys:

Interaktyvūs kiemo žibintai, takų žibintai: 3 žingsniai
Interaktyvūs kiemo žibintai, takų žibintai: 3 žingsniai

Video: Interaktyvūs kiemo žibintai, takų žibintai: 3 žingsniai

Video: Interaktyvūs kiemo žibintai, takų žibintai: 3 žingsniai
Video: Part 6 - Lord Jim Audiobook by Joseph Conrad (Chs 37-45) 2024, Liepa
Anonim
Interaktyvūs kiemo žibintai, „Walkway Lights“
Interaktyvūs kiemo žibintai, „Walkway Lights“
Interaktyvūs kiemo žibintai, „Walkway Lights“
Interaktyvūs kiemo žibintai, „Walkway Lights“

Norėjau pastatyti kažkokius interaktyvius kiemo žibintus savo kieme. Idėja buvo ta, kad kai kas nors vaikščiojo vienu keliu, jis pradės animaciją ta kryptimi, kuria jūs einate. Pradėjau nuo „Dollar General“1,00 USD saulės lempučių

1 žingsnis: nusausinkite „Solor Lights“

Ištuštinkite „Solor Lights“
Ištuštinkite „Solor Lights“
Ištuštinkite „Solor Lights“
Ištuštinkite „Solor Lights“
Ištuštinkite „Solor Lights“
Ištuštinkite „Solor Lights“

Pirmasis žingsnis buvo užgesinti žibintus, kad atsirastų daugiau įdomių dalykų. Pradėjau iškirpdama originalią lemputę ir bateriją. Būtinai išsaugokite šias dalis, nes jos bus naudingos kitame projekte. Aš taip pat pašalinau chromo kupolą, esantį saulės šviesos apačioje, ir priklijavau prie viršaus, kaip matyti nuotraukose

2 žingsnis: Geresnių žibintų montavimas

Geresnių žibintų montavimas
Geresnių žibintų montavimas
Geresnių žibintų montavimas
Geresnių žibintų montavimas
Geresnių žibintų montavimas
Geresnių žibintų montavimas

„led i“naudoju vandeniui atsparų „ws2811b“, kurį galite rasti čia

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

Iš pradžių planavau įdėti PIR jutiklius į saulės šviesas. tačiau tai pasirodė esanti problemiška, nes jutiklis iš esmės negalėjo matyti pro plastiko. jis turi turėti tam tikrą UV filtravimo savybę. todėl pasirinkau kažką panašaus

www.thingiverse.com/thing:2590216

3 žingsnis: kodavimas

jei norite, kad žibintai nenaudotų jutiklio arba tiesiog veiktų visą laiką, tiesiog ieškokite vietos, kuri komentuojama kaip „keičiama vėliavos būsena“, ir nustatykite ją į 1 arba 0 eterį, pridėsiu daugiau nuotraukų, kai tai padarysiu sau jis vis dar nebaigtas, bet manau, kad jis yra per daug tvarkingas, kad iš karto nesidalytų. ačiū, kad žiūrite

void setup () {

// įdėkite čia savo sąrankos kodą, kad paleistumėte vieną kartą: FastLED.addLeds (LED, NUM_LEDS); Serial.begin (9600); pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }

void loop () {

Serial.println (vėliavos valstybė);

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

void ForwardLeds () {

PirmasisLed = -1; PaskutiniaiLed = 16; už (int i = 0; i <8; i ++) {LastLed--; „FirstLed“++; LED [LastLed] = CRGB:: Balta; šviesos diodai [FirstLed] = CRGB:: Balta; vėlavimas (750); FastLED.show (); Serial.print („baltas leidimas“); Serijinis atspaudas (i); Serial.println ("iš 8"); } FirstLed = -1; PaskutiniaiLed = 16; už (int i = 0; i <8; i ++) {LastLed--; „FirstLed“++; LED [LastLed] = CRGB:: Mėlyna; šviesos diodai [FirstLed] = CRGB:: Mėlyna; vėlavimas (250); FastLED.show (); Serial.print („Blue Pass“); Serijinis atspaudas (i); Serial.println ("iš 8"); } FirstLed = -1; PaskutiniaiLed = 16; už (int i = 0; i <8; i ++) {LastLed--; „FirstLed“++; LED [LastLed] = CRGB:: Violetinė; šviesos diodai [FirstLed] = CRGB:: Violetinė; vėlavimas (250); FastLED.show (); Serial.print („Raudonasis leidimas“); Serijinis atspaudas (i); Serial.println ("iš 8"); } FirstLed = -1; PaskutiniaiLed = 16; už (int i = 0; i <8; i ++) {LastLed--; „FirstLed“++; LED [LastLed] = CRGB:: Juoda; šviesos diodai [FirstLed] = CRGB:: Juoda; vėlavimas (250); FastLED.show (); Serial.print („LED išjungimas“); Serijinis atspaudas (i); Serial.println ("iš 8"); } Vėliavos būsena = 2; // vėliavos būsenos keitimas} void RevLeds () {Serial.println ("atvirkščiai"); FirstLed = 8; PaskutinisLed = 7; už (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; LED [LastLed] = CRGB:: Balta; šviesos diodai [FirstLed] = CRGB:: Balta; vėlavimas (750); FastLED.show (); Serial.print („Baltas leidimas“); Serijinis atspaudas (i); Serial.println ("iš 8"); } FirstLed = 8; PaskutinisLed = 7; už (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; LED [LastLed] = CRGB:: Mėlyna; šviesos diodai [FirstLed] = CRGB:: Mėlyna; vėlavimas (250); FastLED.show (); Serial.print („Mėlynasis leidimas“); Serijinis atspaudas (i); Serial.println ("iš 8"); } FirstLed = 8; PaskutinisLed = 7; už (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; LED [LastLed] = CRGB:: Purpurinė; šviesos diodai [FirstLed] = CRGB:: Violetinė; vėlavimas (250); FastLED.show (); Serial.print („Raudonasis leidimas“); Serijinis atspaudas (i); Serial.println ("iš 8"); }

FirstLed = 8;

PaskutinisLed = 7; už (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; LED [LastLed] = CRGB:: Juoda; šviesos diodai [FirstLed] = CRGB:: Juoda; vėlavimas (250); FastLED.show (); Serial.print („LED išjungimas“); Serijinis atspaudas (i); Serial.println ("iš 8"); } Vėliavos būsena = 2; // vėliavos būsenos keitimas} void Waiting () {buttonState1 = digitalRead (buttonPin1); buttonState2 = digitalRead (buttonPin2); if (buttonState1 == HIGH) {Serial.println ("įjungtas į priekį"); Vėliavos būsena = 0; } else if (buttonState2 == HIGH) {Serial.println ("Rev suaktyvintas"); Vėliavos būsena = 1; } Serial.println ("ciklas baigtas laukti"); }

Rekomenduojamas: