西门子S7-200 SMART PID回路控制,如何配置PID向导、调用子程序?如何创建状态图表测试程序?如何自整定PID参数?

简介: PID控制器是应用最广泛的闭环控制器,它根据给定值与被控变量实测值之间的偏差,按照PID算法计算出控制器的输出量控制执行机构进行调节,使被控量跟随给定量进行变化并使系统达到稳定,自动消除各种干扰对控制过程的影响,其中P、I、D分别指比例、积分、微分。

PID控制器是应用最广泛的闭环控制器,它根据给定值与被控变量实测值之间的偏差,按照PID算法计算出控制器的输出量控制执行机构进行调节,使被控量跟随给定量进行变化并使系统达到稳定,自动消除各种干扰对控制过程的影响,其中P、I、D分别指比例、积分、微分。


640.jpg

PID控制原理图

   

在西门子S7-200 SMART中,PID控制功能通过PID指令来实现。编程软件STEP7-Micro/WIN SMART提供了PID向导,可以帮助用户组态PID控制和生成PID子程序,方便快捷的完成PID控制编程任务,支持8路PID功能、自动/手动切换以及PID整定。


640.jpgPID回路向导

   

STEP7-Micro/WIN SMART还提供了PID整定控制面板,允许以图形方式监视PID回路行为,还可以启动、停止自整定功能。下面我们来进行S7-200 SMART PID回路控制的使用练习:利用PID向导编写程序,使温度保持在给定值,并对PID参数进行整定。


640.jpg

PID整定控制面板

   

任务描述。本次实验设备中利用温度变送器将0-100℃的温度转换为0-10V的电压信号,送到扩展模块EM AM06的模拟量输入通道2。加热器用Q1.6输出的PWM脉冲来控制。需要说明的是,EM AM06将模拟量输入0-10V电压信号转换为数字量,对应数字范围为0-27648,传送到S7-200 SMART CPU的AI存储器中。

640.jpg

实验任务描述

 

硬件组态。打开编程软件STEP7-Micro/WIN SMART创建新项目,在项目树中双击CPU打开,根据实际配置CPU选择SR40,扩展模块EM0选择AM06,启用模块电源报警。单击模拟量输入节点下的通道2,通道地址为AIW20,类型组态为电压,范围选择+/-10V,平滑采用默认的4个周期,启用超出上限报警和超出下限报警,单击确定按钮完成硬件组态。


640.jpg

硬件组态

   

配置PID向导。在工具菜单功能区单击PID按钮打开PID回路向导对话框,选择要组态的回路,最多可组态8个回路,这里我们选择回路0。


640.jpg

选择回路0

   

在左侧的树视图中单击回路0节点,在此定义回路名称。单击参数节点,在此设置回路参数,如果不需要比例作用,增益设置为0.0,如果不需要积分作用,积分时间设置为无穷大值INF,如果不需要微分作用,微分时间设置为0.0,采样时间是PID控制回路对反馈采样以及重新计算输出值的时间间隔,这里我们均采用默认值,后面在实验中进行自整定。


640.jpg

设置回路参数

   

单击输入节点,在此指定回路过程变量的标定方式,根据外接模拟量输入情况,类型选择単极型,标定选项中设置过程变量范围0到27648,对应回路设定值范围0.0到100.0,该值是给定值占过程变量量程的百分比,在本例中也可以认为是工程量温度值。


640.jpg

设置输入参数

   

点击输出节点,在此指定回路输出的标定方式,根据外接输出信号类型选择数字量,循环时间即PWM输出的周期,采用默认值0.1秒。


640.jpg

设置输出参数

   

单击报警节点,在此设定回路报警选项,启用下限报警、上限报警、模拟量输入错误报警,指定报警上下限值以百分比表示,以及模拟量输入模块连接到PLC的位置。


640.jpg

报警参数设置

   

单击代码节点,在此自定义向导生成的子程序和中断程序的名称,选择添加PID的手动控制,当处于手动模式时不执行PID计算,回路输出由程序控制。单击存储器分配节点,PID向导为完成PID运算需要120个字节的位存储器,为其指定起始地址,要保证程序中没有使用这些存储器,单击建议按钮向导将自动设定当前程序中未用的位存储器,这里我们采用VB0为起始地址。


640.jpg

添加PID手动控制

   

