PID在PLC中的实现

更新时间:2024-07-01 08:35:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

3.1 PID控制算法及在PLC中的实现

3.1.1 PID控制算法

PID控制器的输入量e是设定值r和检测值y的偏差量,即 ,经过运算,并输出控制信号u。PID控制算法的理想形式为

?1u?Kc?e??Tide? ?0edt?Tddt??t

?3-1?式中 Kc——控制器比例增益;

Ti——积分时间; Td——微分时间。

由理想PID控制算法连续形式可以得到其离散形式。离散PID控制算法有三种不同的形式:位置算法、增量算法、速度算法。由连续的PID算法容易的到其位置算法,为

e?k??e?k?1???1k u?k??Kc?ek??e?i?Ts?Td?

Tii?0Ts??其中, Ts为采样周期。

?3-2?PID控制增量算法为相邻两次采样时刻所计算的位置值之差,即

?u?k??u?k??u?k?1?

?3-3??3-4? PID控制速度算法为增量值除以采样周期,即

v?k???u?k? Ts3.1.2 PLC中的PID实现

由于理想PID控制算法存在一定的局限性,在实际应用中,理想

PID要改进之后才能使用。 S7-200 PLC的PID指令中,PID控制算法是基于理想PID控制算法的改进得到的。其微分项采用微分先行改进,积分项采用抗积分饱和法改进。 微分先行,是指只对被控量微分,而对偏差无微分作用,这样避免了当改变设定值时对系统产生冲击。 抗饱和积分,是指对计算出的控制量限幅。在S7-200 PLC中,积分项MI的积分公式为

MIn?KcTs?SPn?PVn??MX Ti?3-5?式中

MIn——第n次采样的积分项数值; SPn——第n次采样的设定值数值; PVn——第n次采样的检测值数值

MX——第n-1次采样的积分项数值。

对控制量的限幅为

?MX?1.0?(MPn?MDn)??MX??(MPn?MDn)式中

Mn?1.0Mn?0.0

?3-6?MPn——第n次采样的比例计算输出数值; MDn——第n次采样的积分计算输出数值; Mn——第n次采样的PID控制量计算输出数值。

通过按照上述方式调节MX,一旦计算输出返回适当范围即可实现系统应答能力的改善。控制量也被固定在0.0~1.0。

S7-200 PLC中使用PID控制算法的方法有两种:一种是使用指令集中的PID计算指令;令一种是使用PID向导,根据向导提示一步一步完成PID的参数配置,生成PID指令。无论是哪种方式使用PID指令,都需要建立PID回路表。PID回路表是存储用于控制回路操作参数的连续存储空间,长度为80字节。对于使用PID指令向导建立存储区,用户还需额外分配40字节的存储空间,用于指令计算的缓存。PID回路

表见表1.1。

表1.1 偏移量 0 4 8 12 16 20 24 28 32 36 40 41 42 43 44 数据类型 I I I/O I I I I I/O I/O Cont I O I/O I I 数据格式 双字/实数 双字/实数 双字/实数 双字/实数 双字/实数 双字/实数 双字/实数 双字/实数 双字/实数 ASCII 字节 字节 字节 字节 实数 PID回路表 符号 PVn SPn Mn 注释 过程变量,0.0~1.0 给定值,0.0~1.0 输出计算值,0.0~1.0 回路增益,正/负常数 采样时间,正数,单位为秒 积分时间,正数,单位为分钟 微分时间,正数,单位为分钟 积分项前值,0.0~1.0 过程变量前值,0.0~1.0 PID扩展回路表标志(A版) 算法控制字节,详见后文 算法状态字节,详见后文 算法结果字节,详见后文 算法配置字节,详见后文 最大PV振荡幅度的归一值,0.025~0.25 过零的PV滞后的归一值,0.005~0.1。若DEV/ HYS<4,则自动调谐过程中会出现警告 初始输出步长改变的归一值,0.05~0.4 看门狗时间,两个过零间的最大允许时间,60~7200,单位为秒 自动调谐确定的建议回路增益。 自动调谐确定的建议积分时间 自动调谐确定的建议微分时间 自动调谐确定的归一输出步长值 自动调谐确定的归一PV滞后值 Kc Ts Ti Td MX PVn?1 PIDA ACNTL ASTAT ARES ACNFG DEV 48 I 实数 HYS 52 56 60 64 68 72 76 I I O O O O O 实数 实数 实数 实数 实数 实数 实数 STEP WDOG AT_KC AT_TI AT_TD ASTEP AHYS 1. PID回路指令的使用 PID回路指令的LAD格式如图1.1所示。TBL为PID回路表的首地址,VB指定的字节型数据;LOOP为PID回路号,回路号为0~7的常数。当使能端有效,则启动该PID回路运

