您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > 第30讲--基于S7-300的PID液位控制系统
基于S7-300的PID液位控制系统内容:一、控制要求二、控制思路三、硬件选型四、电路连接五、程序用到的FC与FB六、PLC编程一、控制要求有一水箱可向外部用户供水,用户用水量不稳定,有时大有时少。水箱进水可由水泵泵入,现需对水箱中水位进行恒液位控制,并可在0~200mm(最大值数据可根据水箱高度确定)范围内进行调节。如设定水箱水位值为100mm时,则不管水箱的出水量如何,调节进水量,都要求水箱水位能保持在100mm位置,如出水量少,则要控制进水量也少,如出水量大,则要控制进水量也大。因为液位高度与水箱底部的水压成正比,故可用一个压力传感器来检测水箱底部压力,从而确定液位高度。要控制水位恒定,需用PID算法对水位进行自动调节。把压力传感器检测到的水位信号4~20mA送入至S7-300PLC中,在PLC中对设定值与检测值的偏差进行PID运算,运算结果输出去调节水泵电机的转速,从而调节进水量。水泵电机的转速可由变频器来进行调速。二、控制思路三、硬件选型1、PLC及其模块选型。PLC可选用S7-300(CPU314IFM),314IFM自身带有4路模拟量输入和2路模拟量输出。2、变频器选型。为了能调节水泵电机转速从而调节进水量,特选择西门子G110的变频器。3、水箱对象设备,如下图所示:四、电路连接1、主电路接线图2、PLC输入输出信号接线图SCALE功能接受一个整型值(IN),并将其转换为以工程单位表示的介于下限和上限(LO_LIM和HI_LIM)之间的实型值。将结果写入OUT。五、程序用到的FC与FB1、FC105FC105的数值换算公式为:OUT=(IN-K1)/(K2-K1)*(HI_LIM-LO_LIM)+LO_LIM对双极性,输入值范围为-27648到27648,对应K1=-27648,K2=+27648,对单极性,输入值范围为0到27648,对应K1=0,K2=+27648,如果输入整型值大于K2,输出(OUT)将钳位于HI_LIM,并返回一个错误。如果输入整型值小于K1,输出将钳位于LO_LIM,并返回一个错误。通过设置LO_LIMHI_LIM可获得反向标定。使用反向转换时,输出值将随输入值的增加而减小。FC105参数UNSCALE功能接收一个以工程单位表示、且标定于下限和上限(LO_LIM和HI_LIM)之间的实型输入值(IN),并将其转换为一个整型值。将结果写入OUT。2、FC106UNSCALE功能使用以下等式:OUT=(IN-HO_LIM)/(HI_LIM-HO_LIM)*(K2-K1)]+K1,并根据输入值是BIPOLAR还是UNIPOLAR设置常数K1和K2。BIPOLAR:假定输出整型值介于-27648和27648之间,因此,K1=-27648.0,K2=+27648.0UNIPOLAR:假定输出整型值介于0和27648之间,因此,K1=0.0,K2=+27648.0如果输入值超出LO_LIM和HI_LIM范围,输出(OUT)将钳位于距其类型(BIPOLAR或UNIPOLAR)的指定范围的下限或上限较近的一方,并返回一个错误。FC106参数3、FB41(1)常用输入参数:COM_RST:BOOL:重新启动PID:当该位TURE时:PID执行重启动功能,复位PID内部参数到默认值;通常在系统重启动时执行一个扫描周期,或在PID进入饱和状态需要退出时用这个位;MAN_ON:BOOL:手动值ON;当该位为TURE时,PID功能块直接将MAN的值输出到LMN,这可以在PID框图中看到;也就是说,这个位是PID的手动/自动切换位;PEPER_ON:BOOL:过程变量外围值ON:过程变量即反馈量,此PID可直接使用过程变量PIW(不推荐),也可使用PIW规格化后的值(常用),因此,这个位为FALSE;P_SEL:BOOL:比例选择位:该位ON时,选择P(比例)控制有效;一般选择有效;I_SEL:BOOL:积分选择位;该位ON时,选择I(积分)控制有效;一般选择有效;INT_HOLDBOOL:积分保持,不去设置它;I_ITL_ONBOOL:积分初值有效,I-ITLVAL(积分初值)变量和这个位对应,当此位ON时,则使用I-ITLVAL变量积分初值。一般当发现PID功能的积分值增长比较慢或系统反应不够时可以考虑使用积分初值;D_SEL:BOOL:微分选择位,该位ON时,选择D(微分)控制有效;一般的控制系统不用;CYCLE:TIME:PID采样周期,一般设为200MS;SP_INT:REAL:PID的给定值;PV_IN:REAL:PID的反馈值(也称过程变量);PV_PER:WORD:未经规格化的反馈值,由PEPER-ON选择有效;(不推荐)MAN:REAL:手动值,由MAN-ON选择有效;GAIN:REAL:比例增益;TI:TIME:积分时间;TD:TIME:微分时间;DEADB_W:REAL:死区宽度;如果输出在平衡点附近微小幅度振荡,可以考虑用死区来降低灵敏度;LMN_HLM:REAL:PID上极限,一般是100%;LMN_LLM:REAL:PID下极限;一般为0%,如果需要双极性调节,则需设置为-100%;(正负10V输出就是典型的双极性输出,此时需要设置-100%);PV_FAC:REAL:过程变量比例因子PV_OFF:REAL:过程变量偏置值(OFFSET)LMN_FAC:REAL:PID输出值比例因子;LMN_OFF:REAL:PID输出值偏置值(OFFSET);I_ITLVAL:REAL:PID的积分初值;有I-ITL-ON选择有效;DISV:REAL:允许的扰动量,前馈控制加入,一般不设置;2、常用输出参数LMN:REAL:PID输出;LMN_P:REAL:PID输出中P的分量;(可用于在调试过程中观察效果)LMN_I:REAL:PID输出中I的分量;(可用于在调试过程中观察效果)LMN_D:REAL:PID输出中D的分量;(可用于在调试过程中观察效果)六、PLC编程1、I/O分配模拟量输入PIW130模拟量输出PQW128MD8:实际液位值M50.0:PID手自动切换MD60:设定液位值MD100:PID输出值2、PLC程序END
本文标题:第30讲--基于S7-300的PID液位控制系统
链接地址:https://www.777doc.com/doc-1354487 .html