精心编制的S7300PID使用说明解析.docx
- 文档编号:25061668
- 上传时间:2023-06-04
- 格式:DOCX
- 页数:33
- 大小:194.28KB
精心编制的S7300PID使用说明解析.docx
《精心编制的S7300PID使用说明解析.docx》由会员分享,可在线阅读,更多相关《精心编制的S7300PID使用说明解析.docx(33页珍藏版)》请在冰豆网上搜索。
精心编制的S7300PID使用说明解析
定时中断组织块OB35
西门子S7-300/400有9个定时中断组织块:
OB30、OB31、OB32、OB33、OB34、OB35、OB36、OB37、OB38。
CPU可以定时中断去执行这些模块中的程序,即:
每隔一段时间就停止当前的程序,转去执行定时中断组织块中的程序,执行结速后再返回。
相当于单片机的定时中断。
这9个组织块功能相同,你可以选择其中之一使用,区别是它们的中断优先级不同,如果程序中用到了多个定时中断组织块,应设好它们的执行优先级。
S7-300CPU可用的定时中断组织模块是OB35,在300站点的硬件组态中,打开CPU属性设置可以看到其它的中断组织块为灰色。
OB35默认的调用时间间隔为100ms我们可以根据需要更改,定时范围是1-60000毫秒(ms)
设置中断时间间隔如下图所示
注意:
设置的时间必须大于OB35中程序执行所花费的时间。
例如:
如果中断时间间隔为50ms而OB35中的程序花费的时间是70ms,那么OB35中的程序还没执行完毕就产生第二次中断,程序就会出错,这显然是我们不想看到的结果。
以现在的技术,让你间隔一小时去月球拿一块石头你能做到吗?
?
?
去月球所用的时间大于去月球的时间间隔,你做不到吧?
?
?
正确设置:
中断时间间隔大于OB35中程序执行完毕一次所需的时间
使用FB41实现PID控制
在自动化领域中常常要用到PID控制,而常规仪表里一个控制器就只能实现一路的PID控制,如果要现实多路的PID控制成本就会变得非常高,而且不便于我们集中控制与管理。
经过学习西门子S7-300PLC,我们可以使用模块FB41来实现PID控制,FB41就相当于我们常规仪表里的控制器,既然是PID控制器就应该能够设定P、I、D参数。
即:
比例度、积分时间、微分时间。
常规仪表的面板上可以更改PID参数,又有手动/自动切换按钮等。
今天我们要做的就是使用S7-300PLC的FB41来代替常规仪表,如何使用FB41来实现PID控制的呢?
?
FB41是一个功能块,它所能实现的功能(PID)已经由专业人员设计好,我们只要调用它,并根据我们的需要来更改相应的参数即可使用。
所以我们不用理会FB41是如何实现比例运算、积分运算、微分运算等等这些问题,只需要会调用就可以了。
现在我们已经知道FB41就相当于常规仪表里的一个控制器了,那么我们是如何使用FB41并给它设置相应的参数呢?
?
FB41相当于一个子程序,它是用来实现PID运算的,我们只需要每隔一段时间去调用这一“子程序”就可以实现PID控制。
所以我们在OB35里调用FB41就可以了,调用的频率可以在属性里面设置。
我们是在OB35里调用FB41的所以在OB35里可以看到FB41的端口。
因此可以直接在这些端口上直接设参数。
如下图所示
到这里有人会问,既然可以在OB35里面可以直接给FB41端口赋参数,为什么还要背景数据块DB呢?
?
?
其实PLC在运行过程中会先检查,用户有没有在OB35里给FB41的端口设参数,如果有就直接使用端口上的参数,如果没有就到背景数据表里面去取参数。
所以我们可以在两个地方设置参数,在数据表里面参数只能是一个固定值,不能是一个变量,所以当程序
下载到PLC之后就不能更改数据表里面的参数了。
给端口赋参数是一个变量,变量里面存有参数,当我们需要改变参数只需要改变相应的变量就只以了。
结合两种方法的优缺点,我们可以同时在两个地方设参数,有些参数不需要经常改变的,我们就直接在DB里面设定。
要经常改变的参数就在FB41的端口上设定。
经过这一节我们已经对FB41有了一个基本的认识了,下一节我们讲如何使用,欢迎你观看下一节。
FB41背景数据块参数设置
使用FB41作PID控制时,设置参数非常烦琐,下面是单回路PID控制的参数设置实例,在表格第三列有的就是我们需要设置的,空白的我们就不用改变,按默认值就可以了。
参数
描述
设置实例
COM_RST
完全重启动
FALSE
MAN_ON
手动/自动
PVPER_ON
测量值选择
FALSE
P_SEL
比例输出开关
TRUE
I_SEL
积分输出开关
TRUE
IN_HOLD
积分输出冻结
I_ITL_ON
积分初始化
D_SEL
微分输出开关
CYCLE
采样量时,条件CYCLE>=1ms
100ms
SP_INT
给定值
在引脚中设置
PV_IN
测量值1
在引脚中设置
PV_PER
测量值2
MAN
手动值
GAIN
比例增益
按默认
TI
积分时间,条件TI>=CYCLE
按默认
TD
微分时间,条件TD>=CYCLE
TM_LAG
微分作用时滞时间,
条件TM_LAG>=CYCLE/2
DEADB_W
死区宽度
LMN_HLM
控制器输出上限
LMN_LLM
控制器输出下限
PV_FAC
过程变量因子
PV_OFF
过程变量偏移
LMN_FAC
控制器输出因子
LMN_OFF
控制器输出偏移
I_ITLVAL
积分初始化值
DISV
扰动量(前馈控制系统中才用到)
LMN
控制器输出值
在引脚中设置
LMN_PER
控制器输出值(格式化后)
QLMN_HLM
达到上限
QLMN_LLM
达到下限
LMN_P
比例分量输出
LMN_I
积分分量输出
LMN_D
微分分量输出
PV
测量值输出
ER
实际误差
关于FB41块的各个管脚的功能
A:
所有的输入参数:
COM_RST:
BOOL:
重新启动PID:
当该位TURE时:
PID执行重启动功能,复位PID内部参数到默认值;通常在系统重启动时执行一个扫描周期,或在PID进入饱和状态需要退出时用这个位;
MAN_ON:
BOOL:
手动值ON;当该位为TURE时,PID功能块直接将MAN的值输出到LMN,这可以在PID框图中看到;也就是说,这个位是PID的手动/自动切换位;
PEPER_ON:
BOOL:
过程变量外围值ON:
过程变量即反馈量,此PID可直接使用过程变量PIW(不推荐),也可使用 PIW规格化后的值(常用),因此,这个位为FALSE;
P_SEL:
BOOL:
比例选择位:
该位ON时,选择P(比例)控制有效;一般选择有效;
I_SEL:
BOOL:
积分选择位;该位ON时,选择I(积分)控制有效;一般选择有效;
INT_HOLD BOOL:
积分保持,不去设置它;
I_ITL_ON BOOL:
积分初值有效,I-ITLVAL(积分初值)变量和这个位对应,当此位ON时,则使用I-ITLVAL变量积分初值。
一般当发现PID功能的积分值增长比较慢或系统反应不够时可以考虑使用积分初值;
D_SEL :
BOOL:
微分选择位,该位ON时,选择D(微分)控制有效;一般的控制系统不用;
CYCLE :
TIME:
PID采样周期,一般设为200MS;
SP_INT:
REAL:
PID的给定值;
PV_IN :
REAL:
PID的反馈值(也称过程变量);
PV_PER:
WORD:
未经规格化的反馈值,由PEPER-ON选择有效;(不推荐)
MAN :
REAL:
手动值,由MAN-ON选择有效;
GAIN :
REAL:
比例增益;
TI :
TIME:
积分时间;
TD :
TIME:
微分时间;
TM_LAG:
TIME:
和微分有关;
DEADB_W:
REAL:
死区宽度;如果输出在平衡点附近微小幅度振荡,可以考虑用死区来降低灵敏度;
LMN_HLM:
REAL:
PID上极限,一般是100%;
LMN_LLM:
REAL:
PID下极限;一般为0%,如果需要双极性调节,则需设置为-100%;(正负10V输出就是典型的双极性输出,此时需要设置-100%);
PV_FAC:
REAL:
过程变量比例因子
PV_OFF:
REAL:
过程变量偏置值(OFFSET)
LMN_FAC:
REAL:
PID输出值比例因子;
LMN_OFF:
REAL:
PID输出值偏置值(OFFSET);
I_ITLVAL:
REAL:
PID的积分初值;有I-ITL-ON选择有效;
DISV :
REAL:
允许的扰动量,前馈控制加入,一般不设置;
B:
部分输出参数说明:
LMN :
REAL:
PID输出;
LMN_P :
REAL:
PID输出中P的分量;(可用于在调试过程中观察效果)
LMN_I :
REAL:
PID输出中I的分量;(可用于在调试过程中观察效果)
LMN_D :
REAL:
PID输出中D的分量;(可用于在调试过程中观察效果)
非常实用的pid参数整定:
FB41的PID:
一、在ob35里面插入FB41,方框顶上会有红字,输入一个类似“DB120”的,系统会问你要不要生成这个Db,yes就可以
二、大部分参数不要填,默认就行,下面是常用参数,用变量连接:
1、MAN_ON:
用一个bool量,如m0.0,为true则手动,为false则自动;
2、cycle:
T#100MS,这个值与ob35默认的100ms一致;
3、SP_INT:
MD2,是hmi发下来的设定值,0-100.0的范围,real型;
4、PV_IN:
md6,实际测量值,比如压力,要从piw×××转换为0-100.0的量程;
5、MAN:
MD10,op值,也就是手动状态下的阀门输出,real型,0-100.0的范围;
6、GAIN:
md14,Pid的P啊,默认写1-2吧(系统默认是2),调试的时候再改
7、TI:
MW20,pid的i啊.默认写T#30S吧,调试的时候改;
8、DEAD_W:
md22,死区,就是sp和pv的偏差死区,0-100.0的范围,默认0,调试的时候改;
输出:
9、LMN:
MD26,0-100。
0,最终再用fc106转换为word型move到pqw×××,如果pid运算结果不再有工艺条件其他限制可以用LMN_PER更简单就不用fc106了。
三、用plcsim模拟
1、手动
man_on=true,看输出是否等于man;
2、自动
man_on=false,调整pv或者sp,使得有偏差大于死区,看输出变化,这里的模拟只能说明pid工作了,不能测试实际调节效果啊。
3、如果需要反作用,有三种方法:
a、pv和sp颠倒输入
b、p值用负的
c、输出用100减
PID常用口诀:
参数整定找最佳,从小到大顺序查,先是比例后积分,最后再把微分加,曲线振荡很频繁,比例度盘要放大,曲线漂浮绕大湾,比例度盘往小扳,曲线偏离回复慢,积分时间往下降,曲线波动周期长,积分时间再加长,曲线振荡频率快,先把微分降下来,动差大来波动慢,微分时间应加长,理想曲线两个波,前高后低4比1
目前工业自动化水平已成为衡量各行各业现代化水平的一个重要标志。
同时,控制理论的发展也经历了古典控制理论、现代控制理论和智能控制理论三个阶段。
智能 控制的典型实例是模糊全自动洗衣机等。
自动控制系统可分为开环控制系统和闭环控制系统。
一个控制系统包括控制器、传感器、变送器、执行机构、输入输出接 口。
控制器的输出经过输出接口、执行机构,加到被控系统上;控制系统的被控量,经过传感器,变送器,通过输入接口送到控制器。
不同的控制系统,其传感器、 变送器、执行机构是不一样的。
比如压力控制系统要采用压力传感器。
电加热控制系统的传感器是温度传感器。
目前,PID控制及其控制器或智能PID控制器 (仪表)已经很多,产品已在工程实际中得到了广泛的应用,有各种各样的PID控制器产品,各大公司均开发了具有PID参数自整定功能的智能调节器 (intelligent regulator),其中PID控制器参数的自动调整是通过智能化调整或自校正、自适应算法来实现。
有利用PID控制实现的压力、温度、流量、液位控制 器,能实现PID控制功能的可编程控制器(PLC),还有可实现PID控制的PC系统等等。
可编程控制器(PLC) 是利用其闭环控制模块来实现PID控制,而可编程控制器(PLC)可以直接与ControlNet相连,如Rockwell的PLC-5等。
还有可以实现 PID控制功能的控制器,如Rockwell 的Logix产品系列,它可以直接与ControlNet相连,利用网络来实现其远程控制功能。
1、开环控制系统
开环控制系统(open-loop control system)是指被控对象的输出(被控制量)对控制器(controller)的输出没有影响。
在这种控制系统中,不依赖将被控量反送回来以形成任何闭环回路。
2、闭环控制系统
闭环控制系统(closed-loop control system)的特点是系统被控对象的输出(被控制量)会反送回来影响控制器的输出,形成一个或多个闭环。
闭环控制系统有正反馈和负反馈,若反馈信号与系 统给定值信号相反,则称为负反馈( Negative Feedback),若极性相同,则称为正反馈,一般闭环控制系统均采用负反馈,又称负反馈控制系统。
闭环控制系统的例子很多。
比如人就是一个具有负反馈 的闭环控制系统,眼睛便是传感器,充当反馈,人体系统能通过不断的修正最后作出各种正确的动作。
如果没有眼睛,就没有了反馈回路,也就成了一个开环控制系 统。
另例,当一台真正的全自动洗衣机具有能连续检查衣物是否洗净,并在洗净之后能自动切断电源,它就是一个闭环控制系统。
3、阶跃响应
阶跃响应是指将一个阶跃输入(step function)加到系统上时,系统的输出。
稳态误差是指系统的响应进入稳态后,系统的期望输出与实际输出之差。
控制系统的性能可以用稳、准、快三个字 来描述。
稳是指系统的稳定性(stability),一个系统要能正常工作,首先必须是稳定的,从阶跃响应上看应该是收敛的;准是指控制系统的准确性、控 制精度,通常用稳态误差来(Steady-state error)描述,它表示系统输出稳态值与期望值之差;快是指控制系统响应的快速性,通常用上升时间来定量描述。
4、PID控制的原理和特点
在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。
PID控制器问世至今已有近70年历史,它 以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。
当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的 其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。
即当我们不完全了解一个系统和被控对象,或 不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。
PID控制,实际中也有PI和PD控制。
PID控制器就是根据系统的误差,利用比例、 积分、微分计算出控制量进行控制的。
比例(P)控制
比例控制是一种最简单的控制方式。
其控制器的输出与输入误差信号成比例关系。
当仅有比例控制时系统输出存在稳态误差(Steady-state error)。
积分(I)控制
在积分控制中,控制器的输出与输入误差信号的积分成正比关系。
对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的 或简称有差系统(System with Steady-state Error)。
为了消除稳态误差,在控制器中必须引入“积分项”。
积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。
这样,即便误差很小,积 分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。
因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳 态误差。
微分(D)控制
在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。
自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。
其原因是由于存在有较大惯性组件(环节)或有滞后(delay)组件,具有抑制误差的作用, 其变化总是落后于误差的变化。
解决的办法是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。
这就是说,在控制器中仅引入 “比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能 够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。
所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在 调节过程中的动态特性。
5、PID控制器的参数整定
PID控制器的参数整定是控制系统设计的核心内容。
它是根据被 控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小。
PID控制器参数整定的方法很多,概括起来有两大类:
一是理论计算整定法。
它主要是 依据系统的数学模型,经过理论计算确定控制器参数。
这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进行调整和修改。
二是工程整定方法,它主 要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。
PID控制器参数的工程整定方法,主要有临界比例法、反应 曲线法和衰减法。
三种方法各有其特点,其共同点都是通过试验,然后按照工程经验公式对控制器参数进行整定。
但无论采用哪一种方法所得到的控制器参数,都需 要在实际运行中进行最后调整与完善。
现在一般采用的是临界比例法。
利用该方法进行 PID控制器参数的整定步骤如下:
(1)首先预选择一个足够短的采样周期让系统工作;
(2)仅加入比例控制环节,直到系统对输入的阶跃响应出现临界振荡, 记下这时的比例放大系数和临界振荡周期;(3)在一定的控制度下通过公式计算得到PID控制器的参数。
在实际调试中,只能先大致设定一个经验值,然后根据调节效果修改。
对于温度系统:
P(%)20--60,I(分)3--10,D(分)0.5--3
对于流量系统:
P(%)40--100,I(分)0.1--1
对于压力系统:
P(%)30--70,I(分)0.4--3
对于液位系统:
P(%)20--80,I(分)1--5
参数整定找最佳,从小到大顺序查
先是比例后积分,最后再把微分加
曲线振荡很频繁,比例度盘要放大
曲线漂浮绕大湾,比例度盘往小扳
曲线偏离回复慢,积分时间往下降
曲线波动周期长,积分时间再加长
曲线振荡频率快,先把微分降下来
动差大来波动慢。
微分时间应加长
理想曲线两个波,前高后低4比1
一看二调多分析,调节质量不会低
FB41称为连续控制的PID用于控制连续变化的模拟量,与FB42的差别在于后者是离散型的,用于控制开关量,其他二者的使用方法和许多参数都相同或相似。
PID的初始化可以通过在OB100中调用一次,将参数COM-RST置位,当然也可在别的地方初始化它,关键的是要控制COM-RST;
PID的调用可以在OB35中完成,一般设置时间为200MS,
一定要结合帮助文档中的PID框图研究以下的参数,可以起到事半功倍的效果
以下将重要参数用黑体标明.如果你比较懒一点,只需重点关注黑体字的参数就可以了。
其他的可以使用默认参数。
A:
所有的输入参数:
COM_RST:
BOOL:
重新启动PID:
当该位TURE时:
PID执行重启动功能,复位PID内部参数到默认值;通常在系统重启动时执行一个扫描周期,或在PID进入饱和状态需要退出时用这个位;
MAN_ON:
BOOL:
手动值ON;当该位为TURE时,PID功能块直接将MAN的值输出到LMN,这可以在PID框图中看到;也就是说,这个位是PID的手动/自动切换位;
字串7
PEPER_ON:
BOOL:
过程变量外围值ON:
过程变量即反馈量,此PID可直接使用过程变量PIW(不推荐),也可使用 PIW规格化后的值(常用),因此,这个位为FALSE;
P_SEL:
BOOL:
比例选择位:
该位ON时,选择P(比例)控制有效;一般选择有效;
I_SEL:
BOOL:
积分选择位;该位ON时,选择I(积分)控制有效;一般选择有效;
INT_HOLD BOOL:
积分保持,不去设置它;
I_ITL_ON BOOL:
积分初值有效,I-ITLVAL(积分初值)变量和这个位对应,当此位ON时,则使用I-ITLVAL变量积分初值。
一般当发现PID功能的积分值增长比较慢或系统反应不够时可以考虑使用积分初值;
D_SEL :
BOOL:
微分选择位,该位ON时,选择D(微分)控制有效;一般的控制系统不用;
CYCLE :
TIME:
PID采样周期,一般设为200MS;
SP_INT:
REAL:
PID的给定值;
PV_IN :
REAL:
PID的反馈值(也称过程变量);
PV_PER:
WORD:
未经规格化的反馈值,由PEPER-ON选择有效;(不推荐)
字串4
MAN :
REAL:
手动值,由MAN-ON选择有效;
GAIN :
REAL:
比例增益;
TI :
TIME:
积分时间;
TD :
TIME:
微分时间;
TM_LAG:
TIME:
微分操作的延迟时间输入;
DEADB_W:
REAL:
死区宽度;如果输出在平衡点附近微小幅度振荡,可以考虑用死区来降低灵敏度;
LMN_HLM:
REAL:
PID上极限,一般是100%;
LMN_LLM:
REAL:
PID下极限;一般为0%,如果需要双极性调节,则需设置为-100%;(正负10V输出就是典型的双极性输出,此时需要设置-100%);
PV_FAC:
REAL:
过程变量比例因子
PV_OFF:
REAL:
过程变量偏置值(OFFSET)
LMN_FAC:
REAL:
PID输出值比例因子;
LMN_OFF:
REAL:
PID输出值偏置值(OFFSET);
I_ITLVAL:
REAL:
PID的积分初值;有I-ITL-ON选择有效;
DISV :
REAL:
允许的扰动量,前馈控制加入,一般不设置;
字串4
B:
部分输出参数说明:
LMN :
REAL:
PID输出;
LMN_P :
REAL:
PID输出中P的分量;(可用于在调试过程中观察效果)
LMN_I :
REAL:
PID输出中I的分量;(可用于在调试过程中观察效果)
LMN_D :
REAL:
PID输出中D的分量;(可用于在调试过程中观察效果)
C:
规格化概念及方法:
PID参数中重要的几个变量,给定值,反馈值和输出值都是用0.0~1.0之间的实数表示,
而这几个变量在实际中都是来自与模拟输入,或者输出控制模拟量的
因此,需要将模拟输出转换为0.0~1.0的数据,或将0.0~1.0的数据转换为模拟输出,这个过程称为规格化
规格化的方法:
(即变量相对所占整个值域范围内的百分比 对应与27648数字量范
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精心 编制 S7300PID 使用说明 解析