西门子step7程序结构与功能原理

来源:电工天下时间:2015-10-26 07:46:33 作者:老电工手机版>>

西门子step7程序结构与功能原理
 
1、CPU中程序

S7-300/400系列CPU 原则上运行两个不同的程序:操作系统和用户程序。

每个CPU都带有集成的操作系统,组织与特定控制任务无关的所有CPU功能和顺序。操作系统任务包括下列各项:处理重启(热启动)和热重启;更新输入的过程映像表,并输出输出过程映像表;调用用户程序;采集中断信息,调用中断OB;识别错误并进行错误处理;管理内存区域;与编程设备和其它通讯伙伴进行通讯;通过修改操作系统参数(操作系统默认设置),可以在某些区域影响CPU响应。

用户程序则是由用户进行创建,在STEP 7中进行编程后并将其下载到CPU中。它包含处理特定自动化任务所要求的所有功能,其任务包括:确定CPU的重启(热启动)和热重启条件,如用特定值初始化信号;处理过程数据,如产生二进制信号的逻辑链接,获取并评估模拟量信号,指定用于输出的二进制信号,输出模拟值;响应中断;处理正常程序周期中的干扰。

2、用户程序中的块
在STEP 7编程软件中进行构建的用户程序,可以将程序分成单个或独立的程序段,称为“块”。,这对于一个大的工业自动化过程来说具有非常大的优点,比如易于理解、可以标准化、方便修改程序、简化测试等。表3-2所示为在S7用户程序内可使用多种块的类型。

西门子step7程序结构与功能原理1

OB、FB、SFB、FC和SFC包含程序段,因此也称为逻辑块。每种块类型许可的块数目和块长度由CPU决定。
3、组织块
组织块(OB)表示操作系统和用户程序之间的接口,它由操作系统调用,控制循环中断驱动的程序执行、plc启动特性和错误处理。用户可以在STEP 7中对组织块进行编程来确定CPU特性。
常见的组织块主要包括以下部分(如图1所示):
 
西门子step7程序结构与功能原理2

图1常见的组织块
组织块确定单个程序段执行的顺序,即启动事件。启动事件触发OB调用称为中断,一个OB调用可以中断另一个OB的执行,哪个OB允许中断另一个OB取决于其优先级,高优先级的OB可以中断低优先级的OB,背景OB的优先级最低。

可以通过STEP 7给中断分配参数,如通过参数分配,可以取消选定参数块中的中断OB或优先级:日历中断、延时中断、循环中断和硬件中断(如图2所示)。

西门子step7程序结构与功能原理3
 
图2组织块优先级

注意:S7-300 CPU上的组织块优先级固定,但是对于S7-400 CPU(和CPU 318),可以通过STEP 7 修改OB10 - OB47组织块的优先级或者可以将相同优先级分配给多个OB。具有相同优先级的OB按照其启动事件发生的先后次序进行处理。

4、功能块、功能和数据块

功能块(FB)是属于用户自己编程的块,需要分配数据块(DB)作为其内存(实例数据块),因此传送到FB的参数和静态变量保存在实例DB中,而临时变量则保存在本地数据堆栈中。执行完FB时,不会丢失实例DB中保存的数据。但执行完FB时,会丢失保存在本地数据堆栈中的数据。

系统功能块(SFB)是集成在S7 CPU中的功能块,SFB是操作系统的一部分,不作为程序的一部分而被加载。同FB一样,必须给SFB创建实例数据块,然后将它们作为程序的一部分下载到CPU中。
功能(FC)也是属于用户自己编程的块,是一种"不带内存"的逻辑块。属于FC的临时变量保存在本地数据堆栈中,执行FC时,该数据将丢失,为永久保存该数据,功能也可使用共享数据块。由于FC本身没有内存,因此,必须始终给它指定实际参数。不能给FC的本地数据分配初始值。

FC和FB输出参数之间的重要区别在于后者使用实例DB。在功能块(FB)中,访问参数时,使用实例DB中的实际参数副本。如果调用FB时,没有传送输入参数或没有写访问输出参数,那么将使用原先保存在实例DB(实例DB = FB内存)中的值。但功能(FC)没有内存。

