0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文详解西门子PLC程序结构的基本原理

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2020-11-07 11:02 次阅读

CPU原则上运行两个不同的程序:

操作系统

• 用户程序。

操作系统

每个CPU都带有集成的操作系统,组织与特定控制任务无关的所有 CPU功能和顺序。操作系统任务包括下列各项:

• 处理重启(热启动)和热重启。

• 更新输入的过程映像表,并输出输出过程映像表

• 调用用户程序

• 采集中断信息,调用中断 OB。

• 识别错误并进行错误处理

• 管理内存区域

• 与编程设备和其它通讯伙伴进行通讯

通过修改操作系统参数(操作系统默认设置),可以在某些区域影响CPU响应。

用户程序

可以创建用户程序,并将其下载到CPU中。它包含处理特定自动化任务所要求的所有功能。用户程序任务包括:

• 确定CPU的重启(热启动)和热重启条件(例如,用特定值初始化信号)

• 处理过程数据(例如,产生二进制信号的逻辑链接,获取并评估模拟量信号,指定用于输出的二进制信号,输出模拟值)

• 响应中断

• 处理正常程序周期中的干扰。

用户程序中的块

可以应用 STEP 7编程软件构建用户程序,也就是说,可以将程序分成单个、独立的程序段。这具有下列优点:

• 大程序更易于理解。

• 可以标准化单个程序段。

• 简化程序结构。

• 更易于修改程序。

• 可测试单个程序段,因而简化调试。

• 系统调试变得更简单。

工业混合过程实例阐述了将一个自动化过程分成单个任务的优点。结构化用户程序的程序段,即程序块对应于这些单个任务。

在S7用户程序内可使用多种类型的块:

组织块(OB) OB 确定用户程序的结构。
系统功能块(SFB) 和系统功能(SFC) SFB 和SFC集成在S7 CPU 中,可以用来访问一些重要的系统功能。
功能块(FB) FB 是带有用户可自行编程的“存储器”的块。
功能(FC) FC 包含频繁使用功能的例行程序。
实例数据块 (背景DB) 调用FB/SFB 时,实例DB与块关联。它们在编译期间自动创建。
数据块 (DB) DB 是用于存储用户数据的数据区。除分配给功能块的数据外,共享数据块也可由任何一个块来定义和使用。


组织块和程序结构:

OB的启动信息

每个组织块都有20字节本地数据的启动信息,在启动OB时,由操作系统提供。启动信息指定OB的启动事件、OB启动的日期和时间、所发生的错误以及诊断事件。例如,OB40是硬件中断 OB,其启动信息包含产生中断的模块地址。

取消选定中断OB

如果将优先级为 0 或少于20字节的本地数据分配给优先级,则将取消选定相应的中断OB。处理取消中断 OB的限制条件如下:

• 处于运行模式时,这些中断 OB不能复制或链接到用户程序。

• 处于停止模式时,可以将它们复制或链接到用户程序,但CPU执行重启(热启动)时,它们停止启动,并向诊断缓冲区输入一个条目。

通过取消选定不需要的中断 OB,可以增大可用的本地数据区容量,从而可以保存其它优先级的临时数据。

循环程序处理

循环程序处理是可编程逻辑控制器上“正常”执行的程序类型,表示操作系统在程序循环(周期)中运行,在每次循环中,都会调用主程序中的组织块 OB1 。即循环执行OB1 中的用户程序。

事件驱动的程序处理

可由特定的事件(中断)中断循环程序处理。如果发生该类事件,将在命令边界中断当前执行的块,然后调用分配给该特定事件的其它组织块。该组织块一旦执行,将在中断点继续执行循环程序。

这表示可以处理部分用户程序,这些用户程序只有在需要时才循环处理。用户程序可分成一些“子程序”,分布在不同的组织块中。如果用户程序要对相对较少发生的重要信号(例如,限制值传感器,用于测量容器中的液位,并在到达最高液位时报告) 作出响应,则当输出该信号时需要处理的子程序可位于事件驱动处理型 OB上。

线性编程与结构化编程

可以在OB1中写入整个用户程序(线性编程)。只有在给S7-300 CPU 编写简单程序、并要求极少内存时才可行。

将复杂自动化任务分割成反映过程技术功能或可多次处理的小任务,可以更易于控制复杂任务。这些任务以相应的程序段表示,称为块(结构化编程)。

用户程序中的调用体系

要使用户程序正常运行,必须调用构成用户程序的块。这通过特殊的STEP 7 指令、块调用来完成,而这些指令、块调用只能在逻辑块中编程和启动。

次序和嵌套深度

块调用的次序和嵌套称为体系。可嵌套的块数目(嵌套深度)取决于特定的 CPU。下图阐述了一个扫描周期内块调用的次序和嵌套深度。

创建块的固定次序如下:

• 从上到下创建块,因此可以从块的顶行开始。

• 调用的每个块必须已经存在,即在一行块内,创建块的次序为从右到左。

• 最后要创建的块是 OB1 。

