Issues with Mapping SUMMIT HL

Hi guys!

We have an issue with our SUMMIT HL - ROS Kinetic about creating maps. At the time that we want to create/see the map at RVIZ, it appears a WARNING message of “No map received” on the section “Map” as you can see in the screenshot.

We had tried 2 different commands to create/launch the maps. The first one is “roslaunch summit_xl_localization slam_gmapping.launch”, and the second one is “rosrun map_server map_saver -f testmap1”, but either worked.

The response of the first command is:

summit@SHL00-191011AA:~$ roslaunch summit_xl_localization slam_gmapping.launch
… logging to /home/summit/.ros/log/0345347c-b1d9-11ed-b1bb-0030180d6edc/roslaunch-SHL00-191011AA-3126.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://SHL00-191011AA:33415/

SUMMARY
========

PARAMETERS

    • /rosdistro: kinetic*
    • /rosversion: 1.12.14*
    • /slam_gmapping/angularUpdate: 0.1*
    • /slam_gmapping/astep: 0.05*
    • /slam_gmapping/base_frame: summit_xl_base_link*
    • /slam_gmapping/delta: 0.05*
    • /slam_gmapping/iterations: 5*
    • /slam_gmapping/kernelSize: 1*
    • /slam_gmapping/lasamplerange: 0.005*
    • /slam_gmapping/lasamplestep: 0.005*
    • /slam_gmapping/linearUpdate: 0.2*
    • /slam_gmapping/llsamplerange: 0.01*
    • /slam_gmapping/llsamplestep: 0.01*
    • /slam_gmapping/lsigma: 0.075*
    • /slam_gmapping/lskip: 0*
    • /slam_gmapping/lstep: 0.05*
    • /slam_gmapping/map_frame: summit_xl_map*
    • /slam_gmapping/map_udpate_interval: 2.0*
    • /slam_gmapping/maxUrange: 16.0*
    • /slam_gmapping/odom_frame: summit_xl_odom*
    • /slam_gmapping/ogain: 3.0*
    • /slam_gmapping/particles: 100*
    • /slam_gmapping/resampleThreshold: 0.5*
    • /slam_gmapping/sigma: 0.05*
    • /slam_gmapping/srr: 0.1*
    • /slam_gmapping/srt: 0.2*
    • /slam_gmapping/str: 0.1*
    • /slam_gmapping/stt: 0.2*
    • /slam_gmapping/temporalUpdate: 3.0*
    • /slam_gmapping/xmax: 50.0*
    • /slam_gmapping/xmin: -50.0*
    • /slam_gmapping/ymax: 50.0*
    • /slam_gmapping/ymin: -50.0*

NODES

  • /*
  • slam_gmapping (gmapping/slam_gmapping)*

ROS_MASTER_URI=http://SHL00-191011AA:11311

process[slam_gmapping-1]: started with pid [3271]

However, at the end, we couldn’t visualize any map in RVIZ. It show us the message that we can in the screenshot above (WARNING message") any anything else.

On the other hand, with the second command where we tried to save the map, but it didn’t work either. It just kept on the mode of “waiting”

summit@SHL00-191011AA:~$ rosrun map_server map_saver -f testmap1
[ INFO] [1676978954.952244712]: Waiting for the map

We didn’t know if that issue occurs because of the robot’s configuration, or we are doing something wrong.

Also, we had tried to download the robot’s packages from GibHub (“summit_xl_robot”) to correct any kind of possibles mistakes, but they are not available on the website, so not change on that way.

Likewise, we tried different launch files to create the map, but any of them had worked.

We will apprecite if you can give us a hand…

Thanks, guys!

Hi @daniel.arguello ,

Welcome to this Community!

I believe that if you want to see the map on Rviz, then you must set the Fixed Frame under Global Options as map and not anything else. [I might be wrong, but give this a try.]

That sentence actually sounds a bit vague. Do you want to create a map or launch a map.
Creating is making a map. Launching is using a pre-saved map.

The following command will launch the slam_gmapping node to create a map file. If you forget to save the map file after generating/visualizing the map, the map will never be saved.

roslaunch summit_xl_localization slam_gmapping.launch

The following command will save the generated/visualized map (from the above step) as a map file.
You must make sure that before calling this command, you should have mapped all the places using the above command.

rosrun map_server map_saver -f testmap1

To launch a map, that is, to use a pre-saved map, you must run map_server node like below:

rosrun map_server map_server <path_to_map_file>.yaml

Or, by using a launch file.

Creating and launching maps are two completely different processes in mapping.

Are you sure that the “different” launch files you tried are for creating a map and NOT loading a saved map?

Try my above steps. Let me know if you still have any issues.

Regards,
Girish

Hi Girish,

Thanks for your help. However, It is still not working.

We tried setting in the Fixed Frame the “map”, but nothing happened, as you can see in the screenshot below.

Also, to create the map we tried the command that you mentioned “roslaunch summit_xl_localization slam_gmapping.launch” and it show us the following output:

roslaunch summit_xl_localization slam_gmapping.launch
… logging to /home/summit/.ros/log/0345347c-b1d9-11ed-b1bb-0030180d6edc/roslaunch-SHL00-191011AA-3126.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://SHL00-191011AA:33415/

SUMMARY
========

PARAMETERS

    • /rosdistro: kinetic*
    • /rosversion: 1.12.14*
    • /slam_gmapping/angularUpdate: 0.1*
    • /slam_gmapping/astep: 0.05*
    • /slam_gmapping/base_frame: summit_xl_base_link*
    • /slam_gmapping/delta: 0.05*
    • /slam_gmapping/iterations: 5*
    • /slam_gmapping/kernelSize: 1*
    • /slam_gmapping/lasamplerange: 0.005*
    • /slam_gmapping/lasamplestep: 0.005*
    • /slam_gmapping/linearUpdate: 0.2*
    • /slam_gmapping/llsamplerange: 0.01*
    • /slam_gmapping/llsamplestep: 0.01*
    • /slam_gmapping/lsigma: 0.075*
    • /slam_gmapping/lskip: 0*
    • /slam_gmapping/lstep: 0.05*
    • /slam_gmapping/map_frame: summit_xl_map*
    • /slam_gmapping/map_udpate_interval: 2.0*
    • /slam_gmapping/maxUrange: 16.0*
    • /slam_gmapping/odom_frame: summit_xl_odom*
    • /slam_gmapping/ogain: 3.0*
    • /slam_gmapping/particles: 100*
    • /slam_gmapping/resampleThreshold: 0.5*
    • /slam_gmapping/sigma: 0.05*
    • /slam_gmapping/srr: 0.1*
    • /slam_gmapping/srt: 0.2*
    • /slam_gmapping/str: 0.1*
    • /slam_gmapping/stt: 0.2*
    • /slam_gmapping/temporalUpdate: 3.0*
    • /slam_gmapping/xmax: 50.0*
    • /slam_gmapping/xmin: -50.0*
    • /slam_gmapping/ymax: 50.0*
    • /slam_gmapping/ymin: -50.0*

NODES

  • /*
  • slam_gmapping (gmapping/slam_gmapping)*

ROS_MASTER_URI=http://SHL00-191011AA:11311

process[slam_gmapping-1]: started with pid [3271]

After that, we moved a little bit the robot to try to create a map. Once we stopped it and tried to save the map using the command “rosrun map_server map_saver -f testmap1”, it didn’t work. It show us “Waiting for the map” and nothing else happened. When we checked RVIZ, it show us the same as you could see in the screenshot above.

And yeah, we are trying to create a map to use it for navigation, but we had tried many ways and it’s still not working.

We appreciate your help.

Hi @daniel.arguello ,

Thanks for reporting back.

Since roslaunch summit_xl_localization slam_gmapping.launch seems to be associated with Summit XL robot, you can try the basic version command:
rosrun gmapping slam_gmapping scan:=<laser_scan_topic_name_in_summit_xl>

And to save the map you can use the general command again:
rosrun map_server map_saver -f <path_to_map_file_name_without_extension>

These two basic commands should work. If they don’t then you might need some sort of update.

Try the above two general commands and let me know what is your result.

Regards,
Girish

Hi @girishkumar.kannan

Thanks for your advices. We tried the commands that you told us, but it’s still not working. It shows the message below

rosrun gmapping slam_gmapping scan:=/robot/front_laser/scan
[ WARN] [1677139925.295843110]: MessageFilter [target=odom ]: Dropped 100.00% of messages so far. Please turn the [ros.gmapping.message_notifier] rosconsole logger to DEBUG for more information.
[ WARN] [1677139985.296373562]: MessageFilter [target=odom ]: Dropped 100.00% of messages so far. Please turn the [ros.gmapping.message_notifier] rosconsole logger to DEBUG for more information.
^Cvirtual GMapping::GridSlamProcessor::~GridSlamProcessor(): Start
virtual GMapping::GridSlamProcessor::~GridSlamProcessor(): Deleting tree

And on the site of saving the map, it keeps “waiting for the map” without any result.

rosrun map_server map_saver -f /home
[ INFO] [1677139917.287486654]: Waiting for the map

Also, by the way, if you might take at look at our frames. Maybe you could find some error o missing package that we would need to make the maps works.

Thank you so much for your help.

Best regards,
Daniel.

For the avoidance of doubts, could you please tell us which unit of the course you are taking? And which particular exercise or example?

It is not part of the course. This is a problem that we have when we try to aplicate the knownledge learned in the course because we are trying to make a Summit HL capable of generate a map, but it is not working.

Hi @daniel.arguello ,

After seeing your transforms chart, I notice something.
Are you missing a transform link between “map”, “odom” and “robot_base_footprint” ?
I am not sure how “odom” and “robot_odom” are linked. They are not linked on the graph.

I think you can do some hit and trial method to link

  1. “odom” to “robot_base_footprint”
    (OR)
  2. “map” to “robot_odom”

You need to use tf package to create a transform between two topics.

The map_saver command is wrong. You should provide full path to map file name.
If your map file name is my_map, you will have two files created - my_map.pgm and my_map.yaml.
So the command you will use is: rosrun map_server map_saver /path/to/my_map you will not add .pgm or .yaml extension to the file path.

Try this and let me know if this idea worked for you.

Regards,
Girish

Hi @girishkumar.kannan

Thanks for your help. We looked for more information about the command that you recommend us, but we couldn’t figure out how to create a transform between two topics using the tf package. We found that we can only read the info between topics, or get info from them, but they don’t mention anything about link them together. If you could orientate us about that, we will appreciate it.

Regards,
Daniel.

Hi @daniel.arguello ,

I do not have an exact answer, you can try creating a transform using the static_transform_publisher from the tf ROS package.
Refer: http://wiki.ros.org/tf#static_transform_publisher

Another suggestion would be to try changing the global_frame value in the local or global costmap configuration file. You need to “play around” to find the correct match.

I have not worked on Summit XL Robot, so I do not have a sure solution. You can give the above two ideas a try.

Regards,
Girish

Hi @girishkumar.kannan ,

Thanks for your help. One of the issue was a problem with the router of the robot and its configuration after many weeks the tecnical support solveed that. But we still have issues about the map generation. There is a screenshot with some information about the code. We don’t know how to solve or what the mistake is, so we hope that you might help us.

Regards,
Daniel.

Hi @daniel.arguello ,

Looking at your screenshot, I can immediately understand that there is a URL mismatch.
In one of the terminals, the URL port number is 42101 and on the other it is 11311.
Your ROS_MASTER seems to be running in port 11311 - which is the default port, but I see that your navigation is using 42101.
I have no knowledge on how your robot system is setup, but you need to make your MASTER URI communicate with your navigation.

One Idea I can think of is to set the ROS_MASTER URI to thesame port number of navigation, that is, 42101. But I am 100% not sure if this will work as I have not done this, so you can give it a try.

Otherwise, what you can do is create a TCP/IP port forwarding rule to communicate between the two ports. This needs to be setup on your Router, I believe.

I hope this helps.

Regards,
Girish

Hello @girishkumar.kannan

Thanks for your help. Finally, the tecnical support of Robotnik helped us to configure the robot because it came with some configuration issues from fabric.

Best regards,
Daniel and Valentina.

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.