Is there any way to create a map of sensor readings(light/temperature/wifi) during SLAM?

asked 2016-07-21 10:06:16 -0500

Cristian11235 gravatar image

updated 2016-07-21 11:06:47 -0500

I would like to create a heatmap of multiple sensor readings, while my robot is creating a map of the surrounding using gmapping.

I have the navigation and SLAM portion of the robot working. I have attached the sensors, I wrote a couple of scripts to get the readings in the msg/Illuminacence msg/Temperature format and so on. I am able to view those measurements in rviz.

At the end, I would like to end up with a couple of maps, each one showing a heat map of different sensor measurements.

There are two problems:

  1. The sensor readings are msgs, so they do not create a map, even though they have (x,y) coordinates. Can I turn them in a map? Is there a 'proper' way of doing this?

  2. A harder to solve problem, the (x,y) coordinate of the sensor readings, is the (x,y) coordinate of the robot at the time of the measurement. Since I am collecting the measurements, while I am performing SLAM, the map, and the robot pose changes quite a bit. This leads to measurements which by the end algorithm, are off the map. I somehow need to apply the gmapping transforms to the sensor readings. Is there an elegant way of doing this?

Thank you, attached is a picture of the light sensor in rviz.

edit retag flag offensive close merge delete


I also have a similar problem - I am looking for a method to overlay some sensor data on a map generated with GMapping to create a spatial heat map. Initially, I am likely to be testing this by publishing random numbers to a topic that a heat map generator node will subscribe to and create the heat map from when combined with robot X and Y coordinates. Ultimately, I'm looking to be able to manually move a robot around and visualise how this heat map is building up according to sensor data (i.e. the random number) at the robots position. Any ideas would be much appreciated!

Py gravatar image Py  ( 2020-05-16 08:23:43 -0500 )edit