FB41有太多参数,哪几个代表P、I、D?

西门子plc 发布于 2个月前 分类:S7-300/400

1、用FB41做PID时,到底要调整哪几个参数?FB41有太多参数,哪几个代表P、I、D?说明书看不明白
2、DP/DP Coupler是将两个DP主网(网1和网2)连接在一起,那网1和2怎么通信,是否有专门功能块?硬件组态时是否在网络1和2中分别加入DP/DP Coupler,两个网络中的Coupler其实就是一个东西?
3、有一程序,硬件组态上输出点最大位到QB4,但为何程序中却有Q40。1,而且程序正常运行,不出错?请问什么原因?
以上问题请大家帮忙详细回答,谢谢

2个回复

  • plc电工爱好者

    P参数对应:  GAIN  比例增益
      I参数对应:    TI  积分时间
      D参数对应  TD 微分时间

    下面的步骤供你参考。
    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工作了,不能测试实际调节效果啊。

    COM_RST: BOOL: 重新启动PID:当该位TURE时:PID执行重启动功能,复位PID内部参数到默认值;通常可以不用,因为一旦参数设定好不会有大的变动了。

    关于DP/DP COUPLER 的使用 网络1,2分别有对应的地址.各自组态就可以了,实际通讯是通过组态的通讯区进行两个网络的数据交换的.具体的通讯方法及组态类似与智能从站的方法.打包发送的话可以调用SFC14,15.  关于COUPLER的使用方法你可以看下你的邮箱

    关于通讯地址Q40.1 你需要检查下通讯取是否进行了组态.

     

  • 西门子plc

    1、用FB41做PID时,到底要调整哪几个参数?FB41有太多参数,哪几个代表P、I、D?
    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:比例增益,即我们说的P;
    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的分量;(可用于在调试过程中观察效果)

    2、DP/DP Coupler是将两个DP主网(网1和网2)连接在一起,那网1和2怎么通信,是否有专门功能块?硬件组态时是否在网络1和2中分别加入DP/DP Coupler,两个网络中的Coupler其实就是一个东西?

    DP/DP coupler是使得网1和2的主站间能进行数据交换,两个网络的通信速率可以不同。把它分别看成网1和2中的从站,分别进行组态。配置数据交换的IO区域即可,即coupler在网络1里为输入,在网络2里就为输出;反之亦然。
    关键是耦合器的两个DIP地址要设置正确,并且把它在两个DP网络中组态成从站,然后两个不同DP网络中的主站直接可以进行通讯了,可以用全区数据通信,也可以用专用块。
    3、有一程序,硬件组态上输出点最大位到QB4,但为何程序中却有Q40。1,而且程序正常运行,不出错?请问什么原因?
    可以将实际不存在的输入、输出点组态成分布式I/O点或远程I/O点来使用,你可以查查通讯设置是否使用了Q40.1。