A09. Movimientos del robot


Éste será una de las partes más importantes de la programación, ya que deberemos programar los movimientos del robot mediante el accionamiento de los motores.


En total podremos realizar 9 movimientos diferentes, aunque en los bloques definidos podremos realizar 7 combinaciones. Las combinaciones que no existen son las de girar a derecha e izquierda hacia atrás. Pero se pueden diseñar con los bloques que configuran motores.


Los movimientos del KEYBOT dependerán del sentido de giro de cada uno de los motores. Aquí tenemos cuál es el sentido de cada motor en función del movimiento deseado:


Con este bloque también podemos elegir la velocidad de los movimientos.



También existe un bloque específico para el control de cada uno de los motores. Este bloque nos permite elegir el motor, el sentido de giro y la velocidad.


Haremos un programa que realice una secuencia de movimientos cada 2 segundos. La secuencia será:


Ahora intentaremos de diseñar los dos movimientos que faltan. Pero crearemos una función que consiste en agrupar una serie de bloques y asignarle un nombre.


La primera función será giro izquierda atrás. El motor izquierdo irá hacia atrás y el motor de la derecha estará detenido. Le daremos el valor de 128 que corresponde a la velocidad normal. Haremos lo mismo por la otra función.


Ahora aparecen dos nuevas funciones en el bloque de “Funciones”.


Ahora ya tenemos el programa con todos los movimientos posibles del Keybot.


Actividad de ampliación: modificaremos el programa para que el KEYBOT haga lo siguiente:

  • Marche hacia delante si no detecta ningún obstáculo una distancia superior a 20cm.
  • Si detecta entre 15 y 20cm se detendrá.
  • Si detecta que la distancia al objeto que tiene delante es menor o igual a 15cm debe echar atrás.
  • Cuando el KEYBOT dé marcha atrás debe avisar con el led i el zumbador (al igual que lo hacen algunos vehículos). El led hará una intermitencia y el zumbador irá haciendo un ruido intermitente.



Para que sea un poco más fácil puede partir de este programa…


Solución: