西门子S7-300PID的FB41 CONT_C功能及参数设定

合集下载

S7-300的PID控制

S7-300的PID控制

使用FB41实现PID控制在自动化领域中常常要用到PID控制,而常规仪表里一个控制器就只能实现一路的PID 控制,如果要现实多路的PID控制成本就会变得非常高,而且不便于我们集中控制与管理。

经过学习西门子S7-300PLC,我们可以使用模块FB41来实现PID控制,FB41就相当于我们常规仪表里的控制器,既然是PID控制器就应该能够设定P、I、D参数。

即:比例度、积分时间、微分时间。

常规仪表的面板上可以更改PID参数,又有手动/自动切换按钮等。

今天我们要做的就是使用S7-300PLC 的FB41来代替常规仪表,如何使用FB41来实现PID控制的呢??FB41是一个功能块,它所能实现的功能(PID)已经由专业人员设计好,我们只要调用它,并根据我们的需要来更改相应的参数即可使用。

所以我们不用理会FB41是如何实现比例运算、积分运算、微分运算等等这些问题,只需要会调用就可以了。

现在我们已经知道FB41就相当于常规仪表里的一个控制器了,那么我们是如何使用FB4 1并给它设置相应的参数呢??FB41相当于一个子程序,它是用来实现PID运算的,我们只需要每隔一段时间去调用这一“子程序”就可以实现PID控制。

所以我们在OB35里调用FB41就可以了,调用的频率可以在属性里面设置。

我们是在OB35里调用FB41的所以在OB35里可以看到FB41的端口。

因此可以直接在这些端口上直接设参数。

如下图所示到这里有人会问,既然可以在OB35里面可以直接给FB41端口赋参数,为什么还要背景数据块DB呢???其实PLC在运行过程中会先检查,用户有没有在OB35里给FB41的端口设参数,如果有就直接使用端口上的参数,如果没有就到背景数据表里面去取参数。

所以我们可以在两个地方设置参数,在数据表里面参数只能是一个固定值,不能是一个变量,所以当程序下载到PLC之后就不能更改数据表里面的参数了。

给端口赋参数是一个变量,变量里面存有参数,当我们需要改变参数只需要改变相应的变量就只以了。

S7300FB41 PID参数如何设置

S7300FB41 PID参数如何设置

S7-300 FB41 PID参数如何设置?来源:作者:时间:2008-02-03 点击:145PID 没有例程和经验值可参考,每个设备都不同,都需要根据现场的设备去调试。

有时同样的两套设备P、I、D参数都会不同。

所以PID 的参数也需要根据实际情况一点点试。

下面的步骤仅供参考。

PID的调用要在OB35中完成.在ob35里面插入FB41,方框顶上会有红字,输入一个DB块如“DB20”。

系统会问你要不要生成这个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×××转换为实际的工程量(使用FC105);5、MAN:MD10 (该地址也可以是从上位机设定的地址),是手动状态下的输入值,real型。

手动设多少输出将为多少。

6、GAIN: MD100(该地址也可以是从上位机设定的地址如DB 块的地址,这样可以从上位机设P 参数了),默认写1-2吧(系统默认是2),调试的时候再改。

7、TI:MW120, 默认可以写T#30S吧,调试的时候改;8、DEAD_W:MD122,死区,就是sp和pv的偏差死区,0-100.0的范围,默认0,调试的时候改;输出:9、LMN:MD126,把MD126再用fc106转换到pqw××,如果pid运算结果不再有工艺条件其他限制可以用LMN_PER更简单就不用fc106了。

三、用plcsim模拟1、手动man_on=true,看输出是否等于man;2、自动man_on=false,调整pv或者sp,使得有偏差大于死区,看输出变化,这里的模拟只能说明pid工作了,不能测试实际调节效果啊。

FB41基本使用方法

FB41基本使用方法

FB41(CONT_C)基本使用FB41“CONT_C”用于在SIMATIC S7可编程控制器上,控制带有连续输入和输出变量的工艺过程。

在参数分配期间,用户可以激活或取消激活PID控制器的部分功能,如积分冻结等,以使控制器适合实际的工艺过程。

FB41“CONT_C”可以将控制器用作PID固定设定值控制器,或者在多回路控制中用作级联、混合或比率控制器。

控制器的功能基于采样控制器的PID控制算法,采样控制器带有一个模拟信号;如果需要的话,还可以扩展控制器的功能,增加一个脉冲生成器环节,以产生脉宽调制的输出信号,用于带有比例执行器的两步或三步控制器。

FB41“CONT_C”必须在OB定时中断内调用,并将CYCLE(采样时间)管脚的调用时间与 OB定时中断保持一致,即相等。

. 资料. 资料图1.FB41"CONT_C" 的方框图主要参数. 资料. 资料图2. FB41"CONT_C" 程序块注:以TIA Portal V13 SP1为例,该功能块在STEP 7中的管脚与其相同表1. FB41"CONT_C" 的输入参数. 资料. 资料. 资料. 资料表2. FB41"CONT_C" 的输出参数. 资料. 资料基本功能由图 1 可知,FB41可以分为偏差产生、PID运算、PID输出三部分。

以下为管道压力控制实例说明:升压时,阀门开度增加;降压时,阀门开度减小。

被控对象:0-100Kpa (压力)输入信号:4-20mA设定值:60Kpa执行元件:0-100% (阀门)输出信号:4-20mA手/自动选择(MAN_ON)表3.MAN_ON的选择. 资料当前值PV_IN与PV_PER的选择的选择表4.PVPER_ON. 资料PVPER_ON=0利用量程转换块FC105"SCALE"将过程变量转换为实际工程量图3.FC105“SCALE”量程转换块注:以TIA Portal V13 SP1为例,该功能块在STEP 7中的管脚与其相同表5.FC105“SCALE”参数引脚. 资料. 资料. 资料图4.PVPER_ON=0时,PV_IN有效PVPER_ON=1直接将过程变量输入到PV_PER管脚,会按照以下公式进行规格化转换。

用S7-300PLC进行PID控制——功能块FB41的功能及用法介绍

用S7-300PLC进行PID控制——功能块FB41的功能及用法介绍

用S7-300PLC进行PID控制——功能块FB41的功能及用法介绍一、控制系统假设图1 液压系统控制框图如图1为液压系统的简单控制框图。

控制方式为使用变频器拖动泵,使系统的实际压力等于设定压力。

本文基于此系统,探讨一下如何用S7-300进行PID控制。

为方便讨论,做以下假定:•· 系统压力的可调范围为:0 – 1MPa;•· 变频器的变频范围为:0 – 50Hz;•· 压力传感器的输入外设地址:PIW272;模拟量输出外设地址为PQW288。

二、FB41简介在STEP7中的库中,有专门用于PID控制的FB块——FB41。

PID控制必须在循环中断中执行,以确保其扫描、执行时间基本固定。

本例中的CPU仅有OB35一个循环中断,因此,要在OB35中调用FB41。

图2 FB41在库中的位置图3 FB41的逻辑图FB41的逻辑如图3所示。

分解介绍如下:•· SP_INT端为给定值,本例中即为给定压力,假设为0.5MPa;即:0.5==>'SP_INT';•· 实际值有两条通路可选:· 当PVPER_ON=0时,PV_IN端的值为实际值,该值通常有FC105转换而来;· 当PVPER_ON=1时,PV_PER端的值为实际的压力值,该值来自AI模块,为压力传感器的反馈值;本例中,我们以PVPER_ON=1时,来说明。

即:1==>'PVPER_ON'、PIW272==>'PV_PER'•· PV_FAC、PV_OFF对应压力的范围,即:1==>'PV_FAC'、0==>'PV_OFF'。

•· PV是根据PV_PER计算出的实际压力值。

