0. Wprowadzenie do modułu samouczka Arduino ESP12E NodeMcu ESP8266 i WeMos D1 mini

W tej klasie znajdziesz informacje o podstawowych zastosowaniach modułu ESP8266 z konwerterem CP2102 (NodeMcu) lub CH340 (WeMos) - moduł bezprzewodowy oparty na języku Lua, który tak bardzo współpracuje z Arduino IDE (i wszystkie instrukcje w ta klasa będzie w Arduino IDE). W każdym ćwiczeniu przedstawimy Ci dwie płytki - modułową wersję NodeMcu (zawsze po lewej) i WeMos D1 Mini (zawsze po prawej) - jedyna różnica polega na okablowaniu, programowanie Arduino nie ulega zmianie.

Podstawowe zadania, które będziemy rozwiązywać na zajęciach to:

- Instalacja sterownika ESP12E NodeMcu (wtyczka ESP8266 w IDE Arduino - współpracuje z WeMos D1 mini)
- Funkcja migania 3mm czerwonej diody LED z modułem ESP12E

- Odczyt analogowy za pomocą potencjometru liniowego 10 kΩ

- Sterowanie serwomotorem 9g SG90 za pomocą modułu

- Stworzenie serwera WWW z modułem ESP12E i 3mm czerwoną diodą LED

Wymagane komponenty:

I. Jak zainstalować sterownik NodeMcu (wtyczka ESP8266 w IDE Arduino - współpracuje z WeMos D1 mini)

Musimy pobrać wtyczkę ESP8266, aby móc zaprogramować nasz moduł rozwoju bezprzewodowego NodeMcu Lua CP2102 WiFi ESP12E przez interfejs Arduino .
Najpierw w IDE Arduino kliknij Plik / Preferencje w następujący sposób:

Obraz% 2B1.jpg


W oknie preferencji wypełnij pole Menedżer adresów URL kart dodatkowych, podając następujący adres internetowy:

http: // arduino .esp8266.com / stable / package_esp8266com_index.json

Zatwierdź przyciskiem OK , aby wyjść z ekranu zachowując zmiany.


Obraz% 2B2.jpg
Następnie w IDE Arduino kliknij Narzędzia / Karta / Menedżer kart :


Obraz% 2B3.jpg
Otworzy się poniższe okno, w którym będziemy mogli pobrać Pakiet powiązany z modułem bezprzewodowym ESP12E:

Obraz% 2B4.jpg
W pasku wyszukiwania wpisz ESP8266 i kliknij odpowiedź, a na koniec wybierz zainstaluj, aby uruchomić instalację pakietu:



Obraz% 2B5.jpg

Po zainstalowaniu Pakietu wybierz w IDE Arduino w Narzędziach / Płytce kartę NodeMCU 1.0 (Moduł ESP-12E) , którą zamierzasz zaprogramować i powiązany port szeregowy.
Obraz% 2B6.jpg

II. Jak podłączyć Arduino ESP12E NodeMcu ESP8266 i mini moduł WeMos D1 do komputera

Po prostu podłącz kabel USB do micro USB do płytki rozwojowej z jednej strony, a do komputera z drugiej, aby rozpocząć programowanie.
Pinout GPIO na karcie rozwojowej ESP12E NodeMCU wygląda następująco:


Dystrybucja% 25C3% 25B3n% 2Bde% 2Bpines% 2BESP12E.png

III. Jak podłączyć diodę LED z Arduino ESP12E NodeMcu ESP8266 i modułem mini WeMos D1

Wykorzystując płytkę prototypową MB-102 bez lutowania wykonać następujące okablowanie:
Okablowanie% 2Bm% 25C3% 25B3dulo% 2BESP12E% 2Bcon% 2BLED.jpg9_next_WEMOS.jpg
Zamierzamy wdrożyć pierwszy program polegający na miganiu diody LED przez moduł WiFi ESP12E.
W nowym pliku Arduino następujący program w interfejsie programu Arduino .
Obraz% 2B7.jpg
Po skopiowaniu kodu do interfejsu kliknij opcję Program / Verify / Compile .
Obraz% 2B8.jpg
Pod twoim ekranem w interfejsie Arduino znajduje się obszar komunikatów kompilatora, w którym możesz sprawdzić, czy kod został dobrze napisany lub czy zawiera błędy.


Jeśli kod zostanie pomyślnie skompilowany, pojawi się następujący komunikat:




Obraz% 2B9.jpg


Po skompilowaniu załaduj program do mikrokontrolera ATMEGA328P-PU modułu Uno R3, klikając Program / Upload.


Obraz% 2B10.jpg
Dioda zacznie migać, pozostając zapalona przez 1 s i zgaszona przez 1 s zgodnie z tym, co zaprogramowaliśmy.

Kliknij, aby pobrać program Arduino .


IV. Jak zaprogramować Arduino ESP12E NodeMcu ESP8266 i mini moduł WeMos D1 do odczytu wartości potencjometrów analogowych

Procesor ESP8266 zintegrowany z modułem ESP12E ma pojedyncze wejście analogowe działające identycznie jak w module UNO z rozdzielczością 10 bitów, ale jego wewnętrzne napięcie odniesienia wynosi 1 V.
W wewnętrznej strukturze procesora wejście A0 posiada dzielnik napięcia do dostosowania zakresu do 3,3V.
Używając płytki prototypowej MB-102 bez lutowania wykonać następujące okablowanie:
Okablowanie% 2Bm% 25C3% 25B3dulo% 2BESP12E% 2Bcon% 2BADC.jpg14_next_WEMOS.jpg

W nowym pliku Arduino następujący program w interfejsie programu Arduino .

Obraz% 2B11.jpg



