creating the map with only Lidar
I am using, ROS Noetic + 20.04
.
Lidar hardware: rplidar_a3m1
- I installed
slam_toolbox
package viasudo apt install ros-noetic-slam-toolbox
and it is working fine - I installed
rplidar driver
via rplidar git
I want to create an indoor map using slam_toolbox
with lidar ONLY. I do not have wheel odometry
.
First I do,
roslaunch rplidar_ros rplidar_a3.launch
This starts publishing on the/scan
topic.roslaunch slam_toolbox online_sync.launch
I launch theslam_toolbox
with default config.
Initially, I encounter that map did not grow after its initialization #438
Then, I provided a dynamic frame as per Broadcasting a moving frame. Which looks like this tf publisher
But I see my map is not generated correctly. It is moving in a circle (which I guess due to the dynamic tf
I provided). The circle get smaller if I reduce the amplitude. I do not know what is the correct way of providing the dynamic tf
between frames when I want to move the sensor with hand and create a map.
And this is how my tf tree looks like when running, rosrun tf2_tools view_frames.py
Regards,
Try having a look at hector_slam. It has worked well for me in the past.
@WarTurtle Thanks for commenting. Would you recommend
hector_slam
as better solution thanslam_toolbox
?. Ashector_slam
does not provide loop closing abilityI'm not sure that what you want to do is possible. All the SLAM algorithms I've looked at want a half-way accurate estimated robot pose for each scan they record. This value is normally constructed using measurements from sensor(s).
@Mike Scheutzow
I would like to generate the map of an indoor environment. I am not trying to localize the sensor, so I believe Odometry is not required. Please correct me if miss something.