在图中所示的实例中应用这些规则,则可以按下列顺序创建块:

FC1 > FB1 + 实例DB1 > DB1 > SFC1 > FB2 + 实例DB2 > OB1

块调用

下图显示了在用户程序内块调用的顺序。该程序调用第二个块,然后完全执行该块的指令。一旦执行第二个块或调用块后,在块调用后的指令处继续执行发出调用命令的中断块。

当执行冷重启时,操作系统将 SFB3“TP”实例复位。如果在冷重启后,初始化该SFB 的实例,那么必须通过 OB100以PT = 0 ms 调用 SFB 的相关实例。例如,可通过在包含该 SFB 实例的块中执行初始化程序完成该操作。

责任编辑人:CC

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 西门子
    +关注

    关注

    93

    文章

    2995

    浏览量

    115470
  • 西门子PLC
    +关注

    关注

    13

    文章

    139

    浏览量

    16855
  • PLC程序
    +关注

    关注

    4

    文章

    72

    浏览量

    11253

原文标题:西门子PLC程序结构的基本原理

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    西门子系列PLC安装接线详解

    本文中介绍的西门子PLC安装接线详解,包含PLC型号有:Smart200、S7-300,S7-1200,S7-1500等。
    的头像 发表于 07-24 10:25 5905次阅读
    <b class='flag-5'>西门子</b>系列<b class='flag-5'>PLC</b>安装接线<b class='flag-5'>详解</b>

    西门子PLC实例电子教程

    本书为西门子PLC实例电子教程,第章就对PLC进行了概述,通过实例对 西门子 PLC进行了深度
    发表于 07-19 16:09 0次下载
    <b class='flag-5'>西门子</b><b class='flag-5'>PLC</b>实例电子教程

    西门子PLC案例

    西门子PLC案例,感兴趣的小伙伴们可以看看。
    发表于 07-29 18:42 176次下载

    西门子plc数据类型_西门子plc通讯方式

    西门子PLC的品质非常好,其网络稳定性、开放性深受工控人员的喜爱,而且编程软件分类多,使用方便。在国内工控界具有显著地位。虽然大家对西门子PLC都有
    发表于 07-25 10:57 1.4w次阅读
    <b class='flag-5'>西门子</b><b class='flag-5'>plc</b>数据类型_<b class='flag-5'>西门子</b><b class='flag-5'>plc</b>通讯方式

    西门子plc程序下载步骤

    今天我们主要学习西门子PLC程序下载步骤,下面以S7-200SMART为例进行说明.
    发表于 07-25 11:25 2.9w次阅读

    西门子PLC用户程序的教程详细说明

    本文档的主要内容详细介绍的是西门子PLC用户程序的教程详细说明。
    发表于 03-23 11:36 29次下载
    <b class='flag-5'>西门子</b><b class='flag-5'>PLC</b>用户<b class='flag-5'>程序</b>的教程详细说明

    读取西门子PLC系统时间的程序资料概述

    本文档的主要内容详细介绍的是读取西门子PLC系统时间的程序资料概述。
    发表于 07-20 16:35 22次下载
    读取<b class='flag-5'>西门子</b><b class='flag-5'>PLC</b>系统时间的<b class='flag-5'>程序</b>资料概述

    看懂西门子PLC程序结构

    所谓PLC程序结构,就是组成PLC程序的各种网络(Network)或“功能程序段”在PLC内部
    发表于 10-23 17:03 1w次阅读

    西门子PLC指令和程序设计

    西门子PLC指令和程序设计方法免费下载。
    发表于 05-07 09:42 120次下载

    读写西门子PLC

    读写西门子PLC资料。
    发表于 05-10 09:33 33次下载

    西门子plc程序结构介绍

    介绍以下常见的plc程序结构及其特点:    1.国外些小型可编程控制器程序结构    这些可编程逻辑控制器的用户程序由主
    发表于 12-09 14:18 2142次阅读

    西门子PLC编程软件功能及安装

    西门子PLC编程软件官方版是款专为西门子产品打造的PLC编程工具。西门子
    发表于 04-17 14:31 8次下载
    <b class='flag-5'>西门子</b><b class='flag-5'>PLC</b>编程软件功能及安装

    大型西门子PLC程序结构示例

    大型的西门子PLC程序结构示例。
    的头像 发表于 07-06 10:34 1273次阅读

    西门子plc模块型号详解

    西门子PLC(Programmable Logic Controller,可编程逻辑控制器)是工业自动化领域中非常重要的种设备,其模块化的设计使得其应用范围非常广泛。本文将详细介绍西门子
    的头像 发表于 06-11 16:18 4897次阅读

    西门子PLC中OB块的功能详解

    块)是不可或缺的重要组成部分,它承担着PLC与外部设备通信、内部程序执行以及错误处理等多重任务。本文将对西门子PLC中OB块的功能进行详细的阐述,以期为读者提供全面而深入的了解。
    的头像 发表于 06-15 11:27 3772次阅读