具体来说:PV_PER=0时,对应的实际压力为PV_OFF,即0MPa;PV_PER=27648时,对应的实际压力为PV_FAC,即1MPa;PV=PV_PER/27648*(PV_FAC –PV_OFF),本例中,PV=PV_PER/27648;•· ER为给定值SP_INT和实际值PV的偏差,PID即是基于它进行调节的;•· GAIN、TI、TD分别为比例、积分、微分的系数。

FB41_PID_SFB 41FB 41 CONT_C进行连续控制

FB41_PID_SFB 41FB 41 CONT_C进行连续控制

输出参数 下表包含对SFB 41/FB41 "CONT_C"输出参数的说明。
参数 LMN
数据类型 REAL
取值范围:
默认 0.0
描述
MANIPULATED VALUE 有效的操作值为 "操作值"输出处 的浮点格式输出。
LMN_PER WORD QLMN_HLM BOOL
QLMN_LLM BOOL
LMN_P
1.0
LMN_OFF REAL
0.0
I_ITLVAL REAL
-100.0至 +100.0 0.0
(%)
或物理值2)DISV NhomakorabeaREAL
-100.0至 +100.0 0.0
(%)
或物理值2)
1) 同一单元中设定值和过程变量分支中的参数 2) 同一单元中操作值分支中的参数
可以在"微分作用的时间延迟"输入 分配的时间延迟。
设置手动
值。
2.0
PROPORTIONAL GAIN
"比例值"输入指定
控制器增益。
T#20s
RESET TIME "复位时间"输入决定积分器 的时间响应。
T#10s
DERIVATIVE TIME "微分时间"输入决定微分单元 的时间响应。
T#2s
TIME LAG OF THE DERIVATIVE ACTION D操作的算法包括
DEADB_W REAL LMN_HLM REAL LMN_LLM REAL PV_FAC REAL
>= 0.0 (%)
0.0
或物理值1)
LMN_LLM ...100.0 (%)

s7300fb41功能块简介及使用方法

s7300fb41功能块简介及使用方法

FB41功能块简介SFB/FB "CONT_C" (连续控制器)在SIMATIC S7可编程逻辑控制器上使用,通过持续的输入和输出变量来控制工艺过程。

在参数分配期间,可以通过激活或取消激活PID控制器的子功能使控制器适应过程的需要。

使用参数分配工具可以轻松完成分配(菜单路径:开始> Simatic > Step7 > 分配PID控制参数)。

开始> Simatic > Step7 > 分配PID控制(英文)中提供了在线电子手册。

应用介绍:可以使用该控制器作为PID固定设定值控制器或在多循环控制中作为层叠、混料或比率控制器。

该控制器的功能基于使用模拟信号的采样控制器的PID控制算法,必要时可以通过加入脉冲发生器阶段进行扩展,为使用成比例执行机构的两个或三个步骤控制器生成脉冲持续时间调制输出信号。

注意只有在以固定时间间隔调用块时,在控制块中计算的值才是正确的。

为此,应该在周期性中断OB (OB30至OB38)中调用控制块。

在CYCLE参数中输入采样时间。

描述。

除了设定值和过程值分支中的功能,SFB/FB还通过持续操作变量输出和手动影响操作值的选项实现了完整的PID控制器。

下文提供了对这些子功能的详细说明:(1):设定值分支以浮点格式在SP_INT输入键入设定值。

(2):过程变量分支可以外设(I/O)或以浮点格式输入过程变量。

CRP_IN功能根据以下公式将PV_PER外设值转换为介于-100和+100 %间的浮点格式值:PV_NORM功能根据以下公式统一CRP_IN输出的格式:PV_NORM的输出= (CPR_IN的输出) * PV_FAC + PV_OFFPV_FAC的默认值为1,PV_OFF的默认值为0。

(3)出错信号设定值和过程变量间的差异就是出错信号。

为消除由于操作变量量化导致的小幅恒定振荡(例如,在使用PULSEGEN进行脉宽调制时),将死区应用于出错信号(DEADBAND)。

