主题:【原创】自动控制的故事(一)(完) -- 晨枫
传统上,如果操作工不抱怨,控制回路的性能就是可以接受的,除非你想精益求精,一般不会去没事找事,重新整定参数。在对经济效益斤斤计较的今天,生产过程的工艺条件被推到极端,对控制性能提出极大的挑战,控制回路必需时时、处处都在最优状态。随着控制回路数的迅速增长,单靠人工观察,已经难于随时掌握所有控制回路的性能状况了。控制回路性能评估技术应运而生。
理论上,对一个过程可以设计一个最优控制,其中一种就叫最小方差控制。这其实是线性二次型最优控制的一种,控制作用比较猛,但是这是理论上的极限,控制方差不可能再小了。90年代时,理论界提出一个方法,可以用闭环辨识的方法,不辨识模型,而是直接确定理论上的最小方差,然后将实际方差和理论上的最小方差相比,判别控制回路是否需要重新整定。这个方法开创了控制回路性能评估的先河,但是在实用上不容易排除不利影响,应用不多。
然而,不和理论上的最优值比较,而是和实际上的理想值比较,就可以绕过很多麻烦的理论问题。比如说,流量回路应该在1分钟内安定下来,那理想值就是1分钟。通过快速富利叶变换和频域分析,可以将理论性能和实际性能相比较,迅速确定回路的当前性能状况。最要紧的是,这可以用计算机自动采集数据,自动计算,每天早上(或随便什么时候)给出报表,控制工程师可以一目了然,哪些回路需要重新整定,哪些没有问题,可以有的放矢。实时频域分析还可以将所有以相近频率振荡的回路罗列出来,接下来控制工程师就可以按图索骥,找出害群之马了。
控制回路性能评估的下一步当然就是自动整定。这实际上是一个简化的、断续运行的自校正PID控制器,在理论上已经没有问题,但实用上还有很多可靠性问题没有完全解决,现在产品不少,但实用的还是不多。
对控制回路性能评估的更进一步,当然就是对生产过程的故障诊断了。故障就是异常情况,异常就是和正常不一样。所以故障诊断的核心在于如何探测这“不一样”。
故障总是有蛛丝马迹的,问题在于工业过程的数据量太大,在大海里捞针,等捞到的时候,常常已经时过境迁了。在数据分析中,PLS(其实是Peojection to Latent Structure,而不是一般所认为的Partial Least Square)和主元分析(Principal Component Analysis,PCA)是很流行的方法。PLS和PCA将众多相关的变量归拢到少数几个“合成”的变量,这样一个有大量变量的复杂大系统就可以简化为一个小系统,就从大海捞针变为碗里捞针了。捞出来的针不再是单个的变量,而是变量的组合。这和实际是相符的,故障的早期征兆常常是若干变量的组合,而不能单从一两个变量上看出来。
PLS和PCA还可以和图形方法结合起来使用。比如说,将那些合成变量标称化,就是除以正常值,那所有合成变量的标称值就是1。把所有变量画成“蜘蛛图”(spider chart),每一个蜘蛛脚代表一个合成变量,由于合成变量的标称值都是1,蜘蛛图就是大体为圆的。如果哪一个脚出现变化,蜘蛛就不圆了,非常容易看出异常来,接下来就可以有的放矢地寻找故障的早期迹象了。
图形数据分析的另一个路子是所谓co-linear分析。这是IBM早年琢磨出来的一个东西,理论上简直没有东西,但要求换一个思路,正所谓退一步海阔天空。平常的数据点,三维以上就没法画了。但是如果把三维空间的所有数轴画成平行线,而不是常见的直角坐标,那三维空间里的一个点,就是连接三根平行线的一根折线。如果仅此而已,那也就是一个简单但愚蠢的数学游戏。平行坐标系的妙处在于,平行线可以尽着画,所以5维、20维、3千维,只要纸足够大,都可以画,而且可以看见,而不是只能想像。平行坐标只有一个缺点,就是只能表述离散的点,而难以表述连续的线或面,但这对计算机采集的数据来说,不是问题,计算机采集的数据本来就是离散的点。这样,用平行坐标把大量的数据点画成折线簇,可以很直观地看出数据中的模式来,
故障诊断的另一个思路是对整个过程进行辨识。辨识出来的模型表述系统的行为,故障当然就是行为的改变,所以将实时辨识出来的模型和正常模型相比较,就可以判断系统是否出现异常或故障。
计算机和模型的另一个用处就是仿真。仿真(simulation)也叫模拟,但是模拟容易和模拟电路(analog circuit)搞混,所以现在叫仿真多了。只要对实际过程有一个足够精确的模型,计算机是可以相当精确地模仿实际系统的行为的。
仿真有静态仿真和动态仿真。静态仿真基本上就是解一个巨大的非线性联立方程组,描述空间分布的微分方程也被有限元方法分解了。现代静态仿真已经可以做得相当精确,但这也是在多年结合实际过程数据“磨合”模型的基础上才能做到的。静态仿真大量用于工艺设备设计计算,但是对研究实际过程的真实行为的作用有限,因为对整个生产过程和工艺的仿真要考虑进各个设备动作的时间和控制回路的影响,这些静态仿真是无法体现的。动态仿真要解同样巨大的联立微分方程组,由于要达到实时或更快,一般只能大大简化,否则计算速度跟不上。希望有朝一日,动态仿真可以达到静态仿真同等的精度,而不必担心损失计算速度。
仿真在工业上十分有用。现代化工厂越来越稳定,越来越安全,很多操作工一辈子也没有遇到过真正危险的情况。但没有遇到过不等于不会遇到,操作工必须接受足够的训练,只有这样,才能当遇到危险情况时,首先能及时、正确地识别故障,然后才能及时、正确地作出反应。这就要靠仿真训练了。现代化工厂也在不断地拓展工艺参数的极限,经常需要做各种各样的试验。有了仿真,就可以预先验证试验的构思,和验证对紧急情况的处理。
仿真更是控制工程师的好帮手,新的控制回路先放到仿真上试一下,得出初始整定参数,验证异常情况的处理能力,然后再放到真家伙上,可以避免很多不必要的惊讶。
仿真的一个远亲是实时最优化(real time optimization,RTO)。对于斤斤计较的现代制造业,实时最优化当然是求之不得的。实时最优化就是把整个生产过程当一个大的实时仿真来运算,实时(实际上是每小时)计算出最优工况。想法是好的,困难是多的。首先,那么大一个方程组收敛不容易,要划成很多条条块块,分别求解,然后拼起来。问题就出在“拼”上,边界条件碰不拢怎么办?模型总是有相当的简化,其中有些参数必须和实际测量值符合,有些就没有实际测量值对应,就是“经验系数”(fudge factor)了。这些经验系数就是承担收拾烂账的,边界碰不拢,就调整经验系数,使他们对齐。问题是,好多时候,这一招也不灵,所以实时最优化的喇叭吹得很响,真正用起来的很少,花了大钱最后放弃的也不在少数。
- 相关回复 上下关系8
😄我判卷, 不怕 1 马鹿 字0 2005-12-02 00:02:25
😄早说啊,好,睡个好觉去也 1 绿野仙踪 字0 2005-12-02 00:06:32
1 马鹿 字0 2005-11-29 20:43:12
【原创】自动控制的故事(十九)
【击节送花】红花且要绿叶衬 原创更需跟贴顶 夏翁 字0 2005-11-28 01:08:02
谢老夏 晨枫 字0 2005-11-29 20:12:38
🙂晨枫兄好文,加油 南天燕 字68 2005-11-27 22:18:47
多谢!心领了! 晨枫 字0 2005-11-29 20:13:01