Ir al contenido

Cuadrados calibrados

Hagamos que el robot realice un cuadrado de 50cm de lado con giros de 90 grados en las esquinas 4 veces, usando los encoders con los dos parámetros ya calibrados. La trayectoria se muestra en pantalla.

RADIO = 0.0152 # reemplazar por r_efectivo
TROCHA = 0.1400 # reemplazar por t_efectiva

La gráfica muestra dos trayectorias:

  • Roja: la que estima la odometría, es decir, lo que el robot cree que hizo. Es la misma gráfica del robot real.
  • Azul: la trayectoria real. Solo existe en el simulador; en el laboratorio su equivalente es el dibujo del marcador.

Ejecute el programa primero con los valores medidos y después con los calibrados. Compare el error de posición que se imprime al final de cada cuadrado. Al terminar, la gráfica se guarda como cuadrados-calibrados.png en la carpeta del controlador.

  1. ¿Cómo mejora la calibración de encoders la precisión del cuadrado de 50cm comparado con encoders sin calibrar?

    Considera las ventajas de tener parámetros calibrados para la conversión de grados del encoder a distancia real.

  2. ¿Por qué aún puede haber pequeños errores acumulativos en los cuadrados incluso con encoders calibrados?

    Compara la línea roja con la azul. Piensa en qué supone el modelo de TwoWheelVehicle sobre las dos ruedas.

  3. ¿Cómo afecta la calibración del parámetro de giro en la precisión de los ángulos de 90 grados?

    Reflexiona sobre la importancia de calibrar tanto el movimiento lineal como el rotacional.

  4. ¿Qué diferencias observas entre el primer y cuarto cuadrado en términos de posición final?

    Analiza si los errores se acumulan menos con encoders calibrados que con control por tiempo.

  5. ¿Por qué la odometría (línea roja) no detecta sus propios errores?

    Considera qué información usa la odometría y qué información le falta.

  6. ¿Qué ventajas ofrece realizar 4 cuadrados consecutivos para evaluar la calibración?

    Reflexiona sobre cómo varias repeticiones revelan la consistencia y la precisión de los parámetros calibrados.

  • Sensor giroscópico: Integrar el giroscopio para medir los ángulos de giro reales y corregir las desviaciones en tiempo real.
  • Fusión de sensores: Combinar los datos de los encoders y del giroscopio para obtener estimaciones más precisas de posición y orientación.
  • Filtrado de mediciones: Aplicar filtros Kalman o complementarios para suavizar las lecturas y reducir el ruido.
  • Radios distintos por rueda: TwoWheelVehicle supone ruedas iguales. Escriba su propia odometría con vehicle.motor_pos y un radio para cada rueda, y calíbrelos usando el desvío lateral de la práctica del radio.
  • Detección de patinaje: Comparar los encoders con el giroscopio para detectar deslizamiento de las ruedas.
  • Calibración automática: Desarrollar rutinas que calibren los parámetros usando ev3.medir_pose_real() como referencia.