Post

Finishing the demo in Fortress

The objective for this week was to remove all of the previous packages that had licenses issues and to solve all of the bugs.

Cleaning the world

The first thing to solve, and the easiest was to remove the models that were causing some errors when launching Gazebo. This was fixed by removing all the pictures.

Then the other important thing to do was to remove the door model, because if not it was impossible to see a person at the other side.

With all of this done, I added a model of a woman that will serve as a guest. This model was supposed to be teleoperated but because of a problem explained later, I didn’t have time to add it.

Fixing the robot model

I had to change the angle of the camera in order to make the robot able to see a person standing in front of it.

The other thing that was needed to change was the depth camera. This will be explained in the next section.

Pain with the depth camera

As said last week I thought that there was a bug in how the actions were implemented when launching the navigation, but that was not the issue, it was that the depth camera readout was nonexistent.

I doublecheck the model an found that there was no depth camera although the depth topic was being listed.

After adding the depth camera it didn’t work at first, so I searched for some examples in the Gazebo documentation and in Github, and after a couple hours I found a world with a static depth camera. I changed the things to match the example and now the topic was publishing correctly.

But now this is when the hell began. The depth camera was outputing something but when I tried to read it in the subscriber it was only 3 numbers 0, 128 and 127 and the distance I got was always infinite.

Then I started searching through the Internet in order to find another example that worked for a few days. This was unsuccsecsful, everything I tried caused the depth topic to not work, only output infinite distances and also completely bug the robot and causing it to appear multiple times at random positions during the simulation.

When I was about to give up I tried my luck and used the same type as the rgb camera, “camera”, that was different to the one found in the documentation and all the examples, that were “depth_camera” and “depth”, and after I couple of unfruitful attempts it suddenly worked.

This bug caused that all of the time that was supposed to go to adding the teleoperated person, to go into solving this major issue.

Things to note with Gazebo Fortress

Because of what is thought to be a bug in ogre2 (phys motor) (see issue), the time it takes to launch the world is increased by a couple of times.

I tried to change he phys motor to ogre or physX but the first one did cause a similar issue and the later as it is in beta I couldn’t get it to launch.

This post is licensed under CC BY 4.0 by the author.