3
AT+CWMODE=3 – tryb dual
Trzeci dostępny tryb ustawień WLAN to tryb podwójny. Jak już sama nazwa
wskazuje, tryb ten umożliwia pracę modułu zarówno w trybie stacji jak i w trybie
AP. Oznacza to, że urządzenia mogą zarówno nawiązywać bezpośrednie
połączenie WLAN z modułem oraz przez router jako stację pośrednią. Jest to tryb
bardzo praktyczny, gdy np. planowane jest
utworzenie wewnętrznej sieci z wieloma modułami
i jeden z modułów ma pełnić rolę serwera
dostarczającego dane do sieci. Więcej na ten
temat w dalszej części.
1.2 | Konfiguracja automatyczna
Podstawowe polecenia zostały już przetestowane ręcznie. Ten rozdział jest
poświęcony kwestii, w jaki sposób polecenia te mogą być obsługiwane
bezpośrednio przez kontroler. Ponadto poznamy tu kolejne polecenie, którym
można przetestować, czy dostępny jest określony komputer w sieci lub serwer w
internecie. W tym przykładzie ping wysyłany jest do serwera Google. W
przykładowym programie P02_GooglePing czynności, które w pierwszym
przykładzie były wpisywane ręcznie, są teraz w znacznym stopniu
zautomatyzowane. Kontroler wysyła kolejno po sobie polecenia do modułu ESP i
w ten sposób m.in. nawiązuje połączenie z WLAN. Czasy timeout o róznej
długości dają modułowi wystarczająco czasu na odpowiedź.
Ale zanim program będzie mógł prawidłowo działać, trzeba wpisać dane WLAN za
#define SSID i #define PASSWORD zaraz na początku kodu źródłowego programu.
Moduł potrzebuje bowiem dostępu do internetu, aby mógł wykonać swoje ostatnie
polecenie. Poleceniem
AT+PING
można wysłać ping do innych urządzeń w sieci. Wysyłanie sygnału ping oznacza
zapytanie, czy dany komputer zasadniczo jest osiągalny. Tutaj za pomocą
AT+PING="www.google.de" ping jest wysyłany do serwera Google. Gdy nadejdzie
odpowiedź, na monitorze szeregowym pojawia się komunikat o powodzeniu w
zapala się dioda LEd oznaczona jako D3, która jest podłączona do pina D13 karty.
Pierwsza komunikacja z internetem zakończyła się powodzeniem.
Program
W kolejnych częściach zostaną krok po kroku przeanalizowane funkcje programu.
Najpierw omówiona zostanie komunikacja z modułem.
1
Komunikacja szeregowa
Wszystko działa za pośrednictwem szeregowego portu wirtualnego
udostępnianego przez SoftwareSerial-Library . Podczas inicjalizacji muszą
ponadto zostać podane używane piny, w tym przypadku 11 i 12.
Zestawienie poleceń w załączniku i na stronie
internetowej
Wszystkie istotne polecenia znajdują się także w
załączniku oraz na wspomnianej już wcześniej stronie
internetowej www.iot.fkainka.de. Niektóre polecenia, jak
ustawianie prędkości transmisji sygnału, zostały
świadomie pominięte, ponieważ można nimi uczynić
moduł bezużytecznym.