先放一张图,周克敏先生那本《Robust and Optimal Control》中的:
先答题,然后发散一下谈谈个人对控制理论发展的看法。
1)现代的先进控制理论先进在哪里?
2)如何评价在PID控制器份额在95%条件下稳定性逊色的先进控制系统?
=====================下面属于发散的内容=====================
聊些题外话把,实际上PID和新的控制理论并不是水火不相容的对立的,他们的关系很有趣。
一个系统的控制效果也不是由控制算法一个因素决定的,传感器、执行机构、反馈回路的选择等等都对控制效果影响很大。有时我也想用新算法,但很多时候用户对新算法总不是很放心,甚至对计算机都不是很放心,发文章或项目答辩时候也总有专家问,你搞这个东西搞这么花俏有PID效果好吗?有时也确实令人无语。因为没人知道PID能调成什么样子,可能要多好有多好,也有可能一头钻进淤泥里出不来。
这个问题可能刚学习了现代控制理论的朋友都会有。
现代的各种控制理论,都是针对特定问题而产生的特定解决方案。
PID虽然应用面比较广,但在特定问题上并不十分好用。
传统PID适用于线性时不变单输入单输出一阶系统。在一定的修改下,这个条件可以放宽到近线性的、时变较少的、单输入单输出的一阶或二阶系统。
凡是不符合这种要求的,或者有额外要求的,全部都要使用某种现代控制理论。
不符合要求的:
多输入多输出的系统(必须使用状态方程组表达)
高度非线性系统(要使用非线性控制方法)
高度时变系统(即系统参数变化很大,要使用自适应或强健控制方法)
有额外要求的:
要求系统能耗或某一特定状态组合达到最小/最大(比如登月着陆的最小燃料消耗,最优化控制)
系统“惯性”大,延迟大,但仍然要求控制输出要十分精准(比如化工,预测控制)
系统需要持续运行,运行期间参数变化较大,需要精准的控制输出,不能有高频震颤,而且绝大多数时候的运行状态不利于系统辨识(自适应双重控制)
现代控制方法的先进之处,在于解决了经典控制理论所不能解决或不好解决的问题。有的朋友觉得一种现代控制方法根本没有用或者不好用,这往往只是因为他们还没有碰到过这种方法所针对的那些问题。
把一种现代控制方法运用到某一控制问题之中,发现效果还不如PID,这有很多可能的原因。
首先,是在错误的问题上进行了应用。比如说把强健控制应用在线性时不变系统上,参数漂移范围也没有设个极小的值,最后就会觉得“哎?这怎么还颤呢?我那PID可一点都不颤啊。”现代控制理论都是针对特定的问题而设计的,要搞清楚你要解决的问题是什么,然后有针对性地进行使用。
其次,其中很多的方法都要求提供的系统参数或系统参数的范围绝对精确。比方说滑模控制,给定的系统参数漂移范围一定要可靠,如果系统参数飘出了给定的范围,系统就可能失稳。同理,自适应双重控制的卡尔曼/扩展卡尔曼滤波的那几个矩阵,也要尽可能的准确。如果控制方法默认的参数漂移特性与实际特性不相符,或者非自适应、非强健控制方法需要用到的参数与实际参数不符,控制结果往往不会太好。这个问题对于最优控制和一部分非线性控制尤其显著,因为这些控制方法都试图把系统潜力吃干挖净,一旦系统特性与实际有所不同,实际控制效果就会与纸面效果相差甚远。而PID控制,由于对系统的潜力并没有深挖,所以对参数变化并没有那么敏感。
凡是大部分员工都不认可,只有管理层一厢情愿的推崇的,就是low的公司文化。