S7-200 SMART PLC如何实现PID 自动/手动调节切换

所谓手自动勿扰切换,是指在将PID回路从手动模式切换到自动模式,或者是自动模式切换的手动模式时,PID输出不会发生跳变,也就是不会产生任何波动。本文阐述内容主要以S7-200 SMART PLC中的PID功能为实例。

一、PID 自动/手动调节的无扰动切换

有些工程项目中可能需要根据工艺要求在不同的时刻投入、或者退出 PID 自动控制;退出 PID 自动控制时,控制器的输出部分可以由操作人员直接手动控制。这就是所谓的 PID 手动/自动切换。

PID 控制处于自动方式时,PID 控制器(以S7-200 SMART 中的 PID 调节为例)会按照 PID 算法,自动通过输出的作用使过程反馈值跟随给定值变化,并保持稳定。这是一个自动的闭环控制系统。操作人员可以根据现场工艺的要求,改变给定(即设定值)的值。

PID 控制处于手动方式时,PID 控制器不再起自动计算的作用。这时,控制回路的输出是由操作人员手动控制、调整,由操作人员观察现场的控制效果,从而构成人工闭环控制。

所谓 PID 自动/手动控制,就是看控制系统的输出是由 PID 控制器自动控制,还是由操作人员手动控制。

有些控制系统的执行机构不能承受较大的冲击,这就要求在进行 PID 自动/手动切换时,保持控制输出的稳定。这就是要求无扰动切换。为了达到 PID 自动/手动控制的无扰动切换,需要在编程时注意一些相关事项。下面分别就直接使用 PID 指令编程,和使用 PID 向导编程两种情况作一介绍。

二、直接使用 PID 指令编程时的 PID 自动/手动无扰切换

直接使用 PID 指令块编写 PID 控制程序时,可以简单地使用“调用/不调用”指令的方式控制自动/手动模式。因为 PID 指令本身已经具有实现无扰动切换的能力,此时在 PID 指令控制环节之外编程没有多大必要。

PID 指令的 EN 输入端使能(为“1”)时,我们认为是自动控制模式;EN 输入端未使能(为“0”)时,我们认为是手动控制模式。PID 指令本身有一个“能流历史状态位”,以记录指令的状态切换。在 EN 端从“0”变为”“1”时,PID 指令认为这是从“手动”模式向“自动”模式切换。PID 指令此时会自动执行一系列动作,以配合无扰动切换:

  • 使设定值( SPn) = 当前过程反馈变量(PVn)

  • 设置上次采样过程变量(PVn-1) = 当前过程反馈变量(PVn)

  • 设置积分偏差和(或所谓积分前项)(Mx) = 当前输出值(Mn)

使设定值等于当前反馈值可以避免出现偏差,使之不存在调整的要求;当然如果有工艺要求,也可以后续调整设定值。其他的动作都是为了使 PID 在后续的操作中不改变输出的值。

在编程时要注意:

  • 从自动模式向手动模式切换时,PID 指令的 EN 端不再有能流,计算停止,输出值 Mn 不再变化。此时如果需要操作人员人工观察控制的结果,手动控制输出量,就可以通过用户程序直接改变回路表中的输出值存储单元内容(见数据块或系统手册的相关部分内容)。如果有必要,操作人员的操作可能要进行一些标准化换算。

  • 为保证从手动模式向自动模式的切换无扰动,需要在手动控制时,或在切换过程中,禁止对 PID 回路表中设定值的更新,以便切换时 PID 指令用当前过程反馈值替代设定值。切换完成后,操作人员可以调整设定值。

三、使用 PID 向导编程时的 PID 自动/手动无扰切换

使用 PID 指令向导编程时,指令向导会自动调用 PID 指令,并且编写外围的控制变量标准化换算、定时采样等功能。用户在使用 PID 指令向导时,需要在用户程序中用 SM0.0 调用指令向导生成的子程序(如 PIDx_CTRL 子程序)。PID 向导可以生成带自动/手动切换功能的子程序,这个子程序使用一个数字量点为“1”、“0”的状态来控制是否投入 PID 自动控制。

到目前为止(STEP 7-Micro/WIN SMART),使用 PID 向导生成的子程序时,由于用户程序不能直接使用 PID 指令,它的无扰切换能力因为隔了外壳子程序,所以受到了局限。如果对无扰切换要求比较严格,需要另外编一些程序加以处理。但在高级一点的PLC中,无扰动切换功能只需打个勾即可。对于SMART来说则不能这么简单了。

S7-200SMART中,考察如下 PID 控制子程序:

图 1. PID 向导生成的指令

