In this blog, I'll be posting about my experience as an intern at JdeRobot.
First, during this seventh week of internship, I have thoroughly reviewed the Robotics Academy database structure and the Unibotics database struture, comparing them and taking notes of their differences, to better understand it in order to fix the configuration file error and to refactor the Unibotics database.
On the other hand, I’ve been researching how the comms manager library works to understand how it relates to RAM and detect where the world launch command is being invoked from, to which the error-giving configuration file is passed on, in Robotics Academy and Unibotics files.
Finally, thanks to the discovery of my co-worker Carlos and the research carried out, we have solved the configuration error, which was linked to a column whose name varied from the Robotics Academy database to that of Unibotics, launch_file_path, thus provoking conflict. Fixing this in the Unibotics database and the helper that builds the configuration file for each world of the exercise has fixed the error.
Also, I’ve been helping Carlos solve new errors that have arisen by fixing the previous configuration file error:
Once these errors were fixed, we have managed to reach a first prototype of a functional Unibotics exercise using Robotics Academy as a submodule. To confirm that the rest of the ROS2 exercises work properly with the new changes, I have tested the functioning of each of them.
Finally, I have reviewed a bug where two specific exercises, Follow Person and Obstacle Avoidance, had trouble getting the exercise image. Also, I had a meeting with Carlos in which we reviewed the possibility of eliminating the intermediate academy_exercise_universes table of Unibotics, reaching the conclusion of leaving it because of the difficulty of defining several foreign keys in the same column and their one to many relation, as well as updating the Robotics Academy submodule to the Robotics Academy Release V5.2.2 commit.