S7-300 PLC中FB41 PID算法程序设计毕业设计 - 图文 下载本文

南阳理工学院本科生毕业设计(论文)

S7-300 PLC中FB41 PID算法程序设计

The Design Of FB41 PID Algorithm Program In S7-300 PLC

总 计 : 63 页 表 格 : 5 个

插 图 : 44 幅

南 阳 理 工 学 院 本 科 毕 业 设 计(论文)

S7-300 PLC中FB41 PID算法程序设计

The Design Of FB41 PID Algorithm Program In S7-300 PLC

学 院(系): 电子与电气工程学院 专 业: 电气工程及其自动化 学 生 姓 名: 学 号: 097108065 指 导 教 师(职称): )

评 阅 教 师: 完 成 日 期:

南阳理工学院

Nanyang Institute of Technology

S7-300 PLC中 FB41 PID 算法程序设计

S7-300 PLC中FB41 PID算法程序设计

电气工程及其自动化

[摘 要] 在西门子S7-300 PLC控制系统中,由于FB41 PID模块算法程序不公开,给学习者和使用者带来困难。本设计仿照西门子S7-300 PLC中FB41 标准PID模块的功能和形式,使用梯形图语言自主编写能够实现同样功能的PID算法。本算法为数字PID位置型控制算法,包括偏差死区处理、梯形积分、微分延迟等工程PID技术。分别用自主设计的PID算法和原FB41 PID算法对模拟工业对象的锅炉水温(一阶积分对象、一阶惯性对象)、液位(一阶惯性对象、二阶惯性对象)、流量和压力进行控制。对比监控结果显示,自主设计的PID控制算法与原FB41算法的控制结果接近,自适应能力比较强,而且超调量较小。由于算法源程序中加入了详细的注解和算法说明,给我的学弟学妹们学习自动化技术留下了一份技术资料。它能够对一二阶大小惯性对象进行良好的控制,可以替换FB41使用。

[关键词] 算法;FB41(梯形图);对比;仿FB41 PID;

The Design Of FB41 PID Algorithm Program In S7-300 PLC

Electrical Engineering and Automation Specialty HUANG Jun-hong [Abstract:]In Siemens S7-300 PLC control system, it is difficult for learns and users to learn and

use it in that the FB41 PID algorithm modules program does not open to the public. Modeled on the function and form of FB41standard PID module of Siemens S7-300, this design which applys the ladder diagram language can achieve an PID algorithm with same function by programing independently . This algrorithm is the digital PID position control algorithm, including deviation dead zone processing, trapezoidal integral,delay differential, and other engineering PID technology . The independent designed PID algrorithm and the original FB41PID algrorithm are used respectively to control the water temperature (first order integral object and first order inertia object), liquid level (first order inertia object and second order inertia object), folw, and pressure of the boiler of the simulated industry object. Compared with the two algorithms, the monitoring result indicates that the control results between the independent designed PID algrorithm and the original FB41PID algrorithm are similar. Besides, the former is adaptive and has small overshoot. The source algrorithm program has added detail annotations and arithmetic explanations. Hope this design will help others to learn automatics. It can control the one and second order inertia well

I

S7-300 PLC中 FB41 PID 算法程序设计 and replace FB41 in

[Key words:] Algorithm;FB41(ladder diagram);contrast;copy FB41PID;

II

S7-300 PLC中 FB41 PID 算法程序设计

目 录

1 引言 .................................................................... 1

1.1 PID 控制的发展状况 ................................................ 1 1.2 PID 算法的发展 .................................................... 2 1.3 课题的意义 ........................................................ 2 2、FB41 PID模块分析 ...................................................... 3

2.1 FB41的应用 ........................................................ 3 2.2 FB41参数数据类型及描述 ............................................ 3 2.3 CONT_C 的方框图 ................................................... 6 2.4 输入/输出数据类型 ................................................. 6 2.5 FB41输入数据参数处理 .............................................. 6 2.6控制器输出值的处理 ................................................. 8 2.7 完全重启动 ........................................................ 8 3 FB41模块算法分析 ....................................................... 9

3.1 PID控制器在连续控制系统中的表达式 ................................. 9 3.2 死区特性在FB41中的应用 ........................................... 9 3.3 积分部分的近似部分 ............................................... 10 3.4 微分部分的近似部分 ............................................... 10 3.5 PID在FB41中的控制表达式 ......................................... 11 4 仿FB41 PID算法程序设计暨FB41(梯形图)设计 ........................... 12

4.1 硬件组态 ......................................................... 12 4.2 PLC中位置式FB41(梯形图) PID算法编写 ........................... 13 4.3 FB41(梯形图) PID算法封装与调用 ................................. 16 5 FB41(梯形图)与原FB41 PID模块控制效果对比与分析 ...................... 18

5.1 效果验证方法与参数说明 ........................................... 17 5.2、调节器参数的整定方法 ............................................ 17

5.2.1 经验法 ...................................................... 18 5.2.2 临界比例度法 ................................................ 18 5.2.3衰减曲线法(阻尼振荡法) .................................... 19 5.2.4 动态特性参数法 .............................................. 19 5.2 单容锅炉静态水温控制(一阶积分对象) ............................. 20 5.3 单容水箱水位控制(一阶惯性对象) ................................. 22

III

S7-300 PLC中 FB41 PID 算法程序设计

5.4 恒压供水(一阶小惯性对象) ....................................... 25 5.5 流量控制(一阶小惯性对象) ....................................... 28 5.6 锅炉流动水恒温控制(一阶大惯性对象) ............................ 29

5.6.1 实验描述 .................................................... 29 5.6.2 数学模型的建立与PID参数的论证 .............................. 31 5.7 双极性水温控制 ................................................... 33 5.8 双容水箱水位控制(二阶惯性对象) ................................. 35

5.8.1 实验装置描述 ................................................ 35 5.8.2 数学模型建立 ................................................ 37 5.8.3 PID参数确定及实验结果 ...................................... 38 5.9 程序容量占用及其占用扫描时间对比 ................................. 41

5.9.1 FB41(梯形图)程序容量占用及其占用扫描时间 .................. 41 5.9.2 FB41程序容量占用及其占用扫描时间 ........................... 42

结束语 ................................................................... 44 参考文献 ................................................................. 48 附录 ..................................................................... 46 致谢 ..................................................................... 63

IV

S7-300 PLC中 FB41 PID 算法程序设计

1 引言

1.1 PID 控制的发展状况

