El comportamiento será sencillo, hacer que el robot se mueva en línea recta, y cuando detecte una palmada se para, y con la siguiente palmada vuelva a andar.
El montaje será parecido al de la primera práctica exceptuando que se añade un sensor de sonido en el puerto 2.
Aquí vemos una foto del montaje:
Para programar este comportamiento lo primero que debemos hacer es calibrar el sensor. Para ello haremos un for de 1 a 100 que vaya tomando valores, y luego haga una media de ellos. Esta media será el ruido en dB. Los valores los tomaremos con el método readValue que haremos sobre la variable sonido de tipo SoundSensor que nos habremos definido antes.
Después de calcular la media haremos que se mueva hacia delante. Para ello aplicaremos el método forward() a la rueda izquierda y rueda derecha definidas previamente.
Posteriormente, y dentro de un for, haremos que la primera palmada, lo pare aplicando el método stop a las ruedas,y con la siguiente palmada lo vuelva a mover.
Para saber si hay una palmada o no, será hacer un if, recogiendo el valor con readValue, y viendo si es un valor superior a la media + el 15%.
Aquí vemos un vídeo de ejemplo:
Aquí podemos ver el código:
No hay comentarios:
Publicar un comentario