Sphero API 校准

Posted

技术标签:

【中文标题】Sphero API 校准【英文标题】:Sphero API Calibration 【发布时间】:2014-10-22 00:59:47 【问题描述】:

问题:SetHeading API 不校准 Sphero。

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

在实施 Sphero 校准步骤时:

    我打开背面的 LED。

    我发出带有航向数据的 SetHeading 命令,但设备没有调整。

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

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

任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

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

【讨论】:

效果很好。谢谢。【参考方案2】:

让它正常工作有点棘手,这是我正在使用的 sn-p:

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

【讨论】:

以上是关于Sphero API 校准的主要内容,如果未能解决你的问题,请参考以下文章

学习(1)Kalibr多相机校准 视觉惯性校准校准(相机-IMU)滚动快门相机校准

确定适合相机校准的校准板尺寸

安卓手机时间校准怎么调节?

在线校准相机中校准相机时出现 OpenCV 运行时错误

在这种 scrnaroo 中无法校准连接到车辆的磁力计,如图 8 校准

MMA8451重力加速度计通过写内部校准寄存器进行校准