登录
首页 自控设计
回帖 发帖
正文

主题:何必“穿PC新鞋,走PID老路”

点击:48267 回复:69

计算机时代的自控调节路条条,何必“穿PC新鞋,走PID老路”
                       ——一种“傻瓜温控”程序的实现带来的思考
打开温度控制仪表产品目录,控制效果好一点的表,都标明用“PID调节”,至少要设置“控制周期”“比例系数”“积分时间”“微分时间”等参数,非控制专业的操作者很难理解这些参数的意义,即便是控制专业的操作者,知到其意义,但对新设备,这些参数应设成多少,也不得而知,只好试验得出。更好一点的表,可以“自整定”,自动测出这些参数。温度控制仪表按这些参数去控制设备的温度。
最近,用全新的思路,研究出一种精简的温控程序(只有近2K字节的单片机程序),由于不需输入意义不太准确的参数,也不需“自整定”操作,就能控制不同设备的温度,我把它叫做“傻瓜温控”,几乎做到“即插即用”。
"傻瓜温控"与普通的PID调节比:
1、不需自整定,调节参数只有一个,是设备说明书上就有的——被控设备的使用温度上限
2、调节过程中,超调小,波动次数少
3、改变设定值,跟踪设定值快
4、可用于相互干扰的多点温控,如橡胶硫化压力机的上下模板温控。(此情况下PID调节无法自整定)
5、有自我完善能力,但不强。
6、本身是自适应的,自然不怕设备的参数变化
程序空间大时,还可做的精致些。

这是我第二个不用“PID调节”模式的控制程序。
开始编程时,翻看有关自控调节理论书籍。几乎所有书籍都是讲“PID调节”,只有这一种思路。
从中看到:传统自控理论对各种被控对象特点作了充分的研究,并建立了数学模型,但模型几乎都归结为RLC网络(电阻、电感、电容组成的电路)。于是在研究如何控制时,也集中于对RLC网络(电阻、电感、电容组成的电路)的研究,抽象出“比例系数”“积分时间”“微分时间”等调节参数,由于完全数学化,其计算公式复杂深奥,很难与被控物理对象进行感性联想。

本来,热力学有自己的参数:温度、热能、比热、热导、散热等;动力学也有自己的参数:力、质量、力矩、速度、加速度、动能、位能等。根据这些参数及其自身变化规律(计算公式),就不能实施好控制?为甚麽一定要转换为电路模型,用那一套转递函数?

从一些书中找到答案:计算机时代前,不管您是热力学,还是动力学的控制系统,只要用电控制,控制回路只能由RLC网络加运算放大器组成。控制输出的改变,不能想大就大、想小就小,反馈信号(偏差)通过RLC网络,转换为控制输出,要受RLC网络的“比例系数”“积分时间”“微分时间”等约束,于是只好研究出各种RLC网络,以对应不同被控对象,当时,这是唯一可行的方法,自然PID独占鳌头。      

现在已到计算机时代,控制回路中几乎没有RLC网络,它被D/A、A/D转换加控制程序所代替。为了使传统自控理论适应此情况,自控调节理论就把RLC网络的一套公式数字化(离散化处理),让控制程序代替RLC网络!
改进是有的,先是“自整定”;后有“专家系统”和“神经网络” 等技术,或分段采用不同的PID参数,或不断修正PID参数等,改进后的程序(公式)更复杂深奥。但从本质说,还是离不开PID模式,这就形成“穿计算机新鞋,走PID老路”,计算机并没有给自控理论带来“革命”性变化,或者说没有充分发挥计算机技术的智能。
计算机时代的控制,可以根据偏差情况做到,控制输出想大就大、想小就小;可以左顾右盼从多角度分析,与时俱进不断改变策略;应该可以脱离RLC网络规律,直接用本学科规律去控制,或用别的规律——天高任鸟飞。
“傻瓜温控”从设备的热力学过程来找控制方法,过程分两个不同阶段,加温时,加热能量分两部分,一部分变为设备的储存的热能,使温度升高,另一部分为散热,消耗了。升温到设定温度下某一点,停加热一段时间,通过两种情况下,温度变化的差异,估算出加热能量中两部分的比率,估算出加热到设定温度还需输入的能量,按此加热,就能防大的过冲。到设定温度后,加热能量全部供散热,在温度围绕设定温度的波动中,较精确算出散热功率,也就是加热功率,用以稳定温度。
“傻瓜温控”的实现,不完全取决于上述思路,还借助于计算机技术的另一用途——“仿真”,就是用程序做成被控的“模拟温度设备”,它的温度被“控温程序”控制,“控温程序”令它加热或停加热,“模拟温度设备”加热或停加热时的温度变化应和真设备近似。可以说,没有“模拟温度设备”,“傻瓜温控”搞不成,道理很明显:
1、“控温程序”编好后要进行试验,其一、真实的设备要花钱、占场地;其二、真实的设备一次升温要很长时间;其三、要在升温中间停下,看程序如何进行,或马上修改程序是不可能的,停下,设备的温度状态就变了。用“模拟温度设备”,这些问题都不存在,能精雕细凿地完善控温程序;升温过程可快可慢,几秒钟就可升到需要的温度;中间想停就停(控温程序和模拟温度设备同时停,设备温度状态不变),想改就改,改完继续进行。
2、“傻瓜温控”要适用于各种设备,就要对不同设备进行试验,不可能用那麽多的真实设备来完成这任务。“模拟温度设备”创造了这个条件,改动“模拟温度设备”的参数就等于换了设备。编好相应测试程序,一觉醒来,计算机已将对一系列设备控制效果的检验报告打印出来。当然“模拟温度设备”要能正确地代替设备。基本要求:已知一真实设备的升、降温曲线,有方法求出它的“模拟温度设备”的参数。
概括起来,提醒在计算机时代搞自动控制的同行,教或学都要:
1、不要只盯着PID,路宽着呢。非自动控制专业的人氏不要被PID的公式吓住,走自己的路,用本科知识加计算机编程能力,就能编出好的控制程序。
2、要学点被控对象学科的知识,温度控制的学点热工学、传动控制的学点理论力学、调速控制的学点电机学等。
3、掌握建立被控对象的“模拟设备”方法和技巧。
4、学点VB语言。“控制程序”可先用它编,“模拟设备”也可在上面编制,同台调试运行,调试程序时用到的中断、修改、显示和保存过程参数值、人机界面等功能,VB语言调试平台都有,而且都很强,得心应手,可精雕细凿你的程序。我调试单片机汇编程序就在此进行,可把一个活生生的控制仪表放在屏幕上。VB语言入门容易,搞一般控制,入门知识就可以。
对此感兴趣者,可索要进一步说明和“傻瓜温控”、“模拟温度设备”、“傻瓜温控”控件的运行程序。
           上海   黄惠生 13916160444
                  HUHUSH1@163.com
04-03-22 14:02
对楼主的研究有点兴趣,想知道您的仿真模型怎么建立
arfour@263.net
04-03-22 16:19
現代設備何其多,建立完整的仿真模型呀,不過的確不需要盯著PID控制不放,路多的是!!!
04-03-22 17:00
楼主的文章写的好。标新立异。耳目一新。
04-03-23 06:33
好文章,我做的热风炉控制也没有用PID,是用模仿人工操作的方法实现的。比你的简单,看完你的文章以后感觉我的方法有些落后了。
04-03-23 08:32
很感兴趣,想知道您的仿真模型怎么建立!另楼上的能说说你的热风楼控制吗?我曾经也做过,想交流一下。thanks
suppergold@163.com
04-04-02 22:04

lck

好文章呀,令人耳目一新!!
但有个问题是,所需要的热工参数怎么得来,会那么准确吗?
对不起,我不懂热工学
04-04-03 10:26
文章不错!适合我的口味,本来做程序就不能中规中距,那样永远不会创新!
冒昧问一下,是楼主原创文章吗?很想和你交流这方面的问题,联系我!
knightliness@sina.com
04-04-04 19:56
我感觉怎么像自适应控制
04-04-05 09:13
2、“傻瓜温控”要适用于各种设备,就要对不同设备进行试验,不可能用那麽多的真实设备来完成这任务。“模拟温度设备”创造了这个条件,改动“模拟温度设备”的参数就等于换了设备。编好相应测试程序,一觉醒来,计算机已将对一系列设备控制效果的检验报告打印出来。当然“模拟温度设备”要能正确地代替设备。基本要求:已知一真实设备的升、降温曲线,有方法求出它的“模拟温度设备”的参数。
我可没有别的意思,就这种方法来说思路是好的,
可是根据模型预测结果和实际输出比较来进行控制,这在“内模控制”中有详细的介绍
04-04-06 20:51

上一页下一页

工控新闻

更多新闻资讯