s7300FB41功能块简介及使用方法

s7300FB41功能块简介及使用方法

FB41功能块简介SFB/FB "CONT_C" (连续控制器)在SIMATIC S7可编程逻辑控制器上使用,通过持续的输入和输出变量来控制工艺过程。

在参数分配期间,可以通过激活或取消激活PID控制器的子功能使控制器适应过程的需要。

使用参数分配工具可以轻松完成分配(菜单路径:开始 > Simatic > Step7 > 分配PID控制参数)。

开始 > Simatic > Step7 > 分配PID控制(英文)中提供了在线电子手册。

应用介绍:可以使用该控制器作为PID固定设定值控制器或在多循环控制中作为层叠、混料或比率控制器。

该控制器的功能基于使用模拟信号的采样控制器的PID控制算法,必要时可以通过加入脉冲发生器阶段进行扩展,为使用成比例执行机构的两个或三个步骤控制器生成脉冲持续时间调制输出信号。

注意只有在以固定时间间隔调用块时,在控制块中计算的值才是正确的。

为此,应该在周期性中断OB (OB30至OB38)中调用控制块。

在CYCLE参数中输入采样时间。

描述。

除了设定值和过程值分支中的功能,SFB/FB还通过持续操作变量输出和手动影响操作值的选项实现了完整的PID控制器。

下文提供了对这些子功能的详细说明:(1):设定值分支以浮点格式在SP_INT输入键入设定值。

(2):过程变量分支可以外设(I/O)或以浮点格式输入过程变量。

CRP_IN功能根据以下公式将PV_PER外设值转换为介于 -100和 +100 %间的浮点格式值:PV_NORM功能根据以下公式统一CRP_IN输出的格式:PV_NORM的输出 = (CPR_IN的输出) * PV_FAC + PV_OFFPV_FAC的默认值为1,PV_OFF的默认值为0。

(3)出错信号设定值和过程变量间的差异就是出错信号。

为消除由于操作变量量化导致的小幅恒定振荡(例如,在使用PULSEGEN进行脉宽调制时),将死区应用于出错信号(DEADBAND)。

FB41全参数设置

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-ITLV AL变量积分初值。

一般当发现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的分量;(可用于在调试过程中观察效果)C:规格化概念及方法:PID参数中重要的几个变量,给定值,反馈值和输出值都是用0.0~1.0之间的实数表示,而这几个变量在实际中都是来自与模拟输入,或者输出控制模拟量的因此,需要将模拟输出转换为0.0~1.0的数据,或将0.0~1.0的数据转换为模拟输出,这个过程称为规格化规格化的方法:(即变量相对所占整个值域范围内的百分比对应与27648数字量范围内的量)对于输入和反馈,执行:变量*100/27648,然后将结果传送到PV-IN和SP-INT对于输出变量,执行:LMN*27648/100,然后将结果取整传送给PQW即可;D:PID的调整方法:一般不用D,除非一些大功率加热控制等惯大的系统;仅使用PI即可,一般先使I等于0,P从0开始往上加,直到系统出现等幅振荡为止,记下此时振荡的周期,然后设置I为振荡周期的0.48倍,应该就可以满足大多数的需求。

PID调节参数(FB41)

PID调节参数(FB41)

PID调节-----西门子FB41使用准备用连续PID调节来实验一个控制,在软件上做了一个简单的PID41用仿真模拟了一把,情况还好,基本可以运行,但是其中的一些小的功能还是没有做好.想仔细再看看说明.幸好有一位网又一起讨论,得到了一个比较好的说明.传上来以免以后找不到.使用FB41进行PID调整的说明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的手动/自动切换位;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-ITLV AL(积分初值)变量和这个位对应,当此位ON时,则使用I-ITLV AL变量积分初值。

西门子S7 FB41的使用方法

西门子S7 FB41的使用方法

