elevation_mapping icon indicating copy to clipboard operation
elevation_mapping copied to clipboard

Waffle demo not working correctly

Open fus3 opened this issue 4 years ago • 18 comments

Hello, im currently working on using the elevation_mapping package with T265 and D435 for my quadruped robot on a Jetson Nano running 18.04 and ROS Melodic. Because it is a Jetson nano im forced on using ROS Melodic, I Know that exists a 20.04 version but its not official supported and i prefer use melodic since its more stable anyways because im using melodic and the elevation_mapping uses Newer versions of PCL which 18.04 doesnt work, after a lot of tries of build and error i solved some problems like:

  • https://github.com/ANYbotics/elevation_mapping/issues/151 (because of using version 1.8.1 of PCL i did change PCL_MAKE_ALIGNED_OPERATOR_NEW for EIGEN_MAKE_ALIGNED_OPERATOR_NEW on the file.
  • https://github.com/PointCloudLibrary/pcl/pull/4266
  • Also Jetson did have a error with internal compiler (program cc1plus) which resulted on low memory: using catkin_make -j2 -DCMAKE_BUILD_TYPE=Release did it solve
  • Also i did https://github.com/ANYbotics/grid_map/issues/292 Ok, so after all this, the build was fine, running the grid map examples work perfectly, when running the rostest elevation_mapping elevation_mapping.test -t i get some errors: image So i tried to run the Turtlebot Waffle demo and thats the output that i get: image Then Rviz launches: image And that's the output: image

You can see that the map isn't creating

fus3 avatar Apr 24 '21 20:04 fus3

I also have this problem,can anyone help?

huangyoupingben avatar May 26 '21 02:05 huangyoupingben

Hi, @fus3 ,I have encountered the same problem.Have you solved the above problem?

huangyoupingben avatar May 26 '21 02:05 huangyoupingben

Hey @fus3 you don't see the elevation map because the pose publisher is crashing for you. This might be related to the turtlebot demo, which we cannot maintain here. Maybe you can ask the maintainers of the package.

maximilianwulf avatar May 31 '21 16:05 maximilianwulf

I have encountered the same problem. Have you solved the problem?

agcxgz321 avatar Jun 08 '21 06:06 agcxgz321

Is the waffle demo outputting a pose in your environment?

maximilianwulf avatar Jun 08 '21 10:06 maximilianwulf

yes,it is the waffle demo. I have not do any changes.

huangyoupingben avatar Jun 09 '21 09:06 huangyoupingben

There is no elevation map in the rviz when I run the waffle demo. The terminal show that "Could not get pose information from robot for time 421.037000. Buffer empty?"

waffle_err2

huangyoupingben avatar Jun 09 '21 09:06 huangyoupingben

Hey, I couldn't reproduce it on noetic:

Screenshot from 2021-06-30 11-34-04

Are you using melodic?

maximilianwulf avatar Jun 30 '21 09:06 maximilianwulf

Can you try the melodic-devel branch? We just merged a fix.

maximilianwulf avatar Jun 30 '21 10:06 maximilianwulf

I fixed the problem, the topic type of odometry published by waffle robot is differerent from the type in the code. I changed the code so that it can match the topic of odometry published by waffle robot. My ubuntu is 18.04.

huangyoupingben avatar Jul 04 '21 14:07 huangyoupingben

Hey @huangyoupingben, could you make a fixing MR for the melodic-devel branch? I think the community would appreciate it quite a bit.

maximilianwulf avatar Jul 06 '21 08:07 maximilianwulf

@huangyoupingben Can you tell me how to modify it, thank you so much!!!

wxk514 avatar Jul 31 '21 13:07 wxk514

@wxk514 ,focus on the type of " robotPoseCache_" in ElevationMapping.hpp. You can use some tools ,for example rqt, to show the topic of odometry of waffle robot, and check the type of Odometry. In my case, they were different. I changed the type of "robotPoseCache_" so that it can match the topic of odometry published by waffle robot, moreover, I changed some code related to "robotPoseCache_" in the function of ElevationMapping::pointCloudCallback which is in the ElevationMapping.cpp. you can have a try, good luck.

huangyoupingben avatar Aug 01 '21 05:08 huangyoupingben

Dear @maximilianwulf ,I have a question about your paper The probabilistic Terrain Mapping for Mobile Robots with uncertain localiztion. My question is that the map frame in your paper is different from the one in the source code of elevaton_mapping. In your paper, the definition of the M frame is aligned with the z axis of the I frame, yaw(I,M)=yaw(I,B). So, the map frame moves as the moving of robots relative to the fixed world frame. However, in the source code , it is found that the elevation map is based on a fixed world coordinate frame (fixed odometer coordinate frame) , and the map frame will not change with the moving of the robot. When running elevation_map code, It is observed that the length and width of the output elevation map is always parallel to the fixed world coordinate frame. In summary, the map frame in your paper is different from the one in the source code of elevaton_mapping. look forward to your reply.

huangyoupingben avatar Sep 04 '21 03:09 huangyoupingben

@huangyoupingben Can you tell me how to modify it, thank you so much!!!

If your are using Ubuntu 18.04, you can try to modify the code in
tf_to_pose_publisher.py line 1 in the first line, the python3 should be python2.7, because the default rospy in Ubuntu18.04 is python2.7, in Ubuntu20.04 is python3. Maybe it will help.

jarvisyjw avatar Oct 18 '21 09:10 jarvisyjw

In case you found a neat fix, could you update the melodic-devel branch?

maximilianwulf avatar Oct 21 '21 14:10 maximilianwulf

In summary, the map frame in your paper is different from the one in the source code of elevaton_mapping. look forward to your reply.

You are free to choose the frame of reference depending on your needs. Do you have an issue?

maximilianwulf avatar Oct 21 '21 14:10 maximilianwulf

Same problem. Have anyone fixed this bug?

zhanghua7099 avatar Nov 28 '21 07:11 zhanghua7099