miércoles, 17 de mayo de 2017

Arduino + ESP8266 [Usando los Pines de Arduino]


Que tal Colegas!!!

En este aporte seguiremos practicando con el modulo Wi-Fi ESP8266.

A raíz de algunos comentarios en la entrada anterior de Arduino + ESP8266 en donde me preguntaban como hacer la practica pero utilizando los pines de Arduino, decidí hacer este nuevo post!!!

Esta vez si utilizaremos los pines de el Arduino para activar 2 Leds. Al momento de oprimir unos botones que tendremos en nuestra pagina Web.
También haremos la pagina con un poco mas de estilo utilizando Bootstrap(en este tema no entrare en detalles).

Para ver las características de el modulo y aprender a cargar el sketch utilizando Arduino pásate por ACÁ.

Los materiales que usaremos en esta practica son:
1 Arduino UNO.
1 Modulo ESP8266-01.
2 Leds Cualquier color.
Protoboard
Cables para conexión.

Para esta practica vamos a usar 2 sketch's, uno para el ESP8266 y el otro para Arduino.

Primero vamos a cargar el sketch a Arduino de la manera tradicional, sin tener conectado nada a el.
Este es el código:


Después de hacer lo anterior cargamos el código a el ESP8266.
A continuación les muestro el esquema de conexión para cargar el código a el ESP:
De esta manera estamos usando el Arduino solo como convertidor serial a TTL para cargar el codigo al ESP.
Código:


Después de cargar el código a el ESP y si todo va bien, abran el monitor serial y deberían ver esto:

Ahora abrimos un navegador web y copiamos la dirección que nos indico en el monitor serial.
Tendrán que ver esto:
Muy bien!!! Esta es la interfaz que nos permitirá encender los leds conectados a los pines de Arduino.
Ahora solo nos falta modificar la conexión que ya tenemos echa para enviarle los datos a Arduino por el puerto serie. La conexión queda de esta forma:

Si se pudieron dar cuenta, ya no tenemos conectado el pin de Reset de Arduino a tierra, esto por que ahora si vamos a utilizar el Arduino de manera convencional.

Ahora si, a probar nuestra interfaz web!!!

Como es costumbre les dejo un vídeo de el funcionamiento.

El retardo que se ve al encender los leds solo pasa en el vídeo, cuando ustedes hagan la practica se darán cuenta que la comunicación es al instante.

Hasta aquí este aporte, espero les quede claro los pasos a seguir y de no ser así escriban sus dudas en los comentarios y a la brevedad posible estaré resolviéndolas.

Hasta la proxima Arduineros.

12 comentarios:

  1. Muy buen aporte, tengo una pregunta, como podría en lugar de los botones sustituirlos por un pulso, es decir un 1 o un 0 para prender o apagar los LED's?

    ResponderBorrar
    Respuestas
    1. Hola Gerardo.
      No entendí bien tu pregunta...
      Te refieres a la parte de el ESP o de el Arduino??

      Borrar
  2. hola no consigo la libreria ESP8266WiFi, me podrias decir de donde la descargo?

    ResponderBorrar
    Respuestas
    1. Hola Mauricio, para aprender a instalar librerías externas pásate por este post, ahí se explica en unos sencillos pasos.
      https://arduinocentermx.blogspot.mx/2017/05/instalar-librerias-externas-arduino-ide.html
      Saludos!!!

      Borrar
  3. Muchas gracias por responder, mi pregunta es que no encuentro esa libreria, tendrias el link para poderla descargar de internet a la libreria que usas en el ejemplo? la ESP8299WiFi.h

    ResponderBorrar
    Respuestas
    1. Hola de nuevo.
      En la respuesta anterior te puse el link para que aprendas a instalar librerias desde el mismo IDE de Arduino, asi no tendras que buscarlas en internet.
      Te lo dejo de nuevo...

      https://arduinocentermx.blogspot.mx/2017/05/instalar-librerias-externas-arduino-ide.html

      Solo copialo y pegalo en una pestaña nueva de tu navegador

      Borrar
  4. Bueno lo que quiero decir es como seria el proceso inverso, mandar la senal del esp8266 a WiFi y luego en otro esp8266 recibir y prender o apagar un led o mas led, por ejemplo, una maquina copiadora prende un led rojo cuando ya no tiene papel, esa senal enviarla por esp8266 al internet y recibirla en mi escritorio en otro esp8266 prendiendo ese led rojo (generalmente) para asi yo llamarle al ayudante y pedirle que ponga mas papel a la copiadora, trasladar esa senal de alarma de la copiadora que esta alla lejos donde yo no la puedo ver a mi escritorio y ahi prenda el led de alarma, eso es lo que me gustaria hacer y con este blog ya casi esta solo falta la comunicacion del esp8266 de la copiadora a el que yo tengo en el escritorio, se ve que es posible pero no se como.

    ResponderBorrar
  5. Agrego que en el diagrama de conecciones en el ultimo paso aparece el GPIO0 conectado a tierra, a mi asi no me funciono, por que esta en modo flash, sin embargo desconectandolo si me funciono, quiza hay que corregir el diagrama de conecciones para todos los que quieran armar el circuito.

    ResponderBorrar
    Respuestas
    1. Hola Gerardo.
      Tienes razón en cuanto a el ultimo diagrama de conexión!!.
      Ya lo corregí.
      Respecto a tu duda de comunicación entre los 2 ESP8266...
      Me acabas de dar el tema para el post de la siguiente semana!!
      Lo voy a preparar para subirlo el martes y así resolver tu duda!!!
      Saludos y gracias por estar atento a el Blog.

      Borrar
  6. HE realizado todas las conexiones tal cual pero al momento de cargar el codigo el esp8266 simplemente deja de responder y no parece nada

    ResponderBorrar