Ir al contenido

Cuadrados con giroscopio

Hagamos que el robot realice un cuadrado de 50cm de lado con giros de 90 grados en las esquinas 4 veces. Usaremos los encoders con los dos parámetros ya calibrados y, además, el giroscopio del puerto 1 para comprobar los ángulos. La trayectoria que estima la odometría se muestra en pantalla con matplotlib.

RADIO = 0.0152 # r_efectivo de la calibración
TROCHA = 0.1400 # t_efectiva de la calibración
USAR_GIROSCOPIO = False
...
with ev3.EV3(protocol=ev3.BLUETOOTH, host=MAC) as robot:
gyro = ev3.Gyro(ev3.PORT_1, ev3_obj=robot)
with ev3.TwoWheelVehicle(RADIO, TROCHA, ev3_obj=robot, speed=20,
tracking_callback=plot_curr_pos) as vehicle:
  1. Comparar. Ponga sus valores calibrados en RADIO y TROCHA y ejecute el programa. En cada esquina se imprimen tres ángulos: el del giroscopio, el de la odometría y el real. ¿Cuál de las dos estimaciones se acerca más al valor real a medida que pasan los cuadrados?
  2. Mejorar. Complete la función girar_con_giroscopio() para que el robot gire hasta que el giroscopio indique el ángulo deseado. Luego ponga USAR_GIROSCOPIO = True y compare el dibujo del marcador en el piso con el de la parte 1.
  • El giroscopio del EV3 mide positivo en sentido horario, visto desde el ícono rojo, que en este robot mira hacia arriba. La odometría y drive_turn usan la convención contraria: antihorario positivo. Por eso el programa compara -gyro.angle con la orientación de la odometría.
  • El giroscopio cuenta vueltas: después de un cuadrado marca 360°. En cambio, vehicle.position.o se mantiene entre −180° y 180°.
  • El giroscopio simulado tiene ruido y una deriva pequeña, como el real. Observe cuánto se aleja del ángulo real al final de los 4 cuadrados.
  1. ¿Por qué la odometría indica giros casi perfectos si el dibujo en el piso muestra que el cuadrado no cierra?

  2. ¿Qué error corrige el giroscopio que la calibración de r y t no puede corregir?

    Piense en la desviación lateral que observó al calibrar el radio.

  3. ¿Qué limita la precisión del giroscopio en un recorrido largo?