使用PID程序块 FB58 “TCONT_CP” 脉冲输出时需要注意什么?

发布时间:2024-07-28
fb 58 “tcont_cp”用于使用连续或脉冲控制信号来控制温度过程。脉冲控制功能使用脉宽调制,将模拟量可调节变量值 lmn 转换成一系列周期为per_tm 的脉冲信号。通过设置pulse_on=true 激活pulsegen,并在cycle_p 周期中对其进行处理。 哪些参数决定脉冲输出的周期?首先,需要熟悉几个fb 58 “tcont_cp” 脉冲输出的重要参数: cycle_p : 脉冲发生器的采样周期 cycle:pid 运 算的采样周期 per_tm: 脉冲输出的周期如图1,pid输出lmn变 量为30.0,cycle=per_tm=10 *cycle_p ,则 每个per_tm循 环时间调用sfb/fb“pulsegen”10次, 则: 脉宽=per_tm x lmn% 对 于前3个sfb/fb“pulsegen”(10次 调用的30 %), 输出“qpos”为“1” 对 于其余7个sfb/fb“pulsegen”(10次 调用的70 %), 输出“qpos”为“0”
图01
如图2,设置参数,lmn=50.0。根据上图的关 系,理 论上输出的脉冲周期应该为10秒。但是通过 wincc 捕捉的脉冲轨迹可以看到,实际的周期为20秒,如图2。那这是为什么呢? 图02 图03
其实,参数 per_tm 和cycle_p 只是决定了脉宽调制精度g,g=per_tm/cycle_p 。脉 宽调制精 度,决 定了一个脉冲周期内执行的脉冲计算的次数,次数越多精度越高。如图4,fb 58 “tcont_cp” 通过“select” 参数决定pid 运算和脉冲运算的关系,通常我们使用默认的模式,也就是同一个fb 58 “tcont_cp” 执行两者,因此在同一个循环中断中执行的fb 58 “tcont_cp”,每次循环中断进入都会执行脉冲运算,而pid 运算和脉冲运算成1:g 关系。因此实际脉冲运算的周期 cycle_p*是由程序块执行的间隔决定的,所以实际周期 per_tm*=cycle_p * xg。 图04
在上面的例子中,g = per_tm / cycle_p =10/0.1=100;ob35循 环周期200ms, 所以cycle_p * =200ms ,per_tm* =100x200=20s。因此,要想脉冲输出的周期和设置的一致,必须保证 cycle_p=cycle_p *(循环中断的时间) 我们只需要调整ob35的循环中断时间到 100ms,就可以实现10s周期的脉冲,如图5。 图05 经验关系时间法则如 下: cycle_p<=per_tm/50 per_tm<=ti/5 cycle<=ti/10 cycle(=n x cycle_p)=<per_tm;n 为整数 p_b_tm>=cycle_p
如果pid cycly和周期per_tm不同会怎么样?可以为cycle 选择一个小于脉冲重复周期per_tm 的数值。此设置适用于需要尽可能高的脉冲重复周期以减小执行器上的磨损,但快速过程需要的采样时间却又比较短。如果cycle< per_tm,意味 着一个完整周期还没有结束,新的 pid 结果将会产生,脉冲的输出状况将会改变。
图06
如 图7,cycle<per_tm,当前输出lmn=50.0,周期20s。一旦 pid 的结果发生更改,如图8,当脉冲高电平输出到20%时,新的 pid 结果lmn=80.0 到来,则脉冲会在之前的基础上继续输出余下的60%的高电平后再变为低电平,整个周期仍然保持20s。
图07
图08
如果新的pid 的结果发生在脉冲的高电平,则会有以下两种情况(黄色箭头:已经输出的高电平脉冲;绿色箭头:新的 pid 结果):
pid 结果>当前脉冲长度,则脉冲延长
图09
pid 结果<当前脉冲长度,则脉冲终止
图10
如果新的pid 的结果发生在脉冲的低电平,则会有以下两种情况(黄色箭头:已经输出的低电平脉冲;绿色箭头:新的 pid 结果)::
100-pid 结果<=当前低电平脉冲长度,则输出高电平脉冲 图11
100-pid 结果>当前低电平脉冲长度,则低电平脉冲延长 图12
上一个:架线电极车用直流分区开关
下一个:怎么样装系统win10(怎样装win10系统教程)

立式红外人体体温筛选仪
分析塑料高速混合机能否降低成本
浅谈金银花茶的抗癌功效
电容压力传感器电动伺服压力机
苏信SX-SG-6500纯水雾发生器使用注意事项
确保光纤放大器及其周围环境处于良好通风状态以防止过热引起噪声
带式干燥机的特色和优点
大蒜清洗污水处理设备运行步骤
美国ASCO阿斯卡蝶阀总体高度较小,开启和关闭速度较快
木材烘干设备的在烘干木材时的喷蒸、调湿处理