WEMOS D1 czyli ESP8266 – kolejny krok

Serdecznie zapraszam na stronę fotoRAF – moje fotografie z ofertą dotyczącą fotografii.

W poprzednim artykule mogliście się dowiedzieć o hardware i software potrzebnym do nauki wykorzystania Wemos D1. W tym artykule będzie trochę praktycznego wykorzystania modułu.

Moduł ESP8266 ma taką fajną cechę, że może połączyć się z siecią WiFi a także ma swojego Access Pointa (AP).

Podłączenie modułu przez USB

Gdy zainstalowaliśmy sterowniki do CH340 to w panelu sterowania będzie można znaleźć numer portu, który został przypisany przez system – u mnie to COM8. Przez ten port będzie komunikacja z modułem Wemos D1.

Tak jak wcześniej pisałem używam puTTY do łączenia z modułem. Uruchamiam putty z ustawieniami takimi jak na poniższych obrazkach:

Po połączeniu pojawi się okno terminala (być może z jakimiś śmieciami). Teraz trzeba wcisnąć przycisk reset na module i jeśli wszystko będzie ok to w oknie pojawi się prompt „>>>”. Wpisanie prostego działania 2+3 i enter powinno wyświetlić 5 – czyli MicroPython działa ;).
Więc do dzieła!

Konfiguracja sieci WiFi

Na początek moduł podłączymy do sieci WiFi wpisując odpowiednie polecenia w linii komend.

import network

sta_if = network.WLAN(network.STA_IF); sta_if.active(True) 
sta_if.scan() #skanowanie dostępnych access pointów 
sta_if.connect("nazwa sieci","hasło do sieci WiFi") #podłączenie do access pointa
sta_if.isconnected() #sprawdzenie czy podłączenie powiodło się

sta_if.ifconfig()

Ostatnie polecenie sta_if.ifconfig() zwraca nam informacje o nadanym adresie IP, ip routera itp.

>>> sta_if.ifconfig()
('192.168.1.50', '255.255.255.0', '192.168.1.1', '1.1.1.1')
>>>

Oczywiście bezsensowne byłoby pisanie za każdym razem tego co powyżej i musi być zapewne jakiś sposób na to by zrobić to „automatycznie. Jak się pewnie domyślacie to jest taki sposób. Do tego wykorzystany zostanie plik boot.py , w którym zostaną wpisane odpowiednie polecenia ale o tym później, w kolejnej części.

 

 

WEMOS D1 czyli ESP8266 – początki

Serdecznie zapraszam na stronę fotoRAF – moje fotografie z ofertą dotyczącą fotografii.

No i mnie też naszło by podziałać z ESP8266 czyli takim modułem, który jest świetny do realizacji różnego rodzaju pomysłów z IoT. Do realizacji zadania „nauki” wykorzystania ESP8266 zakupiłem= moduł Wemos D1 za ok 23 zł ze znanego polskiego portalu aukcyjnego. Dokumentacja do modułu jest do znalezienia w sieci -> https://docs.wemos.cc/en/latest/d1/d1_mini.html

Sam moduł jest wielkości znaczka pocztowego i doskonale daje się umieścić w płytce stykowej co nie jest możliwe w przypadku niektórych innych modułów. Zasilanie +5V DC ze standardowego portu USB bo moduł ma stabilizator 3,3V DC. Ma 11 wejść cyfrowych i 1 analogowe (max 3,2V).

Jest kompatybilny z MicroPython, Arduino, nodemcu – mnie najbardziej zainteresowała opcja z MicroPython bo postanowiłem odrobinę podciągnąć się w tym języku (tak przy okazji).

Na samym początku trzeba przygotować hardware i software by móc podziałać z WemosD1.

Hardware:

  • moduł Wemos D1 lub inny kompatybilny;
  • komputer z portem usb (korzystam z komputera z Windows 7 64-bit);
  • kabel micro USB (do zasilania i komunikacji z komputerem);
  • płytka stykowa;
  • diody led zielone/czerwone (co kto ma);
  • rezystory 300 Ohm (albo coś podobnego) -> 3,3V na pinie wyjściowym -ok. 1.7V dla LED = 1,6V co daje ok 5mA (1,6V/300Ohm);
  • przewody połączeniowe (jakie wam pasują, ja kupiłem w formie taśm zakończonych wtykami męskimi, żeńskimi i mieszane);

