果想在S7CPU中使用大量的PID控制器_第1页
果想在S7CPU中使用大量的PID控制器_第2页
果想在S7CPU中使用大量的PID控制器_第3页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、果想在S7 CPU中使用大量的 PID控制器,则需要评估控制器的采样间隔和功能块的运行。控制器功能块在时间中断0B (通常为 OB35)中被调用3次。由此实现等距的采样时间或控制周期(例如5 ms、20 ms、100 ms)。根据合理的控制器数量,在一个 0B调用中编辑多个控制 器,以获取较短的采样间隔。 在一个0B调用中编辑的控制器数量越多,对0B1的二次影响(周期负载)越大。除了调用次数之外,还必须考虑FB的运行时间(对0B1的二次影响)。举例假设:? 功能块在一个循环周期的运行时间为5 ms。? OB1的运行时间(不考虑中断)为30 ms。? 两个控制循环在 OB35中连续运行。? OB

2、35的时间中断循环周期为20 ms。OB1每隔20 ms被OB35中断10 ms ,即0B1循环每20 ms被延长10ms。OB1循环周期持续40 ms或 50 ms ,如下图所示。QB 35 CycfesnIn.11 11n |1191rw111t111(*1i1Lb00 1 Cyicles图01调节选项包如标准 PID控制提供了一个调用分配器,调用分配器提供了一个便捷的途径来确定在循环时间中断 0B3x中的调用顺序和频率。对于集成控制器,这些由用户来决定。下表列岀了在不同的 S7 CPU中控制循环块的典型运行时间:功能块CPU315-2AF03-0AB0,FW V1.2CPU315-2AG

3、10-0AB0,CPU317-6CF00-0AB0,FW V1.0CPU416-2XK02-0AB0,FW V3.1FB41CONT_CPID Co ntrol2 ms 11 ms 10.2 ms 10.1 ms 1FB42CONT_SPID Co ntrol2 ms 11 ms 10.2 ms 10.1 ms 1FB43PULSEGENPID Co ntrol0.5 ms 10.2 ms 10.05 ms 10.02 ms 1FB58TCONT_CP (without con troller optimizati on)4 ms 11.5 ms 10.3 ms 10.15 ms 1PID C

4、o ntrolFB58TCONT_CP(withcon troller optimizati on)PID Co ntrol5 ms 12 ms 10.4 ms 10.2 ms 1FB59TCONT_SPID Co ntrol3 ms 11 ms 10.2 ms 10.1 ms 1FB1 PID_CPSta ndard PIDCon trol5 ms 12 ms 10.4 ms 10.2 ms 1FB2 PID_ESSta ndard PIDCon trol6 ms 12 ms 10.4 ms 10.2 ms 11典型条件下的取整值(非最坏情况)F面是一个计算采样间隔的例子:? 功能块的运行时

5、间*控制器数目举例? S7-CPU 315 (6ES7315-2AG10-0AB0)和 FB58 TCONT_CP (带控制器优化) 结果为:2 ms * 控制器数目假设在 S7 CPU 315 (6ES7315-2AG10-0AB0)中运行 50 个 PID 控制器。 如果 OB3x循环周期为2 ms 且每个 OB3x 循环周期处理一个控制器,那控制器的采样时间为100 ms 。如果每个 OB3x循环周期处理两个控制器,则控制器的采样时间减半为 50 ms (OB1 负载加重 ).循环采样时间不仅影响 CPU 的运行负载, 而且影响 PID 控制器的效果。 控制器对两次采样间隔 之间的输入变

6、化不响应,控制器的输出保持不变。另外,必须考虑过程的控制路径。 位置控制和压力控制通常需要一个比温度控制 (典型值 100 ms- 10000 ms) 更短的采样时间 ( 典型值 1 ms - 100 ms) ,因为每一个控制路径有一个不同的时间特 性。因此,最小的循环采样时间间隔必须小于特定 CPU 的控制程序运行时间,而且最大的循环 采样时间间隔为工艺动态中定义的允许的上限值。说明:您可以通过手动优化参数提高控制器的控制质量。 然而,这无法代替通过数学计算确定控制参数 (增益, 积分时间和微分时间 ) , 使用整定工具如 PID 自整定器 (MLFB: 6ES7860-4AA01-0YX0

7、) ,或使用默认的控制参数设定。在实际应用中为了确定软控制器的控制参数, 必须确认已经正确设置的采样时间 (例如 周期 ) 。 如果有条件的调用控制块 (无调用分配器) ,通常可以通过获取循环中断的时基来设置采样时间。如果使用了调用分配器或时钟分配,就必须考虑该问题。另外, 还必须考虑过程的控制曲线。 相 对于温度控制的采样时间 ( 典型值 100ms - 10000ms) ,位置控制和压力控制通常要求非常短的 采样时间 (典型值 1ms - 100ms) ,这是由于每种控制曲线都有不同的时间响应行为。 采样时间还 会影响控制质量和 CPU 的处理能力,这是由于循环中断会以固定的时间间隔在任意

8、的点上中 断程序循环。PID 控制器以下示意图是温度控制曲线,显示了设定值阶越变化时不同的阶越响应,使用了需要重点注意的是,在记录阶越响应曲线前,首先要到达工作状态。LduaJAQu 5aiddvabj#!=iriu.:aLvibi<e 2actual vaihijE 4图01上图显示了在不同的控制器参数设定下,不同的实际值曲线。? 实际值1:实际值非常迅速的接近设定值,并且岀现很大的上超调,然后又岀现严重的下超调。在逐渐减小的波形震荡运动中,实际值接近设定值。对于合适的控制行为来说,控制器设定值过度激烈。这可能是由于增益系数过大和/或积分时间太短。 首先,应该减小增益系数,直到状况有所

9、改善,然后还应该增加积分时间。需要按照顺序执行以上步骤,直到取得良好效果。? 实际值2:实际值非常迅速的接近设定值,并且出现小的上超调。经过一个小的下超调 后,实际值接近设定值。如果主控制器要求必须对误差和设定值改变迅速做出响应,这 是一种良好的控制行为。在这种情况下,不必再改变控制参数。? 实际值3:实际值缓慢接近设定值,并且无超调的到达设定值。如果控制器不允许任何超调,这是一种良好的控制行为。在这种情况下,不必再改变控制参数。/或微? 实际值4:实际值缓慢接近设定值,波形向下倾斜。这可能是由于增益系数太小和分时间太长。首先,应该增大增益系数直到情况得到改善,然后减小微分时间。需要按 照顺序

10、执行以上步骤,直到取得良好效果。? 实际值5:实际值非常缓慢的接近设定值。这可能是由于增益系数太小和/或积分时间太长。首先,需要增大增益系数直到情况得到改善,然后减小积分时间。需要按照顺序执 行以上步骤,直到取得良好效果。个模拟量输入提供了一个数字值来表示标准化的模拟量信号(电流,电压,电阻或温度),该数字值应该能够表示岀所测量的参数(例如:容器中的液位)。这个过程被称为模拟量的标准化或线性化。相反的,当用户程序计算出一个过程值,并转化为数字量,用于模拟量输出模板输出一个模拟量信号驱动模拟量执行机构,这个过程称为还原。模拟量线性化/还原功能的库文件可以下载并使用。图01是一个线性化的例子。8图

11、02是一个还原的例子«厝四“电屮涎巾lx#ntfUM4 1!JLi -AiMqih mm1.在FC164中,x值为整数类型,y值为整数类型.2.在 FC165x值为整数类型值为实数类型.3.在 FC166x值为实数类型值为整数类型.4.在 FC167x值为实数类型值为实数类型.、:I . 7.注意:这些功能并不改变地址寄存器AR1/AR2,使用FBD和LAD时,提供ENO功能用于将RLO=0 或1保存到 BR位中。以FC165为例介绍程序的处理(整数类型到实数类型的线性化)FC165的参数:0.0,.,+3.402823e+38inx0INT范围-32768,.,0,.,+32767

12、iny0REAL范围-3.402823e+38,.,0.0,.,+3.402823e+38inx1INT范围-32768,.,0,.,+32767iny1REAL范围-3.402823e+38,.,0.0,.,+3.402823e+38outyREAL范围-3.402823e+38,.,0.0,.,+3.402823e+38通过设定yMIN和yMAX,可以设定计算 y值的范围,这实际上也限定了模拟量模板的上限 和下限。丫可以根据线性方程 y = a x + b 来计算。因而这里使用的公式为:y = (y1-y0) / (x1-xO) * (x-xO) + y0使用FC165(整型 > 实

13、型)进行线性化的例子:toAU*甬L彎叩|一个通过模拟量输入模块得到的 4mA 到 20mA 信号,在 CPU 内部被转化成 0 到 27648 。待 测值为液位,已知模拟量与液位的对应关系为 4mA 表示 0.0m , 20mA 表示 1.7m 。 这里的参数为:P0(x0=0; y0=0.0)P1(x1=+27648; y1=+1.7)调用 FC165 如下:CALL FC165x:=PEW20yMIN:=0,0yMAX:=1.7x0:=0y0:=0.0x1:=27648y1:=1.7y:=MD22、八、注意:参考手册 "S7-300 Automation System Modu

14、le data" (Entry ID 8859629 ), 第 5 章"Representation of the analog values of analog modules" 来查找 CPU 检测的电压、电流、电阻以及温度范围。对于 S7-400 系统,相关信息可以在手册 "Automation System S7-400 ModuleSpecifications" (Entry ID 1117740 ), 5.3 章节 "Analog Value Representation"查询。组态注意事项 在使用 FB 58

15、TCONT_CP 进行控制器优化期间, 如果输入了一个与控制方向相反的设定值 (例 如在加热期间设定值是负的),优化并不会取消。用于搜索拐点的中止标准不工作, 控制过程会 过热,例如。使用 FB 58 TCONT_CP ,如果控制器的优化由设定值的跳变来触发,将会有如下的控制方向:? 正向控制:设定值的增加 =控制器输岀的增加,例如加热(设定值从50 °C变为100 °C)? 负向控制,例如冷却:设定值的增加 =控制器输岀的下降(设定值从-50 °C变为-10°C)提示:如果控制过程已经达到工作点 (当前设定值) ,工作点的优化应该通过 TUN_ST =

16、 TRUE 实现。rnt、/置注意:PID 控制 CONT_C, CONT_S 和 PULSEGEN 控制功能有两个版本但是功能相同:? FB 41, FB 42, FB 43可以下载的 FBs 适合所有的 CPU (S7-300, S7-400)。? SFB 41, SFB 42, SFB 43这些 SFB 集成于类型为 313C /314C 和 C7 系列 S7-300 CPU 中。在 STEP 7 标准库 (SIMATIC Manager: "File > Open > Libraries > .") "PID Control Blocks

17、"(FBs) 目录 or "System Function Blocks" (SFBs) 目录中可以这些功能块。 当使用这些功能块时应注意下面几点:1. FB 41 "CONT_C"? 为了保证执行频率一致,块应当在循环中断OB ( 例如 . OB35) 中调用。? "CYCLE" 参数对应的是扫描时间。 必须将程序块调用的间隔时间赋值在这里 ( 例如基于 OB35 的时间 ) 。? 缺省状态下为手动模式 (MAN_ON=true) 。自动回路被中断, 在 MAN 参数下输出控制值。? 为了确保手自动的无扰切换,在手动模式下

18、至少保证两次块调用的输出时间。? 当 CPU 重新启动 , 参数 "COM_RST" = true 将引导块的执行。? 参数 "COM_RST" 中断 PID 控制器的执行。2. FB 42 "CONT_S"? 为了保证执行频率一致,块应当在循环中断OB ( 例如 . OB35) 中调用。? "CYCLE" 参数对应的是扫描时间。 必须将程序块调用的间隔时间赋值在这里 ( 例如基于 OB35 的时间 ) 。? 缺省状态下为手动模式 (LMAN_ON=true) 。? 当 CPU 重新启动 , 参数 "COM_RST" = true 将引导块的执行。? 参数 "COM_RST" 中断控制器的执行。? 参数 "PULSE_TM" 和 "BREAK_TM" 被设置为 "CYCLE" 参数的整数倍。3. FB 43 "PULSEGEN"? 为了保证执行频率一致,块应当在循环中断OB ( 例如 . OB35) 中调用。? 当 CPU 重新启动 , 参数 "COM_RST"

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论