Saltar la navegación

Acelerómetro

Tarea

Crear un programa que inicie el proceso mostrando en la matriz LED el número 0.

Cada vez que muevas la placa micro:bit debe de aumentar en uno su valor. Es decir, cada sacudida suma 1 al valor anterior.

Cuando llegue al número 9, la placa debe de mostrar un icono durante dos segundos.

Después, iniciar de nuevo la cuenta en 0.

¿Qué es un acelerómetro?

Es un sensor que mide las aceleraciones de un cuerpo, la fuerza generada por una vibración o el cambio en el movimiento de un cuerpo.

Este sensor lo podemos encontrar, por ejemplo, en los airbags de los automóviles. Cuando el automóvil frena de forma brusca, el sensor detecta una desaceleración fuerte, haciendo que se despliegue el airbag.

También, es muy común, que se use para medir los pasos en los relojes de actividad o en un smartphone.

Un acelerómetro en Micro:bit

Micro:bit tiene un acelerómetro dispuesta en el siguiente lugar de la placa:

Acelerómetro en la Micro:bit
Acelerómetro en la Micro:bit
Fuente Propia. Acelerómetro en la Micro:bit (CC0)

Algunas ideas...

Un juego de respuestas al azar

Para ver cómo funciona el acelerómetro que incluye la placa Micro:bit se va a realizar un programa que emule un juego, de tal forma, que al mover la placa nos ofrezca una respuesta al azar a una determinada pregunta. Se baja en un juego de Mattel que se llamaba "Bola 8 mágica" y que apareció en 1946.

Es un divertido proceso de predicción que responde a tus preguntas. Hazle a tu Micro:bit cualquier pregunta y te responderá más o menos claramente. 

Nos ofrecerá tres respuestas: un tic para decir Sí, una equis para decir No, y una cara neutra que nos indica que no está segura de la respuesta.

Para que funciona de esta forma será necesario utilizar los siguientes bloques:

  • Si agitado: Cuando Micro:bit es agitado ejecuta la secuencia de instrucciones.
  • Bloque de Makecode
    Si agitado. Opciones
    Fuente propia (CC0)
  • Crear una variable "Pregunta".
  • Establecer la Variable "Pregunta" como un número al azar entre 1 y 3.
  • Condicional Si no. Dependiendo del valor (1, 2 ó 3) se ejecutará mostrar un icono u otro.
  • Lógica =. Nos compara el valor de la variable Pregunta con 1, 2 y 3.
Bloques programa acelerómetro
Bloques juego Bola 8
Fuente Propia. Bloques programa acelerómetro (CC0)

Código

El código que tendríamos que crear para llevar a cabo la tarea propuesta, sería:

Al iniciar el programa establecemos la variable "Contador" con valor 0 y por pantalla mostramos un símbolo.

Fuente Propia (CC0)

Después definimos el evento "Si Agitado" para que cada vez que agitemos Micro:bit cambie la variable "Contador" por un valor (suma una unidad al valor anterior) y mostramos por pantalla el valor.

Fuente Propia (CC0)

Por último, establecemos el bloque "Para siempre" donde se integra el bloque condicional "Si la variable contador = 9 entonces", por pantalla debe de mostrar un tick durante dos segundos, establece la variable "Contador" a valor 0 y muestra por pantalla el símbolo inicial y se queda a la espera para comenzar de nueva con la cuenta de movimientos.

Fuente Propia (CC0)

Ejecución

El funcionamiento de nuestra aplicación se muestra a través de las siguientes imágenes:

1.- Al iniciar la aplicación, nos muestra el símbolo que hemos establecido.

Fuente Propia (CC0)

2.- Pulsamos en el simulador "Shake" y en la placa real, agitamos y comienza a contar:

Fuente Propia (CC0)

3.- Continuamos agitando la placa hasta que llegamos al 9:

Fuente Propia (CC0)

4.- Apareciendo por pantalla, el símbolo:

Fuente Propia (CC0)

y tras dos segundos, vuelve a aparecer la imagen inicial:

Fuente Propia (CC0)