Módulo WiFi ESP8266.
- Módulo para comunicación wi-fi.
- Es pequeño y barato incluye la pila TCP/IP.
- Diseñado para Internet de las cosas.
- Puede Configurarse mediante comandos AT .
Características de Funcionamiento.
- Funciona a 3.3Vcd, es importante que se alimente exactamente con este voltaje, ya que, en las pruebas que realicé, el módulo no funcionaba en absoluto.Además utilicé una fuente externa, como se mencionaba en ciertos blogs, ya que el consumo de corriente excede el que puede suministrar la fuente de la placa de Arduino.
La siguiente es una tabla que ejemplifica el consumo de corriente del módulo.
Tuve serios problemas al principio para poder hacer funcionar el módulo, ya que se debe colocar una resistencia de 10K Ohms cortocircuitando el pin Vcc y el pin CH_PD, esto es muy importante hacerlo con la resistencia, ya uqe de lo contrario si se hace con un simple cable, el módulo no funciona, esto me llevo mucho tiempo averiguarlo y fue gracias al siguiente video que pude averiguarlo:
Aunque esté en inglés puede verse la conexión que realizó, yo no tuve que conectar el capacitor que muestra.
En los videos se muestra una forma alternativa de hacer funcionar el módulo, con otras herramientas.
Del mismo modo, no utilizaremos los pines GPIO.
En esté caso, yo me dediqué a usar la configuración del módulo con los comandos AT y la USART de Arduino, para ello me fuí guiando en el siguiente tutorial.
Así es como quedó mi módulo y el Arduino en mis pruebas.
Advertencia!
En algunos otros tutoriales, se comenta que debe ponerse una resistencia en el pin de Recepción del ESP8266 que se conecta al arduino, para no dañarlo, en mi caso omití este paso y no significo dañar el módulo, lo dejo a su consideración.
Instrucciones AT (Attention).
Interfaz de comunicación con un MODEM para así poder configurarlo y proporcionarle instrucciones, tales como marcar un número de teléfono.
Microcomm y US Robotics, lo universalizan.
No dependen del canal de comunicación a través del cual estas son enviadas, (Serial, infrarrojos, Bluetooth, etc.)
La telefonía móvil GSM también ha adoptado como estándar este lenguaje para poder comunicarse con sus terminales.
Si deseas más información esta en:
http://www.google.com.mx/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&ved=0CCoQFjACahUKEwivheLDsILGAhUJlIgKHfNLADg&url=http%3A%2F%2Fblog.tec-innovation.org%2Fwp-content%2Fuploads%2F2013%2F07%2FCOMANDOS-AT.doc&ei=rbx2Ve_6BomoogTzl4HAAw&usg=AFQjCNFnjz__K2-EM-seyFnEGQX2y00WwQ&bvm=bv.95277229,d.cGU
Comandos AT específicos para el ESP8266.
Todo el funcionamiento y configuración del módulo se consigue con ayuda de los siguientes comandos:
| Comando | Descripción | Sintaxis | Test | Parámetros | |
| AT | Test General | - | - | - | - |
| AT+RST | Reinicio del módulo | - | - | - | - |
| AT+GMR | Chequeo versión del firmware. | - | - | - | - |
| AT+CWMODE | Modo de funcionamiento | AT+CWMODE=<mode> | AT+CWMODE? | AT+CWMODE=? | 1= Sta, 2= AP, 3=both, Sta is the default mode of router, AP is a normal mode for devices |
| AT+CWJAP | Conexión como cliente de la wifi local. | AT+ CWJAP =<ssid>,< pwd > | AT+ CWJAP? | - | ssid = ssid, pwd = wifi password |
| AT+CWLAP | Muestra las redes disponibles para conectarse. | AT+CWLAP | |||
| AT+CWQAP | Quita el AP. | AT+CWQAP | - | AT+CWQAP=? | |
| AT+ CWSAP | Conexión como cliente de la wifi local. | AT+ CWSAP= <ssid>,<pwd>,<chl>, <ecn> | AT+ CWSAP? | ssid, pwd, chl = channel, ecn = encryption; eg. Connect to your router: AT+CWJAP="www.electrodragon.com","helloworld"; and check if connected: AT+CWJAP? | |
| AT+CWLIF | Revisa los clientes conectados directamente en el módulo. | AT+CWLIF | - | - | |
| AT+ CIPSTATUS | get the connection status | AT+ CIPSTATUS | <id>,<type>,<addr>,<port>,<tetype>= client or server mode | ||
| AT+CIPSTART | Inicia una conexión TCP o UDP para poder comenzar a mandar mensajes al dispositivo conectado al módulo. | 1)single connection (+CIPMUX=0) AT+CIPSTART= <type>,<addr>,<port>; 2) multiple connection (+CIPMUX=1) AT+CIPSTART= <id><type>,<addr>, <port> | - | AT+CIPSTART=? | id = 0-4, type = TCP/UDP, addr = IP address, port= port; eg. Connect to another TCP server, set multiple connection first: AT+CIPMUX=1; connect: AT+CIPSTART=4,"TCP","X1.X2.X3.X4",9999 |
| AT+CIPMODE | Establece el modo de transmisión de datos. | AT+CIPMODE=<mode> | AT+CIPSEND? | 0 not data mode, 1 data mode; return "Link is builded" | |
| AT+CIPSEND | Envía datos cuando ya existe la conexión con el dispositivo. | 1)single connection(+CIPMUX=0) AT+CIPSEND=<length>; 2) multiple connection (+CIPMUX=1) AT+CIPSEND= <id>,<length> | AT+CIPSEND=? | eg. send data: AT+CIPSEND=4,15 and then enter the data. | |
| AT+CIPCLOSE | close TCP or UDP connection | AT+CIPCLOSE=<id> or AT+CIPCLOSE | AT+CIPCLOSE=? | ||
| AT+CIFSR | Regresa la IP del módulo. | AT+CIFSR | AT+ CIFSR=? | ||
| AT+ CIPMUX | Establece múltiples conexiones. | AT+ CIPMUX=<mode> | AT+ CIPMUX? | 0 for single connection 1 for multiple connection | |
| AT+ CIPSERVER | Establece el módulo como servidor. | AT+ CIPSERVER= <mode>[,<port> ] | mode 0 to close server mode, mode 1 to open; port = port; eg. turn on as a TCP server: AT+CIPSERVER=1,8888, check the self server IP address: AT+CIFSR=? | ||
| AT+ CIPSTO | Set the server timeout | AT+CIPSTO? | <time>0~28800 in second | ||
| +IPD | Aparece en el monitor serial cuando se han recibido datos desde la conexión | For Single Connection mode(CIPMUX=0): + IPD, <len>: For Multi Connection mode(CIPMUX=1): + IPD, <id>, <len>: <data> |
| Programa para configurar de manera manual los comandos en el módulo. | ||||||||||||
Con el siguiente programa se ingresan y reciben los mensajes que el módulo regresa cuando se hace la configuración. |
||||||||||||
| En la parte de setup ingrese algunos comandos de configuración básica. Afortunadamente el módulo guarda las configuraciones correctas, por lo que podría configurarse solo una vez correctamente con este programa, si los comandos del setup fallan(desconozco exactamente la causa)Se pueden ingresar manualmente los siguientes comandos de configuración básica sin ponerlos en el setup: AT+RST AT+CWMODE=3 AT+CWJAP=”CHARLY”,”CONTRASE” // Conectar al punto de acceso AT+CIFSR // Para saber mi IP AT+CIPMUX=1 // Permitir multiples conexiones AT+CIPSERVER=1,80 // Arrancar el servidor web en el puerto 80 AT+CIFSR Solo basta abrir el navegador y escribir la dirección que el comando AT+CIFSR nos dió en nuestra wifi local. En el monitor serial aparecerá: Otra forma de conectarse al módulo es en el modo de AP, y se configura con el copmando: AT+CWSAP="arduinoCasa","enableAccess",9,3 Donde : AT+CWSAP="ssid","contraseña",canal,encriptación La dirección generica del modulo en este caso es: 192.168.4.1 Bastará conectarnos a esta nueva red configurada y abrir el navegador para teclear la dirección anterior y en el monitor serial aparecerá algo parecido que en el ejemplo anterior. Para poder embeber código html y poder mostrar una pagina que reciba los mensajes del módulo se utiliza el siguiente comando: inicar conexion para mandar mensajes AT+CIPSTART=0,"TCP","192.168.2.18",80 Donde: AT+CIPSTART=id,"TCP/UDP","IP Destino",puerto Si el mensaje es: Escribir: AT+CIPSEND=0,tamaño del texto Enter > <h1>Codigo HTML</h1> |
||||||||||||
En el navegador aparecerá: |
||||||||||||






estoy interesado en tu tema , abra manera de comunicarnos??? o ponernos en contacto?
ResponderEliminarHola, si claro lo que gustes cualquier duda comentario o sugerencia te dejo mi e-mail unscriptedmoment@gmail.com solo en sunto comentame que eres tu
Eliminar