我正在尝试为跟踪运动物体的机器人设计一个控制系统。因此,我想让机器人匹配对象的位置和速度状态。我不想让机器人简单地到达该位置,但我想以相同的物体速度到达该位置。

目标速度和位置数据将从外部提供。

我不确定具有仅基于位置的误差的传统PID控制器(带速度控制)是否足够。

PID是我想要的还是我应该在看轨迹控制之类的东西?

#1 楼

对于MIMO系统(多输入,多输出),我的建议是使用状态空间控制,这将给您足够的自由来移动闭环极点,从而满足您的控制要求。在文献中进行了大量研究的一种可行的解决方案是采用LQR控制器与状态观察器相结合,其中状态显然由位置和速度组成。

关于使用a简单的PID,我相信以下两个问题非常相关:



空中加油问题:反馈控制器的示意图。

控制速度和位置(线性执行器)。


#2 楼

实际上,如果您需要机器人在到达时与被跟踪对象具有相同的速度,则可能需要采用更复杂的方法。但是,正确类型的控制器将在位置上渐近实现0跟踪误差(通过扩展隐含速度在零误差)。类型是控制器中积分器的数量。现在,如果要跟踪的对象呈线性移动,则需要1型控制器。如果要更改速度和位置(最多二次路径),则需要2型控制器。
我的观点是,如果您知道要跟踪的对象的运动约束,并且您的规范是必须渐近地接近对象的速度和位置,则可以摆脱使用PID控制器+积分器,如下所示:$$
\ frac {k_ {d} s ^ 2 + k_ {p} s + k_ {i}} {s ^ 2} $$

或:

$$ \ frac {k_ {d} s ^ 2 + k_ {p} s + k_ {i}} {s ^ 3} $$

但是请小心,这些集成器会使您的系统不稳定。您可以在Matlab中进行测试。

评论


$ \ begingroup $
该答案包含有关所需控制器类型的漂亮参数。
$ \ endgroup $
– Ugo Pattacini
16年6月20日在12:14

#3 楼

在许多情况下,单个传统的PID控制器足以跟踪对象并匹配对象的位置和速度。
对于PID的位置误差项,积分器的积分项(“ I”) PID)和微分项(PID中的“ D”项)均有助于补偿对象的速度。

无论使用哪种控制系统,如果对象突然发生意外运动,跟踪将滞后-这是我们因果宇宙的本质。
(请告诉我们是否存在消除对象跟踪器所有滞后的方法,甚至完全不可行)。

有各种各样的前馈方法可以减少(但不能消除)PID控制器中的滞后。
在您的情况下,而不是使D与导数成比例的(传统,误差放大)方法。位置误差,
通过直接测量物体的速度和跟踪器的速度,您可能会减少延迟将D设置为与它们的差成正比。
(或者也许与单个物体的速度成正比)。

如果您希望跟踪器在同一时刻获得物体的速度,它到达对象的位置,
然后您想要一个“没有过冲”的控制系统。
有很多应用需要这样的控制系统,并且PID控制系统可以
(您可能已经知道,大多数PID控制系统都是使用不同的Critera进行调谐的,该Critera允许一些过冲和振荡,以减少建立时间的滞后;使用此类系统的人使用术语“过阻尼”来描述没有过冲的设置。)


鲍勃·皮斯。 “这个P-I-D东西到底是什么?” (“通过使用两个传感器,您可能会得到更好的结果。驱动微分器的一个传感器可能位于非常靠近加热器的位置,以提高稳定性。但是驱动积分器的一个传感器可能位于“最佳位置”,即精确的位置需要最高的精度。”)

空中加油问题:反馈控制器的示意图
莱斯·Znaimer和约翰·贝克霍费尔。 “分体式PID控制-两个传感器可能比一个传感器更好”。
“无超调的PID控制”
“改进的PID控制器,可避免机筒加热系统温度超调”