Spisu treści:

Automatyzacja ESP8266 z interfejsem internetowym i DDNS: 8 kroków
Automatyzacja ESP8266 z interfejsem internetowym i DDNS: 8 kroków

Wideo: Automatyzacja ESP8266 z interfejsem internetowym i DDNS: 8 kroków

Wideo: Automatyzacja ESP8266 z interfejsem internetowym i DDNS: 8 kroków
Wideo: MK ESP TOOL - nowe fantastyczne i darmowe narzędzie do pracy z modułami ESP8266 i ESP32 2024, Listopad
Anonim
Image
Image
Wi-Fi ESP8266 NodeMcu ESP-12E
Wi-Fi ESP8266 NodeMcu ESP-12E

W dzisiejszym artykule pokażemy automatyzację, która może być rezydentna, wykorzystująca funkcję DDNS (Dynamic Domain Name System). Zrozumiesz, jak skonfigurować aplikację, którą umieścisz na ESP8266, na NodeMCU. Zobaczymy również, jak skonfigurować DDNS, aby sterować urządzeniami w domu ze smartfona.

Zasadniczo schemat działa w następujący sposób: Twój smartfon wyśle dane do chmury z usługą DDNS, która uzyska dostęp do Twojego ESP8266 znajdującego się w Twoim domu.

W tym przypadku kod źródłowy jest duży i wykorzystuje funkcję ESP do działania jako sam serwer WWW. Dlaczego jest to korzystne? Cóż, nie musisz instalować żadnych aplikacji na swoim smartfonie. Działa doskonale na iOS, komputerze, Androidzie lub prawie wszystkim, co zawiera przeglądarkę.

Krok 1: Wi-Fi ESP8266 NodeMcu ESP-12E

Krok 2: DDNS

DDNS
DDNS
DDNS
DDNS
DDNS
DDNS

W pierwszej kolejności konieczne jest założenie konta na stronie NO-IP, https://www.noip.com/. To jest usługa, z której będziemy korzystać. Po skonfigurowaniu loginu i hasła zaloguj się na swoje konto i ustaw „nazwę hosta” oraz „Domenę”. Typ rekordu i pozostaw go bez zmian (A). Po wypełnieniu kliknij „Dodaj nazwę hosta”. Następnie przejdź do konfiguracji konta, klikając „Konto”. W tym przypadku używamy „automacaoesp.ddns.net”.

Następnie ustaw „NAZWA UŻYTKOWNIKA” i zapisz ustawienia.

Teraz przejdź do routera i kliknij „Dynamiczny DNS”. Wypełnij pola nazwą użytkownika zdefiniowaną w konfiguracji konta, hasłem i Nazwą domeny, która w tym przypadku brzmiała „automacaoesp.ddns.net”. Włącz opcję „Włącz DDNS” i kliknij Zapisz. Teraz wyświetli komunikat „Udało się!” jeśli to zadziałało.

Wracając do strony NO-IP, kliknij menu boczne "Nazwy hostów" i sprawdź, czy pojawiła się rejestracja routera, jak pokazano poniżej. Powinien pojawić się zewnętrzny adres IP routera.

Ostatnim krokiem jest przekierowanie portu routera na wewnętrzne urządzenie sieciowe. Definiujemy IP ESP (192.168.1.111), więc przejdziemy do ekranu „Przekazywanie” -> „Serwery wirtualne” routera i klikniemy „Dodaj nowy”.

Wpisz port, który będzie przekierowywał i IP wewnętrznego urządzenia sieciowego, a następnie protokół pokaże „WSZYSTKO” (chyba że pracujesz tylko z określonym) i zachowaj status „Włączony”, aby był aktywny. Zapisz.

Krok 3: Diagram

Diagram
Diagram

Gdy to zrobisz, będzie działać. Niezależnie od zewnętrznego adresu IP, kiedy uzyskujesz dostęp do "automacaoesp.ddns.net" na domyślnym porcie 80, trafisz na port 80 wewnętrznego urządzenia sieciowego, które ma adres IP 192.168.1.111.

Pamiętaj, aby ten adres był stały.

Krok 4: Modyfikacje w pliku Automacao.ino

Modyfikacje w pliku Automacao.ino
Modyfikacje w pliku Automacao.ino

Zmień następujące ustawienia w ustawieniach sieci i wprowadź maksymalną dostępną liczbę GPIO na karcie +1 na MAX_PIN_COUNT.

//Mude para os dados da sua rede#define SSID "TesteESP" #define SENHA "87654321" #define IP "192.168.1.111" #define GATEWAY "192.168.1.1" #define SUBNET "255.255.255.0" //Maksymalna liczba pinos, lembrando que os gpios //geralmente começam em 0. //Se o gpio máximo for 16, por exemplo, coloque 17 #define MAX_PIN_COUNT 17

W pliku automacao.html zmień w linii 117 adres URL, na który zarejestrowałeś się na stronie ddns no-ip.

Krok 5: Wtyczka do zapisu plików

Powinieneś dołączyć wtyczkę do Arduino IDE, aby zapisywać pliki do flasha esp8266. Pobierz wtyczkę tutaj. Rozpakuj plik, a jeśli jest w systemie Windows, umieść plik.jar w:

C: \Users\Documents\Arduino\tools\ESP8266FS\tool\esp8266fs.jar

Jeśli używasz komputera Mac, umieść plik.jar w:

~ / Dokumenty / Arduino / narzędzia / ESP8266FS / tool / esp8266fs.jar

Zrestartuj środowisko Arduino IDE. Teraz w Narzędziach pojawi się nowa opcja. Ta opcja, o nazwie „ESP8266 Sketch Data Upload” (Przesyłanie danych szkicu ESP8266), zapisze zawartość folderu „data” w pamięci flash ESP8266.

Folder „data” musi znajdować się w folderze bieżącego pliku.ino.

Jeśli chcesz zapisać plik html, na przykład:

~ / Automatyzacja / Automatyzacja

~/Automatyzacja/dane/automatyzacja.html

Krok 6: Zapisz plik HTML

Zapisz plik HTML
Zapisz plik HTML

Kliknij tę opcję, aby wysłać plik automacao.html znajdujący się w folderze „data” do systemu plików ESP

Krok 7: Testowanie

Testowanie
Testowanie
Testowanie
Testowanie
Testowanie
Testowanie

1. Nadal w Arduino IDE kliknij strzałkę, aby skompilować i wysłać kod do ESP. Teraz przejdź do przeglądarki i wpisz adres URL w pasku adresu, który zarejestrowałeś na stronie no-ip. Wynik powinien być taki, jak obraz.

2. Kliknij „Numer PIN” i wybierz numer pinezki z wyświetlonej listy.

3. Wpisz nazwę przycisku, który będzie pasował do wybranego pinu i kliknij „+”.

4. Na liście pojawi się przycisk z wybraną nazwą.

5. Po kliknięciu przycisku zmieni kolor na niebieski, a pin z wybranym numerem będzie WYSOKI.

6. Jeśli chcesz, aby pin powrócił do stanu NISKI, po prostu kliknij ponownie przycisk. Aby usunąć przycisk kliknij "-"

Krok 8: Pobierz pliki

Pobierz pliki:

JA NIE

PDF

Zalecana: