gkket 发表于 2021-3-2 20:59:42

西门子PLC如何在OB35中进行PID编程?

一、为什么要在OB35中调用FB411、PID(比例/积分/微分)控制器会测量两次调用之间的时间间隔并评估监视采样时间的结果。每次进行模式切换时以及初始启动期间都会生成采样时间的平均值。该值用作监视功能的参考并用于计算。监视包括两次调用之间的当前测量时间和定义的控制器采样时间的平均值。从上面的定义可以知道采样周期就是一个很重要的因素,也会使计算的结果更接近理论目标。这是简单从定义的角度来分析。2、OB35时间中断组织块,可以设定固定的执行周期,比如说100MS(也是默认设置),可以将FB41的采样周期与OB35的执行周期设置一致。因为在数字化的PID采样周期是要求等时间间隔的,因此,放到OB35中执行。二、PID控制功能块管脚要知道的一些事情(这里以FB41为例)1、采样周期与OB35循环中断时间设置一致OB35的中断时间的设置方法:在硬件组态中选择CPU属性,在循环中断中设置OB35的循环中断时间:如下图所示:https://p3-tt.byteimg.com/origin/pgc-image/824ce39ad3434b69afdb46345e2303d2?from=pc

之后将FB41的采样时间与OB35设置的中断时间一致,如下图所示https://p1-tt.byteimg.com/origin/pgc-image/599eab6bf2ce43be9c8e27969997cd67?from=pc

2、如何设置跳过PID控制,使用手动输入值来作为输出也就是切换成手动方式,并以手动设置的来控制输出https://p1-tt.byteimg.com/origin/pgc-image/a321c261d83f44eebfb0e79a405cb760?from=pc

3、PID控制中常见的一些参数设置首先看下手册中的框图:https://p6-tt.byteimg.com/origin/pgc-image/efa951080bec4fef8d6b7b15c08e72db?from=pc

(1)SP_INT:为设定值,一般我们可以从HMI中来下发的,格式为工程量值-100.0%~100.0%。(2)反馈过程值的处理A、当PVPER_ON为0时:PV_IN:为反馈值,比如是传感器反馈回来的工程量值,一般是由FC105将传感器的值转换成工程量值。当PVPER_ON为1时:PV_PER(传感器反馈值)作为过程反馈值的输入,也就是说直接用模拟量输入模块的值来作为PID的反馈值。格式为W#16#000。这里你就会发现,PV_PER的值与设定值SP_INT的数据类型是不一致的,就需要对PV_PER进行转换,如下图所示:https://p3-tt.byteimg.com/origin/pgc-image/1562dace6a434a8994d64b4722030567?from=pc

死区范围的设定:DEADB_W,是SP和PV的偏差死区,格式是0.0~100.0,默认0.0,这个参数需要在调试过程中根据实际情况来进行修改。比例增益:GAIN:也就是PID控制中的P参数,这个参数一般设置为HMI输入地址,比如说MD100,系统默认为2.0,也需要在调试中根据实际进行修改啊。TI为积分时间常数:调整TI时,主要是要消除系统的的震荡,可先将TI设置为0,调整GAIN,当系统出现等幅震荡时,根据震荡周期来设置TI(一般为0.48*震荡周期)TD为微分时间常数。关于PID调节:网上有前人总结的一套口诀:参数整定找最佳,从小到大顺序查;先是比例后积分,最后再把微分加;曲线振荡很频繁,比例度盘要放大;曲线漂浮绕大湾,比例度盘往小扳;曲线偏离回复慢,积分时间往下降;曲线波动周期长,积分时间再加长;曲线振荡频率快,先把微分降下来;动差大来波动慢。微分时间应加长;理想曲线两个波,前高后低比4:1;一看二调多分析,调节质量不会低。还有三个重要的参数就是P-SEL、I_SEL、D_SEL,分别代表是否启用相应的比例、积分、微分控制。https://p1-tt.byteimg.com/origin/pgc-image/4d5f14dcad00486f9de3fe9fb70d0b1d?from=pc

(7)LMN_PER:模拟量输出,也可以称之为输出标准化,可以直接连PQW,数据格式W#16#0000。LMN:为real值输出,需要进行FC106转化到PQW。三、在PLCSIM仿真器中能做哪些事情1、模拟手自动切换功能,当MAN_ON为1,看输出是否等于MAN。https://p1-tt.byteimg.com/origin/pgc-image/ab968c8e86764c8d8f6f935bd3d9f4c5?from=pc

当MAN_ON为FALSE。调整pv或者sp,使得有偏差大于死区,看输出变化,这里的模拟只能说明pid工作了,不能测试实际调节效果啊。https://p3-tt.byteimg.com/origin/pgc-image/3126b251f58a430a9bd83d26462a08a0?from=pc

来源:跟我动手学电气(头条)
原链接:https://www.toutiao.com/a6889991206890603021/

陈龙 发表于 2021-3-2 21:19:29

绝对干货,楼主给力,支持了!!!

蒲会双 发表于 2021-3-5 13:38:22

感恩无私的分享与奉献 :)

jessezang 发表于 2025-11-17 17:17:56

被戳中笑点 / 泪点,太真实了!

小炮 发表于 2025-11-17 17:23:51

不请自来,就想夸一句:太顶了!

刘强 发表于 2025-11-17 17:25:43

不请自来,只为说一句:太精彩了!

东海名剑 发表于 2025-11-17 17:28:42

路过混个脸熟,顺便为优质内容打 call~

baodao 发表于 2025-11-17 17:41:13

这波分析到位,逻辑满分!

kdrhb 发表于 2025-11-17 17:41:39

谁懂啊!这内容我能循环看十遍

小马哥 发表于 2025-11-17 17:45:45

蹲个后续,楼主记得更新呀,在线等挺急的~
页: [1] 2
查看完整版本: 西门子PLC如何在OB35中进行PID编程?