Përmbajtje:

Seriali UDP/IP Gateway për Arduino Bazuar në ESP8266 Shield: 8 hapa
Seriali UDP/IP Gateway për Arduino Bazuar në ESP8266 Shield: 8 hapa

Video: Seriali UDP/IP Gateway për Arduino Bazuar në ESP8266 Shield: 8 hapa

Video: Seriali UDP/IP Gateway për Arduino Bazuar në ESP8266 Shield: 8 hapa
Video: Урок №9. Настраиваем статический IP адрес для подключения микроконтроллера ESP8266 к Wi-Fi сети. 2024, Nëntor
Anonim
Seriali UDP/IP Gateway për Arduino Bazuar në ESP8266 Shield
Seriali UDP/IP Gateway për Arduino Bazuar në ESP8266 Shield

Unë tashmë kam botuar në vitin 2016 këtë udhëzues "Si të krijoni portën tuaj Wifi për të lidhur Arduino tuaj me Rrjetin IP". Meqenëse bëra disa përmirësime të kodit dhe ende po e përdor këtë zgjidhje.

Sidoqoftë, tani ka disa mburoja ESP8266 që lejojnë të bëjnë të njëjtën gjë pa bashkim për sa kohë që nuk përdorni borde Mikro ose Nano.

Ky udhëzues do të shpjegojë se si t'i përdorni këto mburoja ESP82 si portë serike UDP/IP.

Kjo merr pjesë në një infrastrukturë globale të automatizimit të shtëpisë, të cilën mund ta shikoni këtu

Më shumë informacion në lidhje me mburojën me këtë udhëzues

Furnizimet

1 Arduino Mega (më e mira është të kesh të paktën 1 Mega për zhvillim dhe 1 Uno për fazën e vrapimit)

1 Rokoo ESP8266 ESP-12E UART WIFI Konvertues

1 FTDI 3.3v

2 tela të bukës

Hapi 1: Si funksionon?

Si punon ?
Si punon ?

Gateway bazohet në një modul ESP8266

Ky modul është i lidhur nga njëra anë me lidhjen serike nga ana tjetër me rrjetin IP me Wifi.

Ajo vepron si një kuti e zezë. Pakot e të dhënave që vijnë nga lidhja serike dërgohen në një port IP/Udp dhe vis et versa.

Thjesht duhet të vendosni konfigurimin tuaj (IP, WIFI …) një herë herën e parë që do të ndizni Gateway.

Mund të transferojë ose të dhëna ASCII të papërpunuara dhe binare (pa HTTP, JSON …)

Shtë projektuar për të lidhur objektet me softuerë të prodhuar në shtëpi të serverëve që kanë nevojë për transferime të shpejta dhe të shpeshta të paketave të shkurtra të të dhënave.

Hapi 2: Cilat janë funksionet kryesore?

Kryesisht është një kuti e zezë që konverton të dhënat serike në pako UDP në të dyja mënyrat.

Por porta gjithashtu mund të veprojë vetë, duke dërguar informacione të brendshme në server dhe duke marrë disa komanda nga serveri.

Arduino mund të dërgojë dhe të marrë mesazhe drejt / nga një server i lidhur përmes internetit vetëm duke shtypur / lexuar një lidhje serike. Nuk ka nevojë që zhvilluesi Arduino të shqetësojë protokollin IP.

Për më tepër, ai siguron një GPIO që mund të përdoret nga Arduino për të kontrolluar nëse Porta është e lidhur saktë me WIFI dhe Gateway mund të kalojë automatikisht në panxhar 2 SSID të ndryshme në rast dështimi

Gateway ka 2 mënyra të ndryshme drejtimi që zgjidhen duke vendosur një GPIO

Vendosja e GPIO në tokë dhe Gateway hyn në modalitetin e konfigurimit.

Vendosja e GPIO falas dhe Gateway hyn në modalitetin e funksionimit të portës.

Për më tepër, konfigurimi i Gateway UDP/IP mund të modifikohet nga distanca

Hapi 3: Ndërtimi i materialit

Ndërtimi i materialit
Ndërtimi i materialit

Shumë pak gjëra kërkohen

1 ESP8266 Shield - Kam gjetur këtë UNO R3 ESP8266 Serial WiFi Shield Extend Board Module në më pak se 9 €

1 UNO që është objektivi i synuar Arduino

1 Mega që është mjeti i zhvillimit arduino (mund të bëni pa por është mjaft e vështirë të korrigjoni)

1 FTDI 3.3/5v për zhvillim

Disa tela

Hapi 4: Shkarkoni Kodin e Portës

Shkarkoni Kodin e Portës
Shkarkoni Kodin e Portës

Gjatë këtij hapi, Arduino përdoret vetëm për të fuqizuar (me USB ose një burim tjetër energjie) në mburojën ESP8266

Lidhni ESP8266 GPIO4 me tokën (për të hyrë në modalitetin e konfigurimit)

Kini kujdes të vendosni FTDI në 3.3v siç kërkohet nga mburoja

Lidhni FTDI me mburojën (RX në TX)

Vendoseni çelësin e mbrojtjes të vendosur në 1: fikur 2: fikur 3: në 4: aktiv

Lidhni anën USB të FTDI me kompjuterin tuaj

Rivendosni mburojën me butonin ESP-RST

