首页 百科知识 模拟量控制实例

模拟量控制实例

时间:2023-10-26 百科知识 版权反馈
【摘要】:过程变量PVn为水箱的实际水位,由水位计测出,经A/D转换器转换送入S7-200PLC中;控制信号由S7-200PLC执行PID指令后以单极性信号经D/A转换器转换后送出,用于控制变频器,从而控制电动机转速。这是一个单体控制的小系统,可以选用一般中小型控制器。根据控制要求,现选用S7-200PLC的CPU224,其I/O点总数为28个,其中数字量输入点14个,数字量输出点14个。根据控制过程的要求,S7-200PLC经过PID运算控制电动阀的开度。

9.3 模拟量PID控制实例

9.3.1 恒压供水控制系统的设计

1.控制系统的要求

恒压供水控制系统的被控对象为需保持一定压力的供水水箱,如图9-15所示。反馈量为水箱水位,给定值为满水位的75%,控制量为水泵电动机的转速。S7-200 PLC控制变频器工作,通过变频器调节水泵电动机转速,实现恒压控制。

img350

图9-15 供水水箱示意图

2.系统设计思路

本系统以S7-200PLC为控制器,采用模拟量模块实现模拟量和数字量的转换,水位测量值通过模拟量输入通道送入S7-200PLC中,PID回路输出值转化为模拟量,用来控制变频器,从而实现对水泵转速的调节。

具体步骤为:开机后先由手动方式控制电动机,一直到水位上升为约75%时,将输入点I0.0置位为1,切换为自动状态。过程变量PVn为水箱的实际水位,由水位计测出,经A/D转换器转换送入S7-200PLC中;控制信号由S7-200PLC执行PID指令后以单极性信号经D/A转换器转换后送出,用于控制变频器,从而控制电动机转速。

S7-200PLC输出值用来控制水泵电动机的转速,可以从允许最大值的0变到100%;给定值可以预先设定后直接输入到回路表中,过程变量值是来自水位计的单极性模拟量,回路输出值也是一个单极性模拟量,用来控制进水泵的转速。这两个模拟量的标准化范围是0.0到1.0,分辨率为1/32000。

实际应用中,系统采用PI控制,且增益、采样时间和积分时间常数分别选为:Kp =0.25,Ts=100ms,Ti=30min。

3.系统硬件设计

1)硬件设计

这是一个单体控制的小系统,可以选用一般中小型控制器(S7-200PLC的CPU221~CPU226)。根据控制要求,现选用S7-200PLC的CPU224,其I/O点总数为28个,其中数字量输入点14个,数字量输出点14个。与S7-22XCPU配套的A/D转换器、D/A转换器模块有EM231(4路12位模拟量输入)、EM232(2路12位模拟量输出)、EM235(4路12位模拟量输入/1路12位模拟量输出)。这里模拟量模块选用EM231和EM232,同时考虑到设备的兼容性,变频器选用西门子MM420,如图9-15所示。

2)I/O端子的地址分配

I0.0连接手动/自动切换开关,水位模拟量输入地址为AIW0,当系统工作在手动控制方式时,可以把水泵转速(0.0~1.0之间的实数)通过AIW2写入VD108(VD108是回路表中保存输出的寄存器),控制变频器的模拟量输出地址为AQW0。

4.系统软件设计

PID回路参数表如表9-2所示。

表9-2 PID回路参数表

img351

程序由主程序、初始化子程序和中断子程序构成。主程序用来调用初始化子程序;子程序用来建立PID回路初始化参数表和中断设置,本例采用定时中断0(中断事件号为10)来定时采样,设置定时时间或采样时间为100ms,并写入SMB34。中断程序用于执行PID运算,当I0.0=1时为自动模式,执行PID运算。标准化时采用单极性(取值范围0~32000)。主程序、初始化子程序和中断子程序的梯形图分别如图9-16,图9-17,图9-18所示(手动控制方式下的程序省略)。

img352

图9-16 主程序梯形图

9.3.2 温度PID控制系统设计

1.控制系统的要求

食品罐头杀菌罐工艺过程如图9-19所示。将罐头食品放入杀菌罐中,按下启动按钮,这时水泵应启动,给水阀打开,向杀菌罐中注入水;当水位到达设定值时,水位开关动作,断开给水阀和水泵,同时打开加热阀向罐中放进蒸汽加热,这时电动阀也开始工作,蒸汽进来使罐内温度逐渐升高,热电阻作为感温元件传递温度信号给温度控制仪;当水温到达设定值时,关闭电动阀,开始进入恒温段,恒温需要30min,如温度超过设定值就将排气阀定时打开,使温度降到设定值;最后打开排液阀,将热水排出到处理罐循环利用。

img353

图9-17 初始化子程序梯形图

具体控制过程及参数要求是:在121℃(150℃的80%)之前全量程开启电动阀,经过PID运算,过程变量当前值越是接近给定值电动阀的开度就越小,温度的变化范围是150℃的0%~100%,输出信号为0~10V电压输出型,是一个单极性信号。

2.系统设计思路

本系统采用PID控制器完成程序的设计,选用S7-200PLC中的PID回路指令实现,依据PLC程序设计的原则,在硬件上增加一块EM235模拟量扩展模块(4输入/1输出)和一个Pt100热电阻,软件上采用PID控制升温和恒温的阶段。

img354

图9-18 中断子程序梯形图

img355

图9-19 食品罐头杀菌罐工艺过程示意图

根据控制过程的要求,S7-200PLC经过PID运算控制电动阀的开度。在恒温期间如温度又低于设定值,则再打开电动阀,开度由PID运算决定,原则是温差越小,开度就越小。如温度超过设定值就将排气阀定时打开,使温度降到设定值。

根据实际情况,设给定值SPn=0.8,比例增益Kp=0.4,采样时间Ts=0.2s,积分时间Ti=10min,微分时间Td=30min。

3.系统硬件设计

现选用S7-200PLC的CPU226,I/O点总数为40个,其中数字量输入点24个,数字量输出点16个。S7-200PLC外部接线如图9-20所示。进行I/O设置后,I/O端子分配如表9-3所示。其中AIW0为EM235采样模块提供给S7-200PLC的输入寄存器,AQW0为EM235提供给电动阀的输出寄存器。

img356

图9-20 S7-200PLC外部接线图

表9-3 I/O端子分配表

img357

4.系统软件设计

PID回路参数表如表9-4所示。

表9-4 PID回路参数表

img358

程序由主程序和初始化子程序构成。子程序用来建立PID回路初始化参数表,具体参数如表9-4所示。主程序分为6个网络,其主要作用是根据控制要求控制相应设备的正确工作,其核心部分是执行基于PID的温度智能控制。通过读入温度并进行A/D转换,根据实际温度值与用户设定的给定值比较后,决定电动阀的开度以及加热阀、排气阀和排液阀的启停,以此来实现温度的自动控制。

根据控制过程和要求,编写的STL语句表程序及注释如下。

img359

img360

img361

img362

img363

img364

img365

img366

程序中,M0.0表示系统是否运行;M0.1表示水位是否满;M0.2控制定时器是否复位;M0.3表示温度是否达到设定值。注意外部停止按钮SF2(I0.1)触点是常闭触点,外部启动按钮SF1(I0.0)和水位限位开关BG1(I0.2)处于常开状态。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