Kto to taki? Święty Mikołaj? A jak on do nas dotrze?
W trakcie burzy mózgów wraz z kolegami uświadomiliśmy sobie, że budynek SOS electronic w Koszycach nie posiada komina (burza mózgów to bardzo przydatna rzecz!). To był szok, ponieważ Mikołaj nie będzie mógł dostać się do budynku w Boże Narodzenie, a więc nie przyniesie nam prezentów i nie zapali lampek na choince. I co teraz?
Postanowiłem uratować chociaż drzewko. Podłączę je do sieci, dzięki czemu nasi klienci będą mogli zapalić lampki i rozświetlić ten szczególny czas za pośrednictwem internetu - zamiast Mikołaja. Prezenty uratował nasz szef - dzięki wypłacie.
Jakie podzespoły wykorzystałem?
- Moduł WiFi ESP8266
- Specjalne świąteczne oświetlenie LED ze sterownikami WS2811
- Raspberry B v3
- Kamera Raspberry (aby wszyscy mogli zobaczyć, że drzewko naprawdę się rozbłysnęło światełkami)
- Sztuczna choinka
- Pudełko świątecznych dekoracji
W pierwszej fazie projektu sprawdziłem, jakie korzyści można zyskać w wyniku połączenia modułu WiFi ESP8266 ze sterownikami LED WS2811. Ale czy zdołam dokonać czegoś wyjątkowego?
Udało mi się włączyć diody LED i sprawić, aby migały, ale tylko w domu, na stole. Sieć WiFi w SOS electronic nie działa w ten sposób. Moduł ESP8266 zawieszał się i nie odpowiadał - musiałem go restartować. Gdzie tkwił problem? Co dalej? Biblioteki Arduino?
Po godzinach eksperymentowania i debugowania kodu, lampka zaświeciła się. Nie, jeszcze nie na drzewku! W SOS do sieci podłączonych jest sto urządzeń. To naprawdę bardzo ruchliwa sieć. Dlatego chciałem podłączyć moduł do oddzielnej sieci WiFi. Administrator skonfigurował mój router WiFi, ale i to nie pomogło.
Później zauważyłem, że ten wyżej wspomniany „router WiFi” to po prostu zwykły punkt dostępu działający w trybie mostka (pozdrawiam kolegę:). Tak więc cały ruch w sieci był kierowany także na moduł WiFi, który czasami nie był w stanie nadążyć za procesorem taktowanym 80Mhz. Jedną z opcji było wyrzucenie ESP8266 do kosza (byłem tego całkiem bliski) i eksperymentowanie z innym modułem, na przykład z ESP32. Wyposażony jest on w 2 procesory z magistralą 260MHz. A może trzeba było użyć Lantronix, profesjonalnych rozwiązań AAEON. No cóż, strzelać z armaty do wróbla? W końcu udało mi się rozwiązać problem za pomocą normalnego routera WiFi z obsługą NAT.
A co z obrazem video na żywo?
Raspberry Pi z kamerą okazał się strzałem w dziesiątkę. Strumieniowanie wideo z SOS electronic na żywo bezpośrednio do internetu za pomocą otwartego portu lub eksperymentowanie z proxy gdzieś w centrum danych, rozwiązanie w postaci odtwarzacza video HTML/JS przeglądarce?
Pogooglowałem nieco i odkryłem YouTube Live. Ustawienie było bardzo proste. Otrzymałem doskonały obraz w full HD oraz stosunkowo niewielki przepływ danych, ale przekaz „na żywo” nie był tak naprawdę przekazem „na żywo”. Opóźnienie wideo wynosiło 10 sekund lub więcej, o wiele za dużo w moim projekcie.
Po przeczytaniu chyba połowy informacji zamieszczonych w internecie znalazłem czeską usługę strumieniowania wideo AngelCam. Stosunek obrazu do przepływu danych był gorszy, ale nadal akceptowalny (kompresja MJPG), opóźnienie 1-2 sekundy. Tak więc „wideo na żywo” prezentujące drzewko z SOS było strumieniowane poprzez AngelCam.
Co mogę dodać na koniec? Projekt wyglądał na bardzo prosty, a mimo to wiele się dzięki niemu nauczyłem.
Pozdrowienia - Matúš Čopík, autor
PS: Przygotujcie się na kolejne Święta z SOS electronic!
It looks so easy and yet I still learned so much during its creation. What did I use for it? - ESP8266 WiFi module - Special Christmas LED lighting with WS2811 drivers - Raspberry B v3 - Raspberry camera (for everyone to see that the tree is really lighting up) Greetings from Matúš Čopík, author https://www.soselectronic.com/articles/no-name/technical-background-of-iot-tree-competition-2119
Zadanie:
Bardzo podobała nam się choinka w okresie świąt Bożego Narodzenia, a teraz – prezent. Ile było diod LED na naszym drzewku? Spośród wszystkich poprawnych odpowiedzi wylosujemy dwóch zwycięzców, którym przekażemy płytki uruchomieniowe Esp32-DevKitC.
Dziękujemy za udział w konkursie i wszystkie nadesłane odpowiedzi
- otrzymaliśmy ich dokładnie 45
Poprawna odpowiedź brzmi: 50 diod LED. Z puli wszystkich poprawnych odpowiedzi wylosowany został zwycięzca, L. Tamás z Węgier i J. Michal z Słowacji.
Gratulujemy!
Czy spodobały Ci się nasze artykuły? Nie przegap żadnego! Zajmiemy się wszystkim za Ciebie i chętnie sami Ci je dostarczymy.