Innehållsförteckning:
- Steg 1: IO -lista och vad du behöver
- Steg 2: Flödesschema
- Steg 3: Fritzing
- Steg 4: Kodning
- Steg 5: Node-Red
- Steg 6: Distribution och användning
Video: UCL-lloT-Outdoor-light Utlöst av soluppgång/solnedgång .: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
Hej alla! Med lite arbete, några delar och kod har jag sammanställt denna instruerbara som visar dig från början till slut exakt hur du producerar detta utomhusljus. Idén härstammade från min pappa, som under sommaren var tvungen att manuellt gå ut och byta när ljuset var tänt från. Med den snabbt föränderliga solnedgången och soluppgångstiderna året runt frågade han om jag kunde hitta ett automatiserat sätt att göra det. Och så är vi här. Ett relativt litet projekt.
Steg 1: IO -lista och vad du behöver
Arduino MEGA 2560. Det är vad jag har använt åtminstone, jag vet att du enkelt kan använda en annan.
DS3231 och dess bibliotek. (https://rinkydinkelectronics.com/library.php?id=73… Det är viktigt att veta att stiften som ställts in för SDA och SCL är olika beroende på vilken Arduino du använder.
I052116 IR -modul för infraröd rörelsedetektor. Den här modulen kan bytas ut mot din valda sensor, det är ärligt talat valfritt för det hela.
Steg 2: Flödesschema
Som framgår av det enkla flödesschemat finns mycket av de tunga lyften i Node-Red. Med relativt enkla noder är tanken att från Node-Red når du ut till en webbplats som vet vilken tid solen går ner och går upp. När den väl har den skickar den informationen till Arduino och berättar för den. Från Arduino får vi en signal som anger exakt när lamporna faktiskt är tända, så att du kan kolla hemifrån precis när lamporna brinner bort. Det är också från Arduino vi får information om att närhetssensorn har aktiverats, som har ljuset tänt under x tid.
Steg 3: Fritzing
Jämfört med andra projekt är kablarna ganska enkla här. Vad du behöver vara medveten om är att du behöver en WIFI-modul för att hålla kontakten med Node-Red-servern eller få en kastad dator för att vara värd för Node-Red-servern som är ansluten till Arduino. Anslutningen mellan Arduino och bärbar dator visas inte på bilden, och jag ber om ursäkt på förhand för den dåliga Fritzing -bilden!
Steg 4: Kodning
Om det är en sak jag hittade är att med Firmata (för Arduino-kommunikation med Node-Red), DS3231-biblioteket och mer, fanns det många laddade bibliotek. Från och med publiceringen är kodningen inte riktigt klar, så pseudokod ingår.
Inkluderat i biblioteket från DS3231 är förinställda stift för var och en av Arduino -korten, och för Mega är det stift 20 och 21 eftersom de är SDA- och SCL -stiften på megan. När den är ansluten kan klockan få veta exakt vilken dag det är och vad den ska hålla reda på. Det jag tyckte var lättare att arbeta med när det gäller att hålla reda på siffror, är att använda int istället för sträng. Så vad jag har gjort är att jag konverterar numren på en sträng till int, men som int inte kan använda: för att separera en klocka bestämde jag mig för att göra något annat istället för att arbeta med timmar, kommer vi att arbeta med minuter. Massor av minuter. Om klockan till exempel är 13:21 har jag de två första siffrorna separerade och tidsinställda med sextio. Vi är nu på 801 minuter, då 13 gånger 60 är 780 och du lägger till de senaste 21 minuterna. Om vår Node-Red säger att solen går ner klockan 16:58 (om det är vinter) får vi utomhuslamporna att tändas mellan 1018 minuter och en fördefinierad avstängningstid, som kommer att vara 1380 (23:00). Om vår timer är mellan dem tänds lamporna. Ovanstående matematik är i princip hela programmet, utan stegen att få Node-Red att ansluta till Arduino och kommunicera. Även att ha en sensor som ser till att lamporna tänds (tidigare solnedgång i alla fall) kommer att användas, men annars är det hela programmet ovan.
Steg 5: Node-Red
Inte ett särskilt stort flöde, inte att det behöver vara i det här fallet. De första två raderna av noder är den stora delen av programmet. Med hjälp av en GET -funktion hämtar vi dagens prognos om hur solen kommer att gå upp och gå ner. Därifrån använder vi en CSS -väljare för att hämta vår specifika information, vanligtvis tillgänglig på en webbplats "Inspektera element" i en Firefox som anges på bilderna. Observera att inte alla webbplatser fungerar på det här sättet och att den jag använder råkar fungera perfekt på detta sätt. Därifrån kommer den att skriva information till stift 13 eftersom det är vad jag har utsett det att vara, även om testning ännu inte dikterar om en nål kommer till olika tider är genomförbar. Som beskrivs i kodningsdelen kommer information från Arduino till Node-Red, där den sedan kommer att indikera på en tillgänglig webbplats där man enkelt kan kontrollera den. Du behöver Firmata för detta om du vill använda Arduino-funktionerna förvärvat genom nod-röd-nod-arduino-biblioteket på Node-Red. Även om det inte är helt konfigurerat än, och det kommer att uppdateras när jag avslutar projektet, har jag bifogat koden för Node-Red Flow i ett textdokument för enkel åtkomst.
Steg 6: Distribution och användning
Och för att avsluta vår instruerbara, är den praktiska delen av det. Eftersom få hus har denna nivå av automatiskt ljus är en helårslösning välkommen för många husägare. För att faktiskt ansluta detta till lampor med el som inte är en Arduino, rekommenderar jag inte att göra det själv om du inte vet exakt vad du gör. När projektet är klart kommer jag att ta mig an den här uppgiften med hjälp av en elektriker bara för att vara säker. Tändning av din uppfart med sensor eller strikt tidsmässigt, jag rekommenderar att du bygger vidare på vad jag har gjort redan om du menar att faktiskt använda den utöver denna testfas som den befinner sig i. De flesta av mina problem med projektet var strikt i Node-Red till Arduino-delen, och jag hoppas att jag har lyckats förklara så tydligt som möjligt hur det är klart.
Rekommenderad:
UCL Embedded - B0B Lineföljaren: 9 steg
UCL Embedded-B0B Linefollower: Detta är B0B.*B0B är en generisk radiostyrd bil som tillfälligt tjänar grunden för en linjeföljande robot. Liksom så många Line-följande robotar före honom kommer han att göra sitt bästa för att stanna kvar aa linje orsakad av en övergång mellan golvet och ac
EqualAir: Bärbar NeoPixel -skärm utlöst av luftföroreningssensor: 7 steg (med bilder)
EqualAir: Wearable NeoPixel Display Utlöst av luftföroreningssensor: Syftet med projektet är att göra en bärbar t-shirt som visar en stämningsfull grafik när luftföroreningar är över en inställd tröskel. Grafiken är inspirerad av det klassiska spelet "brick breakers", i och med att bilen är som en paddel som
Soluppgång väckarklocka (Förbättra morgonvakenhet): 13 steg
Soluppgång väckarklocka (Förbättra morgonvakenhet): Schemalägg din egen personliga soluppgång, förbättrar morgonvakenhet Senaste slumpmässiga uppfinningen, schemalägg din egen soluppgång! Under dagen ökar det blå ljuset i solljus vår uppmärksamhet, minne, energinivåer, reaktionstider och övergripande humör . Blått ljus
Soluppgång väckarklocka med LCD -display och Bluetooth -app: 8 steg
Soluppgång väckarklocka med LCD -display och Bluetooth -app: Vintertid kan vara trist. Du vaknar, det är mörkt och du måste gå upp ur sängen. Det sista du vill höra är det irriterande ljudet från din väckarklocka. Om du, precis som jag, har problem med att vakna på morgonen är den här väckarklockan precis vad du behöver. I
Soluppgång väckarklocka med Arduino: 9 steg (med bilder)
Soluppgång väckarklocka med Arduino: Vintertid kan vara trist. Du vaknar, det är mörkt och du måste gå upp ur sängen. Det sista du vill höra är det väckande ljudet från din väckarklocka. Jag bor i London och har svårt att vakna på morgonen. Jag saknar också att vakna till