《基于PID运算的水箱恒水位控制系统设计研究.docx》由会员分享,可在线阅读,更多相关《基于PID运算的水箱恒水位控制系统设计研究.docx(6页珍藏版)》请在第壹文秘上搜索。
1、摘要:首先分析了水箱恒水位控制系统的控制要求、组成及各部分作用,然后阐述了用CPU224XP实现PID控制的相关概念,最后介绍了水箱恒水位控制系统的程序,这对于用S7-200P1.C实现恒值控制具有参考价值。关键词:CPU224XP;恒水位控制;PID0引言恒值控制是自动控制领域常用的控制方式之一,如恒压、恒温、恒水位控制等。恒值控制多采用PID算法实现。PID控制属于负反馈控制,当被控对象偏离理想值时,可以快、准、稳地回到理想值。本文主要阐述如何运用PID运算实现水箱恒水位控制。1 系统控制要求某水箱的水位需要保持70%的高度,其中水箱中的水以变化的速度流出,用水位检测仪检测水箱水位,用变频
2、器驱动水泵给水箱供水,用PlD的输出控制变频器的频率,从而控制水箱注水电动机的转速,满足水箱70%高度的恒水位控制要求。2 系统组成及各部分作用实现上述控制要求的恒水位控制系统组成如图1所示。图1恒水位控制系统框图该系统主要由S7-200系列P1.C中的CPU224XP、水位检测仪、变频器、电动机、启停开关、电源等组成。下面对各部分器件的作用进行简要阐述。2.1 CPU224XPCPU224XP具有14点数字量输入、10点数字量输出,2路模拟量输入、1路模拟量输出,6路100kHZ的高速计数器,2路100kHZ的高速脉冲输出;具有2个RS485通信/编程口;具有PPI、MPl通信协议和自由口通
3、信方式;具有PID功能。2.2 变频器变频器是变频电源,它可以将固定频率、固定电压的交流电变为频率可调、电压随频率变化的交流电,作为电动机的电源,通过调频来调节电动机的转速。变频器的调频方法有面板调频、外接电位器调频、多段速调频、调节外部电压、电流调频、通信方式调频。本文采用外部可调电压调频,这个外部可调电压来自CPU224XP中经PID运算的模拟量输出。2 .3水位检测仪水位检测仪是将水位信号变为电信号的水位检测仪器。其将转换后的标准电量信号送给P1.C,作为PID运算的给定值。将水位检测仪的水位检测量加到CPU224XP的M、A+端,作为PID的反馈量,将经PlD运算的输出值经M、V端输出
4、给变频器,作为变频器的外部电压控制信号。3 相关概念3.1 PIDPID(proportionalintegralderivative)积分、微分的缩写。P是比例,I是积分,D是微分。PID是一种算法。PID运算是将系统给定值与反馈值的偏差值进行比例、积分、微分合成运算,用运算结果去控制被控对象的输出量,使输出量趋近或等于理想值。其中各个因素的作用如下:比例P:比例系数4越大,比例调节作用越强。比例调节的作用是快且准,但过大的比例系数容易引起超调量和振荡次数的增加,使系统稳定性下降,而且会使系统调节时间增加,所以在确定比例系数时要综合考虑各方面因素。积分I:积分时间常数*越大,积分作用越弱。积
5、分调节的作用是消除偏差,实现无静差调节。其负作用是过大的积分作用会使调节变缓,影响系统的快速性和稳定性。微分D:微分时间常数北越大,微分作用越强。微分作用是根据被调量的变化率进行调节,当被调量有变化趋势时即产生调节作用,对系统的偏差进行超前校正,使系统的动态响应速度提高,动态稳定性增强。其负作用是对干扰信号比较敏感,使系统的抗干扰能力降低。3.2 PlD回路参数表将和PID相关的9个参数列成表格,每个参数均为32位实数,占用P1.C内存的4个字节,构成PID回路参数表,如表1所示。表1也回路参数表地址参数数值VD100过程变量当前值”水位检测值的标准值VD104给定值线0.7YDw输出值M乜2
6、回路输出值的标准值VfiXU增益工0.3YBUg采样时间Tt0.1VD120积分时间Ti30VDl24微分时间40(关闭微分作用)皿28上次积分值也根据皿运算结果更新上次过程变量值当上次水位检测值标准值4 系统程序水箱恒水位控制系统的程序由主程序、子程序和中断程序组成。主程序用来调用初始化子程序;子程序用来建立PID回路初始参数表和设置中断;中断程序用来完成输入、输出处理、PID的运算及结果更新。具体程序及解释如下:4 .1主程序1.DSMO.1CA1.1.SBRJ)首次扫描时,调用初始化子程序。5 .2子程序MOVR0.7,VDIO4设置给定值为0.7,对应水箱水位70%;MOVR0.3,V
7、Dll2设置比例增益系数为0.3;MOVR0.1,VD116采样时间0.1s,即0.1s采1次水位值;MOVR30,VD120设置积分时间为30min;M0VR0,VD124设置微分时间为0,即微分不起作用,本例实际是PI控制;MOVB100;SMB34设置定时中断的周期为100ms;ATCHINT_0;10将中断程序和定时中断0连接起来,即中断事件为定时中断0,中断事件号为10;ENI开中断。4 .3中断程序ITDAIWO,ACO/将AIWO中的16位整数值转换为32位双整数值,存入累加器;DTRACO,ACO将ACO中的值转换成32位实数值,存入ACO中;DIVR32000,ACo将ACO
8、中的数值除以量程32OOO(本例标准化时取量程对应值为32000)进行标准化,存入ACO中;MOVRACO,VD100/将标准化后的值送入VDloO中;PIDVBlOO,0设置参数表起始地址为VB100,PID回路号为0,PID指令使PID参数设置及作用生效;MU1.RVD108,32000/将运算结果的标准化数值转换成实数值;ROUNDACO,ACO将AeO中的实数值取整并转换成双整数;DTIACO,ACO将双整数转换成16位整数;MOVWACO,AQWO将PID运算结果送至AQWO中,作为控制变频器的控制量。5 结语该水箱恒水位控制系统硬件上主要由CPU224XP、变频器、电动机等组成,软件上主要利用CPU224XP的PID功能,通过编程实现恒水位控制。在PlD运算时,给定值、反馈值、控制值均为标准化数值。在中断程序中设置参数表,在中断程序中通过PID指令使PID作用生效。