Tutorial para Usar la ESP8266 ESP-12E UART Wireless WIFI Shield
Introducción
Bienvenidos a este tutorial sobre cómo configurar la ESP8266 ESP-12E UART Wireless WIFI Shield de Wangtongze en Modo Estación. Este modo permite que la placa se integre en una red WiFi existente, obteniendo su propia dirección IP para actuar como un servidor web. Este tutorial explorará formas efectivas de programar y configurar la shield, lo cual es esencial para proyectos de IoT que requieren comunicación bidireccional y control remoto. Acompáñanos para descubrir cómo maximizar las capacidades de esta poderosa herramienta en tus proyectos.
¿Qué es la ESP-12E UART Wireless WIFI Shield?
La ESP8266 ESP-12E UART Wireless WIFI Shield de wangtongze es una herramienta avanzada para proyectos de electrónica que permite integrar capacidades de red WiFi en microcontroladores como Arduino. Esta placa se caracteriza por incorporar un módulo ESP8266 ESP-12E, conocido por su capacidad para manejar comunicaciones inalámbricas y su compatibilidad con el entorno de programación de Arduino.
Diferentes Métodos de Programación
-
Usando Comandos AT (Actualización de Firmware): El ESP8266 puede ser controlado mediante comandos AT cuando su firmware original está intacto o ha sido restaurado. Para esto, puedes actualizar o re-flash el firmware usando un convertidor serial (como un módulo USB a UART). Los comandos AT permiten una gestión simple y directa del WiFi y otras funcionalidades del ESP8266 sin necesidad de escribir código específico para manejar el hardware.
-
Programación Directa (Usando IDE de Arduino): Otra forma es programar la shield directamente usando el Arduino IDE, donde puedes escribir sketches para controlar la shield de forma más flexible y avanzada. Esto permite una integración más profunda con sensores y actuadores y la utilización de bibliotecas complejas.
Configuración Propuesta para Este Tutorial
En este tutorial, utilizaremos el Modo Estación para programar el ESP8266 y actuar como un servidor web. A continuación, se describe cómo configurar tanto la shield como el Arduino para trabajar juntos en este modo.
Una característica notable de la placa son sus cuatro dip switch, que permiten a los usuarios controlar la conexión entre el Arduino y el módulo ESP8266, facilitando diversas configuraciones de comunicación y programación.
Nota sobre Variantes
Es fundamental estar consciente de que existen varias variantes de esta placa, algunas de las cuales pueden incluir errores tipográficos o diferencias en componentes. Estas variaciones pueden influir en cómo se debe manejar y programar la placa para proyectos específicos.
Es importante asegurarse de que tu placa contiene los transistores adecuados para la conmutación de niveles lógicos. Algunas placas pueden tener transistores J3Y en lugar de los BSS138 (J1Y), lo cual puede afectar la funcionalidad. Para verificar esto, puedes colocar todos los dip switch en posición 'off' y tratar de subir un programa al Arduino con la shield conectada. Si los transistores no son los adecuados, el proceso de carga fallará y mostrará un error.
Para más detalles sobre las variantes de esta placa y cómo manejarlas, puedes visitar la siguiente guía completa en Instructables.
Materiales requeridos
- Arduino Uno o Mega
- Modulo Shield Wifi Esp8266 2.4ghz Arduino Uno, Mega
- Convertidor Serial a USB (como un módulo basado en los chips FT232RL o CH340G)
Pasos para la Programar el ESP8266
Paso 1: Prepara el Convertidor Serial
- Alimentación: Asegúrate de que el convertidor serial pueda proporcionar la alimentación necesaria para la shield. La ESP8266 necesita 3.3V, por lo que es crucial usar un convertidor que tenga una opción de salida de 3.3V y no 5V, ya que 5V podría dañar la ESP8266.
Paso 2: Conectar los Pines
Conecta los pines entre la ESP8266 y el convertidor serial de la siguiente manera:
- 3.3V del convertidor serial a VCC en la ESP8266.
- GND del convertidor serial a GND en la ESP8266.
- TX del convertidor serial a RX en la ESP8266.
- RX del convertidor serial a TX en la ESP8266.
Paso 3: Configuración de Software
- Instala los drivers necesarios para el convertidor serial, dependiendo del chip que utilice (FTDI, CH340G, etc.).
Para asegurarte de que tu convertidor serial está correctamente instalado y reconocido por tu computadora, puedes verificarlo en el Administrador de dispositivos de Windows. Simplemente abre el Administrador de dispositivos, busca en la sección "Puertos (COM y LPT)" para localizar tu convertidor, como "USB Serial Port (COMX)". Si hay un problema, como un signo de exclamación, puede que necesites instalar o actualizar los drivers desde el sitio web del fabricante. Esto te garantizará que la comunicación entre tu computadora y la ESP8266 se realice correctamente.
Preparación del IDE Arduino
Para usar esta SHIELD (que utiliza el chip ESP8266) al IDE de Arduino, debes seguir estos pasos:
-
Abrir el IDE de Arduino: Inicia el IDE de Arduino en tu computadora.
-
Abrir las Preferencias: Dirígete a la barra de herramientas superior, haz clic en
Archivo
y luego enPreferencias
. -
Agregar URL de la Junta: Busca el campo
Gestor de URLs Adicionales de Tarjetas
en la ventana de Preferencias. Aquí, debes agregar la siguiente URL: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json -
y luego haz clic en
Aceptar
. -
Abrir el Gestor de Placas: Ve a la barra de herramientas superior, selecciona
Herramientas
, luegoPlaca
, y luego seleccionaGestor de placas
. -
Instalar el paquete ESP8266: En el Gestor de Tarjetas, escribe "ESP8266" en el campo de búsqueda. Cuando encuentres el paquete "esp8266" de "ESP8266 Community", haz clic en el botón
Instalar
. -
Seleccionar la Placa: Una vez que el paquete esté instalado, ve a
Herramientas
>Placa
, luego desplázate hacia abajo hasta que veas "NodeMCU 1.0 (ESP-12E Module)". Haz clic en él para seleccionarlo.
Para programar la ESP8266 ESP-12E UART Wireless WIFI Shield, ajusta los dip switches de la siguiente manera: Dip Switch 1 y 2 en posición OFF, y Dip Switch 3 y 4 en posición ON. Después, presiona el botón de reset (RST) en la shield. Esta configuración prepara la shield para entrar en modo de programación, permitiendo cargar nuevo firmware o programas a través del puerto serial.
Ahora con tu programador serial con el ESP-8266 conectado carga el siguiente código desde el IDE de Arduino asegurandote de que el puerto y la placa son correctos y espera a que termine de flashear.
Cambia "Tecneu_pruebas" por el ssid de tu red local, y "12345678" por tu contraseña.
Código:
Este código configura un servidor web en un módulo ESP8266 para controlar un LED a través de comandos HTTP. Comienza incluyendo las bibliotecas necesarias y estableciendo las credenciales de la red WiFi. En la función setup()
, configura el módulo para conectarse a la red WiFi especificada y una vez conectado, imprime la dirección IP en la consola. Define dos rutas en el servidor web (/ledon
y /ledoff
) que permiten encender y apagar un LED mediante peticiones web. Finalmente, inicia el servidor web y, en la función loop()
, se mantiene atento a las solicitudes de los clientes para gestionar el estado del LED.
Programación del Arduino
Ahora sube el siguiente código a tu arduino seleccionando la placa y puerto correspondientes.
Este código utiliza la biblioteca SoftwareSerial
para permitir la comunicación serial a través de los pines 0 y 1 en un Arduino, donde se lee el texto enviado a estos pines. La función principal del código es encender o apagar un LED conectado al pin 13 basándose en comandos específicos ("Encendido" y "Apagado") recibidos a través de la comunicación serial. El código acumula caracteres recibidos en un buffer hasta que se encuentra un carácter de fin de línea, momento en el cual verifica el comando acumulado y actúa encendiendo o apagando el LED según corresponda. Este proceso se repite continuamente mientras el Arduino esté operativo.
Nota: En un Arduino, los pines 0 y 1 están destinados para la comunicación serial con la computadora, lo que puede causar conflictos si una shield también los usa para comunicación serial. Para evitar esto, el código emplea la biblioteca SoftwareSerial.
Si surgen problemas con los pines 0 y 1, simplemente puedes cambiar los pines en el código a 2 y 3, y usar jumpers para conectar estos pines a la shield, facilitando así una comunicación efectiva sin interferir con la conexión USB del Arduino.
Nota importante: Si usas la ESP8266 ESP-12E UART Wireless WIFI Shield con un Arduino Uno, ten cuidado con los pines de la shield que pueden tocar el jack de alimentación del Arduino. Para evitar cualquier cortocircuito, coloca cinta aislante sobre el jack de alimentación o bajo los pines de la shield.
Con la shield conectada al Arduino, configura los dip switches 1 y 2 en "ON" y los 3 y 4 en "OFF". Abre el Monitor Serial en el Arduino IDE ajustado a 9600 baudios. Luego, reinicia la shield utilizando el botón "ESP-RST". Este proceso activa la conexión a la red WiFi especificada en el código y, una vez conectada, la dirección IP se mostrará en el Monitor Serial.
La computadora o dispostivo desde el cual accedas a la pagina web que crearás también debe estar conectado a esta misma red.
El siguiente paso es crear una pagina web que mande la información para prender y apagar el led, abre el siguiente enlace: https://webmaker.app/app/ y copia en el recuadro de HTML el siguiente código, cambiando "192.168.43.28" con la dirección IP de tu ESP-8266.
Haz clic en el botón de descargar y abre el archivo con un navegador.
Prueba a presionar cada botón y el LED en la placa Arduino (GPIO13) se debe apagar y prender en cada caso.
En el monitor serial llegarán los mensajes que indican cuando el LED se enciende y se apaga.
Conclusiones
En conclusión, la ESP8266 ESP-12E UART Wireless WIFI Shield de Wangtongze es una herramienta extremadamente versátil para cualquier entusiasta de la electrónica o desarrollador que busque integrar capacidades de WiFi en sus proyectos. Si bien este tutorial se centró en configurar la shield en Modo Estación y programarla para funciones básicas de servidor web, es importante destacar que las posibilidades no terminan aquí. La shield puede ser utilizada para una amplia gama de aplicaciones, desde sistemas de monitoreo de sensores hasta controladores de automatización del hogar. Con la habilidad de operar tanto en Modo Estación como en Modo Punto de Acceso, junto con su capacidad de manejar múltiples conexiones simultáneas, esta shield ofrece una plataforma robusta para desarrollar soluciones de IoT complejas y conectadas.
Productos Relacionados
No comments
comments