西门子博图软件用户程序中的块介绍 |
发布时间:2023-12-13
|
块类型 下表给出了可用的块类型: 组织块 (OB) 定义 组织块 (OB) 构成了操作系统和用户程序之间的接口。组织块由操作系统调用,可以控制(例如)下列操作: 自动化系统的启动特性 循环程序处理 中断驱动的程序执行 错误处理 可以对组织块进行编程并同时确定 CPU 的特性。根据使用的 CPU ,提供有各种不同的组织块。 1.程序循环 OB 程序循环 OB 在 CPU 处于 RUN 模式时循环执行。主程序块是一种程序循环 OB。您可在此处放置控制程序的说明和调用其他用户块。您可以拥有多个程序循环 OB, CPU 将按编号顺序执行这些 OB。主 (OB 1) 是默认程序循环。 2.启动 OB 3.延时中断 OB 4.循环中断 OB 5.硬件中断 OB 6.时间错误中断 OB 如已组态,那么当扫描周期超过最大周期时间或发生时间错误事件时,将执行时间错误中断OB (OB 80)。如已触发,错误中断将中断正常的循环程序执行或其它任何事件 OB。 7.诊断错误中断 OB 8.拔出或插入模块 OB 9.机架或站故障 OB 检测到以下任一情况时, CPU 将生成机架或站故障事件: 10.时钟 OB 11.状态 OB 12.更新 OB 13.配置文件 OB 14/15.MC 伺服和 MC 插补器 OB 16.MC-PreServo 17.MC-PostServo 函数 (FC) 定义 函数 (根据 IEC 1131-3 标准,函数 (FC) 是不含存储区的代码块。通过函数可在用户程序中传送参数。因此,函数特别适合取代频繁出现的复杂结构,如计算等。) (FC) 是不带存储器的代码块。由于没有可以存储块参数值的数据存储器。因此,调用函数时,必须给所有形参分配实参。 应用 函数包含一个程序,在其它代码块调用该函数时将执行此程序。 例如,可以将函数用于下列目的: 将函数值返回给调用块,例如,数学函数 执行工艺功能,例如,通过位逻辑运算进行单个的控制 可以在程序中的不同位置多次调用同一个函数。 因此,函数块简化了对重复发生的函数的编程。 函数块 (FB) 定义 函数块是一种代码块,它将输入、输出和输入/输出参数永久地存储在背景数据块中,从而在执行块之后,这些值依然有效、。所以函数块也称为“有存储器”的块。 函数块也可以使用临时变量。 临时变量并不存储在背景数据块中,而用于一个循环。 应用 函数块包含总是在其它代码块调用该函数块时执行的子例程。 可以在程序中的不同位置多次调用同一个函数块。 因此,函数块简化了对重复发生的函数的编程。 函数块的实例函数块的调用称为实例。 函数块的每个实例都需要一个背景数据块;其中包含函数块中所声明的形参的实例特定值。 函数块可以将实例特定的数据存储在自己的背景数据块中,也可以存储在调用块的背景数据块中。 访问模式 S7-1200 和 S7-1500 提供两种不同的背景数据块访问选项,可在调用函数块时分配给函数块: 可优化访问的数据块 可优化访问的数据块无固定定义的存储器结构。 在声明中,数据元素仅包含一个符号名,因此在块中没有固定的地址。 可一般访问的数据块(与 S7-300/400 兼容) 可一般访问的数据块具有固定的存储器结构。 声明元素在声明中包含一个符号名,并且在块中有固定地址。 背景数据块 定义 函数块的调用称为实例。实例使用的数据存储在背景数据块中。 背景数据块的最大大小因 CPU 的不同而各异。函数块中声明的变量决定背景数据块的结构。 访问模式 S7-1200 和 S7-1500 提供两种不同的背景数据块访问选项,可在调用函数块时分配给函数块: 可优化访问的数据块 可优化访问的数据块无固定的定义结构。声明元素仅在声明中包含一个符号名,且块中没有固定地址。 可一般访问的数据块(与 S7-300/400 兼容) 可一般访问的数据块具有固定的结构。声明元素在声明中包含一个符号名,并且在块中有固定地址。 全局数据块 (DB) 定义 数据块用于存储程序数据。因此,数据块包含由用户程序使用的变量数据。全局数据块存储所有其它块都可使用的数据。 数据块的最大大小因 CPU 的不同而各异。可以以自己喜欢的方式定义全局数据块的结构。 还可以选择使用 PLC 数据类型 (UDT) 作为创建全局数据块的模板。 用户程序中的全局数据块 每个函数块、函数或组织块都可以从全局数据块中读取数据或向其中写入数据。即使在退出数据块后,这些数据仍然会保存在其中。可以同时打开一个全局数据块和一个背景数据块。 下图所示为不同的数据块访问: 访问模式 S7-1200 和 S7-1500 提供两种不同的全局数据块访问选项: 可优化访问的数据块 可优化访问的数据块没有固定的定义结构。在声明中,仅为数据元素分配一个符号名称,而不分配在块中的固定地址。 可标准访问的数据块(与 S7-300/400 兼容) 可标准访问的数据块具有固定的结构。数据元素在声明中分配了一个符号名,并且在块中有固定地址。 |