0
$\begingroup$

Rosanswers logo

I have set-up the navigation stack on my differential drive robot which has three ultrasonic sensors 45 degrees apart(I know the map is not going to be great with these sensors but it is my only option). I have got a global and local costmap setup similar to the tutorial on the navigation stack ( robot_setup ). I incorporated three range_sensor_layers for my three ultrasound sensors in the costmaps.

My question is, What do I start with possibly AMCL with a created pgm map of its environment or gmapping? My ultimate goal is to end up with an autonomous 2D mapping robot.

I am currently trying to use AMCL with a template map but I do not know how to translate the ultrasonic readings in a way that AMCL can use them. I know AMCL expects a laser scan to be published on the /scan topic?

Any help will be greatly appreciated, Please let me know if any further information is needed.


Originally posted by miguel on ROS Answers with karma: 170 on 2015-07-08

Post score: 0


Original comments

Comment by mukut_noob on 2016-04-03:
Hello Miguel, I have just prepared a robot like you and have set up the navigation stack. I also have no other options for using a Sonar, but is it important to use multiple sonars? If so then how to get the reading from the three and bind it into one reading. Please assume that I know nothing.

Comment by miguel on 2016-04-04:
Have you been able to obtain a single reading?

Comment by miguel on 2016-04-04:
I was not able to map successfully with three sonars. I moved onto an asus xtion Kinect. The sonars do not provide enough data. Also too many sonars could interfere with each other.

Comment by mukut_noob on 2016-04-04:
Then? Was it successful? I suggest you to use a IR Range Finder. Check it out.

Comment by mukut_noob on 2016-04-04:
Actually I just have one sonar and wanted to know that would it really work with three of them, if it worked then id buy the rest so I asked you.

Comment by mukut_noob on 2016-04-04:
Did you get the odometry data? Did you use the encoders?

Comment by mohamedaminhuidi on 2018-10-04:
do you think this setup will work with autonomous navigation in a known map?i have the same sensors and it's my school project,so i was wondering if it'll work.

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

You have two options:

  1. If you want to use std_msgs/Range with AMCL, then you have to modify amcl so that it can accept it which might not be straightforward.
  2. Another way is to convert your std_msgs/Range to laser scan (/scan) and use that with AMCL which might be easier to implement.

Originally posted by Naman with karma: 1464 on 2015-07-08

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by miguel on 2015-07-09:
That seemed to be the conclusion I was coming to. Is there any resource material that you know of to convert? And it terms of gmapping will that come after I get AMCL working?

Comment by miguel on 2015-07-10:
I just created a laser scan with three reading and the associated angles of each sonar. I hope that is correct.

Comment by Naman on 2015-07-10:
yeah..but you should interpolate in between your range finders or maybe you can tune the grid size of the costmap else you will have problems clearing the costmap because you just have 3 sensors.

Comment by miguel on 2015-07-10:
how would you adjust the grid size? the resolution?

Comment by Naman on 2015-07-10:
http://answers.ros.org/question/10717/setting-the-grid-size-in-costmap/ See it

Comment by miguel on 2015-07-11:
Thank you, in terms of only having three sensors would it lean to a smaller or larger meters/cell? I would think larger since I have less points?

Comment by Naman on 2015-07-13:
yes..larger meters/cell

Comment by b2meer on 2016-01-15:
If I want to go for option 1, can you guide me what changes I need to do in amcl to accept std_msgs/Range data?

Comment by miguel on 2016-02-08:
I tried to look into option 1 and never found any help. I suppose you would need to be quite knowledgeable to do so. Also the ultrasonics didnt provide near enough information (at least for Gmapping, AMCL I didn't really use)

Comment by b2meer on 2016-02-08:
alright. thanks for your help :)

Comment by Kishore Kumar on 2017-03-07:
@miguel how to convert the std_msgs/Range to laser scan, can you pls direct me to the resources or guide me?

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.