Indholdsfortegnelse:
- Trin 1: IO -liste og hvad du skal bruge
- Trin 2: Flowchart
- Trin 3: Fritzing
- Trin 4: Kodning
- Trin 5: Node-rød
- Trin 6: Implementering og brug
Video: UCL-lloT-Udendørs-lys Udløst af solopgang/solnedgang .: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Hej alle sammen! Med lidt arbejde, nogle dele og kode har jeg sammensat denne instruktive, der viser dig fra start til slut præcis, hvordan du producerer dette udendørs lys. Ideen stammer fra min far, som i løbet af sommeren skulle manuelt ud og skifte, når lyset var tændt fra. Med de hurtigt skiftende solnedgangs- og solopgangstider året rundt spurgte han, om jeg kunne finde en automatiseret måde at gøre det på. Og så er vi her. Et relativt lille projekt.
Trin 1: IO -liste og hvad du skal bruge
Arduino MEGA 2560. Det er i det mindste, jeg har brugt, jeg ved, at du sagtens kunne bruge en anden.
DS3231 og dets bibliotek. (https://rinkydinkelectronics.com/library.php?id=73… Det er vigtigt at vide, at benene, der er indstillet til SDA og SCL, er forskellige afhængigt af hvilken Arduino du bruger.
I052116 IR -modul til infrarød bevægelsesdetektor. Dette særlige modul kan byttes til din valgfri sensor, det er ærligt valgfrit for det hele.
Trin 2: Flowchart
Som det ses i det enkle rutediagram, ligger meget af de tunge løft i Node-Red. Med relativt enkle noder er tanken, at du fra Node-Red når ud til et websted, der ved, hvornår solen går ned og stiger. Når den har den, sender den informationen videre til Arduino og fortæller den. Fra Arduino får vi et signal, der angiver præcis, hvornår lysene faktisk er tændt, så du kan tjekke hjemmefra, lige når lysene brænder væk. Det er også fra Arduino, vi får information om, at nærhedssensoren er blevet aktiveret, som har lyset tændt i x tid.
Trin 3: Fritzing
Sammenlignet med andre projekter er kabelføring ganske enkel her. Det, du skal være opmærksom på, er, at du skal bruge et WIFI-modul for at holde kontakt med Node-Red-serveren eller få en smidbar computer til at være vært for Node-Red-serveren, der er forbundet til Arduino. Forbindelsen mellem Arduino og bærbar computer er ikke vist på billedet, og jeg beklager på forhånd det dårlige Fritzing -billede!
Trin 4: Kodning
Hvis der er en ting, jeg fandt, er, at med Firmata (til Arduino-kommunikation med Node-Red), DS3231-biblioteket og mere, var der mange indlæste biblioteker. Fra udgivelsen er kodningen ikke helt færdig, så pseudokode er inkluderet.
Inkluderet i biblioteket fra DS3231 er forudindstillede ben til hvert af Arduino -kortene, og i tilfældet med Mega er det pin 20 og 21, da de er SDA- og SCL -benene på mega. Når det er tilsluttet, kan uret blive fortalt præcis, hvilken dag det er, og hvad det skal holde styr på. Det, jeg fandt lettere at arbejde med, når det kommer til at holde styr på tal, er at bruge int i stedet for streng. Så hvad jeg har gjort er, at jeg konverterer numrene på en streng til int, men som int ikke kan bruge: for at adskille et ur, besluttede jeg mig for at gøre noget andet i stedet for at arbejde med timer, vil vi arbejde med minutter. Mange minutter. Hvis klokken f.eks. Er 13:21, får jeg de to første cifre adskilt og timet med tres. Vi er nu på 801 minutter, da 13 gange 60 er lig med 780, og du tilføjer de sidste 21 minutter. Hvis vores Node-Red siger, at solen går ned kl. 16:58 (i tilfælde af vinter), får vi udendørslysene til at tænde mellem 1018 minutter og en foruddefineret slukningstid, som vil være 1380 (23:00). Hvis vores timer er mellem dem, tænder lysene. Ovenstående matematik er grundlæggende hele programmet uden trin for at få Node-Red til at oprette forbindelse til Arduino og kommunikere. Også at have en sensor, der sikrer, at lysene tændes (Tidligere solnedgang, alligevel) vil blive brugt, men ellers er det hele programmet ovenfor.
Trin 5: Node-rød
Ikke et særligt stort flow, ikke at det skal være i dette tilfælde. De første 2 rækker noder er den store del af programmet. Ved hjælp af en GET -funktion henter vi dagens prognose om, hvordan solen vil stige og gå ned. Derfra bruger vi en CSS -vælger til at hente vores specifikke oplysninger, der normalt er tilgængelige på et websted "Inspekter elementer" i en Firefox som angivet på billederne. Bemærk, at ikke alle websteder fungerer på denne måde, og at den, jeg bruger, tilfældigvis fungerer perfekt på denne måde. Derfra vil det skrive information til pin 13, fordi det er det, jeg har udpeget det til at være, selvom test endnu ikke skal diktere, om en pin til at komme til forskellige tidspunkter er brugbar. Som beskrevet i kodningsdelen kommer der oplysninger fra Arduino til Node-Red, hvor det derefter vil angive på et tilgængeligt websted, hvor man let kan kontrollere det. Du skal bruge Firmata til dette, hvis du ønsker at bruge Arduino-funktionerne erhvervet gennem node-red-node-arduino biblioteket på Node-Red. Selvom det ikke er helt konfigureret endnu, og det vil blive opdateret, når jeg er færdig med projektet, har jeg vedhæftet koden til Node-Red Flow i et tekstdokument for nem adgang.
Trin 6: Implementering og brug
Og for at afslutte vores instruerbare, er den praktiske del af det. Da få huse har dette niveau af automatisk lys, er en helårs løsning velkommen hos mange husejere. For faktisk at forbinde dette med lamper ved hjælp af elektricitet, der ikke er en Arduino, anbefaler jeg ikke at gøre det selv, medmindre du ved præcis, hvad du laver. Når projektet er overstået, påtager jeg mig denne opgave ved hjælp af en elektriker bare for at være sikker. Når jeg tænder din indkørsel ved hjælp af sensor eller strengt tidsmæssigt, anbefaler jeg, at du bygger videre på det, jeg allerede har gjort, hvis du mener faktisk at tage det i brug ud over denne testfase, det er i øjeblikket. De fleste af mine problemer med projektet var strengt i Node-Red til Arduino-delen, og jeg håber, jeg har formået at forklare så klart som muligt, hvordan det Er gjort.
Anbefalede:
Motion udløst billedoptagelse og e -mail: 6 trin
Motion udløst billedoptagelse og e-mail: Vi bygger videre på de tidligere ESP32-CAM-projekter og bygger et bevægelsesudløst billedoptagelsessystem, der også sender en e-mail med billedet som vedhæftet fil. Denne build bruger ESP32-CAM-kortet sammen med et PIR-sensormodul, der er baseret på AM312
EqualAir: Bærbar NeoPixel -skærm udløst af luftforureningssensor: 7 trin (med billeder)
EqualAir: Bærbar NeoPixel-skærm udløst af luftforureningssensor: Målet med projektet er at lave en bærbar t-shirt, der viser en stemningsfuld grafik, når luftforurening er over en fastsat tærskel. Grafikken er inspireret af det klassiske spil "murstensbrydere", idet bilen ligner en padle, der
Solopgang vækkeur (Forbedre morgenvågnen): 13 trin
Solopgang vækkeur (Forbedre morgenvågnen): Planlæg din egen personlige solopgang, forbedrer morgenvågnen Seneste tilfældige opfindelse, planlæg din egen solopgang! I løbet af dagen øger det blå lys i sollys vores opmærksomhed, hukommelse, energiniveau, reaktionstider og generelt humør . Blåt lys
Motion udløst kamera med hindbær Pi: 6 trin
Motion udløst kamera med Raspberry Pi: Raspberry Pi med HC-SR501 passiv infrarød sensor til at registrere egerns udseende, og derefter udløse SONY A6300 til at optage videoen i den bedste vinkel og afstand
Solopgang vækkeur med LCD -display og Bluetooth App: 8 trin
Solopgang vækkeur med LCD -display og Bluetooth App: Vintertid kan være trist. Du vågner, det er mørkt, og du skal ud af sengen. Det sidste du vil høre er den irriterende lyd fra dit vækkeur. Hvis du ligesom jeg har problemer med at vågne om morgenen, er dette vækkeur lige hvad du har brug for. I