西门子plc在中断ob37中执行fc程序的问题

作者:老电工时间:2020年04月23日 08:37

在中断ob37中执行fc程序的问题

问题:在中断ob37中执行调用大量fc程序,是否影响ob1中正常程序的处理速度,是否会影响其它中断程序的速度,对cpu运行有没有影响?

解答:

1、在中断OB37中执行调用大量FC程序,对OB1中正常程序的处理速度,以及其它中断程序的速度的影响。

(1)组织块是按系统已分配的中断优先级来执行,数字越大优先级越高,优先级高的可以中断优先级低的。

(2)一般OB1的默认为1级,OB30-OB38默认为7-15级,OB37为14级。数字越大优先级越高。

(3)OB37中执行调用大量FC程序,则其就占用CPU时间长,肯定会响应对OB1中或其他中断的程序的扫描(执行)。

2、对cpu运行的影响

对CPU本身的运行没有任何影响,即CPU运行哪个程序是有系统操作系统来分配的。CPU只是一个执行“机构”而已。

3、对控制系统的实时性的影响

要合理应用OB循环中断:

按楼主的设计意图,是由两个OB循环中断来调度楼主的控制程序,即OB37(循环时间短,优先级高)与OB1(循环时间长,优先级低)。

合理的设计是将实时性要求高、数据更新要求快的任务(程序)均安排在OB37中来执行。而将上述要相对低一些的的任务(程序)均安排在OB1中来执行,可以轻重缓急地实现任务(程序)的调度。

一个有经验的程序(软件)设计者会合理地安排自己的控制系统中任务(程序)的中断优先级。也会通过实践不断修正所分配的优先级,使得自己的控制系统的实时性更高。

4、对于“中断OB37中执行调用大量FC程序”并非不可取,如果控制系统有此需求,只有如此才可满足实时性的要求,则可以这样操作。

plc程序设计的基本条件:熟练地、合理地应用中断、编制中断程序,使控制系统结构严谨、灵巧、科学,满足控制实时性的要求。

猜你喜欢

相关文章

西门子plc排行