sábado, 10 de junio de 2017

Arduino ESP8266 servidor web con DHT11 y sensor de humedad en tierra


Buenas a todos!!!
Estamos otra vez por aquí  con nuevos ejemplos. En este caso estoy probando una pequeña estación meteorológica  con Arduino y el módulo ESP8266.
Si bien he tenido que mirar muchas páginas y diferentes ejemplos hasta encontrar el que más a mi modo de ver fácil y con un funcionamiento de notable.

Tuve bastantes problemas con un fallo llamado "busy s..." incluso después de haber actualizado la versión del Firmware a la versión 0.9.2.2 tuve que volver a actualizar a la versión 1.3.0.
Toda la información sobre como actualizar el Firmware del modulo ESP8266 la podéis encontrar aquí.


Para este ejemplo he utilizado los siguientes componentes


  • Arduino Nano
  • Módulo WiFi ESP8266
  • Sensor DHT11 Temperatura y Humedad
  • Sensor SMS  (Soil Moisure Sensor) Sensor de humedad en suelo.

























Una vez abierto el Programa al final del archivo .ino encontrareis una linea llamada:



//sendConf("AT+CWJAP=\"nombredelrouter\",\"contraseña\"\r\n", 2000, DEBUG);

Esta linea es la que nos conecta con el router y tenemos que cambiarla por la configuración de nuestro router, es decir sustituimo "nombredelrouter" por nuestro SSID y "contraseña" por la contraseña de acceso al router.

Las demás lineas las podemos dejar tal y como están ya que se refieren a la conexión del servidor:

  • AT+GMR : Muestra el firmware del modulo
  • AT+CWMODE=3 : Modo Cliente/servidor
  • AT+CIFSR: Muestra la IP y La MAC del módulo
  • AT+CIPMUX=1 : Activa conexiones multiples
  • AT+CIPSERVER=1,80 : Inicia el servidor Web en el puerto 80


Como podeis ver en el apartado AT+CIFSR nos indica cual es la IP del módulo. 
La IP 192.168.4.1 corresponde a la IP interna del módulo.
La IP 192.168.0.154 Corresponde a la IP asignada por el router.


También si observáis no aparece la linea AT+CWJAP, eso es por que yo ya tengo configurado el modulo para mi red y una vez hecho esa linea se puede comentar ya que la configuración queda almacenada en la memoria interna del módulo

La linea AT+RST, También esta comentada y sirve para resetear el módulo. una vez que hayas metido la configuración del router también la puedes comentar para que no borre la información almacenada en él.

Accediendo a la web:

Para acceder a la web solo tienes que abrir tu navegador y escribir en la barra de direcciones en mi caso seria la dirección: 192.168.0.154





y en unos pocos segundos tiene que aparecer la web:


y está sería la lectura del monitor serial:


Este ejemplo ha sido el resultado de muchas pruebas con el módulo ESP8266. Es muy posible que no os funcione a la primera, seguid probando e intentando diferentes configuraciones.

Aquí os dejo el programa para que lo probéis, espero que os guste!!!


Descargar archivo: Arduino_ESP8266_Webserver desde GitHub


1 comentario :