反馈舵机

我们为2024年3月之后生产的舵机引入了位置反馈功能。该功能利用相同的PWM信号线返回舵机的实际位置,为机器人开辟了新的控制接口。

该功能从2024年5月在所有带有标签或激光标记的舵机上实现。如果标签缺失,它们可能仍然具备该功能。然而,该功能仅适用于基于ESP32主控芯片的BiBoard主板(不包括NyBoard主板)。

如果您想检查是否具备此功能,需要先升级机器人的固件。然后在Arduino的串口监视器或移动应用的创建自定义命令中发送串口命令“f”。如果在您转动动舵机时,串口监视器界面中持续打印变化的数值,那么它们是位置反馈。数值表的列数对应于具有反馈的舵机的数量。

为了执行以下功能,所有舵机必须全部是反馈舵电机:

自动校准关节舵机

  • 串口监视器 在串口监视器中发送串口指令c16”。机器人将进入休息姿态。将机器人身体在桌面上按压平整,将头转向正前方,并在串口监视器中发送任意英文字符。机器人将自动设置所有关节的校准值。

  • 手机app 创建一个名为“自动校准”(可自定义)的命令按钮,并使用代码:“c16”。点击此按钮,机器人将进入其休息姿势。将机器人到桌子上按压平整,并将其头部转正前方。创建一个名为“退出”(可自定义)的命令按钮,并使用代码:“d”。点击此按钮,机器人将自动设置其所有关节的校准值。

自动校准后,部分关节的角度与标准位置可能仍然存在一些偏差,需要进一步精细校准,但这样已节省了大量时间。

运动跟随

  • 串口监视器 在串口监视器中发送串口指令“fF”,然后慢慢拖动其中一条腿。其他腿会跟随其运动。

  • 手机app 创建一个名为“跟随”(可自定义)的命令按钮,并使用代码:“fF”。点击此按钮后,慢慢拖动其中一条腿。其他腿会跟随其运动。 创建一个名为“退出”(可自定义)的移动应用程序命令,并使用代码:“d”。点击此按钮,可以退出此模式。

通过直接扭转关节学习新技能

  • 串口监视器 在串口监视器中发送串口指令fl”,表示学习新动作。先将腿部移动到起始位置,保持机器人稳定大约2秒钟。机器人将倒计时,听到蜂鸣器发出轻微地哔哔声表示开始录制。然后你可以旋转各关节舵机,它不会记录微小动作,您可以在过程中间稍做暂停。录制124帧后,如果您在串口监视器中输入任意英文字符或停止移动超过2秒钟,它将停止录制。发送串口指令“fr”,表示回放所教动作。 {反馈舵机学习技能动作演示视频}

  • 手机app 创建一个名为“开始学习”(可自定义)的命令按钮,并使用代码:“fl”,点击此按钮后,机器人会倒计时,然后发出轻微的哔哔声,表示机器人开始学习新的动作。将机器人的关节(比如:腿)移动到您想要的起始位置,然后保持机器人稳定大约2秒钟,它不会记录小的动作,所以你可以在中间暂停。124帧后,如果您在串行监视器中输入任何字符或停止移动它超过2秒,它将停止录制。创建一个名为“执行”(可自定义)的命令按钮,并使用代码:“fr” ,点击此按钮后,机器人会执行所教的动作。

  • 该技能也将打印在串口监视器中(如下图所示),并且您可以将其导入到技能创作坊手机应用中。

如果您想基于反馈舵机编写新的应用程序,请参考OpenCatEsp32/src/espServo.h中的源代码。

Last updated

Was this helpful?