PID在PLC中的实现PID在PLC中的实现.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PID在PLC中的实现PID在PLC中的实现

3.1 PID控制算法及在PLC中的实现 3.1.1 PID控制算法 PID控制器的输入量e是设定值r和检测值y的偏差量,即 ,经过运算,并输出控制信号u。PID控制算法的理想形式为 式中 ——控制器比例增益; ——积分时间; ——微分时间。 由理想PID控制算法连续形式可以得到其离散形式。离散PID控制算法有三种不同的形式:位置算法、增量算法、速度算法。由连续的PID算法容易的到其位置算法,为 其中, 为采样周期。 PID控制增量算法为相邻两次采样时刻所计算的位置值之差,即 PID控制速度算法为增量值除以采样周期,即 3.1.2 PLC中的PID实现 由于理想PID控制算法存在一定的局限性,在实际应用中,理想PID要改进之后才能使用。 S7-200 PLC的PID指令中,PID控制算法是基于理想PID控制算法的改进得到的。其微分项采用微分先行改进,积分项采用抗积分饱和法改进。 微分先行,是指只对被控量微分,而对偏差无微分作用,这样避免了当改变设定值时对系统产生冲击。 抗饱和积分,是指对计算出的控制量限幅。在S7-200 PLC中,积分项的积分公式为 式中 ——第n次采样的积分项数值; ——第n次采样的设定值数值; ——第n次采样的检测值数值 ——第n-1次采样的积分项数值。 对控制量的限幅为 式中 ——第n次采样的比例计算输出数值; ——第n次采样的积分计算输出数值; ——第n次采样的PID控制量计算输出数值。 通过按照上述方式调节,一旦计算输出返回适当范围即可实现系统应答能力的改善。控制量也被固定在0.0~1.0。 S7-200 PLC中使用PID控制算法的方法有两种:一种是使用指令集中的PID计算指令;令一种是使用PID向导,根据向导提示一步一步完成PID的参数配置,生成PID指令。无论是哪种方式使用PID指令,都需要建立PID回路表。PID回路表是存储用于控制回路操作参数的连续存储空间,长度为80字节。对于使用PID指令向导建立存储区,用户还需额外分配40字节的存储空间,用于指令计算的缓存。PID回路表见表1.1。 表1.1 PID回路表 偏移量 数据类型 数据格式 符号 注释 0 I 双字/实数 过程变量,0.0~1.0 4 I 双字/实数 给定值,0.0~1.0 8 I/O 双字/实数 输出计算值,0.0~1.0 12 I 双字/实数 回路增益,正/负常数 16 I 双字/实数 采样时间,正数,单位为秒 20 I 双字/实数 积分时间,正数,单位为分钟 24 I 双字/实数 微分时间,正数,单位为分钟 28 I/O 双字/实数 积分项前值,0.0~1.0 32 I/O 双字/实数 过程变量前值,0.0~1.0 36 Cont ASCII PIDA PID扩展回路表标志(A版) 40 I 字节 算法控制字节,详见后文 41 O 字节 算法状态字节,详见后文 42 I/O 字节 算法结果字节,详见后文 43 I 字节 算法配置字节,详见后文 44 I 实数 最大PV振荡幅度的归一值,0.025~0.25 48 I 实数 过零的PV滞后的归一值,0.005~0.1。若DEV/ HYS<4,则自动调谐过程中会出现警告 52 I 实数 初始输出步长改变的归一值,0.05~0.4 56 I 实数 看门狗时间,两个过零间的最大允许时间,60~7200,单位为秒 60 O 实数 AT_KC 自动调谐确定的建议回路增益。 64 O 实数 AT_TI 自动调谐确定的建议积分时间 68 O 实数 AT_TD 自动调谐确定的建议微分时间 72 O 实数 ASTEP 自动调谐确定的归一输出步长值 76 O 实数 AHYS 自动调谐确定的归一PV滞后值 1. PID回路指令的使用 PID回路指令的LAD格式如图1.1所示。TBL为PID回路表的首地址,VB指定的字节型数据;LOOP为PID回路号,回路号为0~7的常数。当使能端有效,则启动该PID回路运算。 在使用PID指令之前,需要先建立回路表并初始化,用户可在编写程序时定义数据块,建立起回路表并执行初始化,或者把初始化作为子程序,在程序运行时对回路表进行初始化。另外,还需要将采集回来的过程量进行归一化处理。调用PID指令后,再将回路输出计算值转换为控制工程量。 在这里的归一化处理是指将数据值的实际取值按比例一一对应到0.0~1.0之间的无量纲实数。数据字归一化处理,要先把数据字转换为实数再通过公式(3-7)对实数进行归一化。由于S7-200 PLC没有直接将数据字转换为实数的指令,所以要先将数据字转换为双整数,再将双整数转换为

文档评论(0)

cduutang + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档