胡椒机器人行为在移动时停止

时间:2018-04-06 13:24:00

标签: nao-robot pepper

我们正在尝试使用ALNavigation SLAM API将Pepper移动到地板上。我们使用ALNavigation:explore()方法创建了一个地图。该应用程序大部分时间都在工作,但有时由于某些安全保护功能,Pepper会停止并且应用程序之间会崩溃。

我们正在使用ALNavigation:navigateToInMap将Pepper移动到地图上。

以下是一些日志:

[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.

有没有办法解决这个问题,或者这是Pepper轮子的硬件问题还是代码中的错误?在本地化机器人之后,我只是简单地调用navigateToInMap,这大部分时间都有效,但这个问题越来越频繁。

由于

1 个答案:

答案 0 :(得分:2)

Pepper有一个系统来检测她是否被推,并且(当前版本)有时会出现误报 - 特别是在有不规则的地板上,或者当胡椒快速移动或加速残酷时。

一些解决方案:

  • 让胡椒移动/加速更慢一点
  • 让系统在退出保护措施后立即再次启动应用程序(例如,使用ShouldBeExploring或shouldBeNavigating触发条件) - 根据我的经验,当这种误报发生时,机器人可以保护很短的时间,也许更少然后是第二个。

我建议使用第二种解决方案,因为这通常是你想要做的事情,当一个安全措施误报的时候 - 当有人碰到辣椒或摇晃时她等等。