# Bloques de entradas: sonómetro, magnetómetro y acelerómetro con una sola línea de código

##### Sensor de sonido

Para usar los sensores integrados de micro:bit no es necesario cargar ni inicializar bibliotecas de código. Las medidas de los sensores se encuentran disponibles en el menú <span style="color: rgb(224, 45, 184);">**Entrada**</span> en forma de **variables**. En el lenguaje de bloques las variables se representan mediante rectángulos de extremos redondeados.

La versión 2 de micro:bit dispone de un **micrófono** que además de grabar sonidos puede medir el nivel de ruido. La **variable** <span style="color: rgb(224, 45, 184);">**nivel de sonido**</span> nos dará lecturas entre 0 (nivel mínimo de sonido) y 255 (nivel máximo). Estos niveles no se corresponden con ninguna unidad física, como el dB por ejemplo, y deben usarse con fines comparativos.

<p class="callout info">La razón de que algunos sensores de micro:bit proporcionen medidas entre 0 y 255, es que con un byte (8 bits) sólo se pueden representar 2<sup>8</sup> = 256 números distintos, es decir, el 0 y los 255 primeros números naturales.</p>

El bloque <span style="color: rgb(132, 63, 161);">**plot bar graph of**</span> del menú **<span style="color: rgb(132, 63, 161);">LED</span>** permite construir un sencillo medidor de sonido ambiente. Como 255 es un valor muy alto de intensidad de sonido, ajustamos el rango de medida de la barra, **<span style="color: rgb(132, 63, 161);">up to</span>**, a la mitad, es decir, a 128. Así la barra reflejará mejor el sonido de una voz o el sonido ambiental normal.

[![Programa de barra de sonido.jpg](https://libros.catedu.es/uploads/images/gallery/2023-07/scaled-1680-/programa-de-barra-de-sonido.jpg)](https://libros.catedu.es/uploads/images/gallery/2023-07/programa-de-barra-de-sonido.jpg)

La variable <span style="color: rgb(224, 45, 184);">**nivel de sonido**</span> debe arrastrarse desde el menú <span style="color: rgb(224, 45, 184);">**Entrada**</span>. En el momento en el que la variable haya sido introducida en el programa, el simulador de micro:bit cambiará, mostrando una **barra ajustable** que simulará el nivel de sonido captado por el micrófono. El valor numérico del nivel de sonido simulado también será mostrado al lado del <span style="color: rgb(224, 62, 45);">**LED**</span> del micrófono.

[![microbit-Sonido.png](https://libros.catedu.es/uploads/images/gallery/2023-07/scaled-1680-/microbit-sonido.png)](https://libros.catedu.es/uploads/images/gallery/2023-07/microbit-sonido.png)

Tras descargar el programa en la placa real, la matriz de LED representará continuamente el sonido recogido por el micrófono en forma de barra vertical. El **<span style="color: rgb(224, 62, 45);">LED del micrófono</span>** iluminado indicará que micro:bit está captando sonido.

![Barra de sonido.gif](https://libros.catedu.es/uploads/images/gallery/2023-07/barra-de-sonido.gif)

<span style="color: rgb(0, 0, 0);">Una tarjeta micro:bit ejecutando este programa puede agotar un par de pilas alcalinas IEC R03 (AAA) en unas 40 horas (Frost 2018). Para **ahorrar energía** y prolongar la autonomía del medidor podemos reducir tanto el **brillo de la pantalla** como el **número de medidas por segundo** que realiza el sensor. Para conseguir esto último introduciremos en el bucle **<span style="color: rgb(53, 152, 219);">para siempre</span>** un bloque **<span style="color: rgb(53, 152, 219);">pausa (ms)</span>**. Si el bloque se ajusta a 100 ms, el sensor sólo realizará 10 mediciones del nivel de sonido cada segundo.</span>

<span style="color: rgb(0, 0, 0);">![Ahorro de energía.jpg](https://libros.catedu.es/uploads/images/gallery/2023-07/scaled-1680-/ahorro-de-energia.jpg)</span>

##### <span style="color: rgb(0, 0, 0);">Magnetómetro y acelerómetro</span>

<span style="color: rgb(0, 0, 0);">Con una mínima modificación, el código anterior puede usarse para monitorizar aquellas **magnitudes que puedan variar rápidamente**. Por ejemplo, podemos usar el sensor integrado de campo magnético (magnetómetro) para medir el campo magnético de la Tierra, el de una imán o el de una masa de hierro. </span>

<span style="color: rgb(0, 0, 0);">Podemos acceder al sensor mediante la variable **<span style="color: rgb(224, 45, 184);">fuerza magnética (µT)</span>**</span>, que <span style="color: rgb(0, 0, 0);">proporciona la **inducción magnética** medida en **microtesla**. Al cargar el programa, micro:bit comenzará a medir el campo magnético terrestre que varía, según la localización, entre 25 y 65 µT. Nótese que el magnetómetro no limita sus medidas al valor de 255.  
</span>

<span style="color: rgb(0, 0, 0);">[![Programa de inducción magnética.jpg](https://libros.catedu.es/uploads/images/gallery/2023-07/scaled-1680-/programa-de-induccion-magnetica.jpg)](https://libros.catedu.es/uploads/images/gallery/2023-07/programa-de-induccion-magnetica.jpg)</span>

Otra medida interesante es la de la **aceleración de la placa**. La variable de acceso al acelerómetro se llama <span style="color: rgb(0, 0, 0);">**<span style="color: rgb(224, 45, 184);">aceleración (mg)</span>**</span> y proporciona las aceleraciones medidas en milésimas de g. Cuando la placa esté en reposo medirá la **aceleración de la gravedad terrestre**, que es de 1 g. Los movimientos bruscos de la placa en cualquier dirección deberían alterar el valor medido.

[![Programa de aceleración.jpg](https://libros.catedu.es/uploads/images/gallery/2023-07/scaled-1680-/programa-de-aceleracion.jpg)](https://libros.catedu.es/uploads/images/gallery/2023-07/programa-de-aceleracion.jpg)