8: Conduciendo nuestro robot 

3 de febrero de 2023

Durante estas últimas semanas hemos aprendido a conducir nuestro robot, tanto basándonos en distancias y giros como haciendo uso del sensor de distancia. A continuación, os vamos a detallar cómo desarrollar cada uno de los programas que hemos realizado.

Misión 1: Dibujar un cuadrado

En esta misión, hemos partido de la "Base de conducción 1", que se puede encontrar en las instrucciones de construcción de la aplicación Lego Spike 3 (siempre que nos hayamos descargado la unidad "Listo para competir"). La base de conducción, una vez construida, tiene este aspecto:

El objetivo es mover el robot para que su movimiento describa un cuadrado, tal que así:

En el mundo de la programación y la robótica existen multitud de soluciones para un mismo problema. En este caso, una sencilla solución es la siguiente:

Mediante la primera secuencia de programación, lo que hacemos es establecer los parámetros del robot, es decir, enseñarle ciertas cosas para que después el robot sepa moverse. Lo mínimo que tenemos que decirle es:

En cuanto a la segunda secuencia de programación, que bien podría estar a continuación de la primera, pero quizás quede más claro en una secuencia distinta, lo que hacemos es lo siguiente:

¿Y por qué pusimos un bucle de repetir 4 veces? Pues porque el cuadrado tiene 4 lados, así de simple ;-).

Misión 2: Recoger bloques por el camino

En esta otra misión, hemos partido de la "Base de conducción 2", que se puede encontrar en la misma ubicación que la base utilizada en la anterior misión. Una vez construida, la base presenta este aspecto: 

El objetivo es mover el robot para que vaya a por cada bloque que se encuentre, estando situados los bloques de la siguiente forma (por ejemplo, cada uno de ellos a 5 centímetros entre sí y la vertical del poste a 10 centímetros del primer bloque):

Partiendo del escenario actual, y con las distancias comentadas en el ejemplo, una posible solución podría ser ésta:

Mediante la primera secuencia de programación, lo que hacemos es establecer los parámetros del robot (como en la misión 1) y, además, colocar el motor para que la pala del robot quede en una posición que no obstaculice al sensor de distancia, así como fijar la velocidad del motor que mueve la pala al 10%, de modo que los movimientos no sean muy bruscos. Una posibilidad es poner el motor correspondiente (en nuestro ejemplo, el E) en la posición 0, colocar la pala ajustando las ruedas dentales que la mueven para que quede totalmente vertical, y, de esta forma, cuando inicie el programa con la secuencia de programación anterior, la pala se moverá a la posición 20 (es decir, el motor girará 20 grados, de los 360 que tienen una vuelta completa), con lo que la pala bajará un poquito y no estorbará para medir distancias.

En cuanto a la segunda secuencia de programación, es un poquito más compleja, aunque hemos hecho en el pasado cosas mucho más difíciles en Scratch, así que no os asustéis. Vayamos por pasos:

Y con esto ya estaría. Quizás tengáis que ajustar un poco las distancias o la colocación de las piezas, pues al final estamos hablando de juguetes que no son precisos al 100% (tampoco lo son los robots de la vida real, pues siempre hay un margen de error).

¡Esperamos que os hayáis divertido con las misiones y en el futuro habrá muchas más y muy divertidas!