Comparación de Arduino vs ESP8266 vs ESP32

Este artículo es una comparación de microcontroladores de un total de 8 placas basadas en Arduino y ESP8266. Te muestro cuál es la mejor para tu proyecto.

En esta comparativa de microcontroladores comparo en total 8 placas diferentes y te doy mi sugerencia, qué placa utilizar en base a diferentes casos de uso.

Te daré una visión general de las diferentes placas Arduino que son las más populares en el mercado, así como las placas ESP32 y ESP8266 que también se utilizan muy a menudo.

Empecemos y profundicemos en las fichas técnicas en esta comparativa de microcontroladores.

Tensión de trabajo

El voltaje de funcionamiento de los microprocesadores ESP es de 3,3 V en comparación con el voltaje de funcionamiento de Arduino de 5 V. Si las placas se utilizan mientras están conectadas a la toma de corriente, no habrá diferencia en el consumo de energía porque la corriente se reducirá para recolectar la misma cantidad de energía. En el caso de un caso de uso alimentado por batería, la diferencia será mucho mayor porque si la curva de descarga de la batería cae por debajo del voltaje de funcionamiento, el microprocesador se apagará.

Por lo tanto, las placas basadas en ESP tendrán un tiempo de ejecución más prolongado, ya que estas placas podrían funcionar a 4 V, mientras que a 4 V las placas Arduino se apagaron.

Curva de descarga

Fuente de alimentación

La alimentación de las placas ESP8266 está entre 2,5 V y 12 V dependiendo de las diferentes placas. Las placas Arduino tienen una fuente de alimentación más alta entre 7 V y 12 V. En la práctica, la diferencia no tendrá un gran impacto.

Consumo actual

El consumo de corriente es importante para los proyectos basados ​​en baterías para aumentar la vida útil del proyecto. En general, las NodeMCU basadas en el microprocesador ESP8266 tienen un consumo de corriente muy bajo entre 15 µA y 400 mA que se puede reducir aún más con el modo de sueño profundo activado a 0,5 µA. Por lo tanto, el consumo de corriente es 70.000 más alto en el modo de suspensión profunda para el Arduino Uno con 35 mA. En general, sigo prefiriendo las tarjetas basadas en ESP cuando la fuente de alimentación es una batería.

Si desea aprender cómo reducir el consumo de energía de las tarjetas, hay artículos exclusivos sobre este tema.

  • para Arduino Nano
  • para Arduino Uno
  • para Arduino Mega
  • ¿Cómo reducir el consumo de energía del ESP8266?
  • Reducir el consumo de energía del ESP32

E / S digital, PWM y pines analógicos

  • Pines de E / S digitales: la diferencia entre todas las placas cuando se trata de pines de E / S digitales es casi nula. La única diferencia es que las placas más grandes, como la NodeMCU ESP32 (36) y la placa más grande, la Arduino MEGA R3 (54) tiene muchos pines de E / S digitales.
  • Pines PWM: las placas basadas en ESP tienen una mejor relación de pines de E / S digitales a pines PWM porque PWM es utilizado por un pin digital. En mi opinión, todas las placas tienen una cantidad suficiente de pines PWM.
  • Pines analógicos: en mi opinión, este es el principal inconveniente de los NodeMCU. Porque solo tienen 1 o 2 pines de entrada analógica ether. Por supuesto, puede usar un IC como multiplexor, pero creo que es más fácil de usar si tiene la cantidad correcta de pines analógicos directamente en la placa. Las placas Arduino tienen una buena cantidad de pines de entrada analógica entre 5 y 15.

SPI / I2C / I2S / UART

  • Protocolo de comunicación SPI (Serial Peripheral Interface) para enviar datos entre microcontroladores. Es un bus de datos síncrono, es decir, utiliza un reloj para regular la transferencia de datos. Si desea obtener más información sobre SPI, haga clic aquí.
  • El protocolo de comunicación I2C más utilizado para enviar y recibir datos de otros dispositivos como pantallas OLED, sensores de presión barométrica, etc. Si desea saber más sobre I2C, haga clic aquí.
  • I2S (Inter-IC Sound), es un estándar de interfaz de bus serie eléctrico que se utiliza para conectar dispositivos de audio digital entre sí. Si desea saber más sobre I2S, haga clic aquí.
  • UART (Receptor / Transmisor Asíncrono Universal) no es un protocolo de comunicación como SPI e I2C, sino un circuito físico en un microcontrolador. El objetivo principal es transmitir y recibir datos en serie. Si desea saber más sobre UART, haga clic aquí.

La cantidad de pines que necesita es muy fuerte según su caso de uso. Por lo general, las placas basadas en ESP y las placas Arduino tienen al menos un pin para estas conexiones de transferencia de datos. Pero las tarjetas ESP tienen en su mayoría un segundo pin para la comunicación.

Corriente DC por pin

La corriente proporcionada por la placa no importa. Las placas Arduino, ESP o Raspberry Pi o cualquier otra placa de comparación de microcontroladores están diseñadas para controlar dispositivos, no para alimentar esos dispositivos. Hay muchos dispositivos como LED, pantallas, etc., que pueden ser alimentados por la placa. Pero hay muchos otros dispositivos, como motores, que requieren mucha más potencia de la que puede proporcionar un microcontrolador. Por lo tanto, aún puede alimentar los dispositivos desde una fuente de alimentación externa.

Memoria flash y SRAM

  • La memoria flash (espacio del programa), es donde se almacena el boceto de Arduino.
  • SRAM (memoria estática de acceso aleatorio) es donde el boceto crea y manipula variables durante la ejecución.
  • EEPROM es el espacio de memoria que los programadores pueden usar para almacenar información a largo plazo.

La memoria flash y EEPROM no son volátiles (la información persiste después del apagado). SRAM es volátil y se perderá al encenderlo.

Velocidad de reloj

Todas las placas Arduino funcionan a 16 MHz, lo que significa que el microprocesador puede ejecutar hasta 16 millones de instrucciones por segundo. Eso puede parecer mucho, pero si considera que simplemente configurar el pin digital en alto puede tomar más de 50 ciclos de reloj. Las tarjetas basadas en ESP son mucho más rápidas con una velocidad de reloj de 52 MHz a 160 MHz para el ESP32. Es 10 veces más rápido. Entonces, si está planeando un proyecto grande con muchas operaciones, debe optar por las tarjetas basadas en ESP.

INALÁMBRICO

En general, malas noticias para el usuario de la placa Arduino y buenas noticias para las placas ESP. El Arduino Uno viene en dos versiones. Uno sin WiFi y otro WiFi incluido en la tarjeta. Pero no te preocupes, porque hay muchas posibilidades de usar WiFi a pesar de la ausencia de un chip WiFi a bordo. O puede usar un escudo WiFi Arduino, o puede conectar la placa Arduino con un ESP-01, con WiFi incluido.

Tamaño

En esta comparación de microcontroladores, echamos un vistazo a diferentes tamaños de placas con un gran factor de impacto en el tamaño: el número total de pines. Cuantos más pines tenga la tarjeta, más grande será la tarjeta. Por lo general, las placas basadas en ESP como NodeMCU son más pequeñas que las placas Arduino y encajan en una maqueta. Dependiendo de su proyecto, el tamaño importará o no.

Premio

La batalla de precios será para las tarjetas basadas en ESP, ya que son muy baratas alrededor de $ 7. Las placas Arduino originales cuestan alrededor de $ 22, pero encontrará placas con la misma configuración alrededor de $ 12. Si desea ahorrar dinero, elija las placas NodeMCU o las placas que están modeladas a partir de las placas Arduino originales.

La siguiente tabla le brinda una descripción general de todos los componentes y partes que utilicé para este tutorial. Recibo comisiones por compras realizadas a través de los enlaces de esta tabla.

Arduino NanoAmazonAliExpress
Arduino Pro MiniAmazonAliExpress
Arduino UnoAmazonAliExpress
Arduino MegaAmazonAliExpress
ESP32 ESP-WROOM-32AmazonAliExpress
ESP8266 NodeMCUAmazonAliExpress
ESP8266 WeMos D1 MiniAmazonAliExpress

Conclusión de la comparación de microcontroladores.

ESP8266 NodeMCU V2 NodeMCU V3 ESP32 NodeMCU ESP8266 WeMos D1 Mini Arduino NANO 3 Arduino UNO R3 Arduino UNO WIFI R2 Arduino Mega

  ESP8266 NodeMCU V2NodeMCU V3ESP32 NodeMCUESP8266 WeMos D1 MiniArduino NANO 3Arduino UNO R3Arduino UNO WIFI R2Arduino Mega
MicrocontroladorESP8266ESP8266ESP32ESP8266ATmega328pATmega328pATmega4809ATmega2560
Tensión de funcionamiento3,3V3,3V3. 3V3,3V5V5V5V5V
Fuente de alimentación7V – 12V7V – 12V7V – 12V4V – 6V7V – 12V7V – 12V7V – 12V7V – 12V
Consumo de corriente15 µA – 400 mA15 µA – 400 mA20 mA – 240 mA19 mA – 180 mA45 mA – 80 mA50 mA – 150 mA50 mA – 200 mA
Consumo de corriente Sueño profundo0,5 µA0. 5 µA5 µA23 µA (con ajustes especiales)35 mA35 mA500 µA
Pines de E/S digitales11 o 1316361114141454
Pines de E/S digitales con PWM11 o 1316361166515
Pines de entrada analógica1115186616
SPI/I2C/I2S/UART2/1/2/22/1/2/24/2/2/21/1/1/11/1/1/11/1/1/11/1/1/11/1/1/4
Corriente CC por pin de E/S12 mA12 mA20 mA40 mA40 mA40 mA20 mA
Corriente de CC para 3. 3V Pin40 mA50 mA150 mA150 mA150 mA
Memoria flash4 MB4 MB4 MB4 MB32 KB32 KB48 KB256 KB
SRAMn. A64 KB520 KB2 KB2 KB6 KB8 KB
EEPROM512 bytes512 bytes1024 bytes1024 bytes256 bytes4096 bytes
Velocidad de reloj52 MHz80 MHz80 MHz / 160 MHz80 MHz / 160 MHz16 MHz16 MHz16 MHz16 MHz
Longitud48 mm58 mm52 mm3445 mm69 mm69 mm102 mm
Ancho26 mm31 mm31 mm2618 mm53 mm53 mm53 mm
WIFInonono
Bluetoothnonononononono
Sensor táctilnono10nonononono
CANnonononononono
Interfaz MAC Ethernetnonononononono
Sensor de temperaturanonononononono
Sensor de efecto de parednonononononono
Toma de corrientenonononono
conexión USB
Precio6$6$. 50$11$6$22$22$44,90$38,50

¿Cuál es el mejor microcontrolador en esta comparación de microcontroladores? En mi opinión, solo hay algunos casos de uso en los que no debería usar una tarjeta basada en ESP. Las tarjetas basadas en ESP son rápidas, tienen bajo consumo de energía, alta memoria y conexión WiFi. Además, el precio es muy bajo. El único caso de uso en el que puedo pensar que las placas Arduino son mejores es para las entradas analógicas. Si desea leer muchos valores de entrada analógica y no desea utilizar un multiplexor, debe optar por una placa Arduino.


Deja un comentario