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

Carefully approach obstacle and ignore costmap?

asked 2013-09-25 08:42:59 -0500

Hendrik Wiese gravatar image

updated 2014-01-28 17:18:03 -0500

ngrennan gravatar image

Hi folks,

please imagine the following situation: my robot shall drive close to a specific object on the map, say, a shelf or something like that. It shall move to a pretty precise position relative to the shelf, turn its rear side parallel to the shelf's front and move backwards to about 5mm from the shelf. It then shall perform some special actions like moving an arm, opening a hatch, pulling something from the shelf in and stuff like that... doesn't really matter, actually (I know, that can be achieved by use of smach for example).

My question however is how to make the robot move to that specific position, turn around and set back to the given distance (or other similar tasks)? Assuming that there is a set of sensors available that measure the distance to the cabinet it most likely has got to be some kind of control loop, right? And I suppose, they are already implemented in some stack/package coming with ROS.

So what packages/stacks of ROS can be used for that? Is move_base still applicable for tasks like this, where obstacle avoidance and complex path planning isn't needed, but instead just slowly moving to reach a given distance from an object?

Another question that might be pretty much the same answer is: how do I make my robot follow a wall for a given length, keeping a given distance? I suppose it's the same or at least a similar principle, hence no seperate question.

Thanks a lot!

Cheers, Hendrik

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2013-09-25 12:29:18 -0500

David Lu gravatar image

Is move_base still applicable for tasks like this..?

In its current state, no.

how do I make my robot follow a wall for a given length, keeping a given distance?

I would introduce a costmap layer that makes the lowest cost occur on the given path you want, which would allow you to still perform obstacle avoidance but get the desired path. However, this may not be the optimal solution.

edit flag offensive delete link more

Comments

So far it seems I have to implement a new action with an underlying control stack that performs this kind of tasks. I'd appreciate any advice regarding ROS components that I could utilize to make the implementation easier and more ROS conform. Unless somebody comes up with a better approach.

Hendrik Wiese gravatar image Hendrik Wiese  ( 2013-09-25 12:49:51 -0500 )edit

Your application is quite specific and will likely need application specific code. Usually for this type of application people write their own base controller which outputs cmd_vel velocities and uses the odometry from the still running navigation stack. (Use a command vel mux to switch off the nav stack. )

tfoote gravatar image tfoote  ( 2013-09-28 20:48:52 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2013-09-25 08:42:59 -0500

Seen: 800 times

Last updated: Sep 25 '13