【摘要】:用户程序的分层调用就是将整个程序按照控制工艺划分为小的子程序,按次序分层嵌套调用,例如将一个控制任务划分为3个独立的子任务,在每个子任务下划分小的控制任务,程序的分层调用如图7-5所示。3个独立的子程序分别为FB10、FB2和FC3,在FB2中又划分两层控制程序,分别为FB1和SFC1,这样控制任务的分层通过程序块或子程序的嵌套调用实现,数据块DB10的使用与嵌套无关。图7-5 用户程序的分层调用
用户编写的函数或程序块必须在OB中调用才能执行,在一个程序块中可以使用指令调用其他程序块,被调用的程序块执行完成后返回原程序中断处继续运行,程序块的调用过程如图7-4所示。
调用的程序块类型只能是OB、FB、FC,被调用的程序块可以是FB、FC、SFB、SFC,OB不能被调用。
图7-4 程序块的调用
在控制任务中,可以将工厂级控制任务划分为几个车间级控制任务,将车间级控制任务再划分为几组生产线的控制任务,将生产线的控制任务划分为几个电动机的控制。这样从上到下将控制任务分层划分,同样也可以将控制程序根据控制任务分层划分,每一层控制程序作为上一层控制程序的子程序,同时调用下一层的控制程序作为子程序,形成程序块的嵌套调用。用户程序的分层调用就是将整个程序按照控制工艺划分为小的子程序,按次序分层嵌套调用(嵌套深度参考CPU样本手册,通常不能超过8层),例如将一个控制任务划分为3个独立的子任务,在每个子任务下划分小的控制任务,程序的分层调用如图7-5所示。(www.xing528.com)
3个独立的子程序分别为FB10、FB2和FC3,在FB2中又划分两层控制程序,分别为FB1和SFC1,这样控制任务的分层通过程序块或子程序的嵌套调用实现,数据块DB10的使用与嵌套无关。用户程序执行次序为OB1→FB10+背景DB7→FC1→FB2+背景DB2→FB1+背景DB1→SFC1→FC3→OB1。用户程序的分层调用是结构化编程方式的延伸。
图7-5 用户程序的分层调用
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。