西门子CP5621网卡/原装总代理
- 供应商
- 浔之漫智控技术(上海)有限公司
- 认证
- 品牌
- 西门子
- 型号
- PLC
- 售后
- 代理商
- 手机号
- 18717946324
- 联系人
- 占雪芬
- 所在地
- 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213
- 更新时间
- 2024-09-14 08:00
西门子cp5621网卡/原装总代理
我公司主营西门子各系列plc (s7-200 smart s7-300 s7-400) 触摸屏 变频器 (mm系列 g120 g120c g110) 伺服 (v80 v60) 数控备件 (pcu50 ncu ccu 轴卡) 等 价格优势 产品为西门子原装正版产品 我公司售出的产品 按西门子标准质保 产品本身有质量问题 质保一年 公司秉承:以信待人 以诚待人 质量如生命 客户至上的经营理念 竭诚为您服务您的肯定是我们*大的动力 我们将期待与您长期持久的合作
3.1 控制带
温度控制回路是一个有明显滞后特性的对象,这给实际的调节过程带来了很多的问题,显著的困难就是在过程值偏离设定值较大时,调节过程过于缓慢,而在接近设定值时容易出现较大的超调。
从上述的两个问题出发,pid应该满足这样的功能:
- 在偏差超过一定的范围时,pid输出或者小的调节量,让温度值快速回到一个小的范围中,以缩短回路的调节时间;
- 在设定值附近时,越靠近调节量变化越小,以防止超调。
为此,fb58提供了一个“控制带(control zone)"功能,其工作原理是这样的:
- 当过程值pv大于设定值sp_int,且偏差的值超过con_zone,则以输出下限lmn_llm作为输出值;
- 当过程值pv小于设定值sp_int,且偏差的值超过con_zone,则以输出上限lmn_hlm作为输出值;
- 如果偏差的值小于con_zone,则以实际pid的计算结果作为输出值。
图10 控制带(正作用情况下,即gain>0.0)
默认参数中lmn_llm是0.0,lmn_hlm是100.0,控制带使能位conz_on是false,控制带范围是100.0。
如上图所示的控制带解决了在偏差较大时pid调节过于缓慢的问题,但在控制带范围中要避免因大滞后导致的超调,需要弱化pid的输出,要实现这个功能,可以通过降低比例参数和增加微分作用。在同样的偏差情况下,比例增益越小,pid输出变化越缓慢。微分作用简单来看就是通过偏差的变化量来调节,在接近设定值的过程中,温度变化速度在逐步变慢,此时的微分作用可以起到弱化控制输出的功能,进而达到减少超调的目的。因此,推荐控制带在有微分作用的前提下使用。参数装载的过程也体现了这一点:
- 如果是装载pi_con下的参数,因为没有微分功能,所以会设置conz_on为false。
在使用过程中,控制带参数con_zone应该始终设置为一个大于等于0.0的值,否则会导致pid运算结果永远不会被执行的故障现象。
3.2 脉冲输出方式
和fb41不同,fb58中集成有脉宽调制输出的功能,通过将pid的运算结果换算成对应的脉冲占空比来达到加热/冷却的控制。
在fb58的脉冲输出环节中涉及到的关键参数有:
pulse_on:脉冲输出使能;
per_tm:输出脉冲的周期时间;
cycle_p:脉冲输出的刷新时间,推荐per_tm/cycle_p>50,即将周期时间分为时间长度为cycle_p的“片",在每个cycle_p时间间隔里,脉冲输出单元运算一次以判断下一个cycle_p中应该输出高电平还是低电平,per_tm和cycle_p的比值越大,说明输出脉冲的精度就也高;
p_b_tm:小脉冲/小断开时间。例如当pid的计算输出接近于100.0时,那么输出的脉冲中低电平时间接近于0,针对执行机构而言,其需要在极短的时间里关断,然后再打开,这会严重缩短设备的工作寿命,为此,通过设置小脉冲断开/脉冲时间就可以避免此问题。当需要输出的高电平时间小于p_b_tm时,则不会输出这个高电平;当需要输出的高电平时间大于周期时间per_tm-p_b_tm时,则整个周期都输出高电平。p_b_tm设置的过长,可以降低对执行机构的冲击,但会影响输出脉冲和整个回路的控制精度;设置的过短,则对执行机构不利。
图11 脉冲输出
如上图所示,lmnn为pid的运算结果,通过和脉冲周期时间per_tm相乘得到高电平的输出时间:
脉宽=lmnn*per_tm/100
脉冲输出单元每次执行都累加一个cycle_p,通过判断累加值和脉宽,或者和周期与脉宽差值的比较来改变输出点的状态。
3.2.1 脉冲输出和pid运算
在fb58中,脉冲输出和pid计算是两个相对独立的过程,各自有自己的计算周期。对于pid计算来说,cycle参数可以看成是pid计算的循环周期时间,例如pid在ob35每次执行过程中都会被调用,而硬件组态过程中ob35的周期时间被设置成了500ms,则cycle应该填写为0.5。对于脉冲输出来说,其循环周期时间是cycle_p。这两个时间参数可以一样,也可以不一样。pid的计算周期主要由被测量的变化规律决定的,而脉冲输出的cycle_p参数由要求的脉冲输出精度决定。
为了协调pid和脉冲输出之间的矛盾,fb58提供了“select"参数,其具体使用如下所示:
根据上表描述,fb58的调用可以有如下三种情况:
(1)select=0,fb58只在周期中断ob(例如ob35)中调用
此时的参数配置应该将cycle_p和周期中断ob的中断时间保持一致。因为pid计算的执行条件是cycle_p的累计值和cycle参数一致,而脉冲输出周期per_tm则应该cycle_p的整数倍,和cycle无关。
例如,在ob35中调用fb58,ob35的周期时间为50ms,fb58中的cycle_p是0.05s,cycle是1.0s,per_tm是3.0s。
观察参数之间的关系,cycle是cycle_p的20倍,即ob35每20个周期执行一次fb58里的pid计算,而输出的脉冲周期是3秒钟。
(2)fb58分别在ob1和周期中断ob(例如ob35)中调用
展开全文