版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、PLC编程的PID应用方法与技巧2018-07-02 13:07目前工业自动化水平已成为衡量各行各业现代化水平的一个重要标志。同时,控制理论的发展也经历了古典控制理论、现代控制理论和智能控制理论三个阶段。智能控制的典型实例是模糊全自动洗衣机等。自动控制系统可分为开环控制系统和闭环控制系统。一个控制系统包括控制器传感器、变送器、执行机构、输入输出接口。控制器的输出经过输出接口、执行机构,加到被控系统上;控制系统的被控量,经过传感器,变送器,通过输入接口送到控制器。不同的控制系统,其传感器、变送器、执行机构是不一样的。比如压力控制系统要采用压力传感器。电加热控制系统的传感器是温度传感器。目前,PI
2、D控制及其控制器或智能PID控制器(仪表)已经很多,产品已在工程实际中得到了广泛的应用,有各种各样的PID控制器产品,各大公司均开发了具有PID参数自整定功能的智能调节器(intelligent regulator),其中PID控制器参数的自动调整是通过智能化调整或自校正、自适应算法来实现。有利用PID控制实现的压力、温度、流量、液位控制器,能实现PID控制功能的可编程控制器(PLC),还有可实现PID控制的PC系统等等。可编程控制器(PLC) 是利用其闭环控制模块来实现PID控制,而可编程控制器(PLC)可以直接与ControlNet相连,如Rockwell的PLC-5等。还有可以实现PID
3、控制功能的控制器,如Rockwell 的Logix产品系列,它可以直接与ControlNet相连,利用网络来实现其远程控制功能。下面介绍一下西门子PLC的PID控制方法及原理1 引言在工业生产中,常需要用闭环控制方式来实现温度、压力、流量等连续变化的模拟量控制。无论使用模拟控制器的模拟控制系统,还是使用计算机(包括PLC)的数字控制系统,PID控制都得到了广泛的应用。PID控制器是比例积分微分控制的简称,具有(1) 不需要精确的控制系统数学模型;(2) 有较强的灵活性和适应性;(3) 结构典型、程序设计简单,工程上易于实现,参数调整方便等优点。积分控制可以消除系统的静差,微分控制可以改善系统的
4、动态相应速度,比例、积分、微分三者有效地结合可以满足不同的控制要求。2 PLC实现PID的控制方式2.1 PID过程控制模块这种模块的PID控制程序是PLC生产厂家设计的,并存放在模块中,用户使用时序要设置一些参数,使用起来非常方便,一个模块可以控制几路甚至几十路闭环回路。2.2 PID功能指令现在很多PLC都有供PID控制用的功能指令,如S7-200的PID指令。它们实际上是用于PID控制的子程序,与模拟量输入/输出模块一起使用,可以得到类似于使用PID过程控制模块的效果。2.3 用自编的程序实现PID闭环控制有的PLC没有PID过程控制模块和PID控制用的功能指令,有时虽然可以使用PID控
5、制指令,但是希望采用某种改进的PID控制算法。在上述情况下都需要用户自己编制PID控制程序。3 PLC-PID控制器的实现本文以西门子S7-200PLC为例,说明PID控制的原理及PLC的PID功能指令的使用及控制功能的实现。3.1 PID控制器的数字化PLC的PID控制器的设计是以连续系统的PID控制规律为基础,将其数字化写成离散形式的PID控制方程,再跟据离散方程进行控制程序设计。在连续系统中,典型的PID闭环控制系统如图1所示。图1中sp(t)是给定值,pv(t)是反馈量,c(t)是系统的输出量,PID控制的输入输出关系式为:式中:M(t)控制器的输出量,M0为输出的初始值;e(t)=s
6、p(t)-pv(t)误差信号;KC比例系数;TI积分时间常数;TD微分时间常数。图1 连续闭环控制系统方框图式(1)的右边前3项分别是比例、积分、微分部分,它们分别与误差,误差的积分和微分成正比。如果取其中的一项或两项,可以组成P、PD或PI控制器。假设采样周期为TS,系统开始运行的时刻为t0,用矩形积分来近似精确积分,用差分近似精确微分,将公式1离散化,第n次采样时控制器的输出为: (2)式中:en-1第n-1次采样时的误差值;KI积分系数;KD微分系数。基于PLC的闭环控制系统如图2所示。图中的虚线部分在PLC内。其中spn、pvn、en、Mn分别为模拟量在sp(t)、pv(t)、e(t)
7、、M(t)在第n次采样时的数字量。图2 PLC闭环控制系统方框图在许多控制系统内,可能只需要P、I、D中的一种或两种控制类型。如可能只要求比例控制或比例与积分控制,通过设置参数可对回路进行控制类型进行选择。3.2 输入输出变量的转换PID控制有两个输入量:给定值(sp)和过程变量(pv)。多数工艺要求给定值是固定的值,如加热炉温度的给定值。过程变量是经A/D转换和计算后得到的被控量的实测值,如加热炉温度的测量值。给定值与过程变量都是与被控对象有关的值,对于不同的系统,它们的大小、范围与工程单位有很大的区别。应用PLC的PID指令对这些量进行运算之前,必须将其转换成标准化的浮点数(实数)。同样,
8、对于PID指令的输出,在将其送给D/A转化器之前,也需进行转换。3.3 回路输入的转换转换的第一步是将给定值或A/D转换后得到的整数值由16位整数转换成浮点数,可用下面的程序实现这种转换:XORD AC0, ACO/清除累加器MOVW AIWO, AC0/将待转化的模拟量存入累加器LDW AC0, 0/如果模拟量数值为正JMP 0/直接转换成实数ORD 16#FFFF0000, ACO/将AC0内的数值进行符号扩展,扩展为32位负数LBL 0DTR AC0, AC0/将32位整数转换成实数转换的下一步是将实数进一步转换成0.01.0之间的标准化实数,可用下面的式(3)对给定值及过程变量进行标准
9、化:RNorm=(RRaw/Span)+Offset (3)式中:RNorm标准化实数值;RRaw标准化前的值;Offset偏移量,对单极性变量为0.0,对双极性变量为0.5;Span取值范围,等于变量的最大值减去最小值,单极性变量的典型值为32000,双极性变量的典型值为64000。下面的程序将上述转换后得到的AC0中的双极性实数(其Span=64000)转换成0.01.0之间的实数:/R 64000.0, AC0/累加器中的实数标准化R 0.5, AC0/加上偏移值,使其在0.01.0之间MOVR ACO, VD100/加标准化后的值存入回路表内3.4 回路输出的转换回路输出即PID控制器
10、输出,它是标准化的0.01.0之间的实数。将回路输出送给D/A转换器之前,必须转换成16位二进制整数。这一过程是将pv与sp转换成标准化数值的逆过程。用下面的公式将回路输出转换成实数:RScal=(MnOffset)Span (4)式中,RScal是回路输出对应的实数值,Mn是回路输出标准化的实数值。下面的程序用来将回路输出转换为对应的实数:MOVR VD108, AC0/将回路输出送入累加器-R 0.5, AC0/仅双极性数才有此语句*R 64000.0, AC0/单极性变量乘以32000.0用下面的指令将代表回路输出的实数转换成16位整数:ROUND AC0, AC0/将实数转换为32位整
11、数MOVW AC0, AQW0/将16位整数写入模拟输出(D/A)寄存器3.5 PID指令及回路表S7-200的PID指令如图3所示:图3 PID指令指令中TBL是回路表的起始地址,LOOP是回路的编号。编译时如果指令指定的回路表起始地址或回路号超出范围,CPU将生成编译错误(/范围错误)仪器编译失败。PID指令对回路表中的某些输入值不进行范围检查,应保证过程变量、给定值等不超限。回路表参见附表。附表 PID指令的回路表如果PID指令中的算术运算发生错误,特殊存储器SMI.1(溢出或非法数值)被置1,并将终止PID指令的执行。要想消除错误,在下次执行PID运算之前,应改变引起运算错误的输入值,
12、而不是更新输出值。4 PID指令编程举例某一水箱里的水以变化速度流出,一台变频器驱动的水泵给水箱打水,以保持水箱的水位维持在满水位的75。过程变量由浮在水面上的水位测量仪提供,PID控制器的输出值作为变频器的速度给定值。过程变量与回路输出均为单极性模拟量,取值范围为0.01.0。本例采用PI控制器,给定值为0.75,选取控制器参数的初始值为:KC0.25,TS0.1s,TI30min。编程如下:/主程序(OBI)LD SM0.1 /首次扫描时CALL 0 /调用初始化子程序/子程序LD SM0.0MOVR 0.75, VD104 /装入给定值75MOVR 0.25, VD112 /装入回路增益
13、0.25MOVR 0.10, VD116 /装入采样时间0.1sMOVR 30.0 VD120 /装入积分时间30minMOVR 0.0, VD124 /关闭微分作用MOVB 100, SMB34/设置定时中断0的时间间隔为100msATCH 0, 10/设定定时中断以执行PID指令ENI/允许中断,子程序0结束/中断程序0LD SM0.0LTD AIW0, AC0/单极性模拟量经A/D转换后存入累加器DTR AC0, AC0/32位整数转换为实数/R 32000.0, AC0/标准化累加器中的实数MOVR AC0, VD100 /存入回路表LD 10.0/在自动方式下,执行PID指令PID
14、VB100, 0/回路表的起始地址为VB100,回路号为0LD SM0.0MOVB VD108, AC0/PID控制器的输出值送入累加器*R 32000.0 AC0/将累加器中的数值标准化ROUND AC0, AC0/实数转换为32位整数DTI AC0, AQW0/将16位整数写入到模拟量输出(D/A)寄存器5、使用S7-200PID功能实现温度自动控制的例子工具/原料S7-200 cpu224XP EM231热电阻模块 PT100传感器 晶闸管三相调压器、电加热丝S7-200编程软件、电脑及PLC编程电缆方法/步骤本例中首先采用PT100(量程-20300)采集加热温度,用EM231热电阻模
15、块采集PT100数据。PT100接线方式:用CPU224XP模拟量输出给晶闸管(0-10V),控制晶闸管输出从而控制温度的大小,本例中的PID控制即:采集加热环境中的温度,经过PLC的PID运算使用模拟量输出信号控制晶闸管实现温度的自动控制。下面通过PLC编程软件中的PID编程向导编写PLC程序,首先,在工具中选择指令向导,选择PID,点击下一步选择PID回路数,S7-200有8路PID回路,本例使用PID0回路,点击下一步:图中 1、2处设定给定值范围,我们设置成PT100采集温度值的范围。3/4/5/6为回路参数设置,在设置向导的时候我们先使用默认值,在进行PID整定后再做调整,点击下一步:图中a设置PT100反馈值的范围,b设置模拟量输出量程范围。点击下一步:回路报警设置,默认设置,点击下一步,点击建议地址(这个地址是PID子程序用的地址,点击一下建议地址即可),注意这个地址不要跟程序其它地址冲突。下一步:为PID子程序和中断程序命名,增加手动PID控制。点击完成向导,即可。此时PID向导已经完成,要想实现控制还得把P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026云南德宏职业学院引进研究生2人(第二批)农业考试模拟试题及答案解析
- 2026年山东铁投集团校园招聘(45人)农业笔试备考题库及答案解析
- 2026中国农业科学院农业质量标准与检测技术研究所招聘编制外人员2人告农业笔试模拟试题及答案解析
- 2026年安徽财贸职业学院高技能人才招聘10名农业考试备考题库及答案解析
- 2026重庆市荣昌区工商业联合会招聘公益性岗位人员1人农业笔试备考题库及答案解析
- 2026中国药科大学继续教育学院人员招聘1人(江苏)农业考试备考题库及答案解析
- 邛崃市2026年“蓉漂人才荟”公开招聘事业单位工作人员补充农业笔试模拟试题及答案解析
- 2026年西安市未央区社区工作者招聘考试备考题库及答案解析
- 2026新疆巴音郭楞职业技术学院编外聘用人员招聘30人农业笔试备考题库及答案解析
- 2026江苏泰州市靖江市人民医院招聘临时工4名农业考试模拟试题及答案解析
- 苏教版二年级下册数学课后辅导计划
- T-CFLP 0016-2023《国有企业采购操作规范》【2023修订版】
- 无人机足球课件
- 太极42式教学课件
- 第4课 数据的安全 课件 2025-2026学年四年级上册信息技术浙教版
- 江苏建安码管理办法
- 社保挂靠终止协议书范本
- 成人继续教育函授毕业生自我鉴定范文
- 专利撰写培训课件
- 设备归属权协议书
- 新点清单造价江苏版操作视频讲稿
评论
0/150
提交评论