Kazalo:
Video: Interaktivne luči za dvorišče, luči za sprehajalne poti: 3 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:07
Želel sem zgraditi nekakšne interaktivne dvoriščne luči za svoje dvorišče. Zamisel je bila, da bi nekdo, ko je hodil v eno smer, sprožil animacijo v smeri, v kateri ste hodili. Začel sem s solarnimi svetilkami Dollar General za 1,00 USD
1. korak: Odstranite sončne luči
Prvi korak je bil ugasniti luči, da bi naredili prostor za bolj zabavne stvari. Začel sem z izrezovanjem originalnega LED -a in baterije. Ne pozabite shraniti teh delov, saj bodo uporabni v drugem projektu. Odstranil sem tudi kromirano kupolo, ki je bila na dnu sončne svetlobe, in jo prilepil na vrh, kot je prikazano na fotografijah
2. korak: Namestitev boljših luči
za LED sem uporabil vodotesen ws2811b, ki ga najdete tukaj
www.ebay.com/itm/50-X-12mm-LED-Module-RGB-…
Sprva sem nameraval postaviti senzorje PIR v sončne luči. vendar se je to izkazalo za nekaj problematičnega, ker senzor v bistvu ni videl mimo plastike. mora imeti nekakšno lastnost UV filtriranja. zato sem se odločil za kaj več takega
www.thingiverse.com/thing:2590216
3. korak: Kodiranje
če želite, da luči ne uporabljajo senzorja ali pa samo tečejo ves čas, samo poiščite mesto, ki je komentirano kot "spreminjanje stanja zastave", in ga nastavite na eter 1 ali 0, ko bom to dokončal, bom dodal več slik, zato še vedno poteka, vendar se mi zdi preveč čeden, da ga ne bi delil takoj. hvala za ogled
void setup () {
// tukaj vstavite nastavitveno kodo, ki jo želite zagnati enkrat: FastLED.addLeds (LED, NUM_LEDS); Serial.begin (9600); pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }
void loop () {
Serial.println (FlagState);
if (FlagState == 0) {ForwardLeds (); } if (FlagState == 1) {RevLeds (); } if (FlagState == 2) {Waiting (); }}
void ForwardLeds () {
FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; LED [LastLed] = CRGB:: Bela; LED diode [FirstLed] = CRGB:: Bela; zamuda (750); FastLED.show (); Serial.print ("bela karta"); Serial.print (i); Serial.println ("od 8"); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; LED [LastLed] = CRGB:: Modra; LED diode [FirstLed] = CRGB:: Modra; zamuda (250); FastLED.show (); Serial.print ("Blue Pass"); Serial.print (i); Serial.println ("od 8"); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; LED [LastLed] = CRGB:: Vijolična; LED diode [FirstLed] = CRGB:: Vijolična; zamuda (250); FastLED.show (); Serial.print ("Red Pass"); Serial.print (i); Serial.println ("od 8"); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; LED [LastLed] = CRGB:: Črna; LED diode [FirstLed] = CRGB:: Črna; zamuda (250); FastLED.show (); Serial.print ("Izklop LED"); Serial.print (i); Serial.println ("od 8"); } FlagState = 2; // spreminjanje stanja zastave} void RevLeds () {Serial.println ("v obratni smeri"); FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; LED diode [LastLed] = CRGB:: Bela; LED diode [FirstLed] = CRGB:: Bela; zamuda (750); FastLED.show (); Serial.print ("White pass"); Serial.print (i); Serial.println ("od 8"); } FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; LED [LastLed] = CRGB:: Modra; LED diode [FirstLed] = CRGB:: Modra; zamuda (250); FastLED.show (); Serial.print ("Blue pass"); Serial.print (i); Serial.println ("od 8"); } FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; LED [LastLed] = CRGB:: Vijolična; LED diode [FirstLed] = CRGB:: Vijolična; zamuda (250); FastLED.show (); Serial.print ("Red pass"); Serial.print (i); Serial.println ("od 8"); }
FirstLed = 8;
LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; LED diode [LastLed] = CRGB:: Črna; LED diode [FirstLed] = CRGB:: Črna; zamuda (250); FastLED.show (); Serial.print ("Izklop LED"); Serial.print (i); Serial.println ("od 8"); } FlagState = 2; // spreminjanje stanja zastave} void Waiting () {buttonState1 = digitalRead (buttonPin1); buttonState2 = digitalno branje (buttonPin2); if (buttonState1 == HIGH) {Serial.println ("naprej sproženo"); FlagState = 0; } else if (buttonState2 == HIGH) {Serial.println ("Rev sprožen"); FlagState = 1; } Serial.println ("zanka končana čakanje"); }
Priporočena:
Pametni svetlobni sistem za sprehajalne poti- Team Sailor Moon: 12 korakov
Pametni svetlobni sistem za sprehajalne poti- ekipa Sailor Moon: Pozdravljeni! To so Grace Rhee, Srijesh Konakanchi in Juan Landi, skupaj pa smo Team Sailor Moon! Danes vam bomo predstavili dvodelni DIY projekt, ki ga lahko izvedete kar v svojem domu. Naš zadnji sistem razsvetljave pametnih poti vključuje ul
Izdelava kablov in priključkov za več poti: 4 koraki
Izdelava kablov in priključkov za več poti: Nenavadno kupujemo in uporabljamo kable in priključke za več poti, vendar pri tem navodilu gre za izdelavo nekaterih teh kablov sami. Nameraval sem pisati v drugo navodilo o izdelavi kablov, ko sem spoznal, da se ne spomnim, da bi kdaj bral o tem
GPS sledenje poti V2: 4 koraki (s slikami)
GPS sledenje poti V2: Projekt: GPS sledenje poti V2Datum: maj - junij 2020UPDATI Prva različica tega projekta, čeprav je načeloma delovala, je imela številne napake, ki jih je bilo treba odpraviti. Najprej mi škatla ni bila všeč, zato sem jo zamenjala z drugo. Drugič,
Zvezdne poti: 4 koraki
Starlight Paths: Starlight Paths je projekt za tiste, ki potrebujejo pomoč pri krmarjenju po novem prostoru. Stoletja smo pluli z lučmi na nebu in zdaj lahko naredimo svojo svetlobo. Ta ideja je prišla iz oddaje Zvezdne steze. V oddaji najdejo pot skozi
Varnostno dvorišče z aktiviranjem gibanja: 4 koraki (s slikami)
Znak varnostnega dvorišča, aktiviran z gibanjem: Tradicionalni dvoriščni znaki varnostnega sistema ne naredijo ničesar. Pravzaprav se v zadnjih 30 letih niso bistveno spremenili. Vendar pa so dragocen odvračilni dejavnik, če so postavljeni na vidno mesto na vašem dvorišču in izgledajo dobro vzdrževani. Ljubim