西门子S7-300PLC使用FB41进行闭环PID调节的解释说明2009-03-01 12:07使用FB41进行PID调整的说明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的手动/自动切换位;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的分量;(可用于在调试过程中观察效果)C:规格化概念及方法:PID参数中重要的几个变量,给定值,反馈值和输出值都是用0.0~1.0之间的实数表示,而这几个变量在实际中都是来自与模拟输入,或者输出控制模拟量的因此,需要将模拟输出转换为0.0~1.0的数据,或将0.0~1.0的数据转换为模拟输出,这个过程称为规格化规格化的方法:(即变量相对所占整个值域范围内的百分比对应与27648数字量范围内的量)对于输入和反馈,执行:变量*100/27648,然后将结果传送到PV-IN和SP-INT 对于输出变量,执行:LMN*27648/100,然后将结果取整传送给PQW即可;D:PID的调整方法:一般不用D,除非一些大功率加热控制等惯大的系统;仅使用PI即可,一般先使I等于0,P从0开始往上加,直到系统出现等幅振荡为止,记下此时振荡的周期,然后设置I为振荡周期的0.48倍,应该就可以满足大多数的需求。

FB4FB42参数详细说明S7-300西门子

FB4FB42参数详细说明S7-300西门子

用Step7 中SFB41/FB 41,SFB42/FB42,SFB43/FB43实现PID控制SLC A&D CSMay 2004目录1 概述 (4)1.1 应用 (4)1.2 控制系统分析 (5)2 PID系统控制器的选择 (8)2.1 连续控制器、开关控制器 (9)2.2 固定值控制器 (9)2.3 级联控制器 (9)2.4 混合控制器 (10)2.5 比例控制器 (10)2.5.1 单循环比例控制器 (10)2.5.2 多循环比例控制器 (10)2.6 二级控制器 (11)2.7 三级控制器 (11)3 布线 (11)3.1 布线规则 (11)3.1.1 连接电缆 (11)3.1.2 屏蔽端接元件 (12)3.1.3 警告 (12)3.1.4 其它信息 (12)4 参数赋值工具介绍 (12)4.1 调试PID参数的用户界面 (12)4.2 获取在线帮助的途径 (14)5 在用户程序中实现 (14)5.1 调用功能块 (15)5.2 背景数据块 (15)5.3 程序结构 (15)6 功能块介绍 (15)6.1 连续调节功能SFB 41/FB 41 “CONT_C” (15)6.1.1 简介 (15)6.1.2 应用程序 (16)6.1.3 说明 (16)6.2 步进控制功能SFB 42/FB 42“CONT_S” (30)6.2.1 简介 (30)6.2.2 应用程序 (30)6.2.3 说明 (31)6.3 脉冲宽度调制器SFB 43/FB 43“PULSEGEN” (43)6.3.1 简介 (43)6.3.2 应用程序 (43)6.3.3 说明 (43)7 功能块举例 (58)1概述本文中所讨论的功能块(SFB41/FB41,SFB42/FB42,SFB43/FB43)仅仅是使用于S7和C7的CPU中的循环中断程序中。

该功能块,定期计算所需要的数据,保存在指定的DB中(背景数据块)。

西门子300中PID的使用

西门子300中PID的使用

西门子300中PID的使用PID的调用要在OB35中完成.在ob35里面插入FB41,方框顶上会有红字,输入一个DB块如“DB20”。

系统会问你要不要生成这个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×××转换为实际的工程量(使用FC105);5、MAN:MD10 (该地址也可以是从上位机设定的地址),是手动状态下的输入值,real型。

手动设多少输出将为多少。

6、GAIN: MD100(该地址也可以是从上位机设定的地址如DB 块的地址,这样可以从上位机设P 参数了),默认写1-2吧(系统默认是2),调试的时候再改。

7、TI:MW120, 默认可以写T#30S吧,调试的时候改;8、DEAD_W:MD122,死区,就是sp和pv的偏差死区,0-100.0的范围,默认0,调试的时候改;输出:((死区:又叫死区宽度,在控制系统中,某些执行机构如果动作频繁,会导致小幅震荡,造成严重的机械磨损。

