W naszych domach wykorzystuje się coraz więcej urządzeń połączonych z Internetem, głównie elementów zaliczanych do Internetu Rzeczy. Te elementy automatyki domowej czynią nasze mieszkania coraz wygodniejszymi, ale też coraz bardziej zależnymi od sieci - gdy jej zabraknie, cała ta inteligentna automatyka nie będzie działać.
Pierwszy problem polega na tym, iż urządzenia IoT w momencie, gdy nie są podpięte do sieci, są zasadniczo bezużyteczne. Autor poniższego projektu ma w swojej sieci domowej szereg Sonoffów, a także kilka timerów IoT zarządzających szeregiem urządzeń. Systemy, które kontrolowane są przez sieć to między innymi:
* Pompa w basenie,
* Pompa do napełniania basenu,
* Pompka uzupełniająca psu wodę,
* Alarm zintegrowany z bramką do basenu,
* Szereg świateł w całym domu.
Wszystkie te urządzenia potrzebują do poprawnego działania m.in. dostępu do aktualnego czasu, który jest kolportowany normalnie przez sieć. Ta kwestia była pierwszym problemem, jaki pojawił się w momencie, gdy sieć autora projektu odłączona została do Internetu. By go rozwiązać konieczna była instalacja serwera czasu NTP w sieci lokalnej.
Drugim problemem związanym z dużą ilością urządzeń IoT w domu - większość z nich korzysta z lokalnej sieci bezprzewodowej (Wi-Fi), która niestety ma ograniczony zasięg. Aby go zwiększyć instaluje się często wiele routerów w sieci lub proste repeatery, zwiększające zasięg. Poprawia to dostępność sieci, ale z drugiej strony zwiększa awaryjność takiego systemu, z uwagi na zależność od poprawnego funkcjonowania wielu urządzeń.
Trzecim problemem jest fakt, że urządzenia Internetu Rzeczy są często instalowane poza zasięgiem naszego wzroku, co utrudnia możliwość monitorowania ich działania. Nie wiemy, czy spełnia one swoje zadanie i działa poprawnie, na przykład czy pompa w basenie działa wtedy, gdy powinna. Takie coś zauważyć można dopiero po kilku dniach, gdy basen będzie już widocznie brudny, a co za tym idzie - będzie wymagał dużo więcej czyszczenia, dlatego też warto wiedzieć o awarii takiej pompy odpowiednio wcześniej.
Rozwiązanie jest proste - co jakiś czas logujmy się manualnie do naszych systemów IoT, by sprawdzić czy działają lub wręcz samodzielnie sprawdzajmy poprawność ich funkcjonowania...
...albo skonstruujmy kolejne urządzenie Internetu Rzeczy, którego zadaniem będzie kontrolowanie innych urządzeń w domowej sieci. Z takiego właśnie założenia wyszedł autor opisanego poniżej projektu - monitora domowej sieci LAN i urządzeń, jakie się w niej znajdują.
System jest bardzo prosty - układy posiadają szereg diod LED o wysokiej jasności, które w czytelny sposób informują o poprawności działania oraz wyświetlacz LCD podający, jakie awarie wystąpiły w sieci. Układ łączy się z urządzeniami w sieci i nadzoruje ich działanie. Wszystko konfigurować można przez sieć.
Krok 1: Schemat urządzenia
Aby połączyć się z siecią lokalną, system korzysta z połączenia bezprzewodowego (Wi-Fi) z poziomu modułu Wemos D1 mini. D1 Mini pinga urządzenia IoT w naszej sieci w konfigurowalny sposób. Sam system jest niezwykle prosty i składa się a następujących elementów:
* Moduł Wemos D1 mini lub ekwiwalent,
* Wyświetlacz LCD 16x2,
* Moduł sterowania wyświetlaczem LCD na I²C,
* Trzy diody LED,
* Cztery oporniki,
* Przycisk.
Układ złożyć można na fragmencie płytki uniwersalnej. Schemat połączeń w układzie pokazano na rysunkach powyżej. Diody LED w systemie informują o statusie sieci:
* Pierwsza czerwona dioda LED informuje o statusie połączenia z Internetem,
* Druga czerwona dioda LED informuje o utracie połączenia z jednym z urządzeń IoT w sieci,
* Zielona dioda LED informuje o poprawności działania samego monitora - kontrola najwyższą formą zaufania.
Krok 2: Programowanie modułu Wemos D1 Mini
Programowanie modułu D1 Mini jest niezwykle proste, jako że układ ma złącze USB, służące do programowania. Wystarczy podłączyć go do komputera i już można zaprogramować go z poziomu Arduino IDE, w którym stworzono poniższy szkic. Wystarczy przekopiować poniższy program do Arduino IDE, skompilować go i wgrać do modułu, by korzystać z monitora domowej sieci.
Autor projektu stworzył szkic w Aurduino IDE w wersji 1.8.5. W samym środowisku, by system komunikował się z modułem D1 Mini, w Tools/Boards/Boards Manager, wybrano: „esp8266 by ESP8266 Community Version 2.1.0”.
Krok 3: Podłączenie monitora sieci LAN do naszego Wi-Fi
W pierwszej kolejności podłączyć musimy nasz monitor sieci LAN do zasilania. Po uruchomieniu system zacznie mrugać zieloną diodą, a na ekranie LCD zobaczymy napis informujący o konieczności podłączenia urządzenia do sieci Wi-Fi.
W czasie 10 sekund od uruchomienia urządzenia należy nacisnąć przycisk konfiguracyjny. Wtedy na LCD zobaczymy napis „Setup Network”. Teraz nasz monitor sieci LAN ustawiony jest jako Access Point i możemy podłączyć się do jego Wi-Fi np. z smartfona lub komputera PC. SSID tej sieci to "Network Monitor”, a hasło to “password”. Otwieramy przeglądarkę i wchodzimy na stronę pod adresem IP 192.168.4.1. To domyślne IP, pod którym znajdziemy stronę konfiguracyjną monitora sieci LAN, gdzie ustawić możemy wszystkie parametry monitora.
Po wejściu na stronę wybieramy „Configure WiFi”, a tam pokaże nam się lista dostępnych sieci Wi-Fi. Wybieramy sieć, do której podłączony ma być nasz monitor. Podajemy tutaj także hasło do sieci, adres bramy sieciowej i maskę podsieci. Teraz naciskamy „save”, by zapisać nowe ustawienia.
Po wprowadzeniu nowych ustawień, monitor podłączy się do sieci Wi-Fi, rozłączając nasze urządzenie, z którego konfigurowaliśmy połączenie z siecią bezprzewodową. Powinniśmy zresetować teraz monitor. Po resecie układ powinien automatycznie połączyć się z Wi-Fi, a na LCD powinna wyświetlić się informacja o połączeniu się z siecią.
Krok 4: Konfigurowanie lokalnych urządzeń, które mają być monitorowane
Teraz możemy skonfigurować jakie urządzenia w sieci lokalnej wymagają monitorowania. Wykorzystując przeglądarkę internetową wchodzimy na adres IP monitora, by wejść na stronę konfiguracyjną. W pierwszej kolejności wchodzimy do zakładki „Local Network”.
Do każdego urządzenia przyporządkować należy krótką nazwę oraz jego numer IP. Wszystkim urządzeniom można niezależnie włączać i wyłączać monitorowanie w dowolnym momencie. Po ustawieniu wszystkich parametrów klikamy na przycisk „save”, a wprowadzone ustawienia zostaną zapisane w urządzeniu.
W momencie, gdy którekolwiek z urządzeń przestanie odpowiadać, na monitorze zapali się czerwona dioda „LAN Fault”. Na wyświetlaczu LCD przewijać będą się nazwy każdego urządzenia, którego monitor nie może odnaleźć (przez 2 sekundy jedna nazwa). Status urządzeń sprawdzać można także poprzez interfejs sieciowy.
Krok 5: Konfiguracja sprawdzania połączenia z Internetem
Urządzenie to jest w stanie także monitorować połączenie sieci LAN z Internetem. Aby skonfigurować sposób monitorowania połączenia z Internetem, wchodzimy w zakładkę „Internet” w panelu konfiguracyjnym.
Tutaj także podajemy krótki opis i adres strony do monitorowania. Można wprowadzić do 5 pozycji w tym menu. Monitorowanie każdej ze stron włącza i wyłącza się niezależnie. Po wprowadzeniu ustawień naciskamy „save”, by zapisać ustawienia.
Uwaga Strony nie są monitorowane niezależnie. Jeżeli co najmniej jedna z nich działa i odpowiada na ping, to system uznaje, że połączenie z Internetem działa poprawnie. Tylko jeżeli żadna ze stron nie będzie odpowiadała na ping, zapali się druga czerwona dioda - „WWW Fault”.
Krok 6: Konfiguracja monitora
W zakładce “Config” znajdziemy ustawienia lokalnej sieci oraz połączenia z Internetem. Wszystkie mogą być niezależnie edytowane.
Wybrać można, ile skanów (czy pingów) wykona monitor, zanim podniesiony zostanie alarm – wszystko po to, by zapewnić wysoką niezawodność systemu. Warto pamiętać, że niektóre urządzenia IoT nie odpowiadają na ping za każdym razem.
W menu wybrać można także interwał pomiędzy poszczególnymi skanami, by dobrać go do naszych preferencji.
Auto projektu podpowiada, że w jego sieci pingi najlepiej sprawdzają się wysyłane co minutę. Pięć pingów be odpowiedzi uruchamia alarm – takie ustawienia nie powodowały powstawania fałszywych alarmów w monitorowanej sieci.
Jeśli chodzi o strony internetowe, to autor konstrukcji sugeruje, by monitorować pięć ogólnodostępnych stron www, sprawdzając ich dostępność co jedną minutę. W ten sposób mamy pewność, że co najmniej jedna odpowie za każdym razem, tak długo, jak dostępny jest Internet.
Dodatkowo, skonfigurować można podświetlenie wyświetlacza LCD. W ten sposób np. w przypadku awarii urządzenie może zmieniać tryb działania podświetlenia, by informować użytkownika o wystąpieniu danej awarii.
Po skonfigurowaniu monitor należy umieści w widocznym miejscu, by łatwo było dostrzec, że coś poszło nie tak i jakieś z urządzeń w sieci LAN przestało poprawnie działać.
Krok 7: Obudowa z druku 3D
Początkowo urządzenie umieszczone było w obudowie uniwersalnej o wymiarach 60 mm x 110 mm, jednakże okazało się, że po dodaniu wszystkich elementów w układzie, obudowa była zbyt płytka, by pomieścić cały układ – brakowało około 10 mm.
Dlatego też autor, korzystając z Fusion 360 stworzył projekt własnej obudowy do swojego monitora sieciowego. Następnie obudowa wydrukowana została na drukarce 3D Velleman 8200 z wykorzystaniem filamentu o średnicy 3 mm.
Na stronie źródłowej autor projektu umieścił pliki STL i Fusion 360 z projektem obudowy do druku 3D.
Źródło: https://www.instructables.com/id/LANNetwork-Monitor/
Pierwszy problem polega na tym, iż urządzenia IoT w momencie, gdy nie są podpięte do sieci, są zasadniczo bezużyteczne. Autor poniższego projektu ma w swojej sieci domowej szereg Sonoffów, a także kilka timerów IoT zarządzających szeregiem urządzeń. Systemy, które kontrolowane są przez sieć to między innymi:
* Pompa w basenie,
* Pompa do napełniania basenu,
* Pompka uzupełniająca psu wodę,
* Alarm zintegrowany z bramką do basenu,
* Szereg świateł w całym domu.
Wszystkie te urządzenia potrzebują do poprawnego działania m.in. dostępu do aktualnego czasu, który jest kolportowany normalnie przez sieć. Ta kwestia była pierwszym problemem, jaki pojawił się w momencie, gdy sieć autora projektu odłączona została do Internetu. By go rozwiązać konieczna była instalacja serwera czasu NTP w sieci lokalnej.
Drugim problemem związanym z dużą ilością urządzeń IoT w domu - większość z nich korzysta z lokalnej sieci bezprzewodowej (Wi-Fi), która niestety ma ograniczony zasięg. Aby go zwiększyć instaluje się często wiele routerów w sieci lub proste repeatery, zwiększające zasięg. Poprawia to dostępność sieci, ale z drugiej strony zwiększa awaryjność takiego systemu, z uwagi na zależność od poprawnego funkcjonowania wielu urządzeń.
Trzecim problemem jest fakt, że urządzenia Internetu Rzeczy są często instalowane poza zasięgiem naszego wzroku, co utrudnia możliwość monitorowania ich działania. Nie wiemy, czy spełnia one swoje zadanie i działa poprawnie, na przykład czy pompa w basenie działa wtedy, gdy powinna. Takie coś zauważyć można dopiero po kilku dniach, gdy basen będzie już widocznie brudny, a co za tym idzie - będzie wymagał dużo więcej czyszczenia, dlatego też warto wiedzieć o awarii takiej pompy odpowiednio wcześniej.
Rozwiązanie jest proste - co jakiś czas logujmy się manualnie do naszych systemów IoT, by sprawdzić czy działają lub wręcz samodzielnie sprawdzajmy poprawność ich funkcjonowania...
...albo skonstruujmy kolejne urządzenie Internetu Rzeczy, którego zadaniem będzie kontrolowanie innych urządzeń w domowej sieci. Z takiego właśnie założenia wyszedł autor opisanego poniżej projektu - monitora domowej sieci LAN i urządzeń, jakie się w niej znajdują.
System jest bardzo prosty - układy posiadają szereg diod LED o wysokiej jasności, które w czytelny sposób informują o poprawności działania oraz wyświetlacz LCD podający, jakie awarie wystąpiły w sieci. Układ łączy się z urządzeniami w sieci i nadzoruje ich działanie. Wszystko konfigurować można przez sieć.
Krok 1: Schemat urządzenia
Aby połączyć się z siecią lokalną, system korzysta z połączenia bezprzewodowego (Wi-Fi) z poziomu modułu Wemos D1 mini. D1 Mini pinga urządzenia IoT w naszej sieci w konfigurowalny sposób. Sam system jest niezwykle prosty i składa się a następujących elementów:
* Moduł Wemos D1 mini lub ekwiwalent,
* Wyświetlacz LCD 16x2,
* Moduł sterowania wyświetlaczem LCD na I²C,
* Trzy diody LED,
* Cztery oporniki,
* Przycisk.
Układ złożyć można na fragmencie płytki uniwersalnej. Schemat połączeń w układzie pokazano na rysunkach powyżej. Diody LED w systemie informują o statusie sieci:
* Pierwsza czerwona dioda LED informuje o statusie połączenia z Internetem,
* Druga czerwona dioda LED informuje o utracie połączenia z jednym z urządzeń IoT w sieci,
* Zielona dioda LED informuje o poprawności działania samego monitora - kontrola najwyższą formą zaufania.
Krok 2: Programowanie modułu Wemos D1 Mini
Programowanie modułu D1 Mini jest niezwykle proste, jako że układ ma złącze USB, służące do programowania. Wystarczy podłączyć go do komputera i już można zaprogramować go z poziomu Arduino IDE, w którym stworzono poniższy szkic. Wystarczy przekopiować poniższy program do Arduino IDE, skompilować go i wgrać do modułu, by korzystać z monitora domowej sieci.
Autor projektu stworzył szkic w Aurduino IDE w wersji 1.8.5. W samym środowisku, by system komunikował się z modułem D1 Mini, w Tools/Boards/Boards Manager, wybrano: „esp8266 by ESP8266 Community Version 2.1.0”.
Kod: C / C++
Krok 3: Podłączenie monitora sieci LAN do naszego Wi-Fi
W pierwszej kolejności podłączyć musimy nasz monitor sieci LAN do zasilania. Po uruchomieniu system zacznie mrugać zieloną diodą, a na ekranie LCD zobaczymy napis informujący o konieczności podłączenia urządzenia do sieci Wi-Fi.
W czasie 10 sekund od uruchomienia urządzenia należy nacisnąć przycisk konfiguracyjny. Wtedy na LCD zobaczymy napis „Setup Network”. Teraz nasz monitor sieci LAN ustawiony jest jako Access Point i możemy podłączyć się do jego Wi-Fi np. z smartfona lub komputera PC. SSID tej sieci to "Network Monitor”, a hasło to “password”. Otwieramy przeglądarkę i wchodzimy na stronę pod adresem IP 192.168.4.1. To domyślne IP, pod którym znajdziemy stronę konfiguracyjną monitora sieci LAN, gdzie ustawić możemy wszystkie parametry monitora.
Po wejściu na stronę wybieramy „Configure WiFi”, a tam pokaże nam się lista dostępnych sieci Wi-Fi. Wybieramy sieć, do której podłączony ma być nasz monitor. Podajemy tutaj także hasło do sieci, adres bramy sieciowej i maskę podsieci. Teraz naciskamy „save”, by zapisać nowe ustawienia.
Po wprowadzeniu nowych ustawień, monitor podłączy się do sieci Wi-Fi, rozłączając nasze urządzenie, z którego konfigurowaliśmy połączenie z siecią bezprzewodową. Powinniśmy zresetować teraz monitor. Po resecie układ powinien automatycznie połączyć się z Wi-Fi, a na LCD powinna wyświetlić się informacja o połączeniu się z siecią.
Krok 4: Konfigurowanie lokalnych urządzeń, które mają być monitorowane
Teraz możemy skonfigurować jakie urządzenia w sieci lokalnej wymagają monitorowania. Wykorzystując przeglądarkę internetową wchodzimy na adres IP monitora, by wejść na stronę konfiguracyjną. W pierwszej kolejności wchodzimy do zakładki „Local Network”.
Do każdego urządzenia przyporządkować należy krótką nazwę oraz jego numer IP. Wszystkim urządzeniom można niezależnie włączać i wyłączać monitorowanie w dowolnym momencie. Po ustawieniu wszystkich parametrów klikamy na przycisk „save”, a wprowadzone ustawienia zostaną zapisane w urządzeniu.
W momencie, gdy którekolwiek z urządzeń przestanie odpowiadać, na monitorze zapali się czerwona dioda „LAN Fault”. Na wyświetlaczu LCD przewijać będą się nazwy każdego urządzenia, którego monitor nie może odnaleźć (przez 2 sekundy jedna nazwa). Status urządzeń sprawdzać można także poprzez interfejs sieciowy.
Krok 5: Konfiguracja sprawdzania połączenia z Internetem
Urządzenie to jest w stanie także monitorować połączenie sieci LAN z Internetem. Aby skonfigurować sposób monitorowania połączenia z Internetem, wchodzimy w zakładkę „Internet” w panelu konfiguracyjnym.
Tutaj także podajemy krótki opis i adres strony do monitorowania. Można wprowadzić do 5 pozycji w tym menu. Monitorowanie każdej ze stron włącza i wyłącza się niezależnie. Po wprowadzeniu ustawień naciskamy „save”, by zapisać ustawienia.
Uwaga Strony nie są monitorowane niezależnie. Jeżeli co najmniej jedna z nich działa i odpowiada na ping, to system uznaje, że połączenie z Internetem działa poprawnie. Tylko jeżeli żadna ze stron nie będzie odpowiadała na ping, zapali się druga czerwona dioda - „WWW Fault”.
Krok 6: Konfiguracja monitora
W zakładce “Config” znajdziemy ustawienia lokalnej sieci oraz połączenia z Internetem. Wszystkie mogą być niezależnie edytowane.
Wybrać można, ile skanów (czy pingów) wykona monitor, zanim podniesiony zostanie alarm – wszystko po to, by zapewnić wysoką niezawodność systemu. Warto pamiętać, że niektóre urządzenia IoT nie odpowiadają na ping za każdym razem.
W menu wybrać można także interwał pomiędzy poszczególnymi skanami, by dobrać go do naszych preferencji.
Auto projektu podpowiada, że w jego sieci pingi najlepiej sprawdzają się wysyłane co minutę. Pięć pingów be odpowiedzi uruchamia alarm – takie ustawienia nie powodowały powstawania fałszywych alarmów w monitorowanej sieci.
Jeśli chodzi o strony internetowe, to autor konstrukcji sugeruje, by monitorować pięć ogólnodostępnych stron www, sprawdzając ich dostępność co jedną minutę. W ten sposób mamy pewność, że co najmniej jedna odpowie za każdym razem, tak długo, jak dostępny jest Internet.
Dodatkowo, skonfigurować można podświetlenie wyświetlacza LCD. W ten sposób np. w przypadku awarii urządzenie może zmieniać tryb działania podświetlenia, by informować użytkownika o wystąpieniu danej awarii.
Po skonfigurowaniu monitor należy umieści w widocznym miejscu, by łatwo było dostrzec, że coś poszło nie tak i jakieś z urządzeń w sieci LAN przestało poprawnie działać.
Krok 7: Obudowa z druku 3D
Początkowo urządzenie umieszczone było w obudowie uniwersalnej o wymiarach 60 mm x 110 mm, jednakże okazało się, że po dodaniu wszystkich elementów w układzie, obudowa była zbyt płytka, by pomieścić cały układ – brakowało około 10 mm.
Dlatego też autor, korzystając z Fusion 360 stworzył projekt własnej obudowy do swojego monitora sieciowego. Następnie obudowa wydrukowana została na drukarce 3D Velleman 8200 z wykorzystaniem filamentu o średnicy 3 mm.
Na stronie źródłowej autor projektu umieścił pliki STL i Fusion 360 z projektem obudowy do druku 3D.
Źródło: https://www.instructables.com/id/LANNetwork-Monitor/
Fajne? Ranking DIY
