Semana 9-10. Preparando el entorno
Durante las vacaciones de Navidad hubo ciertos parones debido a los exámenes. Una vez que iba terminando pude ir retomando mi TFG. El siguiente paso era preparar todo lo necesario para empezar a desarrollar mis ejercicios para la plataforma de Unibotics.
Ya tenía el robot Turtlebot2 en simulado, el cual incorporaba una cámara RGBD y un láser LIDAR. Para asemejarlo aún más a la realidad hice algunas otras modificaciones. El diseño quedó de la siguiente forma:
Días después abrí una incidencia y subí un parche en el repositorio de terceros Custom Robots para tener los ficheros de descripción que necesitará el robot Turtlebot2 para su simulación y que sean accesibles para los contenedores Docker de Unibotics.
En paralelo, conseguí funcionar el despliegue de Unibotics en mi máquina local para entender cómo funcionaba la plataforma, para que me sirvierá de cara a la incorporación de nuevos ejercicios.
Por otra parte, estuve varios días intentando funcionar la cámara Asus Xtion Pro Live en Ros Foxy, sin embargo, no conseguí dicho objetivo, por tanto he tenido que probar con las cámaras Intel RealSense. De momento, he tenido buenos resultados, sigo investigando.
Además, investigué cómo mover de manera autónoma un modelo de Gazebo, en este caso una persona, ya que será el objetivo que tendrá que seguir el robot. Para ello había que definir en un fichero .world un “actor” con el que defines un “script” y los waypoints donde quieres que se desplace
<script>
<loop>true</loop>
<delay_start>0.000000</delay_start>
<auto_start>true</auto_start>
<trajectory id="0" type="square">
<waypoint>
<time>0.0</time>
<pose>0 4 0 0 0 1.57</pose>
</waypoint>
<waypoint>
<time>10.0</time>
<pose>5 4 0 0 0 1.57</pose>
</waypoint>
...
</trayectory>
...
</script>
Una de las pruebas que hice fue la siguiente:
Por último, añadí en mi repositorio un conjunto de paquetes de descripción que proporciona Amazon para simular el entorno de un hospital. Lo vi bastante interesante, ya que una tarea bastante normal en el mundo actúal puede ser programar un robot de servicio que sepa seguir a las personas. De modo que los alumnos de la plataforma educativa Unibotics tendrían la posibilidad de programar un robot en un entorno más complejo:
Próximamente subiré un parche con el entorno del hospital para el repositorio Custom Robots, ya que será interesante incorporarlo en Unibotics.