ENPIDENOTBLLOOP图3.1PID指令格式算。

在使用PID指令之前,需要先建立回路表并初始化,用户可在编写程序时定义数据块,建立起回路表并执行初始化,或者把初始化作为子程序,在程序运行时对回路表进行初始化。另外,还需要将采集回来的过程量进行归一化处理。调用PID指令后,再将回路输出计算值转换为控制工程量。

在这里的归一化处理是指将数据值的实际取值按比例一一对应到0.0~1.0之间的无量纲实数。数据字归一化处理,要先把数据字转换为实数再通过公式(3-7)对实数进行归一化。由于S7-200 PLC没有直接将数据字转换为实数的指令,所以要先将数据字转换为双整数,再将双整数转换为实数。

式中

RNorm?RRaw?RRmin

Span?3-7?RNorm——输入过程量的归一化值; RRaw——输入过程量的原始数值; RRmin——输入过程量的最小可能值;

Span——值域大小,即为输入过程量的最大可能数值减去

最小可能数值。

对于单极性数值,RRmin一般取0,Span一般取32000;对于双极性数值,RRmin一般取-32000,Span一般取64000。但RRmin、Span的具体取值要是具体情况而定。例如:扩展模块EM231采用PT100作为模拟输入时,假设使用的数据采集通道地址是AIW0,AIW0的有效数值范围为-500~2000,对应测量温度值为-50.0~200.0℃。此时,RRmin就不能取-32000,应该取RRmin??500,Span?2500。

将回路输出计算值转换为控制工程量,可按以下公式进行转换,再将转换后的实数转换为数据字。

RScal?MnSpan?RSmin

?3-8?式中

RScal——原始控制工程量的实数表示; RSmin——原始控制工程量的最小可能实数值。

2. PID指令向导

PID指令向导,实质上是通过向导,引导用户完成PID回路表的建立及初始化,并自动完成对过程量的归一化及计算输出值的PID0_INITEN转换过程。所以使用上较PID

OutputPV_I回路指令简单,但两者使用的

HighAlarmSetpoint_RPID控制算法原理上是一致LowAlarmAuto_Manual的。PID向导生成的指令格式ManualOutputModuleErr如图3.2所示:

图3.2由向导生成的PID指令格式

其操作数格式如表1.2所示,其中Auto_Manual、ManualOutput、HighAlarm、LowAlarm、ModuleErr为可选项。

表3.2 符号 EN PV_I Setpoint_R Auto_Manual ManualOutput Output HighAlarm LowAlarm ModuleErr I I I I I O O O O 由向导生成的PID指令操作数 注释 使能端 过程量输入 给定值输入 手自动切换 手动模式的输出值,标准化数值 输出工程值 过程量高限报警 过程量低限报警 指定位置的模拟量模块错误报警 BOOL INT REAL BOOL REAL INT BOOL BOOL BOOL 变量类型 数据格式 3. S7-200 PLC的PID回路类型选择 如果不需要积分项,则将积分时间置为无穷大(即INF)。但由于积分项前值MX的存在,积分项的数值也可能不为零。

如果不需要微分项,则将微分时间置为0.0。

特别的,如果不需要比例项,则将回路增益值置为0.0。系统在计算积分项和微分项时默认回路增益值为1.0。

应该注意:在执行PID指令时出现任何错误,都将置位特殊功能寄存器SM1.1,并将终止PID指令的执行。则此次回路表中输出数值的更新可能不完全,应当忽略这些数值,并在下一次执行PID回路指令之前纠正引起数学错误的输入数值。

3.1.3 PID参数的整定

1. PID控制参数的作用

比例调节可以减小静差,但不能消除静差;比例系数越大,比例作用越强,系统响应越快,但比例系数过大,会使超调量过大,甚至使系统不稳定。积分调节主要用于消除静差;但积分作用的加入,会是系统动态响应变慢,积分时间越小,积分作用越强,但积分作用太强会使系统超调加大,使系统振荡加剧。微分调节可以改善系统的动态响应,减小调节时间,但当系统存在高频干扰时不宜加入微分调节;微分时间越大,微分作用越强。

2. PID校正方法

对于一个给定的控制系统,要实现预定的控制过程,必须通过选择合适的P、I、D控制参数来实现。整定控制器的参数,是提高控制质量的主要途径。当控制器的参数整定好并且投入运行系统之后,被调参数可以稳定在工艺要求的范围之内,就可以认为控制器的参数整定好了。

PID的校正方法有很多,概括起来说可以分为三类,即理论计算整定法、工程整定法和自整定法。在这里只简单的介绍三种常用的方法。

(1) 临界比例度法

1) 临界比例度法是一种闭环整定方法。由于该方法直接在闭环系统中进行,不需要测试过程的动态特性,其方法简单、使用方便,因而获得了广泛应用。具体整定步骤如下:

先将调节器的积分时间Ti置于最大(Ki?0),微分时间Td置零(Kd?0),比例度?置为较大的数值(Kp置为较小值)使系统投入闭环运行。

2) 等系统运行稳定后,对设定值施加一个阶跃变化,并减小?,直到系统出现如图2-1所示的等幅振荡为止。记录下此时的?k(临界比例度)和等幅振荡周期Tk。

3) 根据所记录的?k和Tk,按表2-1给出的经验公式计算出调节器的?、Ti及Td参数。

y(t)TKO图2-1 临界比例度下的等幅振荡曲线 表2-1 临界比例度法的参数计算表 t

整定参数 调节规律 P PI PID ? 2?k 2.2?k Ti Td 0.8Tk 0.5Tk 1.7?k 0.13Tk (2) 衰减曲线法 衰减比例法与临界比例法相类似,所不同的是无需出现等幅振荡过程,具体方法如下:

1) 先置调节器积分时间Ti=?,微分时间Td=0,比例度?置于较大数值,将系统投入运行。

2) 等系统运行稳定后,对设定值作阶跃变化,然后观察系统的响应。若系统振荡衰减太快,则减小比例度;反之,则增大比例度。如

y(t)TSy(t)?=0.75衰减比4:1?=0.9衰减比10:1Ot

Otpta)4:1衰减曲线 b)10:1衰减曲线

图2-2 系统衰减振荡曲线

此反复,直到出现如图2-2a所示的衰减比为4:1的振荡过程,或者如图2-2b所示的衰减比为10:1的振荡过程时,记录下此时的?值(设为?S)以及Ts值(如图2-2a),或者tp值(如图2-2b所示)。图中,Ts为衰减振荡周期,tp为输出响应的峰值时间。

3) 按表2-2中所给出的经验公式计算?、Ti及Td。

表2-2

衰减曲线法参数计算公式表

整定参数 衰减率ψ 调节规律 P 0.75 PI PID P 0.90 PI PID ? Ti Td ?S 1.2?S 0.8?S 0.5TS 0.3TS 0.1TS ?S 1.2?S 0.8?S 2tp 1.2tp 0.4tp (3) 经验法 需要指出的是,无论采用哪一种工程整定方法所得到的调节器参数,都需要在系统的实际运行中,针对实际的过渡过程曲线进行适当的调整与完善。其调整的经验准则是“看曲线,调参数”:

1) 比例度?越大,放大系数Kc越小,过渡过程越平缓,稳态误差越大;反之,过渡过程振荡越激烈,稳态误差越小;若?过小,则可能导致发散振荡。

2) 积分时间Ti越大,积分作用越弱,过渡过程越平缓,消除稳态误差越慢;反之,过渡过程振荡越激烈,消除稳态误差越快。

3) 微分时间Td越大,微分作用越强,过渡过程趋于稳定,最大偏差越小;但Td过大,则会增加过渡过程的波动程度。

3. PID调节控制面板

S7-200 PLC的PID回路表起初只有36字节,在增加了PID自动调谐后,回路表扩展到了80字节。STEP 7-Micro/WIN中的PID调节控制面板可以帮助用户设置PID回路表中的参数,以实现对PID参数的自动调谐,使PID参数的整定过程更加简便。但需要注意的是,使用自动调谐有一定的前提条件:

(1) PID回路必须处于自动模式;如果回路处于手动模式,自动调谐将会失败。

(2) 在启动自动调谐之前,检测值必须达到某一稳态,即PV应经达到稳态,并且输出没有不规律地变化。

(3) 开始自动调谐时,回路输出值最好能够在控制范围中点附近;因为自动调谐过程会通过在回路输出中做出小步长改变,在进程中建立一个振荡。若回路输出太过于接近控制范围边缘,有可能在自动调谐时因为引进的小步长改变而试图超出控制范围。 PID调节控制面板也可进行手动设置PID参数,使用之前介绍的PID校正方法同样可以较快的配置好参数。

本文来源:https://www.bwwdw.com/article/osc.html

Top