wtorek, 4 września 2018

BLYNK - opis ogólny systemu


Zacząłem trochę od końca więc może po kolei.
BLYNK podobnie jak większość systemów IoT składa się zasadniczo z trzech elementów
  • aplikacji w telefonie/tablecie
  • serwera BLYNK zarządzającego systemem
  • aplikacji klienta w mikrokontrolerze/urządzeniu końcowym
Łącznikiem między tymi częściami jest oczywiście Internet
Czym więc jest znamienny ten system, że warto mu poświęcić trochę uwagi?



SERWER BLYNK
Najłatwiej opisać jest serwer BLYNKa bo w standardowej konfiguracji praktycznie nie istnieje dla użytkownika. Jest a jakoby go nie było. Nie widać go w kodzie programu i nie widać przy konfiguracji nowego konta. To wszystko dlatego, że nie musimy ustawiać żadnych parametrów dostępu do umieszczonego gdzieś w chmurze serwera. Jego istnienie widać dopiero gdy chcemy zmienić domyślne ustawienia połączenia - ale też nic konkretnego. Choć oczywiście istnieje pod adresem blynk-cloud.com. Warto zapamiętać bo przyda nam się w przyszłości do kilku ciekawych eksperymentów.
Custom server icon
Nie mamy więc wprost dostępu do publicznego serwera. To pierwsza różnica z innymi systemami IoT. Wszystko co mamy zrobić by uruchomić BLYNKa dzieje się bądź w aplikacji w telefonie (APP) bądź w bibliotekach BLYNKa (BB) zainstalowanych na naszym sprzęcie. Brak jest typowego panelu zarządzania systemem gdzie poprzez bezpośrednie zmiany na serwerze następuje konfiguracja jego poszczególnych elementów. Wszystko zrobimy w telefonie lub w kodzie programu. Trochę to dziwne na początku ale szybko docenimy tą filozofię - tak zbudowany system nie wymaga żadnych dodatkowych elementów czy programów poza tymi jakie używa się w normalnym działaniu.
Jak więc dostajemy się do systemu? Aplikacją w telefonie. Ona nam zakłada konto na serwerze. Nią też tworzymy kolejne projekty z przydzielonym kodem AUTH o funkcji podobnej do MAC adresu. Z tą różnicą że wszystkie elementy systemu w danym projekcie mają ten sam kod AUTH.
Jest i druga zasadnicza różnica z innymi systemami IoT. Kod serwera jest ogólnie dostępny i banalnie prosty do zainstalowania na własnym serwerze lub nawet komputerze w domowej sieci lub w chmurze. Instalacja takiego serwera trwa standardowe (dla BLYNKa) 5 min. I już po chwili mamy swój, autonomiczny i całkowicie darmowy system IoT. Pokażcie mi drugi taki system!!! Wiem wiem - kod prywatnego serwera różni się nieco od tego dostępnego publicznie - ale nie są to różnice istotne  z punktu widzenia użytkownika hobbysty. Ograniczenia dotyczą głównie ułatwień jakie wprowadzono dla komercyjnego wykorzystania BLYNKa w oparciu o publiczny serwer. Ale dozwolone jest stosowanie prywatnych lokalnych serwerów dla własnych projektów komercyjnych - i znowu całkowicie za free! Jeśli ktoś umie i potrafi może sobie dowolnie zmieniać i dopasowywać zarówno kod serwera i kody bibliotek. Pełna otwartość.
Pozostałe dwa elementy systemu - aplikacje mobilne i biblioteki dla urządzeń są identyczne dla wszystkich użytkowników systemu.
APLIKACJA NA TELEFON/TABLET
Aplikacje na telefon/tablet dostępne są dla systemu Android i IOS. Nie ma i według twórców nie będzie aplikacji na mobilnego Windowsa. Nie ma też specjalnej aplikacji do uruchomienia na komputerze z Windowsem Makiem czy Linuxem. Ale to żaden problem - dziesiątki emulatorów Androida rozwiązuje tą potrzebę bez bólu. Większość zdjęć i filmów w tym serwisie ukazujących BLYNKa na ekranie telefonu jest nagraniem z emulatora.
Jeśli korzystamy z publicznego serwera aplikacja pozwala autorom BLYNKa zarabiać. Na poziomie kilkunastu- kilkudziesięciu złotych od użytkownika. Czy to dużo? Ja nie lubię płacić więc szybko zainstalowałem sobie swój własny serwer BLYNKa i wszystko mam za darmo. Ale nie ma co ukrywać wygoda z użytkowania publicznego serwera jest duża. Dostęp do systemu z każdego miejsca na świecie i najnowsza wersja oprogramowania to coś co zapewnia nam publiczny serwer. Swój musimy umieć bezpiecznie otworzyć na świat i od czasu do czasu aktualizować. Ale są i plusy - mamy pełną kontrolę nad całym systemem, możemy go dowolnie (jeśli umiemy) skonfigurować, robić kopie zapasowe, testować do bólu bez obaw utraty projektów czy pieniędzy. Do nas wiec należy wybór - wygoda czy pieniądze.

Aplikacja jest najszybciej zmieniającym się elementem systemu. Z każdym miesiącem przybywa widgetów, pojawiają się nowe funkcje. Ale aplikacja to jedyny nie upubliczniony element BLYNKa - niestety.
BIBLIOTEKI URZĄDZEŃ
Ostatni ze składników systemu BLYNK - biblioteki na urządzenia końcowe - jest właśnie tym za co lubię BLYNKa najbardziej. Jak wspominałem pomysłem na nowy system IoT  była idea Arduino - "mikroprocesor dla każdego'. Jej przedłużeniem, twórczym rozwinięciem jest  "mikroprocesor i Internet dla każdego". To ogromny skok jakościowy porównywalny do tego gdy na biurku stał samotny PCet z procesorem INTEL 80286 a współczesnym notebookiem z bezprzewodowym dostępem do Internetu. I nie chodzi tu o liczbę tranzystorów w proceszorze (wtedy 100 tys a dziś kilka miliardów) ale o potężne możliwości sieci i Internetu. Podobnie jest z mikroprocesorem. Przewaga usieciowionego Arduino w stosunku do samotnego UNO jest kosmiczna. No i ta niebywała łatwość tworzenia takich Internetowych struktur !!!
BLYNK wyszedł od Arduino i środowiska open source. Ale idzie dalej jak burza. Jak podają twórcy sytemu BLYNK obejmuje już dzianiem kilkaset modułów i platform i praktycznie wszystkie popularne interface do sieci. Dziś najbardziej popularnym procesorem staje się bez wątpienia ESP8266. Potężny procesor, Pełne WiFi, wsparcie Arduino i oczywiście BLYNKa czynią go niezastąpionego w domowych projektach. A od chwili uzyskania wszelkich europejskich certyfikatów - szalenie atrakcyjną alternatywą dla innych marek komercyjnych mikroprocesorów. Jego następca - ESP-32 - dwurdzeniowy 240 MHz procesor z WiFi i Bluetoothem kosztuje już tylko dwa razy więcej niż klasyczny ESP8266. I jest także obsługiwany przez BLYNKa.
BLYNK jest w pełni zintegrowany z Arduino IDE. I w wyborze modułów obsługiwanych przez Arduino i w udostępnieniu setek przykładów do natychmiastowego zastosowania.
Zapraszam więc na fascynująca przygodę z internetowymi mikroprocesorami. A przewodnikiem wycieczki będzie oczywiście BLYNK.
UWAGA: treść wpisów będzie modyfikowana na bieżąco w miarę pozyskiwania wiedzy i zmian w samym systemie BLYNK.
6

2 komentarze: