ESP32 es un tablero de IoT que consume muy menos potencia para funcionar. ESP32 viene con diferentes modos de trabajo que pueden ahorrar energía para durar ESP32 más tiempo usando una sola celda de batería. Estos modos ayudan a ESP32 a vencer a todos los demás microcontroladores en términos de energía cuando se trata de proyectos de detección remota.
Aquí en esta guía, los modos de ahorro de energía ESP32 se discutirán junto con el modo de suspensión profunda.
Modos de potencia ESP32
ESP32 tiene múltiples tipos de modos de trabajo dependiendo de su aplicación dentro de un proyecto. Para dar una imagen más clara, estos ESP32 funcionan de manera similar como los modos de ahorro de energía de nuestras PC o computadoras portátiles. Usando estos modos, podemos ahorrar demasiada potencia antes de su cierre.
Durante ESP32 modos de sueño El poder de cualquier periférico innecesario se corta, mientras que el único poder que se le da es RAM, que ayuda a ESP32 a retener sus datos y durar más.
Los siguientes son los principales periféricos a los que se administra o se corta la potencia durante los diferentes modos. Todos estos periféricos son los principales consumidores del poder ESP32.
ESP32 viene con Administración de energía avanzada utilizando el cual podemos configurar diferentes tipos de modos controlando la potencia a periféricos mencionados anteriormente. Según la distribución de energía, podemos clasificar ESP32 en 5 modos diferentes, cada uno de estos modos tiene características únicas y consumo de energía:
ESP32 en modo activo
El primer modo de trabajo de ESP32 es el modo activo. Está en modo normal durante el cual ESP32 toma la máxima potencia y todos los periféricos están en modo de trabajo. El consumo de energía principal durante este modo ocurre en el modo WiFi y Bluetooth.
Mientras ejecuta ESP32 durante este modo, el consumo de energía puede subir 240 mM de corriente. Y a veces, cuando tanto WiFi como Bluetooth están trabajando juntos, la potencia puede subir hasta 800 mA de corriente.
Este es el modo de conservación más de energía de ESP32 y la potencia máxima sin ningún uso. Para que ESP32 funcione, tenemos que apagar algunos de sus periféricos durante este modo.
ESP32 en modo de suspensión módem
El siguiente modo en la lista es el modo de suspensión de módem. En este modo, la mayoría de los periféricos ESP32 están en modo activo; Solo el módulo WiFi, Bluetooth y Radio está apagado. Durante este modo, la CPU está funcionando y el reloj interno es fácilmente configurable.
Durante este modo, el consumo de energía va desde 3mera a 20 mA. A una velocidad lenta, la CPU consume menos potencia, pero a medida que aumenta la velocidad de la CPU, la potencia sube a 20 mA.
Una de las cosas interesantes de esto es que podemos mantener viva Wifi y Bluetooth Connection a algunos intervalos de tiempo predefinidos. Durante este modo, la conectividad inalámbrica ESP32 se estableció solo cuando llegó una señal de atención. Esta cantidad de tiempo predefinida se conoce como Patrón de sueño de la asociación.
Durante este modo, ESP32 se conecta al enrutador en modo de estación. El punto de acceso (enrutador) transmite una señal por cierto tiempo que anuncia la presencia de su wifi. Durante este tiempo, ESP32 sincroniza la información con la información de transmisión de puntos de acceso después de eso, se vuelve a dormir.
ESP32 en modo de suspensión ligera
El modo de suspensión de luz de ESP32 funciona de manera similar al modo de suspensión de módem. También sigue los intervalos de tiempo predefinidos para despertar e intercambiar información. Estos intervalos de tiempo predefinidos se llaman patrones de sueño de asociación.
La principal diferencia entre el modo de suspensión de luz y módem es que durante el modo de suspensión de la luz Rango de reloj Se utiliza la técnica. Lo que hace el reloj es apagar el circuito del reloj para algunas partes de los circuitos, al hacer esto, las flisps no tienen que cambiar sus estados regularmente.
Ya que los estados de conmutación entre altos y bajos según el pulso del reloj consume energía. Apagarlo ahorrará mucha potencia para otros periféricos principales de ESP32.
Durante este modo, la CPU no se apaga por completo, sino que se detiene al deshabilitar los pulsos de reloj para sus periféricos. Mientras que el coprocesador RTC y ULP mantiene vivo, lo que en general resulta en un bajo consumo de energía alrededor 0.8 mA.
Antes de ingresar a este modo, todos los datos se almacenan dentro de la RAM para que pueda reanudar la operación una vez que se despierte desde el modo de suspensión utilizando la fuente de atención externa.
ESP32 en modo de suspensión profunda
Durante el modo de suspensión, ESP32 es el modo más utilizado para el ahorro de energía, ya que puede maximizar que ESP32 funcione a largo plazo sobre una batería de carga única. Durante este modo, la CPU 2 de ESP32 se apaga y el ULP (procesador Ultra Low) se hace cargo de la carga. El flash y la RAM están deshabilitados, la memoria RTC solo está alimentada. Además, WiFi y Bluetooth están completamente deshabilitados. El consumo de energía va desde 0.15 mA a 10 μA.
Una vez que este modo está activo, la CPU está cerrada, pero el coprocesador ULP puede leer datos provenientes de pines GPIO como lecturas de sensores. Usando el pin GPIO podemos crear una interrupción que despierte la CPU ESP32 una vez que se requiere. Este modo es útil en aplicaciones en las que tenemos que despertar ESP32 usando Wake Up o un temporizador externo.
Por ejemplo, si diseñamos un sistema de seguridad donde la CPU ESP32 permanece apagada durante todo el tiempo. Solo se despierta una vez que recibe una señal de un sensor de detector de movimiento. Una vez que el procesador ULP reciba la entrada, despertará la CPU ESP32 y realizará el conjunto predefinido de instrucciones, como enviar un correo electrónico.
A lo largo de la CPU, la memoria principal de ESP32 también se apaga y borró. No se puede acceder a cualquier cosa almacenada en su interior más tarde si entramos en modo de suspensión profunda. Debido a esto, ESP32 almacena los datos WiFi y Bluetooth dentro de la memoria RTC para que se pueda acceder más tarde durante el modo de suspensión profunda para establecer conectividad inalámbrica.
Aquí hay algunas fuentes de despertar del modo de suspensión profunda:
ESP32 en modo de hibernación
Durante el modo de hibernación de ESP32, todo apaga la CPU principal, el reloj interno de 8MHz, el coprocesador ULP e incluso la memoria RTC, lo que significa que no se puede recuperar información después de ingresar el modo de hibernación ESP32.
Entonces, la pregunta viene si todo está apagado, ¿cuál es el propósito de ESP32 ahora?.
No es como que un temporizador RTC todavía esté activo en el reloj bajo y algunos de los RTC GPIO. Estos son responsables de despertar ESP32 una vez necesario.
El modo de hibernación ESP32 se usa donde necesitamos activar ESP32 en algún momento determinado. Durante este modo, ESP32 consume energía tan baja como 2.5 μA.
Aquí hay una breve comparación de todos los modos ESP32.
Periféricos | Sueño activo | Sueño módem | Sueño ligero | Sueño profundo | Hibernación |
Bluetooth | Activo | Inactivo | Inactivo | Inactivo | Inactivo |
Wifi | Activo | Inactivo | Inactivo | Inactivo | Inactivo |
Radio | Activo | Inactivo | Inactivo | Inactivo | Inactivo |
Core ESP32 | Activo | Activo | Detenido | Inactivo | Inactivo |
Memoria RTC | Activo | Activo | Activo | Activo | Activo |
Coprocesador ULP | Activo | Activo | Activo | Activo | Inactivo |
Conclusión
Hay múltiples modos de potencia ESP32 disponibles que aumentan su funcionalidad y lo convierten en la elección perfecta para los proyectos. Durante todos los modos anteriores, la memoria RTC funciona mientras que todos los demás periféricos se apagan dependiendo del modo. Durante estos modos, ESP32 se puede despertar utilizando una interrupción o temporizador externo.