图中:a、过程反馈量 ;b、设定值,实数 ;c、自动/手动控制,“1”=自动,“0”=手动 ;d、手动控制输出值,0.0 - 1.0 之间的一个实数;e、PID 控制输出值。

要实现无扰动切换,必须:

  • 在从自动向手动切换时,使手动输出值(VD2004)等于当前的实际控制输出值;

  • 在从手动向自动切换时,使设定值相当于当前的过程反馈值。

为此,可编写类似下图所示的程序,放在 PID 控制子程序之前:

图 2. 无扰切换处理程序

图中:

a、自动/手动切换控制点 ;

b、从自动向手动切换时,使手动输出值等于实际当前值 ;

c、从手动向自动切换时,把当前反馈量换算为相应的给定值 。

重要通知

想加入工控资料窝技术交流群

请添加静儿为好友

并备注:地区-行业-姓名昵称获取进群资格。

(0)

相关推荐

  • 高压主汽门平时都接受哪些信号?【DEH学习笔记2】

    距离上次DEH学习过去了挺长时间,笔记链接:[DEH综合阀位指令是怎么算出来的?[学习笔记1]],今天学习一下高压主汽门是如何动作的,今天只学习计算机控制部分,而不是学习液压执行部分,关于液压执行部分 ...

  • 通过《物料分拣案列》带你了解如何编写一个程序

    导读 本案例主要让读者练习西门子S7-200SMART系列PLC位逻辑指令.定时器.子程序的结构,了解编写一个程序的思路与逻辑. 控制要求: COURSE ARRANGEMENT 1.不合格:通过颜色 ...

  • 科学or艺术?——如何优化PID回路以实现最优性能

    尽管大部分应用中都将PID算法作为闭环过程控制的事实标准,但对于如何优化PID回路以达到最优性能的方法,人们仍然没有达成共识. 在 工业自动化行业,尽管大部分人将比例- 积分- 微分 (PID) 算法 ...

  • 西门子S7-200 SMART PLC如何实现PID 自动/手动调节切换

    PLC发烧友 481篇原创内容 公众号 所谓手自动勿扰S7-200 SMART PLC切换,是指在将PID回路从手动模式切换到自动模式,或者是自动模式切换的手动模式时,PID输出不会发生跳变,也就是不 ...

  • 【案例】S7-200 SMART PLC如何实现PID 自动/手动调节切换

    所谓手自动勿扰切换,是指在将PID回路从手动模式切换到自动模式,或者是自动模式切换的手动模式时,PID输出不会发生跳变,也就是不会产生任何波动.本文阐述内容主要以S7-200 SMART PLC中的P ...

  • 西门子200 SMART PLC与WinCC flexible SMART V3软件仿真连接

    还在为学习西门子触摸屏时没有硬件而烦恼吗?本案例将通过200smart plc与WinCC flexible SMART V3软件 仿真连接帮你解决没有硬件的烦恼.本案例用到硬件200SMART ST ...

  • s7 200 smart编程软件下载

    西门子200smart编程软件是西门子官方推出的支持新款CP243-1(6GK7 243-1-1EX01-0XE0)的plc编程软件,用于SIMATIC S7-200使用,可进行远程编程.诊断或数据传 ...

  • S7-200 SMART PLC行车自动往返循环控制

    ↖戳上方 蓝字  " PLC发烧友 "  关注我们哦! 说到小车来回运送黄金,大家并不陌生,那么如何自动的来回向你家运送黄金呢?接下来就为大家讲解如何让小车来回并且自动循环的控制向 ...

  • S7-200 SMART PLC控制汽车自动清洗装置

    我想有车一族,说到洗车可能并不陌生,还很熟悉呢?车也是要隔段时间清洗一次,那么每次去洗车费用都很高,如果我们学会了自己设计一个洗车程序,尤其对我们工控行业来说那岂不是更好. 一.控制要求 先工作人员按 ...

  • plc西门子s7 200硬件详解

    plc西门子s7 200硬件详解

  • 西门子S7-200 SMART PLC入门参考

    最近整理前几年的资料,偶然翻看到2014年自己初次接触学习西门子S7-200 SMART时写的工作笔记,感觉对想学习S7-200 SMART的还是有一点点参考价值. 初识SMART 硬件:CPU SR ...

  • 图文详解200 SMART与西门子触摸屏的RS485通信

    技成PLC课堂 从0到1,带你学习PLC技能! 79篇原创内容 公众号 SMART面板概述 SMART面板分为第一代产品SMART LINE和第二代产品SMART LINE IE,第一代产品无以太网口 ...