首页 理论教育 S7-300/400 PLC应用用户程序中的块

S7-300/400 PLC应用用户程序中的块

时间:2023-06-27 理论教育 版权反馈
【摘要】:用户程序包含处理用户特定的自动化任务所需要的所有功能。表4-1 用户程序中的块可以将控制任务分层划分为工厂级、车间级、生产线、设备等多级任务,分别建立与各级任务对应的逻辑块。OB1是用户程序中的主程序,每次扫描循环都要调用一次OB1。

S7-300/400 PLC应用用户程序中的块

PLC的程序分为操作系统和用户程序,操作系统用来实现与特定的控制任务无关的功能,处理PLC的启动、刷新过程映像输入/输出表、调用用户程序、处理中断和错误、管理存储区和处理通信等。用户程序包含处理用户特定的自动化任务所需要的所有功能。

1.用户程序的结构

STEP 7将用户编写的程序和程序所需的数据放置在块中,使单个程序部件标准化。OB、FB、FC、SFB和SFC都是有程序的块,统称为逻辑块(见表4-1),FB、FC、SFB和SFC属于子程序。通过块与块之间的调用,使用户程序结构化,可以简化程序组织,使程序易于修改、查错和调试。块结构显著地增加了PLC程序的组织透明性、可理解性和易维护性。程序运行时所需的大量数据和变量存储在数据块中。

表4-1 用户程序中的块

978-7-111-54209-4-Chapter04-1.jpg

可以将控制任务分层划分为工厂级、车间级、生产线、设备等多级任务,分别建立与各级任务对应的逻辑块。每一层的控制程序(逻辑块)作为上一级控制程序的子程序,前者又可以调用下一级的子程序。这种调用称为嵌套调用,即被调用的块又可以调用别的块。

2.组织块(OB)

组织块是操作系统与用户程序的接口,由操作系统调用。CPU的档次越高,能使用的同类型组织块越多。OB1是用户程序中的主程序,每次扫描循环都要调用一次OB1。OB1可以调用OB之外的逻辑块。

如果出现中断事件,例如时间中断、硬件中断和错误处理中断,CPU将立即停止执行当前的程序,操作系统将会调用中断事件对应的组织块(即中断程序)。该组织块执行完后,被中断的块将从断点处继续执行。组织块中的程序是用户编写的。

3.临时局部数据

生成功能和功能块时可以声明临时局部数据。这些数据是临时的,退出逻辑块时不保留它们。它们又是局部(Local)的,只能在生成它们的逻辑块内使用。CPU按OB的优先级划分局部数据区,同一优先级的块共用一片局部数据区。

4.功能与功能块

功能(FC)是用户编写的没有固定的存储区的块,其临时数据存储在局部数据堆栈中,功能执行结束后,这些数据就丢失了。不能为功能的局部数据分配初始值。

功能块(FB)是用户编写的有被控对象专用的存储区(即背景数据块)的块,功能块的输入、输出参数和静态数据(STAT)存放在指定的背景数据块(DI)中,临时数据存储在局部数据堆栈中。

5.数据块(www.xing528.com)

数据块(DB)是用于存放执行用户程序时所需的数据的数据区。与逻辑块不同,数据块没有STEP 7的指令。STEP 7按数据块中的变量生成的顺序自动地为它们分配地址。数据块分为共享数据块(Share Data Block)和背景数据块(Instance Data Block)。CPU可以同时打开一个共享数据块和一个背景数据块。访问被打开的数据块中的数据时不用指定数据块编号。

6.系统功能块与系统功能

系统功能块SFB和系统功能SFC集成在CPU的操作系统中,它们是预先编好程序的功能块和功能,不占用用户程序空间。用户程序可以调用这些块,但是用户不能打开它们,也不能修改它们的程序。

7.程序库

程序编辑器左边窗口的“库”文件夹中的程序库用来存放可以多次使用的程序部件,其中的子文件夹“Standard Library”(标准库)是STEP 7标准软件包提供的标准程序库,它由以下子文件夹组成:

1)System Function Blocks:保存在CPU的操作系统中的系统功能块SFB和系统功能SFC。

2)S5-S7 Converting Blocks:转换S5程序的块。

3)IEC Function Blocks:符合IEC标准的块,用于处理时间和日期信息、比较操作、字符串处理与选择最大值/最小值等。

4)Organization Blocks:组织块(OB)。

5)PID Control Blocks:用于PID控制的功能块。

6)Communication Blocks:用于SIMATIC NET CP通信的FC和FB。

7)TI-S7 Converting Blocks:一般用途的标准功能。

8)Miscellaneous Blocks:其他块,用于时间标记和实时钟同步的块。

“库”文件夹中还有其他程序库,例如“SIMATICL NETL CP”文件夹中的块用于通信处理器(CP)的编程,名称中包含“Redundant IO”的文件夹用于冗余控制系统。文件夹“stdlibs”与“Standard Library”中的块是重复的。用户安装可选软件包后,将会增加其他程序库。例如安装了顺序功能图语言S7-Graph后,将会增加GRAPH7库。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