单击组件节点,在此列出了PID向导生成的组件,包括一个初始化PID的子程序、一个用于循环执行PID功能的中断程序、一个120个字节的数据页以及一个符号表,单击生成按钮完成PID向导配置,向导生成的项目组件添加到了项目中。


640.jpg

项目组件列表

   

查看向导生成的项目组件。在项目树中展开程序块下的向导文件夹,双击初始化PID子程序打开,该子程序是加密的,可以查看相关的子程序调用说明,变量表列出了子程序的接口参数定义,编程调用时可参考。双击PID功能中断子程序打开,该中断子程序也是加密的,请注意PID向导使用了定时中断0,编程时不能再使用此中断,否则会引起PID运行错误。


640.jpg

查看项目组件

   

展开符号表下的向导文件夹,双击PID符号表打开,在此可以查看PID回路相关参数的符号及地址信息,不可更改,编程时可参考。展开数据块下的向导文件夹,双击PID数据页打开,该数据页是加密的,在此可以查看PID回路的PID算法相关参数,这样PID向导就配置完成了。


640.jpg

PID符号表


   

在编程软件STEP7-Micro/WIN SMART的指令树中,展开调用子例程文件夹,选择初始化PID向导子程序拖放到主程序中,该子程序有多个接口参数,切换到该子程序窗口,程序注释中指出需要在每个扫描周期使用SM0.0从主程序中调用该子程序,变量表给出有关接口参数的含义和取值范围。


640.jpg

拖放初始化PID向导子程序

   

回到主程序窗口,使能端插入一个常开触点,输入地址SM0.0,过程变量参数处输入模拟量输入地址AIW20,设定值参数处输入VD200,Auto_Manual处输入M0.0,ManualOutput处输入50.0,表示用M0.0控制自动与手动模式。配置PID向导时我们已经设置回路为数字量输出,因此手动模式时PID输出占空比为百分之五十,如果配置向导时没有添加PID手动控制,这两项不会出现。


640.jpg

设置参数地址

   

Output处输入Q1.6,用PWM输出驱动加热装置,HighAlarm、LowAlarm、ModulError处输入满足高低限报警、模块错误报警条件时相应的输出标志位,如果在配置向导时没有启用这些报警功能,相应的项也不会出现,这里我们分别输入Q0.0、Q0.1、Q0.2。另外,打开PID向导生成的符号表,查看各回路参数的详细地址,从而可以使用程序、状态图表、或从HMI设备上修改PID参数值进行编程调试,例如标准化过程变量的地址为VD0,如果想要得到实际工程量,需要编写程序转换。


640.jpg

查看符号表

   

插入实数相乘指令,在IN1处输入地址VD0,IN2处输入100.0,OUT处输入地址VD204,该指令把标准化的过程变量转化成了实际温度值存放在VD204中。对使用的地址进行符号定义,如下图所示,这样通过调用PID向导生成的子程序使温度保持在给定值的程序就编写完成了,最后,保存编译项目。


640.jpg

编写程序


   

下面,我们来学习如何创建状态图表并利用状态图表来测试程序。首先我们来看一下如何创建状态图表。


640.jpg

复制所需的数据地址

 

创建状态图表。从符号表复制所需要监控的数据地址粘贴到状态图表中,切换寻址显示模式,设置合适的数据显示格式,如图所示,这样就快速创建了状态图表,单击保持按钮保存项目。


640.jpg

将数据地址粘贴到状态图表中并切换寻址显示模式


下载并测试。将项目下载到PLC中,将CPU置于RUN模式,在状态图表中持续监视,可以看到当前温度为30度左右,PID控制处于手动模式,加热器按照百分之五十的PWM工作。


640.jpg

状态图表中监视PID参数

 

温度持续升高,将给定值设置为80度,PID控制改为自动模式,温度向设定值方向变化,自动计算PID输出。


640.jpg

PID设为自动模式

   

修改PID控制参数,观察控制器及被控变量状态,实际调试时可以利用PID整定控制面板,以图形方式来直观查看,并自整定PID控制参数。


640.jpg

修改PID控制参数观察控制器及被控变量状态


   

