0

问题:SetHeading API 不校准 Sphero。

我正在使用 Sphero 构建一个小的自定义应用程序,并希望实现一个配置 UI。但是,我没有使用 RobotLibrary,而是进行 Sphero API 调用。

实施 Sphero 校准步骤时:

  1. 我打开后面的led。
  2. 我发出带有航向数据的 SetHeading 命令,但设备没有调整。

    或者,我可以发送速度为零的滚动命令和航向数据,并且设备会调整到位。但是,校准结束后,当我尝试“滚动”设备时,设备会调整回原始校准然后移动。

结论:似乎零速度的滚动命令不是校准 Sphero 的正确方法,但 SetHeading 没有做任何事情。我已经尝试过开启和关闭 SetStabilization 的 SetHeading。两者都不会影响 SetHeading 并有助于校准。

任何帮助,将不胜感激。

4

2 回答 2

1

使用速度为零的滚动命令来“瞄准”机器人。正如您所指出的,点亮背面的 LED 很有帮助。完成瞄准后,使用 0 度航向参数调用 SetHeading。

于 2014-10-23T15:06:18.417 回答
0

让它正常工作有点棘手,这是我正在使用的代码段:

sphero.roll(0, heading, 2, ()=> {
    setTimeout(()=> {
        sphero.setHeading(0, ()=> {
           sphero.roll(0, 0, 1, ()=> {
               //done
           });
        });
    }, 300);
});
于 2016-02-05T15:28:16.980 回答