Indholdsfortegnelse:
Video: Interaktive gårdslamper, gangbroer: 3 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Jeg ville bygge en slags interaktive gårdslamper til min baghave. Ideen var, at når nogen gik en vej, ville det starte en animation i den retning, du gik. Jeg startede med Dollar General $ 1.00 sollys
Trin 1: Gut Solor Lights
Det første skridt var at tømme lysene for at gøre plads til sjovere ting. Jeg startede med at skære den originale LED og batteri ud. Sørg for at gemme disse dele, da de vil være nyttige i et andet projekt. Jeg fjernede også den kromkuppel, der var på bunden af sollyset og limede det til toppen som set på fotos
Trin 2: Installation af bedre lys
til LED'en brugte jeg vandtæt ws2811b, som kan findes her
www.ebay.com/itm/50-X-12mm-LED-Module-RGB-…
Jeg planlagde oprindeligt at sætte PIR -sensorerne inde i sollysene. men dette viste sig at være noget problematisk, fordi sensoren dybest set ikke kunne se forbi plasten. den skal have en form for UV -filtrering. så jeg valgte noget mere som dette
www.thingiverse.com/thing:2590216
Trin 3: Kodning
Hvis du vil få lysene til ikke at bruge sensor eller bare køre hele tiden, skal du bare lede efter det sted, der kommenteres som "ændring af flagstatus" og indstille det til ether 1 eller 0, jeg tilføjer flere billeder, når jeg fuldfører dette for mig selv, så det er stadig i gang, men jeg synes, det er for pænt til ikke at dele med det samme. tak fordi du kiggede
ugyldig opsætning () {
// sæt din opsætningskode her for at køre en gang: FastLED.addLeds (leds, NUM_LEDS); Serial.begin (9600); pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }
void loop () {
Serial.println (FlagState);
hvis (FlagState == 0) {ForwardLeds (); } hvis (FlagState == 1) {RevLeds (); } hvis (FlagState == 2) {Waiting (); }}
void ForwardLeds () {
FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Hvid; leds [FirstLed] = CRGB:: Hvid; forsinkelse (750); FastLED.show (); Serial.print ("hvidt pas"); Serial.print (i); Serial.println ("af 8"); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Blå; leds [FirstLed] = CRGB:: Blå; forsinkelse (250); FastLED.show (); Serial.print ("Blue Pass"); Serial.print (i); Serial.println ("af 8"); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Lilla; leds [FirstLed] = CRGB:: Lilla; forsinkelse (250); FastLED.show (); Serial.print ("Red Pass"); Serial.print (i); Serial.println ("af 8"); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Sort; leds [FirstLed] = CRGB:: Sort; forsinkelse (250); FastLED.show (); Serial.print ("Slukning af LED"); Serial.print (i); Serial.println ("af 8"); } FlagState = 2; // skiftende flagstat} ugyldig RevLeds () {Serial.println ("i omvendt"); FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; leds [LastLed] = CRGB:: Hvid; leds [FirstLed] = CRGB:: Hvid; forsinkelse (750); FastLED.show (); Serial.print ("Hvidt pas"); Serial.print (i); Serial.println ("af 8"); } FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; leds [LastLed] = CRGB:: Blå; leds [FirstLed] = CRGB:: Blå; forsinkelse (250); FastLED.show (); Serial.print ("Blue pass"); Serial.print (i); Serial.println ("af 8"); } FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; leds [LastLed] = CRGB:: Lilla; leds [FirstLed] = CRGB:: Lilla; forsinkelse (250); FastLED.show (); Serial.print ("rødt pas"); Serial.print (i); Serial.println ("af 8"); }
FirstLed = 8;
LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; leds [LastLed] = CRGB:: Sort; leds [FirstLed] = CRGB:: Sort; forsinkelse (250); FastLED.show (); Serial.print ("Slukning af Led"); Serial.print (i); Serial.println ("af 8"); } FlagState = 2; // ændring af flagstatus} void Waiting () {buttonState1 = digitalRead (buttonPin1); buttonState2 = digitalRead (buttonPin2); hvis (buttonState1 == HIGH) {Serial.println ("fremad aktiveret"); FlagState = 0; } ellers hvis (buttonState2 == HIGH) {Serial.println ("Rev udløst"); FlagState = 1; } Serial.println ("loop færdig med at vente"); }
Anbefalede:
Arduino bil omvendt parkering alarmsystem - Trin for trin: 4 trin
Arduino bil omvendt parkering alarmsystem. Trin for trin: I dette projekt vil jeg designe en simpel Arduino bil omvendt parkeringssensorkreds ved hjælp af Arduino UNO og HC-SR04 ultralydssensor. Dette Arduino -baserede bilomvendt alarmsystem kan bruges til en autonom navigation, robotafstand og andre rækkevidde
Trin for trin pc -bygning: 9 trin
Trin for trin PC Building: Supplies: Hardware: MotherboardCPU & CPU -køler PSU (strømforsyningsenhed) Opbevaring (HDD/SSD) RAMGPU (ikke påkrævet) CaseTools: Skruetrækker ESD -armbånd/mathermal pasta m/applikator
Akustisk levitation med Arduino Uno trin for trin (8 trin): 8 trin
Akustisk levitation med Arduino Uno Step-by Step (8-trin): ultralyds lydtransducere L298N Dc kvindelig adapter strømforsyning med en han-DC-pin Arduino UNOBreadboard Sådan fungerer det: Først uploader du kode til Arduino Uno (det er en mikrokontroller udstyret med digital og analoge porte til konvertering af kode (C ++)
Interaktive partikler: 8 trin
Interaktive partikler: Dette er trin for trin vejledning til opsætning af det medfølgende interaktive partikelsystem. Dette er et ret avanceret system, der til tider kan være forvirrende, og en vis viden inden for kodning, Max MSP, Arduino og audio/visuelle opsætninger anbefales
Interaktive glødende svampe: 10 trin (med billeder)
Interaktive glødende svampe: Denne instruktive viser dig, hvordan du laver svampe, der lyser i mørket. Du kan slå individuelle svampe fra og til igen ved at trykke på toppen. Jeg startede dette projekt for en skoleopgave, hvor vi skulle skabe noget ved hjælp af Arduin