从控制要求来说,很多系统又允许被控量在一定范围内存在误差。

我们允许被控量的误差大小,被称为PID的死区宽度;死区是如何工作的呢?当误差的绝对值小于死区宽度时,死区非线性的输出量(即PID 控制器的输入量)为0 ,这时PID 控制器的输出分量中,比例部分和微分部分为0,积分部分保持不变,因此PID的输出保持不变,PID控制器起不到调节作用;当误差的绝对值超过死区宽度时,开始正常的PID 控制在FB41 中,死区宽度是“DEADB_W”PID的输入量 = 0 偏差的绝对值|ev|< "DEADB_W"= ev 偏差的绝对值|ev|>= "DEADB_W" ))9、LMN:MD126,把MD126再用fc106转换到pqw××,如果pid运算结果不再有工艺条件其他限制可以用LMN_PER更简单就不用fc106了。

FB41-FB42参数详细说明 S7-300 西门子

FB41-FB42参数详细说明 S7-300 西门子

用Step7 中SFB41/FB 41,SFB42/FB42,SFB43/FB43实现PID控制SLC A&D CSMay 2004目录1概述 (3)1.1应用 (3)1.2控制系统分析 (4)2PID系统控制器的选择 (7)2.1连续控制器、开关控制器 (7)2.2固定值控制器 (8)2.3级联控制器 (8)2.4混合控制器 (8)2.5比例控制器 (9)2.5.1单循环比例控制器 (9)2.5.2多循环比例控制器 (9)2.6二级控制器 (9)2.7三级控制器 (10)3布线 (10)3.1布线规则 (10)3.1.1连接电缆 (10)3.1.2屏蔽端接元件 (10)3.1.3警告 (10)3.1.4其它信息 (10)4参数赋值工具介绍 (10)4.1调试PID参数的用户界面 (11)4.2获取在线帮助的途径 (12)5在用户程序中实现 (12)5.1调用功能块 (12)5.2背景数据块 (13)5.3程序结构 (13)6功能块介绍 (13)6.1连续调节功能SFB 41/FB 41 “CONT_C” (13)6.1.1简介 (13)6.1.2应用程序 (14)6.1.3说明 (14)6.2步进控制功能SFB 42/FB 42“CONT_S” (26)6.2.1简介 (26)6.2.2应用程序 (26)6.2.3说明 (27)6.3脉冲宽度调制器SFB 43/FB 43“PULSEGEN” (36)6.3.1简介 (36)6.3.2应用程序 (36)6.3.3说明 (36)7功能块举例 (49)1 概述本文中所讨论的功能块(SFB41/FB41,SFB42/FB42,SFB43/FB43)仅仅是使用于S7和C7的CPU中的循环中断程序中。

该功能块,定期计算所需要的数据,保存在指定的DB中(背景数据块)。

允许多次调用该功能块。

CONT_C块与PULSEGEN块组合使用,可以获得一个带有比例执行机构脉冲输出的控制器(例如,加热和冷却装置)。

使用S7-300的FB41进行PID调整的说明

使用S7-300的FB41进行PID调整的说明

使用FB41进行PID调整的说明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的手动/自动切换位;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的分量;(可用于在调试过程中观察效果)C:规格化概念及方法:PID参数中重要的几个变量,给定值,反馈值和输出值都是用0.0~1.0之间的实数表示,而这几个变量在实际中都是来自与模拟输入,或者输出控制模拟量的因此,需要将模拟输出转换为0.0~1.0的数据,或将0.0~1.0的数据转换为模拟输出,这个过程称为规格化规格化的方法:(即变量相对所占整个值域范围内的百分比对应与27648数字量范围内的量)对于输入和反馈,执行:变量*100/27648,然后将结果传送到PV-IN和SP-INT 对于输出变量,执行:LMN*27648/100,然后将结果取整传送给PQW即可;D:PID的调整方法:一般不用D,除非一些大功率加热控制等惯大的系统;仅使用PI即可,一般先使I等于0,P从0开始往上加,直到系统出现等幅振荡为止,记下此时振荡的周期,然后设置I为振荡周期的0.48倍,应该就可以满足大多数的需求。

