Control básico del motor:
En este ejercicio se pedía mover uno de los motores hasta que se pulsase una tecla, no fue difícil pero al ser el primero hizo mucha ilusión ver al robot moverse como nosotros queríamos.
Esquemático:
Mostrar "pulsa para moverse"
Esperar botón
Mover motor
Esperar botón
También se pedía que la rueda girase 45º de dos formas distintas, una usando rotate y la otra rotateTo, la diferencia entre ambas es que rotate siempre gira los grados que le introduzcas mientras que rotateto gira hasta que el eje llegue a esta posicion, partiendo de que cuando iniciamos el robot el eje esta en el grado 0. Al sólo haber un giro no había diferencia entre ambas ya que siempre partía de 0, pero probamos rotateto con dos giros y efectivamente no giraba la segunda vez si en ambos rotateTo ponías 45º ya que cuando intentaba girar la segunda vez ya se encontraba en ese angulo.
Esquemático:
Mostrar "pulsa para girar"
Esperar botón
girar 45º
Visualización de la odometría del motor
En este ejercicio se nos pedía añadir un "brazo" al robot y conectarlo a un motor para que mostrase por pantalla la posición de este con respecto a como había empezado, no nos complicamos mucho la vida y enchufamos el motor directamente al ladrillo y le pusimos una de la piezas dobladas para simular el brazo, al moverlo con la mano, podíamos ver que en la pantalla cambian los valores. Forzando a Roxxxy para que cambiara la posición del brazo manualmente tenía que cambiar en la pantalla. creo que Roxxxy nos prepara una venganza por maltratarla de ese modo.
Esquemático:
bucle infinito{
conseguir posición del motor
imprimir posición
}
Cuadrado de calibración de movimiento
El comienzo de este apartado fue desastroso, las consecuencias, suelo pintado por todas partes y Roxxxy haciendo todo menos un cuadrado. Tras algunos intentos conseguimos que Roxxxy describiese algo parecido a un cuadrado (de 30 cm y no de 40 ya que hicimos mas pequeño el dibujo en los papeles, menos mal que no hemos hecho una carrera de arte porque menudo espectáculo), el resultado fue el siguiente:
El esquemático es bastante simple:
(Anda 30 cm
gira 90º)x 4 veces
Normalmente se desvía un poco en el segundo giro, pero esto es debido a que el rotulador no esta justo en el eje así que algún lado esta algo torcido, pero el robot normalmente acaba prácticamente donde ha empezado. Aquí va una foto sobre la catástrofe(suelo pintarrajeado):
Cálculo de la matriz de covarianza
Aquí se nos pedía calcular la matriz de covarianza, así que con mucha paciencia medimos donde había acabado el robot las 10 o 12 veces que le habíamos ordenado que hiciese el cuadrado. El resultado final es el siguiente:
x=(1,5+0.8+0.5+0.5+0.3+0.5+0.1+0.3+0.3+0.1)/10=0.49
y=(0.5+0.5+0.2+0.2+0.5+0.3+0.3+0.3+0+0.5)/10=0.33
A estos datos aplicamos la formula y la matriz que nos queda es.
0,1529 0.08337
0.08337 0.01791
Claramente no es simétrica asi que suponemos que no hemos entendido bien lo que hay que hacer, pero bueno al menos lo hemos intentado a ver si en la siguiente práctica nos queda mas claro.
x=(1,5+0.8+0.5+0.5+0.3+0.5+0.1+0.3+0.3+0.1)/10=0.49
y=(0.5+0.5+0.2+0.2+0.5+0.3+0.3+0.3+0+0.5)/10=0.33
A estos datos aplicamos la formula y la matriz que nos queda es.
0,1529 0.08337
0.08337 0.01791
Claramente no es simétrica asi que suponemos que no hemos entendido bien lo que hay que hacer, pero bueno al menos lo hemos intentado a ver si en la siguiente práctica nos queda mas claro.
Visualización de la trayectoria
Esta es la práctica que mas guerra nos ha dado, pero al final lo conseguimos!! Queríamos que Roxxxy hiciese el mismo cuadrado de antes pero ademas que calculase la trayectoria que iba haciendo y la mostrase por pantalla (sin hacer trampas), en el primer intento, Roxxxy solo avanzaba un poco y se paraba, y en alguno otro hacía movimientos extraños e incluso llegamos a temer por nuestras vidas. Después de tener que investigar comandos y de muchas pruebas hemos conseguido que nos devuelva como resultado {0,0,360} Aquí va un vídeo de como ha quedado:
El esquemático del código es este:
Repite 4 veces{
Muevete 30cm
Mientras me muevo actualizo la posicion/pantalla
Gira 90
Mientras giro actualizo la posicion/pantalla}
La verdad es que dejando a un lado los problemas de la MV, lo hemos pasado muy bien. Cuando ha empezado ha pintar todo el suelo o se le caía el edding en mitad de la prueba nos hemos reido bastante, y cuando hemos conseguido que la trayectoria pasase de en principio 2800 grados a los 360 que queríamos también ha sido muy gratificante. Este jueves a por la siguiente!

No hay comentarios:
Publicar un comentario