因此,与FB相反,将形式参数分配给这些FC不是可选,而是必须的。通过地址(指针跨过区域边界指向目标)访问FC参数。当数据区(数据块)地址或调用块的局部变量用作实际参数时,实际参数的副本将临时保存到用于传送参数的调用块的本地数据区中。

系统功能(SFC)是集成在S7 CPU中的预编程功能,可以在程序中调用SFC。SFC属于操作系统,不能作为程序的一部分而被加载。同FC一样,SFC也是"不具内存"的块。

与逻辑块(如FB、OB等)相反,数据块不包含STEP 7指令,它们用来存储用户数据,即数据块包含用户程序使用的变量数据。共享数据块则用来存储可由所有其它块访问的用户数据,其大小各不相同。用户也可以任何方式构造共享数据块,满足特定要求。

相关文章
  • 西门子plc顺序功能图分类与结构类型图解

    西门子plc顺序功能图分类与结构类型图解

    西门子plc顺序功能图的分类,包括单序列,选择分支与合并,并行分支,跳转与循环等,单序列由一系列相继激活的步组成,是最简单的一种顺序功能图。

    时间:2022-09-18 14:31:06

  • 西门子step7绝对寻址与符号寻址的用法详解

    西门子step7绝对寻址与符号寻址的用法详解

    西门子step7绝对寻址与符号寻址的用法,可以通过此符号访问用户程序中的地址,绝对地址包含地址标识符和内存位置,如果将符号名分配给绝对地址,可以使程序更易读。

    时间:2020-11-17 09:18:04

  • 西门子STEP7 Micro WIN编程软件选项设置方法

    西门子STEP7 Micro WIN编程软件选项设置方法

    有关西门子step7 Micro WIN编程软件的选项设置方法,介绍了西门子STEP7 Micro WIN编程软件的选项设置步骤,教大家设置合理的参数选项,以方便自己的编程工作。

    时间:2020-04-23 11:31:46

  • 西门子step7功能块定时器参数说明图解

    西门子step7功能块定时器参数说明图解

    西门子step7功能块定时器参数说明,西门子step7的iec定时器的三种类型,接通延时定时器ton,记忆接通延时定时器tonr,断开延时定时器tof,西门子step7提供了10种定时器指令。

    时间:2020-04-23 10:49:53

  • 西门子step7基本指令的分类与用法

    西门子step7基本指令的分类与用法

    西门子step7基本指令的分类与用法,包括位逻辑指令(位逻辑运算指令、定时器指令、计数器指令),以及数据指令的功能与用法说明,感兴趣的朋友参考下。

    时间:2020-04-23 10:47:26

  • 如何确定step7中工程项目需要MMC卡的空间量?

    如何确定step7中工程项目需要MMC卡的空间量?

    如何确定step7中工程项目需要MMC卡的空间量,确定控制程序所需的MMC卡的大小,将项目中所有程序块(OB、FC、FB、DB)占用装载内存(Load Memory Requirement)的数量相加。

    时间:2020-03-10 10:46:07

  • 【图】西门子plc程序结构显示与设定方法

    【图】西门子plc程序结构显示与设定方法

    西门子plc程序结构显示与设定方法,利用程序结构显示查看用户程序内的所有组成块的分层调用情况、调用结构等,对部分程序结构进行检查,可以使用step7的过滤器功能进行筛选、设定。

    时间:2020-03-10 10:45:11

  • 【图】如何打开非本地系统语言创建的step7 v5.5项目?

    如何打开非本地系统语言创建的step7 v5.5项目

    如何打开非本地系统语言创建的step7 v5.5项目,二种方法,将win7或windows server 2008操作系统语言修改为系统提示语言,修改step 7项目属性,使其可在任何windows系统语言下均可打开。

    时间:2020-03-10 10:29:17

推荐文章

Copyright © 2015 - 2022 dgjs123.com All Rights Reserved

电工天下 版权所有