FB41 PID功能模块的基本操作

FB41 PID功能模块的基本操作

S7-300PLC FB41 PID功能模块的基本操作通过这个实验,你可以掌握FB41 PID功能模块应用的基本操作、PID控制的基本编程方法。

在此基础上进行举一反三。

通过改变不同的P、I即D的值,可以体会并观察到的各个量对调节过程的影响。

D值用的较少没有加入,有兴趣的朋友可以把它加入一并实验。

FB41功能模块的输入输出参数比较多,各个输入输出量均可通过变量进行操作,使应用更加灵活。

读者可阅读有关参考书籍,灵活应用。

1.开始->SIMTIC->SIMATIC Manager2.文件->新建项目向导->下一个->在CPU类型中选择:314C->下一个3.在块名称中勾选√OB1,0B35及OB1004.所选块的语言中默认STL->下一个->项目名称:S7_MyPID->完成。

5.在打开的项目中双击硬件,窗口打开后在小窗口中的CPU的上面1号栏内,用鼠标点击左键,在弹出的菜单中点击插入对象,在弹出的菜单中选择PS307 2A。

6.在快捷菜单栏点选保存按钮。

7.站点->关闭->Yes。

8.在主栏目左侧点选块,在主栏目中有三个块存在,OB1、OB35及OB100。

9.双击OB100进入程序编辑状态。

10.在程序段1中添加FB41功能块。

操作->打开左侧程序元素窗口->点击“库”前面的+号->点击Standard Library前面的+号->PID Control Blocks前面的+号->拖拽FB41 CONT_C ICONT的图标进入程序段1中->在CALL FB 41 的后输入DB41->回车;11.提示:实例数据块不存在。

是否要生成它,点选“是Y”;自动展开一个功能块图。

12.在COM_RST:=后面输入1,回车,1即变成TRUE。

13.保存,关闭。

14.在主栏目中双击OB35进入程序编辑状态,同第10,11步。

西门子PLC使用FB41进行PID调整的说明

西门子PLC使用FB41进行PID调整的说明

使用FB41进行PID调整的说明目前工业自动化水平已成为衡量各行各业现代化水平的一个重要标志。

同时,控制理论的发展也经历了古典控制理论、现代控制理论和智能控制理论三个阶段。

智能控制的典型实例是模糊全自动洗衣机等。

自动控制系统可分为开环控制系统和闭环控制系统。

一个控控制系统包括控制器﹑传感器﹑变送器﹑执行机构﹑输入输出接口。

控制器的输出经过输出接口﹑执行机构﹐加到被控系统上﹔控制系统的被控量﹐经过传感器﹐变送器﹐通过输入接口送到控制器。

不同的控制系统﹐其传感器﹑变送器﹑执行机构是不一样的。

比如压力控制系统要采用压力传感器。

电加热控制系统的传感器是温度传感器。

目前,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)的特点是系统被控对象的输出(被控制量)会反送回来影响控制器的输出,形成一个或多个闭环。

S7-300功能块FB41参数对应

