Robotics StackExchange | Archived questions

Does ros have a state observer?

I'd like to monitor the odometry feedback and the command messages to identify whether a robot is stuck. Something along the lines of this - If the odometry does not update over a certain command messages then the robot should figure out that it's stuck and override the command given to it.

What's the recommended way to do this?

Asked by Sidd on 2017-02-21 17:17:28 UTC

Comments

Isn't this what the navigation stack does (ie: when it triggers the recovery behaviours)?

Asked by gvdhoorn on 2017-02-22 01:55:31 UTC

I don't know, I haven't poked around too much. But I'm looking for something more generic that can be extended to other systems - If the payload of an arm is impeding the arm from achieving the desired velocities and accelerations etc. So I'm looking for a more generic state observer, if it exists.

Asked by Sidd on 2017-02-22 10:58:14 UTC

According to http://answers.ros.org/question/37537/navigation-recovery-behaviors-criteria/, the recovery behaviors are triggered if An oscillation was discovered, no global plan was received for some amount of time, or the local planner failed to find a valid velocity command for some amount of time

Asked by Sidd on 2017-02-22 17:25:44 UTC

It doesn't necessarily seem to depend on the odometry of the robot, at least directly..

Asked by Sidd on 2017-02-22 17:26:49 UTC

Answers