1 minute read

Hace dos semanas nos creamos una página web con 4 ventanas simples e hicimos una pequeña prueba poniendo el Turtlebot2 a dar vueltas. Y la tarea de estas dos semanas es probar el ejercicio Follow Person que hizo Carlos Caminero en nuestro docker mostrando el renderizado en la página web.

La idea era realizarlo en dos formas, en frío leyendo directamente el código del usuario desde un fichero sin utilizar websocker y luego en caliente recibiendo el código desde un editor de la págna web utilizando websocker.

El exercise.py tiene una función load_code() que lee el código guardado en el fichero academy.py (dentro de la carpeta code) y que se llama al recibir el mensaje “#load” desde la página web. Por tanto, para lanzarlo en frío hemos hecho una simplificación haciendo las siguientes modificaciones:

Tras haber hecho estos cambios se pudo ejecutar sin problema exercise.py, sin embargo, no llega a realizar correctamente el “follow” y no he conseguido todavía solucionar ni encontrar la razón concreta. Puede que sea porque no está realizando bien la tarea de detectar persona o incluso por que hay cosas del exercise.py que no he contemplado al hacer cambios. En el siguiente video se muestra cómo el robot empienza a dar vueltas para buscar una persona pero no da un paso más:

El paquete de detección de objetos que se utiliza es Darknet ROS. Para testear con el turtlebot simulado en local tenemos que cambiar el topic de la cámara a “/depth_camera/image_raw” (en darknet_ros_yolov4/darknet_ros/darknet_ros/config/ros.yaml)