ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I think the intent of your question is more general than the specific questions you asked, so I'll try to answer:

Specific questions:

but how can I make it move accordingly with the goal coordinates?

Is there any ROS node which I can use as starting point to develop my ROS node? Do you have suggestions on the algorithm to use or on other sensors/methods?

There are several different packages available within ROS to do motion planning with the Navigation Stack sort of being the "hello world" application for robots equiped with Lidar and wheel encoder.

Does the laser/scan topic work fine with laser distance sensors?

You could make your 4 laser distance sensors output data that could be built into a laser/scan message. But that message with only 4 active data points would be of limited use in a typical robot environment.

Input for what I expect is the intent of the post: Give me advice for how to do this.

The issue of range for laser scanners is not new. Your proposed idea of 4 distance sensors pointing at the walls will work fine provided you can assure that the robot will

  1. be and stay oriented parallel to the walls
  2. you have some way to either detect obstacles or can be assured there will not be any obstacles.

If 1) and 2) are met you would need to generate an odom message based on the readings of the lasers and move_base could be used to do path planning. Of course there are some caveats regarding noise and accuracy of your lasers. But I'll skip that for now.


In the case for 4 stationary lasers on a platform that cannot be assured to remain oriented, I can imagine an algo that determines accurate long term orientation and location provided the following are met:

  1. you know the starting location and orientation of the robot
  2. you have accurate measurements of the room
  3. the lasers are suitably quiet, stable, and repeatable
  4. you know which way the wheels are rotating (assuming you have wheels)

It's possible AMCL can do this out of the box with 4 points, but not sure. The algo I'm imagining is more deterministic than AMCL (meaning more likely to fail in noisy conditions)

A more general setup that can use well-tested ROS apps would be to mount one or more of your 80m sensors on a rotating platform and generate a multi-angle laser/scan message. With a rotating laser(s) you could see the walls, detect orientation of the robot to the walls and track obstacles.

Many people have put laser ranger finders on rotating platforms and posted youtube videos of the process. I have built a laser scanner based on a cheap range finder. It has better range than the laser scanners I bought but it's noisier.