首页 > 编程知识 正文

线性控制系统举例,线性系统控制工程

时间:2023-05-06 02:40:12 阅读:249597 作者:4160

这个问题是我导师(面试组长)多次在保研考研面试的时候问过的,而且每年都会问!问题其实不难,涉及的知识点也就是自控原理经典控制理论的部分,但是基本上很少有人能够完整地回答出来,不服的话请看题:

-------------------------------------------请看题---------------------------------------------

假设平面上有一个小木块,现在要求你把它从原点移动到1m的位置上去,如何设计控制器?

如果你看到这里脑子没有懵圈,还能联想到经典控制理论学过的知识,那很好,说明你对控制已经有一个基本概念了。如果还没有反应过来也没关系,我来给大家捋一遍。

控制领域三个基本问题“建模”,“控制”,“优化”,建模摆在第一的位置,打仗要先研究透对手,控制也一样。很多时候控制效果不好,问题不是控制器的问题,而是对象的模型搞错了。当然对于这个任务,模型还是简单的,由愉快的红牛第二定理  知道模型就是  ,为了方便后面讨论这里先忽略摩擦。再考虑得简单一点,假设木块的质量是1kg,那么模型变成了  。

在这里我提醒大家一定要开始转变思路,多用微分来表示速度、加速度、角速度、角加速度,如果你一开始想到的是  ,很容易脑子转不过弯来。

给定了控制的任务,也有了被控对象的模型,那下一步就可以开始设计控制器了。这里给一个建议,先把原理图画出来,在原理图的基础上分析问题能帮助我们很快地理清思路。我通常用来检验自己有没有搞懂一个控制问题的方法,就是直接去画它的原理图,如果不能很轻松地画出来,那说明我还没有完全理解。那么,对于这个任务它的原理图长这个样子:

因为要求木块到达1m的位置,所以  是一个幅值为1的阶跃信号,  是木块当前的实际位置。控制器暂时考虑使用最广泛的PID控制器,我们也按照PID来分析问题。最开始我抛出这个任务的时候,可能会有人脱口而出,用PID控制器呗,  三个参数多调两下总会实现的。那么我再多问一点,如果PID控制器能完成任务,那么PI控制器也能实现要求吗?PD控制器呢?只用P控制器会带来什么问题?

如何回答上面我重新提出的问题,我们先从考虑系统的稳定性问题开始。盯着画出来的原理图,可以重新解读控制目标为设计控制器使得最终的实际位置  ,误差信号  。假设目前使用PD控制器,我们看看系统能不能达到期望的要求。

PD控制器的输出为  ,而  那么有:式(1) 

因为  ,则 

看到这里你就明白了,最终的偏差信号肯定等于零,而且这个跟踪过程还是以指数趋近的。你看,PD控制器也能解决问题,这种情况下用PID控制器就是浪费。

如果我改一下条件,我不让小木块一直停在x=1m就结束了,我想向让你推着小木块一直走,期望信号改成  。那公式1会变成什么样子呢?等式右边还是等于零,结果是一样的。这说明PD控制器不仅能完成对阶跃信号的跟踪,对于斜坡信号也没有问题。

继续改变条件分析,我们推箱子推得越来越起劲,越推越快。期望信号改成加速度输入  ,那这时用PD控制器就有点费劲了。这是公式1变成:

很明显误差不等于零,怎么消除这个稳态误差呢?这个时候用PID控制器就比较合适了。控制器加入积分项后变成,公式1变成

 

 

这样一来,误差就又等于零了。所以说为什么积分项能够消除稳态误差,数学上的道理就在这了。

好的,一个人推箱子的情况分析得差不多了。再来看看有一个大胆的美女陪你推箱子时的情况。考虑存在外部干扰d,又该如何设计控制器?此时状态方程发生变化,不是  ,而是  。同样,先画出新的原理图:

先假设干扰为常值干扰,即 。这时只能使用PID控制器才能压制住干扰了,公式1变成

然后再分别对期望信号分别为阶跃、斜坡、抛物线时进行分析,就能看出PID控制什么时候能做到无误差跟踪,什么情况下根本解决不了问题。这里我就不再仔细分析了。

这个时候建议你拿出自动控制理论教材,再看看书上的描述,应该是有了新的理解。就比如下面这个输入信号作用下的稳态误差表:

如果你看到这里对这个问题还有兴趣,那么可以再想远一点。

尝试增加被控对象的阶次试试,三阶系统会怎么样呢?

既然PID控制器不能实现无差控制,又有哪些控制器能解决?

还有哪些提高系统抗干扰的方法?

如果对象的模型不准确又该怎么办?等等等等……

我相信你如果能再想想这些问题,肯定会对经典控制理论有一个更深的认识。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。