PID(Proportion Integration Differentiation),PID控制是最早发展起来的控制策略之一,迄今为止,大多数工业控制回路仍然应用着结构简单、鲁棒性强的PID控制或改进型PID控制策略。在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。即当不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。PID控制,实际中也有PI和PD控制。PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量进行控制的[1]。

PID控制是迄今为止最通用的控制方法。大多数反馈回路用该方法或其较小的变形来控制。PID调节器及其改进型是在工业过程控制中最常见的控制器(至今在全世界过程控制中用的84%仍是纯PID调节器,若改进型包含在内则超过90%)。今天所熟知的PID控制器产生并发展于1915-1940年期间。尽管自1940年以来,许多先进控制方法不断推出,但PID控制器以其结构简单,容易被理解和实现,应用中不需要精确的系统模型的预先知识,对模型误差具有鲁棒性及易于操作等优点,仍被广泛应用于冶金、化工、电力、轻工和机械等工业过程控制中。

PID有如下几个重要的功能: (1) 提供反馈控制。

(2) 通过积分作用可以消除稳态误差。 (3) 通过微分作用预测将来。

PID控制器的结构简单,容易被理解和实现,因而PID控制器成为应用最广泛的控制器。但是PID控制器并非万能的,它存在其固有的缺点:

首先,PID对系统基本线性和动态特性不随时间变化的系统能较好的控制,而很多工业过程是非线性或时变的。其次,PID参数必须根据过程的动态特性整定。如果过程的动态特性变化,例如可能由负载的变化引起系统动态特性变化,PID参数要重新整定。

实际应用中,PID参数的整定要花费大量的人力和物力。第三,PID在控制非线性、时变、强耦合及结构不确定的复杂过程时总显得无能为力。PID参数自整定技术是为了处理PID参数整定这个问题而产生的。现在自整定PID控制器已是商业中单回路控制器和分布控制系统的一个标准。PID参数整定与自整定的方法很多,但往往难以实现或不

1

S7-300 PLC中 FB41 PID 算法程序设计

很理想,在精度与速度的折衷及对象的使用范围上常常难以令人满意。因此,在PID参数的整定及自整定技术方面还有待于进一步深入研究。

1.2 PID 算法的发展

自1992 年Hagglund 提出预测PI 控制器的思想以来,预测PID 算法得到了逐 步发展和完善,并成功应用在一些复杂对象的控制上。现在文献上所说的预测PID 控制算法可以归纳为两种:

(1)有预测功能的PID 控制器。本质上,它是一种PID 控制器,只不过依据 一些先进控制机理,如内模原理、广义预测原理、H2/H∞原理、模糊理论、遗传 算法和人工智能原理来设计控制器参数,或根据某种最优原则在线给定PID 控制 器参数,使之具有预测功能。

(2)预测算法和PID 算法融合在一起的控制器。在这种控制器中,包括预测控 制器和PID 控制器,PID 控制器和过程的滞后时间无关,而预测控制器则主要依 赖过程的滞后时间,根据以前的控制作用给出现在的控制作用。

与普通PID 控制算法不同,该算法能对未来设定值轨迹进行全局优化,十分适合过程的开、停车处理及批量过程控制。在实施环境方面,只要能实施常规PID 的 工控环境就可实施该算法,无需添加新的软、硬件,并且可利用现存的PID 自整 定方法,对其进行参数整定,十分方便。模型预测控制算法能控制的具有特殊动 态特性的过程,它都能控制,如非最小相位系统、大滞后系统以及不稳定系统。 对于一阶加纯滞后对象和二阶加纯滞后对象,运用Pade 近似进行处理,该算法便 分别简化为常规的PI 控制器和PID 控制器。 Vega(1991)运用回归算法对预测PID 算法参数进行了自整定,取得了一定成 果,但这种整定方法对大滞后过程能力非常有限。无模型自适应预测PI 控制器(Tan, 1999),不需要对过程模型进行辨识,只需要过程的输入输出数据来设计PI 控制 器的参数,但这种控制器在干扰和噪声存在时的控制效果差。

1.3 课题的意义

PLC是主流的自动化控制器,现在还能广泛用于过程控制。

过程控制中用得最多的是PID算法。西门子Step 7中FB41 PID算法模块,设计完善,控制效果好。但是算法设计复杂,控制参数多,共有35个参数,给使用者带来障碍。FB41 PID算法程序不公开,给学习者带来困难。

本题目要求仿照西门子STEP 7 中FB41 标准PID算法的功能和形式,自主编写能够实现同样功能的PID算法。这种自编的PID算法具有算法研究和工程实际的双重意义。

运用计算机、西门子S7-300 PLC、智能仪表、流量调节阀、温度传感器等组成控制系统,用自主设计的PID算法,对模拟工业对象的锅炉水温和液位进行控制。并和FB41

2

S7-300 PLC中 FB41 PID 算法程序设计

算法的控制效果进行比较。

通过本题目的设计,提高学生对自动化工程的设计与调试能力,使学生有能力进入自动化行业发展。

2 FB41 PID模块分析

2.1 FB41的应用

FB“CONT_C\用于在SIMATIC S7可编程控制器上,控制带有连续输入输出变量的工艺过程。在参数分配期间,用户可以激活或取消激活PID控制器的子功能,以使控制器适合实际的工艺过程。可以将控制器作用PID固定设定值控制器,或者在多回路控制中用作级联、混合或比例控制器。控制器的功能基于采样控制器的PID控制算法,采样控制器带有一个模拟信号,如果需要的话,还可以扩展控制器的功能,增加一个脉冲生成器的环节,以产生脉宽调制的输出信号,用于带有比例控制器的两步或三步控制器{1}。

2.2 FB41参数数据类型及描述

3

S7-300 PLC中 FB41 PID 算法程序设计

4

S7-300 PLC中 FB41 PID 算法程序设计

5

S7-300 PLC中 FB41 PID 算法程序设计

2.3 CONT_C 的方框图

图1 FB41原理方框图

2.4 输入/输出数据类型

FB41 数据类型主要分为:布尔(BOOL); 实数(REAL); 字(WORD) ;时间(TIME); 其中在数据处理还涉及整数(INT);双整数(DINT)(设计总计70 本个参数变量)

源程序开发设计的过程中以实数(REAL)作为中间变量,所以在程序中数据之间的运算都要转换成为实数。故此,例如CYCLE,PV_PER,TI ,TD ,TM_LAG等还有在程序中涉及的临时变量都要转换成实数的数据类型。

2.5 FB41输入数据参数处理

SP_INT:设定值以浮点数的格式输入到SP_INT输入端。

