El KEYBOT porta un sensor d'ultrasons per poder veure el que hi ha al davant. Són els ulls del robot. Funciona de forma similar al sistema que fan servir els ratpenats, ja que es guien per ultrasons.


El mode de funcionament d'aquest sensor és molt senzill. Està format per un emissor i un receptor d'ultrasons (no perceptibles per l'oïda humà). Quan una ona ultrasònica xoca amb un objecte es reflectida com un eco. Al retornar és detectada pel receptor. Per saber la distància de l'objecte, es calcula el temps que triga el senyal des de que s'emet fins que es torna a detectar (coneixent que la velocitat del so és de 340m/s). El sensor mesura distàncies entre 2,5cm i 3cm. El sensor està connectat en A0-D2.

Farem un programa que encengui el led si la distància mesurada és inferior a 25cm i que s'apagui si la distància és major.

ArduinoBlocks té un bloc específic per la mesura de la distància amb el sensor d'ultrasons.

Ara ens farà falta un nou bloc per decidir si aquest valor de distància és major o menor. Aquest bloc és “si x fer x”.

També necessitarem establir la condició lògica.

I el valor matemàtic de la comparació.

Ara començarem a fer el programa. Primer muntarem l'estructura del condicional. I afegim els blocs corresponents a l'estat del led.

Amb aquest programa no funciona del tot bé per què el led s'apaga intermitentment. Això és degut a que no emmagatzemem la distància del sensor en cap variable. Per tant, haurem de crear una variable anomenada “distancia”. Tampoc li estem deixant temps al sensor d'ultrasons que calculi la distància. Li posarem un temps d'espera mínim de 10ms.

El programa que hem de fer és el següent:


Activitat d'ampliació: modifica el programa per què encengui el led si la distància és menor o igual a 12cm i enviarà el valor del sensor a la “Consola” en qualsevol cas.



Solució: