Obsah:

UCL-lloT-Outdoor-light Spouští východ/západ slunce: 6 kroků
UCL-lloT-Outdoor-light Spouští východ/západ slunce: 6 kroků

Video: UCL-lloT-Outdoor-light Spouští východ/západ slunce: 6 kroků

Video: UCL-lloT-Outdoor-light Spouští východ/západ slunce: 6 kroků
Video: Kevin rates three of UCL’s most popular study spots 2024, Červenec
Anonim
UCL-lloT-Outdoor-light Spouští východ/západ slunce
UCL-lloT-Outdoor-light Spouští východ/západ slunce

Ahoj všichni! S trochou práce, některými částmi a kódem jsem sestavil tento návod, který vám od začátku do konce ukáže, jak přesně vyrobit toto venkovní světlo. Myšlenka pocházela od mého otce, který v létě musel ručně zhasnout a změnit se, když se rozsvítilo světlo. Vzhledem k rychle se měnícím časům západu a východu slunce po celý rok se zeptal, zda mohu najít automatizovaný způsob, jak to udělat. A tak jsme tady. Relativně malý projekt.

Krok 1: Seznam IO a co budete potřebovat

Seznam IO a co budete potřebovat
Seznam IO a co budete potřebovat
Seznam IO a co budete potřebovat
Seznam IO a co budete potřebovat
Seznam IO a co budete potřebovat
Seznam IO a co budete potřebovat

Arduino MEGA 2560. Přinejmenším jsem to použil, vím, že byste mohli snadno použít jiný.

DS3231 a jeho knihovna. (https://rinkydinkelectronics.com/library.php?id=73… Je důležité vědět, že piny nastavené pro SDA a SCL se liší podle toho, jaké Arduino používáte.

I052116 Modul senzoru infračerveného detektoru pohybu IR. Tento konkrétní modul lze vyměnit za vámi vybraný senzor, je to upřímně volitelné pro celou věc.

Krok 2: Vývojový diagram

Vývojový diagram
Vývojový diagram

Jak je vidět na jednoduchém vývojovém diagramu, velká část těžkých zvedání spočívá v Node-Red. S relativně jednoduchými uzly jde o to, že z Node-Red se dostanete na webovou stránku, která ví, kdy slunce zapadá a vychází. Jakmile to bude mít, odešle informace na Arduino a řekne to. Z Arduina získáme signál, který přesně indikuje, kdy jsou světla skutečně zapnutá, takže můžete zkontrolovat z vašeho domova, když světla zhasnou. Také z Arduina získáme informaci, že byl aktivován senzor přiblížení, které má světlo zapnuté xkrát.

Krok 3: Fritzování

Fritzování
Fritzování

Ve srovnání s jinými projekty je zde kabeláž poměrně jednoduchá. Musíte si uvědomit, že budete potřebovat modul WIFI, abyste udrželi kontakt se serverem Node-Red, nebo si pořídíte počítač, který bude hostovat server Node-Red, který je připojen k Arduinu. Na obrázku není znázorněno spojení mezi Arduinem a notebookem a předem se omlouvám za špatný Fritzingův obrázek!

Krok 4: Kódování

Kódování
Kódování
Kódování
Kódování

Pokud jsem něco zjistil, je to, že s Firmata (pro komunikaci Arduino s Node-Red), knihovnou DS3231 a dalšími, bylo hodně načtených knihoven. Jak bylo publikováno, kódování není zcela dokončeno, takže je zahrnut pseudokód.

Součástí knihovny z DS3231 jsou přednastavené piny pro každou desku Arduino a v případě Mega je to pin 20 a 21, protože jsou to piny SDA a SCL na mega. Jakmile jsou hodiny připojeny, lze jim přesně říci, jaký je den a o čem by měly sledovat. Zjistil jsem, že je snazší pracovat, pokud jde o sledování čísel, použití int namísto řetězce. Udělal jsem tedy to, že převedu čísla řetězce na int, ale protože int nelze použít: pro oddělení hodin jsem se místo toho rozhodl udělat něco jiného. Místo práce s hodinami budeme pracovat s minutami. Hodně minut. Pokud jsou hodiny například 13:21, nechám první dvě číslice oddělit a načasovat šedesáti. Nyní jsme na 801 minutách, protože 13 krát 60 se rovná 780 a přidáte posledních 21 minut. Pokud náš Node-Red říká, že slunce zapadá v 16:58 (v případě zimy), zapneme venkovní světla mezi 1018 minutami a předem definovanou dobou vypnutí, která bude 1380 (23:00)). Pokud je mezi nimi náš časovač, světla se rozsvítí. Výše uvedená matematika je v podstatě celý program, bez kroků k získání připojení Node-Red k Arduinu a komunikaci. Bude také použit senzor, který zajistí, že se světla zapnou (stejně jako minulé slunce), ale jinak je to celý program výše.

Krok 5: Node-Red

Node-Red
Node-Red
Node-Red
Node-Red
Node-Red
Node-Red
Node-Red
Node-Red

Není to zvlášť velký tok, ne že by to mělo být v tomto případě. První 2 řady uzlů jsou velkou částí programu. Pomocí funkce GET získáváme dnešní předpověď, jak slunce vyjde a zapadne. Odtud používáme selektor CSS k získání našich konkrétních informací, ke kterým se obvykle dostanete na webech „Inspect Elements“ve Firefoxu, jak je uvedeno na obrázcích. Pamatujte, že ne všechny weby fungují tímto způsobem a ten, který používám, funguje takto dokonale. Odtamtud bude zapisovat informace na pin 13, protože to je to, co jsem určil, aby to bylo, ačkoli testování je zatím diktovat, zda je jeden pin dostat se do různých časů funkční. Jak je popsáno v části s kódováním, informace budou přicházet z Arduina do Node-Red, kde je pak na přístupném webu uvede, kde ho lze snadno zkontrolovat. K tomu budete potřebovat Firmata, pokud si přejete používat funkce Arduina získané prostřednictvím knihovny node-red-node-arduino na Node-Red. Ačkoli ještě není zcela nastaven a bude aktualizován, jakmile dokončím projekt, připojil jsem kód pro Node-Red Flow do textového dokumentu pro snadný přístup.

Krok 6: Nasazení a použití

Nasazení a použití
Nasazení a použití

A abychom dodělali naše instruktáže, je to jejich praktická část. U několika domů s touto úrovní automatického osvětlení je mnoho majitelů domů vítáno celoroční řešení. Chcete -li to skutečně propojit s lampami pomocí elektřiny, která není Arduino, nedoporučuji to dělat sami, pokud přesně nevíte, co děláte. Až projekt skončí, převezmu tento úkol s pomocí elektrikáře, abych si byl jistý. Osvětlení vaší příjezdové cesty senzorem nebo přísně časově doporučuji, abyste navázali na to, co jsem již udělal, pokud znamená skutečně použít k použití mimo tuto testovací fázi, ve které se právě nachází. Většina mých potíží s projektem byla striktně v části Node-Red to Arduino a doufám, že se mi podařilo co nejjasněji vysvětlit, jak to je hotovo.

Doporučuje: