Spisu treści:

UCL-lloT-Światło zewnętrzne wyzwalane przez wschód/zachód słońca.: 6 kroków
UCL-lloT-Światło zewnętrzne wyzwalane przez wschód/zachód słońca.: 6 kroków

Wideo: UCL-lloT-Światło zewnętrzne wyzwalane przez wschód/zachód słońca.: 6 kroków

Wideo: UCL-lloT-Światło zewnętrzne wyzwalane przez wschód/zachód słońca.: 6 kroków
Wideo: Paradigm Shift, Ghost Particles, Constructor Theory | Chiara Marletto 2024, Lipiec
Anonim
UCL-lloT-Światło zewnętrzne Wyzwalane przez wschód/zachód słońca
UCL-lloT-Światło zewnętrzne Wyzwalane przez wschód/zachód słońca

Witam wszystkich! Przy odrobinie pracy, niektórych części i kodu zebrałem tę instrukcję, która pokaże Ci od początku do końca, jak dokładnie wyprodukować to światło zewnętrzne. Pomysł wyszedł od mojego ojca, który latem musiał ręcznie wychodzić i zmieniać, gdy paliło się światło. Ze względu na szybko zmieniające się pory zachodu i wschodu słońca przez cały rok, zapytał, czy mógłbym znaleźć automatyczny sposób na zrobienie tego. I tak jesteśmy tutaj. Stosunkowo mały projekt.

Krok 1: Lista IO i to, czego będziesz potrzebować

Lista IO i to, czego potrzebujesz
Lista IO i to, czego potrzebujesz
Lista IO i to, czego potrzebujesz
Lista IO i to, czego potrzebujesz
Lista IO i to, czego potrzebujesz
Lista IO i to, czego potrzebujesz

Arduino MEGA 2560. Tego przynajmniej używałem, wiem, że bez problemu można by użyć innego.

DS3231 i jego biblioteka. (https://rinkydinkelectronics.com/library.php?id=73… Ważne jest, aby wiedzieć, że zestaw pinów dla SDA i SCL różni się w zależności od używanego Arduino.

I052116 Moduł czujnika ruchu na podczerwień na podczerwień. Ten konkretny moduł można wymienić na wybrany przez Ciebie czujnik, jest to naprawdę opcjonalne do całości.

Krok 2: Schemat blokowy

Schemat blokowy
Schemat blokowy

Jak widać na prostym schemacie blokowym, znaczna część ciężkiego podnoszenia znajduje się w czerwonym węźle. Przy stosunkowo prostych węzłach chodzi o to, że z Node-Red dotrzesz do strony internetowej, która wie, o której godzinie zachodzi i wschodzi słońce. Gdy już to zrobi, wyśle informacje do Arduino, mówiąc o tym. Z Arduino dostaniemy sygnał, który dokładnie wskazuje, kiedy światła są faktycznie włączone, dzięki czemu możesz sprawdzić z domu, kiedy światła się wypalają. Również z Arduino dostaniemy informację, że czujnik zbliżeniowy został aktywowany, który ma włączone światło przez x czas.

Krok 3: Spiekanie

Pieczenie
Pieczenie

W porównaniu z innymi projektami okablowanie jest tutaj dość proste. Musisz mieć świadomość, że będziesz potrzebować modułu WIFI, aby utrzymać kontakt z serwerem Node-Red, lub uzyskać komputer jednorazowy do hostowania serwera Node-Red, który jest podłączony do Arduino. Nie pokazane na zdjęciu jest połączenie między Arduino a laptopem i z góry przepraszam za kiepski obraz Fritzing!

Krok 4: Kodowanie

Kodowanie
Kodowanie
Kodowanie
Kodowanie

Jeśli jest jedna rzecz, którą znalazłem, to to, że z Firmata (do komunikacji Arduino z Node-Red), biblioteką DS3231 i nie tylko, było dużo załadowanych bibliotek. W momencie publikacji kodowanie nie jest jeszcze ukończone, więc dołączony jest pseudokod.

W bibliotece DS3231 znajdują się wstępnie ustawione piny dla każdej z płyt Arduino, aw przypadku Mega są to piny 20 i 21, ponieważ są to piny SDA i SCL w mega. Po podłączeniu zegar może dokładnie określić, jaki jest dzień i co powinien śledzić. To, co okazało się łatwiejsze w pracy, jeśli chodzi o śledzenie liczb, to użycie int zamiast string. Więc zrobiłem to, że przekonwertowałem liczby w łańcuchu na int, ale ponieważ int nie może użyć: do oddzielenia zegara, postanowiłem zrobić coś innego. Zamiast pracować z godzinami, będziemy pracować z minutami. Wiele minut. Jeśli zegar jest na przykład 13:21, pierwsze dwie cyfry będą oddzielone i ustawione na sześćdziesiąt. Mamy teraz 801 minut, ponieważ 13 razy 60 równa się 780 i dodajesz ostatnie 21 minut. Jeśli nasz Node-Red mówi, że słońce zachodzi o 16:58 (w przypadku zimy), światło zewnętrzne włącza się między 1018 minutami a wcześniej zdefiniowanym czasem wyłączenia, który wyniesie 1380 (23:00)). Jeśli nasz zegar znajduje się między nimi, włączają się światła. Powyższa matematyka to w zasadzie cały program, bez etapów uzyskiwania połączenia Node-Red z Arduino i komunikacji. Będzie również używany czujnik, który zapewnia włączenie świateł (w każdym razie po zachodzie słońca), ale poza tym jest to cały program powyżej.

Krok 5: Węzeł-czerwony

Węzeł-czerwony
Węzeł-czerwony
Węzeł-czerwony
Węzeł-czerwony
Węzeł-czerwony
Węzeł-czerwony
Węzeł-czerwony
Węzeł-czerwony

Nie jest to szczególnie duży przepływ, nie musi tak być w tym przypadku. Pierwsze 2 rzędy węzłów to duża część programu. Korzystając z funkcji GET, pobieramy dzisiejszą prognozę dotyczącą wschodu i zachodu słońca. Stamtąd używamy selektora CSS, aby pobrać nasze konkretne informacje, zwykle dostępne na stronie „Sprawdź elementy” na firefoksie, jak pokazano na zdjęciach. Zwróć uwagę, że nie wszystkie strony działają w ten sposób, a ta, której używam, działa idealnie w ten sposób. Stamtąd zapisze informacje do pinu 13, ponieważ tak go wyznaczyłem, chociaż testowanie jeszcze nie dyktuje, czy jeden pin docierający do różnych czasów jest wykonalny. Jak opisano w części poświęconej kodowaniu, informacje będą przychodzić z Arduino do Node-Red, gdzie następnie wskażą na dostępnej stronie internetowej, gdzie można je łatwo sprawdzić. Do tego potrzebna będzie Firmata, jeśli chcesz korzystać z funkcji Arduino nabyte przez bibliotekę node-red-node-arduino na Node-Red. Chociaż nie jest jeszcze w pełni skonfigurowany i zostanie zaktualizowany, gdy skończę projekt, załączyłem kod dla Node-Red Flow w dokumencie tekstowym dla łatwego dostępu.

Krok 6: Wdrożenie i użytkowanie

Wdrażanie i użytkowanie
Wdrażanie i użytkowanie

I dokończenie naszej instrukcji, jest praktyczną częścią tego. Ponieważ niewiele domów ma taki poziom automatycznego oświetlenia, rozwiązanie całoroczne jest mile widziane u wielu właścicieli domów. Aby faktycznie połączyć to z lampami za pomocą prądu, który nie jest Arduino, nie polecam robić tego samemu, chyba że dokładnie wiesz, co robisz. Po zakończeniu projektu podejmę się tego zadania z pomocą elektryka na wszelki wypadek. oznacza to, że faktycznie wykorzystałem go poza tą fazą testową, w której obecnie się znajduje. Większość moich problemów z projektem dotyczyła wyłącznie części Node-Red do Arduino i mam nadzieję, że udało mi się wyjaśnić tak jasno, jak to możliwe, skończone.

Zalecana: