Jump to content
  • Sign in to follow this  

    西门子 TIA Portal — OB1 主要循环组织块

       (0 reviews)

    leigehong

    在之前的文章中,我们讨论了 SIEMENS TIA Portal 中的不同类型的块,其中讨论了功能块 FB、功能 FC 和数据块 DB。

    在本文中,我们将讨论西门子 PLC 中的另一种类型的块,这些是组织块,在本文中,我们将讨论其中最重要的组织块,即主组织块或 OB1。

    内容:

    • 什么是组织块?
    • 不同类型的 OB。
    • 什么是 OB1?
    • 周期时间监控。
    • 简单的程序示例。
    • 结论。

    什么是组织块 (OB)?

    组织块,您可以将它们视为功能 FC 或功能块 FB。但不同的是,你不调用它们,PLC 的操作系统调用这些组织块,无论操作系统将 OB 作为 OB1 循环调用还是在某个事件发生时调用,无论哪种方式,操作系统 照顾它。您只需要创建块并在块内添加您想要的任何逻辑。有时,您甚至不需要在 OB 中添加任何代码,只需创建 OB 本身就可以提供许多好处,我们将在讨论其中一些 OB 时看到这些好处。

    组织块是 PLC 操作系统和用户程序之间的接口。任何 PLC 都会有两个不同的程序,运行程序是 PLC 的操作系统,用户程序是 PLC 程序员编写的用于控制某个过程的逻辑或代码。这两个不同的软件需要相互通信,而组织块 OB 就是如何完成此操作的。

    组织块 OB 用于执行许多任务,下面列出了其中一些任务:

    • 自动化系统的启动特性
    • 循环程序处理
    • 中断驱动程序执行
    • 错误处理。

    不同类型的组织块

    因为组织块基本上是操作系统执行许多任务的工具。

    不同的任务需要不同的 OB,这就是为什么 PLC 内部有许多不同的 OB,有多少不同的 OB 将取决于您使用的 PLC 类型,但以下是您几乎可以在所有 PLC 中找到的一些最常见的 OB。西门子 PLC

    • 主循环 OB1。
    • 时间会中断 OB。
    • 一天中的时间 OB。
    • 软件错误 OB。
    • 硬件错误 OB

    还有更多的组织块可用于您的逻辑。见图1。

    146-1.gif

    图 1 – TIA Portal 中提供的不同组织块

    在本文中,我们将讨论其中最重要的组织块,即主循环中断 OB1。

    主循环中断 OB1

    主循环 OB1 是负责由 PLC 循环执行逻辑的组织块。每当您创建新项目并添加 PLC 时,软件都会自动创建主 OB1。这些是 PLC 代码所需的最少块。见图2。

    146-2.gif

    图 2 – 主OB1自动创建

    在此主 OB1 中,如果项目很小,您可以编写整个 PLC 程序。如果您的项目相当大,那么您可能需要执行一些功能块 FB 的功能 FC。在这种情况下,您将使用主 OB1 来调用它们。

    当然,您不必通过 OB1 调用每个 FC 或 FB,但如果您的 OB1 不是嵌套调用的第一个块,则它将不会被执行。见图3。

    146-3.gif

    图 3 – 通过 OB1 调用您的块

    PLC 代码的基本基础是循环行为,这意味着您需要连续执行代码。当逻辑处理完成后,操作系统将再次开始处理它。这是通过使用主 OB1 来完成的,您可以在该 OB1 中放置和调用所有逻辑和代码,操作系统将确保连续执行它。

    您应该知道,即使您无法创建 OB1 块(因为添加新 PLC 时会自动创建 OB1 块),您也可以创建多个循环中断块。

    OB1 是一个循环中断,操作系统会自动连续调用并执行里面的任何逻辑。然而,对于大型 PLC 项目,您的 PLC 逻辑中有如此多的功能和功能块,您可以使用多个循环中断 OB 来更好地构建代码,使其易于阅读和理解。

    在这种情况下,您将创建另一个循环中断,见图 4。

    146-4.gif

    图 4 – 创建多个循环 OB

    当创建了多个程序循环 OB 时,将按照 OB 编号的顺序依次调用这些 OB。

    首先调用具有最低 OB 编号的程序循环 OB。见图5。

    146-5.gif

    图 5 – 具有多个循环 OB 的程序循环

    循环程序完成后,操作系统按如下方式更新过程映像:

    1. 它将过程映像输出中的值写入输出模块。
    2. 它读取输入模块的输入并将这些输入传输到过程映像输入。

    前两步加上 PLC 程序的执行称为一个扫描周期。见图6。

    146-6.gif

    图 6 – 西门子 PLC 的扫描周期

    周期时间监控

    循环时间是指循环程序的运行时间,包括所有嵌套程序部分(例如 FC、FB 和更高优先级 OB)的运行时间。如果创建了多个程序循环 OB,则每个程序循环 OB 都会影响循环时间。

    操作系统监视循环时间是否仍然小于配置的最大循环时间。如果超过最大循环时间,PLC 将根据您的编程进入 STOP 模式或调用 OB80。

    除了监控最大循环时间之外,还可以保证最小循环时间。为此,操作系统会延迟新周期的开始,直到达到最小周期时间。

    您可以在 PLC 的配置属性中配置最小和最大循环时间。见图7。

    146-7.gif

    图 7 – 配置最小和最大循环时间

    PLC 中的简单程序示例

    146-8.gif

    图 8 – PLC 程序示例

    为了更好地理解 PLC 程序周期和 OB1 执行,让我们创建一个简单的程序。该程序将使用一条加法指令,每 1 个扫描周期将值 1 累加到存储区域中。请参阅以下模拟。

    spacer.png

    从动画中可以看出,add 指令的执行速度非常快;这就是扫描周期的速度。这将取决于您的 PLC 的功能有多强大。但主要扫描周期在毫秒范围内。

    结论

    • 组织块是 PLC 操作系统和控制程序之间的接口。
    • 主循环 OB1 由操作系统循环执行。
    • 您可以通过将逻辑包含在一个或多个循环 OB 中来执行该逻辑。
    • 扫描周期时间是执行逻辑 1 次所用的时间。
    Sign in to follow this  
    88888888888888888888888888

    User Feedback

    Create an account or sign in to leave a review

    You need to be a member in order to leave a review

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

    There are no reviews to display.


×
×
  • Create New...