Ejercicio follow_line en RoboticsAcademy

Semana 1 ·

Objetivos

Realización del ejecicio Follow_line de RoboticsAcademy

Pasos realizados

El primer paso fue la intalación y configuración del docker usado para la realización de los ejercicios. Una vez que todo estaba instalado inicie la programación del ejercico. En el ejercicio se usan 3 funciones diferentes y una clase, ademas del codigo principal.

- Clase ROS2

En esta clase se define el subscriptor y el publicador de ROS a los topics /cam_f1_left/raw_image y /cmd_vel respectivamente y el callback para recibir la imagen.

- Función procesar_imagen

En esta función se usan funciones básicas de opencv para el procesado de imagenes, para detectar la línea roja y obtener su centroide.

- Función controlador

En esta función se calcula el controlador P, PD o PID dependiendo de cual sea el modo de entrada (1, 2 o 3 respectivamente). Esto es útil para seleccioanr los valores de las constantes Kp, kd y Ki correctamente.

- Función velocidad_adaptitiva

En esta función se calcula la velocidad lineal en función de la velocidad angular, esto permite que el movimiento en las curvas sea más suave, ya que cuanto mayor sea la velocidad angular menos será la velocidad lineal.

- Main

En la parte principal del código se incializa la clase ROS2 y se define todos los parametros de control y dependiendo de la variables ROS, se utilizará HAl o ROS2 para la resolución del ejercicio.

- Codigo completo

Resultado

Resultado inicial
← Volver a Semana 1