Taula de continguts:
- Subministraments
- Pas 1: Com funciona?
- Pas 2: quines són les funcions principals?
- Pas 3: construcció de material
- Pas 4: baixeu el codi de passarel·la
- Pas 5: Fem la configuració de la passarel·la
- Pas 6: descarregueu l'exemple de codi Arduino
- Pas 7: Fem el costat del servidor
- Pas 8: anar més enllà
Vídeo: Porta d’entrada UDP / IP de sèrie per a Arduino basada en l’escut ESP8266: 8 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
Ja vaig publicar el 2016 aquest instructiu "Com crear la vostra pròpia passarel·la Wifi per connectar el vostre Arduino a la xarxa IP". Des que he fet algunes millores de codi i segueixo utilitzant aquesta solució.
Tot i això, ara hi ha alguns escuts ESP8266 que permeten fer el mateix sense soldar sempre que no feu servir plaques Micro o Nano.
Aquesta instrucció explicarà com utilitzar aquests escuts ESP82 com a passarel·la UDP / IP sèrie.
Això fa part d'una infraestructura domòtica global que podeu consultar aquí
Més informació sobre l'escut amb aquest instructiu
Subministraments
1 Arduino Mega (el millor és tenir almenys 1 Mega per al desenvolupament i 1 Uno per a la fase d'execució)
1 Rokoo ESP8266 ESP-12E UART WIFI Convertisseur
1 FTDI 3.3v
2 cables de taulers
Pas 1: Com funciona?
El Gateway es basa en un mòdul ESP8266
Aquest mòdul es connecta des d’un costat amb l’enllaç sèrie de l’altre costat a la xarxa IP amb el Wifi.
Fa de caixa negra. Els paquets de dades que provenen de l’enllaç serial s’envien a un port IP / Udp i viceversa.
Només heu d’establir la vostra pròpia configuració (IP, WIFI …) la primera vegada que enceneu el Gateway.
Pot transferir ASCII en brut i dades binàries (sense HTTP, JSON …)
Està dissenyat per connectar objectes amb programes fets a casa del servidor que necessiten transferències ràpides i freqüents de paquets curts de dades.
Pas 2: quines són les funcions principals?
Sobretot és una caixa negra que converteix les dades de sèrie en paquets UDP de totes dues maneres.
Però la passarel·la també pot actuar per si mateix enviant informació interna al servidor i rebent algunes ordres del servidor.
Arduino pot enviar i rebre missatges cap a / des d’un servidor connectat per Internet només imprimint / llegint un enllaç en sèrie. No cal que el desenvolupador Arduino es molesti en el protocol IP.
A més, proporciona un GPIO que Arduino pot utilitzar per comprovar que la passarel·la està correctament connectada a la WIFI i que pot passar automàticament entre 2 SSID diferents en cas de fallada.
El Gateway té 2 modes d’execució diferents que es seleccionen configurant un GPIO
Configurant GPIO a terra i el Gateway entra en mode de configuració.
Definint GPIO lliure i la passarel·la entra en mode d’execució de la passarel·la.
A més, la configuració UDP / IP del Gateway es pot modificar remotament
Pas 3: construcció de material
Es requereixen molt poques coses
1 escut ESP8266: he trobat aquest mòdul de placa d'extensió d'escut WiFi serie ESP8266 UNO R3 a menys de 9 €
1 UNO que és l'objectiu Arduino objectiu
1 Mega que és l'eina de desenvolupament d'arduino (podeu prescindir-ne, però és bastant difícil depurar-la)
1 FTDI 3.3 / 5v per al desenvolupament
Alguns cables
Pas 4: baixeu el codi de passarel·la
Durant aquest pas, l'Arduino només s'utilitza per alimentar (amb USB o una altra font d'alimentació) a l'escut ESP8266
Connecteu l'ESP8266 GPIO4 a terra (per entrar en mode de configuració)
Tingueu cura de configurar el FTDI a 3,3 v segons requereixi l’escut
Connecteu el FTDI al blindatge (RX a TX)
Estableix l'interruptor de protecció a 1: apagat 2: apagat 3: activat 4: activat
Connecteu el costat USB del FTDI a l'ordinador
Restableix l'escut amb el polsador ESP-RST
Baixeu-vos el codi de passarel·la a GitHub
Obriu Arduino IDE
- Seleccioneu el port del monitor FTDI
- Obriu el monitor sèrie IDE: configureu la velocitat a 38400
- Seleccioneu la placa de mòdul ES8266 genèrica
- Actualitzeu el firmware de l'escut amb el codi de passarel·la
Activeu l'interruptor 3: apagat 4: apagat
Obriu el monitor sèrie IDE
Restableix l'escut amb el polsador ESP-RST
Heu de veure els missatges al monitor que comencen amb "Inicialització EEPROM" "Inicialització finalitzada" …
És hora de fer la configuració
Pas 5: Fem la configuració de la passarel·la
En descarregar el codi de passarel·la per primera vegada, l'Esprom ESP8266 s'inicialitzarà amb els valors predeterminats. Veureu aquest tipus de missatges "set parameter: x size: yy"
Podeu trobar aquests valors dins de la definició de codi de paramValue. Per descomptat, podeu canviar aquests valors per defecte abans de descarregar el codi, però també podeu configurar la vostra configuració per ordre més endavant. Això és millor si teniu previst tenir una passarel·la multipe i conservar només una versió del codi.
Utilitzeu el port sèrie del monitor per enviar l'ordre (configurat a NL i CR).
Com que SSID no està definit actualment, espereu "No s'ha pogut connectar a la vostra prova de segon segon: 5"
A continuació, s'iniciarà automàticament un escaneig de WIFI
És hora de configurar els vostres SSID amb les ordres següents:
- SSID1 = la vostra elecció1
- PSW1 = yourpsw1
- SSID2 = la vostra elecció2
- PSW2 = yourpsw2
- SSID = 1 (per triar amb quin SSID començar)
- Reinicieu WiFi
Al cap d'uns segons, podeu comprovar la connexió amb l'ordre "ShowWifi". Heu de veure l'adreça IP que la passarel·la va obtenir del vostre servidor DNS. Si és el cas, és hora d’anar més enllà
És hora de definir la vostra adreça del servidor IP introduint les 4 subadreces (servidor que executarà el codi de prova de Java). Per exemple:
- "IP1 = 192"
- "IP2 = 168"
- "IP3 = 1"
- "IP4 = 10"
En enviar una ordre buida, veureu totes les ordres compatibles que podeu utilitzar més tard per adaptar-vos a les vostres necessitats. Tots els valors dels paràmetres s’emmagatzemen a Eeprom i cal tenir en compte un reinici.
Traieu el cable de configuració
Ara l'escut funciona com a porta d'entrada
Pas 6: descarregueu l'exemple de codi Arduino
Primer descarregueu-hi el codi principal Arduino a GitHub
A continuació, descarregueu el codi Arduino que defineix aquesta ordre i aquest codi d’enllaç sèrie als llibres
A continuació, obriu el codi principal amb un nou IDE Arduino
Desactiveu els interruptors de protecció 1 i 2 per alliberar l'enllaç sèrie Arduino 0 per a la connexió USB
Restableix l'escut
Connecteu els cables FTDI al Mega Serial 2 (TX FTDI a RX Mega, etc.)
Inicieu un nou IDE Arduino (o una eina TTY), connecteu el FTDI Usb i comenceu a supervisar l'enllaç sèrie
Pengeu el codi Arduino dins del Mega
Configureu els commutadors de protecció 1 i 2 per connectar l’enllaç sèrie Arduino 0
Restableix l'escut
Heu de veure aquest missatge "iniciar la impressió USB" al monitor
Pas 7: Fem el costat del servidor
L'exemple de servidor és un programa Java que podeu descarregar aquí a GitHub
Només cal executar-lo i mirar la consola Java i mirar el monitor FTDI
Veureu intercanvis de dades entre servidor i Arduino
Pas 8: anar més enllà
Aquest exemple de codi Arduino es basa en una part del marc de la meva infraestructura domòtica.
Si esteu interessats en aquesta infraestructura, feu-m'ho saber. Publicaré fonts.
Si només voleu utilitzar la passarel·la, podeu simplificar el codi Arduino.
Després de desenvolupar i provar el vostre codi en un Arduino Mega, podeu substituir-lo fàcilment per un Uno.
A més, podeu connectar un cable entre Arduino GPIO 7 i ESP8266 GPIO 5 si voleu que el vostre Arduino comprovi la connexió Wifi
Recomanat:
Un escut WiFi ESP8266 més barat per a Arduino i altres micros: 6 passos (amb imatges)
Un escut WiFi ESP8266 més barat per a Arduino i altres micros: actualització: 29 d'octubre de 2020 Provat amb la biblioteca de taulers ESP8266 V2.7.4 - obres Actualització: 23 de setembre de 2016 No utilitzeu la biblioteca de taulers Arduino ESP V2.3.0 per a aquest projecte. V2.2.0 worksUpdate: 19 de maig de 2016 La Rev. 14 d’aquest projecte revisa les biblioteques i el codi perquè funcionin
Vocal GOBO - Escut amortidor de so - Cabina vocal - Caixa vocal - Filtre de reflexió - Escut vocal: 11 passos
Vocal GOBO - Sound Dampener Shield - Vocal Booth - Vocal Box - Reflexion Filter - Vocalshield: Vaig començar a gravar més veus al meu estudi domèstic i volia obtenir un so millor i, després d’algunes investigacions, vaig saber què era un " GOBO " era. Havia vist aquestes coses que amortiguaven el so, però no em vaig adonar del que feien. Ara sí. Vaig trobar una y
Actualització de l'escut del motor per a SMARS Robot Arduino - Càrrega de codi per Bluetooth: 20 passos
Actualitzeu Motor Shield per a SMARS Robot Arduino - Càrrega de codi per Bluetooth: hi ha diverses opcions de blindatge de motor que podeu utilitzar amb Arduino Uno en aquest projecte de robot SMARS, molt habitualment amb Motor Shield V1 fabricat per Adafruit o compatible (clon de la Xina), però el desavantatge d'aquest escut no té el Blueto
Dispositiu d'entrada i emmagatzematge de sèrie de 4 bits: 4 passos
Dispositiu d'entrada i emmagatzematge de sèrie de 4 bits: mai heu imaginat com pren l'entrada i com s'emmagatzemen aquestes dades? Aquest projecte és una versió més petita d’entrada i emmagatzematge de dades. Una explicació elaborada de com el senyal de les tecles i el rellotge afecten els elements de memòria (xancles)
Clau basada en 10 $ IoT basada en el control de la bicicleta: 7 passos (amb imatges)
Clau basada en IoT de 10 $ menys control de la bicicleta: CONTROLA LA TEVA BICICLETA SENSE FIL AMB EL TEU TELÈFON ANDROID. SENSE CLAU, SENSE TENSIÓ