接下来使用西门子S7-200 SMART PID整定控制面板自整定PID参数。首先我们介绍一下PID整定控制面板。左侧选择PID回路号,标定区域显示给定值、过程值、输出值以及高低限,均以百分比显示;图形显示区中用不同颜色的曲线显示了给定值、过程值以及输出值相对于时间的PID趋势图,其中过程值和给定值共用图形左侧的纵轴,输出使用图形右侧的纵轴;采样区域中采样时间是执行PID运算的时间间隔,只能在PID向导配置中更改,速率设置图形显示区所有显示值的采样更新速率,可以单击暂停按钮冻结图形、单击清除按钮清除图形;调节参数区域中显示增益、积分、微分参数的当前值,选择启用手动调节后在计算值列可以直接修改PID参数,在自动模式下单击启动按钮启动自整定,自整定完成后单击更新CPU按钮将自整定计算出的PID参数写入到CPU中;状态区域显示自整定过程状态。



PID整定控制面板

   

单击选项按钮打开自整定参数设置的高级选项对话框,选中自动计算值复选框,自整定将自动计算滞后值和偏差值,不选中此项可以自行指定这些值;滞后值规定了允许过程值偏离设定值的最大正负范围;偏差值决定了允许过程值偏离设定值的峰-峰值;初始输出步就是输出变化的第一步变化量,以实际输出量程的百分比表示;看门狗时间规定过程变量必须在此时间内达到或穿越设定值;动态响应字段中根据回路过程的控制要求可选择不同的响应类型。


640.jpg

高级选项

   

自整定。要使用PID控制面板必须与CPU通信,用PID向导配置生成一个PID回路,并将程序下载到CPU中,使CPU处于运行模式,在状态图表中将给定值设为60度,PID控制改为自动模式。


640.jpg


状态图表

   

在工具菜单功能区单击PID控制面板按钮,打开PID整定控制面板对话框,选择回路0,先启动手动调节,输入PID参数,如增益改为5.0,单击更新CPU,使新输入的参数值起作用,监视趋势图,根据调节状况改变PID参数直至调节稳定,即过程值与设定值接近,且输出没有不规律的变化,并最好处于控制范围中心附近,此时可将手动调节改为自动调节,即自整定。


640.jpg

手动调节改为自动调节

   

单击选项按钮,打开自整定参数设置高级选项,这里我们不做修改,单击启动按钮启动PID自整定功能,此时按钮变为停止,观察自整定过程状态,这时只需耐心等待,系统完成自整定后会自动将计算出的PID参数显示出来。请注意,要使用自整定功能必须保证PID回路处于自动模式,开始自整定后,给定值不能再改变。


640.jpg


完成自整定

   

当按钮再次变为启动时表示系统已经完成了自整定,单击更新CPU按钮,将PID自整定参数应用到PLC中。在状态图表中可以看到PID参数已经更新为新的整定参数。


640.jpg

参数已改变


相关文章
|
21天前
|
Linux Android开发
测试程序之提供ioctl函数应用操作GPIO适用于Linux/Android
测试程序之提供ioctl函数应用操作GPIO适用于Linux/Android
14 0
|
3天前
|
测试技术
LabVIEW程序测试
LabVIEW程序测试
|
11天前
|
监控 测试技术 持续交付
Python自动化测试代理程序可用性
总之,通过编写测试用例、自动化测试和设置监控系统,您可以确保Python自动化测试代理程序的可用性,并及时发现和解决问题。这有助于提供更可靠和高性能的代理服务。
16 4
|
14天前
|
DataWorks NoSQL 关系型数据库
DataWorks操作报错合集之在使用 DataWorks 进行 MongoDB 同步时遇到了连通性测试失败,实例配置和 MongoDB 白名单配置均正确,且同 VPC 下 MySQL 可以成功连接并同步,但 MongoDB 却无法完成同样的操作如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
30 1
|
18天前
|
JavaScript API
【vue】分环境构建(开发/测试/生产)配置
【vue】分环境构建(开发/测试/生产)配置
18 1
|
20天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(下)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
50 1
|
20天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(上)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
70 0
|
21天前
|
Linux 测试技术 Android开发
测试程序之UART 232/485适用于Android/Linux
测试程序之UART 232/485适用于Android/Linux
21 0
|
22天前
|
分布式计算 Hadoop Scala
Spark【环境搭建 01】spark-3.0.0-without 单机版(安装+配置+测试案例)
【4月更文挑战第13天】Spark【环境搭建 01】spark-3.0.0-without 单机版(安装+配置+测试案例)
25 0
|
22天前
|
关系型数据库 Java 测试技术
云效产品使用常见问题之流水线Maven单元测试链接rds要配置白名单如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。

热门文章

最新文章