Kamal
Kamal

Reputation: 11

Pepper robot behavior stops while moving

We are trying to move Pepper around on a floor using ALNavigation SLAM APIs. We have created a map using ALNavigation:explore() method. The application works most of the time but sometimes Pepper stops and the application crashes in between due to some safeguard feature.

We are using ALNavigation:navigateToInMap to move Pepper around the map.

Here are some logs:

[W] 15:01:26 ALMotion.OmniWheelFollowPath: Stitch failed. Stopping path: 
 ["Circle", [0.436987877, 11.431554794], [2.869375944, 11.368105888], 
-0.046996359]
[W] 15:01:26 ALTouch.TouchManager: My Base is touched. Reasons: Wheel. 
[W] 15:01:26 AutonomousLife: Robot was moved!
[W] 15:01:26 AutonomousLife: Robot moved, must enter safeguard state. Will 
immediately re-enter solitary state.

Is there any way to fix this issue or is this a hardware issue with Pepper's wheels or something wrong in the code? I am simply calling navigateToInMap after localizing the robot and this works most of the times but this issue is getting more and more frequent.

Thanks

Upvotes: 1

Views: 216

Answers (1)

Emile
Emile

Reputation: 2971

Pepper has a system to detect if she's been pushed, and (with current versions) there are sometimes false positives - especially on a floor with irregularities, or when pepper is moving quickly or accelerating brutaly.

Some solutions:

  • Make Pepper move / accelerate a bit more slowly
  • Have a system to launch the application again as soon as it exits safeguard (for example with a ShouldBeExploring or shouldBeNavigating trigger condition) - in my experience when this false positive happens the robot is in safeguard for a very short time, maybe less then a second.

I recommend the second solution because that's usually what you want to do when a safeguard that's not a false positive is triggered - when someone bumps into pepper, or shakes her, etc.

Upvotes: 2

Related Questions