Po skopiowaniu kodu do interfejsu kliknij opcję Program / Verify / Compile .


Obraz% 2B12.jpg
Pod twoim ekranem w interfejsie Arduino znajduje się obszar komunikatów kompilatora, w którym możesz sprawdzić, czy kod został dobrze napisany lub czy zawiera błędy.


Jeśli kod zostanie pomyślnie skompilowany, pojawi się następujący komunikat:


Obraz% 2B13.jpg


Po skompilowaniu załaduj program do mikrokontrolera ATMEGA328P-PU modułu Uno R3, klikając Program / Upload .


Obraz% 2B14.jpg
Sprawdź działanie przetwornika analogowo-cyfrowego, otwierając Arduino szeregowy interfejsu Arduino i obracając potencjometr, aby sprawdzić, czy napięcie się zmienia.

Obraz% 2B15.jpg

Aby uzyskać optymalny wynik i móc obserwować wszystkie przeliczone wartości, ważne jest, aby w naszym programie dokładnie zdefiniować wartość zmiennej napięcia pływaka .

Jest to 10-bitowy konwerter, więc mamy 1024 wartości cyfrowe, dające równanie zmiennej napięcia pływaka = sensorValue * (3,3 / 1023,0).

V. Jak podłączyć i sterować silnikiem z Arduino ESP12E NodeMcu ESP8266 i mini modułem WeMos D1

Wszystkie piny GPIO procesora ESP8266 zintegrowane z modułem ESP12E mają wyjścia PWM, ich rozdzielczość wynosi 10 bitów, chociaż Arduino to 8 bitów.
Możesz także zmodyfikować częstotliwość PWM, domyślnie jest to 1 kHz.
Używając płytki prototypowej MB-102 bez lutowania wykonać następujące okablowanie:

Okablowanie% 2Bm% 25C3% 25B3dulo% 2BESP12E% 2Bcon% 2Bservo% 2B9g.jpg20_next_WEMOS.jpg

W nowym pliku Arduino następujący program w interfejsie programu Arduino .


Obraz% 2B16.jpg
Po skopiowaniu kodu do interfejsu kliknij opcję Program / Verify / Compile .
Obraz% 2B17.jpg


Pod twoim ekranem w interfejsie Arduino znajduje się obszar komunikatów kompilatora, w którym możesz sprawdzić, czy kod został dobrze napisany lub czy zawiera błędy.

Jeśli kod zostanie pomyślnie skompilowany, pojawi się następujący komunikat:

Obraz% 2B18.jpg
Po skompilowaniu załaduj program do mikrokontrolera ATMEGA328P-PU modułu Uno R3, klikając Program / Upload .
Obraz% 2B19.jpg
Proponujemy inny kod umożliwiający wykonywanie obrotów o 180º poprzez zwiększanie i zmniejszanie zmiennego kąta:


Obraz% 2B20.jpg

Kliknij, aby pobrać program Arduino .


WIDZIAŁ. Utwórz serwer WWW z modułem ESP12E
Celem tej części jest nauczenie się, jak podłączyć moduł ESP12E do własnej sieci WiFi w modemie i umożliwić Ci połączenie z Internetem.
Aby testy zadziałały, niezbędne jest posiadanie nazwy SSID swojej sieci oraz skojarzonego z nią hasła WiFi, więc spójrz na etykietę dołączoną do modemu, która wskazuje te dane.
Nasz serwer sieciowy połączy moduł ESP12E z określonym adresem IP, który nas wskaże i utworzy stronę internetową z dwoma przyciskami LED ON i LED OFF, które umożliwiają włączanie i wyłączanie diody LED podłączonej do naszego modułu w następujący sposób:
Okablowanie% 2Bm% 25C3% 25B3dulo% 2BESP12E% 2Bcon% 2BLED.jpg
W nowym pliku Arduino następujący program w interfejsie programu Arduino .


Obraz% 2B21.jpg


Obraz% 2B22.jpg
Po skopiowaniu kodu do interfejsu kliknij opcję Program / Verify / Compile .

Obraz% 2B23.jpg
Pod twoim ekranem w interfejsie Arduino znajduje się obszar komunikatów kompilatora, w którym możesz sprawdzić, czy kod został dobrze napisany lub czy zawiera błędy.

Jeśli kod zostanie pomyślnie skompilowany, pojawi się następujący komunikat:

Obraz% 2B24.jpg
Po skompilowaniu załaduj program do mikrokontrolera ATMEGA328P-PU modułu Uno R3, klikając Program / Upload .

Obraz% 2B25.jpg
Natychmiast otwórz monitor szeregowy, aby dać sobie czas na wyświetlenie adresu IP przypisanego przez modem do modułu ESP12E.


W przypadku, gdy nie zobaczysz żadnego parametru połączenia wysłanego przez nasz program, zwiększ wartość poprzez warunkowanie zmiennej i w while (i <10).


Na monitorze szeregowym powinien pojawić się następujący komunikat:


Obraz% 2B26.jpg


Otwórz stronę internetową iw pasku http przeglądarki wprowadź adres IP wskazany przez program na monitorze szeregowym. Jest bardzo prawdopodobne, że różni się od naszego, w naszym przypadku jest to 192.168.0.101 .

Na stronie internetowej powinny pojawić się:

Obraz% 2B27.jpg

Teraz naciskając przycisk LED ON dioda LED musi się zaświecić, a naciśnięcie przycisku LED OFF dioda LED musi zgasnąć.


Na czynności wymagane za pomocą przycisków WŁ. I WYŁ. Na stronie internetowej ma wpływ monitor szeregowy:




Obraz% 2B28.jpg

Kliknij, aby pobrać program Arduino .