Week 8 and Week 9: July 15 ~ July 28

Objectives

  • Adding documentation for creating a new RAM launcher and a guide for using the dummy RAM client
  • Resolving issues with HAL functions in the Rescue People Gz Harmonic exercise
  • Troubleshooting and resolving problems with image display on the GUI
  • Fixing issues with the functionality of the Play, Pause, and Reset buttons

Issues Fixed

PRs Created

Work Done

I have added a guide to the RoboticsApplicationManager repository for using the dummy RAM client, which aids in developing and debugging new RAM launchers. Also, I documented the steps for creating a new RAM launcher, detailing the necessary changes and new files to be created for the launch_world and prepare_visualization transitions. This documentation is intended to assist new contributors in the development of RAM launchers.

Last week, I encountered an issue with the HAL functions for the Rescue People Harmonic exercise. The problem arose because I renamed the folder containing the config files for the as2_state_estimator and as2_motion_controller packages from ign to gzsim but did not update the path in the setup.py file. Consequently, the config files were not found in the share directory during launch, causing the launch file to fail. Modifying the setup.py file of the jderobot_drones package resolved the issue.

However, I was still facing some issues. As it can be seen in the video above, I could use functions from HAL, but I was unable to display images using GUI.showImage(cv2_image) and GUI.showLeftImage(cv2_image). Additionally, when running the code, the play button did not change to pause, and the reset button remained grayed out.

To resolve this, I first checked if data was being received on the two topics for images: drone0/sensor_measurements/frontal_camera/image_raw and drone0/sensor_measurements/ventral_camera/image_raw. I observed that no data was being published on drone0/sensor_measurements/frontal_camera/image_raw, but data was present on drone0/sensor_measurements/front_camera/image_raw. After discussing with mentors, I learned that the image topic for the front camera depends on how the camera is included in the simulation config file used for the as2_gazebo_assets package. If the payload’s “model_name” is set to “frontal_camera,” data is obtained on /frontal_camera/image_raw; if it is “front_camera,” data is obtained on /front_camera/image_raw. I adjusted the sim_config file for the Rescue People Gz Harmonic Exercise accordingly. Also, I updated some outdated paths in the HTML file of the new exercise. Despite these changes, the image display issue remained unresolved. The mentors recommended examining the RoboticsApplicationManager code for potential issues.

I discovered that in the Robotics Application Manager, during the prepare_visualization transition from the world_ready to the visualization_ready state, a GUI server was started only if the visualization_type was gazebo_rae. I modified this configuration so that the GUI server also starts when the visualization_type is gzsim_rae. Following these changes, the images were displayed on the GUI; however, they were not updating and remained fixed at the initial image.

In addition to the issue of static images, the play/pause and reset buttons are still not functioning as expected.




Enjoy Reading This Article?

Here are some more articles you might like to read next:

  • Week 11 and Week 12: August 05 ~ August 18
  • Week 10: July 29 ~ August 04
  • Week 7: July 08 ~ July 14
  • Week 5 and Week 6: June 24 ~ July 07
  • Week 4: June 17 ~ June 23