使用 Viam 组件进行反馈控制 | Viam

探索 Viam 的反馈控制,实现更智能的机器交互,根据环境条件实现精确的移动和调整。非常适合增强您的智能机器项目。

来源:Viam 博客

智能机器的众多有趣部分之一是它们如何与物理世界互动。

我们经常想给机器下达命令,例如“以每秒 5 米的速度前进”。然后需要将其转换为施加在电机上的功率。

但是,根据机器周围的条件(机器是在斜坡上还是在斜坡上?是在高摩擦区域,如沙地,还是在非常光滑的表面?),达到该速度所需的功率会有所不同。

如果机器有一个传感器,可以确定它实际移动的速度,则可以将其作为反馈提供给系统的一部分,以确定要施加多少功率。

这是“反馈控制”背后的主要思想,现在可在 Viam 电机组件的“GPIO”模型和 Viam 基础组件的“传感器控制”模型上使用。

电机 基础

反馈控制的工作原理

从高层次来看,反馈控制回路涉及几个基本部分:

    您希望系统实现的目标值(例如 5 m/s 的速度) 旨在实现目标值的输出(例如以 50% 的功率旋转电机) 测量实际实现值的传感器(例如确定机器实际以 4.8 m/s 的速度移动的车轮编码器) 计算目标值和实际值之间的差异(也称为“误差”)并计算输出校正的“控制器”(例如以 53% 的功率旋转电机)
  • 您希望系统实现的目标值(例如 5 m/s 的速度)
  • 旨在实现目标值的输出(例如以50% 功率)
  • 测量实际实现值的传感器(如确定机器实际以 4.8 m/s 的速度移动的车轮编码器)
  • “控制器”获取目标值和实际值之间的差异(也称为“误差”)并计算输出校正(如以 53% 的功率旋转电机)
  • GoFor GoTo SetVelocity