# Extensión Power para el ahorro de energía

<span style="color: rgb(186, 55, 42);">**Power**</span> contiene bloques para poner a micro:bit en estado latente o de hibernación, *sleep mode*, en el cual la ejecución del programa se detiene **reduciendo drásticamente el consumo de energía**.

Micro:bit podrá despertar y volver a ejecutar el programa gracias un evento de tiempo, por la pulsación de un botón, o bien mediante una señal de entrada aplicada a uno de sus pines.

<p class="callout warning">La extensión Power sólo funciona con micro:bit V2.</p>

<span style="color: rgb(186, 55, 42);">**Power**</span> resulta muy útil para crear registradores de datos, ya que éstos pasan la mayor parte del tiempo inactivos y sólo miden y graban magnitudes cada cierto tiempo, a menudo cada muchos minutos.

Para instalar <span style="color: rgb(186, 55, 42);">**Power**</span> hay que pulsar sobre el menú <span style="color: rgb(126, 140, 141);">**+Extensiones**</span> y, una vez abierta la página de la biblioteca, sobre el botón **Software**.

![Datos10.jpg](https://libros.catedu.es/uploads/images/gallery/2023-09/scaled-1680-/datos10.jpg)

La carga de la extensión requiere pulsar sobre el icono **Power**.

[![Datos11.jpg](https://libros.catedu.es/uploads/images/gallery/2023-09/scaled-1680-/datos11.jpg)](https://libros.catedu.es/uploads/images/gallery/2023-09/datos11.jpg)

Despueś de la carga de la extensión, <span style="color: rgb(186, 55, 42);">**Power**</span> aparecerá el menú de bloques.[![Datos12.jpg](https://libros.catedu.es/uploads/images/gallery/2023-09/scaled-1680-/datos12.jpg)](https://libros.catedu.es/uploads/images/gallery/2023-09/datos12.jpg)Vayamos con el registrador de datos. Empezaremos modificando el evento <span style="color: rgb(53, 152, 219);">**al iniciar**</span> para que micro:bit pase al estado latente justo tras ser encendido. Para ello, tras crear las columnas del registrador de datos, colocamos un bloque <span style="color: rgb(186, 55, 42);">**request low power**</span>.

[![Datos13.jpg](https://libros.catedu.es/uploads/images/gallery/2023-09/scaled-1680-/datos13.jpg)](https://libros.catedu.es/uploads/images/gallery/2023-09/datos13.jpg)

Por supesto, es posible ahorrar energía eliminando el piloto <span style="color: rgb(224, 62, 45);">**LED** </span>intermitente, pero vamos a mantenerlo en funcionamiento. El evento de piloto estará ahora controlado por **<span style="color: rgb(186, 55, 42);">full power every 1000 ms</span>**. Es decir, despertaremos a micro:bit cada segundo para invertir el estado del piloto **<span style="color: rgb(224, 62, 45);">LED</span>**.

[![Datos14.jpg](https://libros.catedu.es/uploads/images/gallery/2023-09/scaled-1680-/datos14.jpg)](https://libros.catedu.es/uploads/images/gallery/2023-09/datos14.jpg)

Cuando se despierte micro:bit, habrá que impedir que otro evento que se esté ejecutando lo vuelva a dormir. Esta función la realiza el bloque<span style="color: rgb(186, 55, 42);"> **low power prevent**</span>, Después de ejecutar este bloque se invierte el **<span style="color: rgb(186, 55, 42);">LED</span>** central, se da permiso a la placa para dormir con **<span style="color: rgb(186, 55, 42);">low power allow</span>** y se le ordena volver a dormir con <span style="color: rgb(186, 55, 42);">**request low**</span> **<span style="color: rgb(186, 55, 42);">power</span>**.

Ahora le toca al evento grabador de datos que se ejecuta cada quince minutos o 60000 x 15 ms. Su estructura es la misma que la del control del piloto. Aquí también hay que prevenir que la placa se duerma mientras grabamos datos.

[![Datos15.jpg](https://libros.catedu.es/uploads/images/gallery/2023-09/scaled-1680-/datos15.jpg)](https://libros.catedu.es/uploads/images/gallery/2023-09/datos15.jpg)

Podemos **prolongar todavía más la duración de las pilas** manteniendo a la vez la luz piloto para saber si está funcionando la placa. Haremos que el LED parpadee más lento, por ejemplo cada 3 segundos, y durante menos tiempo, por ejemplo durante 75 milisegundos por medio a un bloque <span style="color: rgb(53, 152, 219);">**pausa (ms)**</span>. De esta forma, **la placa** **permanecerá dormida un 97,5% del tiempo**, alargando espectacularmente la autonomía de funcionamiento.

[![Low04.jpg](https://libros.catedu.es/uploads/images/gallery/2023-09/scaled-1680-/low04.jpg)](https://libros.catedu.es/uploads/images/gallery/2023-09/low04.jpg)

El gráfico siguiente muestra la temperatura exterior en ºC captada por una placa alimentada a pilas durante 5 días de funcionamiento, tras los cuales, la placa seguía alimentada.

[![Temperatura horas.png](https://libros.catedu.es/uploads/images/gallery/2023-10/scaled-1680-/temperatura-horas.png)](https://libros.catedu.es/uploads/images/gallery/2023-10/temperatura-horas.png)