Cómo Seleccionar el ESP8266 Ideal para tu Proyecto
¿Sabes que el ESP8266 puede darte acceso a tu red inalámbrica? ¿Y el ESP32? Disponible a bajo precio y además, ¿es ecológico? Si no estás muy familiarizado con todo esto, quizás necesites dar un paso adelante.
Sin embargo, tranquilo, te hemos puesto a disposición los pros y contras de la información concerniente al ESP8266 sin dejar atrás al ESP32, y creemos que esto te será de gran ayuda para elegir cuál se adapta mejor a tu situación y condición.
Tras la sección de tutorial, te dirigiremos al lugar exacto para hacer tu compra, ¿genial no? Así que siéntate, calma los nervios y tómate tu tiempo con lo que tenemos para ti.
El ESP8266
1.1 Definición:
El ESP8266 es un microchip de fidelidad inalámbrica (WiFi) amigable y económico, que incluye una pila completa de protocolo de control de transmisión (TCP) o protocolo de internet (IP), permitiendo el acceso de cualquier microcontrolador a tu red inalámbrica (WIFI). En forma simple, el ESP8266 es un microchip WiFi con capacidad de microcontrolador y TCP.
Por historia, este chip llamó la atención de productores occidentales en 2014. Permite a un microcontrolador acceder a una red inalámbrica y ofrece otra ventaja: bajo coste.
Las diversas aplicaciones del ESP8266 incluyen: domótica, electrónica portátil, portales de punto de acceso, proyectos IoT, bombillas, enchufes, etc. En poco más de un mes, el proyecto ESP8266 se amplió añadiendo una plataforma de hardware abierto. Se hizo cuando el desarrollador committeó el devkit V0.9. Es el archivo para la placa ESP8266. NodeMCU avanzó soportando el protocolo MQTT IoT cuando MQTT se movió de Contiki a la plataforma SOC ESP8266 por Tuan PM.
1.1.1 Uso del ESP8266
Respecto al módulo ESP, hay diferentes procesos e IDEs disponibles para usar con él, y de estos métodos, el más usado regularmente es el Arduino IDE. Es estrictamente aconsejable usar el ESP8266 con 3,3 V; cualquier otro como 3,7 V puede ser terrible para el módulo. Por tanto, es necesario encontrar una placa competente que soporte 3,3 V, por eso usaremos la placa FTDI.
Como alternativa, se puede usar la placa Arduino si no consigues la FTDI. Al menos, si esperas algún desafío con el ESP8266, deberías mirar el aspecto del encendido. Para rectificarlo, necesitarías diseñar un pequeño regulador de voltaje para 3,3 V capaz de ofrecer al menos 500 mA.
1.2 Programación del ESP8266
Hay varios métodos adoptados para programar el ESP8266. El Arduino IDE es ubicuo en la programación del ESP8266. ¿Por qué? ¡Es simple! Incluso para principiantes parece relativamente cómodo, y para quienes llevan tiempo, solo parece pan comido. Bien, hay situaciones donde podrías necesitar un pequeño truco para avanzar más en Arduino.
En ese caso, podrías querer mirar un SDK oficial para programarlo en C puro. En programación, se requieren diferentes componentes: placa ESP8266, red WiFi disponible, cable USB, un sistema u ordenador que pueda ejecutar Arduino IDE, etc.
NodeMCU ESP8266
El nodeMCU comprende firmware que opera en el SOC (System on Chip) de fidelidad inalámbrica (WiFi) ESP8266. El nodeMCU apunta al firmware, que usa el lenguaje de scripting Lua y no los kits de desarrollo. Tras el ESP8266, el nodeMCU se diseñó en diciembre de 2013 y se usa comúnmente en aplicaciones IoT. Una revisión histórica breve mostró que Hong subió el archivo principal de firmware nodeMCU a GitHub el 13 de octubre de 2014. Desafortunadamente, los diseñadores principales abandonaron el proyecto, pero otros contribuyentes independientes lo continuaron. A 2016, nodeMCU ya contiene más de 40 módulos.
Pinout del ESP8266
En el pinout del ESP8266, hay una cosa crucial: no todos los pines son adecuados, o hay pines destinados a cosas particulares. Muchos toman el nodeMCU como el ESP-12E, pero esto no parece correcto. A diferencia del ESP-12E que usa UART para grabar, el USB es responsable de esto en nodeMCU. Al programar, usa números delante del GPIO (A0, D0, D1, D2, D3, D4, D5, D6, D7, D8). Debido a la diferencia en pines nodeMCU, algunos pines están arriba mientras otros abajo; pon el osciloscopio en el borde de los clavos. Las pruebas en entrada y salida mostraron que analogRead parece compatible solo con ADC, digitalWrite no es compatible con ADC y GPIO 6, 7, 8 y 11.
Tenemos pines de alimentación: GND (común para toda lógica y alimentación), USB (si conectado, es voltaje positivo al jack USB), 3V (el 3V es salida del regulador con capacidad de ofrecer 500 mA). También tenemos pines lógicos. Todos los pines lógicos son 3,3 V, y es el pin de propósito general más común para el microcontrolador. También tenemos pines serie: RX y TX. Ambos son de 3,3 V, pero la diferencia es que RX es entrada al módulo, mientras TX es salida del módulo.
ESP8266 Arduino
Debemos saber que hay bastantes IDEs que pueden usarse en la programación del ESP8266 y el Arduino IDE es uno perfecto. Esto se facilitó cuando la comunidad ESP8266 puso a disposición la vía para programar el ESP8266 usando Arduino IDE. Al usar esto, no se necesita microcontrolador externo, permitiéndote escribir sketches con la ayuda de librerías públicas de Arduino, ejecutándolos directamente en el ESP8266. El núcleo ESP8266 Arduino está diseñado para venir con librerías para conectar por WiFi (fidelidad inalámbrica) con ayuda de TCP y UDP. El ESP8266 ha facilitado todo esto; ¿cómo? Como la comunidad subió un peldaño diseñando el addon de Arduino, se volvió más fácil para principiantes interesados en programar el ESP8266. Siempre es aconsejable empezar con esto porque es ecológico.
Ivan Prokhorov, junto a otros miembros de la comunidad, lo han hecho más cómodo con su trabajo resultando en el diseño. Añadir una placa de terceros al Arduino IDE es una tarea mucho más fácil con el nuevo gestor de placas.
Proyectos con ESP8266
El ESP8266 es un módulo WiFi diseñado por Espressif Systems. Es un microcontrolador que realiza funciones relacionadas con WiFi. Por esta razón, se usa ampliamente como módulo WiFi junto con otras placas como Arduino.
5.1 Creación de un Servidor Web
Ahora probablemente entiendes que el ESP8266 no solo es esperado sino también económico, amigable y excelente opción para conectar tu hardware a internet. Hoy tenemos muchos productos IoT disponibles en el mercado, y varios proyectos se han hecho con ESP8266. Entre ellos: interfaz básica con otros microcontroladores, seguimiento en Google Maps, monitorización de contaminación del aire, etc. La idea se basa principalmente en la conexión entre ESP8266 y STM32F103C8.
Para crear un servidor web, usaremos el módulo WiFi ESP8266 y la placa STM32F103C8; otros componentes necesarios: hotspot y portátil. Para mantener comunicación con el ESP8266, los comandos AT son muy útiles.
La siguiente información contiene algunos comandos AT usados.
| COMANDOS AT | FUNCIÓN |
|---|---|
| AT+GMR | Muestra detalles del firmware. |
| AT+RST | Reinicia el módulo. |
| AT | Devuelve confirmación "OK". |
| AT+CIPCLOSE | Cierra conexión TCP o UDP. |
| AT+CIPSTATUS | Obtiene estado de la conexión. |
| AT+CIFSR | Obtiene dirección IP. |
No olvides que no son los únicos comandos AT; solo se destacan algunos en esta sección.
El STM32F103C8 contiene exactamente tres conjuntos de comunicación serie UART. Para conectar pines ESP8266 con pines STM32, refiérete a la tabla siguiente.
| ESP8266 | STM32 |
|---|---|
| RX | PA2 |
| TX | PA3 |
| GND | G |
| VCC | 3.3V |
| CH_PD | 3.3V |
5.2 Proyectos basados en Arduino ESP8266
Hay una lista interminable de ideas de proyectos basados en el módulo WiFi ESP8266 para mantenerte experimentando. Para echarte una mano, puedes aprovechar plataformas IoT. Una de ellas es Ubidots, una interfaz intuitiva que permite mostrar datos de tu proyecto y controlar dispositivos remotamente.
- Servo controlado por web usando Arduino y WiFi
- Monitorización de latidos
- Monitorización de contaminación del aire basada en IoT
- Macetas inteligentes de bajo coste usando ESP8266
ESP32 vs ESP8266
Al igual que el ESP8266, el ESP32 es una excelente opción de coste y ofrece un sistema en chip microcontrolador de bajo consumo. Elegir entre ESP32 o ESP8266 puede ser un reto, pero depende del tipo de proyecto. Ambos tienen ventajas e inconvenientes. En esta etapa, debes preocuparte por cuál elegir según lo que quieras hacer.
En coste, el ESP8266 es relativamente más barato que el ESP32. El ESP8266 puede no tener utilidad muy alta, pero es excelente para trabajos DIY IoT simples. En soporte software, ESP8266 es amigable. Una desventaja del ESP8266 es que sus pines pueden no ser suficientes para tu proyecto, y en esos casos no hay otra que ir a por el ESP32.
El ESP32 comprende más GPIOs con muchas funciones, siendo más potente que el ESP8266. El ESP32 soporta funciones Bluetooth y tiene WiFi más rápido. Muchos piensan que es más complicado trabajar con ESP32 que con ESP8266, ¡sí! Puede ser cierto pero no del todo. Puede parecer fácil al usarlo con lenguaje Arduino. Como nada viene con ventaja adjunta, una limitación es que es más costoso que el ESP8266; a diferencia del ESP8266 que funciona con la mayoría de software, no todo el software está diseñado perfectamente para ESP32.
Módulo
El ESP8266 es un módulo de fidelidad inalámbrica (WiFi) común para aplicaciones IoT. Funciona con voltaje de 3V pero puede llegar a 3,6V. Al alimentarlo y conectar en serie, se requiere un nivel de conocimiento técnico. El módulo puede permitir a cualquier microcontrolador el derecho a una red WiFi. Por supuesto, cada ESP8266 viene con firmware de comandos AT, insinuando que puede conectarse con dispositivo Arduino, dándote capacidad WiFi ilimitada.
La fantástica oferta que esto da no puede pasarse por alto, sin olvidar que es una comunidad competitiva y en constante desarrollo. Sus GPIOs permiten integración con sensores, haciéndolo un módulo robusto con capacidad de procesamiento y almacenamiento.
Tutorial
En esta sección, destacaremos los pasos necesarios para programar el ESP8266, y aquí programaremos usando Arduino IDE. Con la intervención del Arduino IDE, usar los módulos ESP parece relativamente más sencillo. La comunidad Arduino ha puesto a disposición su gestor de placas, ahorrando el estrés de aprender la documentación de instrucciones del módulo ESP.
Haremos parpadear un LED usando Arduino IDE para programar el módulo ESP.
Para programar el ESP8266 usando Arduino IDE, los componentes requeridos incluyen:
- Arduino IDE
- Módulo ESP8266
- Placa FTDI breakout
- Luz LED
- Paso 1: Asegurar disponibilidad de Arduino IDE. Si no lo tienes, descárgalo. Versiones 1.6.5 y superiores son las preferidas.
- Paso 2: Ve a Archivo, luego Preferencias. Desplázate casi al final, verás una pestaña con el título "URLs adicionales del gestor de placas". Haz clic en el espacio y escribe este enlace.
- Paso 3: Haz clic en Herramientas, desplázate a "Placa" y haz clic, luego "Gestor de placas". Busca "esp8266 by ESP8266 Community". Aparecerá el resultado, haz clic en "Instalar". Tras completar, ve a Herramientas, Placas, y selecciona "Generic ESP8266 Module".
- Paso 4: Verás una pantalla para subir el programa blink. Localiza el archivo clicando en Archivo, Ejemplos, ESP8266, y clic en Blink.
- Paso 5: Aquí se requiere la placa FTDI. Conecta el módulo ESP8266 y la placa FTDI. Configura el jumper y tira hacia abajo del GPIO0, luego alimenta los módulos. También se puede resetear pulsando el botón.
- Paso 6: Pulsa y espera a que la subida complete. Para asegurar que el programa se subió correctamente, notarás un LED de color parpadeando en el módulo ESP.
Conclusión
Volviendo a ver lo lejos que hemos llegado, creemos haberte dado información suficiente para elegir entre las opciones disponibles. Si necesitas un microcontrolador económico y amigable para proyectos simples, el ESP8266 debería ser la mejor opción. Sin embargo, en casos donde necesites codificación avanzada con Arduino IDE, podrías querer elegir el ESP32 sobre el ESP8266.
¡Estamos aquí para ti! Te damos garantía y te aseguramos originalidad a precio asequible. ¡Da el paso ahora, solo estamos a una mirada! Puedes contactarnos, solicitar cotización, y si tienes preguntas o sugerencias, no dudes en pasárnoslas.
Tecnología Industrial
- Elija el Reductor Adecuado: Consejos de Expertos para Par Óptimo y Eficiencia
- Entendiendo los Ajustes de Eje: Tres Tipos y Cómo Elegir el Correcto
- Cómo elegir el medidor de flujo adecuado: Guía práctica y definitiva
- Elegir las patas niveladoras ideales para muebles y maquinaria
- Cómo elegir guías de cajón correctas: guía completa
- Cómo elegir el carretilla manual adecuada: guía práctica para transporte seguro y eficiente de cargas pesadas
- Cómo elegir el tornillo de apriete (toggle clamp) correcto: guía práctica
- Guía experta: Seleccionando la encartonadora ideal para tu línea de producción
- Cómo Elegir la Máquina de Corte por Chorro de Agua Ideal para su Taller de Maquinado
- Elige el Curvatubos Ideal para tus Necesidades de Fabricación
- Elegir el anti-retroceso de transportador perfecto: Guía de seguridad