PID的实现方式及数目

1.S7-200 SMART中PID功能实现方式有以下三种:

  • PID指令块:通过一个PID回路表交换数据,只接受0.0 - 1.0之间的实数(实际上就是百分比)作为反馈、给定与控制输出的有效数值。
  • PID向导:方便地完成输入/输出信号转换/标准化处理。PID指令同时会被自动调用。
  • 根据PID算法自己编程(该文档不涉及)
  • 2.S7-200 SMART CPU最多可以支持8个PID控制回路(8个PID指令功能块),根据PID算法自己编程没有具体数目的限制,但是需要考虑PLC的存储空间以及扫描周期等影响。

    PID控制是负反馈闭环控制,能够抑制系统闭环内的各种因素所引起的扰动,使反馈跟随给定变化。

    根据具体项目的控制要求,在实际应用中有可能用到其中的一部分,比如常用的是PI(比例-积分)控制,这时没有微分控制部分。

    PID指令使用的相关视频教程链接如下:

    PID回路控制 概述及项目编程准备 S7-200 SMART PID回路控制(1):概述及项目编程准备——跟我学 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1084
    S7-200 SMART PID回路控制(1):概述及项目编程准备——跟我做 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1085
    配置PID向导 S7-200 SMART PID回路控制(2):配置PID向导——跟我学 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1086
    S7-200 SMART PID回路控制(2):配置PID向导——跟我做 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1087
    调用向导生成子程序编程 S7-200 SMART PID回路控制(3):调用向导生成的子程序编程——跟我学 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1088
    S7-200 SMART PID回路控制(3):调用向导生成的子程序编程——跟我做 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1089
    下载测试 S7-200 SMART PID回路控制(4):下载测试——跟我学 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1090
    S7-200 SMART PID回路控制(4):下载测试——跟我做 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1091
    PID整定控制面板 S7-200 SMART PID回路控制(5):PID整定控制面板——跟我学 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1092
    S7-200 SMART PID回路控制(5):PID整定控制面板——跟我做 http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=1093

    PID算法在S7-200 SMART中的实现

    PID控制最初在模拟量控制系统中实现,随着离散控制理论的发展,PID也在计算机化控制系统中实现。

    为便于实现,S7-200 SMART中的PID控制采用了迭代算法。详细的计算方法请参考《S7-200 SMART系统手册》中PID指令部分的相关内容。

    计算机化的PID控制算法有几个关键的参数Kc(Gain,增益),Ti(积分时间常数),Td(微分时间常数),Ts(采样时间)。

    在S7-200 SMART中PID功能是通过PID指令功能块实现。通过定时(按照采样时间)执行PID功能块,按照PID运算规律,根据当时的给定、反馈、比例-积分-微分数据,计算出控制量。

    PID功能块通过一个PID回路表交换数据,这个表是在V数据存储区中的开辟,长度为36字节。因此每个PID功能块在调用时需要指定两个要素:PID控制回路号,以及控制回路表的起始地址(以VB表示)。

    由于PID可以控制温度、压力等等许多对象,它们各自都是由工程量表示,因此有一种通用的数据表示方法才能被PID功能块识别。S7-200 SMART中的PID功能使用占调节范围的百分比的方法抽象地表示被控对象的数值大小。在实际工程中,这个调节范围往往被认为与被控对象(反馈)的测量范围(量程)一致。

    PID功能块只接受0.0 - 1.0之间的实数(实际上就是百分比)作为反馈、给定与控制输出的有效数值,如果是直接使用PID功能块编程,必须保证数据在这个范围之内,否则会出错。其他如增益、采样时间、积分时间、微分时间都是实数。

    因此,必须把外围实际的物理量与PID功能块需要的(或者输出的)数据之间进行转换。这就是所谓输入/输出的转换与标准化处理。《S7-200 SMART系统手册》上有详细的介绍。

    S7-200 SMART的编程软件Micro/WIN SMART提供了PID指令向导,以方便地完成这些转换/标准化处理。除此之外,PID指令也同时会被自动调用。

    调试PID控制器

    PID控制的效果就是看反馈(也就是控制对象)是否跟随设定值(给定),是否响应快速、稳定,是否能够抑制闭环中的各种扰动而回复稳定。

    要衡量PID参数是否合适,必须能够连续观察反馈对于给定变化的响应曲线;而实际上PID的参数也是通过观察反馈波形而调试的。因此,没有能够观察反馈的连续变化波形曲线的有效手段,就谈不上调试PID参数。

    观察反馈量的连续波形,可以使用带慢扫描记忆功能的示波器(如数字示波器),波形记录仪,或者在PC机上做的趋势曲线监控画面等。

    新版编程软件STEP 7-Micro/WIN SMART内置了一个PID调试控制面板工具,具有图形化的给定、反馈、调节器输出波形显示,可以用于手动调试PID参数。对于没有“自整定PID”功能的老版CPU,也能实现PID手动调节。

    PID参数的取值,以及它们之间的配合,对PID控制是否稳定具有重要的意义。这些主要参数是:

    参考链接

    用PID指令向导进行PID编程
    PID自整定与PID调试面板
    PID 的自动/手动切换
    PID常见问题