Rosanswers logo

Hi all,

I have a mobile robot and I would like it to follow a wall of a room. I already have a map of the room. I am using Wheel encoders for odometry. I am fusing data from wheel encoders and IMU using robot_pose_ekf. I have a Hokuyo lidar for localization and obstacle avoidance. I am also using Kinect to see obstacles which can not be seen by the hokuyo. I am using amcl for localization. I have couple of sharp sensors on the side for wall following. Now, I would like to know what is the best technique for wall following? Couple of techniques which I can think of:

  1. Use the map to come up with an initial global plan and then follow that global plan and change it if you see an obstacle which is not in the map.
  2. Dont use any global plan. Just follow the wall using the data from the sensors. This might be more difficult given that there can be wide variety of obstacles close to the wall and making sure that staying at a fixed distance from them might be tricky.

My one constraint is that I want the robot to be always at a fixed distance of 2 inches approx. from the wall (or an obstacle close to the wall).

I know this is a very general question but any suggestions regarding it will be appreciated. Please let me know if you need more information from me.

Thanks in advance.
Naman Kumar

Originally posted by Naman on ROS Answers with karma: 1464 on 2015-07-06

Post score: 1

Original comments

Comment by NEngelhard on 2015-07-07:
Why do you want to use the sharp sensors if you have a hukuyu?


1 Answer 1


Rosanswers logo

I'll choose plan 1,which use the map of room.

In the beginning, a global plan to walk through all the walls are planned. Then you can define two states for your robot to follow, "Wall following" and "Obstacle avoidance". This might be implemented by using SMACH,

But the tricky part is in the state changing condition. This might be interesting, you can test different strategies.

Another solution is to use ROS navigation, but implement your own global planner (by writing a plugin) to let it generate a plan that follows the wall.

Originally posted by Po-Jen Lai with karma: 1371 on 2015-07-07

This answer was ACCEPTED on the original site

Post score: 2

Original comments

Comment by Naman on 2015-07-07:
Thanks @Ricky! Do you know of any good resource/paper/forums/links for generating a global plan for wall following in ROS? TIA

Comment by Po-Jen Lai on 2015-07-07:
Forum: http://robotics.stackexchange.com/, As for paper: (I just did a quick survey, you might get more useful info by doing more survey) http://ieeexplore.ieee.org/xpl/abstractCitations.jsp?tp=&arnumber=220250&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D220250


Your Answer

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