Software:

YT- TY

Rok minął bez wpisu na blogu – okropieństwo, jak mogłem dopuścić do takiego zaniedbania! No ale co się stało to się nie odstanie.
Dopadła mnie kreatywna gorączka związana z tworzeniem materiałów z programowania PLC i zasiliłem kanał na YT nowymi treściami – trochę więcej na temat PLC Siemens oraz U90Ladder firmy Unitronics.

Możecie rzucić okiem na gervee na YT

Ostatni film:

 

Ps. Jeśli jakaś firma jest chętna by „pomęczyć” ich sprzęt lub oprogramowanie to zapraszam do kontaktu.

 

Youtube

Postanowiłem umieszczać na YouTube filmy (w sumie to na początek nagrane tylko zrzuty ekranowe) z zakresu programowania, automatyki itd. Obecnie zamieszczać będę serię filmów poświęconych Siemens TIA Portal.

Wykresy? No to może warto użyć Live Charts?

Serdecznie zapraszam na stronę fotoRAF – moje fotografie z ofertą dotyczącą fotografii.

Jeśli komuś nie wystarczają możliwości kontrolki Charts dostarczonej przez Microsoft wraz z Visual Studio to może sięgnąć po rozwiązanie dostarczane przez strony trzecie – takim rozwiązaniem jest Live Charts https://lvcharts.net/

Przy pomocy tego rozwiązania możemy stworzyć bardzo dobrze wyglądające wykresy, które z pewnością będą dobrze prezentować się w aplikacjach tworzonych przez nas. Co jest potrzebne? Jeśli korzystamy z VS (ja korzystam z VS2015) to pobieramy do naszego projektu paczkę Livecharts (albo Livecharts.Wpf) z Nuget Managera. Po zainstalowaniu możemy przejść do działania.
Czytaj dalej Wykresy? No to może warto użyć Live Charts?

Deserializacja klasy z XML

Odczyt stanu programu z poprzedniej sesji jest podstawową funkcjonalnością oprogramowania dzisiejszych czasów. Nikt chyba nie wyobraża sobie sytuacji gdy po zamknięciu programu i ponownym jego uruchomieniu trzeba wklepać wszystko od nowa. W tym wpisie pokażę jak odczytać dane, które zapisaliśmy (serializowaliśmy) do pliku XML.
Czytaj dalej Deserializacja klasy z XML

Serializacja klasy do XML

Pisząc program, choćby prostą aplikację „ToDo” chcielibyśmy zachować stan naszej aplikacji tak by po jej ponownym uruchomieniu odczytane zostało to, co wprowadziliśmy podczas poprzedniego uruchomienia. Możemy oczywiście użyć zapisów do bazy danych (w tym do SQLite, gdzie może to być baza plikowa), zapisów do plików z wykorzystaniem własnych formatów. Możemy także użyć zapisu do plików w formacie XML, o których pisałem już kiedyś. Zapisz do plików XML ma sporo zalet, choćby to, że są to pliki tekstowe i łatwe do odczytu, modyfikacji i przenoszenia pomiędzy systemami.
Czytaj dalej Serializacja klasy do XML

WCF – dobieramy się do danych na serwerze

WCF – Windows Communication Foundation, bo o tym będzie mowa to, to framework do budowania aplikacji zorientowanych na serwisy (service-oriented applications). Przy jego pomocy jest możliwe przesyłanie informacji od jednego endpointa serwisu do innego endpointa. Przykładowo może to być przesyłanie danych pomiędzy serwerem (gdzie będziemy mieć zaimplementowane zbieranie danych z urządzeń) a klientem, który będzie dane pobierał z serwera i prezentował je w formie graficznej.
Czytaj dalej WCF – dobieramy się do danych na serwerze