6

S7-300 PLC中 FB41 PID 算法程序设计

PV_PER:可以再外围设备(I/O)中输入过程变量,也可以以浮点数格式输入。CRP_IN函数根据下列公式,将PV_PER的外设值转换成浮点数-100到100%;

100 CRP_IN的输出=PV_PER*27648

PV_NORM的函数根据下列公式规格化CRP_IN的输出; PV_NORM的输出=(CRP_IN的输出)*PV_FAC+PV_OFF ; PV_FAC的缺省值是1,PV_OFF的缺省值位0。 可以使用两种方式输入过程变量(即反馈值);

(1)用PV_IN(过程输入变量)输入浮点数格式的过程变量,此时数字量输入PVPER_ON(外部设备过程变量ON)应为0的状态。

(2)用PV_PER(外部设备过程变量)输入外部设备(I/O)格式的过程变量,即用模拟量输入模块输入输出的数字值作为PID控制的过程变量,此时PVPER_ON的状态应为1。

ER:用浮点数格式设定值SP_INT减去装换成浮点数格式的过程变量PV(即反馈值),便得到负反馈的误差。为了抑制由于控制器输出量的量化造成的连续的较小的振荡,例如FB43的PULSEGEN进行脉冲宽度调制时可能出现的振荡,用死区(Dead Band)非线性误差进行处理。死区的宽度由参数DEADB_W来定义,如果命令DEADB_W为0,死区被关闭。在控制系统中,某些执行器机构如果频繁动作,会导致小幅度的振荡,造成严重的机械磨损。从控制要求来说,很多的系统又允许被控量在一定的范围内存在误差。带死区的PID控制器能防止执行机构的频繁动作。当死区非线性环节的输入量(即误差(ev(n))的绝对值小于设定值B时,死区的非线性输出量(即PID控制器的输入量)为0,这时PID控制器的输出分量中比例和微分部位都为0,积分保持不变,因此PID的输出保持不变,PID控制器不起调节作用,系统处于开环状态。当误差的绝对值超过设定值时,开始正常的PID控制。在FB41中“CONT_C\中,死区宽度DEADB_W相当于死区设定值B。

DISV:可以实现前馈控制,一般设置为0。

P_SEL(比例作用ON)为1时激活比例作用,反之禁止比例作用,默认值为1。 I_SEL(积分作用ON)为1时激活积分作用,反之禁止积分作用,默认值为1。 D_SEL(微分作用ON)为1时激活微分作用,反之禁止微分作用,默认值为0,默认的控制方式为PI控制。

LMN_P、LMN_I、LMN_D分别是PID控制器输出量的比例分量、积分分量和微分分量,供调试时使用。

INTVAL:FB41“CONT_C\有一个初始化过程中,如果I_INT_ON(积分作用初始化)为1的状态,将输入变量INTVAL作为积分器的初始值。如果在一个循环中断优先级调用它,它将从该数值开始继续执行,所有其他的输出都被设置为其默认值。INT_HOLD时积分操

7

S7-300 PLC中 FB41 PID 算法程序设计

作保持,积分输出被冻结,一般不冻结积分输出。

2.6控制器输出值的处理

手动模式

BOOL变量MAN_ON为1时为手动模式,为0时为自动模式。在手动模式,控制的输出被手动输入值MAN代替。

在手动模式,控制器输出中的积分分量自动设置为LMN-LMN_P-DISV(其中—为减号)。而微分量自动设置为0 。这样可以保证手动到自动的无忧切换,即切换前后PID控制器的输出值LMN不会突变。

输出限幅

LMNLIMIT(输出量限幅)方框用于将控制器输出值(MV)限幅。

LMNLIMIT的输入量超出控制器输出值的上极限LMN_HLM时,信号位QLMN_HLM(输出超出上限)变为1的状态;小于下限值LMN_LLM时,信号位QLMN_LLM(输出超出下限)变为1的状态。LMN_HLM和LMN_LLM的默认值分别为100%和0.0%。

输出量的格式规格化处理

LMN_NORM(输出量规格化)方框用于下述公式来讲功能LMNLIMIT的输出量LMN_LIM格式化:

LMN=LMN_LIM × LMN_FAC+LMN_OFF

式中,LMN时格式化后浮点数格式的控制器的输出值;LMN_FAC为输出量的系数,默认值为1.0。LMN_OFF为输出量的偏移量,默认值为0.0;LMN_FAC和LMN_OFF用来调节控制器输出量的范围。

输出量转换为外部设备(I/0)格式

控制器输出值如果要送给模拟量输出没款中D/A转换器,需要用“CRP_OUT\方框图转换为外部设备(I/O)格式的变量LMN_PER 。转换公式为

27648 LMN_PER=LMN ×

100

2.7 完全重启动

FB41“CONT_C\有一个完全重启动例行程序,当职位输入参数COM_RST=TURE时执行。 在启动期间,积分器内部被设置成初始值I_ITVAL。当在周期中断优先级中调用积分器,它便从这个数值开始,继续工作。

所用其他输出值都被设置成各自的缺省值。

8

S7-300 PLC中 FB41 PID 算法程序设计

3 FB41模块算法分析

3.1 PID控制器在连续控制系统中的表达式

PID控制器的传递函数为

MV(s)EV(s)?1

k(1?pT1s1?TDs) (1)

dev(t)dt模拟量PID控制器的输出表达式为:

mv(t)?

K[ev(t)?PT?1ev(t)dt?TD]?M (2)

分别

式中,控制器的输入量(误差信号)ev(t)=sp(t)-pv(t);sp(t)为设定值;PV(t)为过程变量(反馈值);mv(t)是控制器的输出信号;是比例系数K、T和TpiiD是积分时间常数和微分时间常数;M是积分部分的初始值。

式中等号右边的前3项分别是比例、积分、微分部分,他们分别与误差ev(t)、误差的积分和误差的微分成正比。如果取其中的一项或者两项,可以组成P、PI或PD调节器。需要较好的动态品质和较高的稳态精度时,可以选用PI控制方式;控制对象的惯性滞后较大时,应该选择PID控制方式。

3.2 死区特性在FB41中的应用

在控制系统中,某些执行机构如果频繁动作,会导致小幅震荡,造成严重的机械磨损。从控制要求来说,很多系统又允许被控量在一定范围内存在误差。带死区的PID控制器(如图2所示)能够防止执行机构的频繁动作。当死区非线性环节的输入量(即误差ev(n))的绝对值小于死区设定值时,死区非线性的输出量(即PID控制器的输入量)为0,这时FB41控制器的输出分量中,比例部分和微分部分为0,积分部分保持不变,因此PID输出保持不变,PID控制不起调节作用,系统处于开环状态。当误差的绝对值超过设定值时,开始正常的PID控制。在FB41\中,死区宽度DEADB_W相当于图2中的死区设定值

图2 死区说明图

9

S7-300 PLC中 FB41 PID 算法程序设计

3.3 积分部分的近似部分

设执行PID控制功能块的时间间隔(即PID控制的采样周期)为T,第n次PID

s运算时的时间为Ts,因为PID程序运行时为Ts常数,可以将t=Tsn,时PID控制器的输入量ev(Tsn)简写为ev(n),输出量mv(Tsn)简写为mv(n)。

式(1)中的积分对应于图中曲线ev(t)与坐标轴包围的面积,一般用矩形积分来近似精确积分,每块矩形的面积为ev(jTs)Ts。为了书写方便,将ev(jTs)简写

n为ev(j),各块矩形的总面积为Ts?ev(j)。当Ts较小时候,积分的误差不大。

j?1 根据资料分析所得,FB41中的积分算法是在矩形积分基础上进行改进而得到的梯形积分算法。运用梯形积分,可以减少残差,提高积分项的运算精度。其计算公式为:

k?t0edt??i?1e(i)?e(i?1)2 (3)

在自主设计的算法中,积分作用投入时首先判断是否使用积分初始值,然后判断是否使用手动输出,手动输出时候积分值 := Last_Lmn - Panteil - DISV 。Diff积分增量:= ( rCycle / rTi积分时间浮点值 ) * ( ErKp 本周期比例偏差值+ Last_P 上周期比例偏差值) * 0.5。积分值Ianteil=Diff积分增量+Last_I上周期积分量。 此外FB41积分算法中还运用到了抗积分饱和。因为长时间出现偏差或偏差较大,计算出的控制量有可能溢出,或小于零。所谓溢出就是PLC运算得出的控制量mv(t)超出D/A转换器所能表示的数值范围。例如西门子常用的D/A转换模块SM332的数据范围为0000H至6000H(H表示十六进制)。一般执行机构有两个极限位置,如调节阀全开或者全关。设mv(t)为6000H时,调节阀全开;反之,mv(t)为0000H时,调节阀全关。为了提高运算精度,通常采用双字节或浮点数计算PID差分方程式。如果执行机构已到极限位置,仍然不能消除偏差时,由于积分作用,尽管计算PID差分方程式所得的运算结果继续增大或减少,但执行机构已无相应的动作,这就称为积分饱和。当出现积分饱和时,势必使超调量增加,控制品质变坏。作为防止积分饱和的办法之一,可以对计算出的控制量mv(t)限幅,同时把积分作用切除。在FB41中,则有: 当mv(t)<0000H时,取mv(t)=0,积分增量为0 当mv(t)>6000H时,取mv(t)=6000H,且积分增量为0

3.4微分部分的近似部分

式(1)中的微分用差分来近似,即令

dev(t)dt?ev(t)t?ev(n)?ev(n?1)

T10

s (4)

S7-300 PLC中 FB41 PID 算法程序设计

式中ev(n-1)是第n-1次采样时的误差值. 分析所得,FB41中运用的是不完全微分。

标准的PID控制式中,对具有高频扰动的生产过程,微分作用响应过于灵敏,容易引起控制过程的振荡,降低调节品质。尤其是PLC对每个控制回路输出时间是短暂的,而驱动执行机构动作又需要一定时间,如果输出较大,在短暂时间内执行机构达不到应有的开度,会使输出失真。为了克服这一缺点,同时又要使微分作用有效,可以在微分部分增加一阶惯性滤波,以平缓输出值的剧烈变化。设滤波时间常数为T,在FB41中,

fTf对应于微分操作的延迟时间TM_LAG。因此,FB41中微分部分的差分近似式为:

dev(t)dt?ev(t)t?ev(n)?ev(n?1)

Ts?Tf (5)

程序把TM_LAG设置为TM_LAG必须大于或者等于0.5倍的循环时间,不足0.5倍的循环时间时候,TM_LAG自动设置为0.5倍的循环时间。此外,在微分系数中,我把周期乘上了0.5(当然,这里乘上0.0~1.0的任何数值都可以,示情况而定),这是为了减少

微分量的峰值,从而减少输出值对执行机构的冲击,保护了执行机构{4}。

图3 微分延迟说明图

在本设计算法中,微分系数D_XS=rTd / ( 周期rCycle * 0.5 + 微分延迟rTmLag ),微分值= (本周期比例偏差值 ErKp -上周期比例偏差值Last_P ) * 微分系数D_XS。

3.5 PID在FB41中的控制表达式

我们将积分和微分的近似表达式代入式(1)中,第n次采样时控制器的输出为:

mv(n)?

TT?ev(j)?K{ev(n)?TT?TnsDPIj?1s[ev(n)?ev(n?1)]}?Mf (6)

则其传递函数为:

11

S7-300 PLC中 FB41 PID 算法程序设计

MV(s)1

EV(s)?kp(1?TI1s?TTDSfS?1) (7)

在FB41\(连续控制器)中,K、T、T和M分别对应于输入参数GAIN、 TI、

PDTD和积分初始值I_ITLVAL。

例如在对比试验电动调节阀的控制器用位置传感器检测阀门的开度,通过闭环位置随动系统,使阀门的开度与阀门控制器的输入信号(即PID控制器的输出)成正比。

式(1-2)的控制器输出值mv(n)与电动调节阀的阀门开度(即阀芯的位置)相对应,通常我们将它称为PID的位置式算法。

4 仿FB41 PID算法程序设计暨FB41(梯形图)设计

根据以上的分析结果,本次设计使用西门子Step7 V5.5 PLC编程软件进行算法编程。考虑到程序的可读性以及易寻错性,本次设计使用梯形图进行编程。因此我把此算法命名为FB41(梯形图)PID算法。把自动化技术加入文化因子达到教书育人与专业技术教育的双重效果。本算法主要分以下这几大部分:1、程序初始化;2、设定值与过程变量处理;3、PID控制运算;4、控制器输出值的处理

4.1 硬件组态[5]

在硬件组态工具hardware中生成机架(或导轨) ,将CPU模块、电源模块和信号模块插入机架,如图4所示。

STEP7与PLC通信连接的组态:

PC/MPI适配器用于连接运行STEP7的计算机RS-232接口和PLC的MPI接口。PC/MPI适配器上有一个选择传输速率的开关,可选19200bit/s 或38400bit/s。组态时设

置的传输速率应与适配器的传输速率相同。

图4 硬件组态

12

S7-300 PLC中 FB41 PID 算法程序设计

4.2 PLC中位置式FB41(梯形图) PID算法编写

用鼠标在管理器的右侧右击,新建一个功能模块FB41,如图5所示。

在FB41模块中的接口管理器中定义用到的外部接口和内部中间变量。这些接口和中间变在主程序中调用FB41模块是时都能被用户看到,如图6所示。最后按照上述分析及程序流程图(见图9)编程程序(模块程序见附录1)。

程序编写完成后在管理器右侧右击插入一个背景数据块DB41,如图7、8所示。在类型选项中选择实例变量类型,FB41模块。

图5 插入新功能模块

图6 定义变量

13

S7-300 PLC中 FB41 PID 算法程序设计

图7 插入DB块

图8 FB41(梯形图) PID模块的背景数据块

14

S7-300 PLC中 FB41 PID 算法程序设计

孝廉FB41-初始化块中OUT、STAT数据类型的数据清零是程序初始化否外设变量(PV_PER)否PV_IN浮点数过程变量是浮点数转换PV_R=PV_PER*100/27648规格化PV_NORM=PV_R*PV_FAC+PV_OFF偏差计算ER=SP-PV死区处理MAN_ON(手动开关)手动值(MAN)赋值LMN是积分时间(TI)处理乘以比例控制=ER*GAIN乘以微分时间(TD)微分延迟处理(TMLAG)积分开关I_SEL是积分保持否积分运算关闭积分LMN_I=0否比例开关P_EL微分开关D_SEL否关闭微分是LMN_I=Last_I否关闭比例是微分运算是LMN_P(比例分量)抗积分饱和LMN_D微分分量LMN_I(积分分量)PID调节限幅值判定输出超上限报警限赋值输出(LMN_LIM)输出超下限报警输出量规格化LMN=LMN_LIM*LMN_FAC+LMN_OFF输出量转换为外部设备(I/O)格式LMN_PER=LMN*27648/100LMN输出值范围限定结束

图9 程序流程图

15

S7-300 PLC中 FB41 PID 算法程序设计

4.3 FB41(梯形图) PID算法封装与调用

在Step7 v5.5中,算法的封装是自动完成的,就是说写好算法后,在组织块中就可以直接调用封装好的算法,具体方法如下:

打开要调用FB41(梯形图)的组织块,进入编程画面。在左边窗口中的“FB块”文件夹中的“FB41”拖放到目标程序段的水平“导线”上(如图10所示)。FB41的符号名为“FB41(梯形图)”。方框的左边是功能块的输入,右边是输出。

在FB41方框的上面,可以输入已经生成的FB41的数据块DB41,当然也可以输入一个尚不存在的背景数据块,例如DB2。输入后按回车键,出现提示信息“实例数据块DB2不存在,是否要生成它?”点击“是”按钮,可以在SIMATIC管理器中看到新生产的背景数据块DB2。

图10 FB41(梯形图) PID 块调用

16

S7-300 PLC中 FB41 PID 算法程序设计

5 FB41(梯形图)与原FB41 PID模块控制效果对比与分析

5.1 效果验证方法与参数说明[3]

FB41(梯形图)算法编写完毕后,通过PLC编程,对温度、水位、压力、流量等常规对象进行控制。并使用组态软件进行监控。同时,在参数、物理条件均相同的情况下,使用原来Step7 v5.5自带的FB41 PID控制程序进行对上述对象的控制,通过组态软件监控后,所得结果与FB41(梯形图)的监控结果进行比较。从而检验此自编算法的优劣。 在本设计中我们以阶跃作用下的过渡过程为准,采样时间区域内的单项指标来评价控制结果的好坏。 主要的时域指标包括:

1、衰减比 衰减比表示振荡过程的衰减程度,是衡量过渡过程稳定程度的动态指标,它等于曲线中前后两个相邻波峰值之比。记作n。

2、超调量与最大动态偏差 在随动控制系统中,超调量是一个反映超调情况和衡量稳定程度的指标。记作?。但是对于定值控制系统来说,当最终稳态值是零或者很小的数值时,仍采用超调量作为反映超调情况的指标就不合适了,通常改用最大动态偏差A作为指标,最大动态偏差A指的是在单位阶跃扰动下,最大振幅B与最终稳态值C之和的绝对值。记作A。

3、余差 余差是系统最终的稳态偏差,即过渡过程终了时新稳态值与设定值之差。余差是一个反映控制精确度的稳态指标,相当于生产中允许的被控变量与设定值之间长期存在的偏差。记作e(?)。

4、调节时间 调节时间是从过渡过程开始到结束所需的时间。过渡过程要绝对地达到新的稳态,理论上需要无限长的时间。一般认为当被控变量进入新稳态值附近?5%或?2%以内的区域,并保持在该区域内时,过渡过程结束,此时需要的时间称为调节时间’记作t。调节时间是反映控制系统快速性的一个指标。

s 5、峰值时间和上升时间 被控量达到最大值的时刻称为峰值时间t,过渡过程开

p始到被控变量第一次达到稳态的时间称为上升时间t标。

r,它们都是反映系统快速性的指

5.2、调节器参数的整定方法

调节器参数的整定一般有两种方法:一种是理论计算法,即根据广义对象的数学模型和性能要求,用根轨迹法或频率特性法来确定调节器的相关参数;另一种方法是工程实验法,通过对典型输入响应曲线所得到的特征量,然后查照经验表,求得调节器的相关参数。工程实验整定法有以下四种:

17

S7-300 PLC中 FB41 PID 算法程序设计

5.2.1 经验法

若将控制系统按照液位、流量、温度和压力等参数来分类,则属于同一类别的系统,其对象往往比较接近,所以无论是控制器形式还是所整定的参数均可相互参考。下表为经验法整定参数的参考数据,在此基础上,对调节器的参数作进一步修正。若需加微分

11作用,微分时间常数按TD=(3~4)TI计算。

表1 经验法整定参数表

系 统 温 度 流 量 压 力 液 位

参 数 δ(%) 20~60 40~100 30~70 20~80 TI(min) 3~10 0.1~1 0.4~3 TD(min) 0.5~3 5.2.2 临界比例度法

图11 具有周期TS的等幅振荡示意图

这种整定方法是在闭环情况下进行的。设TI=∞,TD=0,使调节器工作在纯比例情况下,将比例度由大逐渐变小,使系统的输出响应呈现等幅振荡,如图35所示。根据临界比例度δk和振荡周期TS,按下表所列的经验算式,求取调节器的参考参数值,这种整定方法是以得到4:1衰减为目标。

表2 临界比例度法整定调节器参数 调节器参数 δ TI(S) TD(S) 调节器名称 P 2δk PI 2.2δk TS/1.2 PID 1.6δk 0.5TS 0.125TS 临界比例度法的优点是应用简单方便,但此法有一定限制。首先要产生允许受控变量能承受等幅振荡的波动,其次是受控对象应是二阶和二阶以上或具有纯滞后的一阶以上环节,否则在比例控制下,系统是不会出现等幅振荡的。在求取等幅振荡曲线时,应特别注意控制阀出现开、关的极端状态。

18

S7-300 PLC中 FB41 PID 算法程序设计

5.2.3衰减曲线法(阻尼振荡法)

图12 4:1衰减曲线法图形

在闭环系统中,先把调节器设置为纯比例作用,然后把比例度由大逐渐减小,加阶跃扰动观察输出响应的衰减过程,直至出现上图所示的4:1衰减过程为止。这时的比例度称为4:1衰减比例度,用δS表示之。相邻两波峰间的距离称为4:1衰减周期TS。根据δS和TS,运用下表所示的经验公式,就可计算出调节器预整定的参数值。

表3 衰减曲线法计算公式表

调节器参数 调节器名称 P PI PID 5.2.4 动态特性参数法

所谓动态特性参数法,就是根据系统开环广义过程阶跃响应特性进行近似计算的方法,即根据第二章中对象特性的阶跃响应曲线测试法测得系统的动态特性参数(K、T、τ等),利用下表所示的经验公式,就可计算出对应于衰减率为4:1时调节器的相关参数。如果被控对象是一阶惯性环节,或具有很小滞后的一阶惯性环节,若用临界比例度法或阻尼振荡法(4:1衰减)就有难度,此时应采用动态特性参数法进行整定。 表4经验计算公式 调节器参数 调节器名称 P PI PID

19

δ(%) δS 1.2δS 0.8δS TI(min) 0.5TS 0.3TS TD(min) 0.1 TS δ(%) K?TTI 3.3τ 2τ TD 0.5τ ×100% ×100% ×100% 1.10.85K?TK?T S7-300 PLC中 FB41 PID 算法程序设计

5.2 单容锅炉静态水温控制(一阶积分对象)

如图13所示,此控制对象为锅炉温度。温度反馈信号使用的是PT100热电阻,通过AI808智能仪表把信号转化为4~20MA电信号送入SM331模块。程序结合FB43占空比控制功能块,把PID运算结果转化为PWM信号,由PLC输出PWM脉冲信号对交流接触器进行锅炉加热控制。监控显示为锅炉从25度加热到30度的状态。

图13 锅炉水温实验装置

温度控制程序在0B35中调用PID运算模块,根据经验法所得其循环时间设置为10S。 P设置为15,I设置为800000ms,D设置为15000ms。

FB41(梯形图)控制结果如图14所示

20

S7-300 PLC中 FB41 PID 算法程序设计

图14 FB41(梯形图)控制结果

分析所得:

n=1.4 tr=116s tp=121s ts=144s σ=1.7% e(∞)=-0.147

FB41控制结果如图15所示

21

S7-300 PLC中 FB41 PID 算法程序设计

图15 FB41控制结果 分析所得:

n=1.4 tr=110s tp=291s ts=321s σ=2.4% e(∞)=0.747

实验结果表明,FB41(梯形图)在水温控制方面效果比FB41还好。

5.3 单容水箱水位控制(一阶惯性对象)

本实验装置如图16、17所示。此控制对象为单容水箱水位控制。装置使用压力传感器(1m=10KPA)把水位反馈信号(4~20ma)传至PLC SM331模块。PLC中通过PID运算,由SM332模块把PID运算结果转换为对应的4~20ma电信号传送给电动调节阀,从而通

22

S7-300 PLC中 FB41 PID 算法程序设计

过控制阀门的开度来控制蓄水口出水量的多少。此外,我们把水箱蓄水设置成为一个动态过程,即让水箱边蓄水时边放水(当然蓄水口出水量要始终大于放水口的蓄水量)。这样做就更加能够看出算法的控制优劣性。本次实验调节过程为先让水位稳定在75cm,然后把水位设置为120cm,稳定后,把水位设置为180cm,稳定后,最后把水位设置回120cm。

图16 水箱及压力水位传感器

23

S7-300 PLC中 FB41 PID 算法程序设计

图17 电动调节阀

水位控制程序在0B35中调用PID运算模块,根据经验法所得其循环时间设置为6s,P为10,I为40S,D为17S。

FB41(梯形图)控制结果如图18所示:

图18 FB41(梯形图)控制结果

24

S7-300 PLC中 FB41 PID 算法程序设计

选取控制效果较好由120cm蓄水至180cm段分析所得: n=12 tr=195s tp=264s ts=330s σ=2.8% e(∞)=-0.4

FB41控制结果如图19所示:

图19 FB41控制结果

选取控制效果较好由120cm蓄水至180cm段分析所得: n=14 tr=185s tp=271s ts=340s σ=3.9% e(∞)=-1.4

实验结果表明,FB41(梯形图)在水温控制方面效果与FB41相当。

5.4 恒压供水(一阶小惯性对象)

实验装置如图20所示。本装置为一个常规的变频恒压供水装置。压力反馈信号由安装在水泵出水管道上的压力传感器传送到PLC的SM331模块。通过PID运算,由SM332模块把运算结果转化为对应的4~20ma电信号,传送到变频器,从而让变频器控制水泵转速,调整管道的压力。实验过程为当压力稳定在30Kpa时候,设置压力至50kpa,当稳定一段时间后,设置压力回30Kpa。如此两次,选择效果最好的来进行结果分析。

25

S7-300 PLC中 FB41 PID 算法程序设计

图20 水泵与压力传感器

水位控制程序在0B35中调用PID运算模块,其循环时间设置为5000ms。根据经验法所得P设置为10,I为1S,D为3S。

FB41(梯形图)控制结果如图21所示:

图21 FB41(梯形图)控制结果

26

S7-300 PLC中 FB41 PID 算法程序设计

选取控制效果较好由由30Kpa加压至50Kpa段分析所得: n=1 tr=3s tp=3s ts=18s σ=2% e(∞)=-10.7

FB41控制结果如图22所示

图22 FB41控制结果

选取控制效果较好由由30Kpa加压至50Kpa段分析所得: n=1 tr=5s tp=10s ts=26s σ=6% e(∞)=-1.9

实验结果表明,FB41(梯形图)在压力控制方面效果略胜FB41一筹。

27

S7-300 PLC中 FB41 PID 算法程序设计

5.5 流量控制(一阶小惯性对象)

实验装置如图23所示。反馈信号由安装在主管道出水口的流量传感器把信号转换为4~20ma电信号,传送给PLC SM331模块。通过PID运算,由SM332模块把运算结果转化为对应的4~20ma电信号,传送到电动调节阀,从而通过控制阀门开度大小,调整管道的流量。

图23 流量实验装置

水位控制程序在0B35中调用PID运算模块,其循环时间设置为50ms。 FB41(梯形图)控制结果如图24所示

图24 FB41(梯形图)控制结果

28

S7-300 PLC中 FB41 PID 算法程序设计

FB41控制结果如图25所示

图25 FB41控制结果

5.6 锅炉流动水恒温控制(一阶惯性对象)

5.6.1 实验描述

本实验装置如图26、图27所示。让锅炉蓄水至30cm。打开锅炉内胆的进水阀门,使用变频器将供水压力控制在50Kpa,进水流量为80L/h.这时候将内胆下出水阀门打开到适当位置,让出水流量等于进水流量,从而保持锅炉内水位为30cm不变。出水阀口处装有PT100热电阻,使用此处温度作为反馈信号传入PLC。出水口并用长管连接,以保证热水能够及时排走。

加热控制程序结合FB43占空比控制功能块,把PID运算结果转化为PWM信号,由

29

S7-300 PLC中 FB41 PID 算法程序设计

PLC输出PWM脉冲信号对交流接触器进行锅炉加热控制。

图26 实验用锅炉如

图27 水温传感器

30

S7-300 PLC中 FB41 PID 算法程序设计

5.6.2 数学模型的建立与PID参数的论证

图28 开度100%的动态水一阶开环对象

本设计利用PID作为控制器,所以 G(s)*KP(1+

1TiS?TDS) (1)

是主通道的函数,作为最终的“开环传递”函数。 具体计算如下:

1. 根据曲线图分析的自恒一阶惯性对象。 2. 其TDk参数的求法如下:

ks 根据开环传递函数得到数学模型,给定阶跃信号

ks,得到阶跃响应函数,

11?TDS)=K(

1s?1s?1/T) (2)

31

S7-300 PLC中 FB41 PID 算法程序设计

拉普拉斯反变换为: h(t)=K(1-e的求法可以改进为: k?(输出稳态值?t/TD) (3)

当t趋近与∞时,h(∞)=K,K=h(∞)/S=输出稳态值/阶跃输入,由于要去除量纲,K

-初始值)(输出最大值/-输出最小值)开度(开度最大值/-开度最小值) (4)

当t=T时,则有 h(T)=K(1-e)=0.632h(∞) (5) 一阶惯性环节

T?1=0.632h(∞)-τ; TD=12.7 ,k=0.67

最终传递函数为: G(S)?0.671?12.7S (6)

工程上总是希望稳态误差为零,以这个思路为切入点,作为最终的控制目的。根据误差E(s)=R(s)-B(s)。给定r(t),n(t)=0。 R(s) ⊕

G(S)H(s) 11?G(s)H(s)E(s)

误差传递函数:G(s)=

Lims?01

由err=0,

s?1?G(s)H(s)S?R =0 (7)

根据极限的求法,最终转换成:

LimR=0 (8)

S?01?G(s)H(s) 所以只需G(s)H(s)= G(s*KP(1?11S即可实现极限为0,最终运算

?TDSTiS)*H(s)?1s (9)

根据运算过程和最终转换成

1S的要求,选择PID的控制器,本设计选择PD控制器,

根据极限的求法和控制要求最终得到KP=9.2 ;

32

S7-300 PLC中 FB41 PID 算法程序设计

利用数学模型得到的PD控制器参数来进行验证,所采集曲线如图29所示

图29 PID 参数论证对象结果

所得到稳态误差为1.5℃。论证实验结果满足控制要求。以下开度60或者80的动静态水的数学模型和PID参数的论证不再详述,与开度100的动态水求解过程是一样的,但是注意温度是一阶积分环节,如果是惯性环节的话其参数的求法还是不一样的。

5.7 锅炉水温加热冷却双极性控制

实验装置如图30所示。 让水箱蓄水至30cm。 让锅炉夹套注满水。

FB41(梯形图)功能块中LMN_HLM项设置为100;LMN_LLM项为-100。当需要降温时,PID控制器输出范围-100~0。

加热部分温度反馈信号使用的是PT100热电阻,通过AI808智能仪表把信号转化为4~20MA电信号送入SM331模块。程序结合FB43占空比控制功能块,把PID运算结果转化为PWM信号,由PLC输出PWM脉冲信号对交流接触器进行锅炉加热控制。

冷却部分为水可流动的锅炉夹套。当需要降温时,PID控制器输出负值,通过SM332模块把PID控制器结果转换成4~20ma电信号,以此控制电动阀门的开度,从而控制进入夹套的水量。流入夹套的冷却水由夹套顶部部出水孔流出。

根据经验法所得。P设置为4,I设置为0.65s,D设置为8S,循环时间为1S。。

33

S7-300 PLC中 FB41 PID 算法程序设计

图30 双极性水温控制装置 FB41(梯形图)实验结果如图31所示

图31 FB41(梯形图)实验结果 分析所得:

34

S7-300 PLC中 FB41 PID 算法程序设计

n=

2.81.2=2.3 tr=19.8s tp=29.9s

2.845 ts=3min10s σ=

=6.2% e(∞)=1.2

所得到稳态误差为1.2℃。论证实验结果满足控制要求。 FB41实验结果如图32所示

图32 FB41实验结果

分析所得: n=

5.85.2=1.11 tr=22.4s tp=34s

3.245 ts=2min34s σ=

=7% e(∞)=2.7

根据数据参数的对比,孝廉“FB41”的性能优越于SB41。

5.8 双容水箱水位控制(二阶惯性对象)

5.8.1 实验装置描述

实验装置如图33所示。

35

S7-300 PLC中 FB41 PID 算法程序设计

图33 双容水箱实验装置

本实验以双水箱串联作为被控对象,左水箱的液位高度为系统的被控制量。要求左水箱液位稳定至给定量,将压力传感器LT2检测到的左水箱液位信号作为反馈信号,在与给定量比较后的差值通过PID调节器控制电动调节阀的开度,以达到控制左水箱液位的目的。为了实现系统在阶跃给定和阶跃扰动作用下的无静差控制。实验之前先将储水箱中贮足水量,然后将阀门F1-1全开,将右水箱出水阀门F1-2、左水箱出水阀门F1-4开至适当开度(要求阀F1-2稍大于阀F1-4),其余阀门均关闭。

本实验系统结构图和方框图如下图34、35所示。

图34 实验系统结构图

图35 实验系统方框图

36

S7-300 PLC中 FB41 PID 算法程序设计

5.8.2 数学模型建立

由上图34所示,被测对象由两个不同容积的水箱相串联组成,故称其为双容对象。自衡是指对象在扰动作用下,其平衡位置被破坏后,不需要操作人员或仪表等干预,依靠其自身重新恢复平衡的过程。双容水箱数学模型是两个单容水箱数学模型的乘积,即双容水箱的数学模型可用一个二阶惯性环节来描述:

k1k2T2s?1K(T1s?1)(T2s?1)G(s)=G1(s)G2(s)=T1s?1?? (1)

式中K=k1k2,为双容水箱的放大系数,T1、T2分别为两个水箱的时间常数。 本实验中被测量为左水箱的液位,当右水箱输入量有一阶跃增量变化时,两水箱的液位变化曲线如下图所示。此图中,右水箱液位的响应曲线为一单调上升的指数函数 (a);而左水箱液位的响应曲线则呈S形曲线 (b),即左水箱的液位响应滞后了,它滞后的时间与阀F1-2和F1-4的开度大小密切相关。

图36 双容水箱液位的阶跃响应曲线

(a)右水箱液位 (b)左水箱液位

双容对象两个惯性环节的时间常数可按下述方法来确定。在下图所示的阶跃响应曲线上求取:

(1) h2(t)|t=t1=0.4 h2(∞)时曲线上的点B和对应的时间t1; (2) h2(t)|t=t2=0.8 h2(∞)时曲线上的点C和对应的时间t2。

图37 双容水箱液位的阶跃响应曲线

37

S7-300 PLC中 FB41 PID 算法程序设计

然后,利用下面的近似公式计算式

K?h2(?)xO?输入稳态值阶跃输入量 0.32〈t1/t2〈0.46

(2)

T1?T2?t1?t22.16 (3)

t1t2?0.55) T1T2 (T1?T2)2?(1.74 (4)

由上述两式中解出T1和T2,于是得到如式(1)所示的传递函数。

在改变相应的阀门开度后,对象可能出现滞后特性,这时可由S形曲线的拐点P处作一切线,它与时间轴的交点为A,OA对应的时间即为对象响应的滞后时间?。于是得到双容滞后(二阶滞后)对象的传递函数为:

K G(S)=(T1S5.8.3 PID参数确定及实验结果

本实验通过使用动态特性参数法

?1)(T2S?1)e??S (5)

所谓动态特性参数法,就是根据系统开环广义过程阶跃响应特性进行近似计算的方法,即根据图38中对象特性的阶跃响应曲线测试法测得系统的动态特性参数(K、T、τ等),利用下表所示的经验公式,就可计算出对应于衰减率为4:1时调节器的相关参数。

表5经验计算公式

调节器参数 调节器名称 P PI PID

δ(%) K?TTI 3.3τ 2τ TD 0.5τ ×100% ×100% ×100% 1.10.85K?TK?T38

S7-300 PLC中 FB41 PID 算法程序设计

图38 对象特性的阶跃响应曲线

通过运算,最后确定控制器使用PD控制方式,P为1,D为7S。循环时间为1S。FB41

(梯形图)实验结果如图39所示

图39 FB41(梯形图)实验结果

39

S7-300 PLC中 FB41 PID 算法程序设计

选取控制效果比较好的的30cm蓄水至45cm段分析得: n=

0.70.5=1.4 tr=23.3s tp=23.3s

245 ts=83s σ=

=4% e(∞)=0.8

所得到稳态误差为2~3mm。论证实验结果满足控制要求。

FB41实验结果如图40所示

图40 FB41实验结果

选取控制效果比较好的的30cm蓄水至45cm段分析得分析得: n=

2.82.7=1.037 tr=29.9s tp=40s

445 ts=103s σ=

=8.9% e(∞)=1.3

根据数据参数分析的,孝廉“FB41”优越于FB41。

40

S7-300 PLC中 FB41 PID 算法程序设计

5.9 程序容量占用及其占用扫描时间对比

只将FB41(梯形图)与FB41分别放在OB1中,然后执行程序,观察其占用空间及PLC扫描时间。

5.9.1 FB41(梯形图)程序容量占用及其占用扫描时间 FB41(梯形图)占用扫描时间如图41所示;

图41 FB41(梯形图)占用扫描时间

FB41(梯形图)占用扫描时间为150ms。

41

S7-300 PLC中 FB41 PID 算法程序设计

FB41(梯形图)占用内存空间如图42所示:

图42 FB41(梯形图)占用内存空间

FB41(梯形图)占用内存空间为7468B。 5.9.2 FB41程序容量占用及其占用扫描时间 FB41占用扫描时间如图43所示:

图43 FB41占用扫描时间

42

S7-300 PLC中 FB41 PID 算法程序设计

FB41占用扫描时间为150ms。

FB41占用扫描时间如图44所示:

图44 FB41占用扫描时间

FB41占用内存空间为7448B。

43

S7-300 PLC中 FB41 PID 算法程序设计

结束语

通过这16周的毕业设计,让我受益匪浅。实际的实验操作,不仅让我的知识体系得以巩固,而且还锻炼提高了我的动手操作能力。本次设计成功地实现了在西门子S7-300 PLC中自编仿FB41 PID算法程序实现对模拟工业对象的电加热锅炉水温(一阶积分对象,一阶积分加滞后对象,双极性控制)、液位(一阶对象,二阶对象)、压力和流量控制,在上位计算机上实现组态软件监控。这次毕业设计中,我做的实验项目主要有以下几个方面:

本题目具体设计数据处理程序。

(1)设计仿S7-300 FB41 PID功能块的算法程序。

(2)对设计好的算法进行封装,分配数据块,使其能在Step7中直接调用。

(3)使用自主编写FB41程序实现对模拟工业对象的电加热锅炉水温、液位、压力、流量的控制,在上位计算机上实现组态软件监控,得到了相应的图形结果。

44