OB35

关于300,在做PID控制时候的程序 一定要在OB35中做吗?不怎么懂这些中断程序

最佳答案

1、OB35是在一个固定的时间间隔执行循环中断组织块,默认的时间间隔为100毫秒,用户可以修改此时间,其范围1---60000毫秒。换言之,OB35 程序按照设定的执行周期循环执行,例如设置为100ms,则每隔100msOB35 程序被执行一次。
2、PID控制时候的程序 一定要在OB35中做吗?
PID不是非要在ob35中,也可以在OB1中。
转帖:
其中一个重要的因素是采样时间,说的具体点,就是数字pid——在西门子plc里面就是fb41这个模块需要定时调用!比如放在ob35里面,那么ob35(默认100ms)的执行周期就是数字pid的采样时间,这个100ms是数字pid运算公式里面的一个重要参数!所以,把fb41放在ob1里面执行,表面看也是可以执行的,但运算结果其实是偏离了理论目标。由于ob1扫描周期不固定,所以结果很难预料。单说运行是可以的,但用OB35调用,可以有好的控制精度不是说非要作在OB35里,而是指从OB35调用主要是0B35以固定周期运行,数字化PID的采样周期T必须是等间隔的,所以要用定时中断来触发。PID在定时中断中执行是因为定时中断准确,是以设定的周期执行的,除非有更高优先级的中断同时发生.而主程序的执行周期不是定长的,在主程序中的定时器的精度也受扫描周期的影响.OB35中断周期:按所设定的时间间隔产生中断。即采样周期:   常指在周期性的采样系统中,当对一模拟量进行采样时,两次采样之间的时间间隔。
原理上,PID 的调节节奏应该与其采样周期一致,这是数学模型应与物理过程一致的要求。这也就是 FB41要在 OB35 中周期调用且 OB35 的周期要与 FB41采样周期一致的原因。当然,在 OB1 或其他 FC、FB 中调用 FB41也是可以的,此时最好将 OB1 参数区中扫描周 期作为 FB41 的采样周期。

提问者对于答案的评价:
谢谢阿鸣老师的细心!还有个问题就是看到论坛上有这么个说法,就是比如程序没有全部扫描完,但是循环时间就到 了,就会报错OB82?这个大概是个什么意思呢?

最佳答案作者回复:
OB82?这个大概是个什么意思呢?OB82是诊断组织块。详见:详见《组织块使用说明》下载:
http://218.93.112.166/ec/C23/dl/xxzl/%E7%BB%84%E7%BB%87%E5%9D%97%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E.pdf
<S7-300400的系统软件和标准功能>下载:
http://www.ad.siemens.com.cn/download/SearchResult.aspx?searchText=1023

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc237116.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月1日 下午5:05
下一篇 2018年12月1日 下午5:05

相关推荐