S7-300功能块FB41参数对应
CYCLE : TIME:PID采样周期,一般设为200MS;
SP_INT: REAL:PID的给定值;
PV_IN : REAL:PID的反馈值(也称过程变量);
PV_PER: WORD:未经规格化的反馈值,由PEPER-ON选择有效;(不推荐)
MAN : REAL:手动值,由MAN-ON选择有效;
LMN_LLM: REAL:PID下极限;一般为0%,如果需要双极性调节,则需设置为-100%;(正负10V输出就是典型的双极性输出,此时需要设置-100%);
PV_FAC: REAL:过程变量比例因子
PV_OFF: REAL:过程变量偏置值(OFFSET)
LMN_FAC: REAL:PID输出值比例因子;
GAIN : REAL:比例增益;
TI : TIME:积分时间;
TD : TIME:微分时间;
TM_LAG: TIME:我也不知道,没用过它,和微分有关;
DEADB_W: REAL:死区宽度;如果输出在平衡点附近微小幅度振荡,可以考虑用死区来降低灵敏度;
LMN_HLM: REAL:PID上极限,一般是100%;
LMN_OFF: REAL:PID输出值偏置值(OFFSET);
I_ITLVAL:REAL:PID的积分初值;有I-ITL-ON选择有效;
DISV :REAL:允许的扰动量,前馈控制加入,一般不设置;
B:部分输出参数说明:
LMN :REAL:PID输出;
LMN_P :REAL:PID输出中P的分量;(可用于在调试过程中观察效果)
S7-300功能块FB41参数对应
A:所有的输入参数:
பைடு நூலகம்
COM_RST: BOOL: 重新启动PID:当该位TURE时:PID执行重启动功能,复位PID内部参数到默认值;通常在系统重启动时执行一个扫描周期,或在PID进入饱和状态需要退出时用这个位;
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本人现用到西门子S7-300(CPU315)做整流系统的PID控制,具体是由AI模块输入4-20MA信号(既A柜/B柜饱和电抗器控制电流信号反馈和机组A柜/B柜直流电流信号反馈),通过CPU调用PID功能块,实现自动闭环控制,最后由AO模块输出一个4-20MA的信号给稳流系统(既A柜/B柜电流给定反馈)。

现请教:1、具体应调用S7的PID中的哪些功能块。

我是直接在OB1里边调用FB41,不知可否。

2、PID标准块FB41的输入输出参数如何整定,PV_PER、SP_INT、PV_IN有何区别。

3、GAIN、TI、TD如何整定。

4、MAN_ON、PVPER_ON怎么用,是直接在FB41的输入端写吗?
原理上,PID的调节节奏应该与其采样周期一致,这是数学模型应与物理过程一致的要求。

这也就是FB41要在OB35中周期调用且OB35的周期要与FB41采样周期一致的原因。

当然,在OB1或其他FC、FB中调用FB41也是可以的,此时最好将OB1参数区中扫描周期作为FB41的采样周期。

本人在管道恒流恒压的PID过程控制中,也曾在FC中无条件连续调用FB41,PID效果也还令人满意。

我个人认为,精度要求不高的应用中,简单调用也是可以的。

FB41参数的设置很灵活,可根据自己的习惯或应用的方便选择。

下面是一种方式。

MAN_ON :激活PID手动调节给定值MAN的使能位,可用PID手自动转换位来触发。

PVPER_ON :是PID输入输出参数“PERIPHERAL化”的使能位,即将参数看成0~27648之间的整数。

换个说法,就是PID的反馈值直接取自相应AIW通道,而PID输出则直接给出到AQW通道。

参数整定由FB41完成。

可用调节装置的启动标志来触发本位。

MAN :PID手动调节给定值,当“MAN_ON=1”时有效。

CYCLE :采样周期。

根据物理量变化快慢定,一般要求与FB41执行的周期一致。

SP_INT:PID的设定值。

注意设定值与反馈值的单位一致。

为了避免错误,建议将SP_INT转换为-100.0~100.0%之间无量纲的百分数,输入到FB41时,注意只取百分号之前的数即可。

PV_PER:PID过程的反馈值,直接取自反馈量的AIW通道的A/D码。

仅在“PVPER_ON=1”时有效。

GAIN:比例系数。

TI:积分时间。

TD:微分时间。

LMN_PER:PID的调节输出,直接对应调节输出AQW通道。

设置了上述参数,基本的PID调节就可以实现了。

根据需要再完善其他参数的设置,比如死区的设定等。

利用STEP7中的PID赋值工具可形象快捷地完成参数设置,结果直接存入相应背景数据块,FB41调用时无须再赋值。

相关文档
最新文档