Sphero API校准

时间:2014-10-22 00:59:48

标签: sphero-api sphero

问题:SetHeading API没有校准Sphero。

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

实施Sphero校准步骤时:

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

    或者,我可以发送速度为零的滚动命令,并且标题数据和设备确实调整到位。然而,在校准结束后,当我尝试" Roll"设备,设备调整回原始校准,然后移动。

  3. 结论:似乎具有零速度的Roll命令不是校准Sphero的正确方法,但SetHeading没有做任何事情。我打开和关闭了SetHeading和SetStabilization。既不影响SetHeading也有助于校准。

    任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

使用零速度的Roll命令来“瞄准”机器人。正如您所指出的那样,照亮背部照明是有帮助的。完成瞄准后,使用0度标题参数调用SetHeading。

答案 1 :(得分:0)

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

sphero.roll(0, heading, 2, ()=> {
    setTimeout(()=> {
        sphero.setHeading(0, ()=> {
           sphero.roll(0, 0, 1, ()=> {
               //done
           });
        });
    }, 300);
});