Shkarkoni kodin Gateway atje në GitHub

Hapni Arduino IDE

  • Zgjidhni portën e monitorit FTDI
  • Hapni IDE Serial Monitor - Vendosni shpejtësinë në 38400
  • Zgjidhni bordin e modulit Generic ES8266
  • Përditësoni firmware -in e mburojës me kodin e portës

Vendosni çelësin 3: fikur 4: fikur

Hapni IDE Serial Monitor

Rivendosni mburojën me butonin ESP-RST

Duhet të shihni mesazhe në monitor duke filluar me "Inicializimi i EEPROM" "Fillimi përfundoi"….

Timeshtë koha për të bërë konfigurimin

Hapi 5: Le të bëjmë konfigurimin e portës

Kur shkarkoni kodin e hyrjes për herë të parë, ESP8266 Eeprom do të inicializohet me vlerat e paracaktuara. Do të shihni mesazhe të këtij lloji "përcaktoni parametrin: x madhësinë: yy"

Ju mund t'i gjeni këto vlera brenda përcaktimit të kodit të paramValue. Sigurisht që mund t'i ndryshoni këto vlera të paracaktuara para se të shkarkoni kodin, por gjithashtu mund të vendosni konfigurimin tuaj me komandë më vonë. Kjo është më mirë nëse planifikoni të keni porta multipe dhe të mbajnë vetëm një version të kodit.

Përdorni portën serike të monitorit për të dërguar komandën (e vendosur në NL dhe CR).

Meqenëse SSID nuk është përcaktuar aktualisht, prisni për "Nuk mund të lidhem me juprovoni sërish: 5"

Pastaj një skanim i WIFI do të fillojë automatikisht

Timeshtë koha për të vendosur SSID -të tuaja me komandat e mëposhtme:

  • SSID1 = zgjedhja juaj1
  • PSW1 = yourpsw1
  • SSID2 = zgjedhja jote2
  • PSW2 = yourpsw2
  • SSID = 1 (për të zgjedhur me cilën SSID të fillojë)
  • RestartWifi

Pas disa sekondash mund të kontrolloni lidhjen me komandën "ShowWifi". Ju duhet të shihni adresën IP që porta mori nga serveri juaj DNS. Nëse është kështu, është koha për të shkuar më tej

It'sshtë koha për të përcaktuar adresën tuaj të serverit IP duke futur 4 nënadresat (server që do të ekzekutojë kodin e testit Java). Për shembull:

  • "IP1 = 192"
  • "IP2 = 168"
  • "IP3 = 1"
  • "IP4 = 10"

Duke dërguar një komandë të zbrazët, do të shihni të gjitha komandat e mbështetura që mund t'i përdorni më vonë për t'iu përshtatur kërkesave tuaja. Të gjitha vlerat e parametrave ruhen në Eeprom dhe kanë nevojë për një rindezje për t'u marrë parasysh.

Hiqni telin e konfigurimit

Mburoja tani po funksionon si një portë hyrëse

Hapi 6: Shkarkoni Shembullin e Kodit Arduino

Shkarkoni Shembullin e Kodit Arduino
Shkarkoni Shembullin e Kodit Arduino

Fillimisht shkarkoni kodin kryesor Arduino atje në GitHub

Pastaj shkarkoni kodin Arduino që përcakton këtë komandë dhe këtë kod lidhës serik në bibliotekat tuaja

Pastaj hapni kodin kryesor me një IDE të ri Arduino

Çaktivizoni çelësin e mburojës 1 dhe 2 për të liruar lidhjen serike Arduino 0 për lidhje USB

Rivendos mburojën

Lidhni telat FTDI me Mega Serial 2 (TX FTDI në RX Mega dhe kështu me radhë)

Filloni një Arduino IDE të ri (ose një mjet TTY), lidhni USB FTDI dhe filloni të monitoroni lidhjen serike

Ngarko kodin Arduino brenda Mega

Vendosni çelësin e mburojës 1 dhe 2 për të lidhur lidhjen serike Arduino 0

Rivendos mburojën

Ju duhet të shihni këtë mesazh "filloni printimin me USB" në monitor

Hapi 7: Le të bëjmë anën e serverit

Shembulli i serverit është një program Java që mund ta shkarkoni këtu në GitHub

Thjesht drejtojeni atë dhe shikoni tastierën Java dhe shikoni monitorin FTDI

Do të shihni shkëmbime të të dhënave midis serverit dhe Arduino

Hapi 8: Për të shkuar më tej

Për të shkuar më tej
Për të shkuar më tej
Për të shkuar më tej
Për të shkuar më tej

Ky shembull i kodit Arduino bazohet në një pjesë kornizë të infrastrukturës së automatizimit të shtëpisë sime.

Nëse jeni të interesuar për këtë infrastrukturë, më tregoni. Unë do të publikoj burimet.

Nëse thjesht dëshironi të përdorni portën, mund të thjeshtoni kodin Arduino.

Pasi të keni zhvilluar dhe testuar kodin tuaj në një Arduino Mega, lehtë mund ta zëvendësoni me një Uno!

Për më tepër, mund të lidhni një tel midis Arduino GPIO 7 dhe ESP8266 GPIO 5 nëse dëshironi që Arduino juaj të kontrollojë lidhjen Wifi

Recommended: