STEP 7 V5.4 编程手册

2018年6月25日15:04:56 发表评论 592 阅读
目录
文章目录[隐藏]

前言

用途

提该供手支册持完。整它概解述释了了如如何何使用创建ST程E序P 并7 编描程述。了它用设户计程用序于的在组安件装。和调试该软件时为用。该手册旨在用于供使用 STEP 7 和 SIMATIC S7 自动化系统执行控制任务的人员使这建些议实通例过简手单册介“绍使了用“ST使E用P 7 V5.4 版本,使用入门”中的实例熟悉该软件的使用。

STEP 7 编程”的主题。

基础知识要求

要了解本手册,需要具有自动化技术的常规知识。

、 或 下使用

此外,必须具备计算机应用能力并了解在操作系统 MS Windows 2000 Professional MS Windows XP Professional MS Windows Server 2003 PC ( )

类工作设备 如编程设备 的知识。

手册应用范围

本手册适用于 STEP 7 编程软件包 5.4 版本。

可以在 Service Pack 上获得最新信息:

  • 位于“readme.wri”文件中
  • 位于已更新的 STEP 7 在线帮助中。

在线帮助中“新增内容”主题提供了极好的介绍并概述了最新的 STEP 7 特征。

STEP 7 文档数据包

该手册是文档数据包“STEP 7 基本信息”的一部分。下表显示了 STEP 7 文档的总览:

STEP 7,使用入门手册 提了编供使程给用技术人员的基础信息,描述

法。控制ST器E来P 实7 和现控S7制-3任00务/4的00方可

6ES7810-4CA08-8BW0
从S5 到 S7,变频器手册
用图于 S7-3语00句/4表00 的梯手形册图(LAD)/功能块

用卷于 S7-300/400 的标准功能和系统功能

(FDB)/ (STL)

1 和卷 2

统LA功D、能F,B扩D、充S了TL、标准功能及系的范围。 STEP 7 基础信息 6ES7810-4CA08-8BW1

 

免责声明

表危示险如果不采取适当的预防措施,将导致死亡或严重的人身伤害。表警示告如果不采取适当的预防措施,可能导致死亡或严重的人身伤害。

带当安心全警告符号:表示如果不采取适当的预防措施,可能导致轻微的人身伤害。不当带心安全警告符号:表示如果不采取适当的预防措施,可能导致财产损失。

表须示知如果忽略相关注意事项,可能会导致非预期的结果或状态。

如身果伤出害现的一注个意以事上项的可危能险还等包级括,与则财将产使损用失表有示关最的高警危告险。等级的警告注意事项。用安全警告符号警告造成人必 事须项按中照,该合文格档人安员装是和指使被用授该权设按备照既/系定统安。全只惯有例合和格标人准员,才对允线许路调、试设和备操和作系该统设进备行。调在试本、文接档地的和安标全记注的意人员。

请注意如下事项:

该警设告备及其部件只能用于产品目录或技术说明书中所描述的范畴,并且只能与由西门子公司认可或推荐的只第有三正方确厂地商运提输供、的保设管备、或设部置件和一安起装使本用产。品,并且按照推荐的方式操作和维护,产品才能正常、安全地运行。

由本文®档标中识的的其所它有一名些称标是志西也门是子注A册G商的标注,册如商果标任。何第三方出于个人目的而使用,都会侵犯商标所有者的权 我们已会检定查期过审本查手本册手中册的中内的容内与容,所并描在述后的续硬版件本和中软进件行相必符要。的由更于正差。错在所难免,我们不能保证完全一致。

用途

提该供手支册持完。整它概解述释了了如如何何使用创建ST程E序P 并7 编描程述。了它用设户计程用序于的在组安件装。和调试该软件时为您

用该。手册旨在用于供使用 STEP 7 和 SIMATIC S7 自动化系统执行控制任务的人员使这建些议实通例过简手单册介“绍使了用“ST使E用P 7 V5.4 版本,使用入门”中的实例熟悉该软件的使用。

STEP 7 编程”的主题。

基础知识要求

要了解本手册,需要具有自动化技术的常规知识。

此外,必须具备计算机应用能力并了解在操作系统 MS Windows 2000 Professional MS Windows XP Professional MS Windows Server 2003 PC ( )类工作设备 如编程设备 的知识。

手册应用范围

本手册适用于 STEP 7 编程软件包 5.4 版本。

可以在 Service Pack 上获得最新信息:

  • 位于“readme.wri”文件中
  • 位于已更新的 STEP 7 在线帮助中。

在线帮助中“新增内容”主题提供了极好的介绍并概述了最新的 STEP 7 特征。

STEP 7 文档数据包

该手册是文档数据包“STEP 7 基本信息”的一部分。下表显示了 STEP 7 文档的总览:

文档 用途 订货号

基础信息

  • STEP 7,使用入门手册
提了编供使程给用技术人员的基础信息,描述

法。控制ST器E来P 实7 和现控S7制-3任00务/4的00方可

6ES7810-4CA08-8BW0
  • 从S5 到 S7,变频器手册
  • 用图于 S7-3语00句/4表00 的梯手形册图(LAD)/功能块
  • 用卷于 S7-300/400 的标准功能和系统功能

(FDB)/ (STL)

1 和卷 2

统LA功D、能F,B扩D、充S了TL、标准功能及系的范围。 STEP 7 基础信息 6ES7810-4CA08-8BW1

STEP 7 参考书目 提供参考信息,并描述编程语言

在线帮助

STEP 7 帮助

用途

以在线帮助的形式,提供了使用 STEP 7 标准软件中的S础T信EP息7。进行编程和组态硬件的基 一部分。

介绍该产品并安装该软件

STEP 7 概述

什么是 STEP 7?

SIMATIC 工业软件的一部分。STEP 7 标准软件包有下列各种版本:

S它T是EP 7 是一种用于对 SIMATIC 可编程逻辑控制器进行组态和编程的标准软件包。

      • S单T机EP应7用M程ic序ro。/DOS 和 STEP 7 Micro/Win,用于 SIMATIC S7-200 上的简化版上,它具有更广泛的功能:
      • STEP 7,应用在 SIMATIC S7-300/S7-400、SIMATIC M7-00/M7-00 以及SIMATIC C7- 准可软作件为包SI的M扩AT展IC使工用业软件的软件产品中的一个扩展选项包(参见 STEP 7 标

基本任务

  • 为功能模块和通讯处)理器分配参数的时机
  • 强制模式与多值计算模式
  • 全局数据通讯
  • 使用通讯功能块进行的事件驱动数据传送
  • 组态连接

行ST介EP绍7。是本文档的主题,而 STEP 7 Micro 将在“STEP 7 Micro/DOS”文档中进

给当出您了使用大多ST数E项P 目7 创都建需一要个执自行动的化任解务决,方并案将时其,分您配将给面一对个一基系本列步的骤基。本它任指务出。了下相图关

的参考章节,以使您方便地浏览手册,找到与任务相关的信息。其它步骤,有两个方法可供选择:

    • 您可首先组态硬件,然后对块进行编程。
    • 然用而此,方您法也,可例首如先,对将块已进编行程编的程块,集而成不到组现态有硬的件项。目中在。保养和维护工作时,建议采

单个步骤的简短描述

参见安装 和许可证 。

在安第装一ST次E使P 用7 和许可证密钥

  • 规在划使控用制器

STEP 7 时,对其进行安装,并将许可证密钥从软盘传送到硬盘( STEP 7 )的任务,ST并E为P 其7 进创行建工一作个之组前态,图对自动化解决方案进行规划,将过程分解为单个(参见对自动化项目进行规划的基本步骤)。

  • 设使计用程序结构结构 STEP 7 中可使用的块,将控制器设计草图中所描述的任务转化为一个程序
  • 启通动过 STEP 7

(参见用户程序中的块)。Windows 用户接口启动 STEP 7(参见启动 STEP 7)。

    • 创项供建目随项类时目似使结一用。个文在件项夹目,创所建有完的毕数之据后均,可所按有照其一它种的体任系务化均的将结在构该存项储目在中其执中行,并可
  • 组态

项目结构 (参见。)在对站进行组态时,您可指定您希望使用的可编程控制器;例如,300、SIMATIC 400、在户对程硬序件中进对模行组块态进时行,访您问可的在地组址态。表也中可指对定使自用动参化数解对决模方块案的要属使性用进的行模设块置以及用参见插入站 。

组态硬件

SIMATIC S5( 硬件组态的基本步骤)。

通置讯子的网基属础性是、预以先及组设态置的已网联络网。工为作此站,的您网需络要连创接建属自性动和化某网些络通所讯需连要接的子网、设程序中的绝对地址进行使用 参见创建符号表 。

  • 仅您适可用充于分利S7用:这生些成参并考赋数值据参,考使数得据用户程序的调试和修改更容易 参见可用参考
    • 创使建用程一序种可选编程语言创建一个与模块相链接或与模块无关的程序,并将其存储信为息块、源文件或图表(参见创建逻辑块时的基本过程和 STL 源文件中编程的基本(数据概述)。
    • 组例态如消,息通过其文本和属性,创建相关块的消息。使用传送程序,将所创建的消息

,参见组态消息。组态数据传送给操作员接口系统数据库 例如, ( SIMATIC WinCC SIMATICProTool)

    • 一组态旦在操作员监控中变创量建了操作员监控变量,就要为其分配所需要的属性。使用传见送组程态序,操ST作将E员所P 监创7 控建的变量操作。员监控变量传送到操作员接口系统 WinCC 的数据库(参仅将适程用序于下载给可编程控制器)

见用下户程载要序求或S7其:中在的完单成个所块有下的载组给态可、编参程数控分制配器、硬以件及解编决程方任案务的之可后编,程您模可块将整。

数操据作介系质统。M并7:将从它众独多自不或同随的用操户作程系序统一中起为传您送的给自所动需化要解的决方案可选编择程一控个制适系合统的的

    • 测仅试适程用于序

测配试数值介,绍以S。7及为您想要显示或修改的变量创建一个变C量P表U (参见使用变量表进行:为了进行测试,您可显示用户程序或中的变量值,为变量分仅适用于) :使用高级语言调试工具对用户程序进行测试。通监过视操显作、M诊7 断硬件线信息,确定模块故障的原因。借助于诊断缓冲区和堆栈内容,确示定关用于户模程块序的处在理中的错误原因。也可检查是否可在特定的用户程序 参见硬件诊断和显示模块信息 。CPU上运行

从在而创使建项目的/设编备辑之以后及,维一护件更很容有易意义参的见事打,印就项是目为文项档目。数据制作清,楚用的于文创档建,和

线管手理册设的备形文档式,的以一及种使可用选工常见具的,使格(式您进能行够打对印项目。数据进) 行D结O构CP化R,O将其转化为接

特殊的主题当创建一个自动化解决方案时,您可能要用到一些很有用处的特殊主题:

    • 多值计算 - 多个 CPU 的同步操作(参见多值计算- 多个 CPU 同步运行)
    • 多个用户在项目中进行工作(参见多个用户编辑项目)
    • 使用 M7 系统进行工作(参见用于M7 系统的步骤)

介绍该产品并安装该软件

STEP7 标准软件包

所使用的标准

面集成向图在形ST和E对P 象7 中的的 SIMATIC操编作程原语则言,符在合 EN 61131-3 标准。专该业标版准从软现件在包起符称合为 MS Windows XP ( Windows XP) MS

操作系统中运行。

专业版 从现在起称为 和

Windows Server 2003

标准软件包的功能

标准软件在自动化任务创建过程的所有阶段都将给予支持,比如:

      • 设置和管理项目
      • 为硬件和通讯组态并分配参数
      • 管理符号
      • 创建程序,例如,用于 S7 可编程控制器
      • 将程序下载到可编程控制器
      • 测试自动化系统
      • 诊断设备故障

STEP 7 软件用户界面的设计符合最先进的人类工程学,且易于入门。STEP 7 软件产品文档提供在线帮助和 PDF 格式的电子手册。

STEP 7 中的应用程序

SIMATIC 管理器

S可IM编A程T控IC制管系理统器管理一个自。动编化辑项数目据中所的需所的有工数具据由,而无论其设管计理用器于自何动种启类动型。的

(S7/M7/C7)SIMATIC

STEP 7 V5.4 编程手册-1

符号编辑器通过符号编辑器,可以管理所有共享符号。提供功能如下:

      • 给过程信号(输入/输出)、位存储器以及块设置符号名称和注释
      • 排序功能

有工有具其自它动工识别。使用该工具创建的符号表。 号属性的

      • 所 从其它 具Wi都nd可ows 程序中导入/导出到其它 W因i此nd,ow符s 程序 任何变化都可被所

硬件诊断

编程语言

故这障些功。双能击可以故障概模览块可可编显程控示关制器于故的障状的态。详细概信览息可。显该示信符息号范来围指取示决各于个每模块个是模块否发:生

  • 显示模块的常规信息(例如,订货号、版本、名称)以及模块状态(例如,故障状态)
  • I/O 和 DP 从站的模块故障(例如,通道故障)
  • 显示来自诊断缓冲区的消息

对于CPU,则显示下列附加信息:

  • 处理用户程序期间发生故障的原因
  • 显示周期持续时间(最长、最短以及最后一个周期)
  • MPI 通讯概率和负载
  • 显示性能数据(输入/输出、位存储器、计数器、计时器和块的可能数目)

组S7成-3部00分和。S7-400 的编程语言梯形图、语句表和功能块图是标准软件包的一个重要

    • 似梯:形梯图(形或图L允AD许)是在能ST流E过P 各7 编种程触语点言、的复图杂形元表件示和。输其出指线令圈语时法,与跟传踪递母梯线形之图间相的电

量流。

    • 表语书句写表(程或序S,TL则)是每条ST指EP令7都编与程语言执的行文程本序表的示步,骤与相机对器应代。码为相便似于。编如程果,用语句

表已 CPU经扩展包括一些高级语言结构 如结构化数据访问和块参数 。

示功逻能辑块功图能(FB。D复)是杂S功T能EP如7算编术程语言( 的可图直形接表结示合,逻使辑用框布表尔示代。数)惯用的逻辑框

其它编程语言则作为选件包(提供。功能)

硬件配置 使用该工具可对自动化项目的硬件进行配置并分配参数。提供功能如下:

    • 列要所组选态模可块编。程控制器,可从电子目录中选择机架,然后在机架所要求的插槽中排
    • 组态分布式 I/O 与组态集中式 I/O 相同。也支持具有通道式 I/O。
    • 控分。配支CP持U多参值数计期算间。,输可入以数设据置存属储性在,系如统启数动据特块性中和。通过菜单导航的扫描周期监

分配 CPU 期间,自动将参数分配给模块。这表示,例如,可以不新参数就交换模块。

    • 进分行配设模置块。参在数启期动间,通过对话框设置所有可设定的参数。不需要通过 DIP 开关

此外,在硬件配置工具中可将参数分配给功能模块 和通讯处理器 ,其模块有关的对话框和规则。系统在对话FM框中只CP提(供有效选F项M/,CP以防止错误)输入。

  • 分配方式与其它模块完全相 (FM) (CP)同。每个 和 包含在 功能包中 都有与

NetPro (网络配置)

可以使用 NetPro 通过 MPI 进行时间驱动的周期性数据传送,操作如下:

    • 选择通讯节点
    • 载在表到中所有输入数据中源和数据目标;自动产生要下载的所有块(SDB),并自动完全下

也可以执行事件CP驱U动的数据传送,操作如下:

    • 设置通讯连接
    • 从集成的块库中选择通讯或功能块
    • 以选定的编程语言将参数分配给选中的通讯或功能块

介绍该产品并安装该软件

STEP 7,5.4 版本有何新特性?

下列主题区已经作了更新:

      • SIMATIC 管理器
      • 组态和诊断硬件
      • 组态网络和连接
      • 标准库
      • 报告系统错误

SIMATIC 管理器

      • 准有两格式种进用行于显示。日为期进和时行该间设的置格,式转。到可选择以 ST管EP理7器国,家打语开言“或自IS定O义8”60对1 话标

框,然后选择“日期和时间”标签。

SIMATIC

      • 间从。ST为E进P 行7 V该5设.4置版,本转起到,可使用编程管设理备器(,PG打)/开PC“的自本定地义时”间对来话显框示,模然块后时选择

“日期和时间”标签。

SIMATIC

      • 为从此ST,E必P 须7 V安5装.4 版本起,通过分配一个口令,从可现以在选起择称限为制项目和库的访问。(参见访问保护须S知IM。ATIC Logon V1.3 SP1 (”、“工作模式
  • 给例项如目“和下库载设置了访) 问保护后改,变可”以和选“择复保位”留。修为改此日,志必,须该安日装志记录在线动作,

Logon V1.3 SP1 (从现在起称为 SIMATIC Logon) (参见访问保护须知)。

组态和诊断硬件

管理器中也有该功能 参见标识与维护 。

      • 支持“信息和维护”过程,以从模块读取标识数据或将标识数据写入模块中。

SIMATIC ( (I&M))

      • 节在点冗余”模。式接期口间模,块还必可须将支标持识该数功据能写。入 PROFIBUS DP 接口模块(通过“可访问
      • 可以导)入或导出 数据。通过该方式,可以在 和 系统或

工程系统之间交换CA数x据 参见导出和导入数据STEP 7CADCAE

该还过可程以在即可冗。余每模式个期间更( 新 CAx接口模) 块的固活件动,状只态要的该背模板块总支线持将

已更新的固件发送到冗其余它使用冗余的PR接O口F模IBU块S。现D在P可以通过处于

      • 软“件软件冗余冗余”功能现在允许复制并冗余插入 PA 链路及其从属 PA 从站(参见组态

用现程在序可通)过编辑 > 打开对象菜单命令来启动用于在 HW Config 中编辑对象的应(参见在 HW Config 中打开对象)。

      • 可以为 PROFINET IO 设备配置一个看门狗时间(参见配置看门狗时间)
      • 间从。STEP 7 V5.4 版本起,可使用编程设备(PG)/PC 的本地时间来显示模块时

组态网络和连接

      • 组支态持带短和IR同T 等通长信度的的PR总O线F周IN期ET参IO见(引同言步:实同时步)。实这时表以示太也网可。以为 PROFINET IO

指当定将在已插复入制的时要采设取备插入另一( 个站时,改善新处地理址。如。果 ) 地址已分配,则可以的动作 地址或分配IO(保持IP狗现在时间可使:作用与为“ 周期”标签从中站相设似备的的方对式象设置) 设备的看门的光部纤件模时块PR,O可F以IB。US这D使P得的总光线学参部数件计时算:更当为组精态确了。光此纤外环,路它时表,示可在指使定用要较使高用性的能(OLM) 缩短总线周期。

PROFIBUS DP 属性P。

标准库

  • 使用块FB 67 和 FB 68 扩展了标准库“通信块”,以用于开放式 TCP/IP 通信。

用户组织 来周期性地访

  • 使用块FB20、FB21、FB22 和 FB23 扩展了标准库“通信块”,用于根据德国

问PR用O户FI数BU据S。 [PROFIBUS Nutzerorganisation e.V. (PNO)]

报告系统错误

状除外已围存在设备的冗。余它库支“持冗单余模I块O通(V道1)的”冗外余,性还。有可新以的在块上库下“文冗相余关IO的C块G帮P”助(或通道粒

列ST表EP:7 自述) 文件中找到更多信息。在常见问题解答下给出了所支持模块的当前

    • 从输出STEP 7设V备5.上4 版的本诊起断,事支件持。 PROFIBUS 的数据块(DB 125)。该数据块可用于

HMI介绍该产品并安装该软件

STEP 7 标准软件包的扩展使用

可以由软件选项包扩展标准软件包,选件包分成下列三类软件:

      • 工这些程工具为:高级编程语言,以及技术含量较高的软件。
      • 运这行些软件;包含现货供应软件,用于生产过程。
      • 人该机软界件面专(H用MI于);操作员监控。

下表显示了不同可编程控制系统可使用的可选软件:

STEP 7
工程工具 S7-300 S7-400 M7-300 M7-400 C7-620
  • Borland C/C++
o
  • CFC
+1) + +2)
  • DOCPRO
+ +3) +
  • HARDPRO
+
  • M7 ProC/C++
o
  • S7 GRAPH
+1) +2)
  • S7 HiGraph
+ +
  • S7 PDIAG
+
  • S7 PLCSIM
+ +
  • S7 SCL
+ +
+ + +
+ +
+
  • M7-SYS RT
o
PID + +
+
  • PRODAVE MPI
+
+ +
  • ProAgent
  • SIMATIC ProTool
  • SIMATIC ProTool/Lite
o
o = 强制

  • SIMATIC WinCC
+ =可选

1) = 建议用于 S7-400 以上

2) =不建议用于 C7-620

3) =不用于 C 程序

  • 运行T软e件leservice
  • 模糊控制
  • M7-DDE 服务器
  • 模块化 控制
  • PC-DDE 服务器
  • 人机标界准面 PID 控制

工程工具

工程工具是面向任务的工具,可用来扩展标准软件包。工程工具包括:

        • 程序员使用的高级语言
        • 技术员工使用的图形语言
        • 用于诊断、模拟、远程维护和设备文档等的辅助软件。

高级语言

  • S程步7顺的G序RA分P成。H几是个用步于。对步顺包序含控控制制(步输和出转的移动)进作行。编由程转的移编条程件语控言制。从在一该个语步言到中另,一过个
  • S设7备H可iG分ra成ph几是个一独种立编功程能语单言元,,以每状个态功图能的单形元式可描处述于异不步同、状非态顺。序可过通程过。在为图此形,之间交换消息而使这些功能单元同步。编程的用户使用。比C如和,Pascal 相似。因此,S7 SCL 尤其适用于熟悉高级语言
  • S言7结S构CL与是编符程合语E言N 61131-3 (IEC 1131-3)标准的基于文本的高级语言。它的语S7 SCL 可用于编程复杂或频繁发生的功能。

图形语言

辅助软件从S7大和量M简7单的逻C辑F操C 作是直以至图复形杂方控式制互和连控功制能电的路编。程在语库言中。以这块些的功形能式涉提及供范大围量非该常

  • Borland C++ (仅适用于 M7)包含 Borland 开发环境。

类功能块。通过将块复制到图表中,并用连接线将这些块互连,来进行编程。

    • 接通线过手DO册C便P于RO管,理可组以态将数S据T,EP并7可下根创据建特的定所要有求组准态备数打据印组信织息进。接线手册。这些
    • H任A务R。DPRO 是带用户支持的 S7-300 的硬件配置系统,用于组态大型复杂自动化

STEP 7 开发环境中。

    • M到7 ProC/C++ (仅适用于 M7)允许将编程语言 C 和 C++的 Borland 开发环境集成
    • 可制以器使,用以进S7行P测LC试S。IM (仅适用于 S7)模拟连接到编程设备或 PC 的S7 可编程控

PLC I/O 的故障和故障状态(例如,没有到达限位开关)。

    • S断7。P过DI程AG诊(断仅允适许用检于测S7)允许标准化组态 SIMATIC S7-300/S7-400 的过程诊进行在线编程和维护。
    • TeleService 是一种解决方案,可通过 PG/PC 的远程通讯网络,对远程 S7 和M7 PLC

运行软件

运中行执软行件。提它供包可括在:用户程序中调用的即时使用的解决方案,直接在自动化解决方案

        • 用于 SIMATIC S7 的控制器,如标准、模块化和模糊逻辑控制
        • 用于链接可编程控制器与 Windows 应用程序的工具
        • 用于 SIMATIC M7 的实时操作系统

用于 SIMATIC S7 的控制器

        • 标中准。带PI集D成控控制制允器许设将置闭的环参控数制分器配,工脉具冲允控许制设器置以控及制步器骤,控可制在器极集短成时到间用内户优程化序使5HDO-WLPH RSHUDWLQJ V\VWHP0?-6<6 577RROV IRU OLQNLQJ ZLWK :LQGRZV0?-''(-6HUYHU352'$9( 03,
        • 连如所果包简单含的PI标D准控功制能器块不,足创以建解几决乎自任动何化一任种务控,制请器使结用构模。块化 PID 控制。可以互
        • 通过过复模杂糊,控或制者,过可程以和创顺建控模器糊没逻有辑按系预统期。响如应果,不或能者对发过生程线进性行化数错误学定,义或或者定同义时太又提供关于过程的信息,那么请使用这些系统。

用于链接 Windows 的工具

        • P讯R量O的DA工V具E 栏M。PI它是自S动IM控AT制IC通S过7、SIM接A口TI的C 数M7据和流S量IM。ATIC C7 之间过程数据通
        • M7 DDE 服务器 动态数据交换 可M用P于I 将 应用程序链接到中的过程变量,而无需另外编程。

实时操作系统

WindowsSIMATIC

        • M包7使-S用YS RT 包含操作系统 M7 RMOS 32 和系统程序。这是 SIMATIC M7 软件M7-ProC/C++和 CFC 的前提条件。

人机界面

人机界面(HMI)是专门设计用于在 SIMATIC 中进行操作员监控的软件。

        • 在开任放何式工过业程领可域视、化结系统合任SI何M技AT术IC使W用in的C重C 是要一的个操标作准员的监操控作功员能接。口,包含所有可和 紧凑型设备的现代工具。
        • SIMATIC ProTool 和 SIMATIC ProTool/Lite 是用于组态 SIMATIC 操作员面板
        • P有ro针A对ge的nt过是程获诊取断设。备和机器中错误位置和原因信息的诊断软件,可提供快速、

安装

Automation License Manager

通过 Automation License Manager 获取用户权限

STEP 7 编程软件,需要一个产品专用的许可证密钥(用户权限)。从STEP 7 V5.3 Automation License Manager(许可证模块)。版本起,该密钥通过 安装。是 的软件产品。它用于管理所有系统的

A许u可to证ma密tio钥n License Manager Siemens AG Automation License Manager 位于下列位置:

        • 在要求许可证密钥的软件产品的安装设备上
        • 在单独的安装设备上

取Au帮to助ma,tio请n按Licen或se选M择a帮na助ger 集许成可了证自管身理的器在帮线助帮。助该。在要线在帮安装许可证管理器后获

        • 从 Internet 上Siemens AG 的 A&D 客户支持页面下载助包含 Automation

许可证

License Manager 功能和操作的详细信息。

供合使法用使用产品受的许合可法证权保限护。的下ST列E各P 项7 程提序供软使件用包权时限必证须明要:有许可证。许可证为用户提

  • CoL (许可证证书),和
  • 许可证密钥

许可证证书(产Co品L所) 包含的“许可证”是使用该产品权限的合法证明。该产品只能供许可证证书

拥有者或由拥有者授权使用的人员使用。

许可证密钥许可证密钥是软件使用许可证的技术表示 电子“许可证标志” 。

确SIE认M具E有NS有A效G许给可受证许密可钥证之保后护,的才所有软件( 颁发证许和可使证用密条钥款。启)动计算机后,只能在能根据许可使用该软件。

    • 可以使用不带许可证密钥的标准软件来熟悉用户接口和功能。注意
    • 但是,必须使用许可证才能根据许可证协议完全无限制地使用 STEP 7 软件。
    • 如果还没有安装许可证密钥,那么将定期提示您安装许可证密钥。

可以按如下所述,在各种类型的存储设备之间存储和传送许可证密钥:

    • 在许可证密钥磁盘上或 U 盘上
    • 在本地硬盘上
    • 在网络硬盘上

安装没有提供许可证的软件产品,则请判定需要何种许可证密钥,并按要求订助欲。知获取和使用许可证密钥的详情,请参见 Automation License Manager 的在线帮

许可证类型给性西取门决子于所AG安软装件的产许品可提证供密下钥列类不型同。类可型在的附面带向的应许用可的证用证户书许中可获证得。使软用件类的型实。际特

许可证类型

描该述软件可在希望具有无限使用时间的单台计算机上使用。

  • 有效期最多为 14 天,

该软件可在下望列具限有制无条限件使下用使时用间:的计算机网络(“远程使用”)上使用。

  • 有使效用期的最总多工为作小50时天数

该• 软件可在下列限制(条件下使用) :

  • 第用一于次测使试用和之确日认起免的除总责操任作。天数,
  • Upgrade License 可用于将“旧版本 X”软件转换为新版本 X+。

在• 软件升级方面,现有系统中的特定要求可能适用:

  • 由于给定系统中需处理的数据量增大,可能需要升级。

Upgrade License

Rental License

Trial License

Floating License

Single License

安装 Automation License Manager

A可u以to在ma安tio装n License Manager 的安装软件。

Automation License Manager 通过 MSI 设置过程安装。STEP 7 产品 CD 包含STEP 7 的同时安装 Automation License Manager 或在以后安装。

注意

        • “欲知如何安装 Automation License Manager 的详细信息,请参见当前的

Readme.wri”文件。

        • 有Au信to息ma。tion License Manager 的在线帮助包含许可证密钥功能和处理所需的所

随后安装许可证密钥

启动 STEP 7 软件时如果没有可用的许可证密钥,将显示一个指示该情况的警告消息

        • 可以使用不带许可证密钥的标准软件来熟悉用户接口和功能。
        • 但是,必须使用许可证才能根据许可证协议完全无限制地使用 STEP 7 软件。
        • 如果还没有安装许可证密钥,那么将定期提示您安装许可证密钥。

可按下列方法随后安装许可证密钥:

        • 从磁盘或U 盘上安装许可证密钥
        • 安装从 Internet 上下载的许可证密钥。这种情况下,必须首先订购许可证密钥。
        • 使用网络中可用的 Floating License 密钥

助欲。知要安装访问许可该帮证密助钥信息的,详请细按信息,或请选参择见菜A单ut命om令a帮tio助n Lic许en可se证M管an理a器ge帮r 的助在。

        • 态在时W,ind许o可ws证2密00钥0/才XP有/S效er。ver 2003 中,只有在本地硬盘上安装并具有写访问
        • 也可以在网络内使用Floating License ("远程"使用)。

处理许可证密钥的指南

当请注心意在 在线帮助以及在安装中

Automation License Manager

CD-ROM

Automation License Manager

CD-ROM

那么ST将EP丢7失R许e可ad证me密.w钥ri且文不件可中恢关复于。处理许可证密钥的信息。如果不遵守这些指南,

选要择访帮问助Auto许ma可ti证on管Li理ce器ns帮e 助Ma菜n单ag命er令的。在线帮助,请按 F1 获取上下文关联帮助或该帮助部分> 包含许可证密钥功能和处理所需的所有信息。

安装STEP 7

软件安装程序执行安装。

STEP 7 安装程序可自动完成安装。通过菜单可控制整个安装过程。可通过标准

安Wi装nd的ow主s要20步00骤/X为P:/Server 2003

  • 将数据复制到编程设备中
  • 组态 EPROM 和通讯驱动程序
  • 安装许可证密钥(如果需要)

STEP 7

注西释门子编程设备装运时在硬盘上包含可即时安装的 软件。

安装要求

  • 操作系统:

Microsoft Windows 2000 Windows XP Windows Server 2003

    • 基包本含硬下件列各:项的编程设备或
    • 奔腾处理器512MB RAM。PC:
    • 至少(600 MHz)
    • 彩色监视器、键盘和鼠标,Microsoft Windows 支持所有这些组件进行编程。编程设备(PG)是具有特殊紧凑型设计、用于工业用途的 PC。它配备齐全,可用来对硬请盘参空见间:“ ”文件,获取所需硬盘空间信息。
    • 一个与设备通讯端口连接的 PC USB 适配器,或者
    • 在设备中安装 MPI 模块(例如,CP5611)。PG 装配有 MPI 接口。
    • 只外部有存在储通过器(可选编) 程
      1. 安装过程

准备安装 在开始软件安装以前,必须先启动操作系统已经在的硬盘上保存有可安装的(Windows 软20件00,那XP么不需Se要rv外er部20存03储) 介若要从 CD-ROM 中安装,请在 PC 的 CD-ROM 驱动器中插入 CDROM。

启动安装程序

按如下所述操作,安装软件:

  1. 插入CD-ROM,双击“SETUP.EXE”文件。
  2. 按照屏幕上安装程序的逐步指示进行安装。

该程序引导您完成安装的所有步骤。可以前进到下一步或返回上一步。

地安正装确期选间,择安对装话框。提示从显示的选项中进行选择。下列注意事项有助于快速、方便

如果已经安装某一种版本的 STEP 7...

以如选果择安装:程序在编程设备上检测到其它版本的 STEP 7,则会显示相应消息。然后可

        • 中或止安装,从而可以在 Windows 下卸载旧 STEP 7 版本然后重新启动安装,
        • 继续执行安装,覆盖以前版本。

盖为旧进版行本良的好缺的点软件是随管后理卸,载始终旧软应件该在版本安时装,新版旧版本之本的前一卸些载组任件何可旧版能不本。能用删新除版。本覆

选择安装选项

提供三个选项,选择安装范围:

        • 标前准产安品装信:息用,于获用取户该类界面型的组所态有所对要话求框的语内言存、空所间有信应息用。以及所有实例。请参见当
        • 组基态本所安要装求:的只内有一存种空间对信话框息。语言,没有实例。请参见当前产品信息,获取该类型
        • 例用和户通自讯定功义能(“。自定义”)安装:您可以确定安装范围,例如,程序、数据库、实

ID 号

上将在安装期间提示您输入一个 ID 号(位于软件产品证书或位于许可证密钥存储介质。

安装许可证密钥

许安可装期证密间,钥,程将序会检显查示是一否条在硬消息盘,上安指示装了必须相应具的有许可证密钥才。如能使果用没该有软找件到。有根效据的

希需望要现,可在安以装立许即可安装证密许可钥,证密则在钥提或者示如继此续操执作行时安,装插、入以授后权再磁安盘装或许使可用证密钥。许如可果证。

PG/PC 接口设置

息安,装请期参间,见“会显设置示一个对话接框口,”在。此可以将参数分配给编程设备/PC 接口。更多信

PG/PC

将参数分配给存储卡

安装期间,会显示一个对话框,可以将参数分配给存储卡。

        • 序如果”选不使项。用存储卡,则不需要 EPROM 驱动程序。选择“无 EPROM 驱动程
        • 否则,选择适用于 PG 的条目。
        • 端如口果使用 PC,请选择外部编程器的驱动程序。在此,必须指定连接该编程器的修改设定ST的E参P 数7 程。序组或控制面板中调用“存储卡参数分配”程序,可以在安装后

闪存文件系统

在分配存储卡参数的对话框中,可以选择安装闪存文件系统。

的例其如它,在内容SI时M,AT要IC求M使7用下闪,存当文将件单系个统文。件写入到 EPROM 存储卡,而不修改存储卡

如程果器使,用并合希适望的使编用程闪设存备功能(PG,那72么0/P请G安7装40闪/P存G文76件0系、统现。场 PG 和专业 PG)或外部编

如果在安装期间发生错误

可能由于下列原因取消安装:

        • 动如果安在装。启动安装之后立即发生初始化错误,那么极有可能没有在 Windows 下启的空闲空间。
        • 硬盘空间不足:对于基本软件,根据安装范围,要求在硬盘上大约有650 MB – 900 MB
        • 故障CD-ROM:如果 CD 发生故障,请与当地的西门子代表处联系。
        • 操作员错误。仔细按照指示,重新启动安装。

已经完成安装后…

屏幕消息报告安装成功。

启如果动在安装期应间用修程改序了、系统文件,则管会理提器示。重启 Windows。重启后(热启动),可以。

成功安ST装E后P ,7 就会建立

SIMATIC STEP 7

设置 PG/PC 接口

在将此参,数可分以配给组态 PG/PC 和PLC 之间的通讯。安装期间,将显示一个对话框,可以

关口。”,在安装后PG打/P开C该接对口话。框也。可这以样在可S以T在EP安7装程以序后组修中改调接用口“参设数置,P而G与/P安C装接无

基本过程 要操作接口,必须执行下列各项:

        • 在操作系统中组态
        • 合适的接口组态

中如检果使查中用断带和M地PI址卡分或配通,讯确处保理没器有(C发P)生的中P断C冲,突那,么也应没该有在地W址in区do重w叠s 的现“象控。制面板” 卡,W因ind此o安ws装2时00不0、再W提in供d该ow组s 件XP。和 Server 2003 中,不再支持 ISA 组件 MPI-ISA态为简化将参数分配给编程设备/PC 接口,对话框将显示默认的基本参数设置(接口组)在选择列表。

将参数分配给 PG/PC 接口

步骤(详细信息请参见在线帮助中):

  1. 在 Windows“控制面板”中双击“设置 PG/PC 接口”。
  2. 将“应用访问点”设置为“S7ONLINE”。
  3. 所在要“求使的用接的口接参口数参设数置设,置那”么列必表须中首,先选通择过所“要选求择的”接按口钮参安数装设一置个。模如块果或没协有议显。示

接口”中。

然后自动产生接口参数设置。在即插即用系统中,不能手动安装即插即用 CP

(CP 5611 和CP 5511)。在 PG/PC 中安装硬件后,它们自动集成在“设置PG/PC

- 以如将果编选程择设具备有或自动识别总线参数功能的接口(例如 CP 5611 (自动)),那么可

< 187.5 Kbps

1都自动如识此别操作的;要对求于:将循环广播总子线网参,数必的须主启站用连循接环到广总播线总。线所参有数新默M认PI的组件

迟果。传输率

PC 连接,到那M么P读I 或取总PR线O参FI数BU时S,,可而能无产需生设高置达总线分参钟数的。延如

PROFIBUS 网络设P置RO。FIBUS

网相

进如行果修选改择,了使一其个与不子能自) 动匹识配别。总线参数的接口,那么可以显示其属性,然后

(在如果与其它设置发生冲突(例如,中断或地址分配),那么也必须进行修改。此时,可Windows 的硬件识别和控制面板中作一些相应修改(参见下面) 。当请勿心从接口设置中删除任何“! ”参数。

否则将引起其它应用故障。

检查中断和地址分配

TCP/IP如果使用带 MPI 卡的 PC,那么应该始终检查默认中断和默认地址是否空闲。

安装

卸载STEP 7

使用标准 Windows 方法,卸载 STEP 7:

  1. 框在。“控制面板”中双击“添加/删除程序”图标,启动 Windows 软件安装对话
  2. 在已安装软件的显示列表中选择 STEP 7 条目。点击“添加/删除”按钮。
  3. 出现“删除共享文件”对话框时,如果不确定,则请点击“否”按钮。

详述自动化概念

规划自动化项目的基本过程

该一个章工概述业混了规料划过程可的编实程控例制,器逐(步PL引C导)自您动完化成项整目个所过涉程及。的基本任务。基于自动化控制

规划自动化项目有多种方法。下图阐述了可用于任何项目的基本步骤。

'LYLGH WKH SURFHVV LQWR WDVNV. 'HVFULEH WKH LQGLYLGXDO DUHDV. 'HILQH WKH VDIHW\ UHTXLUHPHQWV.

'HVFULEH WKH UHTXLUHG RSHUDWRU GLVSOD\V DQG FRQWUROV.

&UHDWH FRQILJXUDWLRQ GLDJUDPV RI \RXU SURJUDPPDEOH FRQWUROOHU.

将过程分成任务和区域

自更动小化的过任程务包,含用大这量种单方个法任甚务至。可通以过定在义过最程为内复杂识的别过相程关。任务组,然后将这些组分成下面的工业混料过程实例可用于阐述如何将过程划分为一些功能区域和单个任务:

确定过程区域

定义要控制的过程后,将项目分成相关的组或区域:

由于每组都分成小型任务,因此要求控制部分过程的任务变得不太复杂。

域在工包含业的混设料备过与程配实例料中,区可域以相识同别。4 个不同区域(参见下表)。在该实例中,配料 A 区

B

功配能料区域 所使用的设备

A

配料

配料A 的进料泵

A 的入口阀

配料A 的进料阀

A 的流量传感器

B

混料罐

配料B 的进料泵

B 的入口阀

搅配拌料 B 的流量料阀传感器

器B电机

罐排液料位阀测量开关

排料

描述单个功能区域

该在过区程域的内不描同述元每件个。区这域些和元任件务包时括,:不仅需要定义每个区域的操作,还需要定义控制

  • 每个任务的电气、机械和逻辑输入和输出
  • 工 单个任务之间的互锁和依赖性

也性和业互混锁料类过型程。实下例表使提用供泵了、电描述机工和业阀混。料必须过程精中确所描述使用识别设备操的作实期例间。所完要求成的描操述后作特,

可以使用它来订购需要的设备。

配进料料泵A/电B:机进将料配泵料电机

A 和B 传送到混料罐。

  • 流额速定:值每:分钟 400l (时10为0 加仑)

通• 过混料罐附近12的00操rp作m员站控1制00泵kW (134hp)

  • 混料罐不满。
  • 混没料有罐激的活排紧料急阀断闭电合。。
  • 如果满足下列条件,泵将关闭:
  • 启动泵电机 7 秒后,流量传感器指示无流量。
  • 流量传感器指示停止流动。

示要器操复作位泵。,必须满足下列条件:

(启动/停止)。计数启动次数以用于维护。可通过一个按钮将计数器和显

A 和B 的入口阀和进料阀可允许或防止配料流入混料罐中。阀有一个具有弹簧复位的螺线管。

配配料料 A/B:入口和进料阀

  • 激取活消螺激线活管螺时线,管打时开,阀闭。合

由• 用户程序控制入口阀和进料阀。

  • 如果满进足料下泵列电条机件已,经泵运将行关1 闭秒:以上。
  • 流量传感器指示无流量。

要激活阀,必须满足下列条件:

搅搅拌拌器器电电机机在混料罐中混合配料数要器操和作显泵示,器必复须位满。足下列条件:

  • 额定值:
时为 A B
  • 罐液位传感器没有指示“罐液位低于最小值”。
  • 混没料有罐激的活排紧料急阀断闭电合。。
  • 流速计在启动电机后 10 秒内不指示已经到达额定速度。

(启动/停止)。计数启动次数以用于维护。可通过一个按钮将计

排排料料阀阀允许将混料物 通常为重力进料 排放到过程中的下一个阶段。阀有一个具有弹簧复位的螺线管。可在下列条件下打开排料(阀打:开/关闭)。

  • 激取活消阀激时活,螺打旋开管出时口,阀闭。合出口阀。

( )

  • 通过操作员站控制出口阀
  • 搅拌器电机关闭。
  • 罐没液有位激传活感紧器急没断有电指。示“罐空”
  • 如果满足下列条件,泵将关闭:
  • 罐液位传感器指示“罐空”。

罐混液料位罐中测的量开开关关指示罐中的液位,用于互锁进料泵和搅拌机电机。图写。完要控制的每个设备的物理描述后,需绘制每个设备或任务区域的输入和输出列出输入、输出和输入/输出

创建电机的 I/O 图

“在工电机业混块”料控过制程,的该实块例对中于使所用有两三个进个设料泵备都和一相个同。搅拌该块机要。求每个电个机输都入由:其两自个身输的入用

机于运启行动或不停运止行电,机一,个一输个入输用入于用时于间复,位在维该护时显间示内器必,须一接个收输响入6应用信于号电,机一响个应输信入号用(电于

测量时间/ 的计时) 器数目。

个逻输辑出块用还于要求指示四应个该输开出始:维两护个输电机出。指示电机的操作状态,一个输出指示故障,另一行需编要辑输和入修/ 输改出。来激活电机。它用于控制电机,但同时也可在“电机块”的程序中进

6WDUW 0RWRU )DXOW
6WRS

5HVSRQVH

6WDUWB'VS
6WRSB'VS
5HVHW 0DLQW 0DLQW
7LPHU 1R
5HVSRQVH 7LPH
0RWRU

创建阀的I/O 图

个每输个入阀:都一由其个输自入身用的于“打阀开块阀”,控一制个,输该块入用对于关所闭使阀用的。它所有还有阀两都个相输同出。:逻一辑个块输有出两中阀进块行有编一辑个和输修入改/输。出,用于激活阀。它用于控制阀,但同时也可在“阀块”的程序

,/2 'LDJUDP RI WKH 9DOYH %ORFN

G

用于指示阀打开,另一个输出用于指示阀闭合。

2SHQ 9DOYH 'VSB2SHQ
&ORVH 'VSB&ORVH
9DOYH

建立安全要求

在根描据述法中律,要求还应和该人包身括健康安全及元安件全对政过策程,区确域定的需所要有哪影些响附加。元件,以确保过程安全。

定义安全要求

编查程找控要制求器硬进件行电操路作满足安全要求的设备类型。通过定义,这些安全电路可独立于可

通安常全,可以组态矩阵(式虽,然在安其全自电身路的通紧常急提断供电I/范O围接内口连,接允每许个与执用行户器程。序该协矩调阵操式作是)。按如下执行来设计安全机制:

电路的电路图基础。

  • 确定单个自动化任务之间的逻辑和机械/电气互锁。
  • 设计电路,允许在紧急情况下手动操作属于该过程的设备。
  • 为确保操作过程安全,需建立更多安全要求。

创建安全电路

工业混料过程实例使用下列逻辑电路作为安全电路:

  • 紧急断电开关切断下列设备电源,与可编程控制器(PLC)无关:
    • 配料 A 的进料泵
    • 配料 B 的进料泵
    • 搅拌器电机
  • 紧急断电开关位于操作员站上。
  • 控制器的一个输入指示紧急断电开关的状态。

描述所要求的操作员显示和控件

控每制个过台设程计都。要求有一个操作员界面,允许人员进行干预。部分设计规范包括操作员

定义操作员控制台

该在操实作例员所控述制的台工包业括混显料示过程操作中状,态可的由指操示作灯员控参制见台下上表的。按钮启动或停止每个设备。

 

电控开制关台,还通包过括该显开示关灯可,用立即于终指止示经过程过一。控定制启台动还次有数一后个要复求维位按护的钮,设用备于,以三台及电紧机急的断数维器护复显位示到。通过该按钮,可以关闭指示应该维护电机的维护显示灯,并将相应的计

创建组态图

将设计要求文档化后,必须决定项目所要求的控制设备类型。

通各过项确的组定希态望图使:用哪些模块,还可以确定可编程控制器的结构。创建一个确定下列

  • CPU 型号
  • I/O 模块的编号和类型
  • 组态物理输入和输出

下图阐述了用于工业混料过程的 S7 组态实例。

设计程序结构的基本原理

CPU 中的程序

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

  • 操作系统
  • 用户程序。

操作系统

用户程序

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

  • 处理重启(热启动)和热重启。
  • 更新输入的过程映像表,并输出输出过程映像表
  • 调用用户程序
  • 采集中断信息,调用中断 OB。
  • 识别错误并进行错误处理
  • 管理内存区域
  • 与编程设备和其它通讯伙伴进行通讯

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

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

  • 确定CPU 的重启(热启动)和热重启条件(例如,用特定值初始化信号)
    • 定处用理于过输程出数的据二(例进如制,信产号生,二输进出制模信拟号值的逻辑链接,获取并评估模拟量信号,
    • 响应中断
    • 处理正常程序周期中的干扰。

用户程序中的块

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

  • 大程序更易于理解。
  • 可以标准化单个程序段。
  • 简化程序结构。
  • 更易于修改程序。
  • 可测试单个程序段,因而简化调试。系统调试变得更简单。

的程业序混段合过,即程实程序例块阐对述应了于将这一些个单自个动任化务过。程分成单个任务的优点。 结构化用户程序块类型 在 S7 用户程序内可使用多种类型的块:(功SF能C块)块组系织统块功能块 和系统功能 功能简介 集成在(SFB)(OB)OB 确定用户程序的结构。SFB 和SFC问一些重要的系统功能。

参见S7 CPU 中,可以用来访组织块和程序结构系统功能块 (SFB) 和系统实功例能数(FC据)块

(FB)FC 包含频繁使用功能的例行程序。F块B。是带有用户可自行编程的“存储器”的

功能(FC)功能块 (FB)功能(SFC)( DB)数实据例块(DB)调用编译期FB间/S自F动B 创建。

组织块和程序结构

环组中织断块(驱O动B)的表程示序操执作行系、统和用户启程动序特之性间和的错接误口处。理组。织可块以由对操组作织系块统进调行用编,程控来制确循定

CPU 特性。

组织块优先级

OB 的优先级最低。

执组行织。块哪确个定单个程序段执行的顺序(启动事件)。一个 OB 调用可以中断另一个 OB 的PLC先级的OB

中断类型和优先级

O背B景允许中断另一个 OB 取决于其优先级。高优先级的 OB 可以中断低优

些启中动断事的件组触发织块O的B 调优用先称级为。中不断是。所下有表的显示了 ST都E提P 7供中下的表中所断列类的型所以有及组分织配块给以这及编优程先控级(制参器见模“块S7规-3范0参0 可考编手程册控”制。器,硬S件7 C和P安U装手册”以及“S7-400、M7-400 可

  • OB10 - OB47
  • 运行模式中的 仅适用于 和 。

允许下列优先级:OB70 - OB72 ( H CPU) OB81 - OB87

  • 优先级 2 - 23 ,用于 OB10 - OB47
  • 优先级 2 - 28,用于 OB70 - OB72

固件版本 ,其优先级范围可以扩展:优先级 可用于

  • 优先级 24 - 26,用于 OB81 - OB87;对于大约在 2001 年年中生产的 CPU,以( 及 V3.0) 2 - 26 B 81 - OB 84

可以将相同OB优8先6 和 OB 87。

后次序进行处理。级分配给多个 OB。具有相同优先级的 OB 按照其启动事件发生的先

由同步错误启动的错误 OB,其执行优先级与块发生错误时的执行优先级相同。

本地数据

分创成建不逻同辑优块先(O级B,。FC,FB)时,可以声明临时本地数据。CPU 上的本地数据区可以量在。S7-400 上,可以通过 STEP 7 在“优先级”参数块中修改每个优先级的本地数据

OB 的启动信息

动每信个息组织指定块都有的20启字动节事本件地、数据的启启动的动信日息期,和在时启间动、所O发B 时生,的由错操误作以系及统诊提断供事。件启。

OB40 是硬件中断 OB,其启动信息包含产生中断的模块地址。

取消选定中断 OB

OB。处理取消中断 OB 的限制条件如下:

断如果将优先级为 0 或少于 20 字节的本地数据分配给优先级,则将取消选定相应的中

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

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

循环程序处理

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

事件驱动的程序处理

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

可这分表成示一可以些“处子理程部序分用”,户分程布序,在这不些同的用组户织程块序中只。有在如果需用要户时程才序循要环对处相理对。用较少户发程生序

告的重要信号(例如,限制值传感器,用于测量容器中的液位,并在到达最高液位时报

) 作出响应,则当输出该信号时需要处理的子程序可位于事件驱动处理型 OB 上。

线性编程与结构化编程

序可、以并在要O求B1极中少写内入存整时个才用可户行程。序(线性编程)。只有在给 S7-300 CPU 编写简单程制将复杂任自务动。化这任些务任分务割以成相反映应的过程序技术段功表能示或,可称为多次块处结理构的化小编任程务。,可以更易于控

 

用户程序中的调用体系

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

次序和嵌套深度

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

        • 从上到下创建块,因此可以从块的顶行开始。
        • 调用的每个块必须已经存在,即在一行块内,创建块的次序为从右到左。
        • 最后要创建的块是 OB1。

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

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

注如释果内嵌太深(太多级别),则本地数据栈可能溢出(请参见本地数据栈)。

块调用的中断块。

令下的图指显令示。了一在旦用执户行程第序二内个块调或用调的用顺块序后。,该在程块序调调用用后的第二指令个块处继,

通SF过B在的包实含例该,那么必须通过 OB100 以PT = 0 ms 调用 SFB 的相关实例。例如,可

注必释须给每个块调用描述 参数。

注当执释行冷重启时,操作系统将 “ ”实例复位。如果在冷重启后,初始化该

SFB 实例的块中执行初始化程序完成该操作。

块类型

用于循环程序处理的组织块

4.2.3.1 循 (OB1)

OB1,并通过该调用,启动循环执行用户程序。

用环程序处理是在可编程逻辑控制器上执行程序的“正常”类型。操作系统循环调

循环程序处理的顺序

下表显示了循环程序处理的各个阶段:

步骤

C过P程U映读像取表输。入模块的输入状态,并更新输入的

操作系统启动周期监视时间。

98 年 10 月之前的 CPU 中的顺序

操作系统启动周期监视时间。

从 98 年 10 月之后的 CPU 中的顺序

CPU 处理用户程序并执行程序所包含的指令。

C块P。U 将来自输出过程映像表的值写入到输出模

C块P。U 将来自输出过程映像表的值写入到输出模

CPU 处理用户程序并执行程序所包含的指令。

C过P程U映读像取表输。入模块的输入状态,并更新输入的

过程映像

块为上了寻在址循输环程入序和处输理出期间,地C址P区U 具,有而一是致寻的址过包程含信输号入映和像输,出C映P像U的不是直接的在内I部/O存模储区。

循环程序处理编程

(I)(Q)

CPU

使理用编程ST。EP 7,可通过在 OB1 以及 OB1 调用的块中写入用户程序来进行循环程序处一旦成功完成启动程序,就开始循环程序处理。

中断 循环程序处理可有下列中断:

        • 中断
        • STOP 命令(编程设备、SFC46 STP、SFB20 STOP 上的模式选择器、菜单选项)
        • 断电
        • 发生故障或程序出错

扫描周期

动扫描周期是操作系统运行循环程序以及中断该循环(例如,执行其它组织块)和系统活每个周期中的扫描时间(TC)均不相同。下图显示了 98 年 10 月之前的 CPU 和 98 年

月之后的 的不同扫描周期 :

(例如,更新过程映像)的所有程序段所需的时间。该时间被监视。

10 CPU (TC1 ≠ TC2)

'LIIHUHQW 6FDQ &\FOH 7LPHV IRU &38V WR 10/98

&XUUHQW &\FOH 1H[W &\FOH 1H[W &\FOH

7&1

2%10

7&2
8SGDWHV SURFHVV LPDJH LQSXW 2%1 2%1 8SGDWHV SURFHVV

LPDJH RXWSXW

8SGDWHV SURFHVV LPDJH LQSXW 2%1 8SGDWHV SURFHVV LPDJH RXWSXW 8SGDWHV SURFHVV LPDJH LQSXW 2%1

 

周期监视时间

入通过 STEP 7,可以修改默认的最大周期监视时间。如果超过该时间,CPU 要么进错。STOP 模式,要么调用 OB80。在该 OB80 中,用户可以指定 CPU 如何响应该出最小周期 通常过有用ST:EP 7,可以给 S7-400 CPU 和CPU 318 设置最小周期。这在下列情况下非

  • 在 OB1 (主程序扫描)中开始程序执行的时间间隔始终应该相同时或
  • 周期太短时,无需经常更新过程映像表。

的下图周期显监示视了在时间98功年能1。0 月之前的 CPU 以及 98 年 10 月之后的CPU 中进行程序处理

更新过程映像

如在果CP希U望处执理行循下环列程操序作期,间那,么自可动以更取新消过选程择映更像新。过对程于映S像7:-400 CPU 和 CPU 318,

  • 直接访问 I/O 或
  • 一使个用或系统多个功能过程SF映C像26输U入P或DA输T出_P部I 和分。SFC27 UPDAT_PO,在程序的不同处更新

通讯负载

的可持以使续时用间“。因该通持讯续引起时间的总扫是描增周大期扫负描载”周期CP的U。参通数讯,过在程给实定例的包框括架通内过控制通将讯数过据程传送至另一个,或通过编程设备加载块。MPI编程设备的测试CP功U能几乎不受该参数影响。不过,还是可以显著增大扫描周期。在过程模式中,可以限制测试功能的时间设置 仅适用于 。

该参数如何工作

果CP通U讯操不作需系要统按总百是分按比照设组定态的好处的理百能分力比,为那通么讯它提可供用C于PU其处它理的能处力理(过时程间。片技术)。如

对实际扫描周没期有附的加影异响步事件时,

扫描周期可由一个因素延长,该因素根据下列公式进行

计算:

OB1

100

实10例0 - "6FDQ F\FOH ORDG IURP FRPPXQLFDWLRQ (%)"

当将由1 通(无讯附带加给异周步期事的件负):载设置为

度同看时,由OB于1因扫通描讯周部期分也延受长异了步事件的50影%响(例O如B硬1 扫件描中周断期或内循会环发中生断更)。多从异统步计事学件角,

时, 扫描周期翻倍。

从而使得

扫描周期,在 OB1

OB1 扫描周期额外增长。该增量取决于每个 OB1 扫描周期中发生的事件对于一2 个(考虑附加异步事件):

500ms 的纯 OB1 执行时间,50%的通讯负载将使实际扫描周期高达

数实目例以及事件处理的持续时间。

行10一00次m处s (理假时定间C为PU 始终有足够的通讯作业要处理)。如果与此同时,每隔 100 ms 执

中描断周通期讯延,长共因此在有20 ms 的循环中。断即,那实么际在扫没描有周通期讯将负为载时,该。循由环于中循断环将中使断扫也

5*20 ms = 100 ms

实际扫描周期将达

600ms

50%的,通而讯不负是载时,将扫。描周期延长 10 * 20 ms。即,此时,

1200 ms

1000 ms

注释

  • 响在。系统运行时,请检查因改变“因通讯引起的扫描周期负载”参数而产生的影

• 当设置最小扫描周期时,必须考虑通讯负载;否则,将发生时间出错。

建议

  • 尽可能采用默认值。
  • 该只值有在。 CPU 主要用于通讯目的,并且用户程序对时间要求不是很严格时才增大
  • 在所有其它情况下,只能减小该值。
  • 设置过程模式(仅适用于 S7-300),并限制测试功能所需的时间。

功能(FC)

时功能变量(FC保)存属在于本个地人数自据己堆编栈程中的。块执。行功能是时一,种该“数不据带将内丢存失”。的为逻永辑久块保。存属该于数F据C ,的功临

能也可使用共享数据块。 FC

分由配于初FC始本值身。没有内存,因此,必须始终给它指定实际参数。不能给 FC 的本地数据

应用

FC 包含由另一个逻辑块调用该 FC 时,始终执行的程序段。可使用下列功能:

          • 将功能值返回调用块(例如:算术功能)
          • 执行技术功能(例如:具有位逻辑操作的单个控制功能)。

将实际参数分配给形式参数

始形终式参将数实际是参“数实分际配”给参数的的哑形元式。参调数用该例功如能,时实,际实参际数参“数将替”换分形配式给参形数式。参必数须

逻辑块的实)。际F参C 数所使中用。的输入、输出以及输入/输出参数作为指针保存到调用 FC 的

FC 和 FB 输出参数之间的重要区别

没在有功能传块送输(FB入)中参,数访或问没参有数写时访,问使输用出实参例数,DB那中么的将实使际用参原数先副保本存。在如实果例调用实FB例时,

=但FB 内存)中的值。

DB( DB

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

当此心时,如果没有数据写入到 中的

写由入于没到有该区将域保。留由给此副,本该的调用FC块的本变地OU数T据PU区T分配给默认O情UT况P下UT本参地数数,据因没此有没自有动数设据

0”,所以将输出在该位置保存的随机值。

参数,那么该块可能输出随机值!

置为“

区保持不

,例如,由于

因此,请遵守下列几点:

          • 如有可能,请初始化 OUTPUT 参数。
          • 如根果据上RL一O个将逻指辑令操进作行置位和的复结位果。为当这,些那指么令不用产于生判值定。 OUTPUT 参数值时,

跳始终转确到保将数据写入到(RLO) 参数0中,而与块中的程序路径无关。尤其注意

主站控制继电器 指令的影响。

ENO BEC( )

LAD 和 FBD 中的OUTPU输T 出以及到 块结束条件 的跳转指令,以及

MCR ( )

注虽然释 的 参数或 和 的 参数不会输出随机值 即使没有数据

点写注入意到FB事该项参数,OU避中T免,PU意也T外保处持理原“输F出C ”值值或F。作B 为输IN出OU值T的输入值 ) ,仍然应该( 遵守上述各

为功其能内块(存FB)属于个人自己编程的块。功能块是一种“带内存”的块。分配数据块作

功能块 (FB)

则保存在本(实地例数数据据堆块栈)。中传。送到 FB 的参数和静态变量保存在实例 DB 中。临时变量

地执行数据完堆FB栈时中,的不数会据丢。失实例 DB 中保存的数据。但执行完 FB 时,会丢失保存在本

注为避释免在使用 FB 时出错,读取附录中的传送参数时的允许数据类型。

应用

能FB更包易含于由编其程它。逻辑块调用 FB 时始终执行的程序。功能块可以使频繁发生的复杂功

功能块和实例数据块

型通的过调用一个 FB 的多重实例,可以通过一个FB 控制多个设备。例如,用于电机类

实例数据块可分配给传送参数的每个功能块调用。

据 FB 可以通过给不同电机使用不同的实例数据集来控制各个电机。每个电机的数

(例如,速度、斜坡、累积操作时间等)可以保存在一个或多个实例 DB 中。下图显示了使用保存在实例 DB 中的实际参数的 FB 的形式参数。

STEP 7 V5.4 编程手册-2 STEP 7 V5.4 编程手册-3 STEP 7 V5.4 编程手册-4 STEP 7 V5.4 编程手册-5

)RUPDO SDUDPHWHU

$FWXDO SDUDPHWHU

6WDUW ,17 ,1

6SHHG ,17 ,1

+LVWRU\ '7 ,1B287

5XQB7LPH 7,0( ,1B287

)%20:0RWRU

'%202:0RWRUB2

7LPH (32 %LWV): UXQ WLPH

'DWH DQG WLPH (48 %LWV):

SRLQWHU WR WKH DGGUHVV RI WKH KLVWRU\

,QWHJHU (16 %LWV): VSHHG

,QWHJHU (16 %LWV): VWDUW

数据类型 FB 的变量

数据块(多重实例 中嵌套变量和集F中B 实例数据。

)

FB

将实际参数分配给形式参数

变如果量声将用明表户中程包序含结作构为化数,据以类便型FB 能包的静含态现存变量功能调用块的调用。,该那技么术可允以许在在调一用个F实B例的

下通列常没场合有中必必要须在分ST配E实P 际7 中参将数实:际参数分配给 FB 的形式参数。但也有例外情况。但

          • 复杂数据类型的输入/输出参数(例如,STRING、ARRAY、DATE_AND_TIME)
          • 所有参数类型 (例如 TIMER、COUNTER 或 POINTER) STEP 7 按如下所述将实际参数分配给 FB 的形式参数:
          • 在调用声明中指定实际参数时:FB 指令使用所提供的实际参数。
          • 没有在调用声明中指定实际参数时:FB 指令使用保存在实例DB 中的值。

下表显示了必须分配实际参数的 FB 变量。

变量

输入出

/输出

基本数不据要类求型参数

数据类型

不要求参数

不要求参数

复杂数不据要类求型参数

要求实际参数

不要求参数

参数类型要求实际参数

要求实际参数

将初始值分配给形式参数

DB FB

如果在调用声明中没有将实际参数分配给形式参数,则 STEP 7 将使用保存在实例它下表们分显配示任了何可值以分。配初始值的变量。由于执行块后,临时数据已丢失,因此不能给

实例数据块

实例数据块可分配给传送参数的每个功能块调用。实际参数和FB 的静态数据保存在

如,如DB果中在。在 FB 中声明的变量确定实例数据块的结构。实例即指功能块调用。例

S7 用户程序中调用一个功能块 5 次,那么有 5 个该块的实例。

创建实例 DB创建实例数据块之前,必须存在相应的 。创建实例数据块时指定 的编号。

FB FB

每个单独实例都有一个实例 DB

同如电果将机。多个实例数据块分配给控制电机的功能块(FB),那么可以使用该 FB 来控制不用于多个电机 F参B见有下关图的。DB 决定控制哪台电机。

一个实例 DB 可用于一个 FB 的多个实例(多重实例)

程可调以用在电一机个实控制例器DB,中并同在时调给用多个的电声机明传部送分实给例单数个据实。例为以此数,据必类须型在另一声个明F静B 态中变量。 FB FB

给一个FB 的多个实例使用一个实例 DB,可以节省内存,优化使用数据块。

一个实例 DB 就可用于不同 FB 的多个实例(多重实例)

的实例数据块,表示此时不需要给已调用的 提供任何附加数据块。

在功能块中,可以调用其它已存在的 FB 实例。可以将所要求的实例数据分配给调用

例数据块,只需要变量的符号名。

独对实于例这以些已在一调用个功实能例块数的据数块据中类的型多重声明实例静态,变必须量。在因调此用,功功能能块块的内声的明部调用分不给要每个求实单在下图的实例中,已分配的实例 DB 保存在通用实例 DB 中。

'%14
'DWD IRU DJLWDWRU
'DWD IRU 0RWRUB10
'DWD IRU 3XPSB10

共享数据块 (DB)

包与含逻用辑户块程相序反使,用数的据块变量不数包据含。ST共E享P 数7 指据令块。则它用们来用存来储存可储由用所户有数其据它,块即访,问数的据用块户

数据。

共享数据块的大小各不不同。请参见 CPU 说明,了解数据块大小的最大值。可以任何方式构造共享数据块,满足特定要求。

用户程序中的共享数据块

如该果本调地用数据逻辑区外块,(FC逻、辑F块B还或可O以B),它的可形在式本打地开数内据存区区(L。堆与栈本) 地临数时据占区用的空数间据。相除反了,

DB DB

后,该数据仍然保存在 中。

DB DB

中的数据在关闭 时,即执D行B相应的逻辑块后,不会被删除。

每个 FB、FC 或 OB 都可以从共享的 DB 中读取数据或将数据写入到共享 DB。退出可同时打开共享数据块和实例 DB。下图显示了访问数据块的不同方法。

系统功能块 (SFB) 和系统功能(SFC)

预编程块 没有必要对每个功能都自己编程。 提供可以在用户程序中调用的预编程块。

性可帮以在助系信息统块。和系统功能的参考帮助S7中C找PU到更多信息(跳转到语言描述及块和系统属)

系统功能块系程统序功的能一块部(分SF而B被)是加集载成。在同S7 C一P样U 中,的功能也块是。“S具F有B 是内操存作”系的统块的。一必部须分给,不作创为

建实例数据块,然后将它们作FB为程序的S一F部B 分下载到 中。

 

用于中断驱动的程序处理的组织块

        1. 时间中断组织块(OB10 到 OB17)

S7 CPU 提供了时间中断 OB,可以在指定的日期或特定的间隔来执行。时间中断可以如下来触发:

          • 在特定的时间执行一次(使用日期以独立的形式指定)
          • 周期性地,指定启动时间和中断重复的时间间隔(例如,每分、每小时、每天)。

启动时间中断

断要:让 CPU 来启动时间中断,必须先对其设置,然后将其激活。有三种方式来启动中

          • 使用 STEP 7 给时间中断分配合适的参数进行自动启动(参数块“时间中断”)
          • 在断用户程序中使用 SFC28 SET_TINT 和 SFC30 ACT_TINT 设置并激活时间中
          • 激使活用时ST间E中P 断7 分。配参数设置时间中断,并在用户程序中使用 SFC30 ACT_TINT

查询时间中断

要查询哪些时间中断作了设置以及它们设置为何时发生,可以采用下列方法:

          • 调用 SFC31 QRY_TINT
          • 请求系统状态列表的“中断状态”列表。

取消激活时间中断

SFC28 SET_TINT 重新设置,用 SFC30 ACT_TINT 激活。

断可可以以使用 SFC29 CAN_TINT 取消激活还未被执行的时间中断。被取消激活的时间中

时间中断 OB 的优先级

发所生有的八顺个时序进间中行处断理O。B 都然具而有,相也同可的以默选认择优合先适级的(参2)数,来因改此变只优能先按级照。它们的启动事件

改变设置时间

可以如下改变中断的时间设置:

          • 通过时钟主站同步主站和从站的时间。
          • 在用户程序中调用 SFC0 SET_CLK 来设置新的时间。

对时间更改的响应

下表给出了时间改变后,时间中断如何反应。

如如果果将... 时间前移,跳过了一个或多个时间中断, 还没有在

OB80 中取消激活跳过的时间中断,

启动信O息B8中0 。 OB80
执略行。跳过的第一个时间中断,而其它跳过的则被忽
S而7-300-CPU 重复执行时间中断

S7-400-CPU 和 CPU 318 则不重复。

那启么动...

,将那些被跳过的时间中断输入 的

还没有在OB80 中取消激活跳过的时间中断, 跳过的时间中断将不再被执行。

将时间退后,时间中断的启动事件将再次发生,

延时中断组织块(OB20 至 OB23)

S7 CPU 提供了延时 OB,您可用来对部分用户程序的延迟执行进行编程。

延时中断的规则

中只输有入当一CP条U出程错序消中息存,在并相执应行的异组步织错块误时处才理能执行延,时参中见断错。误否处则理,组将织在块诊断缓冲至区

OB87 / OB121 至 。

(OB80

(OB70

没有通过所分配参O数B选12择2的)

模式。

当STOP

延时 OB

将不能启动。CPU

将识别编程错误,并切换到

超过 SFC32 SRT_DINT 中所指定的延时时,将触发延时中断。

启动延时中断

。请参见“ 可编程控制器,硬件及安装手册”和“ 、 可编

为启动延时中断,您必须指定 SFC32 中的延时,之后,将调用相应的延时中断程OB控制器模块技S术7-规30范0 说明参考手册”中延时的最大允许长度S。7-400 M7-400

延时中断 OB 的优先级

延时中断 OB 的默认优先级是优先级 3 至 6。您可通过参数分配改变优先级。

周期性中断组织块(OB30 至 OB38)

提供了循环中断 ,可以以一定的间隔中断循环程序的进程。

循S7 CPU OB

刻。环中断每隔一段时间触发。间隔的启动时间是模式转换从 STOP 切换到 RUN 的时

循环中断的规则

本当指身。定间隔时,确保在单个循环中断的启动事件之间有足够的时间来处理循环中断

误如果,分并切配换参到数时取消选模定式循。环中断 OB,将不能再启动它们。CPU 将识别编程错

STOP

启动循环中断

间要隔启总动一是基个本循时环中钟值断,必毫须秒使的用整数ST倍E。P 7 在循环中断参数块中指定时间间隔。时间

时间间隔 = n X 基本时1钟值 毫秒

所九分个配可的用循的环循中环中断断 O后B 每个1 都有默认效。的然时间而间,也隔可(参以见通下过表分)。配当参装数载来了改为变默默认认间隔

值。关于上限可参见O“B ,它便可能编生程控制器、硬件及安装手册”和“ 、

400 可编程控制器模块技S7术-3规00格参考手册”。

S7-400

M7-

循环中断的相位偏移量

误为了避免不同循环中断 OB 的循环中断在同一时间点启动,从而引起可能的时间错

迟一(周段期时超间出后),再可执以行为循其环指中定断相。位偏移量。相位偏移量能确保在时间间隔结束后,延

相位偏移量 = m X 基本时钟频率(其中 0 m < n)

的执行情况进行了对比。

循环中断 OB 的优先级

间下表隔和给优出先了循级。环中断 OB 的默认时间间隔和优先级等级。可以分配参数来改变时间

循环中断 OB 间隔(毫秒) 优先级

OB30 5000 7
OB31 2000 8
OB32 1000 9
OB33 500 10
OB34 200 11
OB35 100 12
OB36 50 13
OB37 20 14
OB38 10 15

硬件中断组织块(OB40 至 OB47)

进S7行C响PU应提的供硬了件对中模断块(例。如使,用信号模块(,SM您)、可通决讯定处来理自器可(组C态P)数、功字模能块模或块(模FM拟)模)信块号

的哪个信号将启动 O。B对于 S和TEP 7,可使用相应的参数分配对话框。

当具有硬件中断功能O与B 已激活C硬P件中F断M的信号模块把所接收的过程信号传递给

时,或当 CPU 的功能模块发出一个中断信号时,都将触发硬件中断。

硬件中断的规则

中只输有入当一CP条U出程错序消中息存,在并相执应行的异组步织错块误时处才理能执行硬,件参中见断错。误否处则理,组将织在块诊断缓冲至区

CPU

如OB果87您/ OB121 至 OB122)。

(OB80

(OB70

编程错误在,参并数切分配换中到没有选择模硬式件。中断 OB,则这些操作均不能启动。CPU 将识别

STOP

为具有硬件中断功能的信号模块分配参数

的具有硬件中断功能的信号模块时,必须在其参数集里进行如下设定:

具有硬件中断功能的信号模块,其每个通道都能触发一个硬件中断。因此,在使用

STEP 7

          • 什么将触发硬件中断。
          • 将执行哪个硬件中断 OB(执行所有硬件中断的默认 OB 是 OB40)。

分使配用其ST余E参P 数7,。可激活功能块硬件中断的生成。可在这些功能块的参数分配对话框中

硬件中断 OB 的优先级

硬件中断 OB 的默认优先级是优先级 16 至 23。您可通过参数分配改变优先级。

4.2.4.5 启动组织块(OB100 / OB101 / OB102)

启动类型 有三种完全不同的启动类型:

          • 热启动(不适用于 S7-300 和 S7-400H)
          • 复位(正常启动)
          • 冷启动

下表说明了操作系统在每种启动类型中将调用哪个 OB。

启热动启类动型 相关 OB

OB101
) OB100
OB102

复冷位启(动正常启动

用于启动 OB 的启动事件

CPU 在下列事件发生之后将执行启动:

          • 加电之后
          • 在将模式选择开关从 STOP 切换到 RUN/RUN-P 之后
          • 在收到来自通讯功能的请求之后
          • 在对多值计算模式进行同步之后
          • 在链接之后的H 系统中(仅适用于待机的 CPU)

、 或 。

根据不同的启动事件、所使用的CPU 及其已设置的参数,将调用相应的启动OB(OB100 OB101 OB102)

启动程序

冷通过启动编的写组用织于块复位(正常启等动的)启的动组程织序块,O您B1可00指、定用启于动热启动的组条织件块 OB1模01式或的用初于

始值、

模块的O启B动10值2 等 。

CPU

制由。于在没有激活循环监视,因此对启动程序的长度没有任何限制,也没有任何时间限

(RUN

I/O )

字输出的启信动程号状序态中不均为能完。成由时间驱动或由中断驱动的执行。在启动期间,所有数

0

手动复位后的启动类型

选对择于开某些关和S7启-4动00类C型P开U,关如果根据 STEP 7 进行的参数分配允许的话,您可使用模式

在 S7-300 CPU 上只能进行手动复位(正常启动)或冷启动(仅适用于 CPU 318-2)。

手动复位(正常启动)。

自动复位后的启动类型

(CRST/WRST)来进行手动复位。不专门分配参数也能进行

在 S7-300 CPU 上,只有在加电之后才能进行复位(正常启动)。

对于 S7-400 CPU,您可设定加电之后的自动启动是复位(正常启动)还是热启动。

清除过程映像

当映像S7输-4出00表C。P如U 果复希位望时用,户剩程余序的在周复期位将之继后续继执续行使,用并原且值在,默则认可状采态取下措,施将避清免除清过除程

过程映像。

模块存在/类型监视

在并种且参复数位中之,前您模可块决类定型是相否互对匹组配态。表中的模块进行检查,以确保这些模块确实存如果已经激活模块检查,则当组态表与实际组态之间存在差异时,将不启动CPU。

监视时间 为确保可编程控制器正确启动,您可选择下列监视时间:

          • 将参数传送给模块的最大允许时间
          • 模块加电后到发出可以操作的信号时的最大允许时间
          • 对于 S7-400 CPU,在其间允许热启动时的中断最大时间

)。

动一旦超出监视时间,CPU 既可以切换到 STOP 模式,也可以只进行复位(正常启

设计程序结构的基本原理

背景组织块(OB90)

不存CP在U 将仍然处理,直到程序循环结束。该时间将用于执行背景 OB。如果 CPU 上

如则果已经用 STEP 7 设定了最小扫描周期时间,且该时间大于实际扫描周期时间,

OB90,则 CPU 将等待,直到超出设定的最小扫描周期时间。因此,可使用

OB90 来运行时间要求并不严格的过程,从而避免等待时间。

背景 OB 的优先级

STEP 7 V5.4 编程手册-6 且背其景优O先B 具级有不优能先通级过重29新,分它配对参应数于来优进先行权修0改.29。。因此,这是优先级最低的 OB。而下以图后给版出本了的一个实例,说明如何处理背景周期、主程序周期以及 OB10(98 年 10 月

CPU)。

对 OB90 进行编程

C编P程U。操请作在系编统程并时不注监意视以O下B事90项的,运以行确时保间在,背因景此程可序对中O所B使90用中数任据意的长一度致的性循。环进行

          • O能B”90参的考复手位册事件(参见“S7-300 和 S7-400 的系统软件,系统功能和标准功)
          • 与 OB90 异步的过程映像更新。

错误处理组织块(OB70 至 OB87 / OB121 至 OB122)

错误类型

型S7:CPU 可检测到错误,并可借助组织块对其进行响应,这些错误可分为两种基本类

          • 的同执步行错误期间:。可如将果这没些有错误装载分配相应给的用同户步程序错误的特定,部则分。这类在错发误生发错生误在时特将定切指换令到 STOP 模式。
          • 误异步、可错编误程:逻这辑些控错制误器不能上的直故接障分配例给如正,在故执障行模的块用或户冗程余序错。误这。类如错果误未是装优载先相级应的异步错误 ,则当出现错误时( , 将转为 ) 模式 例外情况:

用于同步错误的 OB

I 堆栈并启动用于同步错误的 OB。

入同步错误发生在特定指令的执行期间。当这些错误发生时,操作系统将一个条目输

时由于正在同执步行错的误块而相调同用。的触错误发 OB 调将用作为的错程误序的详细部信分息执位行于,其优启先动级信与息检中测。到可错使误用模该拟信输息对入模错块误上的发产生一条个件进访问行O错响B 误应,则然可后使返回用继续处理您的程OB序(在例如,如果中在指某定个一间个。替换值)。但错误 OB 的本地数据实际上确实占SF用C了44该R优PL先_V级A的L L 堆O栈B1的22其余空

对不于行。S7-400 CPU,同步错误 OB 可启动其它同步错误 OB。但对于 S7-300 CPU 则

用于非同步错误的 OB

果所有O的B8异0 步至错O误B87)。默认状态下,用于异步错误的 OB 的优先级最高,并且,如

以如及果 CPU 的操作系统检测到一个异步错误,则它将启动相应的 OB(OB70 至 OB73

生一个以上的异步错O误B 都具,有则同将样按的它优们先发级生,的则顺它序们对可其被进其行它处O理B。

屏蔽启动事件

和使组用织系块统的功能更详(SF细C信),息可,以请屏参蔽见、“延迟或禁和止多个 OB的的系启统动软事件件。

启动和操作

启动STEP 7

在启动Windows 时,您将发现一个代表 SIMATIC 管理器的图标,该管理器就是

启动STEP 7 软件在 Wi快nd方ows 接口上的启动点。

有 STEP 7 的最 法就是将光标放置在该图标

功能SI。MATIC 管理器的窗口。从中可访问您为标准软件包和任意选件包所安装的所有

Simatic”下的条目。

“也可通过操作系统任务栏上的“开始”按钮来启动 SIMATIC 管理器。您将发现

注关释于标准 Windows 操作与选项的更详细信息,请参见

Windows 操作系统的在线帮助。 Windows

用户指南或

SIMATIC 管理器

S列IM功A能T:IC 管理器是用于组态和编程的基本应用程序。可在 SIMATIC 管理器中执行下

      • 设置项目
      • 配置硬件并为其分配参数
      • 组态硬件网络
      • 程序块
      • 已 对程序进行调试

将各种不同功能的访问设计成面向对象的访问,且学习起来直观、方便。使用 SIMATIC 管理器进行工作,可采取下列两种方式之一:

      • 离线方式,没有连接可编程控制器
      • 请 在线方式,连接了可编程控制器

注意每种情况下的相关安全注意事项。

如何以此为起点往下操作

基您本将以主题“项,将目”使工的作形式更容创建易、自动更轻化松任:务。在着手开始工作之前,如果仔细阅读下列

      • 用户接口
      • 一些基本操作步骤
      • 在线帮助

使用默认启动参数启动 STEP 7

定从启ST动E参P 数7 V。5这.0样起,,就在可S将IMATIC 管理管器理中器可放创置建在多这个些符参号数,所并描可述在的调对用象命上令。行从中而设调用 s7tgtopx.exe 时,可以设定下列启动参数:

只需 SIMATIC通过双击就能立即跳转到项目中的相应位置。

/e <完整物理项目路径>

/o <希望定位于其上的对象的逻辑路径>

/h <对象标识号>

/启on动l 参数 可使项目在线打开并调用指定路径。

/onl

/启of 动f 参数 可使项目离线打开并调用指定路径。

/off

/启ke动ep参数

的功能如下:

示的项SI目M也AT将IC打管开理。器如已果打开,则除管了理通过器尚命未令打行开已,直则接新打项开目的将新项随保目存以在外,已经显

将管理首器先关会闭话,存储然后器中忽的略会项话目SI存一M储起AT器打IC,开并。且如仅果打尚开未指设定项该目启。动参数,则已打开S的IM项A目TIC

建立正确参数的最简单方法如下所述:

通过复制和粘贴设置参数

操作过程如下:

  1. 录在下桌。面上,给文件 s7tgtopx.exe 创建一个新链接。该文件位于 S7bin 的安装目
  2. 显示属性对话框。
  3. 选择“链接”标签。“目标”下的条目现在应按如下扩展。
  4. 在 SIMATIC 管理器中选择所需对象。
  5. 使用组合键CTRL+ALT+C 将对象复制到剪贴板。
  6. 将光标放在“链接”标签中的“目标”条目的末尾。
  7. 使用组合键CTRL+V 粘贴剪贴板的内容。
  8. 使用“确定”进行确认,关闭对话框。

参数实例:

/e F:\SIEMENS\STEP7\S7proj\MyConfig\MyConfig.s7p /keep

/o "1,8:MyConfig\SIMATIC 400(1)\CPU416-1\S7-Program(1)\Blocks\FB1"

/h T00112001;129;T00116001;1;T00116101;16e /keep

关于项目路径结构的注意事项

项目路径是文件系统中的物理路径。完整的逻辑路径具有下列结构:

[视图 ID,在线 ID]:项目名\{对象名\}*\ 对象名

实例:/o 1.8:MyConfig\SIMATIC 400(1)\CPU416-1\S7-Program(1)\Blocks\FB1

关于逻辑路径结构的注意事项

只有使用复制和粘贴功能才能创建完整的逻辑路径与对象 ID。

但也可以指定由用户进行读取的路径。在上述实例中,它可以是:

或 ,用户可设定路径在在线或离线窗口中是否有效。如果使用复制或粘贴功

/o "MyConfig\SIMATIC 400(1)\CPU416-1\S7-Program(1)\Blocks\FB1". 通过添加能/on,l 则不/of需f 要对其进行设定。

重要事项:如果路径包含有空格,则必须将其放在引号内。

调用帮助功能

在线帮助

信在息线而帮无助需系再统提搜索供各了当种手前册最。为在有在效线的帮信息助中。,使可用在找到线下帮列助类可型迅的速各、种快信捷息地:访问各种

  • 目录:提供了显示帮助信息的各种不同方法
    • 的上信下息文,关或联与帮活助动(F1对键话)框:或使窗用口F1等键有,关可的访信问息与刚才使用鼠标所选择的对象有关
    • 引言:给出了关于应用程序的使用、主要特点以及功能范围等的简介
    • 使用入门:概括了初次使用应用程序时需要执行的基本步骤
    • 使用帮助:提供了关于在线帮助中特定信息搜索方法的描述
    • 关于:提供了关于应用程序的当前版本信息

通过帮助菜单,也可从每个不同窗口访问与当前对话状况相关的各个主题。

调用在线帮助

可选择下列方式调用在线帮助:

    • 选择菜单栏帮助菜单中的菜单命令。
    • 单击对话框中的“帮助”按钮。随后将显示关于该对话框的帮助。
    • 令将帮光助标置于上窗下口文或关对联话帮框助中。需要获得帮助的主题上,然后按 F1 键或选择菜单命
    • 使用窗口> 中的问号符号光标。

在这些访问在线帮助的方式中,我们称后面三种方式为上下文关联帮助。

调用快速帮助

将光标放置在任务栏中的按钮上并让其停留片刻,将显示该按钮的快速帮助。

启动和操作

对象与对象体系

中按项照目与和W库ind的o对ws象资体源系管显理示器在显示文件夹管和理文器件中的。目录结构相同的方式,将 STEP 7

下图显示了对象体系的一个实例SI。MATIC

      • 项目对象
STEP 7 V5.4 编程手册-7
  • 站对象

可编程的模块对象

  • S7/M7 程序对象
  • 源文件文件夹对象
  • 块文件夹对象

对象具有下列功能:

  • 对象属性的载体,
  • 文件夹,
  • 功能的载体(例如,启动特定的应用程序)。

作为属性载体的对象

列对功象能既之可一以:具有功能,也可以具有属性(例如设置)。在选择对象时,可用它来执行下

  • 使用菜单命令编辑 > 打开对象来编辑对象。
  • 使用菜单命令编辑 > 对象属性打开对话框,并设置对象特定的选项。文件夹也可作为属性的载体。

作为文件夹的对象

文件夹(目录)可包含其它文件夹或对象。其在打开文件夹时均会显示。

作为功能载体的对象

当打开对象时,将显示一个窗口,您可在其中编辑对象。

对于可编程模块 ,也是功能的载体 用于组态硬件 。

对象或者是一个文件夹,或者是功能的载体。其中站是一个例外:它们既是文件夹

  • 夹如果的站双击。一个站,则将显示包含在其中的对象:可编程模块和站组态(作为文件数如果使)用菜单命令编辑 > 打开对象打开一个站,则您可组态该站,为其分配参

(作为功能载体的站)。菜单命令具有与双击“硬件”对象一样的效果。

      1. 项目对象

层项目。代表了自动化解决方案中的所有数据和程序的整体,它位于对象体系的最上

在项目视图中的位置

STEP 7 V5.4 编程手册-8

  • 项目对象
  • 站对象
  • 可编程的模块对象
  • S7/M7 程序对象
  • 源文件文件夹对象
  • 块文件夹对象
STEP 7 V5.4 编程手册-9

STEP 7 V5.4 编程手册-10

M7 程序
  • S7/M7 程序既是对象(项目层),也是对象文件夹

(程序层)。其它功能参见S7/M7 程序对象

S7 程序 • 插入S7/M7 程序

站对象

SIMATIC 300/400 站表示具有一个或多个可编程模块的 S7 硬件配置。

在项目视图中的位置

STEP 7 V5.4 编程手册-11

  • 项目对象
  • 站对象
  • 可编程的模块对象
  • S7/M7 程序对象
  • 源文件文件夹对象
  • 块文件夹对象

STEP 7 V5.4 编程手册-12 STEP 7 V5.4 编程手册-13

符号

对站象文件夹

重要功能的选择

STEP 7 V5.4 编程手册-14
  • 组态站的基本步骤
  • 概述:组态与分配参数到本地组态的步骤
  • 组态 DP 主站系统的基本步骤
  • 组态多值计算操作
STEP 7 V5.4 编程手册-15
  • 程可模编块程”模层块既是对象(站层),也是对象文件夹(“可编

)。其它功能参见可编程的模块对象

可编程模块

可编程的模块对象

保可持编存程储模器块的表模示块可编程模块(CPUxxx、FMxxx、CPxxx)的参数赋值数据。没有任何

将不为这样的模块分(例配如任,何C“P4系41统),数其据系”统对数象据,将而通它过们站也的不C在P项U目进体行系装中载显。示因。此,

在项目视图中的位置

STEP 7 V5.4 编程手册-16

  • 项目对象
  • 站对象
  • 可编程的模块对象
  • S7/M7 程序对象
  • 源文件文件夹对象
  • 块文件夹对象
        • 概述:组态与分配参数到本地组态的步骤

符号 对可象编文程模件块夹 重要功能的选择

STEP 7 V5.4 编程手册-17
  • 显示 CPU 消息和自定义的诊断消息
  • 组态“报告系统错误”
  • 诊断硬件和显示模块信息
  • 通过EPROM 存储卡下载
  • 用于访问可编程控制器的口令保护
  • 显示强制值窗口
  • 显示和修改工作模式
  • 显示和设置时间与日期
  • 设置操作特性
  • 删除加载/工作存储器,并复位 CPU
  • 在线视图中的诊断符号
  • 存储器区的划分
  • 在集成的EPROM 上保存已下载的块
  • 更新可编程逻辑控制器上的操作系统
STEP 7 V5.4 编程手册-18 代象表可编程模块的对
        • 显示使用较新的STEP 7 版本组态的模块

符号

“的可对编象程模块”层中
STEP 7 V5.4 编程手册-19

STEP 7 V5.4 编程手册-20

STEP 7 V5.4 编程手册-21

S7 程序

M7 程序程序

  • 层S7/M7 程序既是对象(项目层),也是对象文件夹(程序

)。其它功能参见S7/M7 程序对象

STEP 7 V5.4 编程手册-22 用的于连定接义网络内连接
  • 连接类型和连接伙伴
  • 各种连接类型须知
  • 输入新的连接
  • 为SIMATIC 站中的模块组态连接

程序:

重要功能的选择

  • 插入S7/M7 程序
    • 对项目内的站进行联网

S7/M7 程序对象

CP 或FM 模块)的软件。

可(S7编/M程7)程序文件夹包含了用于 S7/M7 CPU 模块的软件或用于非 CPU 模块(例如,

在项目视图中的位置

STEP 7 V5.4 编程手册-23

  • 项目对象
  • 站对象
  • 可编程的模块对象
  • S7/M7 程序对象
  • 源文件文件夹对象
  • 块文件夹对象

STEP 7 V5.4 编程手册-24 STEP 7 V5.4 编程手册-25

符号表的结构和组件

绝对寻址和符号寻址

翻译和编辑与操作员相关的文本

如何分配和编辑与符号相关的消息(CPU 范围)

如何分配和编辑与符号有关的消息(面向项目)

输入符号时的一般技巧

输入共享符号

导出和导入符号表

通过符号表组态操作员监控属性

编辑通讯属性

用量于分为配信符号的其符它号变表

      1. 块文件夹对象

(UDT)和变量表。系统数据对象表示系统数据块。

定离义线的视数图据的类块型文件夹可包括:逻辑块(OB、FB、FC、SFB、SFC),数据块(DB),自在线视图的块文件夹包括已经下载给可编程控制器的可执行程序部分。

在项目视图中的位置

STEP 7 V5.4 编程手册-26

  • 项目对象
  • 站对象
  • 可编程的模块对象
  • S7/M7 程序对象
  • 源文件文件夹对象
  • 块文件夹对象

符号

块对象文件夹 重要功能的选择

  • 不带项目管理的下载
  • 可用参考数据概述
  • 带项目管理的下载
  • 重新布线
  • 比较块
  • 翻译和编辑与操作员相关的文本
  • 语言描述、块帮助、系统属性中的跳转

符号 块的常用对块件象夹中

STEP 7 V5.4 编程手册-27

组织块

(OB) 附加功能:

重要功能的选择

  • 创建逻辑块时的基本过程
  • 创建块
  • STL 源文件中编程的基本信息

比较块

    • 数据类型和参数类型的引言
  • 下载要求
  • 使用程序状态进行测试
    • 关于单步模式/断点的测试须知
  • 重新布线
    • 关于块的帮助

符号 块的文对件象夹中 重要功能的选择

STEP 7 V5.4 编程手册-28 STEP 7 V5.4 编程手册-29 STEP 7 V5.4 编程手册-30 STEP 7 V5.4 编程手册-31

功能(FC) 附加功能:

    • 数据类型和参数类型的引言
  • 下载要求
    • 使用程序状态进行测试
  • 关于单步模式/断点的测试须知
  • 重新布线

功能块

  • 块和参数的属性

(FB) 附加功能:

    • 数据类型和参数类型的引言
  • 下载要求

使用多重实例

  • 使用程序状态进行测试
    • 关于单步模式/断点的测试须知
  • 重新布线
    • 块和参数的属性
  • 如何分配和编辑与块有关的消息(面向项目)
    • 如何创建与块有关的消息(面向 CPU)
  • 如何组态PCS 7 消息(面向项目)
    • 如何组态PCS 7 消息(面向 CPU)
  • 翻译和编辑与操作员相关的文本
    • 设置功能块参数的监视/控制属性

自定义的数

据类型

(UDT)

DB(全局数据

)

  • 创建块
  • STL 源文件中编程的基本信息
  • 数据类型和参数类型的引言
  • 使用用户自定义数据类型访问数据
  • 块和参数的属性
  • 数据块的数据视图
  • 下载要求

数据块的声明视图

  • 数据块的程序状态
  • 数据类型和参数类型的引言
  • 使用多重实例
  • 块和参数的属性
  • 如何分配和编辑与块相关的消息(面向项目)(仅适用于实例 DB)
  • 如何分配和编辑与块相关的消息(面向 CPU)(仅适用于实例 DB)
  • 如何组态PCS7 消息(面向项目) (仅适用于实例 DB)
  • 如何组态PCS7 消息(面向 CPU) (仅适用于实例 DB)

翻译和编辑操作员相关的文本 仅适用于背景数据块

  • ( )

符号 块文件夹中

STEP 7 V5.4 编程手册-32 STEP 7 V5.4 编程手册-33 STEP 7 V5.4 编程手册-34 STEP 7 V5.4 编程手册-35 STEP 7 V5.4 编程手册-36 STEP 7 V5.4 编程手册-37

的对象

系统功能

(SFC)

S能F块B(系统功

)

重要功能的选择

  • 下载要求
  • 块和参数的属性
  • 关于块的帮助
  • 下载要求
  • 块和参数的属性
  • 如何分配和编辑与块有关的消息(面向项目)
  • 如何创建与块有关的消息(面向 CPU)
  • 如何组态PCS7 消息(面向项目)
  • 如何组态PCS7 消息(面向 CPU)
  • 翻译和编辑与操作员相关的文本
  • 关于块的帮助

具权有保知护识的产块 • STL 源中的块属性的定义规则

  • 块属性

具力有的诊块断能已使用 F-

SFBT语DL//言--DL创ABD建编/-

了块

其它附加信息参见S7-PDIAG 可选软件包的有关文档。

其它附加信息参见“S7 Distributed Safety”可选软件包的有关文档。

变量表(VAT) • 使用变量表进行监视和修改时的基本步骤

  • 监视变量简介

使用变量表进行测试的介绍

系统数据块

(SDB)

(SDB)只能通过功能间接进行编辑:

  • 子网和通讯节点的属性
  • 硬件配置介绍
  • 概述:全局数据通讯

系• 统数关据于块对变量进行强制的说明

  • 关于对变量进行修改的说明
  • 分配和编辑与符号相关的消息

下载要求

源文件文件夹对象

源文件文件夹包含了文本格式的源程序。

在项目视图中的位置

STEP 7 V5.4 编程手册-38

  • 项目对象
  • 站对象
  • 可编程的模块对象
  • S7/M7 程序对象
  • 源文件文件夹对象
  • 块文件夹对象

符号

源对文象件文文件件夹夹

重要功能的选择

导入源文件

导出源文件

STL 源文件中编程的基本信息

符号

对源象文件文件夹中的

源文件

重要功能的选择

(例如,STL 源文件)

创建STL 源文件

在STL 源文件中插入块模板

STL 源文件中编程的基本信息

在STL 源文件中插入来自现有块的源代码

检查STL 源文件中的一致性

编译STL 源文件

生成来自块的STL 源文件

导出源文件

网络模板

导入源文件

  • 使用程序段模板进行工作
  • 不带站或 CPU 的 S7/M7 程序

于不要必编预程先的组态模块SI和M模AT块IC设站置,。就可以创建程序。这意味着,程序开始创建时可以独立

创建 S7/M7 程序

  1. 使用菜单命令文件 > 打开,打开相关的项目,或激活项目窗口。

插根入据创建程序所应用的可编程控制器,选择以下菜单命令之一:

  1. 在离线视图项目窗口中选择项目。

> 程序 > M7 程序:如果程序在 SIMATIC M7 设备上运行。

3.

插入 > 程序 > S7 程序:如果程序在 SIMATIC S7 设备上运行。

S个7空/M符7 号程表序。直现接在可项创目建窗块口并的可项以目对下块添进加行和编排程列。它包含一个用于块的文件夹和一

将程序分配给可编程模块

当使插用入拖不放倚功赖能于,特将定这模些块程的序程复序制时或,移随动后到可模以块很符容号易上地。将它们分配给模块,方法是

向库中添加一个程序

使如用果,程那序么将还用可于以SI在M库AT中IC插S入7 该可程编序程。控不制过器,测并试且时希,望该将程序必作须为直“接软位件于库一”个多项次

目下,因为这是与可编程控制器建立连接的唯一方式。

访问可编程控制器

选择项目的在线视图。可在包含程序属性的对话框中进行地址设置。

序,那么它将作为一个没有站的程序直接连接到项目下。

注删释除站或可编程模块时,会提示是否删除其中所包含的程序。如果选择不删除程

启动和操作

用户接口和操作

操作原则

目标:简单操作

图常形工用作户中接熟口悉的各的种是对提象供,最例大如程,度站的、、模块直观、的程操序作、方块便。性。因此,您可以发现日您在 STEP 7 下执行的动作包括上述对象的创建、选择和操作。

同基于工具的操作的差别

在工使具用,常然规后工调具用开该始工工具作。时,您必须做的第一件事就是为特定的解决方案选择合适面向对象操作的基本步骤是选择一个对象,然后将其打开以进行编辑。

击面向打对开象的图的标操代作不表需了要对象特。殊的指令语法的知识。在 GUI 上,通过菜单命令或鼠标点

容当。打开一个对象时,应用程序将自动调用合适的软件组件来显示或编辑对象的内

继续...

续下面的主,题我都们将基介于绍这对些象基编本辑操的作基。本操作。请对该主题给予适当的重视,因为所有后

窗口布局

窗口的标准组成如下图所示:

STEP 7 V5.4 编程手册-39

标题栏与菜单栏

的标图题标栏。与菜单栏包始含终窗位于口中窗口可供的使顶用部。的所标有题菜栏单包。含窗口的标题以及对窗口进行控制

工具栏

以工具及当栏前包含可供有使许用多的图菜标单(或项工命具令按的钮快),捷这方些式图。标当提您供将了光通标过短单暂击放鼠置标在来按执钮行上经时常,使将用如果在当前组态中不能访问某个按钮,则该按钮将显示为灰色。

显示对各个按钮功能的简短描述以及其它附加信息。

状态栏 状态栏显示了与上下文有关的信息。

对话框中的元素

在对话框中进行输入

框在中对最话常框见中,的组可件输。入执行特定任务所需的各种信息。下图中的实例可用来说明对话

STEP 7 V5.4 编程手册-40

列表框与组合框

选文项本可框旁供边选有择时。有单一击个箭方头向可向打下开的一箭个头列。表此框箭或头组表合示框在。该如文果本单框击中列还表存框在中许的多条其目它,

则该条目将自动显示在文本框中。

对话框中的标签

提通过高将信对息的话框清晰分为度多。个标签卡(见下图),用标签来组织某些对话框的内容,可以

STEP 7 V5.4 编程手册-41 景标中签,卡只的需内单容击沿该着标对话签即框的可。上边沿显示在标签上。为使某个特定的标签卡跳转到前

创建和管理对象

一处些理基顺本序的作处了理总步结骤。与有对关象标的准类步型骤无的关知,识对需所要有继的续对阅象读本都相手同册。的这其里它对章这节些。标准的处理对象时通常的步骤顺序为:

        • 创建对象
        • 选择对象
        • 使用对象执行动作(例如,复制、删除)。

设置创建新项目/库的路径

新如建果的要用将户它项们目保、存库在和其多它项的目文保件存夹在中默,认第的一文次件保夹存“项目\Si、em库e和ns多\S项tep目7之\S7前p,ro先j”为中这。中些的对“象常设规置”自标定签义中的,路指径定。用为来此保,存可新选项择目菜或单库命的令路选径项名> 称自。定义。在显示的对话框

创建对象

然后向>“导新就项会目为”您向创导建来项打目开。该向导。在显示的对话框中,可以设置项目的结构,

S文T件EP 7 向导“新建项目”可为创建新项目和插入对象提供支持。使用菜单命令

如成果了您对不象想体使系用的向起导始,点可。以所使有用其菜它单的命对令象假文如件没> 有新自建动来创建,项可目以和使库用。插这入些菜对单象中构用的“命新令建在项体目系”中向创导建创。建例。外的是 SIMATIC 站中的模块,它们在组态硬件时创建或使

打开对象 要在详细视图中打开对象,可以有多种方法:

        • 双击对象图标
        • 象选。择对象,然后使用菜单命令编辑 > 打开对象。这仅适用于不是文件夹的对

当打开一个对象后,可以创建或更改它的内容。

当的打内开容一,个以不供包编含辑其。它您对不象能的改对变象其时内,容将正以用一于个其合它适地的方软的件对组象件。在新窗口中显示它

例外:对于可编程的模块(当您双击它们时 具有类似文件夹的显示状态。如果双击

“硬件”对象,将会启动用于组态硬件的应) 用程序。选择站和选择菜单命令编辑

注释

打开对象的效果相同。 >

构建对象体系

使示用在“屏新幕建上项。目然”后向,导就来可创以建使对用象插体入系菜。单在创打建开更文多件的夹对后象,例所如包,含项的目对中象的将其会它显站激。活插状入态菜。单中,只有那些能被插入到当前文件夹中的对象所对应的插入命令处于

设置对象属性

对的象对属话性框是,决必定须对在象其特中性为的对对象象设数置据属。性创。建也新可对以象在以后,后将更自改动对出象现属设性置。对象属性用

使属用性菜。单命令编辑 > 对象属性,打开一个对话框,可在其中显示或设置所选对象的使消用息菜所单需命的令数据编。辑 > 特殊对象属性,可以打开对话框,输入操作员监控功能和组态

例监如控,相为关了,显也示就块是的要特在殊块对属象性属的性“,属以性进”行标操签作中员,监将控系,统必属须性将“块标记为与操作员

为“true”。

s7_m_c”的值设置

        • 色不。能在只读项目的对象属性对话框中进行写入操作。这种情况下,输入框变为灰

注释

  • 不能显示或修改“系统数据”文件夹和“硬件”对象的属性。
        • 编在辑显参示数可,编必程须模打块开的“属组性态时硬,件为”了应保用持程一序致。性,不能对显示的参数进行编辑。要
        • 无如效果,修因改为编保程存设了备设上置的的对系象统设数置据(例块如必,须模位块于的目组标态系数统据中),。则它们在目标系统中
        • 置如,果则加可载以整重个新用加户载程“序系,统则数也据自”动对传象送,系以统将数设据置块传。送如到果目在标加系载统程中序。后修改了设
        • 理强器烈中建看议到只的能结使构用不ST同E的P 物7 来理编结辑构文。件夹,因为它们可以使用与在 SIMATIC 管

剪切、粘贴、大复多数制的对象都可以象通常在

也菜可单以命通令位过于拖放编辑来菜单中。

Windows

中那样进行剪切、粘贴或复制。这些功能的

光标

将显示一阻止符号复作制为对警象告。

果试图将对象移动或复制到非法的目标地址,

件在可复以制对重复象地时使,用也。将复制它下面的子级内容。这使得在一个自动化任务中创建的组

注“释连接”文件夹中的连接表不能复制。请注意,当复制操作员相关文本的列表时, 您将在复制对象下可以找到有关删除操作的逐步指导。

将只接受那些目标对象中已安装的语言。

将对象重命名

同SIM一A个T文IC件管夹理中器可将以给创一建些多新个的该对类象型分的配对标象准名和称数。字这构些成名。

排序对象

可以直接或使用对象属性来改变对象的名称。

直接地:

盘缓来慢编地辑单名击称两。次所选对象的名称,将在文本的周围出现一个框。然后,就可使用键

使用菜单:

在现项一目个窗框口。中然选后择,所就需可的使对用象键,盘然来后编选辑择名菜称单。命令编辑 > 重命名。在文本的周围出如果不允许您改变名称:

此如时果不能允许进行您文改本变对输入象。名,对话框的输入域将显示为灰色,其中显示当前的名称,

),编辑过程就被终止。如果名称是允许的,将接受更改的名称。

令注在释编辑名称时,将鼠标指针移动到名称框以外,执行其它的动作(例如,选择菜单命您将在重命名对象下可以找到有关重命名操作的逐步指导。

址使位用于SI另M一AT个IC项管目理中器。,在可移以动将文对件象夹从时一,个它文的件内夹容移也动全到部另移一动个。文件夹,即使目标地

注不释能移动下列对象:

  • 连接
  • 在线视图中的系统数据块(SDB)
  • 在线视图中的系统功能(SFC)和系统功能块(SFB) 在移动对象下可以找到有关移动操作的逐步指导。

需可属以性根的据相对应象标的属题。性,再次在单详击细,资将料返中回对到其排原来序的(菜排单序命。令同视一图类>型细的节块。以为它此们,的单数击字所

顺序来排序,例如, , , , , , 。

FB1 FB2 FB11 FB12 FB21 FC1

默认的排序顺序

在重新打开项目后,在详细资料中对象根据默认的排序顺序来显示。实例

    • 块的显示顺序为“系统数据,OB,FB,FC,DB,UDT,VAT,SFB,

SFC

    • 在项目中,先显示所有的站,接下来显示 S7 程序。

因此在详细资料中,默认的排序顺序不是字母数字的升序或降序。

恢复默认排序顺序

排序后,例如,单击列标题“对象名”排序,可以按以下步骤恢复默认排序方式:

    • 在详细资料中单击列标题“类型”。
    • 关闭项目,然后再次打开。

删除对象 您除可。以删除文件夹和对象。如果删除了一个文件夹,它所包含的全部内容也将被删目不能归档撤消。删除步骤。如果您不能确定是否真的不再需要一个对象,最好先为整个项

注不释能删除下列对象:

    • 连接
    • 在线视图中的系统数据块(SDB)
    • 在线视图中的系统功能(SFC)和系统功能块(SFB) 在删除对象下可以找到有关删除操作的逐步指导。

选择对话框中的对象

在对话框(浏览器)中选择对象是在大量不同编辑步骤中经常需要的一个动作。

调用浏览器框例如,可在硬件组态应用程序中使用诸如站 > 新建/打开等菜单命令调用浏览器对话

(基本应用程序窗口“SIMATIC 管理器”除外)。

浏览器对话框的结构

在浏览器中,存在下图所示的各种选项。

STEP 7 V5.4 编程手册-42

会话存储器

SIMATIC 管理器可保存窗口内容(即,打开的项目和库)以及窗口布局。

        • 局使用。菜在单下一命个令会选话项开> 始自时定,义恢,复定这义些是窗否口在内一容个和会布话局结。束在时打保开存的窗项口目内中容,和光布标位

于最后选中的那个文件夹上。

        • 使用菜单命令窗口 > 保存设置,可以保存当前窗口内容和窗口布局。
        • 窗使口用菜内容单和命令布局窗口。在> 打恢开复的设项置目,中可,以光恢标复位用于菜最单后命选令中窗的口那>个保文存件设夹置上保。存过的

注不释保存在线项目的窗口内容、“可访问节点”窗口的内容以及“

存储卡”窗口的

内容。 S7

在会话结束时,不保存任何为访问可编程控制器(S7-300/S7-400)而输入的口令。

改变窗口排列

要逐个层叠所有显示窗口,可采用下列方法:

        • 选择菜单命令窗口 > 排列 > 层叠。
        • 按下组合键 SHIFT + F5。

要将所有显示窗口在屏幕上从上到下排列,可选择菜单命令窗口 > 排列 > 水平。要将所有显示窗口在屏幕上从左到右排列,可选择菜单命令窗口 > 排列 > 垂直。

保存和恢复窗口布局

段ST对EP其7进应行用恢程复序。有可一以个使特用点菜,单就命是令使选您项能够自保定存义当在前“的常窗规口”布标局签,中并进在行将设来置某。个阶

>

保存什么? 保存窗口布局时,将记录以下信息:

        • 主窗口的位置
        • 已打开的项目和库及其各自的窗口位置
        • 级联窗口的次序

注在释线项目的窗口内容、“可访问节点”窗口的内容以及“

存储卡”窗口的内容均

不能保存。 S7

保存窗口布局

要保存当前窗口布局,请选择菜单命令窗口 > 保存设置。

恢复窗口布局

要恢复保存的窗口布局,选择菜单命令窗口 > 恢复设置。

在注恢释复窗口时,将只详细显示包含有保存窗口时所选对象的部分结构。

启动和操作

键盘操作

国际通用的键名称 德国的键名称

HOME POS1
END ENDE
PAGE UP BILD AUF
PAGE DOWN BILD AB
CTRL STRG
ENTER Eingabetaste
DEL ENTF
INSERT EINFG

用于菜单命令的组合键

每个菜单命令都可通过键入与 ALT 键的键组合来选择。

按所显示的顺序按下下列键:

        • ALT 键
        • 果所菜需单菜单栏中名包中含带有下菜划单线的“文字母件”(例的如话,。AL菜T、单对将应打于开菜。单“文件”的字母 F – 如

果所菜需单菜命单令命具令有中子带菜下单划,线的则子字母(例如),对应于按菜上单述命步令骤“操新作建,”直的到字通母过N键)。

用于菜单命令的快捷键

命新令建打另开存为

打印

打印 > 对象表 (“文件”菜单)

退出 > 对象内容 (“文件”菜单)

CTRL+N
CTRL+O
CTRL+S
CTRL+P
CTRL+ALT+P
ALT+F4
CTRL+X
CTRL+C
CTRL+V
DEL
CTRL+A
F2
ALT+RETURN
CTRL+ALT+O
CTRL+B
CTRL+L
CTRL+D
CTRL+I
F5
CTRL+F5
CTRL+ALT+E
CTRL+ALT+R
SHIFT+F5
SHIFT+F2
SHIFT+F3
(选如的果菜当单前命存令在,有则上相下关文的,

帮例助如主所F1题页将面打。开。否则,显示帮助目录)

 

建立和编辑项目

项目结构

项括目:用于存储在提出自动化解决方案时所创建的数据和程序。项目所汇集的数据包

      • 关于模块硬件结构及模块参数的组态数据;
      • 用于网络通讯的组态数据,以及
      • 用于可编程模块的程序。

在创建项目时的主要任务就是准备这些数据,以备编程使用。

数项据目将体以系对在象项的目形窗式口存中储的在显项示目类中似于。对象在项目中按树形结构排列(项目体系)。

的外观不同。

项目体系顶端的结构如下:

  1. 第一层:项目

Windows 资源管理器中的显示。只是对象图标

  1. 第二层:子网、站、或 S7/M7 程序
  2. 第三层:取决于第二层的对象。

STEP 7 V5.4 编程手册-43 项目窗口 项半目部窗分口已分打为开两的半对部象分所:包左含半的部对分象表示项目的树形结构。右半部分表示所选视图左单在击某窗种口程左度半上部类分似中于含下有图加。号的方框即可显示项目的完整树形结构。所生成的结构

(大图标、小图标、列表或详细信息)。

建立和编辑项目

对象体系的最上端是代表整个项目的对象“ ”的图标。它可用于显示项目图标时均将显示S7在或项M目7窗程口序的的右文半件部夹分(。用该于类创型建对软象件体)系。最项上目端中的的对对象象(在库选以择及项项目

目)构成了用于对对象进行选择的对话框的起始点。

属组性态,)并、可以及用作网络文件夹(用于对网络进行S7组_P态ro)1 、站文件夹(用于对硬件进行

项目视图

STEP 7 V5.4 编程手册-44 在也可在视组图件中视,图“在在线组”件中视显 如果安装了相应的选项包,还

可离编线程”控中制 以设置一个

统可上编可程用设数据的用项数目据结的构项。目结构, 加的视图:工厂视图:

注只释能在“离线”视图中对硬件和网络进行组态。

访问保护须知

从此,ST必E须P 已7 V经5安.4装版了本“起,通过分配一个口令,可以选择限制项目和库的访问。为此外还可以启用、禁止和显示一个修改日志。

SIMATIC Logon”。

单如命果令在。计可算使机用上这安些装了命令SI来M管AT理IC项L目og或on库,的则访可问以保访护问:SIMATIC 管理器中的下列菜

      • 访问保护,启用
      • 访问保护,禁止
      • 访问保护,管理用户
      • 访问保护,在多项目中调节
      • 删除访问保护和修改日志

使用选该项菜单> 命访令问来保启护用>访启问用保菜护单,命则令打激开活一S个IM对AT话IC框管,理在器该中对的话访框问中保需护要。登如录果初次项SIM目A口T令IC来Lo编g辑on相。关然项后目将或提库示。分配一个项目口令。然后只能由授权用户或通过输入

建立和编辑项目

目。 V5.4 版本之前的 STEP 7 版本来编辑项

SIMATIC 管理器中使用菜单命令选项 > SIMATIC

删改除日访志问。删保除护访和问修保改护日之志后菜,单可命重令新删使除用具有口令保护的项目或库的访问保护以及修

时当,打自开动具退有出访项问目保。护或的者项,目可时在,STEP 7 提示使用用户名和口令登录。当项目关闭用,),直则到必下须次使重用启选动项 > SIMATIC Logon 服务来退出。即使当关闭项目时这也适

STEP 7 为止。

注释

序Logon 服务来登录 STEP 7 或改为不同的登录。如果使用该功能(来自另一个应用程

      • 要启用或禁止访问保护,必须在 SIMATIC Logon 上被授权为项目管理员。
      • 用初较次早启版用本访的问保护时,来修编改辑项已目修格改式的。项您目将。接收一条消息,该消息指示无法再使
      • 选项 > 访问保护STEP删7除访问保护和修改日志功能允许通过一个低于 版本的

有ST修EP改7日版志本。来使>用项目或库。然而,丢失有权访问该项目或库的用V户5信.4息及所

      • 在 SIMATIC 管理器的任务栏中显示当前登录的用户。
      • 保启护用时访要问按保照护要的求登分录配Lo项go目n口的令当。前用户作为项目管理员进入,在初次启用访问
      • 员要或打项开目一用个户具或有必访须问已保知护口的令项。目,必须在 SIMATIC Logon 中被授权为项目管理
      • 目请。牢记当用户使用项目口令打开一个项目时,登录用户作为项目管理员进入项

建立和编辑项目

修改日志须知

从志,ST该E日P 志7 V记5录.4在版线本动起作,。在设置了项目和库的访问保护后,可以选择保持修改日

实例:

  • 激活/取消激活/组态访问保护和修改日志
  • 打开/关闭项目和库
  • 下载至 PLC (系统数据)
  • 用于加载和复制块的选定操作
  • 用于改变工作模式的活动
  • 清除/复位

用可,以必显须示安修装改“日志并输入注释,例如,解释所完成修改的那些信息。要使该功能可

要启用修改日志SIM转A到TIC Logon”。

修改日志

启用菜单命

志令。启用了修改日志后,SI可M以AT浏IC览管日理志器菜,单然命后令选:择选项 >修改日志,>显示 或禁止日

(菜单命令:选项 > 修改日志,禁止。单击项目结构中的一个对象时(例如,项目文件夹或从属站),显示相关的修改日

注释

    • 选项 > 访问保护 > 删除访问保护和修改日志功能允许通过一个低于 V5.4 版本的有ST修EP改7日志。

版本来使用项目或库。然而,丢失有权访问该项目或库的用户信息及所

    • 项要目使启用用该访功问能保,护您。必须在 SIMATIC Logon 中被授权为项目管理员,且必须为该

使用外语字符集

建立和编辑项目

从 STEP 7 V5.3 SP2 起,可在项目和库中用外语输入文本,即使这些语言和为

STEP 7 所设置的语言不匹配。为此,必须在操作系统的“控制面板”中设置相应的

—来运行 STEP 7,但仍允许输入中文文本。

语Windows 语言。这样就可以,例如,在中文版本的 Windows 中以 STEP 7 语言—英

此时,必须对语言设置的下列类型和选项进行区分:

Windows 语言设置

可在以W输ind入o外ws语控字制符面串板文中本进。行此设置。操作系统所固有的文本以所选语言显示,并且

项目语言

项目语言是首次创建项目时,在 控制面板中设置的语言。一旦选定,就不

言能更改此项目语言。不过,利用“W中ind性o语ws言”设置,仍可以在 中以其它语

在设项置目打中开只计使算用机了上英的语项字目符。集在中将的项字目符语言更改字为符“中性语言”W来之ind输前o入,ws文要本确。保先前

中要,查还明可项以目选或择库“的可项以目在语任言意,请选择编辑(ASC项II 目属性0x菜2a单-命0x令7f。) 在所显示的对话框

在同某,些可以情况在下复很制的有项用目,例中将项制目一个语项言更目,改为而当项前目在语言与当前 W中in设do置w的s 语言。设这置一不点

( - )

如果通过另存为菜单命令复

Windows 语>言设置下打开 语言 常规 ”选项。

含英语字符集中的字符

如当要字创符建项目的特定。语这言W将变in确d量o保时w在s。以此相时应,语主言项进目一应步只编包辑

特定语言项目时不会发(生AS数C据II损坏现0x象2。a - 0x7f)

STEP 7 语言

此ST语EP言7是语言是在“中S用IM于A接TI口C 元管素理、器菜”单中命使令用、选对项话> 框自以定及义出菜错单消命息令的设语置言的。语言。

如果您正使ST用E其P 它7 语言版本 如德语、英语、法语、意大利语或西班牙语 的

示Wi。ndows,则通过将 STEP7 语言选择为“英语”,可以确保 STEP 7 界面正确显

建立和编辑项目

规则 如在果使要用在外有语不字同符集语时言设出现置的不相计算容或机数上据编辑破坏项目的现或库象:,确保遵守以下“规则”,以防

  • 仅如使,用如名果称使中用包德含语英变语音字、符西(里AS尔C字II母字或符中0x文2字a -符0,x7则f)的只项能目在名称和项目中路具径有。兼例
      • 仅将 STEP 7 安装在名称中包含英语字符(ASCII 字符 0x2a - 0x7f)的文件夹中。

容语言设置的计算机上打开项目。

Windows

      • 项在目多本项目身就中是,中仅性使用语具言形有式相的同。项目语言或被标识为中性语言形式的项目和库。多

语言设置的计算机中使用它们。为库项目分配名称、输入注释或创建

      • 创建库时,始终要使其成为中性语言形式的库,以确保可在那些具有不同

符些Wi号库nd名时ow或不s进行其它操作时,确保仅使用 字符 ,以便在使用这

会出问题。

ASCII

(0x2a - 0x7f)

      • 导入/导出硬件组态或符号表时,确保仅导入/导出具有语言兼容的文件。

      • 在用户自定义属性名称中,仅使用英语字符集中的字符(ASCII 字符 0x2a -

0x7f)

中。 TITLE、AUTHOR 和FAMILY 块属性中,那么请将这些条目放在单引号

      • 如用果于在语句表源程序中,您将不属于英语字符集(ASCII 字符 0x2a - 0x7f)的字符

建立和编辑项目

      • 言如果设要置被更标改或识为复中制性在某语言计算形式机上,但创建是与的项当前目使或用库的,计该算计机算中机的相设对置于不W兼ind容o,ws则语在项能目发或生库数中据使损用坏。英语字符集(ASCII 字符 0x2a - 0x7f)中未包含的字符时,便有可置因是此,否在与项编目辑语“言外匹语配”。项目或库之前,一定要检查计算机上的 Windows 语言设

确 Windows保先前仅使用了英语字符集中的字符 字符 ,且不存在任何

注意

      • 如果导出硬件组态或符号表,而它们即将以另外一种 语言设置导入, 其它特定语言的字符,如德语变音、日(语AS字C符II或西里0x尔2字a -母0字x7符f) 。
      • 组其态中或包含符号特表定,语只言能字以符导(如出德这语些变硬音件、组日态语或字符符号或表西时里所尔采字用母的字相符同)的已导出硬语件一言定设置要仔导细入。检查也就结是果:说符,如号必果要须唯导一入,可能不得包含包此含类任何特定问号语或言其字符它不的正较W确旧ind字符o符号ws,表必,

须合理。

      • 字如符果,符则号表在按中包名称含和未注在释当前排序W时ind,o作ws为语符言号设名置一中部定分义的(即问“号为或其所它知不”正)确的字特符殊可

能会产生问题。

      • 请注意在使用符号寻址时,必须在引号中写入符号名称(“<符号名称>”)。

基本过程 要在项目和库中以外语字符集输入文本,请进行如下操作:

  1. 在 Windows 控制面板中,将语言设置设定为所需的语言。
  2. 创建一个项目。

可对以于选在择ST编E辑P 7 V5.3 SP2 之前创建的项目和库,项目语言是“尚未指定”。此时,

  1. 以外语字符输入文本。

言。进行此操作> 之对前象,属需性确菜保单该命项令目以不将包项含目任语何言未设在置当为前Windows 中语当言前设置中的定语义

即“为其所知” 的字符。

Windows

( )

建立和编辑项目

设置MS Windows 语言

要设置Windows 语言,可进行如下操作:

在 Windows XP 和 Windows Server 2003 中设置语言:

> 区域和语言选项 > 高级 > 非Unicode 程序的语言。

  1. 控要制为面不板支持 Unicode 的程序设置所需的显示语言,请选择下列菜单命令序列:

> 区域和语言选项 > 语言 > 详细信息。

  1. 控要制设面置板输入语言(标准区域设置属性),请选择下列菜单命令序列:

> 区域和语言选项 > 区域设置(标准和格式)。

  1. 控要制设面置板输入语言(标准区域设置属性),请选择下列菜单命令序列:

仅当完成上述所有设置之后,才能以所需语言输入文本并将其正确显示出来。

在 Windows 2000 中设置语言:

> 区域设置 > 常规 > 用户区域设置(位置)。

  1. 控要制设面置板所需的显示语言,请选择下列菜单命令序列:

> 区域设置 > 常规 > 设置默认值。

  1. 控要制设面置板所需的语言,请选择下列菜单命令序列:

> 区域设置 > 输入法区域设置。

  1. 控要制设面置板输入语言(标准区域设置属性),请选择下列菜单命令序列:

仅当完成上述所有设置之后,才能以所需语言输入文本并将其正确显示出来。

建立和编辑项目

创建项目

创建项目

要的使创用建项目目录管是理通框过架菜构单造命令自动选化项任务的解决方案,需要创建一个新的项目。新项目

注释

> 自定义在“常规”标签页中为项目设定的目录。

SIMATIC 管理器允许使用长度多于 8 个字符的名称。不过,项目目录的名称裁减到8 8

个字符。因此,项目名称的前 个字符必须有所不同。名称不区分大小写。

导可以。在手动创建一个项目或使用向导创建一个项目中找到如何创建项目的逐步指

使用向导创建项目

文创建新项目的最简单方法就是使用“新项目”向导。使用菜单命令

料,然>“后新创项建目项”目向。导除来了打站开、该向导、。程向序导文提件示夹在、对源话文框件中夹输、入块所文要件求夹的以详及细资 之

外,还可以选择已存在的

C,P进U 行出错和报警处理。

OB1

下图显示了通过向导创建一O个B1新项目的实例。

STEP 7 V5.4 编程手册-45

手动创建项目

可“在 SIMATIC 管理器中使用菜单命令文件 > 新建来创建一个新项目。它已经包含

MPI 子网”对象。

其它步骤 编方辑法项之目一时:,可自由选择大多数任务的执行顺序。一旦创建了项目,可以选择以下

        • 首先组态硬件,然后为其创建软件,或
        • 首先创建独立于所有已组态硬件的软件。

方法 1:首先组态硬件

操如果作。希完望成首该先操组态作硬时件,已,经那么插入可创按建“通软过件所ST要E求P 的7 组“态硬程件序手”册和”“第 2 卷程所序述”执文行件

夹。然后继续插 S7 M7入创建程序所需要的对象。之后创建可编程模块的软件。

方法 2:首先创建软件

还置可站以的不硬必件首结先构组态硬件就创建软件;可在以后组态硬件。不必为了输入程序而设

基本步骤如下:

  1. 在此项,目可中简插单入确所定要程求序的文软件夹文是件否夹包不含带站或硬C件PU或的 S7硬/M件7。程序)。
  2. 之后创建可编程模块的软件。
  3. 组态硬件。

S7 M7

  1. 一旦组态好硬件,就可以将 M7 或 S7 程序链接到 CPU 中。

插入站

在行项参目数中分,配站的代数表据了。可编程控制器的硬件结构,并包含有用于组态和给各个模块进

> 站来创建新站。

插使用“新建项目”向导创建的新项目已经包含有一个站。否则,可以使用菜单命令可选择一个下列站点:

        • SIMATIC 300 站
        • SIMATIC 400 站
        • SIMATIC H 站
        • SIMATIC PC 站
        • PC/可编程设备
        • SIMATIC S5

其它站,即非

和 SIMATIC S5 的站

如可果使用愿预先设置的名SIM称A插T入IC站S7/例M如7 ,站的名称。 站 、

站 等 。

关于 ,也可以用相关的名称( 替换

SIMATIC 300

(1)

SIMATIC 300

(2) )

组态硬件

逐步插入站的向导介绍,请参见插入站。

模当块组。态硬双击件站时点,,您即可可指定启动CP硬U件,配并置可应借用助程于序模。块目录,指定可编程控制器中的所有

一对个于在组态中创建的每个可编程模块,一旦保存完毕并退出硬件配置,将自动创建

目已经S7包或含M有7这程些序对以象及。连接表(“连接”对象)。使用“新建项目”向导创建的项的关于基本逐步骤组态。的向导介绍,请参见组态硬件。更多详细信息,请参见对站进行组态

创建连接表络将中为的每可个编可程编模程块模之块自间的动通创讯建一连个接(。空打白开)连时接,表将(“显示连接一个”包对含象)有。表连格接的表窗用口于,定可义在网有关详细信息,请参见对项目内的站进行联网。

该表格中定义可编程模块之间的连接。

下一步 创建硬件配置后,可以编写可编程模块的软件 另请参见插入 程序 。

(

S7/M7 )

插入 S7/M7 程序

用夹于被可称编为程模块程的序软”件,存对储于在对象文件夹中,。该对对于象S文IM件A夹TI被C 称S7为模“块,该程序对”象。文件

SIMATIC 300 站的可编程模块中的一个 S7 程序实例。

STEP 7 V5.4 编程手册-46

已存在的组件

每个可编程模块都有一个自动创建的 S7/M7 程序,用作软件容器:

下列对象已经位于新创建的 S7 程序中:

        • 符号表(“符号”对象)
        • 包含第一个块的“块”文件夹
        • 用于源文件的“源文件”文件夹

下列对象已经位于新创建的 M7 程序中:

        • 符号表(“符号”对象)
        • “块”文件夹

创建 S7 块

选希择望菜创单建命语令句表插、入梯形图或功能块图程序。为此,选择已存在的“块”对象,然后

户自定义的数据类型> S7 块。、在功子能菜、单功中能,块可、选组择织要块创或建变的量块表类。型(例如数据块、用

基现本在过可程打以开及(空“)块,开(U始D输T)入形语图句和表功、能梯块形图图”或手功册能中块获图得程序。) 可操在作创的建更逻多辑详块细时信的

息。 语句表、梯

关于本

注可释以位于用户程序中的对象“系统数据” 是由系统创建的。可以打开该对象,

但以将由所于作一致的改性原变因下,载不至能可对编其程控进制行器修改。。(在SD加B载) 程序后,它可用于改变组态,并可

使用来自标准库的块

还打可开以来使访用问与库软。件可同在时使到用库货的进标行准工库作中以的及块在来线创帮建助用中户获得程序关。于使用标单准命库令以文及创件建>

个人库的更多信息。

创建源文件 图表

/希CF望C

择与编程语言相匹配的源文件。现在可打开空的源文> 件S7,软开件始。输在入子程菜序单。中在,符可号以表选

件”对以象特定或“的编图表程”语对言象或,CF然C后图选表择来菜创单建命源令文插件入。为此,在 S7 程序中选择“源文中输入多个共享符号下找到更多信息。

创建 M7 程序

然希后望选为择M菜7 系单列命可令编插程入控制器的操作系统 RMOS 创建程序。为此,选择M7 程序,

匹配的对象。现在可打开> 所M7创软建件的。对在象子,菜访单问中相,关可编以程选环择境与。编程语言或操作系统相

创建符号表“创建符号S7编/M辑7器程”序窗时口,会会打自开动,创此建窗一口个将(空显)示的一符个号符表号(“表符,号并”可对在象其)。中打定开义符符号号表。时在,插入外部源文件

符号表中输入多个共享符号下找到更多信息。

可并通编译过任创建何单AS个C块II 。编辑器来创建和编辑源文件。然后可将这些文件导入到项目中,编译导入的源文件时所创建的块保存在“块”文件夹中。

可在插入外部源文件下找到更多信息。

建立和编辑项目

编辑项目

打开项目

一要个打项开目现。有于项是目项,目请窗使用口打菜单开。命令文件 > 打开。然后在紧接着出现的对话框中选择

> 管理更改项目列表中的条目。

注如释果您需要的项目没有显示在项目列表中,则单击“浏览”按钮。然后在浏览器令中文,件可以搜索其它的项目(包括在项目列表中所找到的所有项目)。可以使用菜单命

复制项目 可使用菜单命令文件 > 另存为,通过用另一个名称保存项目来复制项目。可使用菜单命令编辑 > 复制来复制部分项目,如站、程序、块等。

有关逐步复制项目的介绍,请参见复制项目和复制部分项目。

删除项目 可使用菜单命令文件 删除来删除项目。

可使用菜单命令编辑 > 删除来删除部分项目,如站、程序、块等。有关逐步删除项目的介> 绍,请参见删除项目和删除部分项目。

      1. 检查项目所使用的软件包

使如用果该您软正件在包编。辑的项目包含了使用另一个软件包创建的项目,那么编辑该项目时需所无需论要您的是使软件用包什及么其编程版本设备,为来您操提作多供帮项目助。、项目或库,STEP 7 都会显示完成该操作

在下列条件下,所需软件包的这种信息是完整的:

        • 如果项目(或多项目中的所有项目)或库是使用从 V5.2 开始的 STEP 7 创建的。

管理器,并选择相关的项目。然后选择菜单命令编辑 对象属性。在

        • 如果您自己已经检查了创建项目时所使用的软件包。为此,首先要转到

S所否IM显应A示检T的查IC对话框中,选择“所需要的软件包”标签。该标签中的>信息将告诉您是

项目所使用的软件包。

管理多语言文本

入ST文EP本7、可并以以做译到文:显导示出该在文某本个。项目中以一种语言创建的文本、翻译该文本、重新导下列文本类型可以用一种以上语言管理:

  • 标题和注释
    • 块标题和块注释
    • 程序段标题和注释
    • 来自 STL 程序的行注释
    • 来自符号表、变量声明表、用户自定义数据类型和数据块的注释
    • HiGraph 程序中的注释、状态名称和转换名称
    • S7-Graph 程序中的步骤名称和步骤注释的扩展
  • 显示文本
    • 本由 STEP 7、S7-Graph、S7-HiGraph、S7-PDIAG 或ProTool 生成的消息文
    • 系统文本库
    • 用户指定文本库
    • 操作员相关的文本
    • 用户文本

导出 源导语出言所栏选和择目的标对象语下言的栏。所源有语块言和文符本号表不得。为改变每。个文本类型创建导出文件。文件包含

导入 在导入期间,目标语言栏 右边的栏 的内容会集成到所选择的对象中。只有其源文本

被导出的文本 匹配“源语言”栏中已有文本的译文才会被接受。

改变语言

注当释改”变的语语言言时改,可变只以适从用向于所所选选择择的的项对目象导。入“期显间示指文定本的所”的有语言中改选变择总。是“适标用题于和整

个项目。

删除语言 当语言删除时,所有使用这种语言的文本都从内部数据库中删除。

删项除目。中在应导始出终和有一导入种期语间言,可请用始作终参指考语定该言参。考例语如言,作可为以源是本语言地语。目言标。这语言种可语以言根不应据

要求设置。

重新组织

语在言重新”组的语织言期。间重,新语组言织会只改影变响为当标题前和设置注释的。语言。当前设置语言是选作“未来块的

注释管理 可以指定在以多语言管理文本的项目中如何管理块的注释。

基本过程

多语言文本的类型

为其名称,已导出格式作为其扩展名 文本类型 格式:例如,

了进行导出,将为每种类型的文本创建一个单独的文件。该文件将以文本类型作或 SymbolComment.XLS)。不符合命(名规范的.文件将不能用作Sy源m文bo件lC和om目m标e文nt.件CS。V

项目中可翻译的文本可分为下列文本类型:

文本类型

块描标述题

块网注络释标题

STL 中的行注释

网络注释

Var_Section 注释(代码块中的声明表)以及

数符UD据号T块注注注释释释(用户自定义的数据类型)以及

由集新用成,户到并输可入显的示可在在系显统或示库其设的它文备显本上示输在设出运备的行上文期本间可动态更

PG

PG 或其它显示设备上

集新成,到并消可息显中示的在用户库的文本在运行期间可动态更

S7UserTextLibrary

S7SystemTextLibrary

S7UserTexts

SymbolComment

InterfaceComment

LineComment

NetworkComment

NetworkTitle

BlockComment

BlockTitle

文本类型 描述

HiGraphStateName HiGraphStateComment

HiGraphTansitionName HiGraphTransitionComment

S语7句-H名iG称raph

语句注释

翻译名注称释

S7GraphStateName S7GraphStateComment S步7骤-G名ra扩ph展步骤注释

本其类它型选,项在包此中不的进编行辑器描述(例。如 ProTool、WinCC 等等)可能具有面向其它应用程序的文

      1. 导出文件的结构

导出文件具有如下的结构: 实例:

$B/DQJXDJHV
9(1) (QJOLVK (86$) 7(1) *HUPDQ (*HUPDQ\)
$B7\SH(1HWZRUN7LWOH)
)LUVW FKDUDFWHU VHTXHQFH WR EH

WUDQVODWHG

7UDQVODWLRQ
6HFRQG FKDUDFWHU VHTXHQFH

WR EH WUDQVODWHG

7UDQVODWLRQ

6RXUFH /DQJXDJH 7DUJHW /DQJXDJH

原则上,下列均适用:

  1. 下列内容均不必进行修改、覆盖或删除:
    • 以“$_”开始的域 (这些都是关键字)

)。

    • 德语语言的编号(在上述实例中:9(1)代表源语言英语(美国),7(1)代表目标语言

。在导出文件本身的介绍性文本中包含对该

  1. 每个文件均只具有一种单个测试类型的文本。在实例中,文本类型为

文Ne件tw进or行kT编itl辑e (的$_翻Ty译pe员(N的e守tw则ork。Title)

  1. 后与一文行本的或后注面释。有关的其它信息必须始终出现在类型定义($_Type…) 的前面或最

如注果释目标语言的行已经被“

”所覆盖,则当文件导出时,将不指定任何

当目导标入语所言翻。译为的进文行本更时好,概您括必5,1您2(3验可2使) $用_U推目n标de的语fin言ed标,语例言如,“并9 (在1)必英要语时(美,国选)”择,正来确替的换语该言文。本。

,也不适用于符号 。

您可通过输入关键字 来隐藏不以目标语言显示的文本。这不适用于关于变量的注释

$_hide

(InterfaceComment) (SymbolComment)

导出文件格式

可指定将以何种格式保存导出文件。

如有果使您用已“经打决开定”使对用话框CS,V才格能式在,那么,中在正使常用打E开xcel 进行文编件辑。时通,过您在必资须源注管意理,器只中

骤进行,您双击将会操发作现来在打开 CSV中文使件用将E经xc常e文l导件致进打行开工的作文C将件S更V无容法易使:用。如果您使用下列步

  1. 在 Excel 中打开E导xc出el文件。 CSV
  2. 将文件另存为 XLS 文件。
  3. 翻译 XLS 文件的文本。
  4. 在 Excel 中将 XLS 文件另存为CSV 格式的文件。

不注必释重新命名导出文件。

管理其语言字体未安装的用户文本

重您新可以导入导,出并未进在行操保作存系,统以中供安您装的其项语目言使字用体。的用户文本,对其进行翻译,然后将其然而,这样的文本将只能显示在已经安装了相应语言字体的计算机上。

那例么如,您可果以您按必如须下将所用述户文进行本操翻译作:为俄文,但在操作系统中没有安装 Cyrillic 字体,

  1. 导出源语言为“英语”、目标语言为“俄语”的要翻译的用户文本。
  2. 将所导出的文件发送给翻译员,该翻译员一定要有 Cyrillic 字体。
  3. 结导果入:所现翻在译,的在导您出的文计件算。机上,在英语和俄语下都可以使用该项目。
  4. 便保可存以整显个示项该目文,本并。发送给将要使用俄语文本的客户,客户要有 Cyrillic 字体,以

关于记录文件的信息

通)。该文件存储在与导出文件相同的文件夹中。

式使用多语言管理文本进行工作时出现的出错消息和警告将输出到记录文件中(TXT 格常,消息会自带说明。任何进一步的解释列举如下:

警告 “xyz”文件中的文本“xyz”早已存在。忽略更多文本事件。

解释 言无论中的使不用同何术种语,言或,在文同本一都将语用言下作翻使译用的了基多础次。,如则无果法相对同的其进文行本唯用于一识一种别,以结上果的就语实例:

不会对其进行翻译。

纠正方法

仅适用于标题和注释。

STEP 7 V5.4 编程手册-47 字重新命名导出文件中的有关文本(在本例中,必须使用一个德语字来代替三个不同的

),然后重新导入文本。

优化翻译源文本

可通过组合不同的术语和表达式来准备用于翻译的源材料。

实例 在准备之前(导出文件 :

)

$B/DQJXDJHV
9(1) (QJOLVK (86$) 9 (1) (QJOLVK (86$)
$B7\SH(6\PERO&RPPHQW)
$XWR-HQDE.
$XWRPDWLF HQDEOH
$XWR-HQDEOH

6RXUFH /DQJXDJH

组合成一个单个表达式:

7DUJHW /DQJXDJH

$B/DQJXDJHV
9 (1) (QJOLVK (86$) 9 (1) (QJOLVK (86$)
$B7\SH(6\PERO&RPPHQW)
$XWR-HQDE. $XWR-HQDEOH
$XWRPDWLF HQDEOH $XWR-HQDEOH
$XWR-HQDEOH $XWR-HQDEOH

6RXUFH /DQJXDJH 7DUJHW /DQJXDJH

在准备之后(也就是说,在导入以及随后的导出之后):

$_Languages
9 (1) English (USA) 9 (1) English (USA)
$_Type(SymbolComment)
Auto-enable Auto-enable

 

Source Language Target Language

优化翻译过程

化如。果您拥有的项目,其结构和文本都类似于前一个项目,则您可对翻译过程进行优

特别对于通过复制,然后对其进行修改所创建的文件,建议按下列步骤操作。

前提条件 必须有现存的已翻译的导出目标。

步骤

  1. 将导出文件复制到用于保存将要翻译的新项目的项目文件夹中。
  2. 标打已开经新存项在目,所并以导将出询文问本是(菜扩单展命导令出选目项标>,管还理是多将语其言覆文盖本。> 导出)。因为导出目
  3. 单击“添加”按钮。
  4. 对导出文件进行翻译(仅需要翻译新的文本)。
  5. 然后导入所翻译的文本。

建立和编辑项目

微存储卡(MMC)用作数据载体

微存储卡(MMC)须知

微存储卡(MMC)是插入式存储卡,例如,用于 CPU 31xC 或 IM 151/CPU (ET

200S)

。它们最显著的特征是高度紧凑的设计。

MMC 中采用了新型的内存概念。下面进行简要描述。

MMC 的内容

MMC 可作为装入存储器和数据存储设备(数据载体)。

MMC 作为装入存储器

、 以及硬件配置的程序。装入存储器的内容影响 的功能。 作为

MMC 包含可兼容 MMC 的CPU 的全部装入存储器。装入存储器包含具有块(OB、

装DB入存FC储.器..) 使用时,可以利用它传送具有装载功能的块和硬CP件U配置 即下载MM到C

CPU)。下载到 CPU 的块立即生效;而硬件配置只有在

内存复位后的反应

CPU

重启动( 后才生效。

在内存复位后,存储在 MMC 上的块仍保留。

装载和删除可以覆盖

上的块。

可以删除 MMC 上的块。

不能恢复已M覆MC盖或删除的块。

访问 MMC 上的数据块

少在用M到MC的上数,据可。以新使的用系数统据操块作和可数支据持块这内些容功,能处:理较大数量的数据或在用户程序中很

        • SFC 82:在装入存储器中创建数据块
        • SFC 83:读装入存储器中的数据块
        • SFC 84:写装入存储器中的数据块

MMC 和口令保护

管理器中 在编程设备 上 打开 时,也会提示用户输入此口令。

如果装有微存储卡(MMC)的 CPU (即在 300-C 系列的 CPU)受口令保护,那么,在SIMATIC ( /PC ) MMC

在 STEP 7 中显示内存分配

区域。

模块状态对话框(“内存”标签)中的装入存储器分配画面中同时显示了 EPROM 和

RAM

MMC 上的块显示 100% EPROM 的性能。

建立和编辑项目

将微存储卡作为数据载体使用

S介T质EP的7方使式用相S同IM。ATIC 微存储器卡(MMC)的方式与使用任何其它类型外部数据存储的在文确件定资M源MC管具理有器足中够可的见容的量任可何用数于据容传纳送所给有要存储的数据之后,您可以将操作系统采程取以这及种功方能式描,述您。可以使其他人员也可以使用与您的设备有关的附加图纸、操作规

MMC。

存储卡文件

生成的存储卡文件(*.wld)将用于:

        • 软件 PLC WinLC (WinAC Basis 和 WinAC RTX)以及

W文i件nL中C。或这C些PU文4件1x的-2内P容C随I 的后块将和与系统数据均可同在 S7-存储卡中一样保存在存储卡

        • SlotPLC CPU 41x-2 PCI (WinAC Slot 412 和 WinAC Slot 416)。

对应于使用

S7-CPU 的相应存储卡的内容保持一致。

作面板的菜单ST命E令P 下7 的载用到户它程们序的的存下储载器,中该。文件可通过 WinLC 或CPU 41x-2 PCI 操

行就操CP作U 41x-2 PCI 而言,如果CPU 41x-2 PCI 没有进行缓冲,且只使用RAM 卡进

载。 (“自动装载”功能),那么,当PC 操作系统启动时,该文件将可自动进行下

行对移于动W、ind删o除ws或来使说用,数存据储介卡质文进件行是传“输正。常的”文件,借助于资源管理器,可对其进更多信息,请参见 WinAC 产品的相应文档。

在微存储卡(MMC)上存储项目数据

使用 STEP 7,您可以将 STEP 7 项目的数据以及任何其它种类的数据(例如 Word 或(MMC)上。这将使您能够使用没有在其上保存项目的编程设备来访问项目数据。

Excel 文件)存储在适当的 CPU 或编程设备(PG)/PC 中的 SIMATIC 微型存储器卡

要求

接只有后将,才其插能将入项到目适数当的据存CP储U在或编程设上备。(PG)/PC 的插槽中,并已建立了一个在线连

确保 MMC 具有足够的容量,能够容纳所有要存储的数据。

MMC

可存储在 上的数据

MM在C

件资确源定管M理MC器具中有可足见够的的所容有量数可据容传纳送所给有要存。储它的们数包据括之下后面,的您数可据以:将操作系统的文

        • STEP 7 的完整项目数据
        • 站组态
        • 符号表
        • 块和源文件
        • 以多种语言管理的文本

MMC

        • 任何其它种类的数据,例如 WORD 或Excel 文件

用不同版本的 STEP 7 编辑项目

编辑版本 2 项目和库

不ST一EP致7,的以版致本于V5.2项不目再或支库持不V能2再项用目以中前的的改变。当编版辑本V编2 项辑。目或库时,可能发生

V2

STEP 7

V2

STEP 7

为了继续编辑 V2 项目或库,必须使用 STEP 7 V5.1 以前的版本。

扩展用STEP 7 早先的版本创建的 DP 从站

可通过导入新的*.GSD 文件形成的群集

从站。安装后,它们位于“其它域设备”文件夹中。

如果在硬件目录中安装新的设备数据库文件(*.GSD 文件),HW Config 可以接受新的

DP

如果存在下列所有条件,则不能用通常方式重新组态或扩展模块化 DP 从站:

      • 从站通过 STEP 7 早先的版本组态。
      • 从站在硬件目录中以类型文件而不是以*.GSD 文件表示。
      • 从站上已经安装了新的*.GSD 文件。

纠正方法 如果希望使用在 文件中描述的具有新模块的 从站:

文删件除描DP述从。站*.,GS并D再次组态。然后,DP 从站完全DP由*.GSD 文件、而不是由类型

如果不希望使用任何新模块:

时PR,OFIBUS-DP 从站”文件夹。当“旧的”类型文件由新的*.GSD 文件代替

      • 在硬件目录窗口中的 PROFIBUS-DP 下,选择“其它现场设备/兼容的

来扩展ST已EP组7态将该类从型站文的件模移块动。到此文件夹中。在此文件夹中,可以找到可以用

DP

用不同版本的 STEP 7 编辑项目

用 中的 文件代替类型文件后的群集

STEP 7 V从5.1 Service Pack 4 GSD

目代录。ST此E置替P 文代7 V只5。影.1响Se与rvice Pack一4起起提,供类的型目文录件配要置么文更件新,,而要不么影大响量用地户由自G行SD创文建件的替中其的属相性同以位前由置。类型文件确定、而现在由 GSD 文件确定的 DP 从站,仍位于硬件目录目“录旧文的件”夹类“型其文件它不域会设删备除,而是转移到硬件目录中的另一个位置。它们现在位于

STEP 7

\兼容的 PROFIBUS DP 从站\...”中。

从 V5.1 Ser如vic果e编P辑ac用k 4 起,通过STEP 7 扩展现有的 DP 组态

STEP 7 的早先版本(早于 V5.1,SP4)创建的项目,并且希望扩展模块化

\兼容的 PROFIBUS DP 从站\...”处找到的 DP 从站。

下DP,从可站使,用那在么“不其能它使域用设从备硬件目录的通常位置取得的模块或子模块。在这种情况

用 STEP 7 V5.1,SP4 的早先版本编辑 DP 组态

早先的版本 早于 , 编辑项目,将不能编辑该 从站,

如果用 STEP 7 V5.1,Service Pack 4 以上版本组态“更新的”DP 从站,再用

S因T为EP早7先的版本不能(识别所ST使E用P 的7 V5.1 文S件P4。) DP

纠正方法:可以在 早先的版G本SD中安装所需要的 文件。在此情况下,

STEP 7

GSD

 

STEP 7

GSD

的GSD 文件存储在项目中。如果随后用当前的 STEP 7 版本编辑项目,会使用新安装

GSD 文件进行组态。

用不同版本的 STEP 7 编辑项目

用STEP 7 早先的版本编辑当前组态

组态直接数据交换(横向通讯)

组态无DP 主站系统的 DP 主站的直接数据交换:

      • 不能用于 STEP 7 V5.0,Service Pack 2 (或早先的版本)

用如果较保旧版存本无的自身 DP 主站系统的DP 主站,及其直接数据交换的或已更组早态的分版配本,编并辑且该继项续

      • 可用于 STEP 7 V5.0 Service Pack 3 以上和 STEP V5.1 以上的版本

目,将产生下列ST结E果P :7 V5 (STEP 7 V5.0 Service Pack 2 ( ))

      • 放显示直接DP数主据站交系换统分及配用。作这些STEP 从7 内站部不数属据于存所储显区示域的的从主站站,系该统存。储区域用于存
      • 不能将新的或孤立的 主站系统连接到此 主站。

DP

DP

DP DP

通过 接口在线连接到

PROFI组BU态S无-DP CPU

DP 主站系统的 PROFIBUS-DP 接口:

      • STEP 7 V5.0,Service Pack 2 (或更早版本):不可能通过本接口连接到 CPU。
      • 接从口ST的E系P 统7 V数5据.0;,下Se载rv后ice,P可ac通k 过3 起此:接在口编连译接期到间,生。成用于 PROFIBUS-DP

CPU

以前版本SIMATIC PC 的附加组态

项目的 组态 截止到

STEP 7 V5.从1 PC ( SP 1)

将通ST讯E下P 载7 V到5.1,Service Pack 2 起,就像下载到 S7-300 或 S7-400 站一样,可以

生成组态文件,PC以站便(能无用需该通办过法组将态组文态件传绕送道到)。目然标而,始终会在存储或编译操作期间

这样做的结果是,“老的”

可以自动适应这种情况:

PC 站。

PC 站不能解释新生成的组态文件中所包含的某些信息。

STEP 7

会假定目标 站是在 年 月以后的 的帮助下

组ST态EP的7,即假设已经P安C装了 2001 7 SIMATIC NET CD

      • 从 V5.1,Service Pack 2 起,如果用 STEP 7 创建新的 SIMATIC PC 站组态,

以被“新”PC 站解释。

的Service Pack 1 组态),STEP 7 不会假定目标 PC 站是借助于 2001 年 7 月以后

S7RTM (运行系统管理器)。这样生成的组态文件可

      • 如果附加以前版本的 SIMATIC PC 站组态(例如,PC 站用 STEP 7 V5.1,

站解SI释M。ATIC NET CD 组态的。用这种方式生成的组态文件可以被“老的”PC

如果此默认性能不符合您的要求,可以按照下述步骤进行修改:

在上下文菜单“组态硬件”中进行设置:

  1. 打开 PC 站硬件配置
  2. 右击站窗口(白色区域)
  3. 选择“站属性”上下文菜单
  4. 选定或清除“兼容性”复选框。

在“组态网络”上下文菜单中设置:

  1. 打开网络组态
  2. 高亮显示 PC 站
  3. 选择菜单命令编辑 > 对象属性
  4. 在对话框中,选择“组态”标签
  5. 选定或清除“兼容性”复选框。

项目的 组态

STEP 7 V5.从0 PC

组态V5仅.0由,Service Pack 3 或起更,高如版果本希支望持用的ST新E组P件7 编,辑则必SI须MA转T换IC站P:C 站组态,以便

属性SI。MATIC 管理器中,高亮显示 SIMATIC PC 站,并选择菜单命令编辑 > 对象

然在后属,性对话框的“功能”标签中,点击“扩展”按钮。

2.

或更新版SIM本A编T辑IC。PC 站被转换。现在,它只能用 STEP 7 V5.0,Service Pack 3

显示那些由 STEP 7 较新版本或可选的软件包组态的模块

组态的而在“旧版” 下无法识别的模块。使用选项包组态的模块也将显

从 STEP 7 V5.1 Service Pack 3 起,将显示所有模块,即使是那些使用新版 STEP

示7 ,即使编程设备 STEP 7

在先前的

(PG)上没有安装用于打开给定项目的相应选项包。

中,这些对ST象E均P 是7 版可本见中的,并不可显进示行这某样种的程模度块的和编它辑们。的例附如属,对您象也。可在使当用前该的功版能本修进行(例组如态C。PU)由于具有新的属性和新的参数,不能使用现有的更早版本的 STEP 7

块改用户程序,即使项目是在另一个运行更新版本 STEP 7 的计算机上创建的,而模

STEP 7 V5.4 编程手册-48 STEP 7“未知的”模块将显示为一个通用的、代理模块,其图标如下:

准如方果式使显用示适,当并的可ST不E受P 任7 版何本限或制兼地容编的辑选。件包打开项目,则所有的模块都将以其标

STEP 7 V5.4 编程手册-49 STEP 7 V5.4 编程手册-50 STEP 7 V5.4 编程手册-51 STEP 7 V5.4 编程手册-52 STEP 7 V5.4 编程手册-53

具有最新 STEP 7/选件包的 PG

具有较早 STEP 7/不带选项包的 PG

使用“已知”表示,最新模块

>>>---项目数据--->>>

将最新模块表示为“未知”模块

在 SIMATIC 管理器中使用代理模块进行工作

数代据理和模块连接在站表,点均层是级可中是见的可,见并的可。从位于该层的所管有理附器属中对下象载,。例如用户程序、系统

您也可打开、编辑、编译和装载用户程SI序MA例TI如C用户程序的块 。

然而,对具有代理块的项目须遵守下列限制( : )

      • 不能复制包含有代理块的站。
      • 在复菜单制命和重令新“组项目织的另项存目为..例.”如中,,用选户项程“序重中组,”代将理完模全块不及能该适模用块。的所有引用和

附属对象都将丢失。 ( )

在硬件配置中使用代理模块进行工作

代理模块显示在组态时所在的插槽上。

标您签可打属开性页该模中给块定,的但那不能些属改性变。其不参能数修或改为站其组下态载参例数如。添模加块新属的性模将块限。制为“典型”

本也可进行硬件诊断(例如在线打开站)(有一定的限制( :不能识别新的诊断选项和文

)

)。

在网络组态中使用代理模块进行工作

代理模块也可显示在NetPro 中。此时,站上模块的名称将以问号开头。具有代理模块的项目在 NetPro 中只能以写保护的形式打开。

些在状写态保护至少模式包括下打正在开项使用目的时,您可显版示本并所打支印持网的络那组些态信。息您。也可获取连接状态,这然而,通常情况下,您将无法ST对E其P 进7 行任何修改、保存、编译或下载。

模块的后续安装

“如果实际模块的”来自模块于来较早代替版本代的理模ST块E。P 一7,旦且打可开以站对点其,进您行将H立W刻更收新到,与则必您需可的使用一更个新

HW 更新来安装这些模块。

安或装选件包有关的信息,且可使用对话框安装它们。另外,您也可选择菜单命HW令选项

>

用不同版本的 STEP 7 编辑项目

绝对寻址和符号寻址

块在。ST完E全P 可7 程以序在中程,序使中用访地问址这如些地I/O址信,号但、是位如内果存使、用计地数址器符、号定,时程器序、将数更据容块易和阅功读能

符(例号如访,问M用ot户or_程A序_O中n的或地其址它。符合公司或行业内代码系统的符号)。然后,可以通过此

绝对地址 绝对地址包含地址标识符和内存位置 例如, 。

(

Q 4.0, I 1.1, M 2.0, FB21)

符号地址 如果将符号名分配给绝对地址,可以使程序更易读,并能简化故障排除。

问STEP 7 可以自动地将符号名称翻译成所需要的绝对地址。如果愿意使用符号名称访

符号AR寻R址A数Y、据S前TR,U必C须T、首数先据将块符、号本名地称数分据配、给逻绝辑对块地和址用。户自定义数据类型,在使用例如,可以将符号名称 MOTOR_ON 分配给地址 Q 4.0,然后在程序语句中将

作为地址使用。使用符号地址,更容易识别程序中的元素与过程控制

项MO目T的OR组_件O的N 匹配程度。

注符号释名(变量 ID)中不允许出现两个连续的下划线字符(例如,MOTOR ON)。

定义符号

支持编程

对在编地程址或语言符号梯。形图、功能块图和语句表中,可以输入地址、参数和块名称,作为绝

间使用切换菜单。命令视图 > 显示 > 符号表示法,可以在地址的绝对表示法和符号表示法之

中包含更多的信息> 。不能>编辑该显示;任何改变都必须味在着符每号个表S或TL变语量句声后明的表行中注进释

用为菜了单更命容令易视使用图符号显地示址编符程号,信可息以激显活示此绝信对息地。址这和意属于符号的符号注释。可以使行。

下图显示在 STL 中的符号信息。

STEP 7 V5.4 编程手册-54 当打印输出一个块时,具有语句注释或符号注释的当前画面表示也被打印。

共享符号和局部符号

释符的号有使效您结能合够,采可用使具编有程某种更容意义易、的程符序号文名档来代的质替量绝更对好地址。进行工作。短符号和长注

应注意区分局部(指定块)符号和共享符号之间的不同。

  • 下划线(_)。
  • 数字,
  • 字母,
  • 在同不一同个的符块号中可使以用根。据不同用途
  • 效仅;在对其进行定义的块中有

定义符号

显示共享符号或局部符号

程序代码段中的共享符号与局部符号之间的差别可区分如下:

      • 来自符号表中的符号(共享符号)将显示在引号“..”内。

引• ( ) #

来自块的变量声明表中的符号 局部符号 将在前面冠以字符“ ”。

加这号些或“字符#”。无须输入。在梯形图、FBD 或 STL 中输入程序时,语法检查将自动添

那如么果当担心您要在使某用些该情况共享下出符号现时混,淆必,须例直如在接对符其号表进和行编变量码声输明入中地都址使或用者同包一括个引符号号的,符

号)。此时,没有进行分别编码的任何符号都将解释为指(定块 局部 的变量。

如果符号包含有空格,也必须对共享符号进行编码 输入地址或( 者包)括引号的符号 。

下当,在将ST不L会源自文动件添中加进代行码编字程符时,,但将如采果用您同希样望的特殊(字符,及这准些则代。码在字自符由将编仍辑然模需式)

要。 避免混淆

址注使。释用菜单命令视图 > 显示 > 符号表达式,可切换显示所声明的共享符号与绝对地

设置地址优先权(符号地址/绝对地址)

或修改多重实例时,地址优先级有助于按照您的意愿调整程序代码。

在改变符号表中的符号、改变数据块或功能块的参数名称、改变引用组件名称的

UDT

完成。

为令编了辑设置地对址象优属先性级。,在请“转地到址SIMATIC 管理器,并选择块文件夹,然后选择菜单命

能当从在下地列址优情况先级下进中获行改益,动在时您,必开须始另仔一细类设型置的地改址动优之先前级,每并要个有改动明过确程的目都必的须。彻为底了

的设置。>

优先级”标签中,您可以进行与您自己的要求相适合

在地址优先级中进行优化设置要求区分下列改动情况:

      • 纠正单个名称
      • 转换名称或分配
      • 新的符号、变量、参数或组件

注请释记住,即使已经设置了符号地址优先级,对于逻辑块来讲,绝对块编号仍是调用

( FC FB DB )

块时的决定因素 “调用 ”或“调用 、 ” !

纠正单个名称

的在所符有号名表称或程,以序及编可辑以器使/块用编程辑序器编中辑,器必块须编纠辑正器名进称行的修拼改写的错所误有。参这数适、用于变量符或号组表件中

实例:

的名称。 /

设置地址优先级:

STEP 7 V5.4 编程手册-55

跟踪改动: 在“检SI查M块AT一IC致管性理”器功中能,在选单择个块块文中件进夹行,必然要后的选改择动菜。单命令编辑 > 检查块一致性。

转换名称或分配

实例:

      • 符号表中现有分配的名称已转换。
      • 符号表中现有的分配被分配了新地址。
      • 变量名称、参数名称或组件名称在程序编辑器/块编辑器中被转换。

设置地址优先级:

STEP 7 V5.4 编程手册-56

定义符号

跟踪改动:

      • 在性。SI“M检AT查IC块管一理致器性中”,功选能择在块单文个件块夹中,进然行后必选要择的菜改单动命。令编辑 > 检查块一致

新的符号、变量、参数或组件

实例:

      • 正在为程序中使用的地址创建新符号。
      • 正在向数据块、UDT 或功能块中添加新的变量或参数。

设置地址优先级:

      • 在符号表中的改动。

STEP 7 V5.4 编程手册-57

在程序/块编辑器中的改动。

STEP 7 V5.4 编程手册-58

跟踪改动: 在“检SI查M块AT一IC致管性理”器功中能,在选单择个块块文中件进夹行,必然要后的选改择动菜。单命令编辑 > 检查块一致性。

共享符号的符号表

在符号表中定义共享符号。

在创建 S7 或M7 程序时,将自动创建一个(空的)符号表(“符号”对象)。

定义符号

有效性

号符,号必表须仅自适用己确于要保各为种其符链号接表程中序的条模目块。全都如匹果要配在例众如多,不通同过的复C制P符U号中表使用。同样的符

( )

      1. 符号表的结构和组件

符号表的结构

STEP 7 V5.4 编程手册-59

STEP 7 V5.4 编程手册-60

如号果将“出特现殊在对行象中属,性只”要列相已关隐的藏行至(取少消为选其定设菜置单了命一令个视“图特>殊列对O象、属M性、”C、R、CC),则该符

“状态”列

符号名仍或然地是址不与完符整号的表符中号的名另或一地个址条已目丢是失一。样的。


R/O/M/CC 列说明是否为符号分配了特殊的对象性质(属性):

R/O/M/C/CC 列R (监视)意味着使用选项包 S7-PDIAG(V5)为符号创建了过程诊断的出错定义。

        • O 意味着可使用 WinCC 对符号进行操作和监视。
        • M 意味着与符号相关的消息(SCAN)已经分配给符号。
        • C 意味着符号已分配了通讯属性。
        • C制C”意味着可在程序编辑器中对符号进行快速、直接的监视和控制(“触点控

点单击命复令选来框编,辑激“活特或殊禁对止象这属些性“”特。殊对象属性”。也可通过编辑 > 特殊对象属性菜

对目于已组经织存块在(,O在B)编和辑某些系统功能块(SFB)以及系统功能(SFC),预先定义的符号表条 STEP 7 ...\S7data\ \ .sdf

目录 符号 符号 中。

S7 程序的符号表时,可将其导入表中。导入文件将存储在

“地址”列实地例址:是特定存储区和存储单元的标识符。输入后Inp将ut对I 地12址.1的语法进行检查。

“数据类型”列

类用型户,可在必要ST时E可P 进7 的行众改多变数。据如类果型用之户间所进作行的选更择改。不数适据用类于型地域址已,经或包语含法了不默正认确数,据则

当从域中退出时,将显示一条出错消息。

“注释”列用建户更可有为效所、有程的序符文号档分更配完注整释。。注简释短长的度符可号以名多和达更详细的注释相组合,会使程序创

80 个字符。

转换为 C 变量

C 变量。

应用的户可从 M7 程序的符号表中选择符号,并结合 ProC/C++软件选项,将其转换为相

定义符号

符号表中允许的地址和数据类型

自定义在“语言”标签中进行 德语 和 英语 助记符之间的切换。

在整个符号表中仅可使用一套助记符。在 SIMTIC 管理器中,必须使用菜单命令选项

> SIMATIC ( ) IEC ( )

IEC SIMATIC 描述 数据类型 地址范围

输入位 至

I E BOOL 0.0

输入字节

IB EB

65至535.7

 

BYTE, CHAR 0

65535

 

IB EB

BYTE, CHAR 0

65535

IW EW 输入字 WORD, INT, S5TIME, DATE 0 至 65534

输出位 至

ID ED 输入双字 DWORD, DINT, REAL, TOD, TIME 0 至 65532

Q A BOOL 0.0

输出字

至至

QB AB

QW AW

输出字节输出双字

65535.7

BYTE, CHAR 0 65535

WORD, INT, S5TIME, DATE 0

65534

0 至 65532

QD AD

M M

MB MB

存储器位

存储器字节

外设输入字节

DWORD, DINT, REAL, TOD, TIME

BOOL

WORD, INT, S5TIME, DATE

0.0 至65535.7

65535

0 至 65534

BYTE, CHAR 0

MW MW

MD

0 至 65535

WORD, INT, S5TIME, DATE

MD 存储器双字 DWORD, DINT, REAL, TOD, TIME 0 至 65532

PIB PEB

PQB

外设输入字

0 至 65534

PIW PEW

PQ

BYTE, CHAR

PAB 外设输出字节 BYTE, CHAR 0 至 65535

WORD, INT, S5TIME, DATE

PAW 外设输出字 WORD, INT, S5TIME, DATE 0 至 65534

W

PID PED 外设输入双字 DWORD, DINT, REAL, TOD, TIME 0 至 65532 PQD PAD DWORD, DINT, REAL, TOD, TIME 0 65532

C Z 计数器 COUNTER 0 至 65535

FB FB 功能块 FB 0 至 65535

T T 定时器 TIMER 0 至 65535

外设输出双字 至

OB OB 组织块 OB 1 至 65535

FC FC 功能 FC 0 至 65535

数据块 至

DB DB DB, FB, SFB, UDT 1 65535

SFB SFB 系统功能块 SFB 0 至 65535

VAT VAT 变量表 0 至 65535

系统功能 至

SFC SFC SFC 0 65535

UDT UDT 用户自定义的数据类型 UDT 0 至 65535

8.5.3 符号表中的不完整和非唯一符号

STEP 7 V5.4 编程手册-61 不完全符号址也可。以这意存味储不着可完随全时符中号。断对例符如,号可表以的操先作输入、保符存号中名间,然结果后,再然在后以在后另添外加的相时应的间内地完成编其写余软的件工没作有。错不误完消全息符出号现在时“,状必态须”输栏入中符将号用名、地符址号和进数行据标类识型。。在准备使用符号

( )

多义符号是如何产生的

STEP 7 V5.4 编程手册-62 符在将号。符这号意插味入到着新符符号表号和,现而其有符号都名是和不/或确地定址的已。用“于状另态一”符栏号中栏的时符,号就会表产明生了多这义

种状态。

生例这如种,在情况复。制和粘贴某个符号以便对副本中的详细情况进行略微的修改时,就将发

多义符号的标识

中在的符这号种表变中,化意多味义符着它号们可仍通然过需图要形编方辑式。(颜您色既、可字显体示)加所亮有显符示号来,进也行可标对识视。图其进表行达过式

滤,以便只显示唯一符号或多义符号。

使符号唯一两如个果改符号变都了是导不致确这定种的状,态的并且组您件已(符改号变和了/或其地中址的),一多个义符符号号以将使变其为成唯为一唯符一号符。号如,果那

么另一个符号也将变为唯一符号。

定义符号

输入共享符号

在随后的阶段中,有三种输入符号的方法可供编程使用:

      • 通在正过对在话输入框程序的窗口中打开一个对话框,然后定义一个新的符号或重新定义现失有的或希符望号。在编建写议程在序定时义修单改个符的号符的号时候使用使用该。过这程,样可例以如,不必当显您示意整识个到符号表可。能丢
      • 可直直接接在在符符号表号表中中输入符号及其绝对地址。如果希望输入许多符号,或者当您为

容了易使地已分对符配的号进符行号在总览屏。幕上显示而创建项目的符号表时,建议使用该过程,它可

      • 从可其在它您熟表格知编的辑任器何表中导格入编符辑号器表例如

将所创建的文件导 (入符号表。

输入符号时的一般技巧

Microsoft Excel)中创建符号表的数据,然后

列符号

地数址据类型

充要为。可符使号表用菜输入单命新令的插符号入,可符将号光将标新放行置插在入表到中符的号第表一当个前空行白的行前,面并。对如单果元在进光行标填位

新置之符号前。的地行址已来经自包前含一了行地,址> 根,则据可前以一行通自过动预添设“加;地址数据”类栏型和则“输数入据类默认型”的数栏据来类插入

型。

可使保用存编辑尚未菜单完全中的定命义的令符可复号。制和修改现有的条目。进行保存,然后关闭符号表。也在输入符号时,应注意以下要点:

注整释个符号表内的名称必须是唯一的。当对该域中的条目进行确认或退出域时,将对非唯

一当符对号该进域行中标的记条。目符进号行最确多认可或包退含出域24时个,字将符检。查不输可入使的用地引址号是("否)。合法。
当检输查入新地的址数时据,类将型自是动否为与该地域址分匹配。个默认的数据类型。如果改变该默认设置,程序将

注释 可在此处输入注释,以简要介绍符号的功能(最多 80 个字符)。输入注释是可选的。

在对话框中输入单个共享符号

定下义述步新符骤号说。明了当对块进行编程时,如何不显示符号表就能在对话框中修改符号或开如果符号只表是并希直望接编辑在符单个号表符中号工,作该。步骤十分有用。如果想要编辑多个符号,那么应打

激活块中的符号显示

令使前用将菜出单现命令一个视图复选> 标显记示,>表符示号符表号达表式达在式打已开激块活的。块窗口中激活符号显示。菜单命

在输入程序时定义符号

        1. 确保块窗口中的符号表达式已打开(菜单命令视图 > 显示 > 符号表达式。)
        2. 在想要为其分配符号的程序代码段中,选择绝对地址。
        3. 选择菜单命令编辑 > 符号。

所4.

填写对话框然后将其关闭,单击“确定”确认您的输入并确保输入了一个符号。出现定义出错的消符息号并将输将其入到拒绝符。号表中。如果所作的输入会导致出现非唯一性符号,则会

在符号表中编辑

使用菜单命令选项 > 符号表,可打开符号表以进行编辑。

在符号表中输入多个共享符号

打开符号表可使用多种方法打开符号表:

  • 双击项目窗口中的符号表。
  • 选择项目窗口中的符号表,并选择菜单命令编辑 > 打开对象。

当活动首次程打序开的创符建号的表将符号显表示在时,它自符号己表的窗是空口白中的。。现在即可创建符号或对其进行编辑。

输入符号

排序符号

充要为。可符使号表用菜输入单命新令的插符号入,可符将号光,标将放新置的在空表白中行的插第入一到个符空号白表行当,前并行对的单前元面进。行使填用存编辑尚菜未完单全中的定义命令的符可号复。制和> 修改现有的条目。进行保存,然后关闭符号表。也可保

序符。号表中的数据记录可根据符号、地址、数据类型、或注释,按字母表顺序进行排使式用。菜单命令视图 > 排序,打开对话框并定义排序视图,可改变符号表的排序方

过滤符号 可使用过滤器来选择符号表中记录的子集。

使用菜单命令视图 > 过滤器可打开“过滤器”对话框。

您可定义记录必须满足的标准,以便将其包括在过滤视图中。过滤可根据:

  • 符号名、地址、数据类型、注释
  • 存具储有器操或作过员程监输控入属性的符号、具有通讯属性的符号、消息二进制变量的符号(位
  • 具有状态“有效”)、“无效 非唯一、未完成 ”的符号

各个标准均链接有一个“与”操(作。过滤记录将从) 指定的字符串开始。

的如在果线您希帮助望。了解“过滤器”对话框中更多选项相关信息,请按下 F1 打开上下文相关

使用大写和小写符号

在大写和小写字符之间没有任何区别

有以前区别可以。在 STEP 7 的中定义一些中符这号种,情这况些发符生号了在变用化于。单现独在的将字不符再时按仅照在大大小小写写对上符该号进变化行是区根分。据ST我E们P 客7 户的V4要.0求2 而作出的,它将大大减少程序中出现错误的风险性。个对标符准号。定义作出的这些限制也支持 PLC 开放论坛的目标,即为可转换的程序定义一

可现进在行已如经下不定再义支持:仅按照大小写字符进行区分的符号定义。例如,以前在符号表中

Motor1 = I 0.0

m符o号to将r1根=据I 1第.0一个字母所使用的大小写情况进行区分。这类区别具有容易混淆的危

险。新的定义将消除此错误来源。

对现有程序的影响

到如果困已难:经使用该标准来区分不同的符号,那么在下列情况下使用新定义时可能会遇

  • 符号仅在使用了大小写字符时才进行相互区分
  • 参数仅在使用了大小写字符时才进行相互区分
  • 然 符号仅在使用了大小写字符时才与参数进行区分

而,所有的这三种冲突都可通过下述方法进行分析和处理。

仅在使用了大小写字符时才进行相互区分的符号

冲突:

中如第果一没个有非用唯当一前的版本符号的。软件对符号表进行编辑,那么在编译源文件时将使用符号表示如果符号已,经并对且符包号含表这进些行符了编号的辑源,文那件么在这编类译符时号可将能无会效出;错也就。是说在打开块时将不显

纠正方法:

一打的开符号。表随,后检,查即其可中是使用否过存在滤器冲“突非,唯然一后的重新符号保”存来符显号表示非。唯该一动的作符可号识,别然出后非对唯在其打进开行块更正时将。自还动应使该用更正或显包含示当冲前突的任何源文件。无须对块进行更多的修改,因为

(现在没有冲突)版本的符号表。

仅在使用了大小写字符时才进行相互区分的参数

冲突:

访包问含这些类参接数口中的的源第文二件个在参编数译。时当可能试图会访出问错第。二可个打参开数具时有,这程类序接将口自的动块,返回但到不保能存再

块时的第一个参数。

纠正方法:

有要块检的查源哪文些件块。包如含果有在这试类图冲编突译,建已经议创使建用的功源能文“件生时成出源现文错件”误,生那成么一肯个用定存于在程冲序所

突。

文通件过进确行保参编译数。唯一,例如使用“查找和替换”功能,可更正源文件。然后再次对源

仅在使用了大小写字符时才与参数进行区分的符号

且如没果源有文使用件任中何的初共始享符字符号和来识局别部共符享号仅“在符使号用名了”大或小局写部字符符时号才名进符行号相,互那区么分在,编而

冲突:

译期间将始终使用局部符号。这将导致(

纠正方法:

机器代码被) 修改。(# )

的此时局部,和建共议享生访成问一,个并适将用于确保所在有块今后的的新的编译源文过件程期。间这将对其自动进分行正配确具有处相理应。初始字符

导出和导入符号表

行可编将辑当。前的符号表导出到一个文本文件中,以便能够使用任意的文本编辑器对其进

也辑可。以例将如使,用导另入一功个能应可用于序将创使建用的表格导入到创您建的符设号置表列中表,转然换后继导续入在到那符里号编表

中。 STEP5/ST

可供选择的文件格式有 *.SDF、 *.ASC、 *.DIF 和 *.SEQ。

导出规则 可导出整个符号表、已过滤的符号表子集或符号表视图中的所选行。可以使用菜单命令编辑 > 特殊对象属性,将不导出设置的符号属性。

导入规则

需...\导S7入D。ATA\SYMBOL\SYMBOL.SDF 中提供了预定义的符号表条目,可根据性在。导出和导入时,将不考虑使用菜单命令编辑 > 特殊对象属性设置的符号属

件对于常用的系统功能块(SFB)、系统功能(SFC)和组织块(OB),在文

用于导入/导出符号表的文件格式

下列文件格式均可导入到符号表或从符号表中导出:

  • ASCII 文件格式(ASC)

系统数据Micr格osoft Excel 中打开、编辑和保存 DIF 文件。式

  • 可数在据交换格式(DIF)

Microsoft Access 中打开、编辑和保存 SDF 文件。

    • 件为格在式M。icrosoft Access 应用程序中对数据进行导入和导出,可使用 SDF 文
    • 在 Access 中,选择文件格式“文本(带分隔符)”。
    • 使用双引号(") 作为文本分隔符。
    • 使用逗号 (,) 作为单元格分隔符。
  • 设注置意列:在表(将SE符Q号) 表导出到类型为 的文件时,长度大于

截去第 个字符 .SEQ之后的部分。

40

40 个字符的注释将

ASCII 文件格式(ASC)

文结件构类:型

记录长度 分隔符逗号 记录

*.ASC

实例:

,

,

126,green_phase_ped.

126,red_ped.

T

Q

2

0.0

BOOL 人行横道红灯

TIMER 人行横道绿灯持续时间

数据交换格式(DIF)

文结件构类:型

文件头

0,1

"<

标题

DIF 文件的起始部分

>"

注释字符串

VECTORS

0,<

记录数>

TUPLES

0,<

列数>

文件中的记录数

记录中数据域的数目

用于文件头结尾和数据起始部分的标识号

数据(每条记录)

<类型

""

<

字符串

>,<

数字值>

用于数据类型、数值的标识号

>

如字果母未数使字用部字分母或数字部分

V

0,0

DATA

""

""

TABLE

DIF 文件由文件头和数据组成:

*.DIF

文件头:文件头必须按指定次序包含记录类型 TABLE、VECTORS、TUPLES 以及忽DA略T这A 些类D型A。TA DIF

母数数据字:部在分数。据您部可分在,每个条目由三部分组成:类型(数据类型)的标识号、数值以及字不要使用重音符、元音变音或其它特殊语言字符。

。在 前面, 文件可包含更多可选的记录类型。然而,符号编辑器将

Microsoft Excel 中打开、编辑和保存DIF 文件。

系统数据格式(SDF)

文件类型

结构:

“ ”、“ ”、“ ”、“人行横道绿灯持续时间”

,

red_ped.”、“Q 0.0”、“BOOL”、“人行横道红灯”

green_phase_ped. T 2 TIMER

实例:

引*.S号D中F 的字符串

用逗号隔开的部分

要用在双引M号icrosoft Access 中打开 SDF 文件,应选择文件格式“Text (带分隔符)”。使

(")作为文本分隔符,使用逗号(,)作为域分隔符。

设置列表(SEQ)

实例:

文结件构类:型

TAB 地址 TAB 符号 TAB 注释 CR T 2 green_phase_ped.

TAB 表示制表键(09H),CR 表示回车键(0DH)。

人行横道绿灯持续时间

*.SEQ
Q 0.0 red_ped. 人行横道红灯

符号表中的编辑区

/或剪切部分符号表,并将其插入到另一个符号表中或根据需要将其删除。

制从和STEP 7 V5.3 版本起,可以在符号表中选择并编辑连续区域。这意味着您可以复

通过将数据从一个符号表快速传送到另一个符号表,更易于更新符号表。

可以选择的区域:

  • 注只要”点列中之间行中的所的第有域一列,那,么就这可些以也选是择所整选行择。行如的果一希望部分选。择从“状态”列到“备
  • “可以符号选”择、一“个地或址多个”、连续“数域据,类以型至”整个和“区域备注。为”了列。能如选果择该做了区无,所效选有择域,必须那属么不于

能使用用于编辑的菜单命令。

  • R义、”O对、话M框、菜C、单C命C令列选包项含各自个定符义号的中特的殊“对还象复属制性特,殊并对只象有属在性选”择复了选“框自时定,才

会复制这些列( 。 > )

  • 些如列果,显示请选R、择O视、图M、C、、C、C 列、,那、么这列些菜列单的命内令容。也被复制。要显示或隐藏这

> R

O

M

C

CC

要编辑符号表,请按如下进行操作:

        1. 使用下列两种方法之一,可选择要在符号表中编辑的区:
          • 域用。鼠标点击起始单元,按住鼠标左键,移到鼠标,使鼠标跨过要选择的区
          • 通过键盘,按住 shift 键,再按光标(箭头)键,选择区域。
        2. 选定的区域反白显示。第一个选中的单元以正常方式显示,周围有一个边框。
        3. 按需要编辑选定的区域。

选择编辑方法

可根输据入创程建序程。序时所使用的编程语言,在增量输入模式和/或自由编辑(文本)模式下都

用辑于器梯形图(LAD)、功能块图(FBD)、语句表(STL)、或 S7-GRAPH 编程语言的增量编

户将程在序用于中的LA块D。、如FB果D希、望ST立L即和检S查7-刚GR才A已PH输的入增的量内输容入,模应式选编择辑使器用中增,量创输建入存模储式在。用

之该后编,辑将模立式即尤对其其适用进于行语初法学检者查。在。在增完量成输输入入模之式前中,将当指每出行所或有每错个误元素,且均输必入须对完其毕将在不编能辑完语句整地之进前行,编必须译;对所但是使,用可的以符保号存进这行种定不义一。如致的果中没间有可版本供。使用的符号,则块

进行纠正。语法正确的输入项将自动进行编译,并存储在用户程序中。

用于 STL、S在7源S代CL、或 S7 HiGraph 等编程语言的源代码(文本)编辑器

建议 码编辑器中,将创建用于后续编译的源代码文件,以生成块。

使用源代码编辑器,因为这是一个非常有效的对程序进行编辑和监视的方法。将在文本文件中编辑程序或块的源代码,然后进行编译。

源文本文文件件。(源源文文件件可)将包存含储一在个S或7多程个序块的的源代文码件。夹中,和例如,存文为本编ST辑L器源可文以件生或成SCL

来OB创、建F完B、整F的C用、户DB程、序以。及一U个D这T(样用的户文自本定文义件数可S据T能类L 包型含S的C完源L整代的码,这程样序,可即使所用有它的们

)

块)。

CPU (

义编所译有源使文用件的时符将生号成。且相不应的报告块,数并据错写误入用,直户到程相序应中的。编在译对器其编进行译完编源译文之件前为,止必。须定才编执译行必须语法符合检查编程。语言的规定语法。只有根据用户指令或在源文件被编译成块时,

选择编程语言

设置编辑器的编程语言

确在定生成打特开定块块或或源源文文件件时之将前启,动哪可通一过个编对辑象器属。性选择编程语言和编辑器。这种选择将

启动编辑器编在辑SIMATIC 管理器中双击相应的对象(块、源文件等),或者,选择菜单命令

为创建> 打开对象或单击相应的工具栏按钮,都可以启动合适的语言编辑器。

编程语言 、 以及 。可按选项软件包购买其它的编程语言。

S7 程序,表中列出的编程语言均可供使用。标准 STEP 7 软件包提供有

STEP 7 LAD FBD STL

制然、后或即可状态选图择多并种选不择同是的使编用程基方于法文(本梯的形编图程、功语能言,块还图是、图语形句编表、程语标言准。语言、顺序控

选择一种编程语) 言以确定输入模式 。

(X)

编程语言

语句表STL

梯形图 LAD

功能块图 FBD

用户组

偏语好言使进用行类编似程机的器用码户的 程时求进间行和优存化据储运器行要

应用

增量输入

X

自辑由模编式 块重可新从归档CPU

X

X

习工惯作于的使用用户电路图进行 编程写序逻辑控制

F选-L项A包D、F-FBD

熟的练用布户尔代数的逻辑框 编程写序逻辑控制

X

X

熟悉编的程用语户言 LAD 和 编安写全程F 序系统的

X

X

X

X

选 项) 包

结构控制语 使用过高级语言例如 编写数据处理

FDB

SCL (

行PA编S程CA的L用或户C 语言进 任务程序

X

S7-GRAPH

选项包

HiGraph

选项包

CFC

选项包

希工望作面且知不识具的备用丰户能富进编行程 顺描序述控制的简便

X

X

希工望作面且向不技具术备功丰能富编进行程 异制步的、简非便顺描序述控

/PLC

/PLC面知识的用户能进行 连续过程的描述

X

工作且不具备丰富编程

/PLC 经验的用户

能如在果目块标中语没言有任下显何示错的误程,序则部可分在将梯用形语图句、表功能格式块来图显、示或。语句表等格式之间切换。不在 STL 下,可通过源文件来生成块,反之亦然。

      1. 梯形图逻辑编程语言(LAD)

和图形常闭编程触点语,言相“互梯组形图合,(LA从D而)”构以成电程路序图段表。示逻为辑基块础的。代电码路段图表的示元一件个,或例多如个常程开序触点

段。

LAD 程序段实例

( )

#6WRSB/DPS

( )

1HWZRUN 4: 6WRS ODPS

#5HVHW

#6WDUWB/DPS

( )

#(UURU

1HWZRUN 3: 6WDUW ODPS

#5HVHW

( V)

#&XUUHQWB7LPHBELQ

#5HVHWB7LPHB%&'

%,

%&'

79

5

#(UURU

76

6 2'7

6 4

#5HVHWB7LPH

# 5HVHW

1HWZRUN 2: 0RWRU FRQWURO

#&

RLO

#&RLO

#&RLO

( )

#6WRS

1HWZRUN 1: (QDEOH FRQGLWLRQV

#6WDUW

#&RLO

编程语言 LAD 将随标准 STEP 7 软件包提供。使用增量编辑器可创建 LAD 程序。

功能块图编程语言(FBD)

以编通程过语言逻辑“框功的能组块图合直(F接BD显)”示以诸布如尔数代学数功中能众的所复周杂知功的能图。形逻辑符号为基础。也可编程语言 FBD 将随标准 STEP 7 软件包提供。

FBD 程序段实例

STEP 7 V5.4 编程手册-63

1HWZRUN 1: *UHHQ SKDVH IRU SHGHVWULDQV

,O.O

,O.1

76

0O.O

0O.O

75

使用增量编辑器可创建 FBD 程序。

=

! 1

! 1

      1. 语句表编程语言 (STL)

语编句程代语表言 STL 是的一一种种基程于序文处本理的操编作程。语多言个,语它句具链有接一在种一类起似就机构器成代了码程的序结段构。。每个

CPU

语句表程序段的实例

$( 1HWZRUN 1: &RQWURO GUDLQ YDOYH 2

2 #&RLO 丿

$1 #&ORVH

#&RLO

1HWZRUN 2: 'LVSOD\ "9DOYH RSHQ"

$ #&RLO

#'LVSBRSHQ

1HWZRUN 3: 'LVSOD\ "9DOYH FORVHG"

$1 #&RLO

#'LVSBFORVHG

编辑程语言 STL 将随标准 STEP 7 软件包提供。通过该编程语言,可使用增量编辑器

S7 块,并可在源代码编辑器中创建和编译 STL 程序源文件以生成块。

S7 SCL 编程语言

言编程,其语言全局SC语L言(结定构义化符控合制语言)将作为。选与项包提供。近这似是但一不种同基于于文本的这高种级语

程言、,由复杂于优具有化算高级法、命或令大,将规IE模简C数化11据诸31管如-3理循等环的和P计条AS算件C。分AL支的编程。因此S,TL

SCL

适合于方

实例:

S7 SCL 程序使用源代码编辑器进行编写。

FUNCTION_BLOCK FB20

VAR_INPUT
ENDVAL: INT;
END_VAR
VAR_IN_OUT
IQ1 : REAL;
END_VAR
VAR
INDEX: INT;
END_VAR

BEGIN CONTROL:=FALSE;

FOR INDEX:= 1 TO ENDVALUE DO IQ1:= IQ1 * 2;

IF IQ1 >10000 THEN

CONTROL = TRUE

END_IF END_FOR;

END_FUNCTION_BLOCK

S7-GRAPH 编程语言(顺序控制)

创图建形序编列程发语言生器S7以-G及R指AP定H相将应作的为步选内项容包与提跳供转。。它将允在许特对定顺编序程控语制言进类行似编于程。这包中括对

步的内容进行编程。在梯形图编辑器

的简化版 中对跳转进行编( 程。

STL)

S7-GRAPH 非常清楚地显示了特别复(L杂A的D序列,并使) 编程和疑难解答更为有效。

S7-GRAPH 下顺序控制的实例

64

,1.1 02.1

7

,1.1 02.1

75

65

3UHZDVK

,1.3

7

66

,1.1

02.2

5HWXUQ

4

1.4

77

1

4 5LQVH
' 4 1.1
7,0(#O'BO+B O0B2O6BO06
6
1 4 1.3
1 4 1.O
1 4 1.5

所创建的块使用 S7-GRAPH 编辑器,可对包含有序列发生器的功能块进行编程。相应的实例

DB 包含有序列发生器的数据,例如,FB 参数、步条件与跳转条件等。在 S7-

GRAPH 编辑器中可自动生成该实例 DB。

源文件 通的过基可于由文本O的P 对显其示进,行都解可释生的成基S7于-G文R本AP的H源所文创件建的功能块源,文或件用。于显示序列发生器

(GRAPH

)

S7 HiGraph 编程语言(状态图)

行图编形程编。程在语言此,S7将H把iG您ra的ph系将统作拆为分选为项可包获提取供不。同它状允态许的按多状个态专图用对功程能序单中元的,许并多定块义进动各作种以状及态之状态间之的间转换的转条换件。条件可。使用类似于语句表的缩放型语言来描述分配给状态的

备可图为。每图个功之间能单可进元行创通建讯一,个以描对述功该能功单能单元进元行响同应的步。图。各图组组合起来就构成了设经合理安排的功能单元的状态转换视图,将使您能够进行系统编程并简化调试。

S7-GRAPH 与 S7-HiGraph 之间差异在于:后者每一时刻仅获取一个状态(在

S7-GRAPH“步”中)。下图表示如何创建功能单元图(实例)。

STEP 7 V5.4 编程手册-64

STEP 7 V5.4 编程手册-65 行图编组将译,存以储在生成S7用程于序用“户源程”序文的件夹中块的。 HiGraph 源文件中。于是将对该源文件进

源在文完件成时图,中的才检最查后地一址次和输入符后将进S7行语法和格式检查(在工作窗口关闭时)。直到编译

号信息。

S7 CFC 编程语言

可链选接软复件杂包功能CF。C (Continuous Function Chart)是一种编程语言,用于以图形化方式

程使,用取编程而代语言之的S7是C您F可C 以可使链用接包现含有有的标各准种块功的能库。不例需如要,自用己于对逻许辑多、标数准学功运能算进、行控编制的、以专及门知数识据,处只理需等将功能精力的库集中)。在使您用的C专FC业,领不域需(所要使任用何的详技细术的上编。程知识或可编程控

您可Ch能arts”文件夹中。随后将对这些图进行编译,以形成用户程序的 S7 块。

“所创建的程序将以 CFC 图的形式进行存储。这些图均存储在 S7 程序下的

的块进行编程,也可使用 对 的块进行编程。

希望自己创建块并将其连接,此时,您可使用某种 S7 编程语言对 SIMATIC S7 C/C++ SIMATIC M7

创建块

块文件夹

可按下面的形式创建 S7 CPU 的程序:

        • 源文件

括该块逻辑文块件夹包、含有完、成自和动数化据任块务而需。要在下块载文给件S夹7 C中P将U自的动块创。建这一些个可空装的载组的织块块包

可使用 S7 程序下的文件夹“Blocks”来存储块。

OB1,因(为O在B 执F行B 中的程序时将始终需要这个块。

FC) (DB)

块文件夹还包含有下S7列C对P象U :

为在调CPU试 。

        • 载创给建的用户自定义数据类型(UDT)。这些类型将使编程更容易,且不需要将其下

CPU。

        • 下载给 程序时对变量进行监视和修改而创建的变量表(VAT)。不需要将变量表
        • 组包态含硬有件系时统将信创息建(系并统提组供态这、些系系统统参数数据等块)的。对象“系统数据”(系统数据块)。在
        • 在用户程序中需要调用的系统功能(SFC)与系统功能块(SFB)。您自己不能编辑块除了都要系使统用数据各自块的(只编能辑通器过进可行编编程辑控。制通器过的双组击态相对应其块进即行可创启建动和对编应辑的),编用辑户器程。序中的

与 。

SFC SFB

注按释源文件编写,然后再进行编译的块,也将存储在块文件夹中。

用户自定义数据类型(UDT)

S7 程序中使用。

整用个户自定义数据类型是您自己创建的特定数据结构,一旦对其进行了定义,即可在

、 的变量声明中,也可以用作数据块 中的变量数据类型。其优点就

        • 用户自定义数据类型既可像基本数据类型或复杂数据类型一样用于逻辑块(FC、

给是FB,您O只B)需对特定数据结构定义一次,就能可(D以B)按照您的希望任意多次使用,并

它分配任意数目的变量。

        • 意用户味着自您定义创建数结据构类一型次可,当以作后一就个只模需板通,过用分于配创用建户具自有同定一义数据结类构型的来数创据建块所,需这要

的数据块 实例:配方:数据块的结构始终是相同的,仅使用的数量不同。

正 ( )

型。如其它块一样,在 SIMATIC 管理器或增量编辑器中都可以创建用户自定义数据类

用户自定义数据类型的结构

在形打式开显一示个该用户自定义数据类型时的,声将明显视示图一。个新的工作窗口,该窗口将以表格的

和 。您不能编辑这两行。

        • 第一行和最后一行已经包含有用于用户自定义数据类型起始和结束的声明

STRUCT END_STRUCT

        • 据从类声型明。表的第二行开始,您即可通过在各列中输入您的条目来编辑用户自定义数
        • 对用户自定义数据类型进行结构化,可根据:
          • 基本数据类型
          • 复杂数据类型
          • 已存在的用户自定义数据类型

编S7辑用器户先程创序建中它的们用,户然自后定进义行数编据辑类,型也将可不在下编载译给源S文7件CP时U创。建即它可们直。接使用增量输入

块属性

的如果更改使。用块属性,可以更容易地识别您创建的块,还可以保护这些块免受未经授权的当数块据打:开您时,不能可编以辑编该辑信块息属。性。除可以编辑的属性外,属性对话框还显示仅供察看辑块属性和系统属性也将显示在 SIMATIC 管理器中块的对象属性中。此处,您只能编

NAME、FAMILY、AUTHOR 和 VERSION。

SIMATIC 管理器插入块之后,

可以编辑对象属性。如果使用某一不在

当您通过 您

属SIM性A中T。IC 管理器中的编辑器来创建块,则这些条目(程序语言)均将自动保存在对象

注在释

管理器中使用菜单命令选项

自定义和“语言”标签来设置用于 块

编程SI的M那AT些IC助记符。 > S7

块属性表 输入块属性时,应遵循下表所示的输入顺序:

关键字/属性 含义 实例

[KNOW_HOW_PROTECT] 块图更改其。护代;码使段用。此可选以项视编图译块的接将口不,允但许不视能作者名:公司名、部门名或其它名称 KNOW_HOW_PROTECT

AUTHOR:Siemens,但无

[AUTHOR:] (块最系多列8 的个名不称含:空例格如的,字控符制) 器 关键字

FAMILY:控制器,但无关键

[FAMILY:] (块最名多称8 最个多不含个空字格符的字符)

( 8 )

NAME:PID,但无关键字

[NAME:]
[VERSION: int1 . int2] (两个数都介于 0 和 15 之间,即 0.0 至 VERSION : 3.10
[CODE_VERSION1]

[UNLINKED],仅适用于

指声15明.15多) 能重块实是例否,可则声功能明块多重不实能例具。有如此果属想性

具有 UNLINKED 属性的数据块只存储在

CODE_VERSION1
DB! 负器载空存间储,器并中且。不它与们程不序占链用接任。何不工能作使存用储

MC7 命令访问它们。对于一些特定的CPU,此类 DB 的内容可以使用SFC

2送0给B 工LK作M存OV储或器。SFC 83 READ_DBL 传

块的版本号

关键字/属性 含义 实例

[Non-Retain]

[READ_ONLY]仅适用于

具后有以该及属性的的数每据次块在每次掉电和转上换电之之

用后于均数将据复CP块位U的成写装保载护值S;。T其OP数-R据U只N能读取,

DB 不能修改 READ_ONLY
Read-only block 存性储只储只为能只在读读程状序态编命辑令器设中置通。的过块选副择文本件。此属

菜单 >

块保护 KNOW_HOW_PROTECT 具有下列作用:

        • 法如果显示想块在的稍代后码阶段。在 STL、FBD 或梯形图增量编辑器中视图已编译的块,将无
        • 块明的类变型为量声明表将只和显示声明类的型变为量v保ar_持in隐、藏va状r_态ou。t 和 var_in_out 的变量。声

var_stat var_temp

分配:块属性给块类型

下表说明块类型及其对应的可声明块属性:

属性

OB FB FC DB UDT
KNOW_HOW_PROTECT
AUTHOR
FAMILY
NAME
VERSION
UNLINKED
READ_ONLY
Non-Retain
Read-only block

显KN示O在W“_H块O属W性_P”R对OT话E框CT中属,性但可不以能在进对行块修进改行。编程时,在源文件中进行设置。它将

显示块长度

块长度将按“字节”进行显示。

块文件夹属性中的显示

下列长度均将显示在离线视图中的块文件夹属性中:

        • 可编程控制器的装载存储器大小(不带系统数据的所有块的总和)
        • 可编程控制器的工作存储器大小(不带系统数据的所有块的总和)
        • 可编程设备(PG/PC)上的块长度将不显示在块文件夹属性中。

块属性中的显示

以下均将显示在块属性中:

        • 本地数据的所需数目:以字节为单位的本地数据的大小
        • MC7: 以字节为单位的 MC7 代码的大小、或DB 用户数据的大小
        • 可编程控制器的装载存储器的大小
        • 可编程控制器的工作存储器的大小:仅在识别出硬件分配时显示。

关出。于显示的目的,它将与块是位于在线视图的窗口中还是位于离线视图的窗口中无

SIMATIC 管理器中的显示 ( 详细视图 )

是如果位于块离文线件视夹图已的打窗开口,中且,选工择作了存“储详器细的视要图”求,都则将无显论示块在文项件目夹窗是口中位于。在线视图还通过选择所有相关的块,可计算出块长度的总和。此时,所选块的总和将显示在

SIMATIC

管理器的状态栏中。

对于不能下载到可编程控制器的块,将不显示任何长度(例如变量表)。将不在详细视图中显示可编程设备(PG/PC)上的块长度。

比较块

引言 要比较处于不同位置的块,可以从下列方法中任选一种来启动块的比较过程:

        • 果转”到对SI话M框AT中IC,管单理击器“,跳选转择到选”项按>钮比。较比块较菜结单果命将令显。示在在所程显序示编的辑“器比较块 - 结

中的“比较”标签中。

(LAD/FBD/STL)

下• 面转的到章程节序将编介辑绍器块。比选较择过选程项是如> 比何较运在行线的/。离在线下伙面伴的菜讨单论命中令,。将在逻辑块 、

FB、FC)和数据块(DB)之间的保持区别。

(OB

块比较是如何在进该过行程的的:第逻一辑步块,

如这果些时间标志不完一全样相同ST,EP则7

将对需要比较的逻辑块接口的时间标志进行比较。如果

随后将以段为单位逐步地比较接口的数据类

认为其接口相同。

型。当发现差别时,,那么,STEP 7 中的第一个差异;也就是说,在所有情况下,

这是各自声明范围中的ST第EP一7个将差ST确异E定P。段7在比较中也包括了多实例与 。如果段中的

在数第据二类型步中相,同,则 STE将P逐7个将程接序下段来地比检较查变代量码的初倘始若值没。有所选有择的“差U异DT均将码显比示较。”选

首项先,,但单击程序ST编EP辑7器中的“段跳。转比到”较按钮时,(将仍然对代码进行执行比较代)。 段。

检测插入或删除的程序 的结果将显示只在一个块中出现的程序

随这些程序段将具有注释“仅存在于”。

对语后句,将进行对比其较余:的程序段进行比较,直到找到语句中的第一个差异。将按下列方式

  • 对于设置“绝对地址具有优先权”,将以绝对地址为基础
        • 对于设置“符号具有优先权”,将以符号为基础

如果语句的操作符和地址是一样的,则认为语句是完全相同的。

如果将要比较的块是使用不同的程序设计语言进行编程的,那么,STEP 7 将执行以

离ST线L 语言为基础的比较。

量与名离-线离线在比线比较较的不特同性,:在离线 离线比离较线中比,较,因为只还有将替检换测符是号否可出供现在了线不使同用的。变

)

- -

称。这一附加步骤不适用于离线

块程序段和程序行的注释以及其他块属-

STEP 7

性 例如

(

S7-PDIAG

信息和消息 均不作比较。

块比较是如何进行的:数据块

如果)。如果这些时间标志完全相同,则 STEP 7 认为数据结构相同。

辑在块该过程的第一步,STEP 7 将对需要比较的数据块接口的时间标志进行比较(同逻

异。如接果口时位于间段标志中不的同数据,则结构ST完E全P 相7 将同接,下则来比较数据随后结将构,比直较初到找始值到第和一当个前值差。

所有的差异均将显示。

的与变离量线-名在称线。的这比一较附不加同步,骤在不离适线用-离于线离的线比离较线中比,较ST,E因P为7 还只将有替检测换符是号否可出现供在了不线使同

离线-离线比较的特性:

STEP 7

用。 -

数据块中使用的注释和 UDT 的结构将不作比较。

块比较是如何进行的:数据类型(UDT)

如果接)。如果这些时间标志完全相同,则 STEP 7 认为数据结构相同。

数在据该块过程的第一步,STEP 7 将对需要比较的数据类型接口的时间标志进行比较(同

异。如果口时位于间段标志中不的同数据,则结构ST完E全P 相7 将同接,下则来比较数据随后结将构,比直较初到找始值到第。一所个有的差差

均将显示。

块比较是如何进行的:程序编辑器中的比较

STEP 7

  1. 打开将要与已装载的版本进行比较的块。
  2. 选择选项 > 比较在线/离线伙伴菜单命令。

提示7:比较”标签中。

的如“果在线伙伴是可访问的,那么,比较的结果随后将显示在程序编辑器窗口下部络的行:即如可果将两其个网打络开已。确定是“不同的”,那么,您只需简单地通过双击相关网

块比较是如何进行的:SIMATIC 管理器中的比较

  1. 在 SIMATIC 管理器中,选择要比较的块文件夹或块。
  2. 选择选项 > 比较块菜单命令。
  3. 在所显示的“比较块”对话框中,选择比较的类型(在线/离线或路径 1/路径 2)。
  4. 些对块于随路后径均1/将路自径动2 输比入较到:对在话S框IM中AT。IC 管理器中,选择要比较的块文件夹或块。这
  5. 如果还希望比较 SDB,则可以选择“包括 SDB”复选框。

除如了果比也较希块望的比与较执代行码相,关则的可部以分选择“执行代码比较”复选框。在详细的比较中,

中选的框任来何比改较动使也用将不显同示编。程此语外言,您(接可口以和选代择码“)以包外括,以用不于同局编部程变语量言和创参建数的的块名”称复

(例如 AWL、FUP....)创建的块。此时,将基于

6.

STL 对块进行比较。

7. 通过单击“确定”确认对话框中的设置。

比较的结果将显示在“比较块 - 结果”对话框中。

话为框了中显的示“已详比细较资的料块”的按属钮性。(即上一次修改的时间、检验和等等),可以单击该对单部击。“跳转到”按钮,可以打开程序编辑器,比较的结果将显示在它的窗口的下

注当释比较离线块文件夹和在线块文件夹时,将只比较可装载的块类型 、 。

中当有比一较些离并线不/在是线可或装路载径的1/路径 2 时,将比较多重选择中所包含的全(O部B块,FB即..使.) 它们

(例如变量表或 UDT)。

重新布线

下列块和地址均可重新进行布线:

        • 输入、输出
        • 存储器位、定时器、计数器
        • 功能、功能块

如要重新布线:

  1. 块选。择“块”文件夹,该文件夹包含有在 SIMATIC 管理器中希望重新布线的各个
  2. 选择菜单命令选项 > 重新布线。

4. 如果希望对地址区重新布线,可选择选项“在指定地址区内的所有地址”

  1. 在“重新布线”对话框中的表格中输入所需要的替代值(旧的地址/新的地址)。

地实(BY例T:E、实W例O输R入D、DW和ORD)。作为地址区。于是将把地址 重新布线为

:

IW0

IW4

I0.0 - I1.7

 

:

IW0

IW4

I0.0 - I1.7

独输入I4到.0表- I格5.7中。。于是就不需要将已重新布线的地址区中的地址(例如,I0.1)再单

5. 点击“确定”按钮。

读这将关启于动重新重新布线布的线信过息程文。件在。重该新信布息线完文件成之包含后有,地您址可在列表对话“旧框中的地指址定”您和是“否新希的望地阅

址”。并按布线过程每次执行时的编号列出各个块。

在进行重新布线时,应注意以下方面:

        • 在,重将新中布断线该(也过就程是。重新命名)一个块时,新的块在当前可能不存在。如果块存

DB 将不发生变化,也就是说,DB 编号将保留。

        • 实在例重新布线一个功能块(FB)时,实例数据块将自动分配给已重新布线的 FB。但

块和参数的属性

在关于系统属性的参考帮助中可找到关于属性的描述:

        • 语言描述、块帮助、系统属性中的跳转

使用库进行工作

序库组用件于存复制储到SI库M中AT,IC也S可7/以M7在中与可其重它复项使目用无的关程的序库组中件直。接既创可建以。从现有的项目中将程作如果量。将可希望将在其从S7此程处序复的制库到中需多要次的使用用户的程块序存中储。下来,则可节省大量的编程时间和工

为创建库中的 S7/M7 程序,同样的功能也适用于项目 - 除了调试功能以外。

”标签中为库所设置的目录中。

创建库

>

单与命项令目选完全项一样自,定也义可时使在用“菜常单规命令文件 > 新建来创建库。新的库将创建在选择菜

打开库

SIMATIC 管理器允许使用长度多于 8 个字符的名称。然而,库目录的名称将截取到在8 浏览器中打开该目录时,将再次显8 示完整的名称,但在对目录进行浏览时,将只

请注意,不能在旧的 STEP 7 版本项目中使用新 STEP 7 版本的库中的块。

注释

出现已截短的名称。

个字符。因此,库名称必须在头 个字符之内有所区分。名称不区分大小写。当

一如个要库打。开于现是有打的开库了,库可窗输口入。菜单命令文件 > 打开。然后在随后出现的对话框中选择

钮。于是标准 浏览器将显示一个目录结构,可在其中对库进行搜索。

注如释果在库列表中无法找到您所需要的库,则可单击“打开”对话框中的“浏览”按

Windows

器请中注进意行,文的任件的何名称修总改是在对文应件于这库一创级建时都不的能原进有行名。称,这意味着在 SIMATIC 管理中当的您条选择目进一个行修库时改。,它将被添加到库列表中。可使用菜单命令文件 > 管理对库列表

复制库 通过使用菜单命令文件 > 另存为,以另一个名称保存库,从而复制了这个库。

使用菜单命令编辑 > 复制,可对库的某一部分例如程序、块、源文件等进行复制。

删除库 使用菜单命令文件 删除,可删除一个库。

使用菜单命令编辑 > 删除,可删除库的一部分,例如程序、块、源文件等。

>

      1. 库的层次结构

正如项目一样,可按分层的方式对库进行结构化:

        • 库包含 S7/M7 程序。
        • S“7图程表序”可文包件含夹一、个以“及块一”个文“件符夹号(用”户对程象序符)、号一表个。“源文件”文件夹、一个
        • M的7“程符序号可”包对含象用符于号可表编程与 M7 模块的图表( 与C 程)序,以及用于数据块和变量表

(

)

“块”文件夹。

        • 用“户块自”文定义件夹数据包类含型可下载到 S7 CP中U。中的块。不会将文件夹中的变量表(VAT)和
        • “源文件”文件夹包含使用各CP种U不同编程语言所创建的程序的源文件。

当• “图表”文件夹包含CFC 图表(仅适用于安装了 S7 CFC 选项包时)。

夹插入一个新的 S7/M7 程序时,将在其中自动插入“块”文件夹、“源文件”文件

(仅适用于S7)、以及“符号”对象。

标准库概述

STEP 7 标准软件包包含有下列标准库

        • 系统功能块:系统功能块(SFB)和系统功能(SFC)
        • S5-S7 转换块:转换 STEP 5 程序的块
        • 作IEC、功字能符块串:处用理于以及IE选C 择功最能小的块最,大例值如。,用于处理时间和日期信息、比较操

/

/

        • 组织块:默认组织块
        • PID 控制块:用于 控制的功能块

(OB)

SIMATIC NET CP 的功能(FC)与功能块(FB)。

        • TI-S7 转换块:一般用途的标准功能
        • 其它块:用于时间标记以及用于 TOD 同步的块在安装选项软件包时,可能要添加其它的块。

删除和安装所提供的块

程可序在,SI以M便AT重IC新管安理装器库中。删除所提供的块,然后再重新安装它们。运行 STPE 7 安装

再次重新安装时,所修改过的库将被原有库所覆盖。

注在释安装 STEP 7 时,将总是复制所提供的库。如果编辑这些库,那么,当

STEP 7

可为。此,在进行任何修改之前,都应先复制所提供的库,然后只需对备份进行编辑即

创建逻辑块的基本过程

程序编辑器窗口的结构

程序编辑器的窗口可拆分为下列区域:

表格 “程序元素”标签将显示一个程序元素表格,其中的程序元素均可插入到 、

S7

FBD 或 STL 程序中。“调用结构”标签表示当前 程序中的块的调用层次LA。D

变量声明 变量声明分为“变量表”和“变量详细视图”部分。

指令 指令表显示了将由 进行处理的块代码。它由一个或多个程序段组成。

PLC

详细资料

“详对细情况号”行窗编口中、的生各成种不同信息签提对供地了址众进多行的控功制能、,对例块如进,行用于比较显示的出功能错消以及

对硬件诊断时的出错定义进行编辑的功能。

STEP 7 V5.4 编程手册-66

创建逻辑块时的基本过程

辑逻下辑列块(三O个B、部F分B:、FC)由变量声明段、代码段及其属性等组成。在编程时,您必须编

        • 量变量。声明:在变量声明中,您可指定参数、参数的系统属性以及块专用局部变
        • 代它码由段一:个或在代多码个段程中序,段您组可成对。将要要创由建可程编序段程控,制可器使用进行各种处编理程的块语言代,码例进行如编,梯程形。

图 、功能块图 、或语句表 。

(LAD) (FBD) (STL)

        • 外块,属性您也:可块输属入性自包己含的了详其细它资附料加,的例信如息名,称例、如系由列系、统版输本入以的及时作间者标,记还或可路为径这。些此

块分配系统属性。

行添则上加,。编辑逻辑块各部分的次序并不重要。当然,您也可对其进行改正和对其进

3URFHGXUH IRU 3URJUDPPLQJ /RJLF %ORFNV LQ 67/

&UHDWH D ORJLF EORFN ()%, )& RU 2%) LQ WKH 6,0$7,& 0DQDJHU

,QFUHPHQWDO 67/ (GLWRU

(GLW WKH YDULDEOH GHFODUDWLRQ WDEOH IRU WKH EORFN.

(GLW WKH FRGH VHFWLRQ.

(GLW WKH EORFN SURSHUWLHV.

6DYH WKH EORFN (PHQX FRPPDQG )LOH ! 6DYH)

注如释果要利用符号表中的符号,您应首先检查它们是否完整并进行必要的修正。

LAD/STL/FBD 程序编辑器的默认设置

在开始进行编程之前,应先熟悉编辑器中的设置,以便使编程更容易、更顺利。

块使进用行菜编单程命,令可选进项行>自如定下义默可认打设开置用,标例签如细,分在的“对常话规框”。标在签各中种:不同的标签中,为对

        • 用于文本和表格的字体(字型和字号)。
        • 对于新块,是否希望显示符号和注释。

使用查看 > ...菜单中的命令可在编辑期间修改语言、注释、以及符号等设置。

例如,可以改变用于突出显示“LAD/FBD”标签中的程序段或语句行的颜色。

块和源文件的访问权限

想在编访辑问项同一目个时块,或经数常据要使源。用公共的数据库,这意味着在同一时间内,可能有许多人

  • 离当您线试编辑图打:开一个块 源文件时,将对此进行检查,以确定您是否具有该对象的

如下分配读/写访问权限:

试“图写保”存访备问权份,限则。系如统果/ 将块询问是否希望覆盖原来的块或文件,或者以新的名称保

存备份。

/源文件已打开,则只能使用备份进行工作。如果随后

        • 在当您线编通辑过所:组态的连接打开一个在线块时,将关闭相应的离线块,以避免同时对

其进行编辑。

程序元素表中的指令

预概组述态窗的口块中和的来“自程库序中元素的块”标。通签过提菜供单了命LA令D视和图FBD表元格素可以对及标已签声进明行的访多问重。实使例用、菜

单命令插入 程序元素也可将程序元素插入到代码> 段中。

>

STEP 7 V5.4 编程手册-67LAD 中“程序元素”标签的实例

    1. 编辑变量声明
      1. 在逻辑块中使用变量声明

在图打,开而一窗个口下逻辑半块部之分后将,包所括打将开在的其窗中对口上实半际部的分块将代包码括进块行的编辑变的量指表和令表变量。详细视

STEP 7 V5.4 编程手册-68实例:STL 中的变量视图与指令表

有在下变列量功详能细:视图中,可指定块的局部变量和形式参数以及参数的系统属性。这将具

        • 功在能变块量声而言明期,则间要,为将以在后本将地要数据链结堆的栈实中例为临时中变的量静保态留变足量够保的留存足储够空的间存,储而空对于

间。 DB

        • 口在”设。置输入、输出、以及输入/输出参数时,也可在程序中为块的调用指定“接
        • 结当的在功每个能实块例中声明的变数量据时结,构这。些变量(除了临时变量以外)也将决定与功能块相联
        • 通过设置系统属DB性,例如,可为消息与连接功能的组态、操作员控制与监视功能

以及过程控制组态等分配特定的属性。

变量详细视图与指令表之间的联系

名逻称辑块也的将用变于量指声明令报与指表中令表。因是此紧,密在关变联量的,声明因中为所在做变量的所声有明修中改为都进行将影编响程整而个指指定令的

表。

变正量确声的明新中输的入动作 代如码果段出的现响无应效的代码,则先前尚未说明的变量现在

类将型正不确变的,名正称确变的为名无称效改的变名称

将符变号为将有以效其。新名称立即显示在每一个地方
如现果有出效现的无代效码的,代则码这,可则能它变将为变无为效有效,但如果出

将类无型效变的化名称变为正确的名称删除代码中所使用的变量

代如码果保出持现不无变效的代码,则它将变为有效

(符号名称) 有效代码将变为无效

指对令注表释产的修生任改、何影新响变量。的错误输入、初始值的更改、或删除未使用的变量等均不对

变量声明窗口的结构

变量声明窗口是由变量和变量详细视图的所组成的。

STEP 7 V5.4 编程手册-69 在已经生成并打开新的代码块之后,将显示一个默认的变量表。它将只列出所选块之后,可编辑(in所显o示ut 的i默n_认ou变t 量s声tat明。temp)

各OB

允许的声明类型 、 、 、 、 ,就是按照规定的次序。在生成新的

地数种据不。同块类型的本地数据的允许数据类型,请参见将数据类型分配给代码块的本

在变量声明中的多重实例

使用多重实例

数可能量由受到于限正制在的使用实的例数S7据C的P数U 据的块性。能如原果因在(例用如户,程存序储的器的容中量要),调想用要现或有不的得其不它使功用能

块。(FB 的调用体系),那么,您可调用其余的这些没有自己FB附加的 实例数据块的功能

( )

使用如下解决方法:

        • 将希望作为静态变量调用的功能块包含到正在调用的功能块的变量说明中。
        • 在该功能块中,调用没有自己(附加的)实例数据块的其它功能块。
        • 的这数将据把块实例。数据集中在一个实例数据块中,这意味着您可更有效地使用这些现有

FB1 的实例DB。

能下块面的实例说明了所描述的解决方法:FB2 和 FB3 均使用了从中对其进行调用的功

)% 1

STEP 7 V5.4 编程手册-70 STEP 7 V5.4 编程手册-71

'HFODUDWLRQ VHFWLRQ: VWDWLF YDULDEOH RI WKH W\SH ")%V WR EH FDOOHG" ()%2, )%3)

LQVWDQFHB1: )% 2

LQVWDQFHB2: )% 3

)%-FDOO:

& &

$//#LQVWDQFHB2

$//#LQVWDQFHB1

,QVWDQFH '% RI )% 1

)%2

(XVHV LQVWDQFH '% RI )% 1)

唯一的要求:您必须“告诉”正在调用的功能块,您正在调用哪一个实例以及这些口中。所使用的(FB功)能块必须至少具有来自数据区的一个变量或参数 不能使用

)% 3

(XVHV LQVWDQFH '% RI )% 1)

实例都是什么 类型。这些具体的细节都必须输入到正在调用的功能块的声明窗

V如A果R在_TEMP)

(

块时,必CP须U保运证行重时新希装望载进对行系在统线没修有改大,的则影切响勿。使用多实例数据块。当使用实例数据

多重实例的声明规则

下列规则均适用于多重实例的声明:

参见功能块属性中的块属性 。

        • 只有在使用版本 2 以上的 STEP 7 所创建的功能块中才可能对多重实例进行声明( )

x.x 的默认设置;可在编辑器中使用选项 > 自定义取消激活)。

        • 本为了声明多重实例,必须将功能块创建为具有多重实例能力的功能块(STEP 7 版
        • 必须将实例数据块分配给在其中对多重实例进行声明的功能块。
        • 只能将多重实例声明为静态变量(说明类型为“stat”)。

注释

        • 您也可为系统功能块创建多重实例。
        • 属如性果,没那有么创,建能您可够根具有据功多能重块实生例成功一能个的源功文能件块,随而您后删又除希望其中该的功块能属块性具有这种

CODE_VERSION1,然后重新对功能块进行编译即可。

在变量声明窗口中输入一个多重实例

  1. 打开将要从中调用下功能块的功能块。
  2. 那在些调不用希功望能为块其的创变建量实声例明数中据,块为的每实一例次数功据能。块调用定义一个静态变量,用于保存
    • 在变量表中,选择变量类型“STAT”。
    • 在变量详细视图的“名称”列中为FB 调用输入一个名称
    • 名在称“的数功据能类块型。”列中输入想要作为绝对地址而调用的功能块,或具有其符号

代码-段中在的注调释列用中,可输入所需要的任何解释。

当声明完毕多重实例时,即可使用 FB 调用,而无需指定一个实例 DB。

实例:如果静态变量“名称:Motor_1、数据类型:FB20”已定义,则可如下调用

Call Motor_1 // 调用没有实例 DB 的 FB20

关于输入语句和注释的常规注意事项

代码段的结构

块在的代次码序段进中行,编根程据。所在选输择入的一编程条语句言之,后可,通编过辑在器程将序立段即中输执行入语合法适的检查语句,并来使对用逻红辑

色和斜体显示所有的错误。

逻辑块的代码段通常包含许多程序段,这些程序段则由语句列表组成。

语在句代行码。段中,可编辑块标题、块注释、程序段标题、程序段注释、以及程序段内的

使用 STL 编程语言的代码段的结构实例

STEP 7 V5.4 编程手册-72

      1. 语句的输入步骤

作可:按任意次序对部分代码段进行编辑。当首次编写块时,建议按如下的步骤进行操

(QWHU EORFN WLWOH (RSWLRQDO)

(QWHU EORFN FRPPHQW (RSWLRQDO)

(GLW QHWZRUNV

(QWHU QHWZRUN WLWOH (RSWLRQDO)

(QWHU QHWZRUN FRPPHQW (RSWLRQDO)

(QWHU VWDWHPHQWV

(QWHU VWDWHPHQW FRPPHQWV (RSWLRQDO)

间既可切换在改。写模式下,也可在插入模式下进行修改。使用 INSERT 键可在这两种模式之

STEP 7 V5.4 编程手册-73 STEP 7 V5.4 编程手册-74 STEP 7 V5.4 编程手册-75 STEP 7 V5.4 编程手册-76 STEP 7 V5.4 编程手册-77 STEP 7 V5.4 编程手册-78

在程序中输入共享符号

使的用开菜头单、命结令尾插或入中间> ,符那号么,,可就将已符经号选插择入了到一程个序以的该代字码符段串中开。头如的果符光号标位如于果字这符样串

的符 -号存在的话。如果改变字符串,则进行的选择也将在列表中更新。

释用于任何字符分隔串符开。头和结尾的分隔符可以是:空格、句点、冒号。在共享符号内将不解为输入符号,可按如下操作进行:

  1. 输入程序中所需符号的第一个字母。
  2. 选同中时。按下 CTRL 和J 键,以显示符号列表。以输入的字母开头的第一个符号已经

随3. 按下回车键输入符号或选择另外的符号。

通后即可输入加引号的符号,以替换输入的第一个字母。

时,常该会发字符生下串将列被情用况引:如号果括起光来标的位符于号字所符替串换的开。头、结尾、或中间,当插入符号

块和程序段的标题与注释

们注释是程将序使文您档的的用一户个程重序要更组易成于部阅分读,毫从无而疑使调问应试加和以查找充分错利误用更。容易,也更有效。它

LAD、FBD 和 STL 程序中的注释

可供使用的注释如下:

        • 块标题:用于块的标题(最多 64 个字符)
        • 块注释:对整个逻辑块进行记录,例如,块的用途
        • 程序段标题:用于程序段的标题(最多 64 个字符)
        • 程序段注释:对单个程序段的功能进行记录
        • 变量详细视图中的注释列:为所声明的本地数据加上注释
        • 使符用号菜注单释命:令当在视符图号表中定义地址的符号名称时所输入的关于地址的注释。

在逻辑块的代码段

> 显示 > 符号信息可显示这些注释。

或程序段注释。

中,可输入块标题和程序段标题,以及块注释

块标题或程序段标题

题为输”入上块例标如题,或程程序序段段标:题标,题可:将单光击标。放即置可在打块开名一称个或供程您序在段其名中称输右入边标的题单的词文“本标

框。其(长度最多可达到1 个字符) 。

的块程注序释段属于以及整个与程逻序辑块段。64这里,它档细们节可对。块的功能进行注释。程序段注释属于单独

有关的文

  1. 1HWZRUN 2: 7LWOH:

STEP 7 V5.4 编程手册-79

  1. 1HWZRUN 2:

7KH QHWZRUN WLWOH LV GLVSOD\HG KHUH

0RXVH FOLFN

为自自动动分分配配程程序序段段标标题题,”可。选所择输菜入单命第一令选个项地址> 的设符置号并注单释击随“后常将规作”为标程签序页段中标的题选

应用。

块注释与程序段注释

开使用您菜现在单可命令在其视图中输> 入显解示释>的注文释本可框打。开对和于关块闭注灰释色与注程释序域段的注视释图,。每双个击块注允释许域可打

字节。

STEP 7 V5.4 编程手册-80

64 K

1

0RXVH FOLFN

2 &RPPHQW IRU QHWZRUN RU EORFN

输入块注释与程序段注释

  1. 记使用菜单命令视图 > 显示 > 注释激活注释(在菜单命令的前面可见到一个复选标

)。

  1. 注通释过域使将用出鼠现标白单色击并,具将有光一标个放边置框在。块名称下的或程序段名称下的灰色域中。灰色
  2. 字在节打。开的文本框中输入您的注释。对于块注释与程序段注释,每个块允许 64 K
  3. 出通文过本鼠框标。单击文本框的外面、按下 TAB 键、或使用组合键 SHIFT+TAB 都可退
  4. 记如将果消您失再次。选择菜单命令视图 > 显示 > 注释,那么,您可重新关闭注释(复选标

)

使用程序段模板进行工作

存当储编在程库块中时,适如当果时您可想以多使次用使通用配相同符的程序段,则可以将这些网络作为程序段模板

须可供使用。

创建程序段模板

程序,可以将程序插入到库中。

(例如,地址)。在您创建程序段模板之前,库必

如果必要,可以在 SIMATIC 管理器中创建一个新库。选择菜单命令插入 > 程序 >

S7

1. 打开您希望通过其中所含的程序段来创建程序段模板的块。

入到块中时,可以使用合适的地址来替换通配符。

符在串已打开的块中,根据需要,使用通配符替换标题、注释或地址。您可以使用字

2.

题,%因0为0在至您%创99建作程为序通段配模符板。之地后址您的将通不配保符存均该显块示。为日红后色,。当此您处将,程这序不段成模问板插

3. 选择您要在程序段模板中包含的程序段的“程序段<编号>”。

4. 选择菜单命令编辑 > 创建程序段模板。

5. 在所显示的对话框中为所用的各个通配符输入具有一定含义的注释。

点击“确定”按钮。

6.

  1. 程在序所段出模现板的输浏入览一器个中名,称选。择程序段模板库中的 S7 程序的源文件文件夹,然后为

不存盘,关闭块。

  1. 点击“确定”按钮,确认输入。程序段模板存储在所选择的库中。

9.

将程序段模板插入到程序中

  1. 打开您希望插入新程序段的块。
  2. 段在。所打开的块中,点击您希望在其后插入以程序段模板为基础的新程序段的程序

打开目录中相关库的“ 程序”文件夹。

  1. 打开“程序元件”标签(菜单命令插入 > 程序元件)。

5. 双击程序段模板。

  1. S7

6. 在对话框中,输入所需要的程序段模板通配符的替换值。

7. 点击“确定”按钮。随后,程序段模板插入到当前程序段中。

注您也释可以将模板从标签中拖放到编辑器窗口中。

用于代码段错误的搜索功能

错代误码浏段览中的起来错更误容很易容易,编通过辑器其提红色供了标两记种进行搜索识功别能。为编了使屏跳幕转上到的可前见一区个域错以误外下的一

个错误。

> > /

程对序错段误或的当搜索前在将不屏限幕上于可一个见的程序区域段。这意味着将搜索整个代码段,而不仅仅是一个注如释果。您使用菜单命令视图 > 状态栏激活状态栏,则在此显示与所找到的错误相关的式您之也可间进在行改切写换模式。下纠正错误和进行修改。使用 INSERT 键可在插入模式和改写模

编辑代码段中的 LAD 单元

用于梯形图编程的设置

设置梯形图布局

)将影响一个梯级中所能显示的梯形图元素的数量。

尺您寸可按照梯形图表示类型设置创建程序时的布局。您选择的格式(A4 纵向/横向/最大

  1. 选择菜单命令选项 > 自定义。
  2. 在下面的对话框中选择“LAD/FBD”标签。
  3. 从“布局”列表框中选择所需要的格式。输入所需要的格式尺寸。

打印设置

适如的果页想面要打格式印。输出梯形图代码段,那么,在开始对代码段进行编程之前,应设置合

“LAD/FBD”标签中的设置

本在的使设用置菜,单命例如令选,项与布> 局自和定地义址对域其宽进度行有访关问的设“置LA。D/FBD”标签中,可进行一些基

梯形图元素的输入规则

到在关“于用于梯形S7图-3编00程/4语00言对表块示进的行描编述程。的梯形图”手册中或梯形图在线帮助中,可以找接一个;左梯电形图源线程序不算段作可由连接多个分支中的许。多元素组成。所有的元素和分支必须进行连

当在梯形图中进行编程时必(IE须C遵11循31一-3些) 原则。出错消息将告诉您产生的错误。

关闭梯形图程序段

每关闭个梯程序形图段程:序段都必须使用线圈或逻辑方框来关闭。不能使用下列梯形图元素来

        • 比较框
        • 中间变量输出_/(#)_/
        • 用于上升沿_/(P)_/或下降沿_/(N)_/计算的线圈

定位框

在用于逻辑逻框辑框前面连接的分的分支中支。起始点必须始终为左电源线。逻辑操作或其它逻辑框可出现

定位线圈 线圈将自动定位在程序段的右边沿,它们在这里构成了分支的末端。

能例放外:置用在分于中支的间最变左量边输出,也_/(不#)能_/以放及置上在升分沿支_的/(最P)右_/或边下。降它沿们_二/(者N)在_/计并算行的分线支圈中均不某些线圈需要布尔型逻辑操作,而另外的一些线圈则不一定需要布尔型逻辑操作。

允许。

        • 需要布尔型逻辑操作的线圈:
          • 输出_/( )、置位输出_/(S)、复位输出_/(R)

- 中间变量输出_/(#)_/、上升沿_/(P)_/、下降沿_/(N)_/

          • 所有的计数器和定时器线圈
          • 如果为非(Not),则跳转_/(JMPN)
          • 主控制继电器接通_/(MCR<)
          • 将 RLO 保存到 BR 存储器_/(SAVE)
          • 返回_/(RET)
        • 不允许布尔型逻辑操作的线圈:
          • 主控制继电器激活_/(MCRA)
          • 主控制继电器取消激活_/(MCRD)
          • 打开数据块_/(OPN)

其 - 主控制继电器断开_/(MCR>)

它所有线圈既可以带布尔型逻辑操作,也可以不带。下列线圈不能用作并行输出:

        • 如果为非(Not),则跳转_/(JMPN)
        • 跳转_/(JMP)
        • 来自线圈的调用_/(CALL)
        • 返回_/(RET)

使能输入/使能输出

逻辑框的使能输入“EN”与使能输出“ENO”可进行连接,但这并非强制性要求。

删除与改写如果一个分支仅由一个元素组成,则当删除了该元素时,整个分支也将删除。外当, 删除都将一删个除逻。辑框时,与逻辑框的布尔型输入相连接的所有分支,除了主分支以

改写模式可用来只改写同一类型的元素。

并行分支

  • 从左到右画出 OR 分支。
  • 并行分支向下打开,向上关闭。
  • 并行分支将总是在所选梯形元素之后打开。
  • 并行分支将总是在所选梯形元素后关闭。
    • 素为删时除,一该分个并支被行自分动支删,可除。删除分支中的所有元素。当删除了分支中的最后一个元

常量 不能给二进制链接分配常量 例如,真 或假 。取而代之,可使用

数据类型的地址。

(

(TRUE)

(FALSE))

BOOL

梯形图中的非法逻辑操作

电流从右到左

号不能状态创为建“可能”导时致,电可流能反导方致向流动处的产任生何从分右支到。左下的图电表流示。一这个是实不例允:许当的I1。.4 处的信

0

I6.8

, 4.4 , 2.8

,OOHJDO SRZHU IORZ!

, 6.8

, 2.6

4 6.0

( )

, 4.2

, 1.4

, 1.2

, 1.0

短路 不能创建可能导致短路的任何分支。下图表示一个实例:

,OOHJDO VKRUW FLUFXLW!

4 6.0

( )

, 1.4

, 1.2

, 1.0

编辑代码段中的 FBD 单元

用于功能块图编程的设置

设置功能块图的布局

纵向 横向 最大尺寸 将影响一个梯级中所能显示的 元素的数量。

可以按照功能块图的表示类型来设置程序创建时的布局。您选择的格式

(A4 / / ) FBD

  1. 选择菜单命令选项 > 自定义。
  2. 在下面的对话框中选择“LAD/FBD”标签。
  3. 从“布局”列表框中选择所需要的格式。输入所需要的格式尺寸。

打印设置

适如的果页您面想格要打式。印输出 FBD 代码段,那么,在开始对代码段进行编程之前,应设置合

“LAD/FBD”标签中的设置

本在的使设用置菜,单命例如令选,项与布> 局自和定地义址对域其宽进度行有访关问的设“置LA。D/FBD”标签中,可进行一些基

FBD 元素的输入规则

程在“语用言于“ S7-3”00的/4描00述-。编程块的功能块图”手册或 FBD 在线帮助中,可找到关于编程序段可由多个元素组成。所有的元素都必须互相连接 。

当在 FBD (IEC 1131-3)

FBD 中编程时,必须遵循一些规则。出错消息将告诉您产生的错误。

输入并编辑地址和参数

当插入FBD 元素时,字符??? 和...将用作地址和参数的代用字符。

        • 红色的字符??? 代表必须连接的地址和参数。
        • 黑色的字符...代表可以连接的地址和参数。

如果将鼠标指针放置在代用字符上,则将显示所期望的数据类型。

定位框

段。

(&、>=1、XOR)的框中。该规则的例外情况是比较框:

算可将标准的逻辑框(触发器、计数器、定时器、数学运算等)添加到具有二进制逻辑运分在程支对序具段有中不逻辑能对运算带的有单字符独串输出进的行赋任值何。单下独图逻表辑示运一算个进带行编有程两。个赋然值而操,作您的可程借助序于

#FRQGB02

 

#FDU

! 1

#FRQGLWLRQ

 

#WBQH[WBUHGBFDU

#WBGXUBUBFDU

7 EUDQFK

! 1

#VWDUWHU

#FRQGLWLRQ

下列逻辑框只能在逻辑字符串的右边沿处进行替换,在此,它们将关闭字符串:

        • 设置计数器的值
        • 分配参数并递增计数,分配参数并递减计数
        • 分配脉冲定时器参数并启动,分配扩展脉冲定时器参数并启动
        • 分配接通延迟/关闭延迟定时器参数并启动

算某。些逻辑框需要布尔型逻辑运算,而另外的一些逻辑框不一定需要布尔型逻辑运

需要布尔型逻辑运算的逻辑框:

        • 输出、置位输出、复位输出_/[R]
        • 中间变量输出_/[#]_/、上升沿_/[P]_/、下降沿_/[N]_/
        • 所有的计数器和定时器框
        • 如果为非(Not),则跳转_/[JMPN]
        • 主控制继电器接通_/[MCR<]
        • 将 RLO 保存到 BR 存储器_/[SAVE]
        • 返回_/[RET]

不允许进行布尔型逻辑运算的框:

        • 主控制继电器激活[MCRA]
        • 主控制继电器取消激活[MCRD]
        • 打开数据块[OPN]

其• [MCR>]

主控制继电器关闭

它所有的框可以带布尔型逻辑运算,也可以不带。

使能输入/使能输出

逻辑框的使能输入“EN”与使能输出“ENO”可进行连接,但这并非强制性要求。

删除与改写外当,删除都将一删个除逻。辑框时,与逻辑框的布尔型输入相连接的所有分支,除了主分支以改写模式可用来只改写同一类型的元素。

常量 不能给二进制链接分配常量 例如,真 或假 。取而代之,可使用

数据类型的地址。

(

(TRUE)

(FALSE))

BOOL

编辑代码段中的 STL 语句

用于语句表编程的设置

设置助记符可在两套助记符之间进行选择:

        • 德语
        • 英语

自在打定开义一来个设置块助之记前符,可。在编SI辑M块AT时IC,管无理法器改中变使助用记“符语。言”标签中的菜单命令选项 >

用户可在块属性对话框中编辑块属性。

在编辑器中,可打开一些块,并可根据需要对它们依次进行编辑。

STL 语句的输入规则

表在编“程用于语言S7表-3达00式/4的00描-述编程语块言的描语述句。表”手册或 STL 在线帮助中,可找到关于语句

当在增量输入模式下在 ( 中输入语) 句时,必须遵循下列基本原则:

        • 对的块。行编程时所采S用TL的次序非常重要。在调用块之前,必须已经编写好所调用
        • 实语例句:由标记(可:选)、指令、地址注、释和注释(可选)组成。
        • 每条语句M均00单1 独占A一行I。1.0 //
        • 在一个块中,最多可输入 999 个程序段。
        • 或每更个程少的序行段。最多可达到约 2000 行。如果进行放大或缩小,相应地,可输入更多
        • 当输入指令或绝对地址时,无论是大写还是小写,将不进行任何区分。

更新块调用

动可使更新用已“经LA无D/效ST的L块/FB调D用-。编在写发S生7 块下程列序接”口中变的化菜之单后命,令必编须辑进行> 更块新调:用 > 更新来自

  • 插入了新的形式参数
  • 删除了形式参数
  • 修改了形式参数的名称
  • 改变了形式参数的类型
  • 改变了形式参数的次序。

在分配形式参数和实际参数时,必须遵守以下指定次序的规则:

  1. 如相果同形的式参参数数名的称名:称仍然相同的话,实际参数将自动进行分配。

输特入殊参情数况的:在先前梯链形接图和将只功能自块动图进中行,分如配果。数如据果类数型据(BO类O型L已)相经同变,化则,用则于先二前进的制链

接将作为一个打开的分支继续保留。

  1. 在相分同配的名参称数相数同据的类参型数:之后,尚未分配的实际参数将被分配给和“旧的”形式参

数具有相同数据类型的形式参数。

  1. 在相执同行的规参则数位置和:规则

之后,仍然没有分配的那些实际参数,按照它们在“旧

的”接口中的1 参数位置2 ,现在都将分配给形式参数。

  1. 在如梯果形使图用或上功述能的块三图个中规的则两仍个然先无前法连分接配的实情际况参下数,它那们么将,作它为们打将开被的删分除支,继或续者保, 在

留。

执行该功能之后,将检查在变量说明表以及程序代码段中所进行的修改。

改变接口

也可使用增量编辑器来修改已经使用 STEP 7、版本 5 进行编辑的离线块的接口:

  1. 有确块保的所源有文的件块,都并已对经该使文用件ST进E行P 编7、译版。本 5 进行编译。为此,可生成一个用于所
  2. 修改相关块的接口。
  3. 现在即可一个接一个地打开所有的调用块 –将以红色显示相应的调用。
  4. 选择菜单命令编辑 > 块调用 > 更新。
  5. 再次生成相关的实例数据块。

注释

        • 如果在线打开的块的接口发生变化,则可能导致CPU 切换到 STOP 模式。
        • 重首新先修整改理已块调用块的数量,然后执行重新整理功能以便与调用匹配。

保存逻辑块

保为存输入各个新块创建。数的块据随或后记将录编被写程设入备到数编程据设库备中的逻硬辑块盘中代。码段或说明表中的变化,必须

为将块保存在编程设备的硬盘中:

  1. 激活希望保存块的工作窗口。
  2. 选择以下菜单命令之一:
    • 文件 > 保存将使用同一名称对块进行保存。
    • 存文。件在> 随另后存出为现将的使对用话一框个中不输同入的新S的7 用路户径程或序新或的一块个名不称同。的名称对快进行保

时在同这时两进种行情况识别中,然有后以在红其色语法显没示。有任在保何错存块误之时前才,可必保须存块纠正。这语些法错误。将在创建块

  • 放也操可在作 S。IMATIC 管理器中将块或源文件保存在其它项目或库下面(例如,通过拖

注释

) 管理器中,只能将块或完整的用户程序保存到存储卡。

管理器中的菜单命令文件 重新组织。然后尝试重新进行保存或编

  • 如果SI在M保AT存IC或编译大型块时出现问题,应重新组织项目。为此,可使用

译SIM。ATIC >

关于创建数据块的基本信息

表您或可功以能在块数图据表块这(D些B)编中程存语储言数编值写以的便逻为辑机块器相或比设,备数所据访块问只。包与含采变用量梯声形明逻部辑分、。语这句

就表示此处与代码段和编程段无关。

> 声明视图和视图 > 数据视图在这两种视图之间切换。

当菜您单打命开令数视据图块时,既可以在声明视图中也可以在数据视图中视图块。您可以使用

声明视图 在下列情况下可使用声明视图:

  • 视图或确定共享数据块的数据结构,
  • 视图带有相关的用户自定义数据类型(UDT)的数据块的数据结构,或者
  • 视图带有相关功能块(FB)的数据块的数据结构。

必不须能修首改先修与改功相能关块的或用户或自定义的,数然据后类创型建相一关个联新的数据块的。结构。要修改它们,

FB

UDT

数据视图

出。

际可以值。使在用数据块视的图数修据改视数图据中。,您具只有能显复示杂、数输据入类或型修的改变数量据的视元图素中分别每以一个其全元素名列的实

实例数据块和共享数据块之间的差别

任共享何位数据置直块不接调能用分。配给逻辑块。它包含设备或机器所需的值,并且可以在程序中的

声实明例表数中据的块功是能直块接的分数配据给。逻辑块的数据块,如功能块。实例数据块包含存储在变量

数据块的声明视图

对于不是全局共享的数据块,不能改变声明视图。

列地声址明

当解您释输入完声明时,显示。它显示自功动能分块配变给量变声量明的中地的址变。量是如何声明的:

仅为实例数据块显示该列STEP 7

  • 输入参数(IN)
  • 输出参数(OUT)

名称

类型

  • 输入态/数输出参数(IN_OUT)
  • 在此输入您必(须ST为A各T)个变量分配的符号名称。

如值果都您必不须希与望数软据件类使型用兼所容输。入数据类型的默认值,那么,您可以在此输入初始值。所有的当您首次保存块时,如果您

在该域中输入一条注释,有助于对变量编写文档。注释最多可以有 个字符。

。注 没有明确定义变量的实际值,那么,初始值将作为当前值使

CPU。

79

注释

初始值

本输数入据您类希型望、分复配杂给数变据量类的型数或据用类户型自(B定OO义L数、据IN类T、型W。ORD、ARRAY 等等)。变量可以有基

数据块的数据视图

所数有据视共图享数显据示块数,据该块视中图所中有的变表量格的当表示前均值相。同您。只对能于在数实例据视数图据中块,改将变显这示些一值个。对附加于

的“声明”列。

以在数其完据整视符图中号名,对称显于示有在复它杂们数据自己类型的行或中用。户如自果定这义些数据元素类型均位的于变量实例,所数据有块元的素均将数据视图将显示下面一些列:

列地声址明

显解示释 例数据自块动显为示变该量列分。配它的显地示址功。能块变量声明中的变量是如何声明的:

仅为实STEP 7

  • 输入参数(IN)
  • 输出参数(OUT)

名称

类型

  • 输入态/数输出参数(IN_OUT)
  • 在变量声明中(为ST变A量T)分配的符号名称。在数据视图中不能编辑该域。

显对型示于的为共变变享量量数,定据其义块元,素的数将这里据在类将数型只据列。出基本数据类型,因为对于具有复杂或用户自定义数据类

初始值

实际值

对于实例数据块,还会显示参数 ,对于具有复杂或用户自定义数据类型的输入

参数(IN_OUT)

如果您不希望 件使

当前您值。次保存软数据块时指定果没据有明确定义变量时的,可实际以为值,变那量么输,入将初使始用值初。始值作为当

,指针将指向“实际值”列中的数据类型。

数 类型的默认

/输出

请注

离线:打

该显示也不进行更新)。

在线:打开数据块时的当前值,显示但不自动更新。如要更新视图,请按 F5。

据块时的变量值,或上一次修改、保存过的变量值 即使在线打开数据块,

CPU。

(

型的输入/输出参数(IN_OUT),则您可以编

注释

所输入的用来为变量编写文档的注CP释U。/ 在数据视图中不能编辑该域。

辑请该注域意。:所仅有当的前值都才必可须以与下数载给据类型兼容。

区,那么,指针将指向“实际值”列中的复杂或用户自定义数据类型。

IN_OUT

编辑和保存数据块

输入共享数据块的数据结构

如声果明打视开图一中个定未义分其结配给构用。户对自于定未义共数享据的类数型据或块功,能不块能的改变数声据明块,视图则可。以在数据块的

  1. 打开一个共享数据块,表示该块与 UDT 或 FB 无关。
  2. 如果该视图尚未设置,则显示数据块的声明视图。
  3. 根据下列信息填写所显示的表格以定义结构。对于未共享的数据块,不能修改声明视图。

列地址

本输数入据您类希型望、分复配杂给数变据量类的型数或据用类户型自(B定OO义L数、据IN类T、型W。ORD、ARRAY 等等)。变量可以有基
如值当果都您您必第不须一希与次望数保软据存件类块使型时用兼,容所如。输果入数据类型的默认值,那么,您可以在此输入初始值。所有的

可以选择在该域中输入注释以对变量进行说明。注释可以多达么该个初字始符值。将用作实际值。

80

解当释您输入完声明时,显示 自动分配给变量的地址。

名类 称型 初始值

注释

在此输入您必须为各个变量ST分E配P 的7 符号名称。

输入和显示参考 FB(实例 DB)的数据块的数据结构

输入

构在。将任数据何改块动与都功能只块能(在实相例关D的B)功相能关块联中时进,行该。功能块的变量声明定义了数据块的结

  1. 打开相关的功能块(FB)。
  2. 编辑功能块的变量声明。
  3. 再次创建实例数据块。

显示 在实例数据块的声明视图中,您可以显示如何对功能块中的变量进行声明。

  1. 打开数据块。
  2. 如果该视图尚未设置,则显示数据块的声明视图。
  3. 参见下表以获取更多信息。

对于未共享的数据块,不能改变声明视图。

列地址

  • 输入参数(IN)
  • 输出参数(OUT)
  • 输静入态/数输据出参数(IN_OUT)
  • 功能块中已声(明ST的A临T)时本地数据不在实例数据块中。
自如或定果系义在统数已功据经能类声块型明。了调指用定静为态数变据量类的型功。能块中调用了附加功能块,那么也可以在此处将功能块

如果不想让软件(S使FB用) 默认值,可以在功能块的变量声明中为变量输入初始值。

注释 当值您。第一次保存数据块时,如果尚未为该变量明确定义实际值,那么该初始值将用作实际

解显释示

自动为变量分配的地址。

声明 该列显ST示E了P 在7 功能块的变量声明中是如何声明变量的:

名类称型

初始值

在显功示能功块能的块变的量变声量明声中明分中配分的配符的号数名据。类型。变量可以有基本数据类型、复杂数据类型或用户

在该功能块的变量声明中所输入的注释用于对数据元素进行说明。您不能编辑该域。

须在数据块的数据视图中进行操作。

注对释于分配给功能块的数据块,您只能编辑变量的实际值。要输入变量的实际值,必

输入用户自定义数据类型(UDT)的数据结构

  1. 打开用户自定义的数据类型(UDT)。
  2. 如果该视图尚未设置,则显示声明视图。
  3. 使通用过下确表定中变的量信的息顺。序、数据类型和初始值来定义 UDT 的结构,并可以在需要时
  4. 通过使用 TAB 键或RETURN 建退出该行,以完成变量的输入。

列地址 当解您释输入完声明时,显示

基输本入数您据希类望型分、配复给杂变数量据的类数型据或类者型用(B户OO自L定、义IN的T、数W据O类R型D、。ARRAY 等等)。变量可以具有
注释 如值果都您必不须希与望数软据件类使型用兼所容输。入数据类型的默认值,那么,您可以在此输入初始值。所有的定当义您实第际一值次,保那存么用该户初自始定值义将的用数作据实类际型值(或。变量、数据块)的实例时,如果尚未为变量明确

自动分配给变量的地址。

名类 称型 初始值

在此输入您必须为各个变量ST分E配P 的7 符号名称。

在该域中输入注释将有助于对变量进行说明。注释可以多达 80 个字符。

输入和显示参考 UDT 的数据块的结构

输入 即当定您义将数了数据据块块分的配结给构用户。任自何定义改动的数都只据能类在型相时应,的该用户自定义数据类型中的进数行据。结构

  1. 打开用户自定义的数据类型(UDT)。
  2. 编辑用户自定义数据类型的结构。
  3. 再次创建数据块。

显示 明您。只能在数据块的声明视图中显示如何在用户自定义的数据类型中对变量进行声

  1. 打开数据块。
  2. 如果该视图尚未设置,则显示数据块的声明视图。
  3. 参见下表以获取更多信息。

不能修改声明视图。任何改动都只能在相应的用户自定义数据类型中进行。

列地址 显解示释

显杂示数用据户类自型定或义用数户据自类定型义的数变据量类声型明。中分配的数据类型。变量可以有基本数据类型、复
如当际果您值不第。想一让次软保件存使数用据块默认时值,,如可果以尚为未该为该变量变量输入明用确户定自义定实义际值数据,类那型么该的初始值将用作实在变量声明中为用户自定义数据类型所输入的注释用于对数据元素进行说明。

自动为变量分配的地址。

的实际值,必须在数据块的数据视图中进行操作。

名类 称型 初始值

注释

在用户ST数E据P 类7 型的变量声明中分配的符号名。

量注对释于分配给用户自定义数据类型的数据块,您只能编辑该变量的实际值。要输入变

在数据视图中编辑数据值

只能在数据块的数据视图中编辑实际值。

  1. 如果需要,使用菜单命令视图 > 数据视图切换到数据视图中的表格显示。
  2. 据在类“型实相际兼值容”。列的域中输入数据元素所需的实际值。实际值必须与数据元素的数

被在编识别辑并期以间红,色任显何示错。误这的些输错入误(例必如须,在如保果存输数入据的块实之际前值予与以数更据正类。型不兼容)都会立即

注对释数据值的任何改变仅在保存了数据块后才被保留。

将数据值重新设置为其初始值

只能在数据块的数据视图中重新设置数据值。

  1. 如果需要,使用菜单命令视图 > 数据视图切换到数据视图中的表格显示。
  2. 为此,选择菜单命令编辑 > 初始化数据块。

始所有值所变量覆盖将被。重新分配其期望的初始值,这表示所有变量的实际值将由其对应的初

注对释数据值的任何改变仅在保存了数据块后才被保留。

保存数据块

为个将块新。创数建据的随块后或将数被据写块入中到经编修程改设的备数的据硬盘值中输。入到编程设备数据库中,必须保存各

为将块保存在编程设备的硬盘中:

  1. 激活希望保存块的工作窗口。
  2. 选择以下菜单命令之一:
    • 文件 > 保存将使用同一名称对块进行保存。
    • 存文。件在> 随另后存出为现将的使对用话一框个中不输同入的新S的7 用路户径程或序新或的一块个名不称同。的对名于称数对据快块进,行由保于

名称 已为系统保留,所以可能无法使用该编号。

DB0

时在同这时两进种行情况识别中,然有后以在红其色语法显没示。有任在保何错存块误之时前才,可必保须存块纠正。这语些法错误。将在创建块

  • 拖也可放在操作SIM。ATIC 管理器中将块或源文件保存在其它项目或库下面(例如,通过

注释

) 管理器中,只能将块或完整的用户程序保存到存储卡。

管理器中的菜单命令文件 重新组织。然后尝试重新进行保存或编

  • 如果SI在M保AT存IC或编译大型块时出现问题,应重新组织项目。为此,可使用

译SIM。ATIC >

作“:数据块的参数分配”功能使您能够在 LAD/STL/FBD 程序编辑器以外完成下列操

  • 编辑和下载实例数据块的实际值给 PLC,而无需装载整个数据块。
  • 在线监视实例数据块。
  • 和使多用重“实S7例_t,ec并hp对ar其am进”行系在统线属监性视(技。术功能)来轻松地将参数分配给实例数据块

步骤:

  1. 在 SIMATIC 管理器中,双击实例数据块,将其打开。
  2. 例如果希望打开“数据块的参数分配”功能,出现提示时请回答“是”。结果:实言,“技术参数”视图将S7自_t动ec打hp开ar。am”系统属性的实例数据块或多重实例而

DB 在“数据块的参数分配”应用程序中打开。

块通的过视选图择。菜对单于命具令有视“图 > 数据视图或视图 > 声明视图,选择将在其中显示数据

3.

  1. 要根跳据转需到要警编告辑或实错例误数的据位块置。,任可何双相击关相的应信的息警、告警或告错或误错。误将在消息窗口中显示。

菜单命令 下载参数设置数据 。

  1. 将已经修改的实际值从编程设备(PG)下载到您已经分配给当前 S7 程序的CPU( PLC > )
  2. 实选际择值菜的单编命辑令。调试 > 监视,显示已打开块的程序状态,然后在线监视所装载的

注您可释以识别具有“ ”系统的数据块。为确定一个块是否具有该系统属

性并,打可开以“转属到性”标签S7。_te管ch理pa器ra,m并选择块。然后,选择菜单命令编辑

SIMATIC

> 对象属性,

为数据块分配参数

    1. 为工艺功能分配参数

FB 58“TCONT_CP”和 FB 59“TCONT_S”,并可以在线监控它们。

使控用制“器块为数据块分配参数”功能,可以很容易地将参数分配给标准库所提供的温度

为此,可如下进行操作:

  1. 在 SIMATIC 管理器中,选择菜单命令文件 > 打开 > 库,打开 STEP 7 标准库。

S7_techparam”的下列功能块:

  1. “选择“PID 控制块”,然后点击“块”。此处,将发现具有属性
    • FB 58“TCONT_CP”:执行器温度控制器,具有连续或脉冲输入信号
    • FB 59“TCONT_S”:积分型执行器的温度控制器
  2. 将合适的功能块(FB 58 或 FB 59)从标准库复制到项目。
  3. 选择菜单命令插入 > S7 块 > 数据块,为所选择的 FB 创建实例 DB。
  4. 能在。SIMATIC 管理器中,双击打开实例 DB,并启动“为数据块分配参数”功

并结在果线:监在视工它艺术。视图中打开实例 DB。现在可以很容易地为实例 DB 分配参数,

  1. 中在显工示艺。视要图跳中转输到入警合告适或的错控误制的器位值置。,任可何双相击关相的应信的息警、告警或告错或误错。误将在消息窗口

注在释

管理器中,选择块,再选择菜单命令编辑

对象属性,然后打开“属

性”SI标M签AT,IC可以确定块是否具有“ ”系统> 属性。

S7_techparam

STL 源文件中编程的基本信息

块您。可源输文入件程可序包或含其许中的多块一部的代分作码,为随ST后L可源以文使件用,编然译后运执行行,一将步其操编作译,为将块其。编译成使用源文件创建程序将具有下列优点:

  • 并可编使用译成任块意的。编AS译C过II 程编将辑创器建创单建个和的编块辑并源将文其件存,储然在后使用用该户应程用序程中序。将其导入

S7

S7

  • 您可在一个源文件中对许多块进行编程。
  • 块即,使就包含无法有做语法到。错然误而,,也一可旦保您存源对文源文件件。进而行如编果译您,使则用只增报量告语语法法检错查误创建。逻辑

构源、文件变将量声按明照、编以程及语使言用表关达式键字语句的网表(络ST。L)的语法进行创建。源文件将给出其块结当创建 STL 源文件中的块时,您应注意如下几点:

  • STL 源文件的编程准则
  • STL 源文件中块的语法和格式
  • STL 源文件中块的结构

创建 STL 源文件

STL 源文件中的编程规则

在 STL 源文件中输入语句的规则

和ST语L 法源规文则件。主要包含连续的文本。为了让文件能够编译成块,必须遵守特定的结构在以 STL 源文件创建用户程序时应用下列通则:

议语题法 规则

指ST令L 。语句的语法规则与增量语句表编辑器中的规则相同。其中有一个例外是 CALL
CALL 实在例源:文件中,在括号中输入参数。各个参数之间用逗号分隔。

FC 调用(一行)

FB 调用(一行)

CALL FB10, DB100 (para1 :=I0.0,para2 :=I0.1);

实例:FB 调用(多行) CALL FB10, DB100 (

para1 :=I0.0, para2 :=I0.1);

注在配的调注用块释时将,不按能照匹在配 和编源辑文器件中视定图义。的参数次序进行传送。否则,为这些行分

ASCII

STL

关该串键应时字用数以程据大序类写中型显的为示编辑器不区,分时您大,也小无必写须,注但意是大系小统写属。性和跳转标签例外。在输入字符

键字,也可以将大小写混合使用。需遵守大小写;因此您可以按大写或小写输入关

( STRING)

(//)

大/小写

(//)开始,以回车(或换行)符结束。

分双号斜杆

用每分个号注释(;)指都示以每双一斜杆STL 语句和每个变量声明的结束。每行可以输入多个语句。

在 STL 源文件中声明变量的规则

对于源文件中的每个块,必须声明所需的变量。

变量声明部分位于块的代码部分之前。

所变有量变(如量果都正集被中使在用一)必起须。按声明类型的正确顺序进行声明。意思是同一种声明类型的关对的于关梯键形字图、。功能块图和语句表,只要填写一张变量声明表,但是在此必须使用相

用于变量声明的关键字

声输明入类参数型

输出参数

关“键字

声明VA列R表_INPUT

输入 输出参数

“声 END_VAR” ”

FB、FC

适用于...

明列表

VAR_OUTPUT

FB、FC

END_VAR”

/

FB、FC

静态变量

临时变量

OB FB FC

声明VA列R表_TEMP END_VAR

、 、

FB

“END_VAR””

声明VA列R表

“END”_VAR”

“声明VA列R表_IN_OUT”

关键字 END_VAR 指示声明列表的结束。

。下列实例显示了声明列表中某个条目的结构:

声明列表是一个声明类型的变量的列表,可以在其中为变量分配默认值(例外:

VAR_TEMP)

D变u量ration_Motor1 :数据类型S5TIME :默=认值

注释

S5T#1H_30M ;

        • 变量符必须以字母开头。不能给变量分配一个与所保留关键字相同的符号名。

,并在符号表中将变量加上引号,从而对本地变量进行编码。否则,块将这些

        • 如果本地声明和符号表中有相同的变量符号,可以通过在本地变量名称前面放置

变# 量解释为本地变量。

在 STL 源文件中块次序的规则

被调用的块位于对其调用的块之前。这表示:

调用的块必须位于其前面。

        • 在大多数情况下用到的 OB1,由于它要调用其它所有块,因而位于最后。被

OB1

        • 用户自定义的数据类型(UDT)位于使用它们的那些块之前。
        • 后带。有相关的用户自定义的数据类型(UDT)的数据块跟在用户自定义的数据类型之
        • 共享数据块位于所有调用它们的块之前。
        • 实例数据块跟在相关的功能块之后。
        • DB0 是保留块。不能创建具有该名称的数据块。

在 STL 源文件中设置系统属性的规则

以可及以过将程系控统制属组性态分。配给块和参数。它们控制消息组态和链接组态、操作员界面功能当在源文件中输入系统属性时,应用以下规则:

        • 用于系统属性的关键字总是以 S7_开始。
        • 系统属性放在括号中(大括号)。
        • 多语个法标:识{S7符_用标“识符”分:=隔'字。符串'}
        • 用于块的系统属;性位于块属性之前,关键字

和 之后。

        • 用于参数的系统属性包括在参数声明中,也就O是RG位A于NI数ZA据T声IO明N_的冒T号IT之LE前。
        • 要大。小写字符之间有区别。这表示在输入系统属性时,正确使用大小写字符很重

在选项增量卡输进行入模检查式中和,修用改于。块的系统属性可以通过菜单命令文件 > 属性下的“属性”在查增和修量输改入。模光式标中必,须用置于参数声明系统的名属性称域可以中使。用菜单命令编辑 > 对象属性进行检

在 STL 源文件中设置块属性的规则

的如果更改使。用块属性,可以更容易地识别您创建的块,还可以保护这些块免受未经授权中可以增使用量输菜入单模命式令文检件查或> 更属改性块在属“性常。规 - 第 1 部分”和“常规 - 第 2 部分”选项卡

其它块属性只能在源文件中输入。

以下规则适用于源文件:

        • 块属性位于变量声明部分之前。
        • 每个块属性都具有属于自己的行。
        • 每行以分号结束。
        • 块属性以关键字指定。
        • 如果输入块属性,它们必须按块属性表中的顺序显示。
        • 适用于每种块类型的块属性在“分配:块类型的块属性”中列出。

注块释属性还显示在

、 、 和 。

SIMATIC

AUTHOR FAMILY NAME VERSION

管理器中块的对象属性中。也可以在此编辑属性

块属性和块次序

输入块属性时,应遵循下表所示的输入顺序:

次序

关键字/属性

块允含义 图其代码段项。编可译以的视块图将块的不 实例

接口许,视但不能更

作称者名:公司名、部门名或其它名 A无U关T键HO字R:Siemens,但

KNOW_HOW_PROTECT

(块最系多列8 的个名不称含:空例格如的,字控符制) 器

(最多 8 个不含空格的字符

块名称 最多 个字符)

FAMILY:控制器,但无关

)

块的版本( 号 8

(两个数都介于 0 和 15 之间,即

NAME

键字 : ,但无关键字

PID

0.0 至 15.15)

[CODE_VERSION1]

[UNLINKED]仅适用于 DB

具存任有储何在工UN负作L载存IN存储KE储器D器空属中性。的它数们据不块占只

序它们链接。此。不类能使的用间,并命且令不访与问

[READ_ONLY]仅适用于 DB

400)或 SFC 83 READ_DBL (S7-

DB 内容只能使用

MC7

SFC 20 BLKMOV (S7-300. S7-

300C)传送给工作存储器。

FAMILY= Examples VERSION= 3.10 READ_ONLY

用读于取数,据不块能的修写改保护;其数据只能

8.

7.

CODE_VERSION1

如能指具果有想此声属明性是多否重实可例声明,多则重功实能例块。不

6.

VERSION : 3.10

[VERSION: int1 . int2]

5.

[NAME:]

4.

[FAMILY:]

3.

[AUTHOR:]

2.

[KNOW_HOW_PROTECT]

1.

每个块类型允许的块属性

下表说明块类型及其对应的可声明块属性:

属性

OB FB FC DB UDT
KNOW_HOW_PROTECT
AUTHOR
FAMILY
NAME
VERSION
UNLINKED
READ_ONLY

用 KNOW_H当O您W在_PROTECT 设置块保护 键字 设

置块保护ST,L以源防文止件您中的编块写受块到时未,授可权以用通户过的使访用问关。块保护将导致以下结果:

KNOW_HOW_PROTECT

        • 法如果显示想块在的稍代后码阶段。在 STL、FBD 或梯形图增量编辑器中视图已编译的块,将无

var_stat 和 var_temp 的变量保持隐藏状态。

        • 类块型的为变量声明表只显示声明类型为 var_in、var_out 和 var_in_out 的变量。声明
        • 在其它块属性之前输入关键字 KNOW_HOW_PROTECT。

用 READ_ONLY 为数据块设置写保护

STL 源文件的形式存在。

以可以为数据块设置写保护,以便在编程期间不会将这些块覆盖。为此,数据块必须

紧在源邻的文前件面中使一行用关。键字 READ_ONLY 设置写保护。该关键字必须出现在与变量声明

STL 源文件中块的结构

别使用:关键字处理 STL 源文件中的块的结构。根据块的类型,在下列结构上有所区

  • 逻辑块
  • 数据块
  • 用户自定义的数据类型(UDT)

STL 源文件中逻辑块的结构

逻辑块由以下部分组成,每个部分都用相应的关键字进行识别:

        • 块起始,
        • 通过关键字和块编号或者块名称进行识别,例如
          • “ORGANIZATION_BLOCK OB1”用于组织块,
          • “FUNCTION_BLOCK FB6”用于功能块,或者
          • 以“是FU基N本CT数IO据N类F型C1或: 者IN复T”杂用数于据功类能型。除对了于功能,还和要指定功能类,型并。定这义可返

回值(RET_VAL)的数据类型。如果没(有返回A任RR何A值Y,就S给TR出U关CT键) 字 。

        • 可选的块标题用关键字“ ”引入 标题的最大长度:

个字符

VOID

        • 附加的注释在行的起始处以TIT双L斜E 杆开始(
        • 块属性(可选)
        • 变量声明部分

对于NET每WORK”标识。不能输入程序段编号。

64 )

        • “代码段,以“BEGIN”开始。代码段包括一个或多个程序段,它们以

64 个字符)

        • 度: 个所用程序段的可选程序段,用关键字“TITLE =”引入(标题的最大长
        • 每个程序段的附加注释在行的起始处以双斜杆开始

标识

        • 块结束,用 END_ORGANIZATION_BLOCK、END_FUNCTION_BLOCK 或END_FUNCTION
        • 保在本块类地型变量和块的符编号名和间符必须号表留中一的个名空称格保。块持唯的一符性号名。可以通过引号来标识,以确

STL 源文件中数据块的结构

数据块包括以下区域,它们分别以其相应的关键字开始:

        • 块起始,用关键字和块编号或块名称进行标识,例如DATA_BLOCK DB26
        • 指向相关的 UDT 或功能块(可选)的引用
        • 由关键字 TITLE =引入的可选块标题(超出 64 个字符的部分将被剪切)
        • 可选的块注释,以双斜杆//开始
        • 块属性(可选)
        • 变量声明部分(可选)
        • 分配默认值的部分,以 BEGIN (可选)开始
        • 块结束,通过 END_DATA_BLOCK 进行标识

有三种类型的数据块:

        • 数据块,用户自定义
        • 具有关联用户自定义数据类型(UDT)的数据块
        • 具有关联功能块的数据块(例如“实例”数据块)

STL 源文件中用户自定义数据类型的结构

用户自定义的数据类型包括以下区域,它们分别由其相应的关键字引入:

        • 块起始,以关键字 TYPE 和编号或名称进行标识,例如 TYPE UDT20
        • 结构化的数据类型

当• 块结束,以 END_TYPE 标识

的块您之输前入。用户自定义的数据类型时,必须确保用户自定义的数据类型位于使用它们

创建 STL 源文件

STL 源文件中块的语法和格式

格式表显示了在编写 STL 源文件时应该遵守的语法和格式。语法如下:

  • 每个元素在右列中描述。
  • 必须输入的所有元素都在引号中显示。
  • 方括号[...]表示这些括号中的内容是可选的。
  • 关键字用大写字母给出。

组织块的格式表

下表简要列出了在 STL 源文件中用于组织块的格式:

结“构

ORGANIZATION_BLOCK”

描述

ob_no 是块编号,例如:OB1;

ob_no or ob_name

o块b标_n题am超e 出是在符个号字表符中长定度义的的部块分的将符被号剪名切

可以在“( ”之64后输入注释

)

[变Bl量oc声k 明pro部p分erties]

用于块的系// 统属性

“BEGIN”

块临属时性变量的声明

该隔关开键字用于将变量声明部分从 STL 指令的列表中分

程序段标开题始最多 个字符

可以在“ ”

// 之后输入注释

( 64

)

L“ist of STL instructions

”END_ORGANIZATION_BLOCK

块指令

该关键字用于结束组织块

[Network comment]

[TITLE= ]

NETWORK

[System attributes for blocks]

[Block comment]

[TITLE= ]

功能块的格式表

下表简短地列出了在 STL 源文件中用于功能块的格式:

结“构

FUNCTION_BLOCK”fb_no or

描述

fb_no 是块编号,例如 FB6;

fb_name

f块b_标na题m超e 是出在符个号字表符中长定度义的的部块分的将符被号剪名切

可以在“( ”之64后输入注释

)

[变Bl量oc声k 明pro部p分erties]

用于块的系// 统属性

“BEGIN

块输声属入明性、输出和输入 输出参数、以及临时或静态变量的

参该数声键明字也用可于能将包变量声用明于部参分数从的系统属指性令的的声列明表。中分

/

隔程序开段的开始

STL

程序段标题(

最多 64 个字符

//

“END_FUNCTION_BLOCK

List of STL instructions

该关键字用于结束功能块

”之后输

入注释

)

块指令

[Network comment]

[TITLE= ]

NETWORK

[System attributes for blocks]

[Block comment]

[TITLE= ]

创建 STL 源文件

功能的格式表

下表简短地列出了在 STL 源文件中用于功能的格式:

结“构

FUNCTION” fc_no : fc_type or

fc_name : fc_type

fb_name 是在符号表中定义的块的符号名

描述

fb_no 是块编号,例如 FC5;

fc_type 是功能返回值(RET_VAL)的数据类型。这可

以是基本数据类型或复杂数据类型(除了 ARRAY 和

STRUCT)

或VOID

块标题

如作参数为输返入回系使值统用系统属性,必须为数据声明冒号前的

(R属ET性_V。AL)

[变Bl量oc声k 明pro部p分erties]

可用以于在块“的系//”统之属后性输入注释

(超出 64 个字符长度的部分将被剪切)

“BEGIN”

该分关隔键开字用于将变量声明部分从 STL 指令的列表中

块输属入性、输出和输入 输出参数、以及临时变量的声明

/

程序段标开题始最多 个字符

可以在“ ”

// 之后输入注释

( 64

)

“END_FUNCTION

List of STL instructions

该关键字用于结束功能块

块指令

[Network comment]

[TITLE= ]

NETWORK

[System attributes for blocks]

[Block comment]

[TITLE= ]

数据块的格式表

下表简短地列出了在 STL 源文件中用于数据块的格式:

结“构

DATA_BLOCK”db_no or

db_no 是块编号,例如 DB5;

描述

db_name

d块b标_n题am超e 出是在符个号字表符中长定度义的的部块分的将符被号剪名切

可以在“( ”之64后输入注释

)

用块于属块性的系// 统属性

Declaration section

“BEGIN”

该隔关开键字用于将变量声明部分从数值分配列表中分

声义明的该块块编是号与或符UD号T名还,是或F者B复有杂关数,据给类出型符。号表中定

[Assignment of initial values]

“END_DATA_BLOCK”

该关键字用于结束数据块

可配以的为常变数量,分或配是指具有定至的初其始它值块。的各引变用量。或是具有分

[Block properties]

[System attributes for blocks]

[Block comment]

[TITLE= ]

创建 STL 源文件

创建STL 源文件

创建 STL 源文件

必器须窗在口中S7创程建序源下文面件的。源文件文件夹中创建源文件。可以在 SIMATIC 管理器或编辑

在 SIMATIC 管理器中创建源文件

  1. 通过双击相应的“源文件”文件夹将其打开。
  2. 要插入 STL 源文件,可选择菜单命令插入 > S7 软件 > STL 源文件。

在编辑器窗口中创建源文件

  1. 选择菜单命令文件 > 新建。
  2. 序在。对话框中选择同一 S7 程序的源文件文件夹,其中包含带有这些块的用户程
  3. 输入新的源文件的名称。
  4. 使用“确定”进行确认。

源文件以您所输入的名称创建,并显示在编辑的窗口中。

编辑 S7 源文件

程打序开语源言文和件用进于行编辑源时文,件就的启编动辑了器正可确以的在编源辑文器件和的正对确象的属编性程中语设言置。。这可确标保准在软

件包支持在

件其,它程那序么语言ST也L可用作可选软件包。如果在您的计算机上已经加载了相应的软件选

源文件中编程。

STEP 7

要编辑

只需选择菜单命令便可以插入源文件。

S7 源文件,可如下操作:

  1. 通过双击相应的“源文件”文件夹将其打开。
  2. 按照如下步骤启动进行编辑时所需的编辑器:
    • 在窗口的右半部分双击所需的源文件。
    • 在窗口的右半部分选择所需的源文件,然后选择菜单命令编辑 > 打开对象。

设置源代码文本的布局

选要项提卡高。源为文件源代中文码的本的各种可元读素性指,定请字选择体大菜单小、命字令选体风项格> 以设及置颜,色然。后选择“源代码”

例如,可以指定按大写字母显示行号和关键字。

在 STL 源文件中插入块模板

用户于自组定织义块数(O据B)类、型功的能数块据(F块B)以、及功用能户(FC自)定、义数数据据块类(D型B)、实例的数块据模块板、均带可有用关于联的

守源语文法件中和结的编构规程。则使。用块模板,可以轻而易举地将块插入(U到DT您) 的源文件中,同时S遵TL

要插入块模板,可如下操作:

  1. 激活想要在其中插入块模板的源文件窗口。
  2. 将光标放置在文件中想要插入块模板的位置处。
  3. 的选一择个菜命单令命。令插入 > 块模板 > OB/FB/FC/DB/实例 DB/ DB 引用 UDT /UDT 中

块模板插入到文件中光标位置的后面。

插入其它 STL 源文件的内容

可以将其它源文件的内容插入到您的 STL 源文件中。

操作过程如下:

  1. 激活想要在其中插入其它源文件内容的源文件窗口。
  2. 将光标放置在文件中想要在其后插入源文件的位置处。
  3. 选择菜单命令插入 > 对象 > 文件。
  4. 在出现的对话框中选择所需的源文件。

选择的源文件的内容插入到光标位置之后。换行回车保留。

在 STL 源文件中插入来自现有块的源代码

块可图以或将来语句自表其创它建块的。源这代也码可插以入用您的于组ST织L块源文件、中功,能该块文件可、以功是能以梯形、图数、据功块能

(操DB)以及用户自定义的数据类型(UDT)。

作过程如下:

(OB)

(FB)

(FC)

  1. 激活想要在其中插入块的源文件的窗口。
  2. 将光标放置在文件中想要在其后插入来自块的源代码的位置处。
  3. 选择菜单命令插入 > 对象 > 块。
  4. 在出现的对话框中选择所需的块。

从该块中生成等效的源文件。将源文件的内容插入到该光标位置后。

插入外部源文件

并可编以使译为用各任何个块AS。C为II 此编,辑您器必创须建将和源编文辑件源导文入件,然程后序使的用“该源应文用件程”序文将件其夹导中入,项编目译

期间所创建的块将保存在该 程序中。 S7

要插入外部源文件,可如下操S7作:

  1. 选择要向其中导入外部源文件的 S7 程序源文件的文件夹。
  2. 选择菜单命令插入 > 外部源文件。
  3. 在出现的对话框中,输入您想要导入的源文件。

来确定源文件类型。这就是说,例如 在导入带有扩展ST名EP 7 的文件时将创

您正在导入的源文件的文件名必须具有有效的文件扩展名。 使用 扩展名建 STL 源文件。有效的文件扩展名在S对T话EP框7的“文件类型”下列.A出W。L

注还释可以使用菜单命令插入 > 外部源文件导入使用 STEP 7 版本 1 创建的源文件。

生成来自块的 STL 源文件

程您序可的以源从文现件有的块文生件成夹ST中L生源成文源件文,件该。文件可以用任一文本编辑器进行编辑。在 S7

要从块中生成源文件,可如下操作:

  1. 在程序编辑器中,选择菜单命令文件 >生成源文件。
  2. 在该对话框中,选择想要在其中创建新的源文件的文件夹。
  3. 在文本框中输入源文件的名称。
  4. 示在在“右选列择表ST框E中P 。7 块”对话框中,选择想要将其作为给定源文件的块。所选块显
  5. 使用“确定”进行确认。

从所选块中创建了一个连续的 STL 源文件,并显示在窗口中以进行编辑。

导入源文件

要将任一目录下的源文件导入到项目中:

  1. 在 SIMATIC 管理器中,选择要导入源文件的源文件文件夹。
  2. 选择菜单命令插入 > 外部源文件。
  3. 在显示的对话框中,选择目标目录和要导入的源文件。
  4. 点击“打开”按钮。

导出源文件

从一个项目将源文件导出到任一个目标目录:

  1. 在源文件夹中选择源文件。
  2. 在 SIMATIC 管理器中选择菜单命令编辑 > 导出源文件。
  3. 在所显示的对话框中输入目标目录和文件名。
  4. 点击“保存”按钮。

上。例如, 源文件“ ”导出到文件“ ”中。

STL prog prog.awl

prog.awl 出到文件“prog.awl”中。

的文件扩展名(

称中包含

)

注如释果对象名称没有文件扩展名,则从文件类型获取的文件扩展名会添加到文件名称源如文果件对“象名称已经有”一导个有效的文件扩展名,那么保持该扩展名不变。例如,STL名如。果对象名称具有无效 在名 英文句号 ,那么不添加文件扩展

可在“导出源文件”对话框的“文件类型”下获得有效文件扩展名的列表。

保存和编译 STL 源文件并执行一致性检查

保存 STL 源文件

查可以,在这任表示何同时时候将保存错误当也前进状行态了下保的存ST。L 源文件。程序未编译并且没有执行语法检仅在编译源文件时或者进行一致性检查之后,才检测并报告语法错误。

要以相同的名称保存源文件:

  1. 激活想要保存的源文件的窗口。
  2. 选择菜单命令文件 > 保存。

以新名称保存源文件或者将源文件保存到其它项目中:

  1. 激活想要保存的源文件的窗口。
  2. 选择菜单命令文件 > 另存为。
  3. 在对话框中,选择想要用来保存该源文件的文件夹并输入文件名。

检查 STL 源文件中的一致性

使比用,菜该单命命令令将文不件生成> 任一何致块性。检查可以显示 STL 源文件中的所有语法错误。与编译相在完成一致性检查后,将出现一个对话框向您显示找到的总错误数。

些在窗错误口下,以半部便可分以别创列建出所找有到的块所。有错误,并带有行参考。在编译源文件之前纠正这

调试 STL 源文件

激活的源文件窗口被分为两个部分。下列错误在下半部分中列出:

        • 编译后找到的错误通过菜单命令文件 > 编译启动。
        • 一致性检查后找到的错误通过菜单命令文件 > 一致性检查启动。

元要素在源将文在代件中码段找自到动错高误亮位显置示,,可并将且光在标状定位态栏在输消出息窗错误口的消息“。错误”标签上。错误的

编译 STL 源文件

要求 为了能够将您在源文件中创建的程序编译成块,必须满足以下要求:

        • 只能对保存在 S7 程序下的“源文件”文件夹中的源文件进行编译。
        • 与存“编源译文期间件”所创文建件的夹块一样。,只S有7在程正序确下无也误必地须编有译一了个源“文块件”后文,件才夹能,创其建中在可源以文保件可中以编打写开的这块些。块如、果对在源其进文行件编中辑编、写将了它若干们下块,载到则只会创、建以没及有逐错个误调的试块。。随后您

CPU

编辑器中的过程

S7 用户程序中将保存所编译的块。

  1. 下打的开想要编译的源文件。源文件必须位于 S7 程序源文件的文件夹中,该文件夹
  2. 选择菜单命令文件 > 编译。

仅3.

显示“编译器报告”对话框,在其中将显示所编译的行数和找到的语法错误。

了若当干正确块,无则误只地会编创译建了源没有文件错误后的,块才。能为错误文件警创告不建会指定阻止的块的。创如建果。在源文件中编写创编建译相期应间的检块测。到的语法错误将显示在工作窗口的下半部分,并且必须在更正后才能

SIMATIC 管理器中的过程

  1. 通过双击相应的“源文件”文件夹将其打开。
  2. 译选其择中想包要含编的译所的有一源个文或件多。个源文件。不能为关闭的源文件文件夹启动编译,来编
  3. 是选,择将菜成单功命编令译文的件块> 保编存译在以启动程编序译下。的为块所文选件的夹源中文。件调用正确的编译器。于块编也译能期被间创检建测。到的语法错误显S7示在对话框中,必须将其更正以便那些存在错误的

STL 源文件的实例

在 STL 源文件中声明变量的实例

基本数据类型的变量

// 通过双斜杆将注释与声明部分分开。

VAR_INPUT // 用于输入变量的关键字

in1 : INT;// 变量名和变量类型用“:”分隔

in3 : DWORD; // 每个变量声明都以分号终止

in2 : INT := 10; // 用于声明中初始值的可选设置

END_VAR // 相同声明类型的变量的声明结束

VAR_OUTPUT // 用于输出变量的关键字

END_VAR // 用于临时变量的关键字

out1 : WORD;

VAR_TEMP

temp1 : INT;

END_VAR

Array 数据类型的变量

VAR_INPUT // 输入变量

array1 : ARRAY [1..20] of INT; // array1 是单维数组

array2 : ARRAY [1..20, 1..40] of DWORD; // array2 是两维数组

END_VAR

Structure 数据类型的变量

VAR_OUT // 输出变量

OUTPUT1: STRUCT// OUTPUT1 具有 STRUCT 数据类型

var1 : BOOL; // 结 构 的 元 素 1 var2 : DWORD; // 结构的元素 2 END_STRUCT; // 结构结束

END_VAR

STL 源文件中组织块的实例

TITLE = Example for OB1 with different block calls(带有不同块调用的OB1 的实例)

ORGANIZATION_BLOCK OB1

// 3 个程序段显示了块调用

// 带和不带参数

{S7_pdiag := 'true'} //块的系统属性

FAMILY 实例

AUTHOR Siemens

NAME Test_OB

VERSION 1.1

Interim value : INT; // 缓冲区

VAR_TEMP

END_VAR BEGIN

TITLE = Function call transferring parameters(传送参数功能调用)

NETWORK

// 在一行中进行参数传送

CALL FC1 (param1 :=I0.0,param2 :=I0.1);

TITLE = Function block call(功能块调用)

NETWORK

// 传送参数

// 在多行中进行参数传送

CALL Traffic light control , DB6 ( // FB 的名称、实例数据块dur_g_p := S5T#10S, // 将实际值分配给参数

del_r_p := S5T#30S,

starter := TRUE,

t_dur_y_car := T 2,

t_dur_g_ped := T 3, t_delay_y_car := T 4, t_dur_r_car := T 5,

r_car := "re_main", // 引号显示了在

t_next_red_car := T 6,

y_car := "ye_main", // 符号表中输入的符号名

g_car := "gr_main",

r_ped := "re_int",

g_ped := "gr_int");

TITLE = Function block call(功能块调用)

NETWORK

// 传送参数

// 在一行中进行参数传送

CALL FB10, DB100 (para1 :=I0.0,para2 :=I0.1);

END_ORGANIZATION_BLOCK

      1. STL 源文件中功能的实例
AUTHOR : Siemens

FAMILY : Throughput check

NAME : INCR_ITEM_NOS

VERSION : 1.0

ITEM_NOS {S7_visible := 'true' } : INT; // 当前制造的条目的数目

VAR_IN_OUT

// 用于参数的系统属性

END_VAR

BEGIN

TITLE = Increment number of items by 1(条目以 1 递增)

NETWORK

// 只要当前条目数低于 1000,

// 计数器可以以 1 递增

L ITEM_NOS; L 1000; // 在一行中具有

> I; JC ERR; // 多个语句的实例。

L 0; T RET_VAL;

L ITEM_NOS; INC 1; T ITEM_NOS; BEU; ERR: L -1;

T RET_VAL;

END_FUNCTION

      1. STL 源文件中功能块的实例
TITLE = Duration of yellow phase for cars(用于车辆的黄灯持续时间)

NETWORK

// 控制交通灯所需要的

// 其它程序

END_FUNCTION_BLOCK

FUNCTION_BLOCK FB10 VAR_INPUT

para1 : bool; para2: bool; end_var begin

end_function_block

data_block db10 FB10

begin end_data_block

data_block db6 FB6

begin end_data_block

      1. STL 源文件中数据块的实例

数据块:

aa := TRUE;

bb := 1500 ; END_DATA_BLOCK

// 初始值的分配

END_STRUCT;

BEGIN

// BOOL 型变量 aa

cc : WORD;

bb : INT; // INT 型变量 bb

aa : BOOL;

DATA_BLOCK DB10

TITLE = DB Example 10 STRUCT

具有相关用户自定义数据类型的数据块:

// 初始值的分配

start := TRUE;

setp. := 10 ; END_DATA_BLOCK

// 相关的用户自定义的数据类型

DATA_BLOCK DB20

TITLE = DB (UDT) Example UDT 20

BEGIN

注所释使用的 UDT 必须位于源文件中的数据块之前。

带有相关功能块的数据块:

setp. := 10 ;

END_DATA_BLOCK

// 相关的功能块

start := TRUE; // 初始值的分配

DATA_BLOCK DB30

TITLE = DB (FB) Example FB30

BEGIN

注相释关的功能块必须位于源文件中的数据块之前。

STL 源文件中自定义数据类型的实例

END_STRUCT;

END_TYPE

// BOOL 型变量

// WORD 型变量

// INT 型变量

start : BOOL;

setp. : INT; value : WORD;

TYPE UDT20

STRUCT

  1. 显示引用数据
    1. 可用参考数据概述

下您可使创用建参考数据:并为其赋值,以便使用户程序的调试和修改更容易。在下列情况

  • 作为整个用户程序的一个概述
  • 作为进行修改和测试的基础
  • 为了补充程序文档

下表给出了您可从各个视图中摘取的信息:

视交图叉索引表

使SF用B、菜S单F命C令调视用图的地地址址概的况交。叉索引,可显示包括所选地址的多重访问在内

I Q M P T C DB FB FC

的所有交叉索引。 >

输分入配、表输出、和位存储器的 和用户程等序概内况已;占它用们的构存成储了器用区户I程、序Q中和的M故中障的诊地断址或位修以改及的定一时个器重和要计基数础器(T C)
有为符其号提的供概有况参考数据但在符号表中没有为其定义任何符号的、已在部分用户
程序中使用的所有绝对地址的概况

用用途户程序中所使用的存储器区 、 、

、 、 、

,以及

、 、 、

程未序用结符构号

无符号的地址

用为户其程提序供内有的参块考的数调据用、体已系在以符及号所表使中用定块义及但其尚嵌未套在等部级分的用概户况程序中使用的所

所用选户用程户序程创序建的和参显示考一数个据或包多括个了列表表中。的所有列表。也可以为一个用户程序或为多个

同时显示多个视图

例如,在附加窗口中显示其它的列表将使您能够:

  • 显示示在列屏表幕的上各。种例不如同,视您图可,用例一如个交叉索引列表只,显按示不某同一方式进用行户显程示序并的紧输挨入着,显
  • 比较不同 S7 用户程序中的同一列表。

而另一个列表只显示它的输出。 S7

  • 同时打开一个 S7 用户程序的多个列表,例如,程序结构和交叉索引列表。

交叉参考表

交叉参考表提供 S7 用户程序中关于地址使用的概况。

(DB)的地址列表,显示了它们在 S7 用户程序中的使用情况,包括它们的地址

计显数示器交叉参考表时,将获得存储区域输入(I)、输出(Q)、位存储区(M)、定时器(T)、

数据块(C)、功能块(FB)、功能(FC)、系统功能块(SFB)、系统功能(SFC)、I/O(P)和

考(绝表对所地属址的或用符户号程)和序用的途名。称这。些都显示在活动窗口中。工作窗口的标题栏显示交叉参

地窗址口的和符每号一。行对应于交叉参考表的一个条目。使用搜索功能可以方便地查找特定的当显示参考数据时,交叉参考表显示的是默认视图。可以改变此默认设置。

结构 交叉参考表条目由下列栏目组成:

列地块址符号

类语

(符号)

地址中使

内容/

含义

位置

)

是关于否创涉建及块地所址使的用读的取编程和语或言写的信息访问

(R) / (W)

双击位置域,跳转至所选地址使用的位置。

写只有入为块所交叉用的参编考程表选语择言而相应异。的属性时,才显示块、类型、语言和位置栏。块信息因

可以使用鼠标根据需要设置画面中显示的交叉参考表的栏宽度。

排序 默交认叉排参序考标表准默对认情条目况进下按行排照序存。储器区域排序。如果用鼠标点击栏目标题,可以按照

交叉参考表布局的实例

地址(符号)

I1.0 (电机开)

M1.2 (存储位)

块(符号)

类型 语言

位置

C2 (计数器 2)

Nw2

FBD

FB2

Nw 33

LAD

R

FC2

Nw 2 Inst 33 /0

STL

R

OB2

      1. 程序结构

的程从序属结关构系描和述它了们S7的用局户部程数序据中要块求的。调用层级。同时,也概要给出了所用的块、它们框在。“在生“成程参序考结数构据”标窗签口页中中使,用可菜以单设命置令如视图何显>过示滤程器序,结可构以。打开带选项卡的对话

可以在以下两者之间选择:

        • 调用结构和
        • 从属性结构

程序结构的符号

符号 含义

STEP 7 V5.4 编程手册-81 通常调用的块(调用 FB10)

STEP 7 V5.4 编程手册-82 无条件调用的块(UC FB10)

STEP 7 V5.4 编程手册-83 有条件调用的块(CC FB10)

STEP 7 V5.4 编程手册-84 数据块

STEP 7 V5.4 编程手册-85 递归

STEP 7 V5.4 编程手册-86 递归和有条件的调用

STEP 7 V5.4 编程手册-87 递归和无条件的调用

STEP 7 V5.4 编程手册-88 未被调用的块

        • 在调用结构中以图形方式识别和显示递归调用。
        • 调用层级中的递归以不同的符号显示。
        • 号定标期记调用。的块(CALL)、有条件调用的块(CC)或无条件调用的块(UC)用不同的符
        • 用未结被构调中用将的不块再显示进在一步调细用分结。构的底部,并用黑色叉标记。对于未被调用的块在调

调用结构 显示完整的调用层级。

STEP 7 V5.4 编程手册-89

如指果定将的要启为动所块有不组在程织块序(中O,B)将创自建动程提序示结您构指,定而另O一B1个不块在作S为7程用序户结程构序的中根,。或者如果

无论是调用结构还是从属结构,都可以通过选项设置来禁止显示块的多重调用。

在调用结构中显示最大的局部数据要求

列为信了息能:够概览所显示的用户程序中组织块的局部数据要求,可以用树型结构显示下

        • 每个 OB 的最大局部数据要求之和
        • 每个路径的局部数据要求

可以在“程序结构”选项卡中激活和禁用此显示。

示如用果于存表在示同同步错步错误误OB (O的B1加21号、和O附B1加2的2),要将求在。最大局部数据要求的数字值后面,显

OB

从属性结构从属性结构显示项目中每个块与其它 从属关系。块显示在左边外侧,在下面在

锯齿状的段中列出的是调用或使用此块的块。

显示删除的块

与删除的块相关的行以红色高亮显示。

分配列表

分或配修列改表的显重示要哪基些础地。址已分配到用户程序中。该显示是在用户程序中进行故障诊断器I/Q/M 分配列表概述了存储器区域输入(I)、输出(Q)、位存取区(M)、定时器(T)和计数

(Z)的哪个字节的哪个位的使用情况。I/Q/M 分配列表显示在工作窗口中。

工作窗口的标题栏显示分配列表所属的 S7 用户程序的名称。

I/Q/M 表

指每出一是行包字节含、存字储器还是区双的字一的个访字问节。,该字节的八个位根据它们的访问进行编码。它也

I/Q/M 表中的标识

白色背景

X蓝色背景

没有访问该地址,因而未分配。

直间接访问地址 字节、字或双字访问 。

(

)

I/Q/M 表中的栏

内容/含义

相应字节的位编号

B窗口

字节被一个字节访访问问占占用用

字节被一个双字访问占用

D

7

6

5

4

3

2

1

0

实例 下面的实例给出了输入、输出和位存取区 分配列表的典型布局。

(I/Q/M)

STEP 7 V5.4 编程手册-90 “第一行显示输入字节 IB 0 的分配。地址 IB 0 的输入为直接访问(位访问)。栏“0”、中,字并访且问单内元存格字也节以淡1 蓝和色2、背2景和显3示或。4横和条5的。黑因色此末,端一显个示“字横访条问”的显开示始在。“W”栏

也1有”、“2”、“3”、“5”和“6”以“X”标识为位访问。

T/C 表 每行显示

实例

10 个定时器或计数器。

。T1

。T12

。Z2

T24

。T6

。T17

。Z7

。T19

。Z19

Z34

Z 30-39

Z 20-29

Z 10-19

Z 00-09

T 20-29

T 10-19

在被该占实用例。中,定时器 T1、T6、T12、T17、T19、T24 和记数器 Z2、Z7、Z19、Z34

列表按字母数字顺序排列。可以通过单击栏目标题来对条目进行排序。

未使用的符号

向您概述具有下列特征的所有符号:

        • 在符号表中定义的符号。
        • 它 存放参考数据的用户程序段中未使用的符号。

称。们显示在一个激活的窗口中。工作窗口的标题栏显示列表所属的用户程序的名窗口的每一行对应于列表的一个条目。每行包括地址、符号、数据类型和注释。

列地址 绝内对容地/含址义

数注据释类型 地符址号的表数中据的类地型址的注释

未使用的符号布局列表的示例

符号MCB1 MCB2

MCB3

地址

I 103.6

I 120.5

I 121.3

数据类型BOOL BOOL

BOOL

电机电路断路器 1

电机电路断路器 2

注释

电机电路断路器 3

可以通过点击栏目标题对条目排序。

符还可号以”从功能列。表中删除不再需要的符号。为此,在列表中选择符号,然后执行“删除

不带符号的地址

元当素显没示不有在带符号表的中地址定义的列。它表时们显,示将在获得一个S7激用活户的程窗序口中中所。使工用作元窗素口的的列标表题,栏而显这示些行包括地址以及地址在用户程序中使用的定时器的编号。条目按照地址存储。

列表所属的用户程序的名称。

实例:

地址 编号

Q 2.5 4
I 23.6 3

还M可3以4.1将名称分配给不20带符号的地址。为此,在列表中选择地址,然后执行“编辑

符号”功能。

为 LAD、FBD 和 STL 显示块信息

此梯信形息逻包辑括、块功语能言方框细图节资和料语句。表的语言相关信息显示在交叉参考表和程序结构中。项如,果“在程“序程结序构结”构视”图选只项显卡示中将语过言相滤关器设的信置为息。“调用结构”,并且选择了相应的选

“交叉参考”中的语言相关信息可以通过菜单命令视图 > 过滤器显示或隐藏。

  • 在选“框过,滤以器显”示对块话语窗言的信“息交。叉参考”选项卡中激活“块语言”和“详细资料”复语言相关信息因写入块时所用的编程语言而异,并且用缩写显示。

语言 程序段 语句 指令

STL Nw Inst /
LAD Nw
FBD Nw

Nw 和 Inst 指定在哪一个程序段和哪一个语句中使用了地址(交叉参考表)或调用了块

程序结构 。

( )

为可选择的编程语言显示块信息

如果安装相应的可选程序包,就可以访问关于块信息的在线帮助主题。

显示引用数据

使用参考数据

显示参考数据的方法

下列方法可以用来显示参考数据:

从 SIMATIC 管理器显示

  1. 在项目窗口的离线组件视图中,选择“块”文件夹。
  2. 选择菜单命令选项 > 参考数据 > 显示。

从编辑器窗口显示

  1. 在“块”文件夹中打开一个块。
  2. 在编程语言编辑器窗口中,选择菜单命令选项 > 参考数据。

后显关示闭“的自用定于义显”示对参话框考数。据在的此视可图选。择可最隐先藏显示该的对视话框图,。以默用认于视将图来为调在用应。用程序中最

直接从已编译的块中显示

可以直接从语言编辑器中显示已编译块的参考数据,获取用户程序的当前概况。

在附加工作窗口中显示列表

如使,用菜未使单用命令符号窗的口列> 表新建。窗口可以打开附加工作窗口和显示参考数据的其它视图(例

使用菜单命令参考数据) 打开可打开一个工作窗口以显示先前隐藏的参考数据。

通的过其选它择视“图视:图”菜单中> 的命令或选择工具栏上相应的按钮,可以切换到参考数据

参不考带数符号据的视地图址

未使用的符号

分配

显视示图此参不考包数含据符视号图的的地菜址单命令

程序结构

视图 > 未使用的符号

交叉参考表

视图 > 分配

视图 > 程序结构

视图 > 交叉参考

>

生成和显示参考数据

生成参考数据:

  1. 在 SIMATIC 管理器中,选择希望为其生成参考数据的块文件夹。
  2. 在 SIMATIC 管理器中,选择菜单命令选项 > 参考数据 > 生成。

是在生否是成当参前考的数。据前,计算机检查是否有任何可用的参考数据,如果有,则检查数据

        • 如果参考数据可用,则说明它们已经产生。
        • 如完果全可生用成的它参们考。数据不是当前数据,则可以选择是否刷新参考数据或者是否再次

显示参考数据:

使用菜单命令选项 > 参考数据 > 显示可以显示参考数据。

是在当显前示的参。考数据前,进行检查以确定是否存在参考数据,以及存在的参考数据是否

        • 如果不存在参考数据,则生成它们。
        • 如以果决存定在是不否完要整刷的新参参考考数数据据,以将及显刷示新一到个什对么话程框度,。提有醒下参列考选数择据:不一致。然后可

选仅项适用于修改过的块对不所刷有新的块

库完中全移重除新。生成所有块的参考数据。

含刷义新任何修改或新建的块的参考数据;任何已删除的块的信息将从参考数据不刷新参考数据。

用为菜了单刷命新参令视考数图据,刷需新要可对以块刷进新行已重显新示编在译激。活调窗用口合中适的的参编考译器以编译每个块。使

>

数据的视图。

在程序中快速搜索地址位置

新在的编参程时考数可据以。使然用参而,考不数必据启将动光应标用放程置序到以程显序示中参地址考数的据不。同位置。为此,必须有最

基本过程

  1. 据在。SI只M有AT当IC没管有理参器考中数选据择或菜只单有命旧令的选参项考>数参据考时数,据才>需生要成此以步生骤成。当前参考数
  2. 在打开的块中选择地址。
  3. 随选后择显菜示单一命个令对编话辑框> ,跳其转中到包>含实一例张。程序中所有地址实例的列表。
  4. “如交果迭还访要问显存示储其区物域理”地。址“或地址”区栏域将与添被加调到用表地中址。重叠的地址实例,选择选项
  5. 在列表中选择位置,并点击“跳转到”按钮。

当以刷打开新对参考话框数据时如。果参考数据不是最新的,将显示一个有关于此的信息。然后,可

位置列表 对话框中的位置列表包含下列详细资料:

  • 地址被使用的块
  • 块的符号名(如果存在的话)
  • 详细资料(例如关于位置的信息),以及指令(如果合适的话。
  • 它们取决于块或源文件(SCL)的原始编程语言)
  • 语言相关的信息 地址的访问类型:只读(R)、只写(W)、读写(RW)、未知(?)。
  • 块语言

内可容以过和其滤它位显置示的的显信示息,,例可如参,可见此以对只话视框图的对在一线个帮地助址,的其写中访提问。供了关于更详在细域的中信输息入。的

在线块调用。

注参考释数据仅离线存在。因此,该功能总是用于离线块的交叉参考,即使它是被一个

使用地址位置的示例

示希望例:确定在哪个位置置位输出 Q1.0(直接/间接)。下列在 OB1 中的STL 代码可作为程序段 1:...........

A Q 1.0 // 与本例无关

= Q 1.1 //在本示例中

程序段 2: A M1.0

赋值

A M2.0

= Q 1.0 //

程序段 3:

//仅适用于注释行SET

赋值

= M1.0 //

程序段 4: A I 1.0

赋值

A I 2.0

= M2.0 //

其结果如 Q1.0 的下列分配树所示:

,2.0

02.0

,1.0

41.0

01.0 1

然后如下进行操作:

  1. 在 LAD/STL/FBD 编辑器中,将光标置于 OB1 的 Q1.0(NW 1, Inst 1)上。

Q1.0 的所有分配情况:

  1. 对选话择框菜将单显命示令编辑 > 跳转到 > 位置或使用鼠标右键选择“跳转到位置”。

OB1 Cycle Execution NW 2 Inst 3 /= W STL

O使B用1对话C框yc中le 的Ex“ec跳ut转io到n ”按NW钮跳1 转In到st 编1 辑/A器中R的“STL ”:

3.

3.

程序段 2: A M1.0

A M2.0

现在必须检查

= Q 1.0

器中的M1.0 上。

M1.0 的所有分配:

4.

M1.0

M2.0

NW 2 Inst 3

的分配情况。首先将光标置于 LAD/STL/FBD 编辑

5. 框选将择显菜示单命令编辑 > 跳转到 > 位置或使用鼠标右键选择“跳转到位置”。对话

OB1 Cycle Execution NW 3 Inst 2 /= W STL

”按钮,跳转到编辑器中的“ ”。

在 Go To NW 3 Inst 2

  1. 始终LA是D/STL/FB,D相编反辑对器的程序的段分配3 中需,要将检看查到。对 M1.0 的分配并不重要(因为它

 

TRUE)

M2.0

 

TRUE)

M2.0

在“早于 V5 的STEP 7 版本中,将必须再次全部重新运行整个分配序列。按钮

>>”和“<<”大大简化了操作:

  1. 位将置打调开用的功对能话“框跳“转跳到转位到置位”置。”放在顶部,或在 LAD/STL/FBD 编辑器中从当前

”将被选择。

  1. 点击“<<”按钮一次或两次直到显示所有的 Q1.0 位置;最后的跳转位置“NW

2 Inst 3

2:

  1. 程使序用段“Go To”按钮(同第 3 点),从地址位置对话框跳转到“NW 2 Inst 3”:

A M1.0 A M2.0

有分对配。4 将点光中标,放已在检编查辑了器M中1.0的的分配上。,现并在调必用须功检能查“所跳有转(直到接位/间置接”)对:M将2显.0示的所

M2.0 的分配:

M2.0

:

OB1 Cycle Execution NW 4 Inst 3 /= W STL

OB1 Cycle Execution NW 2 Inst 2 /A R STL

12. 程使序用段“Go To”按钮跳转到 LAD/STL/FBD 编辑器中的“NW 4 Inst 3”:

4:

A I 1.0

A I 2.0

13. =现M在2必.0须检查

方法相同 前

I点1.0。和

I2.0

的分配。本例不描述此过程,因为它的处理与前面的

关的位置LA。D/STL/FBD 编辑器和地址位置对话框之间切换,可以搜索和检查程序中相

检查块一致性

引言 冲如突果依各次个对引起象的调用接对口象或和代被码调必用须对调象整或引扩展用块,之就可间的能块导致不一时致间,标从记而冲导突致。时大量间的标更记

正工作。

部“时检查间标块一记冲致突性”和功块能不一消致除了性中许的多大这部类分更正。在工对作象。的“块检查不一块一致性致不性”能自功能动消会除删的除情全所况有下块,不该一功能致性会的在相消除应和编辑对象器中的编找译到都要是改逐变步的完地成方,的。可在该处进行所需要的改变。

要求

较只早能的检项查目用,ST当E开P 始7 V块5一.0致,性Se检rv查ice时P,ac首k 先3 以必上须版全本面创编建译的菜项单目命的令块程一序致性全。面对编于

译 。

( >

)

对于用选项包创建的对象,必须为一致性检查安装选项包。

选中“块一致性和时间标记”作为块属性

开始块一致性检查

形在视开图始中块高一亮致度性显检示查时从,属会树检:查引块用接调口用的树时。间标记,可能引起块不一致的对象在树

单在命SI令M编AT辑IC 管理(器中,跳转到项/ 目窗口,检选查择所需要的块文件夹,然后通过菜

)

> 检查块一致性启动块一致性

1.

1.

自动识别相关对象的编程语言,并调用相应的编辑器。尽可能自动更正形视性图不中能的自所动有消对除象,自则动输重出复窗口该中过程会。显示错误消息(更多步骤参见步骤 3)。对树

2. 在“检查块一致性”中选择菜单命令程序 > 编译

致S时T间EP标7记冲突和块不一致性,并且编译对象。如果对象中的时间标记冲突或不一

  1. 口如中果作在为编错译误运消行息期标间记,。不将能鼠自标动放消在除相所应有的错块误不条一目致上性,并则使相用应鼠对标象右会键在在输弹出出窗

的式块菜不单一中致调用性,错保误存显并示关。闭打对开象相。关对的所错有误标,程记为序错跳误转的到要对改象变重复的该位置过。程消。除所有

  1. 再次开始步骤 2 和步骤 3。重复该过程,直到消息窗口中不再有错误显示。

时间标记作为块属性和时间标记冲突

以块使包用含时代间码标时记间监标视记和接口时程间序标的记一。致这性些。时间标记显示在块属性的对话框中。可列如果违例比:较时间标记时检ST测E到P 规7 则违例,STEP 7 就显示时间标记冲突。可能会发生下

  • 被调用的块比调用块(调用)更新。
  • 被引用的块比使用它的块更新。
  • 第二类违例的实例:

FC、FB 或 OB。

  • 或UDT 比使用它的块更新;即,使用变量声明表中的 UDT 的 DB 或另一个 UDT、
  • FB 比其相应的实例 DB 更新。
  • FB2 被定义为 FB1 中的多重实例,而 FB2 比 FB1 更新。

注即释使接口时间标记之间的关系是正确的,也可能发生不一致的情况:

  • 引用块接口的定义与其使用位置处的定义不匹配。

文这件些不而一未生致成性被程序认中为所是有接的口块冲时突,。就例会如发,生当。块从不同程序复制,或当编译 ASCII 源

逻辑块中的时间标记

代码时间标记

在此可输入创建块的时间与日期。对时间标记进行更新:

  • 在程序代码已修改时
  • 在接口描述已修改时
  • 在注释已修改时
  • 在首次创建 ASCII 源文件并进行编译时
  • 在块属性(“属性”对话框)已修改时

接口时间标记

对时间标记进行更新:

  • 当接口描述已修改时(数据类型或初始值发生变化,新的参数)
  • 当首次创建 ASCII 源文件并进行编译时,如果从结构上修改了接口。
  • 不对时间标记进行更新:
  • 当符号发生变化时
  • 当变量表中的注释发生变化时
  • 当 TEMP 区中进行了改动时

块的调用规则

  • 已调用块的接口时间标记必须比正调用块的代码时间标记要早。
  • 修如改果块没时有间打更开迟任的何正调调用用该块,的那块么,,则将只无能法改从变时该间块标的记接中口识。别否这则种,冲如突果。保存比已

发生时间标记冲突时的处理过程

后当,打在开调一用个块正时在对调该用块的的块所时有,调将用显示都将时按间扩标展记形冲式突显。示在。对 FC 或FB 接口进行修改之如果块的接口发生变化,则调用该块的所有块也必须进行调整。

在对 FB 接口进行修改之后,现有的多重实例定义和实例数据块都必须进行更新。

共享数据块中的时间标记

代码时间标记

对时间标记进行更新:

  • 在首次创建 ASCII 源文件时
  • 在编译 ASCII 源文件时
  • 当在对块的声明视图或数据视图中进行了改动时

接口时间标记

对时间标记进行更新:

  • 当声明视图中的接口描述发生了变化时(数据类型或初始值发生变化,新的参数)

实例数据块中的时间标记

实例数据块将保存功能块的形式参数和静态数据。

代码时间标记

际在此值时可,输将入对实例时间数据标记块进创行建更时的新时。用间户和不日能期对。当实在例数实据例块数的据结块构的进数行据修视改图,中输因为入结实

构来源于相关的功能块 或系统功能块 。

(FB) (SFB)

接口时间标记

当创建实例数据块时,将输入相关 FB 或SFB 的接口时间标记。

无冲突的打开规则

FB/SFB 的接口时间标记与其相关实例数据块必须匹配。

发生时间标记冲突时的处理过程

例如果数修据改块时了,FB将的报接告口出,现那了么一,个将时对间标FB记的冲接突口,时因间为标实记例进数行据更块新与。当打的开时相间关标的记实不例再匹数据配块。现在数在只据能块进的行声明浏览段。中,接口将用由编译器所生成的符号来显FB示(伪符号)。实

为纠正这种类型的时间标记冲突,必须重新为已修改的 FB 创建实例数据块。

UDT 中以及来源于 UDT 的数据块中的时间标记

用户自定义的数据类型(UDT)可用于创建具有同一结构的许多数据块。

代码时间标记

每次进行修改时都要对代码时间标记进行更新。

接口时间标记

的当参接数口描述发生变化时,对接口时间标记进行更新(数据类型或初始值发生变化,新

)。

在对 ASCII 源文件进行编译时,UDT 的接口时间标记也将进行更新。

无冲突的打开规则

  • 接用口户时自间定标义记数要据早类。型的接口时间标记,必须比其中使用了该数据类型的逻辑块的
  • 完用全户相自同定。义数据类型的接口时间标记,必须与来源于 UDT 的数据块的时间标记
  • 用户自定义数据类型的接口时间标记,必须比下 UDT 的时间标记要新。

发生时间标记冲突时的处理过程

STEP 7 将报告出现了时间标记冲突。

如开果时改,变了数据块、功能块、或另一个 UDT 中所使用的 UDT 定义,那么,当块打

盖UD。T 组件将显示为一个分散的结构。所有变量名称均将被系统预先设置的值所覆

对功能、功能块、或 UDT 中的接口进行纠正

下如进果行需要操作对:FB、FC、或 UDT 中的接口进行纠正,为避免出现时间标记冲突,可如

  1. 从想要改变的块中生成一个 STL 源文件,并生成所有直接或间接引用的块。
  2. 将变化保存在您生成的源文件中。

现3.

将已修改的源文件重新编译到块中。在即可保存/下载接口变化。

避免调用块时出现错误

覆盖 寄存器中的数据

STEP 7 DB执

当调用行各种不同的指令时,STEP 7 将修改 S7-300/S7400 CPU 的寄存器。例如,

时不会丢FB失时前,一D个B实和例DI 寄存的器地的址内。容将互换。这将使得打开所调用 FB 的实例DB

误如果。使在用某些绝情对况地址进行操DB作,那么地,址在寄访存问器保存以在及寄存器寄中存的器数中据的时地可址能均出将现被错覆

盖。这意味着可能下,读取寄或存器写入AR错1误( 的地址。 1) DB

危在险下列情况下可能存在对人员和财产造成损坏的危险:

  1. 使用CALL FC、CALL FB、CALL 多重实例

!

  1. 使用完整的绝对地址访问 DB (例如DB20.DBW10)
  2. 访问复杂数据类型的变量

有可能DB 寄存器(DB 和 DI)、地址寄存器(AR1、AR2)、以及累加器(ACCU1、

A此C外C,U2当)的调内用容都发生变化。

当使用上述的编FB程或方F法C时时,,必可须能确无保法自使己用保作存为和附恢加复(隐内含容);参否数则的,状可态能字发的生R错LO误位。。

保存正确数据

况如果。例使用如,缩如写果格假式访定问数据已的打绝开对地也址就,是则说D其B编寄号存已器保的存内在容可能寄导存致器出中现,危那险么情,

器中 DBX0.2 来访问DB 的 0 字节的第 2 位的数据,DB 的地址已输入到 DB 寄存

么,将(换访句问话到说错,误就的是数D据B2。0)。然而,如果 DB 寄存器包含有一个不同的DB 号,那

通过使用下列方法对数据进行寻址,可避免在访问 DB 寄存器的数据时出现错误:

  • 使用符号地址
  • 使用完整的绝对地址(例如 DB20.DBX0.2)

寄存器,必须始终将正确的地址装载到 中。

如果使用这些寻址方法,STEP 7 将自动打开正确的 DB。如果使用用于间接寻址的AR1 ARI

选中“块一致性和时间标记”作为块属性

对寄存器进行修改的情形

言只有均在不支ST持L对中地对址用寄于存间器接的寻间址接的访地问址。寄存器进行操作才是合乎逻辑的。其它编程语

正在确所有的的参数编。程语言中都必须考虑编译器对 DB 寄存器的调整,以便确保调用块时传送

所调用块的地址寄存器 AR1 和DB 寄存器的内容在下列情形下均将被覆盖:

情带形有来自

  • 将一打旦开将实际参数分配给来自 DB 的块(例如 DB20.DBX0.2),STEP 7 就后将使用DB经(调DB整2的0),并调整 DB 寄存器的内容。程序随后在块调用之

DB 进行工作。

的块时
  • 串当、块数已组经、从结FC构内或进行了的调形用式,参该数F的C 将内把容具传有送更给高所数调据用类的型块(,字在符此之后,所调用块的 UD和T) 寄存器的内容均将被修改。
  • 如果参数位于调用者的 VAR_IN_OUT 区,则也适用于 FB 内的调用。

AR1 DB

的组件时
  • 结当构FB或访问 V的AR形_I式N_参O数U的T 区组中件具时有,更高级数将据使类用型地(字址符寄串存、器数组、和

DB 寄存器。这意味着将修改两个寄存器中的内容。

UDT) STEP 7 AR1

  • 结当构FC或访问 VAR_IN_OUT 区中具有更高级数据类型(字符串、数组、

UDT)的形式参数的组件时,STEP 7 将使用地址寄存器AR1 和

DB 寄存器。这意味着将修改两个寄存器中的内容。

描述

DB 的实际参数

在调用具有更高级数据类型

当访问具有更高级数据类型

  • 能当在正版确本地传1 送的用块于中第调一用个FB布时尔,型如果或在调用之前参命数令的没实有际限参制数R。LO在,这那种么情将况不

注释

下,它将在逻辑上与现有的

IN进行组IN合_O。UT

  • 当调用FB 时(单个或多重实例RL,O 将写入地址寄存器 。

带如果参在数的FB 中修改了,地那址么寄存器) ,证例正如确通执过行操作 、 或 调用不

AR2

的 号。取而代之,它将总是得到编号 。

,将不A能R保2

FB。UC

CC

CALL (

FC/SFC)

FC/SFC)

  • 如果没有将完整的绝对 DB 地址传送给 ANY 参数,ANY 指针将不能获取打开的

DB DB 0

消息概念

设消备息的允许停工您时在间可编。程控制器工作期间,快速检测、定位和修正错误,从而显著降低在输出消息之前,必须首先组态消息。

息通。过还ST可E以P 编7,译可消以息利,用然已后分在配显的示消设息备文上本进和行消显息示属。性来创建、编辑与事件链接的消

有哪些不同的消息传送方法?

有不同的消息创建方法。

位消息传送位消息传送要求程序员执行三个步骤:

        • 在编程设备上创建用户程序,然后设置所要求的位。

(例如,M 3.1 = 限位开关电压)。

        • 位使用任意一个文本编辑器来创建分配列表,在该编辑器中将消息文本分配给消息
        • 根据分配列表,在操作面板上创建消息文本列表。

/LVW RI PHVVDJHV IRU

RSHUDWRU DQG FRQWURO PRQLWRULQJ

3URJUDP RQ WKH SURJUDPPLQJ GHYLFH

$VVLJQPHQW OLVW

的操时作标员。的接消口系息位统发会生循变环查化,询那可么编程显控示相制应器的,视消息图。消该息消位息是接否收发来生自变操化作。如员果接口可系编程统

$ ,1 1

$ 03 1

03 1 "0HVVDJH WH[W IRU /LPLW VZLWFK SUHVVXUH"

1

 

 

 

 

03 1 /LPLW VZLWFK

SUHVVXUH

1

 

 

 

 

消息号 消息号只要求程序员执行一个步骤:

时标,因此,其跟踪比位消息传送更精确。

        • 文编本程直期接间分,配在给编位程。设备上创建用户程序,设置所要求的位,然后将所要求的消息

'LVSOD\ RQ RSHUDWRU FRQWURO DQG PRQLWRULQJ V\VWHP

"0HVVDJH WH[W IRU

/LPLW VZLWFK SUHVVXUH"

3URJUDP LQ SURJUDPPDEOH FRQWUROOHU
$ ,1.1

$ 03.1 "0HVVDJH WH[W IRU &$// PHVVDJH /LPLW VZLWFK SUHVVXUH"

EORFN

可送到程控操制器员接不进口行系统循环然查后询显。当相可应编的程文控本制器消息信。号消发息生接变收化时来自,可相编应程的控消制息 的就

选择一种消息传送方法

概述 下表显示了不同消息传送方法的属性和要求:

消息号

  • 消在息编程设备和操作面板的公用数据库中管理
  • 信总号线上的负载为低(可编程控制器发布激活
  • 消息接收来自可编程控制器的时标

)

  • 编程设备和操作面板没有公用数据库
  • 总线上的负载为高(操作面板轮询)
  • 消息接收来自操作面板的时标

位消息传送

消息号方法识别下列三种类型的消息:

与块有关的消息 与符号有关的消息 用户自定义的诊断消息

  • 与程序同步
  • 适使用于WinCC 和ProTool (仅

ALARM_S)显示

  • 可用于S7-300/400
  • 通过消息块编程:
    • ALARM
    • ALARM_8
    • ALARM_8P
    • NOTIFY
    • NOTIFY_8P
    • ALARM_S(Q)
    • AR_SEND
  • 传送到操作面板
    • ALARM_D(Q)
    • 对于WinCC,通过AS-OS 链接组态
    • 对于ProTool,通过

ProTool 功能

  • 与程序异步
  • 通过WinCC 显示
  • 只能用于S7-400
  • 通过符号表组态
  • 到通过系统数据块(SDB)下载
  • 到通操过作AS面-O板S 链接组态传送

PLC

  • 与程序同步
  • 示在编程设备的诊断缓冲区中显
  • 可用于S7-300/400
  • 通过消息块(系统功能)编程
  • 不传送到操作面板

- WR_USMSG

设ST备EP中7组只态支位持消用息户传界送面,更也友在好此的进消行息描号述方。法,下文将详细描述该方法。在人机界面

消息号方法实例

消与息块传有送关方的法消息与用符户号自有定关义的消消息息

值用于报告与程序无关的事件,例如,受监视的开关设置

应用用于报告程序同步事件,例如,用于显示控制器已经到达限制用于报告每次调用SFC 时,诊断缓冲区中的诊断事件

SIMATIC 组件

概述 下图给出了在组态和显示消息中所涉及的 组件概况。

SIMATIC

&RQILJXULQJ/&UHDWLQJ 0HVVDJHV

'LVSOD\LQJ 0HVVDJHV

3*

STEP 7 V5.4 编程手册-91 STEP 7 V5.4 编程手册-92 STEP 7 V5.4 编程手册-93

6.$/6&/

6\PEROV

3',$*

&)&

'DWD WUDQVIHU

23/26

STEP 7 V5.4 编程手册-94

3*

67-*5$3+

&38 0HVVDJHV

:LQ&& 3UR7RRO

/RDG SURJUDP/6'%

67-300

0HVVDJH IUDPHV/ PRGXOH GDWD

0RGXOH

,QIRUPDWLRQ

消息组成

67-400

消息的显示方式取决于消息传送方法、所使用的消息块以及显示设备。下表列出了消息的可能组成部分:

组时成标 发描生述消息事件时,在可编程控制器中生成

配,用于CP识U别( 消息。 CPU)

消相息关状值态

映像

消 息 号 消息文本

可给为一下些列消状息态分配:进由入所、使离用开的、消无息应块答评离估开的、过有程应值答离开

如项果目系或统崩溃面,向那项么目随或后面可向在操作员中站的上唯显一示编所号发。生该的编消号息由。系统分由用户组态

实例 下面的实例显示了操作面板上的一个报警消息。

0HVVDJH QXPEHU

0HVVDJH VWDWXV

7LPH VWDPS

0000049 . 11:32:00 27.03.98

7DQN SUHVVXUH WRR KLJK: 12,7 EDU

0HVVDJH WH[W $VVRFLDWHG YDOXH

有哪些消息块可供使用?

可以在下列消息块中选择,其中每个消息块都包含一个已编程的消息功能:

        • SFB 33:“ALARM”
        • SFB 34:“ALARM_8”
        • SFB 35“ALARM_8P”
        • SFB 36“NOTIFY”
        • SFC 18:“ALARM_S”和 SFC 17:“ALARM_SQ”
        • SFB 37:“AR_SEND”(用于发送归档;不能组态消息文本和消息属性)
        • SFB 31:“NOTIFY_8P”
        • SFC 107:“ALARM_DQ”

在线帮助 细信息。

        • 可从S块F的C 108:“A中LA得R到M详_D”

这些消息块分别在什么情况下使用

下表有助于您为特定的任务选择消息块。根据下列事项选择消息块:

        • 块中可使用的通道数目以及每个块调用监视的信号数目
        • 消息是否需要应答
        • 同时能指定相关值的选项
        • 使用的显示设备
        • 使用的CPU 的项目数据。

消息块 通道 应答 相关值 W显i示nCC

P显r示oTool

CPU 消息

/显S7示

状态

消息

PLC 说明

ALARM SFB33

1 可以 最大为

10

是 否 否 S7-400 在每个沿进发入送或一离个

ALARM_8 SFB34

8 可以 否 是 否 否 S7-400 在一个或多个信或

离个开消边息沿发送一

ALARM_8P SFB35

NOTIFY

8 可以 最大为

1 否 1最0大为

是 否 否 S7-400 同ALARM_8

是 否 否 S7-400 同ALARM

SFB36 NOTIFY_8P 8

SFB 31

AR_SEND 1 SFB37

否 1最0大为 是 否 否

10 是 否 否

S7-400 S7-400

同 NOTIFY

用息于文发本送和一消个息归消属

调用,且

ALARM_SQ SFC17

1 可以 1 是 是* 是 S7-300/

S7-400

每次当出现

S与F上C次 调

用相 ,变SF信时C号,发生

ALARM_S 1 否 1 是 是* 是 S7-300/

成一条消息

ALARM_SQ

SFC18 ALARM_DQ 1

SFC 107

ALARM_D 1

*取决于 类型

可以 1

否 1

是 是 是

是 是 是

S7-400

S7- 300/400

S7-

同ALARM_SQ

同ALARM_SQ

SFC 108

OP

300/400

形式参数、系统属性和消息块

作为消息号输对入于每的个形消式息参或数消息组,在程序中需要一个形式参数,在程序变量概述中将其指定如何为形式参作数为启提动供消系息统组属态性的前提条件,首先必须按如下方式为形式参数提供系统属性:

为 参数。然后该形式参数用作消息号输入,构成消息基础。

IN

  1. 给参数添加下列系统属性:“S7_server”和“S7_a_type”
  2. 始将终值为分“配给对应于程序”代,码而中“所调用的消息”块的的值系与统所属调性用。的“消S息7_块se一rv致er。”的值

alarm_archiv

S7_a_type

系统属性和相消应息块的本消身息在块消息服务器中不作为对象显示;相反,显示包含系统属性

例外:“ ” 。

“ ”的相应值。这些值的名称与作为 或 存在的消息块名称相同

S7_a_type SFB SFC

( alarm_s )

消息块 描述 属性

S7_a_type
alarm_8 ALARM_8 SFB34
alarm_8p ALARM_8P SFB35
notify NOTIFY SFB36
alarm ALARM SFB33
alarm_s ALARM_S SFC18
alarm_s ALARM_SQ SFC17
ar_send AR_SEND SFB37
notify_8p NOTIFY_8P SFB 31
alarm_s ALARM_DQ SFC 107
alarm_s ALARM_D SFC 108

8 个通道、有应答、无相关值

8 个通道、有应答、每个通道最多 10 个相关值

1 个通道、有应答、最多 10 个相关值个通道、有应答、最多 个相关值

1 个通道、无应答、最多 1 个相关值

1 个通道、无应答、最多 1 个相关值

1 个通道、无应答、最多 10 个相关值

1用于发送一个归档 1

8 个通道、无应答、最多 10 个相关值

1 个通道、无应答、最多 1 个相关值

如可果以程在序系中统使属用性的消息在块线的帮是助具中有得相到应详系细统信属息性。的 或 ,那么自动分配系统属

性,并作为多实例调用。

SFB FB

消息类型和消息

的消消息组息态类型允块许。使用不同的过程来创建消息类型或消息。这取决于用于访问消息组态

消息类型块可以是功能块(FB)或实例数据块。

        • 具通有过该FB消,息可类以型创具建有一的个所消有息条类目型。,如并果可给作功为能创块建分消配息了的实一例个数类据型块。,消那息么会实自例动数

据块的消息会根据消息类型和已有的消息号自动生成。

对于实例数据块,基于有特定实例的消息类型生成的消息是可以修改的。

此•

处的显著区别是消息号是分配给消息而不是消息类型的。

锁定消息类型数据

特通定过显消示息组设备态可上的以显给示与方事式件。有使关用的消息类输型入可文以本和更方属性便地。生例成如,消息还。可以指定消息在

        • 时当,为在消输息入类框型旁输边入添数加据一(属个性钥和匙文符本号)时,,或可在以“选锁择定是”否栏锁放定置这一些个数复据选。标属记性。锁锁定定

文本在“锁定”栏中显示一个复选标记。

        • 对于有“锁定数据”的消息类型,就不能修改特定实例消息。只能显示数据。
        • 改如不果应的用确于需修要改修之改前,生那成么的必实须例返。回到消息类型,删除锁定,然后进行修改。该修

修改消息类型数据

分对消配给息类项目型数面据向的项修目改的是消否息会号影或响实例,面是向取决于的生消成息项号目时。,是否将消息号全局

须分相配应面向( 项目的消息号:希) 望后CP来U的( 修改C能P应U用到实例的) 消息类型数据时,也必

地在实例中修改数据。

        • 例分外配:面先向前CP您U已的经消在息实号例:中消修息改类了型数数据据或后随来后的对修消改息能类自型动数应据用进到行实锁例定中或。解除闭类型的方CP式U相的同消。息号的项目中,那么修改实例中的数据的方式必须与修改消息

有锁面。向如果将一个功能块和一个实例 DB 从具有面向项目的消息号的项目复制到具

警告:

        • 将补实救例,复请制将到消另息一类个型程复序制到且不新含程消序息中类。型时,可能只能部分显示该实例。为进行
        • 组如态果在以消绿息色类显示型中实的例文的本文和本消和属息性。,它们那没么有表在示下实列例中含被义修:改这。些文本和消息仍然为

如何从消息类型块中生成 STL 源文件

从消息文本块中生成 STL 源文件时,组态信息也将写入到源文件。

该信息写入到一个以“*$ALARM_SERVER”开头,以“*”结尾的伪注释中。

当设心置块的符号参考时,请注意在编译源文件之前可能无法修改符号表。

删当除源具文有件消包含息属多性个的块单时个,块多。个伪注释块组合形成一个注释块。不能从 STL 源文件中

分配消息号

编人号机需界要面CP重U新分编配译消。息只号能的给优安点装在“于允许复制一”个和程序或而“无需修改消息号”,应但用是程修序改的

号可。以给指定是否给项目(面向项目的消息号)或给 CPU(面向 CPU 的消息号)分配消息

选择项目的设备消息上号的。CPU 显示消息号W。in如CC果V使6用.0这些/应用程Pr序oT的oo较l V早6版.0本,那么必须

基于项目和基于 CPU 的消息号分配之间的差别

下表列出基于项目和基于 CPU 的消息号分配之间的差别:

面向项目 面向 CPU

一元些,消必息须属面性向和特文定本的取显决示于器所进使行用组的态。HMI 单 分必息配输。的入属更性多和显文示本设不备依,赖或于为所该使设用备的规定HM特I定单的元显,示即消,不程序可复制到项目的其它位置和到其它项目 跨项目复
制译。)。然而,如果仅复制了单个块,则程序必须重新编

(

必当须随也后修改改变实消例息。类型数据(文本和属性)时, 自如动果应随用后于改实变例消息例类外型:数已据事(先文改本变和了属实性例),的所数有据的改。变都

程序在复制后必须重新编译。

文本只能写在一行中。 文本可以写在多(行中。 )

用于修改项目的消息号分配的选项

和在库SI时M所AT采IC用管的理方器式的菜“单消命息令号选”项标签自中定,义您可。以在预该先标设签置中把,消您息将号确分定配是给只未把来消项息目号

配分,配那给么CP,U您(面也向可以(选择,“还始是终只询分问>配设给置项”目。) 面向项目 。如果您希望日后指定分

CPU)

(

)

那如么果在,您创就建不项再目或能库改变时该,项最目初或设库置的消默认息号值分“配面向的类CP型U。”或“面向项目”已激活,分如配果,您那已么经,设置可以“按面如向下项所目述”的进行唯操一作消:息号分配,并希望设置“面向 CPU”的唯一

  1. 在 SIMATIC 管理器中,选择相应的项目或库。
  2. 选择菜单命令文件 > 另存为。
  3. 在下一个对话框中启用“重新配置”复选框,并输入新的名称。
  4. 使用“另存为”启动处理过程,并使用“确定”对条目进行确认。

您5. CPU

在随后出现的某个对话框中,您可以指定“面向 ”的唯一消息号分配。可以使用文件 > 删除命令删除原来的项目或库。

组态消息

面向项目的消息组态

如何分配面向项目的消息号

程序分配一个编号范围。如果复制一个程序,并由此产生冲突 即如果已经

由项目中唯一的编号来识别消息。为此,在总的可用范围(1 - 2097151)内,给每个

出在ST现目EP该标7范围内分配相同的消息号 那么必须给新程序分配一个新的编号范- 围。如果

如果没情况,那么 STEP 7 会自动- 打开一个可以指定新编号范围的对话框。

设置或修有组改态任何消息,那么也可以使用菜单命令编辑 > 特殊对象属性 > 消息号来

程序的编号范围。

默认情况 S7下,

消息号范围以 20,000

分配和编辑与块有关的消息

的步长进行分配。

功将能与块有关的消息分配给块(实例 DB)。要创建一个与块有关的消息,可以使用系统

(SFB)和系统功能(SFC)作为消息块。

如何创建与块有关的消息(面向项目)

基本过程

6HOHFW D VXLWDEOH PHVVDJH EORFN IRU \RXU WDVN.

3URJUDP DQ )% DV D PHVVDJH W\SH EORFN.

6HOHFW WKH IXQFWLRQ EORFN ()%) WR ZKLFK \RX ZDQW WR DVVLJQ WKH PHVVDJH DQG RSHQ LW.

)LOO RXW WKH YDULDEOH GHFODUDWLRQ WDEOH. 3URJUDP WKH FDOO IRU WKH PHVVDJH EORFN LQ WKH FRGH VHFWLRQ RI WKH )%.

&DOO XS WKH PHVVDJH FRQILJXUDWLRQ (VWDQGDUG GLDORJ ER[ RU 3&6? PHVVDJH FRQILJXUDWLRQ)

&UHDWH WKH PHVVDJH WHPSODWH ZLWK WH[WV, DWWULEXWHV, DQG GLVSOD\ GHYLFHV LQ WKH )%.

$VVRFLDWH LQVWDQFH '%V ZLWK WKH )% DQG FKDQJH WKHVH DFFRUGLQJ WR \RXU UHTXLUHPHQWV.

7UDQVIHU WKH GDWD \RX FRQILJXUHG WR WKH :LQ&&

GDWDEDVH.

编程消息类型块(FB)

          1. 开在该SI块M。ATIC 管理器中,选择要生成与块有关的消息的功能块(FB),然后双击打

结果:在“LAD/STL/FBD”窗口中打开并显示选中的块。

          1. 变填量写。变量声明表。对于功能块中调用的每个消息块,必须在调用的功能块中声明

在变量一览表中输入下列变量:

- 消在息“输IN入”参数,中以,及填数入据符类号型名作必为须消为息没块有的初输始入值,的例“如,“Me”ld0。1”(用于的数据类ST型AT,”在参本数例,中填为入“待调用消”息。块的符号名,例如,“alarm”和相应

SFB33

          1. 用在回功车能完块成的输代入码。部分,插入选中消息块的调用,在此为“CALL alarm”,然后

结将果在:第在功能块的代码部分显示所调用消息块(此处为 SFB33)的输入变量。

EV_ID”。现在,系统属性就自动应用于“alarm”类型的消息。

“ 2 步中分配好的消息块输入符号名(此处为“Mess01”)分配给变量

4.

记结果。:然后如,果选没中有的选块择被该设栏置,为那么消息在类参型数块“。IN并”的且自“动名分称配”所栏要中应求的该系出统现属一性个标例

手如,动分S7配_s参er数ve“r 和 ”S7的_a系_t统yp属e)性以。及为相此应,的选值择(注菜意单:命对令于编特辑定的对系象统属功性能,,然需(后要

选择“属性”标I签N。 。 >

)

)

在警调告用:块如中果组没态有该调用 SFB,而调用包含多实例和已组态消息的 FB,那么也必须

5. 对该功能块中消息块的所有调用重复步骤 2 - 4。

FB(带多实例)的消息。

  1. 使用菜单命令文件 > 保存保存块。

关闭“ ”窗口。

  1. LAD/STL/FBD

打开消息组态对话框

> 消息。

  • 在性SIMATIC 管理器中选择期望的消息块,然后选择菜单命令编辑 > 特殊对象属

PCS7 消息组态功能的相关信息。

打结开果:打开 STEP 7 消息组态对话框(标准对话框)。可在 PCS7 消息组态下查找

编辑消息类型

1.

2.

求选的择消期息望文的本消或息选块择,所打要开求消的息消组息态属,性然。后在“文本”和“属性”标签中输入所要配如果给选每个择子一编个号多,通在道一消定息块程度(例上如,,也“可A以LA将RM特_定8”属)性,分那配么给,每可个以子将编特号定。文本分

备在,“可添将加所显要示求设的备显”示对设话备框分中配点给击消“息新类设型备。”按钮,然后选择所要求的显示设

框在。下列标签页中,输入显示设备所要求的文本和属性。点击“确定”,退出该对话

注在释编辑显示设备特定的文本和属性时,请阅读随同显示设备提供的文档。

创建实例数据块

  1. 编创辑建特消定息实类例型的后消,息可。以将实例数据块与该消息类型关联,然后可以给这些数据块

“为此,在 SIMATIC 管理器中双击,打开调用已组态好的功能块的块,例如

的确名O认B称81和”编。号在,O以B及的想开要放关式联代到码这部个分功,能输块入的调实用例(“CA的LL名”称),和要编调号用。的通功过能回块车

输入。

DB

编辑消息

的实提例示:确输认入为““CA是LL”F。B1, DB1”。如果不存在DB1,则对是否需要创建实例 DB

“结果:创建实例 DB。在 OB 代码部分,显示关联 FB 的输入变量,本例中为

Mess01”,以及由系统分配的消息号,本例中为“1”。

  1. 通过菜单命令文件 > 保存保存 OB,然后关闭“LAD/STL/FBD”窗口。
    1. 命在令SI编M辑ATIC特管殊理对器象中属,性选择消已息生来成打的开实消例 DB,例如“DB1”,然后调用菜单

>

>

息组态对话框。

2.

传送组态数据

统结分果配:的打消开息“号消。息组态”对话框,然后显示选中的实例 DB,这些数据块包含系备在。相点应击的“标确签定中”输,入退相出关该联对实话例框DB。所要求的修改,并根据需要添加其他显示设

结果:完成了所选实例 DB 的消息组态。

  • 将已组态的数据传送到 WinCC 数据库(通过 AS-OS 链接组态)或 ProTool 数据库

如何编辑与块有关的消息(面向项目)

          1. 消在息SI。MATIC 管理器中,选择一个块,然后选择菜单命令编辑 > 特殊对象属性>
          2. 在文件夹结构中,点击一个消息块输入或其中一个子编号(如果有的话)。

结果:显示标准消息的标签部分。

          1. 在“文本”和“属性”标签中输入所要求的文本和属性。

结果:已经创建了一个可以在所有显示设备上显示的标准消息。

          1. 设使备用。“只新能设选备择”可按显钮示,已添组加态一消个息“的Pr那oT些oo显l(O示p设x)备”。或“WinCC”类型的新显示

结果:添加并选择新设备,然后显示相应的标签部分。

          1. 在特定显示的“文本”和“属性”标签中输入特定显示消息的属性和文本。

结果:已经创建了一个仅在所选的显示设备上作为消息使用的消息变量。如果希望编辑已存在的显示设备的其它消息变量:

  • 在详细视图中通过双击选择并打开消息块。

结果:自动选择第一个显示设备,现在可以为其编辑显示专用的消息变量。

如何组态 PCS 7 消息(面向项目)

态要功编能辑在提供W一inC种C用显户示界设面备友上好输的出方的法消:息类型和消息时,STEP 7 中的 PCS7 消息组

  • 简化显示设备组态(自动创建)
  • 简化消息属性和文本输入
  • 确保消息是标准化的。

打开 PCS7 消息组态功能

          1. 令在编SI辑MAT对IC象管属理性器来中打,开选输择入希系望统编属辑性其的消对息话文框本。的块(FB 或DB)。选择菜单命
          2. 在所示的> 表中,输入系统属性“S7_alarm_ui”和值:“ ” 值为 表示禁止

相PC应S7 消息组态工具)。可在 LAD/STL/FBD 中设置属性参1数。( 之后0生成并分配给

FB 的 DB 自动接受这些属性,并且可独立于其消息类型(FB)进行转换。

注输释入系统属性时,执行语法检查。以红色高亮显示错误的输入。

  1. 点击“确定”,退出该对话框。
  2. 选择菜单命令编辑 > 特殊对象属性 > 消息

结果:打开“PCS7 消息组态”对话框。

编辑消息类型

1.

组在态SI对M话AT框IC。管理器中,选择希望编辑其消息文本的 FB,然后打开 PCS7 消息

结果:该对话框为每个在 FB 中有变量声明的消息块显示一个标签。

  1. 填写消息组件“来源”、“操作员站区”和“批处理标识符”的文本框。
  2. 答给每所个使事用件消。息块的所有事件输入消息等级和事件文本,然后指定是否必须单独应
  3. 对于用于所有实例并禁止修改的消息部分,选择“锁定”复选框。

编辑消息

  1. 消打息开组SI态M功AT能IC。管理器。选择希望编辑其消息文本的实例 DB,然后打开 PCS7
  2. 不要编辑没有锁定的与实例有关的消息部分。

分配和编辑与符号相关的消息

        1. 如何分配和编辑与符号有关的消息(面向项目)

址与符:输号入有关、的输消出息(SC和AN位)存是储直器接分配。给可符以号通表过中消的息信组号态的功。能允给许这信些号信都号是分布配尔不型同地

中的选属择性信、号消(I)。息文本(以Q及) 高达 个(相M)关值。通过设置过滤器,可以更方便地在符号表

10

CPU

基本过程

是使用否一发生个变与符化。号有关的消息,可以在预设的时间间隔内扫描一个信号,确定该信号

注时间释间隔取决于所使用的 。

&UHDWH WKH V\PERO WDEOH IRU \RXU 67 SURJUDP XVLQJ WKH 6\PERO (GLWRU.

6HOHFW D V\PERO IRU ZKLFK \RX ZDQW WR FUHDWH D

PHVVDJH.

2SHQ WKH PHVVDJH FRQILJXUDWLRQ GLDORJ ER[ DQG FUHDWH D PHVVDJH.

*HQHUDWH WKH V\VWHP GDWD EORFNV (6'%V).

$VVLJQ D GLVSOD\ GHYLFH WR WKH PHVVDJH.

间在间处隔理过进行程中扫描,已。经在组所分态配消的息显的示信设号备和上程显序示的消扫息描。是异步的。该信号以已设定的时

当如心果希望分配或编辑与符号有关的消息,且在同一个工作过程中,先前已经在两个

消符息号组表态之。间在复特制定了条符件号下,,那么消息需组要态首先对话关闭框中不最再后操一作个的输符入号将表。丢失否。则,将不能保存

创建和编辑用户自定义诊断消息

建使的用相此应功消能,息。可用以户在自诊断定义缓冲诊断区消中息写通入过用系户统条功目能,并发送在消息组态应用程序中创

为Cla它s分s A配o事r B件)创建。,该功能用作消息块。必须在用户S程FC序52中(插W入R_USMSG的; E调rr用or,并

SFC52

ID

要求 在创建用户自定义诊断消息前,必须做好以下事项:

  • 在 SIMATIC 管理器中创建项目
  • 在项目中创建希望为其分配一个或更多消息的 S7/M7 程序。

基本过程 要创建和显示用户自定义诊断消息,按如下操作:

,Q WKH 6,0$7,& 0DQDJHU, VHOHFW WKH UHTXLUHG 67 SURJUDP DQG VWDUW WKH PHVVDJH FRQILJXUDWLRQ DSSOLFDWLRQ.

&UHDWH D QHZ PHVVDJH ZLWK PHVVDJH QXPEHU, PHVVDJH QDPH (LGHQWLILFDWLRQ), DQG

WH[WV.

(QWHU WKH PHVVDJH LQ WKH GLDJQRVWLF EXIIHU RI WKH &38 YLD WKH 6)& 52 FDOO.

'LVSOD\ WKH PHVVDJHV \RX KDYH FUHDWHG YLD "&38 PHVVDJHV."

组态消息

面向CPU 的消息组态

如何分配面向 CPU 的消息号

分由配一个面向唯项一目编消号标息号识的CP是U,消没息有。必这要通给过新给程每序个分C配P新U的分编配号一区个。编因号此区不实要现求。重不新同编于息译号程。序。请注意复制单个块的特例:此时,必须重新编译程序,以实现已修改的消

要求

        • WinCC V6.0
        • ProTool V6.0

分配和编辑与块有关的消息

        1. 如何创建与块有关的消息(面向 CPU)

操作流程

6HOHFW D VXLWDEOH PHVVDJH EORFN IRU \RXU WDVN.

3URJUDP DQ )% DV D PHVVDJH W\SH EORFN.

6HOHFW DQG RSHQ WKH )% WR ZKLFK \RX ZDQW DVVLJQ WKH PHVVDJH.

)LOO RXW WKH YDULDEOH GHFODUDWLRQ WDEOH. 3URJUDP WKH FDOO IRU WKH PHVVDJH EORFN LQ WKH LQVWUXFWLRQ OLVW RI WKH )%.

&DOO PHVVDJH FRQILJXUDWLRQ GLDORJ (6WDQGDUG GLDORJ RU 3&6? PHVVDJH FRQILJXUDWLRQ).

,Q WKH )%, FUHDWH WKH PHVVDJH W\SH ZLWK WH[WV DQG

DWWULEXWHV.

$VVLJQ LQVWDQFH '%V WR WKH )% DQG PRGLI\ WKHP DV UHTXLUHG.

7UDQVIHU WKH FRQILJXUHG GDWD WR WKH :LQ&& GDWDEDVH.

编程消息类型块(FB)

          1. 开在该SI功M能AT块IC 管理器中,如果要为功能块生成一个与块有关的消息,那么双击打

结果:在“LAD/STL/FBD”窗口中打开并显示选中的块。

          1. 相填应写的变变量量声。明表。对于在功能块中调用的每个消息块,必须在调用功能块中声明

在变量一览表中输入下列变量:

(FB)。

- 消在息“输IN入”参数,中以,及填数入据符类号型名作必为须消为息没块有的初输始入值,的例“如,“Me”ld0。1”(用于的数据类ST型AT,”在参本数例,中输为入“待调用消”息。块的符号名,例如,“alarm”和相应

SFB33

          1. 用在回功车能完块成的输代入码。部分,插入选中消息块的调用,在此为“CALL alarm”,然后

结果:在功能块的代码部分显示所调用消息块(在此为 SFB 33)的输入变量。

EV_ID”。

          1. “将在第 2 步分配给消息块输入的符号名(在此为“Mess01”)分配给变量

记结。果然:后如,果选没中有的选块择被该设栏置,为那消么息在类参型数块“。IN并”且的自“动名分称配”所栏要中求应的该系出统现属一性个标例

手如,动分S7配_s参er数ve“r 和 ”S7的_a系_t统yp属e)性以。及为相此应,的选值择(注菜意单:命对令于编特辑定的对系象统属功性能,,然需(后要

选择“属性”标I签N。 。 >

)

)

块警中告组:态如该果调用包含多实例和已组态消息的 FB 而不是SFB,那么也必须在调用

FB 的消息。

          1. 对该功能块中所有消息块的调用重复步骤 2 - 4。
          2. 使用菜单命令文件 > 保存保存块。
          3. 关闭“LAD/STL/FBD”窗口。

打开消息组态对话框

> 消息。

编辑消息类型

性在 SIMATIC 管理器中选择期望的消息块,然后选择菜单命令编辑 > 特殊对象属

打结开果:打开 STEP 7 消息组态对话框。可在 PCS7 消息组态(面向 CPU))下查找

PCS7 消息组态功能的相关信息。

  • 选择期望的消息块。
  • 在“相消应息的组栏态中”输对入话所框要中求,的点文击本“或更选多择”所按要钮求,的然属后性在。“默认文本”标签中输入

消如息果文选本择和一附个加多文通本道。消息块 例如,“ ” ,那么可以将特定文本分配

给每个子编号,并在一定程度( 上,可以A将LA特RM定_属8 性)分配给子编号。

  • 如果实例的文本或属性禁止修改,那么请在消息类型中锁定它们。

创建实例数据块

  1. 编创辑建特消定息实类例型的后消,息可。以将实例数据块与该消息类型关联,然后可以给这些数据块

“为此,在 SIMATIC 管理器中双击,打开调用已组态好的功能块的块,例如

的确名O认B称81和”编。号在,O以B及的想开要放关式联代到码这部个分功,能输块入的调实用例(“CA的LL名”称),和要编调号用。的通功过能回块车

输入。

DB

编辑消息

的实提例示:确输认入为““CA是LL”F。B1, DB1”。如果不存在DB1,则对是否需要创建实例 DB

“结果:创建实例 DB。在 OB 代码部分,显示关联 FB 的输入变量,本例中为

Mess01”,以及由系统分配的消息号,本例中为“1”。

  1. 通过菜单命令文件 > 保存保存 OB,然后关闭“LAD/STL/FBD”窗口。
    1. 命在令SI编M辑ATIC特管殊理对器象中属,性选择消已息生来成打的开实消例 DB,例如“DB1”,然后选择菜单

>

>

息组态对话框。

统结分果配:的打消开息“号消。息组态”对话框,然后显示选中的实例 DB,这些数据块包含系

    1. 备在。相点应击的“标确签定中”输,入退相出关该联对实话例框DB。所要求的修改,并根据需要添加其他显示设

结果:完成了所选实例 DB 的消息组态。

注释

态如在果以消息绿类色型显示中的实文例本的和文本消息和。属它性,们没那么有在表示实下例中列被含修义改:这。些文本和消息仍然为组

传送组态数据

  • 将已组态的数据传送到 WinCC 数据库(通过 AS-OS 链接组态)或 ProTool 数据库

如何编辑与块有关的消息(面向 CPU)

          1. 态选。择一个消息块,然后选择菜单命令编辑 > 特殊对象属性 > 消息来调用消息组
          2. 还在可“以默点认击文“本更”多和”“按附钮加,文在本“”默栏认中文输本入”所和要“求附的加文文本本。”对话框中输入所要求

( )

的文本 带换行符 。

结果:已经创建了一个标准消息。

注释

态如在果以消息绿类色型显示中的实文例本的和文本消息和。属它性,们没那么有在表示实下例中列被含修义改:这。些文本和消息仍然为组

如何组态 PCS 7 消息(面向 CPU)

PCS7 消息组态功能提供一种用户界面友好的方法:

的对于编辑在 WinCC 显示设备(从 V6.0 版本起)上输出的消息类型和消息,STEP 7 中

  • 简化的显示设备组态
  • 简化的消息属性和文本输入
  • 确保消息是标准化的。

打开 PCS7 消息组态功能

          1. 令在编SI辑MAT对IC象管属理性器来中打,开选输择入希系望统编属辑性其的消对息话文框本。的块(FB 或DB)。选择菜单命
          2. 在所示的> 表中,输入系统属性“S7_alarm_ui”和值:“ ” 值为 表示禁止

相PC应S功7 消能息块组的态数工据具块)自。动可接在受LA这D些/S设TL置/F,B并D 中可设使置用属各性自参的1数属。性( 之设后置0生做成一并些分独配立给于

消息类型 的改变。

(FB)

注输释入系统属性时,执行语法检查。以红色高亮显示错误的输入。

  1. 点击“确定”,退出该对话框。
  2. 选择菜单命令编辑 > 特殊对象属性 > 消息

结果:打开“PCS7 消息组态”对话框。

编辑消息类型

1.

2.

3.

组在态SI对M话AT框IC。管理器中,选择希望编辑其消息文本的 FB,然后打开 PCS7 消息和点“击批“处更理多标”识,符打”开的“文消本息框文。本块”。填写消息组件“来源”、“操作员站区”答给每所个使事用件消。息块的所有事件输入消息等级和事件文本,然后指定是否必须单独应

4. 对于用于所有实例并禁止修改的消息部分,选择“锁定”复选框。

编辑消息

  1. 消打息开组SI态M功AT能IC。管理器。选择希望编辑其消息文本的实例 DB,然后打开 PCS7
  2. 不要编辑没有锁定的与实例有关的消息部分。

分配和编辑与符号相关的消息

        1. 如何分配和编辑与符号相关的消息(CPU 范围)

址与符:输号入有关、的输消出息(SC和AN位)存直储接器分配给。符可号以表通中过的消一息个组信态号功。能允给许这信些号信都号是分布配尔不型同地

中的选属择性信、号消(I)。息文本(以Q及) 高达 个(相M)关值。通过设置过滤器,可以更方便地在符号表

10

CPU

基本过程

是使用否一发生个变与符化。号有关的消息,可以在预设的时间间隔内扫描一个信号,确定该信号

注时间释间隔取决于所使用的 。

&UHDWH WKH V\PERO WDEOH IRU \RXU 67 SURJUDP XVLQJ WKH 6\PERO (GLWRU.

6HOHFW D V\PERO IRU ZKLFK \RX ZDQW WR FUHDWH D

PHVVDJH.

2SHQ WKH PHVVDJH FRQILJXUDWLRQ GLDORJ ER[ DQG FUHDWH D PHVVDJH.

*HQHUDWH WKH V\VWHP GDWD EORFNV (6'%V).

间在间处隔理过进行程中扫描,已。经在组所分态配消的息显的示信设号备和上程显序示的消扫息描。是异步的。该信号以已设定的时

当如心果希望分配或编辑与符号有关的消息,且在同一个工作过程中,先前已经在两个

消符息号组表态之。间在复特制定了条符件号下,,那么消息需组要态首先对话关闭框中不最再后操一作个的输符入号将表。丢失否。则,将不能保存

创建和编辑用户自定义诊断消息

建使的用相此应功消能,息。可用以户在自诊断定义缓冲诊断区消中息写通入过用系户统条功目能,并发送在消息组态应用程序中创

为Cla它s分s A配o事r B件)创建。,该功能用作消息块。必须在用户S程FC序52中(插W入R_USMSG的; E调rr用or,并

SFC52

ID

要求 在创建用户自定义诊断消息前,必须做好以下事项:

  • 在 SIMATIC 管理器中创建项目
  • 在项目中创建希望为其分配一个或更多消息的 S7/M7 程序。

基本过程 要创建和显示用户自定义诊断消息,按如下操作:

,Q WKH 6,0$7,& 0DQDJHU, VHOHFW WKH UHTXLUHG 67 SURJUDP DQG VWDUW WKH PHVVDJH FRQILJXUDWLRQ DSSOLFDWLRQ.

&UHDWH D QHZ PHVVDJH ZLWK PHVVDJH QXPEHU, PHVVDJH QDPH (LGHQWLILFDWLRQ), DQG

WH[WV.

(QWHU WKH PHVVDJH LQ WKH GLDJQRVWLF EXIIHU RI WKH &38 YLD WKH 6)& 52 FDOO.

'LVSOD\ WKH PHVVDJHV \RX KDYH FUHDWHG YLD "&38 PHVVDJHV."

组态消息

编辑消息时的提示

向消息添加相关的值

文要本将中当的前任信息意点(如插来入自相某关个的过值程。)添加到与块相关的和符号相关的消息中,可以在消息

要添加值,如下进行操作:

1. 创建具有下列结构的块:

@<相关值的编号><元素类型><格式代码>@。

2. 将这个块插入到消息文本中要显示相关值的位置处。

元素类型 此参数为相关值的数据类型分配唯一的标识:

元素类型 数据类型

Y BYTE
W WORD
X DWORD
I Integer
D Integer
B BOOL
C CHAR
R REAL

元素类型仅指定由 PLC 传送的数据类型。它不作为操作数使用。

格式代码

消这些息代文本码,指有定下相列关固值定在的显示消息设代备上码:的输出格式。格式指令由“%”符号引入。对于

格式代码

描述

具有 i 索引的无符

i

十六进制值

具十有进制i 索值引的有符号具有

十进制值

数 定点数

dddd:一个或多个数字,小数点后 y 位,共 i 位

( 数,格) 式为

i 索引的二进制值

[ - ]dddd.dddd

%[i]s

%t#<文本库的名称>

字符被打印到第一个 0 字节

i 位字符串(ANSI 字符串

)

访问文本库。

(十六进制 00)。

%[i][.y]f

%[i]b

%[i]d

%[i]u

%[i]X

如果格式代码太小,数值仍旧以其全部长度输出。

如果格式代码太大,在数值前面输出适当数目的空格。

注注释意,也可以选择指定“[i]”,在这种情况下,当输入此参数时必须省略括号。

组态消息

相关值的实例

@1I%6d@:来自相关值 1 的值显示为十进制数字,最多具有 6 位。

)。

个@空2R格%6f@:例如,来自相关值 2 的值“5.4”,显示为一个整数“5.4”(前面有 3

)。

切@断2R%2f@:例如,来自相关值 2 的值“5.4”,显示为整数“5.4”(位数太小时不

@库中1W引%用t#要Te使xt用bib的1文@本:。数据类型 WORD 的相关值 1 是索引,据此在 TextLib1 文本

注当释使用 S7-PDIAG 时,您必须始终将元素类型 指为“ ”、将元素类型

CHAR

C

REAL 指为“ ”。对于对S7-PDIAG 有效的所有其它元素类型(BOOL、BYTE、

、 、R 和 ,必须始终指定为“ ”。

W如 O果RD INT DWORD DINT) X

双字字节的希数望组向。一个例如AL,A可RM以_是S最块多传送一个个字以节上或的字相符关,值最,多可以个发字送或一整个数最,大或长最度多为 1个2

、实数或双整数。

12

6

3

将文本库中的文本集成到消息中

置可,以以从保最证多其四在个外不同语的消息文中本的库使中用随。意将文本集成到一个消息中。文本可以自由放操作过程如下:

库。 > 文本库 > 系统文本库或选项 > 文本库 > 用户指定的文本库,打开文本

        1. 选在项SIMATIC 管理器中,选择 CPU 或 CPU 从属对象,并选择菜单命令

当如心果已选择将消息号分配给

文本集成到消息中。

CPU (面向

CPU

的消息号),可以仅将用户文本库中的

  1. 确定希望集成的文本索引。
  2. 符在。消息中期望显示文本的位置处,输入格式为@[Index]%t#[Textbib]@的占位

[Index] = 1W,此处 1W 是用于 WORD 类型消息的第一个关联值。

注释

实例 已组态消息文本:压力上升

名称为

Textbib1

的文本库:@2W%t#Textbib1@

索引 德语 英语

1734 zu hoch too high

为所传送的第二个关联值分配了数值 1734。显示下列消息:压力上升太高。

删除相关值

通过在表示相关值的消息文本中删除字符串,删除相关值。

操作过程如下:

该在块消以息文本中定位对应希望删除相关值的信息块。

1.

符号结@束。符号开始,其后为识别相关值的位置指示符以及格式代码;以另一个@

2. 从消息文本中删除该信息。

翻译和编辑与操作员相关的文本

通文常本以。自动化解决方案编程时使用的语言,输入过程编辑期间在显示设备上输出的

言经。常该可用能户出需现要的以情况其母是语,对书写显示的设文备本才上的能确消保息进顺行利无响误应的地进操行作处员理不并会对使系用统这输种出语的允许您将某些文本以及所有与操作员相关的文本翻译为所需要的语言。其唯

消息进行快速响应。

项一ST的EP先7决条件就是您已在项目中安装了这种语言 菜单命令: 管理器中的选

采 > 用于设备显示的语言)。在安装 Windows 时(确定 系统属性SIM可AT用IC的语言数目。

行显用示该。方该式系,统可特确性保将极来大面地对这增加种过消程息的处理任的何安用户全都可( 精使这确些消) 息以适当的语言进

翻译和编辑用户文本

性和 性。

条您件可是以在为这整些个对项象目中、为组态S7了程消序息、。块例文如件,夹它或们单包个含块可,以以在及显为示符设号备表中创显建示用的户所文有本文,本表和。消息。对于一个项目,可以有多个可以翻译成所需语言的操作员相关文本的列

删可除以选语择言。项目中可用的语言(菜单命令选项 > 显示设备的语言...)。稍后也可以添加或

导出和导入操作员相关的文本

操可以作员在相ST关E文P 本7 外导翻出译到或导编出辑文在件中ST,E用P 基7 中于创建的操的作编员辑相器关或文电本子。表为格此工,具将编显辑示该的

后导,出画文面件,显如示包含各种语言列的表菜格单。命第令一选列项AS始C终I管I 显理示多所语设言置文的本标准导语出言。打翻开译文好件

 

Microsoft EXCEL(

>

> )

文本后,再次将它们重新导入到 STEP 7 中。

只能将操作员相关文本导入到该项目中导出文本的部分。

基本过程

译确的保目已标经语在言SI。MATIC 管理器中,按照菜单命令选项 >显示设备的语言设置了文本翻

6HOHFW WKH REMHFW ZKRVH WH[W \RX ZDQW WR WUDQVODWH.

6HOHFW PHQX FRPPDQG 2SWLRQV ! 0DQDJH

0XOWLOLQJXDO 7H[W ! ([SRUW.

7UDQVODWH WKH 7H[WV.

&DOO PHQX FRPPDQG 2SWLRQV ! 0DQDJH 0XOWLOLQJXDO 7H[WV ! ,PSRUW WR LPSRUW WKH

WUDQVODWLRQ.

注只释能在用于翻译的应用程序下打印用户文本。

翻译和编辑文本库

用户文本库

文用本户库文本索引库。允在许该根位据相置输关入值的动态占位视符图为文本待显或示文的本动段态。文在本此。,相关值提供当前文本的

查可以用为户程库中序创索引建用的唯户库一性,并。该在其中输可入用文的本所和有选消择息个都人可索以引包。含该对应用用户程文序本将库自的动交检叉

参考。

CPU

不文同本的库控文制件任夹务中,文并本库仅根的数据应目不用场受合限来制使。用因文此本,库举。个例子,可以将同一个程序用于

当将心一个包含对文本库交叉参考的消息类型块复制到另一个程序中时,

必叉参须带考上。相应的文本库,或创建具有相同名称的新文本库,或在消息文本中编辑交

个创建空闲文本索引项时作为,默认值情。况文下始本库终中分禁配止一出个现索引模糊。输索引入一,应个用新程行序时拒,绝应该用类程序索将引。下一

创建用户文本库

按如下操作,创建用户文本库:

SIMATIC 管理器中,选择菜单命令插入 > 文本库 > 文本库文件夹。

        1. 在 SIMATIC 管理器中,在希望创建用户文本库的程序内选择程序或从属对象。

结果:创建“文本库”文件夹。

        1. 后现命在名,该选文择本“库文。本库”文件夹。选择菜单命令插入 > 文本库 > 用户文本库,然
        2. 选择菜单命令选项 > 文本库 > 用户文本库,打开新文本库。
        3. 现在可以输入文本。

个空闲索引作为默认值。文本库中禁止出现模糊索引,应用程序拒绝该类索引。

注创释建文本项时,默认情况下始终分配一个索引。输入一个新行时,应用程序将下一

如何编辑用户文本库

按如下操作,编辑已存在的用户文本库:

> 文本库 > 用户文本库。

        1. 后在选SI择M菜AT单IC命管令理选器项中,在希望编辑其文本库的程序内选择程序或从属对象,然
        2. 从“可用文本库”对话框中,选择希望打开的文本库。
        3. 可编以辑输所入显文示本的。文可本以。一提直供修多改种自编动辑为功文能本(例生如成查的找索和引替。换如)。果偶然输入一个已分配要的插索引入一,个那新么行该,值选以择红色菜单高亮命令度插显入示。新行,或点击相应的工具栏图标。

>

        1. 如果要求硬拷贝,那么打印文本。
        2. 完成所有任务之后,关闭用户文本库。
        3. 编辑好要求的所有文本后,关闭该应用程序。

当将心一个包含对文本库交叉参考的消息类型块复制到另一个程序中时,

必参考须带。上相应的文本库,或创建具有相同名称的新文本库,或在消息文本中编辑交叉

无修改效已!存在文本库的名称,可能导致与该文本库交叉参考的相关值在已组态的消息中

组态消息

系统文本库

系建统系文统本文库本是库在,创只建能块编时辑自已动存生在成的的文,本库例。如,在“系统错误报告”中。用户不能创该 CPU 可用的所有消息都可以包含对文本库的交叉参考。

翻译文本库

期系间统文动本态更库和新,用以户及文在本编库程提供设文备本或的其它列显表示,设这备些上文显本示可。以集成到消息中,并在运行给一ST个EP 7 或。S可T以EP将7这可些选文软本件翻包译提成供所系需统要文的本语库言中。的文本。可以将多个文本库分配言SIMATIC 管理器中,可以选择项目中可用的语言(菜单命令选项 > 显示设备的语

...)。稍后也可以添加或删除语言。

出当文开件始,翻译例如文本可以库在(菜单命令 选项 > 管理下多编语辑言。文打本开>文导件出后),时画,面将显生示成包可含编每辑种的语导

言列的表格。

当决心不要通过双击打开

Microsoft EXCEL

导出文件。始终在

中使用菜单命令文件

> 打开来打开该文件。*.cvs

Microsoft EXCEL

注只释能在用于翻译的应用程序中打印用户文本。

导出文件的实例

德语 英语

ausgefallen Failure
gestoert Disruption
Parametrierfehler Faulty parameter assignment

基本过程

的在文SI本M库AT翻IC译管语理言器。中,使用菜单命令选项 > 显示设备的语言...,确保已设置了期望

6HOHFW WKH &38 RU D VXEOHYHO REMHFW RI WKH &38 ZKRVH WH[W OLEUDU\ \RX ZDQW WR WUDQVODWH.

6HOHFW PHQX FRPPDQG 2SWLRQV ! 0DQDJH

0XOWLOLQJXDO 7H[WV ! ([SRUW DQG WKHQ PDNH \RXU VHWWLQJV LQ WKH SRS-XS GLDORJ ER[.

7UDQVODWH WKH 7H[WV.

&DOO PHQX FRPPDQG 2SWLRQV ! 0DQDJH 0XOWLOLQJXDO 7H[WV ! ,PSRUW WR LPSRUW \RXU WUDQVODWLRQ.

组态消息

将组态数据传送到可编程控制器

概述 使用传送程序 将所生成的消息组态数据传送到

AS-OS Engineering

WinCC

数据库。

要求 启动传送之前,必须满足下列要求:

  • 已经安装“AS-OS Engineering”。
  • 已经生成用于创建消息的组态数据。

基本过程

,Q WKH 6,0$7,& 0DQDJHU, FUHDWH WKH 26 REMHFWV RQ ZKLFK \RX ZDQW WR GLVSOD\ PHVVDJHV.

6WDUW WKH WUDQVIHU RI WKH FRQILJXUDWLRQ GDWD XVLQJ WKH PHQX FRPPDQG:

2SWLRQV ! $6-26 &RQQHFWLRQ 'DWD ! 7UDQVIHU .

    1. 显示CPU 消息和自定义的诊断消息

步使消用“息C和P自U定消义息的”诊功断能消(菜息单以命及令来P自LC > CPU 消块息),您可显和示关于诊断,事用件于的生非成同

组态消息

的与消块相息关的的消始息终。进行应答的消息;

SFC 17

ALAR和M_S

(SFC,1用8于生S成FC与1块08相关的可应答

也可使)用菜单命令编辑 > 消息 > 自定义诊断来启动 CPU 消息应用程序中的消息组应用程序。 CPU

态应用程序,并创建自定义的诊断消息。其条件就是通过在线项目启动了 消息

SFC 107

显示选项 使用“CPU 消息”功能,您可决定是否以及如何显示所选 的在线消息。

  • “任务栏中高亮显示”:一旦接收一条消息,且窗口不位CP于U顶部,在

任务栏中高亮显示“

消息”。

Windows

  • “置于后台”:在后台C接PU收 消息。在接收新的消息时,窗口将仍然位于后

台,如果需要,也可将其置C于P前U台。

  • “归忽档略。消息”:不显示新的 CPU 消息,而且,与其它两个模式相反,也不进行

您在都“可CP选U择消菜息单”命窗令口视中图,您显可示选信择息“文归本档以”指标定签显或示“消中息断时”是标否签带。有在或两不个带标有签信中息,

文本。用户可根据需要对栏> 目进行整理。

“归档”标签

(40 和 3000 之间的CPU 消息)可通过“设置 - CPU 消息”对话框中的菜单命令选项

进入的消息将在这里进行显示和归档,并根据事件消息时间进行排序。归档的容量

> 设置进行设置。如果超出了所设置的归档容量,将删除队列中最早的消息。

确认 消息下确认这些消息。

将以黑体字显示可确认的消息(ALARM_SQ 和 ALARM_DQ)。您可在菜单命令编辑

STEP 7 V5.4 编程手册-95 > CPU

组态消息

“中断”标签

您ALARM_S

块中尚未接收或确认的排队消息的状态也将显示在“中断”标签中。

栏目可进选行择排菜序单。命令视图 > 多行消息来显示一行或多行消息。此外,您可根据需要对

更新 块中的消息

ALARM在_更S

将对消新息期进间行,所更新有:未发送或未确认的消息均将再次输入到归档中。在下列情况下,

  • 如果在与消息相关的模块上执行重新启动(而非冷启动)
  • 如果在模块列表中点击 ALARM_S 块消息的选项“A”。

基本过程 为所选模块组态 CPU 消息:

,Q WKH 6,0$7,& 0DQDJHU, VHOHFW WKH 67 3URJUDP DQG VHOHFW WKH PHQX FRPPDQG 3/& ! &38 0HVVDJHV.

6SHFLI\ ZKLFK PHVVDJHV \RX ZDQW WR UHFHLYH DQG KRZ WKHVH PHVVDJHV DUH WR EH GLVSOD\HG.

      1. 组态 CPU 消息

要组态所选模块的CPU 消息,可如下进行操作:

消 S7 程序,然后使用菜单命令 PLC > CPU 消息调用所选 CPU 的CPU息 应用程序。

        1. 个在在SI线M的ATIC 管理器中,通过在线项目启动 CPU 消息应用程序。为此,选择一

结果:出现“CPU 消息”应用程序窗口,列出已注册 CPU。

        1. 通过重复步骤 1 可添加用于其它程序或接口的已注册 CPU 来扩展列表。
        2. 点击列表条目前面的复选框,指定模块要接收的消息:

A:激活 ALARM_S 块(用于生成始终进行确认的块相关信息的 SFC 18 和 SFC S7 PDIAG、S7-GRAPH 中的报告过程诊断信息,或系统错误。

如10,8,以及用于生成可确认的块相关信息的 SFC 17 和SFC 107)中的消息,例

W:激活诊断事件。

        1. 设置归档的大小。

示结。果:只要上述消息一发生,就将它们写入消息归档,并按照选择的方式进行显

注在释

“ SIMATIC

“CPU 消息”应用程序窗口中的已注册模块列表中。列表中的条目将保留,直到在

管理器中为其调用了菜单命令

消息的

均将输入到

CPU 消息”应用程序窗口中将其删除。

显示所存储的 CPU 消息

PLC > CPU

CPU

档除的非消选择息。了菜单命令视图 > 忽略消息,归档始终记录 CPU 消息。始终显示所有已归

组态“报告系统错误”

组态消息

引言

触当发组生系织块统调错用误。时,硬件组件和 DP 标准从站(属性由其 GSD 文件确定的从站)可以

实例:如果有断线,具有诊断能力的模块可以触发一个诊断中断(OB82)。

除其它各项外,还包含数据记录 ,提供关于错误位置 例如模块的逻辑地址 和错

硬件组件提供所发生系统错误的信息。启动事件信息,即,已分配 OB 的本地数据

误( 类型 例如通道错误或备用电池故0)障 的常规信息。 ( )

站此的外,(可消以通息过更另详外细的地诊说断明信错息误用

。这种

)

) 情况读的数实据例记可录能是或通用道

或 和读断线标或准测从量

0

1

范围超诊断出限度。

( SFC51

1 SFC13 DP

 

0

1

诊有断了信报息告。系统错误功能,STEP 7 就可提供方便的方法,以消息形式显示组件提供的所需的块和消息文本由 STEP 7 产生。用户所需要做的就是将所生成的块加载至

,然后将文本传送到所连接的 设备。

C要P在U HMI

文元本素DB“125)或一个 PR”O和FI“NET IO DB (默认”。为在DB操1作2期6)。间在,每给个它数们据提块供的了接错口误中或声帮明助

为 HMI 设备上以图形方式显示诊断事件,可以创建一个 PROFIBUS DP DB (默认

Map_ErrorNo

Map_HelpNo

文件夹ID的。“报表系统错误”应用程序在生成期间将可能的数值及其含义导出到选定

本。 csv 文件中。为可以显示错误含义或帮助文本 ID,HMI 必须导入这些文

可以在所支持的组件和功能范围部分找到各个从站所支持诊断信息的完整概述。

基本过程

&RQILJXUH WKH VWDWLRQ DQG DVVLJQ SDUDPHWHUV WR WKH PRGXOHV (HQDEOH GLDJQRVWLF LQWHUUXSWV).

0DNH WKH VHWWLQJV IRU UHSRUWLQJ V\VWHP IDXOWV DQG FRQILJXUH WKH PHVVDJHV.

6WDUW JHQHUDWLQJ WKH EORFNV.

&KHFN DQG VXSSOHPHQW WKH JHQHUDWHG EORFNV.

7UDQVIHU WKH FRQILJXUDWLRQ GDWD IRU WKH JHQHUDWHG PHVVDJHV WR WKH DSSURSULDWH +0, GHYLFHV WKDW DUH VXSSRVHG WR SURGXFH V\VWHP IDXOW UHSRUWV.

'RZQORDG WKH JHQHUDWHG EORFNV WR WKH &38.

所消连息接通的过 ALAR设M备_S上/S。Q 标准消息路径发送到编程设备上的 CPU 消息中,或发送到

HMI

      1. 所支持的组件和功能范围

的组件,只要它们支持诊断中断插入 删除模块中断,以及特定通道诊断之类

“报告系统错误”支持 S7 300 站、S7 400 站、PROFINET IO 设备、DP 从站和的Wi功nA能C。 /

“报告系统错误”不支持下列组件:

  • M7 组态
  • S7-300 站中的 DP 主站接口模块(CP 342-5 DP)上的 PROFIBUS-DP 组态。
  • 通过DP/PA 链路(IM 153-2 或“Y 链路”)的 PROFIBUS DP 组态
  • 通过 S7-300 站中外部控制器的 PROFINET IO 设备(CP 343-1 高级型)

的消息确认存储不能被删除,但“报告系统错误”会复位内部数据。不全部报

在重启动的情况下,还必须注意可能发生丢失中断消息。这是因为在重启动期间,

告CP启U动之前或发生故障期间发生的模块或通道错误。

在下列的表中,将找到“报告系统错误”所支持的各种 PROFIBUS 从站的诊断块。限制:通过 IE/PB 链路或 IWLAN/PB 链路的 PROFIBUS DP 组态(如下所示)

诊断域 ID(故障插槽) 通道标志 模块状态 设备标志

/无模块)

(通道错误) 1)

标题ID 2) 0x01 0x10

(不模正块确错误, 类0x型00

信0x息00 + 1 字节诊断

ET 200S 消“息触:发诊断中断” 纯文本消息 纯文本消息

消息:

-

0x82

ET 200M 未判断 未判断 未判断 - ET 200X - - -

“触发诊断中断”

ET 200X DESINA 消“息触:发诊断中断” 纯文本消息 纯文本消息 -

ET 200L 未判断 - -

ET 200B Digital 消息息可:用“”对话框信

ET 200B Analog - -

ET 200C Digital

ET 200 C Analog 消“息触:发诊断中断” 消息息可:用“”对话框信

ET 200 U 消“息触:发诊断中断” 消息息可:用“”对话框信

ET 200iS 消“息触:发诊断中断” 纯文本消息 纯文本消息

纯文本消息

ET 200 eco - - -

DP AS-i Link 消“用息对”:话框信息可 - 纯文本消息 -

诊标断题域

其它版本

ID

2

纯文本0x消01息纯文本消息

纯文本消息纯文本消息

纯文本消息

-消息:“模块错误”

类型

0x00

未判断

DP AS-i Link

-

ET 200 eco

ET 200iS

ET 200 C Analog

ET 200C Digital

ET 200B Analog

ET 200B Digital

ET 200L

ET 200X DESINA

ET 200X

ET 200M

ET 200 pro

ET 200S

其0x它00类型

DS0/DS1 1

在下列的表中,可找到“报告系统错误”所支持的各种 PROFIBUS 从站的诊断块。

诊断域

标题 ID 2)

ID

(

故障插槽

)

(通道错误) 1)

通道标志

模块状态

(确模块错误,不正

/无模块

)

ET 200S

SCALANCE 切换

0x01

“触发诊断中断”

-

0x10

: 纯文本消息

类型 0x82

0x00

设备标志

0x00 + 1 字节诊断信息

-

-

纯文本消息纯文本消息

-

诊标断题块

DS0/DS1 1)
ID 2 类0x型00

0x01

其0x它00类型
ET 200S - -

其它实例

SCALANCE 切换 纯文本消息 未判断

  1. DS0:标准诊断,例如模块故障、外部辅助电压或前置连接器丢失,长度为 4 字节,包含在 OB12 的本地数据中。DS1 SFC 51

S7 HW 诊断。

文本:来通自道错误,随通道类型有不同定义,通过 在用户程序中可读。

  1. 标题 ID:诊断消息中的标识符,标识不同的诊断部分。

“在十ST六E进P 制7 中显,示在”“下H调W用C模o块nfi状g”态(,诊可断显硬示件诊)在断线消窗息口。的“DP 从站诊断”标签卡的件诊中断读中取继。器:在 DPV0 模式中以纯文本方式输出诊断中继器的消息。文本从 GSD 文

“报告系统错误”设置

调用设置对话框的几种可能方法:

> 报告系统错误。

  • 选在项HW Config 中,选择希望为其组态系统错误报告的 CPU。然后选择菜单命令
  • 话如框果。已经生成用于报告系统错误的块,双击所生成的块(FB、DB),即可调用对
  • 在站的属性对话框中,选择在保存和编译组态期间自动调用的选项。如下步骤可到达保存和编译期间自动调用的选项:
        1. 在 SIMATIC 管理器中,选择合适的站。
        2. 选择菜单命令编辑 > 对象属性。
        3. 选择“设置”标签。

注也释可以通过菜单命令站 > 属性,打开 HW Config 中属性对话框的“设置”标签。在对话框中,除了其它内容外,请输入下列内容:

  • 应生成哪个 FB 和哪个已分配的实例 DB
  • 是否应生成参考数据
  • 在报告系统错误生成期间是否始终显示警告
  • 话在框保。存和编译组态(参见上述设置)后、自动调用报告系统错误时,是否应显示对
  • 中生调成用错“误报O告B:系尚统不错可误使”用。的错误 OB 是否应在 S7 程序中生成,以及在哪个 OB
  • 出错时CPU 的特性:可以确定哪个错误级别事件会触发 CPU 到 STOP 模式。
  • 消息的显示(可能的文本部分的结构和次序)
  • 消息是否应是可确认的
  • 用户块接口应包含哪些参数

在调用对话框的帮助中可以找到更详细的信息。

生成用于报告系统错误的块

全完局成报表系统错误的设置后,可以产生所要求的块(带已分配实例 DB 和一个或多个

误”对DB话的框中FB,和点F击C“,生这成取”决按于钮甚。至不存在的 OB 的设置)。为此,在“报告系统错

生成下列块:

  • 诊断 FB (默认:FB49)
  • 诊断 FB 的实例 DB (默认:DB49)
  • 错误 OB (如果已在“OB 组态”对话框中选择了本选项),
  • 由诊断FB 调用的可选用户块

所生成的块

评估错误 的本地数据,并从引起错误的硬件组件读取任何附加诊断信息。

该诊断块由“报表系统错误”设置(带相关实例 DB 和一个或多个共享 DB 的 FB 和

FC OB

FB 具有下列属性:

  • 生成RSE 的语言(报表系统错误) (也适用于上面列出的块)
  • 知识产权保护(也适用于上面列出的块)
  • 在运行期间中断到达延迟
  • 如果双击块,则打开用于设置“报表系统错误”功能的对话框。

用户块

所因以为可诊断以访FB问的诸知如识错产误权状受态到或保消护息,号所之以类不的能信编息辑。它。然而 FB 提供用户程序接口,用通户过块所标选签择的中设参数置,。在下已列生参成数的可F用B:中调用用于评估用户程序的块 (可以在对话框的

名称

数据类型

注释

//已生成的消息号

//消息到来(TRUE)或离去(FALSE)

//文本库的ID (默认文本库=1)

//逻辑地址

//输入模块:B#16#54 输出模块:B#16#55

//H 系统的错误级别

//通道编号

//通道错误(TRUE)

//已生成的错误编号

//错误等级

WORD

HErrClass

WORD

ErrClass

WORD

ChannelNo

BOOL

Channel_Error

WORD

ErrorNo

WORD

TextlistId

WORD

logAdr

BYTE

IO_Flag

DWORD

EV_ID

BOOL

EV_C

)

如果用户 FB 尚不存在,则由 SFM 用所选择的参数创建。为标准错误生成的错误文本排列如下:

错误编号(十进制) 受影响的错误 OB OB 中的错误代码

1 86 OB 72 B#16#1 B#16#56
162 163 OB 70 B#16#A2 B#16#A3
193 194 OB 72 B#16#C1 B#16#C2
224 OB 73 B#16#E0
289 307 OB 81 B#16#21 B#16#33
513 540 OB 82
865 900 OB 83 B#16#61 B#16#84
1729 1763 OB 86 B#16#C1 B#16#C8

通错道误类编型号大和于识别12错28误8位的。涉准及确通的道描错述误参。见如各果自用的十模六块进帮制助表或示通法道视帮图助错文误本,。可以计算

实例:

122低88字=节W#16#,30意00味->着高错字误节位0x30 - 0x10 = 通道类型 0x20 (CP 接口):

0x00

0

327低74字=节W#16#,80意06味->着高错字误节位0x80 - 0x10 = 通道类型 0x70 (数字输入);

0x06

6

在“报表系统错误”中生成外语消息文本

息用。户可使用安装 STEP 7 时所安装的语言来显示“报告系统错误”中所组态的消

为此,可如下进行操作:

        1. 中在,SI添M加AT想IC要管安理装器的中语,言选到择用选户项项>目显中示。语言...菜单命令。在随后显示的对话框
        2. 点击“确定”确认设置。
        3. 中在,HW点击Co“n生fig成中”,按选钮择。选项 > 报告系统错误...菜单命令。在随后显示的对话框

认结语果言:可生以成在了“所安添加装的删所除有语语言言、的设消置息默文认本语,言但”只对显话示框使中用点默击认“语设言置的为文默本认。默

值 /”按钮进行设置。

实例

义安装。现了在德语,即、可英如语上和所法语述生等成语消言息的文ST本E。P 为7,显且示在给用定户语项言目下中的对消这息些文语本言,都可进在行“了添定

加 删除语言、设置默认语言”对话框中将该语言设置为默认值。

/

组态操作员监控变量

概述

进ST行EP监7控提的供方了法一。种用户界面友好的对使用 WinCC 的过程或可编程控制器中的变量

只该需方使法用优于先前方法的地方是您将不再需要为每个操作员站(OS)单独组态数据,您

“ STEP 7 组态一次即可。在您使用 STEP 7 进行组态时,您可使用传送程序

您WinCC 将使用变量块和图形对象中的数据。

数据库,在这期间,将对数据的一致性及其与显示系统的兼容性进行检查。

基本过程

AS-OS 工程”(软件包“过程控制系统 PCS 7”的一部分)将生成的数据传送到WinCC

可使用 STEP 7 组态或修改下列变量的操作员监控属性:

  • 输入、输出、以及功能块的输入/输出参数
  • 位存储器和 I/O 信号
  • CFC 图中 CFC 块的参数

量操的作类员型监。控变然量而的,组基态本步过骤程取将决始于终选包择括的有编下程列/组步态骤:语言以及您希望监视和控制的变

  1. 将操作员监控的系统属性分配给功能块的参数或符号表中的符号。

在 CFC 中将不需要该步骤,因为您采用了从库中已经准备完毕的块。

  1. 在操对作话员框接(S口7_对m_话c框)中菜为单您命希令望编控辑制和监特视定的对变象量属分性配所操需作的员属接性口和中记,录您属可性改。变

)

WinCC 属性,例如限(制值、替代值、> 以及协议属性等>等。

  1. 通过“AS-OS 工程”工具将 STEP 7 生成的组态数据传送到显示系统(WinCC)

控制和监视变量

命名惯例

存对储于。W操inC作C员要监保控存变和量传、送的组图态、数以据及,它们程将序以等S名T称EP均7构自成动了分该配名的称唯的一一名部称分进,行

因此也要服从某些惯例:CFC S7

变量S7 程序)。

  • 的在 S7 项目中,S7 程序的名称必须是唯一的(不同的站不能包含有具有相同名称

符: 。

  • 、S7 程序、以及 CFC 图的名称都不能包含有下划线、空格、或下列特殊字

[ ‘ ] [ . ] [ % ] [ - ] [ / ] [ * ] [ + ]

利用语句表、梯形图和功能块图表进行操作员监控属性组态

概述 按照下述过程,您可以使功能块参数能适用于操作员监控,并将所需要的 、 和

O C

O C

M 属性分配给用户程序中的相关实例 DB 或者共享数据块。

要求 您必须已经创建了一个 项目、一个 程序和一个功能块。

STEP 7 S7

基本过程

$VVLJQ WKH V\VWHP DWWULEXWH 67BPBF WR DOO WKH SDUDPHWHUV RI IXQFWLRQ EORFNV ZKLFK \RX ZDQW WR FRQWURO DQG PRQLWRU.

$VVLJQ :LQ&& DWWULEXWHV WR WKH LQVWDQFHV RI )%V RU VKDUHG GDWD EORFNV.

    1. 通过符号表组态操作员监控属性

概述 不管使用哪种编程语言,您都可以采用下述步骤来组态以下变量:

      • 位存储器
      • I/O 信号

要求 开始组态之前,必须具备下列条件:

      • 您已经在 SIMATIC 管理器中创建了一个项目。
      • 该项目中必须有一个带符号表的 S7 程序。
      • 必须打开符号表。

基本过程

$VVLJQ WKH VSHFLDO REMHFW SURSHUW\ "2SHUDWRU &RQWURO DQG 0RQLWRULQJ" WR WKH V\PEROV.

$VVLJQ :LQ&& DWWULEXWHV WR WKH V\PEROV.

    1. 使用CFC 改变操作员监控属性

概述

要求

基本过程

连使接用,CF从C而时创,建您自可己以的从用库户里程选序择。已经具有操作员监控属性的块,将它们放到图中并中您。已经在 STEP 7 项目中插入了一个 S7 程序,创建了 CFC 图表,并将块放到该图

(GLW WKH REMHFW SURSHUWLHV RI WKH EORFNV.

如注果意使用的是自己创建的块,并且已经给这些块分配了系统属性 ,只要再

员激活监控对”话复框“选框操,作就员能监使控这”些菜块单具命有令操:作编员辑监特控殊属对性象。属性 操作S员7_监m控_c中的“操作

(

>

>

)

将组态数据传送给操作员界面可编程控制器

引言 使数用据库AS。-OS Engineering 传送程序,将所生成的操作员监控组态数据传送到

要求 启动传送之前,必须满足下列要求:

      • 您已经安装了 AS-OS Engineering 程序。
      • 您已经生成了操作员监控组态数据。

WinCC

基本过程 要将操作员监控组态数据传送到 数据库,可如下操作:

WinCC

,Q WKH 6,0$7,& 0DQDJHU, FUHDWH WKH RSHUDWRU VWDWLRQ REMHFWV.

6HOHFW WKH WUDQVIHU RSWLRQV.

7UDQVIHU WKH GDWD.

'LVSOD\ WKH WUDQVIHU SURWRFRO, LI UHTXLUHG.

建立在线连接

/块、从 S7 可编程控制器中将块上传到编程设备,以及用于其它活动:

序需要在编程设备和可编程逻辑控制器之间建立一个在线连接,以用于下载 S7 用户程

      • 调试用户程序
      • 显示和改变 CPU 的工作模式
      • 显示并设置 CPU 的时间与日期
      • 显示模块信息
      • 在线和离线比较块
      • 诊断硬件

编为程了建逻辑立控在制线器连。接然,后必可须通过项合目适的在接线口窗(例口如或,“多可点访接问口节(M点P”I))窗连口接访编问程可设编备程和控可

制器。

通过“可访问节点”窗口建立在线连接

中这所类有访可问访能问使的您可快编速程访问模块可编。如程果逻在辑编控程制设器备,上以用没有于诸关如于可测编试目程的控。制可器以的访项问目网数络

据,请选择此方式。

点使”用窗菜口单中命令,将PL显C示>网显络示中可所访有问可节访点问,的打节开点“及可其访地问址节。点”窗口。在“可访问节在的“节可点访。问节点”窗口中,还能显示不能用 STEP 7(例如编程设备或操作面板)编程在括号中还可显示下列附加信息:

        • (直接):该节点直接连接到编程设备(编程设备或 PC)。
        • (无源):不能通过 PROFIBUS DP 对该节点进行编程和状态修改。
        • (等待):不能与该节点进行通讯,因为其组态与网络中其它设置不匹配。

找到直接连接的节点

PLC > 诊断/设置 > 节点闪烁测试菜单命令。

选附择加信息“直接”不支持 PROFINET 节点。为了仍旧能够找到直接连接的节点,请

将在由显一示个的闪对烁话强框中制,可以进设行置识闪别烁。持续时间,然后启动闪烁测试。直接连接的节点如果强制功能激活,LE则D不能进行闪烁测试。

通过项目的在线窗口建立在线连接

如菜果单在命编令程视设图备/在PC线上,,打已开在项目中组管态理了器可的编在程线控窗制口器。,它则将可显选示用可该编方程法控。制使器用上时的显项示目数据(与>此形成对比,离SI线MA窗T口IC将显示编程设备/PC 的项目数据)。在线窗口同

S7 程序和 M7 程序的可编程控制器的数据。

中可的以某使些用功该能项可目以视在图在中线的窗功口能中来激访活问,可编但程不控能制在器离。线SIM口A中T激IC活管。理器“PLC”菜单有下列两种访问类型:

        • 这通意过味已着组您态只的能硬访件问访离问线组态的模块。可以访问哪些在线模块取决于可编程模块

组态时的 地址设置。

MPI

        • 这不要通求过存已在组着态独的立硬于件硬进件行而的创访建问的

程序或

程序。 即,它直接位于项目之

线下模)。块在可此以可访以问通。过指定 S7/M7 程序对象属性中相应的 地址,来决定哪些在

S7 M7 (

MPI

S7 块,显示的内容由以下部分构成:

在线窗打口开的项访目问下组的合了可编程控制系统的数据和编程设备的相关数据。例如,如果

        • 来自 S7 可编程控制器中 CPU 的块的代码段
        • 着注的释和符号上,,来不自存编在程项设目备结的构数的据状库态(假下如打它开们块是时离,线它存们在将的以)。当您中直的接存从在连状接

态显示CP,U即不带符号和注释。

CPU

在多项目中在线访问 PLC

使用所分配的 PG/PC 进行跨项目访问

目用。于对象“PG/PC”和“SIMATIC PC 站”的“分配 PG/PC”功能也可以用于多项

目您进可行以工在作多时项的目过的程任相意同项。目中为在线访问指定目标模块。该过程与您只使用一个项

要求

        • 进您行用了于分在配线。访问 PLC 的 PG/PC 或 PC 站必须已经在多项目中的任意一个项目中

注只意有:在当已打经开正对确应分的配项了目打时开,项所目分的配的时P,G/PC 或 P的C分站配将才用可黄见色。高亮显示。

        • 跨项目子网已合并。

PG PG/PC

        • 参多与项建目立的所有项目与已目经标编模译块完之毕间,的且连组接态的数模据块已提下供载路给由参信与息的。站;例如,向所有
        • 目标模块可PG以/P通C过网络进行访问。

使用分布式项目进行工作时可能遇到的问题

分如配果不项可目见的分。配发生改变,且项目不是在创建该项目的 PG/PC 上打开,则 PG/PC

P此G时/P,C。

不过,所组态的 PG/PC 对象将仍然保持“已分配”状态,但具有“错误”的

STEP 7 V5.4 编程手册-96 在多项目您内必须对模清块除进现行有在的线分访配问,了并。重新分配 PG/PC 对象。这时,就可以毫无问题地

多如项果目有中一创个建以一上个的“团队成员希望在他们的 PG 上在线访问 PLC,有用的方法是,在

使用分布式项目进行工作的提示

立一个分配。

的对象。

PG/PC”或“SIMATIC PC 站”对象,然后为 PG 的每个站建

根据是哪个 PG 打开了该项目,SIMATIC 管理器将只用黄色箭头指示且已分配给该PG

用于访问可编程控制器的口令保护

使用口令保护,可以:

        • 保护CPU 中的用户程序,防止未授权的修改(写保护)
        • 保护用户程序的编程技术内容(读保护)
        • 防止将会干涉进程的在线功能

的只有内模容。块支持该功能时,才能使用口令来保护模块或 MMC (例如,对于CPU 31xC)

和如设果置要口使令用,口然令后来将保修护改模后块的或参M数MC下的载内到容模,块必。须在分配模块参数时,定义保护级别框如。果输在入执正行确在的线口功令能后或,访问将获M得MC模内块容的时相需应要访口问令权,限将,会其出对现应“着请参输数入分口配令时”所对设话定

级的别特定的在的保线功护能级。别。然后,就可以与受保护的模块建立在线连接,执行属于该保护

样使用,例菜单如在命令会话PL开C始>输访入问一权次限口>令设,置以,后可的以在直线接访调问用就“不请会输再入询口问令口”令对了话。框口。令这将令一取直有消。效,直到关闭 SIMATIC 管理器或使用菜单命令 PLC > 访问权限 > 取消将口

C测P试U操参作数 说明

/过程操作

可以在“保护”标签中设置。

或(不适用于 S7-400 CPU 318-2)

保护等级

制在过以程操作时,诸如程序状态或监视的/允修改变量这些测试功能将受到限程返序回状点态中中断不。允许使用调用条件,以及在编程的循环中状态显示将在

测在试测时试使操用作断点和单步程序执行,因此在过程备操作使时用不所能有使的用测试功。

能,即使它们会导致扫描周期地大幅提高。 /PC

可写以或在读“保护”标签中设置。根据所知的正确口令,可以进行 CPU 的

/写访问。在此标签中设置口令。

更新窗口的内容

请注意以下事项:

        • 的由“于可用访户问操节作点而”导窗致口项中目更的新在。线窗口改变(例如,下载或删除块)不会在任何打开
        • 变任。何在“可访问节点”窗口的改变也不会在项目任何打开的在线窗口中自动改

F5)。

要能更键新并行打开的窗口中的显示,必须在该窗口中手动刷新显示(使用菜单命令或功

建立在线连接并标记 CPU 设置

显示和修改工作模式

显示和修改工作模式

例如,通过该功能,可以在更正错误之后,将CPU 重新切换到运行模式。

显示工作模式

(“MPI=...”)。

  1. 来打打开开项“目可,访然问后节选点择”一窗个口S7,/M然7后程选序择,一或个使节用点菜单命令 PLC > 显示可访问节点
  2. 选择菜单命令 PLC > 诊断/设置 > 工作模式。

该不对能话显框示显当示前当按前键和开最关近设置一次的工模作块模,式显,示以文及本模“块未定上模义式”选。择器的当前设置。对于

改变工作模式

的可。使用按钮来改变 CPU 的模式。只有可以在当前工作模式中选择的按钮才是激活

建立在线连接并标记 CPU 设置

显示和设置时间与日期

具有时区设置和夏令/冬令时的 CPU 时钟

置在:固件版本 V3 起的 S7-400 CPU 上,除时间和日期外,还可以执行或评估下列设

        • 夏令/冬令时
        • 显示时区的偏移量因数

显示时区 系统工作采用全局的、连续的和没有中断的 ,即模块时间。

用本。地当自动地时化系间不统直允许接输计入算,当而地是时使间用,它模块与时模块TO时D间减不与同模,块并时且间可的以时被间用差户来程计序算使。

间加/

夏令/冬令时

换当设到冬置令TO时D,和只日需期考时虑,相也对可于以模设块置时夏间令的或时冬间令差时。。可例以如用,从通英过特用网户上程获序取从功夏能令块时来切

实现此改变。

读取和调节 和 状态

夏TO令D TOD

/冬令时标识符和相对于模块时间的时间差包括在日时间(TOD)状态中。

有下列选项可用于读取或调节 TOD 及其状态:

使用 STEP 7 (在线)

        • 通过菜单命令 PLC > 诊断/设置 > 调节 TOD(读取和调节)
        • 通过“模块信息”对话框,“时间系统”标签(只读)

在用户程序中

        • SFC 100“SET_CLKS”(读取和调节)
        • SFC 51“RDSYSST”,具有 SZL 132,索引 8 (只读)

诊断缓冲区、消息和 OB 起始信息中的时间戳

采用模块时间生成时间戳

TOD 中断

TOD 同步

调当用冬令时切换为夏令时的时候,如果由于“时间跳转”导致没有触发 TOD 中断,则

/冬令时转换,采用分钟和小时周期维持 TOD 中断周期。

对于夏O令B 80。

和组当态前为 TOD 主站(例如,在 CPU 寄存器“诊断/时钟”中)的 CPU 始终采用模块时间

TOD 状态同步其它时钟。

更新固件程序

在线更新模块和子模块中的固件

从块进ST行E在P 线7 V更5新.1。Se为rv此ic,e P可a如ck下3所起述,进您行可操采作取:标准化的方法,对站中的模块或子模

原则 为更新模块 例如 、 或 上的固件,您必须获取包含有最新固件的文件

(

CPU

CP

IM)

(*.UPD)

从这些文件选择一个,并将其下载到模块(PLC 菜单)。

前提条件

连站接中要到相进同行的固件更新的模块必须或在以线太,网例上如。编当程编设程备设(P备G)要与连进接行到固件更主新站的模块

的以M太PI网接时口,时也M,可P且I对要PR固进O件行F进I固B行U件S更更新新。的模块连必接须到支持

接口接(P的口G)与

接D口P之或间或C接PU口

接口与

接口之间的

路由。

CPU

DP

MPI

PROFIBUS

DP

PN

MPI

模块本身PN必须支持固件更S7新。

件在才PG必/P须C位的于文同件一系文统件中夹必。须存在包含最新固件版本的文件。只有同一固件版本的文

  1. STEP 7 V5.4 编程手册-97 PROFIBUS 或以太网子网
  2. MPI 子网
  3. 具有 MPI 接口和DP 接口或 PN 接口的 CPU(具有S7 路由选择)

HW Config 中的步骤

对选于择模块

1. 打开要进行模块更新的站。

选择菜单命ET令200S 的那个图标。

2.

代表代PR表OFIBUS DP 接口模块,例如 IM 151,可选择 DP 从站图标。此处就是

DP 从站支持“更新固件”功能,则您只可激活菜单命令。

如果所选模块或PL所C选> 更新固件。

的路径。

3.

  1. 在所显示的“更新固件”对话框中,单击“浏览”按钮,并选择固件更新文件

(*.UPD)

  1. 告在诉选您定文件适之合后于,哪“些更模新块固,件以”及对适话用框于的哪下些部固区件域版将本出。现许多信息,这些信息将

6. 单击“运行”按钮。

到ST模EP块7。将检查模块能否解释所选文件。如果检查结果为肯定的,则将文件下载随如果后需模要块将修改独立CP执U行的固工件作更模新式。,则将出现一个对话框提示您执行这些步骤。连注接意。:在对这于种固情件况更下新,过例如程将CP可U能3中17断-2。PN如/D果P没,有通任常何将资建源立可一供个另与一C个PU连的接单使独

话用框,中那的么“,取将消自动”使按钮用将已经变为存在灰的色,连不接能。使在这用。种情况下,不能中断连接。传送对

7. 在 STEP 7 中,检查(读取 CPU 诊断缓冲区)模块是否能够使用新的固件启动。

SIMATIC 管理器中的步骤

致在打。开菜“单命可令访也问是节点”窗口固后件,更可新以。激但活是该,功能。其仅步检骤查与在HW执行Co期n间fig模中块的是步否骤支一

持该功能。

PLC >

STEP 7

处于冗余模式的模块固件更新

处从于ST活E动P 状7 V态5的.4背版板本总起线,来支更持新在冗余模式中更新。模可块以固在件一,个例过如程,中通执过行H多站个的冗一余根

要IM 的固件更新;将自动给冗余 IM 提供最新的固件版本。

IM 153-2BA00

SIMATIC 管理器中的“可访问节点”来执行更新。

过求:编程设备(PG)必须连接至与 IM 的一个 PROFIBUS 相同的 PROFIBUS,且通

原理

STEP 7 V5.4 编程手册-98

运行期间更新固件的后果

可以通过更新对话框中的选项,来决定在更新之后,立即激活新的固件。

致如果您选择该选项,站点将执行类似于断电再重新上电的重启动。结果,将可能导

备采CP取U适仍当然的处预于防S措T施OP来模预式先或考用虑户和程调序解的这处些理状受况到。不利的影响。您需要对运行的设

例如,在重启动期间,站点的所有模块均出现故障,包括现有的 F I/O。

是口F I不/O会在清掉除电该期钝间化输状出态一。个您通必讯须错分误别给为接模口块,解然除后钝安化全状关态闭。-然它而已,钝这化样。做重的新结启果动接

与安全相关的应用程序将不运行。

参见

离线更新模块和子模块中的(操作系统)固件

从PG/PC 下载到可编程控制器

下载要求

下载到可编程控制器的要求

)。

        • 口编程设备和可编程控制器中的 CPU 之间必须存在一个连接(例如,通过多点接
        • 必须可以访问可编程控制器。

STEP 7”。

        • 目为“将块下载给 PLC,在项目的对象属性对话框中必须已经为“使用”选择了条
        • 您正在下载的程序已经完成了编译,且没有任何错误。
        • 请CP注U意必,须在处于允许进模行式下下载,的程工序作每模次式下(载ST一O个P 或块。RU如N果-P通)。过这样来覆盖的旧

环CP时U将程转序为,R则U可N能-P模会式导。致因冲此突,我例们如建,议当您块在参下数载已之经前改将变时。C切PU换在到处理该循模

式。 STOP

CPU

STOP

        • 中如的果在离线用打户开程块序,上并。希望对其进行下载,则 CPU 必须链接到 SIMATIC 管理器
        • 在您下载用户程序之前,您应复位CPU,以确保 CPU 上没有任何“旧的”块。

STOP 模式在进行下列操作之前,将工作模式从

        • 下载完整用户程序或其中的一部分R给UN

设置为

STOP:

        • 执行 的存储器复位

CPU

        • 压缩用CP户U存储器

重新启动(热启动(转换到 RUN 模式))

RUN 模式。在下列情况下将需要重启动(暖启动):

于如果在“STOP”模式下执行了重启动(暖启动),则程序将重新启动,并首先处理处

为 STARTUP 模式下的启动程序(位于块 OB100 中)。如果启动成功,则CPU 切换

        • 复位CPU
        • 在 STOP 模式下下载用户程序

保存和下载块之间的差别

应该始终区分开来保存块和下载块。

在编辑> 器另中存块为的当前状态保存在编程设备
的硬盘上。 CPU
语告置法。检另在查外保运,存行也或。显下任示载何出块错之的前原,都因在必和对须出话更框错正中的这报位些

错译成误机。器如代果码没,有并发可现以语保法存错或误下,载则块将。块编

语告置法。检另在查外保运,存行也或。显下任示载何出块错之的前原,都因在必和对须出话更框错正中的这报位些

错译成误机。器如代果码没,有并发可现以语保法存错或误下,载则块将。块编

菜单命令

保文存件 保存

下载 下载

功能

语法检查

编辑器中块的当前状态只下载到 。

不管是在线还是离线打开块,表的应用总是独立的。

块改变的提示 - 先保存然后下载

变在的声数明据表值中输,必入须新保创存建相的关块的或块逻。辑在块编代辑码器段中进的行改的变任,何或在改变数据,使块用中菜输单入命新令的或改变PL,C这> 些下改载变在在编退辑出器编中辑进器行前任也何必改须变保或存将到其编传程送设到备C的PU硬,盘例上如。,否用则于,测将试在小的改中

和们编。程设备上有不同版本的用户程序。通常建议首先保存所有改变,然后再下CP载U它

CPU 中的装入存储器和工作存储器

在个完块成下组载态至、可参编数程分控配制和器程。序要测创试建各并个建块立,在必线须连下接载后至,少可以一将个完组织整的块用户程、序功或能各块统(FB数)、据O、B已中组调态用的的网功络能以(F及C创)以建及到使可用编的程数控据制块器(D的B连)。接要表下时载,组请态下硬载件“时系所统创数建据的”系

(OB)

对象。

),或运行已完成的用户程序。

段使用 SIMATIC 管理器将用户程序下载到可编程控制器(例如在程序测试的结束阶

关系-装入存储器和工作存储器

中完。整的用户程序下载到装入存储器;与程序执行相关的部分也装入到工作存储器

STEP 7 V5.4 编程手册-99 STEP 7 V5.4 编程手册-100

&38

/RDG PHPRU\ :RUN PHPRU\

(3520 5$0

3DUWV

5$0 UHOHYDQW WR

SURJUDP

H[HFXWLRQ

3URJUDPPLQJ 'HYLFH
'RZQORDGLQJ WKH SURJUDP WR WKH &38

CPU 装入存储器

)。

        • 储装器入中存储器用于存储没有符号表的用户程序和注释(这些仍保留在编程设备的存
        • 未标记为启动时所需要的块将只存储在装入存储器中。
        • 根据可编程控制器,装入存储器可以是 RAM、ROM 或 EPROM 存储器。

和 。

        • 装入存储器也可以具有集成的 EEPROM 部分,以及集成的RAM 部分(例如

CPU 312 IFM CPU 314 IFM)

        • 在 S7-400 中,必须使用存储卡(RAM 或EEPROM)以扩展装入存储器。

CPU 工作存储器

工作存储器(集成的RAM)用于存储程序处理所需要的用户程序的部分。

可能的下载/上传过程

CPU 的 RAM 中,将提示您确认是否要覆盖块。

        • 存使在用于下载功能将用户程序或可装入对象(例如块)下载到可编程控制器。如果块已

下载。

        • 可以在项目窗口中选择可加载的对象,并通过 SIMATIC 管理器(菜单命令:

菜单命令: 下载。

PLC >

        • 在编写块、组态硬件和网络时,可以通过正在使用的应用程序主窗口中的菜单

显示可访问节点 ,将想要下载的对象复制到在线窗口。

( PLC >

        • 也可以打开具有可编程控制器视图的在线窗口(例如,使用视图 > 在线 或

PLC > )

程另设外备,。可以通过下载功能将块的当前内容从 CPU 的 RAM 装入存储器上传到您的编

依赖于装载存储器的下载方法

的CP块U的的可装用入方存法储。器下划列分方为法R可AM用于和下EE载P数R据OM到区域决:定了下载用户程序或用户程序中

CPU

装入存储器

集成的 仅适用于

(

S7-300)

或插 下载完整的用户程序

下重新载装和入删各除个完块个整块的用户程序

装入的方法

PG 与 PLC 之间的通讯类型

PG - PLC

在线PG - PLC 连接

PG - PLC

在线PG - PLC 连接

过在插入 EPROM 的PLC 上的

在线连接。

或通

外 装 EPROM 并插入存储卡,

下载完整的用户程序

EPROM

RAM

通过在线连接下载到 RAM

中的数据将会丢失。

如果出现掉电并且RAM 未备份,则可编程控制器中的数据会丢失。在这种情况下, RAM

保存到 EPROM 存储卡

块或用户程序保存在 EPROM 存储卡中,然后存储卡插入 CPU 的插槽。

存储卡是便携式的数据介质。它们由编程设备写入,然后插入 CPU 相应的槽中。

CPU 的存储器复位和电源关闭后,当电源恢复时 EPROM 的内容再次复制到

在关闭电源后和 CPU 复位时,存储卡上存储的数据仍保留。如果 RAM 没有备份, CPU RAM

内存的 区域。

保存在集成的 EPROM 中

间对于,在CP集U成3的12,也可以中将的R数AM据的仍内保容留保。存如到果集成的没E有PR备O份M,中在。在电源的关存闭储期器复

位和电源关闭后EP,R当O电M源恢复时集成的

区域。

RAM

RA的M内容再次复制到CPU

内存的

将程序下载到 S7 CPU

        1. 带项目管理的下载

EPROM

CPU

          1. 在项目窗口中,选择想要下载的用户程序或块。
          2. 通过选择菜单命令 PLC > 下载将所选对象下载到可编程逻辑控制器。

其它方法(拖放)

  1. 打开项目的离线窗口和在线窗口。
  2. 在离线窗口中选择想要下载的对象,并将它们拖到在线窗口中。

不带项目管理的下载

          1. “使可用访菜问单节命点令”PL窗C口>。显示可访问节点或通过点击工具栏中的相应按钮,打开
          2. 在“可访问节点”窗口中双击所需节点(“MPI=...”)以显示“块”文件夹。
          3. 单打命开令想文要件将其用打户开程。序或块下载到可编程逻辑控制器的库或项目。为此,使用菜
          4. 在为项目或库> 打开的窗口中,选择想要下载的对象。
          5. 载通到过可在编“程可逻访辑问控节制点器”。窗口中使用拖放将对象复制到“块”文件夹,可将对象下

在可编程控制器中重新装载块

或可工以作用存新储版器本中的的块块覆盖已存在于 S7 可编程逻辑控制器 CPU 中的装入存储器(RAM)

(重载它们)。覆盖已存在的版本。

重载 S7 块的步骤与下载相同。将显示提示信息,询问是否希望覆盖已存在的块。

中。这在装入存储器或工作存储器中造成间隙。如果这些间隙最后意味着没有

不能删除存储在 EPROM 中的块,但是一旦重载将会声明无效。装入替换的块到新RA的M块可以下载,则应该压缩存储器。

位注如释果电源先关闭然后再打开,并且

,“旧”的块再次有效。

RAM

没有电池装备,或随后

CPU

的存储器复

在集成的 EPROM 上保存已下载的块

中,从而在断电或存储器复位后不会丢失数据。

对于带一个集成 EPROM 的 CPU (例如 CPU 312),可将 RAM 中的块保存到集成EPROM

          1. 中使点用击菜“单可命访令问视节图点> ”在按线钮,或显选示择含菜已单打命开令项目在线视显图示的可窗访口问,节或点,,在打工开具“栏可

访问节点”窗口。

PLC >

          1. 点在。项目的在线窗口中选择 S7 或 M7 程序,或在“可访问节点”窗口中选择节
          2. 使用下列方法之一,在 CPU 上选择要保存的“块”文件夹:

如果正在使用项目管理,那么在项目的在线窗口中

如果没有使用项目管理,那么在“可访问节点”窗口中

          1. 选择菜单命令 PLC > 保存 RAM 到 ROM。

通过 EPROM 存储卡下载

要求

的要访问专为 S7 可编程逻辑控制器而设计的编程设备中的 EPROM 存储卡,需要合适

装存储EP卡R,O必M须驱安动装程序。要访文问件为系M统7 可仅编适程用控于制系统设、计的编程设和备中的 EP。R当OM安

Flash 文件系统作为选件提供。如果

,则需要外部编程器来保存到 存储卡。

(双击“存储卡参数分配”图标)调用相应的对话框。

使用

PC EPROM

配也可或以通在过控以制后面安板装驱动程序。为此,通过开始 > Simatic > STEP 7 > 存储卡参数分

保存在存储卡上

要将块或用户程序保存到存储卡,请执行如下操作:

          1. 在编程设备的插槽中插入存储卡。
          2. 通过下列方式打开“存储卡”窗口:

活点工击具工栏具。栏中的“存储卡”按钮。如果必要,使用菜单命令视图 > 工具栏激

也可以选择菜单命令文件 > S7 存储卡 > 打开。

          1. 打开或激活下列窗口之一,以显示想要保存的块:可以有下列窗口:

项目窗口,“在线”视图

项目窗口,“离线”视图

库窗口

“可访问节点”窗口

          1. 选择“块”文件夹或各个块,并将它们复制到“S7 存储卡”窗口。
          2. 并如重果复块从已步存骤在于存开储始卡的上步,骤会。显示出错消息。这种情况下,擦除存储卡的内容,

2

下载和上传

编译和下载来自 PG 的多个对象

关于下载的要求和注意事项

下载块文件夹

均对不于能块在文这件夹里下,只载。能下载逻将辑通块过。“块硬文件件”夹对中象的进其行他下对载象。,例如系统数据(SDB)等,

对注于释

SDB

载对象PC”S也7无项法目对,块正进如行不下能载在。S对IM于ATIC 管理器中对其进行下载一样,使用对话框“编译和下

为载确,定以给便定确的保项下目载是期否间为的正确次序。这PC一S操7作项必目须,完有成以,下以限避制免:PLC 只转能到通过 CF模C式进。行下

下载故障安全控制器的F 共享

PCS 7 项目,请检查项目属性。

CPU

STOP

“出编于安译和全下原因载对,象在”下功载能已时修,改下的载F 过共程享将之中前止必,须并输出入现口一令条。错由误于消这息一。原在因这,种使情用况

下,把合适的程序部分与选项包一起装载到 。

PLC

下载硬件组态

能只,有对在所不有会选触择发的任对何象错无误中消断息或地下提示载硬的件情况组态下,即才,能下通载过离“线编译和。下下载面对的象章”节功提

供了有关如何避免出现这样的消息或提示的信息( 。

SDB)

下载硬件组态的要求

必须位于 模式。

        • CPU STOP
        • 行必“须编可译以和建下立载与对CP象U”的功在能线之连前接,。受对口于令所保选护C的PU 或所将选需块要文一件个夹经而授言权,的在连运接

或输入口令(“编辑”按钮 。

  • 对下载正在使用的目标系统) 的接口,不能进行任何重新组态:

CPU

          • 禁止修改接口地址。

-对于如果您改变了网络设置,这可能意味着不是所有的模块都能访问。

        • “编辑H-”C按PU钮而言,在运行“编译和下载对象”功能(选择“CPU”对象并点击

)之前,您可以选择接收下载的 CPU (H-CPU 0 或H-CPU 1)。

        • 禁止修改下面的 CPU 参数:

- F-CPU 的口令保护(“保护”标签)

          • CPU 上的本地数据和通讯资源的最大值(“存储器”标签)
        • 对于各个已组态的模块,下面的条件必须满足:
          • 所组态的模块的订货号必须与实际插入模块的订货号完全相同。
          • 所组态的模块的硬件版本不能高于实际插入模块的硬件版本。
          • 可站以名分称配、一模个块新名的称设以备及名设称备。名称在上一次下载之后没有进行修改。然而,您

关于下载过程的提示

        • 以所及有通离过线全的局SD数B据均组将态下创载建(也的就是说。,除了硬件组态以外,也将下载连接 SDB
        • 只有在先前的编译期间没有发生SD任B何) 错误时,才能执行下载。
        • 量在,下则载自期动间压,缩任数何据错,误而反不馈会消通息知都用将户被。抑制。例如,如果达到 CPU 存储器容

)。

        • 并在重下新载启完动成的之模后块,除所外下载的模块将处于 STOP 模式(那些不通知用户就自动停止

提示 务如必果在浏下览日载志完文成件之的后,内容出。现这一既条可消能息,是对声明象尚对未象的下载下,载也已可完能成是并对有象警告没有,完那么全下,请

载。

下载和上传

编译和下载对象

目在中“选编择译用和于下传载送对给象”对话及框其中后,续您的要下准载备如一果些需对要象的,话这些。对该象对可话以框在可项以目用或于多站项、

项目或多项目中的对象PL。C ( )

根可据以所供这选些择对的象对使象用的。不这同些,限某制些信尤其息可能适不用显于示。那些此使外用,选下项面软所件描包述创的建功的能对并象非。都

块对的于一块文致性件夹检查中的称为块编,译“编。译”意味着检查块的一致性。为了便于描述,下文中把

步骤:

  1. 器在中SI可M以AT选IC择管下理列器对中象,:选择您希望编译或编译并下载的对象。在 SIMATIC 管理
    • 多项目
    • 项目
    • 没有站分配的 S7 程序
  2. 在 SIMATIC 管理器中,选择菜单命令 PLC > 编译和下载对象。
  3. 希如望果将您这希些望对执象行中块的任检何查一而个不下将载块给下载给 ,PL也C选,择可该以选项择。“只编译”。如果不行为任避何免下由载于”编复译选错框误。而如导果致选到择站该的复不完PL整C下载,可载以任选何择内“容出。现如编果译没错有误选时择不该进

复选框,则编译无误的所有对象均下载选框。导,致则不编译下期间出现错误的对象不被下

4.

载。

  1. 如果希望编译和下载连接,可以为“连接”对象选择相应的复选框。
  2. 下多载项。目特别适合用作启动点,因为跨项目连接的所有连接伙伴也可以从该对象中
  3. 选在标“记编进译行”标和识“。下如载果”在列步中骤,选择中希选望择编“译仅或编下译载”的,对则象“。下对载您”的列选将择变,为通灰过色复,

不能使用。 3

  1. 点击“启动”开始编译。
  2. 按照屏幕上的指示进行操作。

对在象编日译志或下:载完成后,显示一个详尽的日志。可以在任何时候打开整个日志或单个

        • 单击“所有”按钮来视图整个操作的全部日志。
        • 单击“单个对象”按钮,则只视图在对象表内选择的对象的日志。

编译和下载连接时特别需要考虑的事项

连如接果在伙一伴中个的模相块应里“选择连接了“”对连象接。”通对过象这作种为措待编施译,的对象,始那终么创,建ST一E致P的7 自组动态选数择据前(系选统择数的据“块连)。接无”法对直象接,手则动自取动消删选除择选那择些。自动选择S的TE对P象7 。然而,如果取消选定先

“如编果在译”一复个模选框块。里此选外择,“连接”对也象为作所为有待连下接载伙的伴对选象择,“那编么译,”S和TE“P下7 载自动”复选选择以框下。如载果连接只是。选择“连接”ST类EP型7的对象,那么当 CPU 处于RUN-P 工作模式时也可

可以使用 NetPro 下载单个连接。

编译和下载硬件:对连接的影响

“如果连选接”择对“硬象作件”为待对象编译作为或下待载编的译对或下象。载然的对而,象在,这也种自情动况选择下此,不选中自动硬选件择下的连接所有伙

伴上的连接对象!

从可编程控制器上传至 PG/PC

该功能支持执行下列操作:

  • 保存来自可编程控制器的信息(例如,用于服务目的)
  • 如果在开始组态之前就有硬件组件,可快速组态和编辑一个站。

保存来自可编程控制器的信息

备。

下载和上传

快速组态

部有分必不要可使用时该。措此施时的,情况至少是,可以例恢如,复在线CP可U用上的运项行目的数版据本,的并离将线它项们目上数传据至不编可程用设或

设组备态,好那硬么件更并易重于启输动(入暖站启组动态)站。后这,为如您果提已供经了将站组组态态数和据单从个可模编块程的控类制型器。上之传后至,编所程将下列信息上传至编程设备:

要做的就是更详细地指定这些模块 订货号 ,并为它们分配参数。

( )

  • S7-300:用于中央机架和任何扩展机架的组态
  • S7-400:带一个CPU 的中央机架以及无扩展机架的信号模块的组态
  • 分布式 I/O 的组态数据不能上传至编程设备。

器如果复在位的可情编况程下控。制器否则上,没上有组传功态能信可息提,供那更么好上的传结该信果。息;例如,在系统中执行存储

),然后为它们分配参数。

号对于不带分布式 I/O 的 S7-300 系统,所需做的工作就是更详细地指定这些模块(订货

注上传释数据时 如果还没有离线组态 , 不能确定组件的所有订货号。

组态硬件时,( 可使用菜单命令选项) S指TE定P模7块,输入“不完整”的订货号。通过该

出方式现的,模可块以将;参然数而分,配此给时STEP 7 不不>能会识检别查的是模否块遵(守即了,参在数“规硬则件。目录”窗口中没有

)

STEP 7

从可编程控制器上传时的限制条件

下列限制条件适用于从可编程控制器上传至编程设备的数据:

    • 块不包含参数、变量和标签的任何符号名
    • 块不包含任何注释
    • 程所序有的系系统统数数据据会随整个程序一同上传,系统只能继续处理属于“组态硬件”应用
    • 不能更进一步处理用于全局数据通讯(GD)和组态与符号相关消息的数据
    • 强制作业不随其它数据一起上传至编程设备。它们必须单独保存为变量表(VAT)
    • 不上传模块对话框中的注释
    • 义只下有的在对组话态框期中间的选“择在了可相编应程选逻项辑时控才制显器示中模保块存的对名象称名(H称W”C选on项fig:。选项 > 自定

)

      1. 上传站

到使编用程菜设单备命令。 PLC > 上传站 ,可以将当前组态和所有块从所选的可编程控制器上传

为预此设,名S例TE如P,7“在将要保存组态的当前项目”中。创插建入新的的站工将作在站在。线可视以图改和变离新线工视作图站中的

都显示(。

SIMATIC 300-Station(1) )

对当菜打单开命项令目时造成,可影以响。选择菜单命令。在项目窗口或视图(在线或离线)中选择对象将不可以使用此功能简化组态操作。

        • 分对布于式S7-300 可。编程控制器,上传实际硬件配置的组态(包括扩展机架),但没有

对于不带分S7布-4式00 可编程控制器,上传机架配置,但没有扩展机架和分布式的 I/O。

配参数。

I/O 的 S7-300 系统,必须更为详细地指定模块(订货号)并为它们分

上传站时的限制

上传到编程设备的数据有下列限制:

        • 块不包含参数、变量和标签的任何符号名
        • 块不包含任何注释
        • 整个程序连同所有系统数据上传,因此不是所有数据均可进一步处理
        • 据不能进一步处理用于全局数据通讯(GD)、组态符号相关的消息和组态网络的数
        • 强制作业不能上传到编程设备,于是加载回可编程控制器。

从 S7 CPU 上传块

块可上以使传用到编SI程M设AT备IC是管十理分器有将用S的7:块从 CPU 上传到编程设备的硬盘。在下列情况下将

CPU 进行存储器复位后,可再次下载该备份。

        • 对制作 CPU 中加载的当前用户程序的备份副本。例如,在维修后或在由维护人员
        • 用可于以故将障用诊户断程目序的从。CP这U种上情传况到下编,程不设能备访,问并程在序编文程档设的备符上号对或其注进释行。编因辑此,,例我如们

建议此步骤仅适用于维护目的。

在 PG/PC 中编辑上传的块

能够将块从 CPU 上传到编程设备具有下列用途:

        • 在测试阶段,可以在CPU 上直接更正块并对结果进行归档。
        • 备可。以通过加载功能,将块的当前内容从 CPU 的RAM 装入存储器上传到编程设

在注释线和离线工作时的时间标志冲突

下列步骤会导致时间标志冲突,因此必须避免。

下列情况下在线打开块时会引起时间标志冲突:

        • 在线所作的改变未在离线 S7 用户程序中保存
        • 离线所作的改变未下载到 CPU

下列情况下在线打开块时会引起时间标志冲突:

        • 将具有时间标志冲突的在线块离线复制到 S7 用户程序,然后离线打开块。

两种不同的情况

当从CPU 上传块到编程设备时,记住有两种不同的情况:

1. 块所属的用户程序在编程设备上。块所属的用户程序不在编程设备上。

这2.

意味着下面列出的不能下载到CPU 的程序部分是不可用的。这些组件是:

        • 其符号名具有地址和注释的符号表
        • 梯形图或功能块图程序的程序段注释
        • 语句表程序的行注释
        • 用户自定义的数据类型

用户程序在 PG/PC 上时编辑上传的块

要从CPU 编辑块,可如下操作:

          1. 在 SIMATIC 管理器中打开项目的在线窗口。
          2. 从在线窗口中选择“块”文件夹。显示加载的块列表。
          3. 现在选择块,将其打开并进行编辑。
          4. 选择菜单命令文件 > 保存以在编程设备上离线保存改变。
          5. 选择菜单命令 PLC > 下载以将改变的块下载到可编程控制器。

用户程序不在 PG/PC 上时编辑上传的块

要从CPU 编辑块,可如下操作:

          1. 显在示SI可M访AT问IC节管点理。器中,点击“可访问节点”工具栏按钮或选择菜单命令 PLC >
          2. 从显示的列表中选择节点(“MPI=...”对象),然后打开“块”文件夹以显示块。
          3. 现在可以打开块,并根据需要对其编辑、监视或复制。
          4. 径选。择菜单命令文件 > 另存为,然后在对话框中为编程设备输入想要存储块的路
          5. 选择菜单命令 PLC > 下载以将改变的块下载到可编程控制器。

在可编程控制器上删除

删除加载/工作存储器,并复位 CPU

确将用保户程序上下没载有到“S旧7 ”可块编。程控制器之前,应该在 CPU 上执行一次存储器复位,以

CPU

存储器复位要求

,可通过菜单命令 诊断 设置 工作模式将模式改为 。

CPU 必须处于 STOP 模式,以执行存储器复位(模式选择器设为 STOP,若为 RUN- P PLC > / > STOP)

在 S7 CPU 上执行存储器复位

在 S7 CPU 上执行存储器复位时,会执行如下各项:

        • 复位CPU。
        • 删除所有用户数据(块和系统数据块(SDB),MPI 参数除外)。
        • CPU 中断所有已存在的连接。
        • 会如将果在 EPROM内容(存复储制卡回或存集储成器E的PROM)上区存。在数据,则在存储器复位后,CPU

诊断缓冲区EP的R内OM容和 参数保留。 RAM

MPI

在 上执行存储器复位

M7 CPU/在FM

M7 CPU/FM 上执行存储器复位时,执行如下各项:

        • 恢复初始状态。
        • 除 MPI 参数外,删除系统数据块(SDB)。

之后,继续运行。

        • CPU/FM 终止所有已存在的连接。保留用户程序,当 CPU 从 STOP 切换到

RUN

SDB。在有些情况 (SDB)下,需要暖启动操作系统。为此,可使用模式选择器 切换到

方通过法是“从存工储作器存复储位器”中功删能除,当可前在系发统生数严据重块错误后恢,复然M后7在CP只U读或存F储M器的中初重始新状加态载,

MRES 位置 清除 M7。只有在 CPU/FM 上使用 RMOS32 操作系统时,才能在

)

)

(

SIMATIC M7 CPU 或 FM 上使用模式选择器进行复位。

在可编程控制器上删除 S7 块

EPROM 或RAM 上(根据CPU 和加载步骤)。

储删器除的CPU 上的单个块可能在 CPU 程序的测试阶段是必需的。块存储在 CPU 用户存

        • 可在以RA再M次中使的用块。可以直接删除。在装入或工作存储器中占用的空间将被释放,并
        • 直在接CP删U除的存储器中复的位副后本,。在于集是成,的删除EP的R块OM在中的块始终中复标制记到为无RA效M,区直。到可下以一

次存储器复RA位M或电源关闭而 没有备份。在EP存R储O器M复位或电源关闭而

没集有成备的份后,“删除的”块将RA从M 复制到 ,然后变成激活状态R。AM在

删除。 EPROM 中的块(例如,在CPU 312 中)将由新的 RAM 内容覆盖,从而被

EPROM RAM

        • EPROM 存储卡必须在编程设备中擦除。

压缩用户存储器(RAM)

用户存储器(RAM)中的间隔

减在删少可除使和用重的新存加储载器块后区域,可。使能用会压在用缩功户能存,储可器将(装现入有和块工在作用存户储存器储)中器产中生无间间隔隔,地从重而

新排列,并创建连续的空闲存储空间。

下图显示了存储器占用的块是如何通过压缩功能移位到一起的。

0HPRU\ RFFXSLHG EHIRUH FRPSUHVVLQJ

0HPRU\ RFFXSLHG DIWHU FRPSUHVVLQJ

2FFXSLHG PHPRU\

)UHH PHPRU\

始终尝试在 模式中压缩存储器

只ST有O在P

器设置 STOP 模式下压缩存储器时,所有的间隔才靠拢。在 RUN-P 模式(模式选择

式 )中,因为当前正在处理的块是打开的,所以不能移位。压缩功能在 RUN 模

(模式选择器设置)下时不起作用(写保护!)。

压缩 S7 CPU 的存储器内容

压缩存储器的方法

有两种方法可以压缩用户存储器,如下所述:

        • 以当通下过载点到击可对编话程框控中制的器相时应如按果钮没压有缩足存够储的器存。储空间,将显示对话框通知出错。可
        • 模也块可信以息采,取“预存防储性器措”施标,签显页示存,储并器根的据利需用要情启况动(压菜缩单功命能令。PLC > 诊断/设置 >

)

步骤

  1. 在“可访问节点”窗口或项目的在线视图中选择 S7 程序
  2. 选择菜单命令 PLC > 诊断/设置 > 模块信息。
  3. 能在,随则后在显该示标的签对页话中框存中在选一择个“相存应储功器能”的标按签钮页。如果 CPU 支持压缩存储器功

下载和上传

关于使用变量表进行测试的说明

变护量的表目具的有而能很够容存易储地各进种行不测同试测和试监情控况。的变优量点表。的从可而存可储数在操目作没期有间任或何出限于制保。养和维当使用变量表进行测试时,下列功能都可用:

      • 该监功视能变将量使您能够在可编程设备 上显示用户程序或 中单个变量的当前

值。 /PC

可使用该功能将固定值分配给用户程序或

CPU

      • 修改变量

行测试时也可以修改数值一次并立即触发。CPU

的单个变量。在使用程序状态进

      • 这启两用个外功围能设允备许输您出将和固激定活值修分改配值给处于
      • 可强使制用变该量功能为用户程序或

STOP

模式下的

CPU

的单个

I/O

输出。

值。

您可设置或显示下列变量的值:

CPU 的单个变量分配一个用户程序无法覆盖的固定

      • 输入、输出、位存储器、定时器以及计数器
      • 数据块的内容
      • I/O (外围设备)

在变量表中输入您想要显示或修改的变量。

您配可新通的过数定值义。触发点和触发频率来确定何时以及每隔多久对变量进行监视或为其分

用变量表测试

使用变量表进行监视和修改时的基本步骤

要使用监视和修改功能,可如下操作:

  1. 创建一个新的变量表或打开一个已经存在的变量表。
  2. 编辑或检查变量表的内容。
  3. 使用菜单命令 PLC > 连接到,在当前变量表和所需的 CPU 之间建立在线连接。
  4. 使用菜单命令变量 > 触发器,选择合适的触发点并设置触发频率。
  5. 菜单命令变量 > 监视和变量 > 修改,打开、关闭监视和修改功能。
  6. 调使用它菜。单命令表 > 保存或表>另存为来保存所完成的变量表,以便可以随时再次

用变量表测试

编辑和保存变量表

创建和打开变量表

列在方监法视或之一修改来创变量建变之量前表,:必须创建一个变量表(VAT),并输入所需的变量。可选择下

在 SIMATIC 管理器中:

        • 给选表择命“名块”“文符件号夹名,称并”选文择本菜框单。命可令以插通入过>双S击7 块对象> 打变开量变表量。表在。对话框中,可以
        • 选择一个(连接,或在在线视图中) ,从可用的节点列表中选择

用菜单命令 监视 修改变量,创建一个未 S7命名变量表。

PLC > /

在“监视/修改变量”中:

> 打开来打开已存在的表。

或 M7

程序。使

        • 通可过使表用格菜单命令表格 > 新建来创建还没有分配给 S7 或 M7 程序的新变量表。可

可使用工具栏中的相应符号来创建或打开变量表。

一•

旦创建了变量表,可以保存该变量表,打印输出,并反复用于监视和修改。

复制/移动变量表

可以在 S7/M7 程序的块文件夹中复制或移动变量表。

复制或移动变量表时,请注意:

        • 将更新目标程序符号表中的现有符号。
        • 中当。移动变量表时,来自源程序的符号表的相应符号也将移动到目标程序的符号表
        • 当从块文件夹删除变量表时,也将删除来自 S7/M7 程序符号表的相应符号。
        • 高如空果闲目编标号程。序已包含具有相同名称的变量表,当复制变量表时,将分配下一个最
        • 认如情果况目下标,程已序存已在包的含名具称有带相有同编名号称的。变量表,可以在复制时重命名变量表(在默

)

保存变量表

当再次测试程序时,可以使用所保存的变量表来监视和修改变量。

  1. 使用菜单命令表 > 保存来保存变量表。
  2. “如果已创建了变量表,那么现在必须给变量表指定一个名称,例如

”。

保存变P量rogramTest_1

项下所作表的时设,置将。保存所有当前的设置和表格式。这意味着将保存“触发器”菜单

在变量表中输入变量

在变量表中插入地址或符号

“选择向要内”修工改作或;监这视表其示值应的该变量先选,择然输后入在,变量然后表选中择输受入这输入些影变响量以。及从“影响外部输”出开的变始,如例下如进,行如输果入希望:监视输入位 1.0、存储字 5 以及输出字节 0,那么在“地址”栏中按

实例:

量,最后选择输出。

I 1.0 MW5 QB0

一个已完成的变量表的实例

下图所示为具有下列可见栏的变量表:地址、符号、显示格式、监视值和修改值

STEP 7 V5.4 编程手册-101

插入符号时的注意事项

        • 输入希望通过地址进行修改的变量或作为符号的变量。可在“符号”栏或“地如果在符号表中定义了相应的符号,那么会自动填写符号栏或地址栏。

址”栏中输入符号和地址。然后该条目会在对应的栏中自动写入。

        • 只能输入已经在符号表中定义过的那些符号。
        • 必须完全按照符号表中的定义来输入符号。

为Motor了在符+Off”、“Motor-Off”) 。

        • “含特殊字符的符号名称必须包含在引号内(例如,“Motor.Off”、
        • 复制符号,号并表将中其定粘义贴新到的变符量号表,中可。选择菜单命令选项 > 符号表。可从符号表中

语法检查 在变量表中输入变量时,在每行末尾执行语法检查。错误的条目以红色标记。

键,可获取校正错误的注意事项。

如果将光标放在用红色标记的行中,则会显示一条简要信息,告知错误原因。按下

F1

特性。 ( )

注如释果希望通过键盘编辑变量表 不用鼠标 ,那么应该启用“使用键盘时的简要信息”

最大数目

量如有表必中要的设,置可。通过选择菜单命令选项 > 自定义,然后选择“常规”标签页来改变变

表在最变多量可表中有,每行最多可输入 255 个字符。不能通过回车键转到下一行。每个变量

1024 行。这就是其最大数目。

在变量表中插入相关的地址范围

  1. 打开变量表。
  2. 将光标放在希望相关地址范围插入其后的行的中间。
  3. 选择菜单命令插入 > 变量范围。显示“变量的插入范围”对话框。
  4. 在“起始地址”域中输入地址作为起始地址。
  5. 在“编号”域中输入要插入的行编号。
  6. 从显示的列表选择要求的显示格式。
  7. 点击“确定”按钮。

变量范围插入变量表中。

插入修改值

修改作为注释的值

在如要果修希改望的制作变量无值效前变的量注的释“标修识改“值”“,表请示使这用是变无量效>的修。改也作可为以注在释“的修值改菜值单”命的令前。面

值插菜入单命命令令标或识通“过//”删以除代注替释菜标单识命来令反//调向用设。置可“以修通改过值再”次的调无用效变性量。> 修改作为注释的

输入定时器的上限

注意下列输入定时器的上限:

实例:W#16#3999 (BCD 格式的最大值)

实例:

地址

监视格式

输入

修改值显示

BCD 格式可能的表示法

解转释变到毫秒

BCD 格式可能的表示法

视格式 SIMATIC_TIME

不能以 BCD 格式表示,因此不能选择监

W#16#009D

157

HEX

MW6

W#16#0089

137

HEX

MW4

S5TIME#890MS

137

SIMATIC_TIME

MW4

S5TIME#130MS

137

SIMATIC_TIME

T 1

        • 入可时以以间值毫的秒长步长度输入定变时成器,但毫输秒入;的值毫改秒变被成取时整间。帧。时间帧的长度依赖于输型都是有效W的ORD 的数地字址。修如改果值输(如入IW不1能)转表换示成为数BC据D类格型式。然而,的不地是址每的个位类

注释

BCD

WORD

格SIM式A”T、IC“_T默IM认E”,命应令用程“序视自图动”转菜换单为,默以认使格输式入(此的处值:可H以EX显,示参。见“选择监视

(

))

SIMATIC_TIME 格式中变量的 BCD 格式

个位具有如下意义:

SIMATIC_TIME 格式中的变量值以 BCD 格式输入。16

位 15 和 14 如终是零。

13 和 12 (用 xx 标志)设置位 0 - 11 的乘数:

00 => 乘以 10 毫秒

乘以 秒

01 => 乘以 100 毫秒

位 11 => 乘 以 10 秒

位 7 到 4 数十(tttt)

10 => 1

位 11 到 8 数百(hhhh)

3 到 0 单位(uuuu)

输入计数器的上限

注意下列输入计数器的上限: 计数器的上限: C#999

格式的最大值

W#16#0999 (BCD )

实例:

地址

监视格式

输入

修改值显示

BCD 格式可能的表示法

BCD 格式可能的表示法

转解换释

视格式 COUNTER

能选择监

不能以 BCD 格式表示,因此不

W#16#009D

157

HEX

MW6

W#16#0089

137

HEX

MW4

C#89

137

COUNTER

MW4

C#137

137

COUNTER

C1

        • 格如果式为计数变器成输入十进。制的数字,而没有用 C#标志值,此值自动地转换为 BCD

注释

型都是有效W的ORD 的数地字址。修如改果值输(如入IW不1能)转表换示成为数BC据D类格型式。然而,地不址是的每个位类式CO”U、NT“E默R,认应”BC用命D程令序“自视动图转”换菜为单默认,格以式使(输此入处的:值H可EX以,W显参O示见R。D“选择监视格

(

))

插入注释行

注释行由注释标识“//”引导。

STEP 7 V5.4 编程手册-102 如果希望制作一行或更多行的无效变量表(作为注释行),请使用编辑 > 无效行菜单命

令或工具栏中相应的符号 。

实例

在变量表中输入地址的实例

允输许入的地址:

| 输出 | 位存储器

数据类型:

实例(英语助记符):

输入 | 输出 | 位存储器

| 输出 | 位存储器

I/O (

输入 | 输出)

| 输出 | 位存储器

I/O (

输入 | 输出)

I/O (

计数

输入 | 输出)

数据块

数据块

DB1.DBD 1

DWORD

DB1.DBW 1

WORD

DB1.DBB 1

BYTE

DB1.DBX 1.0

BOOL

C 1

COUNTER

T 1

TIMER

PID 0 | PQD 1

DWORD

PIW 0 | PQW 1

WORD

PIB 0 | PQB 1

BYTE

ID 1 | QD 10 | MD 100

DWORD

IW 1 | QW 10 | MW 100

WORD

IB 1 | QB 10 | MB 100

BYTE

I 1.0 | Q 1.7 | M 10.1

BOOL

注不允释许使用条目“DB0. ..”因为它已在内部使用。

在强制值窗口中

          • 在强制 S7-300 模块时,只允许输入、输出和 I/O(输出)。
          • 在强制 S7-400 模块时,只允许输入、输出、位存储器和 I/O(输入/输出)。

输入相关地址范围的实例

打开变量表,使用菜单命令插入 > 变量范围,调用“变量的插入范围”对话框。在对话框条目中,下列用于位存储器的行被插入变量表:

          • 起始地址:M 3.0
          • 编号:10
          • 显示格式:BIN

地址 显示格式

M 3.0 BIN
M 3.1 BIN
M 3.2 BIN
M 3.3 BIN
M 3.4 BIN
M 3.5 BIN
M 3.6 BIN
M 3.7 BIN
M 4.0 BIN
M 4.1 BIN

注意,在此例中,“地址”列中的标识在第八个条目后改变。

输入修改和强制值的实例位地址

可能的位地址 允许的修改/强制值

I1.0 true
M1.7 false
Q10.7 0
DB1.DBX1.1 1
I1.1 2#0
M1.6 2#1

字节地址

字地址

可能的字节地址 允许的修改/强制值

可能的字地址 允许的修改/强制值

IB 1 2#00110011
MB 12 b#16#1F
MB 14 1F
QB 10 'a'
DB1.DBB 1 10
PQB 2 -12
IW 1 2#0011001100110011
MW12 w#16#ABCD
MW14 ABCD
QW 10 B#(12,34)
DB1.DBW 1 'ab'
PQW 2 -12345
MW3 12345
MW5 s5t#12s340ms
MW7 0.3s
MW9 c#123
MW11 d#1990-12-31

0.3s 或

双字地址

可能的双字地址 允许的修改/强制值

ID 1 2#00110011001100110011001100110011
MD 0 23e4
MD 4 2
QD 10 dw#16#abcdef10
QD 12 ABCDEF10
DB1.DBD 1 b#(12,34,56,78)
PQD 2 'abcd'
MD 8 L# -12
MD 12 L#12
MD 16 -123456789
MD 20 123456789
MD 24 T#12s345ms
MD 28 Tod#1:2:34.567
MD 32 p#e0.0

定时器

可地能址的“定时器”类型的

转换到毫秒(ms)
T 1 0
T 12 20
T 14 12345
T 16 s5t#12s340ms
T 18 3 1
T 20 3s 1

允许的修改/强制值 解释

转换到毫秒

300 毫秒

转换到

字符串A T1 逻辑操作的结果。

秒 300 毫秒

计数器

改修改变定时器只影响值,不影响状态。这意味着可以将定时器 T1 的值修改为 0,无需

5t、s5time 可以用大写或小写写入。

可能的“计数器”类型的地址 允许的修改/强制值

C 1 0
C 14 20
C 16 c#123

改修改变计数器只影响值,不影响状态。这意味着可以将计数器 C1 的值修改为 0,无需

A C1 逻辑操作的结果。

建立到 CPU 的连接

用变量表测试

接为了。能可以监将视或每个修改变在量表当与前不变同量的表(VAT)进中行输链入接的。变量,必须建立到适当的 CPU 的连

CPU

显示在线连接

C“PU,状态栏中会显示“RUN”、“STOP”、“DISCONNECTED”或

如果存在在线连接,那么变量表窗口标题栏中的术语“ONLINE”指示该情况。根据

CONNECTED”工作状态。

建立到 CPU 的在线连接

CPU 的连接,从而可以监视或修改变量。

个如到果所不需存在到所需 CPU 的在线连接,可使用菜单命令 PLC > 连接到 > ... ,定义一

中断到 CPU 的在线连接

使用菜单命令 PLC > 断开,可以中断变量表和 CPU 之间的连接。

注如释果通过菜单命令表格 > 新建来创建一个未命名的变量表,那么在定义了该变量表

CPU

时,可以将其连接到最近组态的已组态 上。

监视变量

监视变量简介

可使用下列方法来监视变量:

        • 触通发过频菜率单显命示令选变中量变> 量监的视值器。激如活果监将视触功发能频。率在设变置量为表“中每根个据周所期设”置,的那触么发可点以和通

过菜单命令变量 监视器取消选择监视功能。

>

        • 选使中用变菜量单的命当令前变值量。> 更新监视值,可随即更新选中变量的值。在变量表中显示

通过 ESC 中断“监视”

如果在“监视”功能激活时,按下 ESC 键,那么不经询问直接终止该功能。

定义用于监视变量的触发器

当可前以在值,程以序进处行理监期间视。的特定点(触发点)处,在编程设备上显示用户程序内单个变量的选择了触发点,就确定了显示变量监视值的时间点。

可使用菜单命令变量 > 触发器来设置触发点和触发频率。

触触发发器点

触发频率 周从期结束转换到
每个周期

可周能期的开始设置

一次RUN

STOP

STEP 7 V5.4 编程手册-103 触发点 下图显示了触发点的位置。

STEP 7 V5.4 编程手册-104 STEP 7 V5.4 编程手册-105

U SRLQW "6WDUW RI F\FOH"

2% 1

7ULJJHU SRLQW "7UDQVLWLRQ IURP 581 WR 6723"

7ULJJHU SRLQW "(QG RI F\FOH"

3URFHVV-LPDJH RXWSXW WDEOH

3URFHVV-LPDJH LQSXW WDEOH
7ULJJH

立即触发

始为”了,在将“用状于态修值改”的栏触中显发点示修设置改为值“,应周期该将结束用”于。监视的触发点设置为“周期开

发可使”用并尽菜快单命执行令变,量不参> 考更用新户监程视序值中来的更任新何选一中点变。量这的些值功。能采主用要该用命于令在表示“立即模触式

中进行监视和修改。

触发频率 下表显示了触发频率对监视变量的影响:

STOP

监视变量

触 率:一次

取决于触发点

更新一次

触发频率:每个周期

测试块时,可精确跟踪处理进程。

通 定义的触发器监视

修改变量

关于对变量进行修改的说明

修改变量时,可采用下列方法;

        • 户使程用序菜为单变命量令表变中量选> 择修的改变,量激应活用修修改改功值能。如根果据设置的触发频点率和为触“发每频周率期,”用,

可以再次使用菜单命令变量 修改来关闭修改功能。

>

可以使用菜单命令变量 激活修改值,立即更新一次所选变量的值,。制和启用外围设备输出(PQ)功能提供了其它的可能性。

强• >

修改变量时的注意事项:

        • 可如只果有已在经在启变动量了表修中改修,改再开减始小时变那量些表可可见视的区地域址的,大才小能,被地修址改可。能被修改,但却不

如见果。扩大变量表的可视区域,可能会有一些可见的地址却不能被修改。

        • 修改无法撤消(例如用编辑 > 撤消)。

!

危过险程正在运行时改变变量值,如果此时功能或程序发生错误,可能会导致财产或人

在员执的行严“重修损改害”。功能以前,确保不会发生危险的状况。

使用 ESC 键中止“修改”

当“修改”功能正在进行时,按下 ESC 键,将不作任何询问中止该功能。

定义用于修改变量的触发器

配可在固程定序值。处理期间(触发点),在指定点处给用户程序(一次或每个周期)的单个变量分选择了触发点,就确定了将修改值分配给变量的时间点。

可使用菜单命令变量 > 触发器来设置触发点和触发频率。

触触发发器点

触发频率 周从期结束转换到
每个周期

可周能期的开始设置

一次RUN

STOP

触发点 下图显示了触发点的位置。

STEP 7 V5.4 编程手册-106

SRLQW "6WDUW RI F\FOH"

STEP 7 V5.4 编程手册-107 STEP 7 V5.4 编程手册-108

3URFHVV-LPDJH LQSXW WDEOH
7ULJJHU

2% 1

触发点的位置表明:

3URFHVV-LPDJH RXWSXW WDEOH

7ULJJHU SRLQW "(QG RI F\FOH"

7ULJJHU SRLQW "7UDQVLWLRQ IURP 581 WR 6723"

        • 于修其改它输触入发仅点对在“修周改期后开会始更”新触输发入点的有过用程(相映当像于,用从户而程重序写O。B1 开始),因为,对
        • 于修其改它输触出发仅点对用“户周程期序结重束写”输触出发过点程有映用像(相。当于用户程序 OB1 结束),因为,对

)

立即触发

始为”了,在将“用状于态修值改”的栏触中显发点示修设置改为值“,应周期该将结束用”于。监视的触发点设置为“周期开修改变量时,下列各项适用于触发点:

  • 如果将触发频率设为“一次”,那么当不能修改选中的变量时,出现一个消息。
  • 触发频率为“每个周期”时,不出现消息。

发可使”用并尽菜快单命执行令变,量不参> 考激用活户修程改序值中来的修任改何选一中点变。量该的功值能。主采要用用该于命在令表示“立模即式触中

进行修改。

触发频率 下表显示了所设置的触发条件对修改变量的影响:

可无以关给。变量赋值一次,与触发点 通定过条分件配,固并定以值此,来可调以试为已用经户编程的模功拟能特。

STOP

修改变量

触激发活频一次率:一次

通触过发预频定率义:的每触个发周器期进行修改

用变量表测试

强制变量

在强制变量时的安全措施

STEP 7 V5.4 编程手册-109

当心造成人员伤亡和财产损坏

注意,当使用“强制”功能时,任何不正确的操作都可能会:

        • 造成人员伤亡,或
        • STEP 7 V5.4 编程手册-110 造成机器或整个工厂的损害
        • 在启动强制功能前,应该查明没有人同时在同一 CPU 上执行此功能。

!

当心

        • 和强修制改作变业量只”能应用用菜程单序命不令会变删量除> 强停制止作强业制。来删除或终止。关闭强制值窗口或退出“监视
  • 强制不能撤销(例如用编辑 > 撤销)。
        • 要阅读关于强制和修改变量之间的区别的信息。
        • 的如。果 CPU 不支持强制功能,与强制动作链接的变量菜单中的所有菜单命令都是取消激活

它如们果的使强用制菜值单。命令变量 > 启用外围输出来取消激活输出禁用,所有的强制输出模块都会输出

关于对变量进行强制的说明

CPU 必须支持该功能(例如,S7-

序可,以也为不用能户对程其序加的以单修个改变或量分覆配盖固。定对此值的,要这求样是,即使是 CPU 中正在执行的用户程 4来0测0 C试P编U写)。的通功过能为。变量分配固定的值,可以为用户程序设置特定的状况,然后以此

“强制值”窗口

只有当“强制值”窗口是激活的,才可以选择强制菜单命令。

要显示该窗口,可选择菜单命令变量 > 显示强制值。

对的于变每量个,以CP及U它,们只各应自当的打强开制一值个。“强制值”窗口。在该窗口中显示激活的强制作业

强制值窗口的实例

STEP 7 V5.4 编程手册-111

当前在线连接的名称显示在标题栏中。

从 CPU 中读取的强制作业的数据和时间显示在状态栏中。如要没有激活的强制作业,则窗口为空。

在“强制值”窗口中,显示变量的不同方法具有以下含义:

显粗示体:

常呈规灰:色:

含已义经在 中分配了固定值的变量。

正在编辑CP的U变量。

地址错误的变量;显示出错消息。

机或架中不存在/未插入的模块的变量

用变量表测试

使用变量表中的强制地址

如用果菜要单将命变令变量表量中的强变制量值输,入打到开强制值窗口。选模择块表可格以和强所制需的的变变量量将。被下输一入步到,强调制

值窗口中。 >

使用 CPU 的强制作业或建立一个新的强制作业

如果“强制值”窗口已经打开并已激活,将会显示另一个消息:

        • 命如令果编确辑认它,撤窗消口来中恢的复改先变前将窗以口的CP内U容上。存在的强制作业来覆盖。可以使用菜单
  • 如果取消它,则将保持窗口的当前的内容。

>

要择将菜“单强命制令变值”量窗口强的制内:容它保将存把为窗变口量的表当,前可内以容使作用为菜新单的命强令制表作业> 写另入存为或选。

只能在变量表中监视和> 修改变量,而不能在“强制表”窗口中进行。 CPU

删除强制值调除用强菜制单从命所令选变量 > 显示强制值来打开强制值窗口。然后,调用菜单命令变量 > 删

CPU 中删除强制值。

保存强制值窗口

可存以的将内强容制重值新窗插口入中到内强容制保值存窗到口变中量。表中。使用菜单命令插入 > 变量表,可以将保

关于强制值窗口中符号的注意事项

除输非入是上从次不激包活含的符窗号口的中其的它符应号用。程序中打开“监视和修改变量”应用程序,否则将

表如果是不未能激活输状入态符。号名称,将隐藏“符号”列。在这种情况下,菜单命令选项 > 符号

强制变量和修改变量之间的差别

下表总结了强制变量和修改变量之间的差别:

特性/功能

S7-400 中的强制 S7-300 中

修改

位存储器

定时器和计数器 、

(M)

围设备的输出

块 (DB)

(T C)

不必中断有效地替换强制/ 值

输出

(I、Q)

(PIB、 、

(PQB、

PIW PID)

PQW

(包括

是CPU 318-2DP)

–是是

的强制(不包括

CPU 318-2DP)

输入

PQD)

用户程序可以覆盖修改 强制值

当与用程序退出后,变量保持它们的值 是

是是

的值 CPU 的连接中断后,变量仍保持它们 是

是–

功能仅在激活窗口的可视区域影响变量 总影是响立所即有触强发制值 总影是响立所即有触强发制值

最值后一个变为有效一是次或每个周期

修改/强制值:0

IW1 修改/强制值:1

设置触发器IW1

允例许如的寻址错误:

        • 通上过生“效启;用然外而围,设外备围的设输备出输”出,的使修强改制值外则围不设会备生输效出。的强制值在相应的输出模块

注释

        • 对有于形强式制的变写量访,问变都量无始效终。具有强制值。每次读取用户程序时,都会读取该值。所
        • 对于永久的修改,程序的读取访问有效并一直持续到下一个触发点。

序您。可在以“通自过定显义示”每对条话指框令的“程序状态(RLO、状态位)或相应寄存器的内容来测试程

在“ LAD/FBD”标签里,可以定义显示信息的范围。可以

框。LAD/STL/FBD:编程块”窗口中,使用菜单命令选项 > 自定义,打开该对话

!

警在重损过程害运。行期间测试程序,如果功能或程序发生错误,可能会导致财产或人员的严执行该功能前确保不会发生危险的情况。

要求 要显示程序状态,需要满足下列要求:

  • 必须保存没有错误的块,然后再将它下载到 CPU 中。
  • CPU 和用户程序必须正在运行。

监视程序状态的基本步骤

试强。烈应建当议从您调不用要调体用系整最深个程的嵌序套来层调试的块,而开始是,逐例个的如,调在用块,然中后调单用独它对们其,进然行后调通过

监视和修改变量,为块创建要测试的环境。

OB1

2SHQ EORFN RQOLQH

'HILQH WKH GLVSOD\ IRU WKH SURJUDP VWDWXV

'HILQH WKH FDOO HQYLURQPHQW (RSWLRQDO)

6HOHFW WKH RSHUDWLRQ PRGH IRU WKH WHVW

6ZLWFK WHVW RQ/RII

)。这些测试功能不能用于过程操作模式。

操要作设置断点,以单步模式来执行程序,必须设置测试操作模式(参见菜单命令调试 >

    1. 程序状态显示

程序状态的显示是周期性更新的。它从选择的程序段开始。

在 LAD 和 FBD 中预设颜色

  • 状态实现:绿色实线
      • 状态没有实现:蓝色点划线

状态未知:黑色实线

线变类。型和颜色的预设值可以在菜单命令选项 > 自定义、“LAD/FBD”标签页下改

元素状态

线状态

  • 触点的状态是:
  • 如果地址具有值“1”代表实现
  • 如果地址具有值“0”代表没有实现
  • 具有启用输出(ENO)的元素的状态对应于将 ENO 输出值作为地址触点的状态。
  • 如果地址值为未知则代表未知
  • 具有Q 输出的元素的状态对应于具有地址值触点的状态。
  • 如果调用后 BR 位被置位,那么 CALL 状态将实现。
  • 如果执行跳转(即如果跳转条件满足),那么跳转指令的状态将实现。

如果启用的输出没有连接,具有启用输出 的元素以黑色显示。

  • (ENO)
  • 如果未穿过线或如果线状态未知,则这些线是黑色的。
  • 从母线开始的线状态始终为“1”。
  • 从并联分支开始的线状态始终为“1”。

如果在1” 。

    • “如果元素前的线状态和元素状态均为“1”,那么元素后的线状态也将为

)。

    • 然 NOT 前的线状态不为“1”,那么在 NOT 后的线状态为“1”(反之亦

参数状态

  • 如果满足以下条件,则线状态将在一些线相交后为“1”:
  • 在相交前至少有一条线的状态为“1”。
  • 在分支前的线状态为“1”。
  • 以粗体显示的参数值为当前值。
  • 以细体字显示的参数值来自前一个周期;当前扫描周期不处理程序部分。

关于单步模式/断点的测试须知

当在单步模式下测试时,可以进行下列工作:

      • 逐个语句地执行程序(单步)
      • 设置断点

)。

文不档是所有的可编程控制器都可以使用“以单步模式测试”(参见相关可编程控制器的

STEP 7 V5.4 编程手册-112

要求

      • 调必试须设置测试操作模式。单步模式测试不能在操作模式下进行(参见菜单命令

> 操作)。

      • 使在用单菜步单模命式令下视测图试只可能在来语改句变表视中图进。行。对于梯形图或功能块图中的块,必须
      • 不得保护块。
      • 必须在线打开块

> STL

      • 不得在编辑器中改变打开的块。

断点的数目断点的数目为变量,由下列事项决定:

      • 已设置的断点数目
      • 正在运行的变量状态数目
      • 正在运行的程序状态数目

断在“点调工试具栏”菜中的单中图标可选以择找那到些能用菜来单设命令置。、激使活用或菜删单除命断令点视的图菜单断命点令条。来也显可示以断使点用工

参考可编程控制器文档,可查明它是否支持单步模式测试。

具栏。 >

允许的测试功能

      • 监视/修改变量
      • 模块信息
      • 工作模式

HOLD

危设险备状态在 模式下有出现危险的风险。

HOLD 模式须知

如果程序遇到断点,可编程控制器转到 HOLD 工作模式。

在 HOLD 模式中的 LED 显示

      • LED RUN 闪烁
      • LED STOP 亮

在 HOLD 模式中的程序处理

      • 在 HOLD 模式中,不处理 S7 代码,这意味着不再进行优先级处理。
      • 冻结所有的定时器:
        • 不处理定时器单元
        • 暂停所有监视时间
        • 暂停时间控制水平的基本时钟率
      • 实时时钟继续运行
      • 出于安全原因,在HOLD 模式中始终禁止输出(“输出禁止”)。

在 HOLD 模式下出现电源故障后的状态

      • 器在切HO换L到D 模式下模发式生并电保源持故该障模及式随。后恢复上不电执后行,自具动有重后新备启电动池热的重可启编。程在控制

新ST启O动P 模。式ST下O,P可以确定如何继续处理CP例U如,通过设置 复位断(点,执行) 手动重

(

/

      • 没有后)备电池的可编程控制器没有“掉电保护”,因此,无论以前的工作模式如

何,当电源重新上电时都会执行自动热重启。

数据块的程序状态

内或从容离ST。线E数P 据7 版块本激活5 开显始示,。可在以这在两数种据情视况图下中,查会看显在示线可数编据程块控。制可器以中通的过在在线线数数据据块块的

(声明),可以根据要求直接将离线数据块下载到可编程控制器中。

在同程序状态启动前,不得修改数据块。如果在线数据块和离线数据块的结构有所不新数据画块面中必可须位见的于数“据数块据部视分图。”当中状,态以激便活在时线,值不可能以切在换“到真实声明值”视图栏。中显示。只能更

在进行更新时,在状态栏中可以看见绿色条,并显示工作模式。数值以相应数据类型的格式显示;格式不能改变。

在新程后序的状在态线结值束传后送,到“离真线实数值据”块栏中再。次显示在程序状态之前有效的内容。不能将更

更新数据类型:

输入 输出 静态 中更新。

所有基本数据类型都在共享数据块中更新,也在所有的实例数据块的声明(输入/输出

/ - / )

某的些域数用据灰类色型背不景能显更示新。。当程序状态激活时,包含没有更新数据的“真实值”栏中

      • 不更新复杂的数据类型 DATE_AND_TIME 和字符串。
      • 据在类复型杂的数元据素类。型 ARRAY、STRUCT、UDT、FB 和 SFB 中,只更新那些基本数
      • 型在元实素例本数身据。块不的更IN新O指UT针声。明中,只显示复杂数据类型的指针,而不显示数据类
      • 不更新参数类型

为程序状态设置显示

可以在语句表、功能块图或梯形图中设置程序状态的显示。要设置显示,操作如下:

  1. 选择菜单命令选项 > 自定义。
  2. 在“自定义”对话框中,选择“STL”标签页或“LAD/FBD”标签页。
  3. 选择所要求的用于测试程序的选项。可以显示下列状态域。

激状活态位...

RLO

状态位;状态字的第 位

显示...

状态字的第 位

2

1

标地准址状寄态存器

1/2

显累示加逻器辑操的作内或容算术比较的结果

使用寄存器间接寻址的相关地址寄存器的内容

1

累加器块寄2

间接

状态字

累加器 2 的内容

(

区域内或跨区域

)

存器 1/2

仅适用于内存间接寻址, 能用于寄存器间接寻址

间接内存参/或考第;二指个针打参开考的数据块的数据块寄存器的内容

(

地址)

,没有地址内容参考;

状态字的所有状态位

语句中时,定时器字或计数器字的内容

为测试设置模式

步骤

操测作试模操式作

  1. 使用菜单命令调试 > 操作,显示所设置的测试环境。
  2. 选择所需要的操作模式。可以在测试操作和过程操作之间选择。

解所释有的测试功能都可用,且不受限制。

过程操作 C都P被U记扫录描。周期时间会明显增加,这是因为,例如,程序回路中的语句状态在每个周期
  • 这意味着,例如,不允许任何调用条件。
  • 程序回路的状态显示在返回点处被放弃。
  • 不能进行 HOLD 测试功能和单步执行程序。

测试功能程序状态被限定为要保证在扫描周期时间上可能出现的负载为最小。

注当释分配 参数时,如果设置操作模式,只能通过改变参数来改变模式。否则,在

显示的对CP话U框中改变模式。

使用模拟程序 S7 PLCSIM (可选择的软件包)进行测试

模使用拟可编选程择的控制软器件上包运PL行C和S测im试ula程ti序on。,因可为以模在拟计完算全机由或编程设备软(如件P实o现we,r P所G以)中不的

需要任何 S7 硬件 或信号模块 。使用模拟

)

S,TE可P以7测试和维护

和 S7-400 CPU 的(C程P序U。

如此,应用于程开序、提供关输简入单的。用当户程界序面由,模以拟用于监处视理和时修,改也在可程以序在中使用的各软种件参中数使(例用各

S7 CPU

S7-300

种应用程序。例如,)可以用变量表监视C和PU修改变量。

STEP 7

使用模拟程序进行测试(可选择的软件包)

STEP 7 V5.4 编程手册-113

硬件诊断和故障检测

相通应过模出块现的状诊断态,符而号,且,您对可于视图是否,有也可说供明模了块其使工用作的模诊式断。消息。诊断符号说明了

当调用功能“硬件诊断”后,诊CP断U符号将会显示在在线视图以及快速视图 默认设置

信或息诊”断应视用图程的项序来目显窗示口详中细。的双击诊快断信速息视。图或诊断视图中的诊断符号,可启动( “模块 )

STEP 7 V5.4 编程手册-114 STEP 7 V5.4 编程手册-115 STEP 7 V5.4 编程手册-116 STEP 7 V5.4 编程手册-117 STEP 7 V5.4 编程手册-118 STEP 7 V5.4 编程手册-119 STEP 7 V5.4 编程手册-120

'LDJQRVWLF V\PERO RI

&38

0RGXOH ,QIRUPDWLRQ

'LDJQRVWLF 9LHZ

&38

+ )DLOHG 0RGXOHV

4XLFN 9LHZ

&DOO WKH IXQFWLRQ "'LDJQRVH +DUGZDUH"

STEP 7 V5.4 编程手册-121

6,0$7,& 0DQDJHU 21/,1(
3URMHFW

6WDWLRQ

STEP 7 V5.4 编程手册-122 67 3URJUDP
85 (0)
1 STEP 7 V5.4 编程手册-123 36 307 5$
2 STEP 7 V5.4 编程手册-124 &38 314
3 $,-300

如何定位故障

  1. 使用菜单命令视图 > 在线打开项目的在线窗口。
  2. 打开所有的站,以便在其中组态的可编程模块均为可见。
  3. 诊视断图符是号哪的个帮CP助U页正面在。显示诊断符号,其指示了错误或故障。按 F1 键打开解释
  4. 选择要检查的站。
  5. 选择菜单命令 PLC > 诊断/设置 > 模块信息…以显示该站中 CPU 的模块信息。
  6. “选快择速菜视单图命”令。PL快C速>视诊图断的/设显置示>已硬设件置诊为断默以认显值示菜该单站命中令C选P项U 和故自障定模义块,的“视

( >

( >

图”标签)。

  1. 选择快速视图中的故障模块。
  2. 点击“模块信息”按钮以获取关于该模块的信息。
  3. 其点插击槽快顺速序视排图列中在的站“中在的线所打有开模站块”。按钮,以显示诊断视图。诊断视图包括了按照
  4. 故双障击因诊而断没视有图显中示的在模快块速,视以图便中显的示模块的信信息息。。采用该方式,您也可获得那些没有您当然不必执行所有的这些步骤;一旦您获得所需要的诊断信息,即可停止。

在线视图中的诊断符号

在在线项目窗口和具有组态表在线视图的硬件配置窗口中,显示诊断符号。

出诊断现故符障号,便那于么检所测显故示障的。模只块需类看型一符眼号模块上不符号带,附加就的知诊道断有没符有号。诊断信息。如果没有

度如果显模示块模块有符诊断号。信息,那么除显示模块符号外,还显示诊断符号,或以较低的对比

模块的诊断符号(实例:FM/CPU)

符号 预含设义定和实际组态之间不匹配:已组态的模块不存

STEP 7 V5.4 编程手册-125 在或插入了一个不同类型的模块
STEP 7 V5.4 编程手册-126 故可误障能:的模原块因出:现诊故断障中。断、 访问错误或检测到错

I/O

STEP 7 V5.4 编程手册-127 断信息返回模块 例如,电源或子模C块PU。

( )

工作模式的诊断符号(实例:CPU)

不能LE进D行诊断:没有在线连接,或

没有将诊

符号 模式

STEP 7 V5.4 编程手册-128 STARTUP
STEP 7 V5.4 编程手册-129 STOP
STEP 7 V5.4 编程手册-130 S在触T多发O值P 计算操作中,由另一个 的 模式

CPU STOP

STEP 7 V5.4 编程手册-131 RUN
STEP 7 V5.4 编程手册-132 HOLD

强制诊断符号

符号

STEP 7 V5.4 编程手册-133 的强模式制量符的符号配还号组可固与合定其。值它,符这号些组值合不出能现由在程此序,修与改运。行

(

)

该模模式块上的变量是强制的,即该模块的用户程序中

更新诊断符号的显示

必须激活合适的窗口。

      • 按下 F5 或
      • 在窗口中选择菜单命令视图 > 更新。

诊断硬件:快速视图

调用快速视图

的快速诊断视视图提图中供的一种详使细显用示“信诊息断。硬当件调”的用“快捷诊断方硬式件,”其功中能的时信,息量快速少视于在图作HW为默Co认n显fig

示。

显示快速视图

可能以。在 SIMATIC 管理器中,使用菜单命令 PLC > 诊断/设置 > 诊断硬件来调用该功可按如下方式使用该菜单命令:

        • 如果选择了一个模块或 S7/M7 程序,那么在项目的在线窗口中。

        • 如果在“可访问节点”窗口中选择一个节点(“MPI=...”),那么该条目属于

CPU

从所显示的组态表中,可以选择希望显示其模块信息的模块。

快速视图中的信息功能

快速视图中会显示如下信息:

        • 在线连接到 CPU 的数据
        • CPU 的诊断符号
        • 被 CPU 检测出故障的模块的诊断符号(例如,诊断中断、I/O 访问错误)
        • 模块类型和模块地址(机架、插槽、具有站编号的 DP 主站系统)。

快速视图中的其它诊断选项

        • 通显过示点模击块“信模息块信息”按钮,可以调用该对话框。该对话框根据所选模块的诊断断能区力中,的显条示目详细。的诊断信息。特别是,通过 CPU 的诊断信息,可以显示缓冲诊
        • 使显用示“诊在断线视打图开站”按钮显示诊断视图,可以打开一个对话框,该对话框与快速块视”图列不表同中,包高亮含整显个示的站模的块图。形总览以及组态信息。它侧重于在“CPU/故障模

诊断硬件:诊断视图

调用诊断视图

显使示用机本架方级法,的站可以及机具有架各中自的模所块有的模块打站开的“实模际块结信构息。”对话框。诊断视图(组态表)

DP

STEP 7 V5.4 编程手册-134

        • 表如的果在已线经视离图线。打开了组态表,那么也可通过菜单命令站 > 在线打开来获得组态

注释

        • 根据模块的诊断能力,在“模块信息”对话框中显示不同数目的标签。

)的模块才可见。

        • 地在址“可访问节点”窗口中,只有具有本身节点地址(以太网、MPI 或 PROFIBUS

在 SIMATIC 管理器中从项目的在线视图中调用

  1. 制在器SI的M在AT线IC连管接理。器的项目视图中,使用菜单命令视图 > 在线,建立到可编程控
  2. 选择一个站,然后双击打开该站。

现3.

然后打开其中的“硬件”对象。打开诊断视图。

信在息可以选择一个模块,然后使用菜单命令 PLC > 诊断/设置 > 模块信息调用其模块

在 SIMATIC 管理器中从项目的离线视图中调用

执行下列步骤:

  1. 从 SIMATIC 管理器的项目视图中选择一个站,然后双击打开该站。
  2. 然后打开其中的“硬件”对象。打开组态表。
  3. 选择站 > 在线打开菜单命令。
  4. 块打状开态HW用符Co号n表fig示的。诊请断参视见图在,线同帮时助打,开获由取模各块种(例符如号,的C含P义U)信确息定。的在站一组个态单。独模的对其话中框一中个列选出中了的故模障块模块和丢失的已组态模块。从该对话框中,可以直接导航到

)的对话框中给出。

模双块击对其状态感兴趣(“跳转到”按钮)。 详细分析在一个具有标签 根据类型

  1. 的模块符号。该模块状态的 (

从 SIMATIC 管理器的“可访问节点”窗口中调用

执行下列步骤:

  1. 点在”SI窗M口AT。IC 管理器中使用菜单命令 PLC > 显示可访问节点,打开“可访问节
  2. 在“可访问节点”窗口中选择一个节点。
  3. 选择菜单命令 PLC > 诊断/设置 > 诊断硬件。

注在释“可访问节点”窗口中,只有具有本身节点地址 以太网、 或 地

址)的模块才可见。

( MPI

PROFIBUS

诊断视图中的信息功能

与快速视图相比,诊断视图显示在线可用的整个站组态。这包含:

        • 机架配置
        • 从所这有些已诊组断态符模号块中的,诊可断以符读号取每个模块的状态,如果是 模块,则可读取工

作模式。

CPU

        • 组态的模块类型、订货号、地址详细资料以及注释。

诊断视图中的附加诊断选项

通过双击模块,可以显示该模块的工作模式。

模块信息

用于显示模块信息的选项

可法以实从例不:同的起点显示“模块信息”对话框。下列步骤是调用模块信息常使用的方

        • 在 SIMATIC 管理器中,通过“在线”或“离线”项目视图窗口。
        • 在 SIMATIC 管理器中,通过“可访问节点”窗口
        • STEP 7 V5.4 编程手册-135 STEP 7 V5.4 编程手册-136 在 HW Config 的诊断视图中

'LDJQRVWLF YLHZ RI +:&RQILJ

85 (0)
1 STEP 7 V5.4 编程手册-137 36 307 5$
2 STEP 7 V5.4 编程手册-138 &38 314
3 $,-300
6,0$7,& 0DQDJHU
3URMHFW

6WDWLRQ

&38

STEP 7 V5.4 编程手册-139 67 SURJUDP
0RGXOH ,QIRUPDWLRQ

&DOO IURP WKH 6,0$7,& 0DQDJHU

$FFHVVLEOH 1RGHV

$FFHVVLEOH 1RGHV 03, 2

STEP 7 V5.4 编程手册-140

&DOO IURP "$FFHVVLEOH 1RGHV"

"0RGXOH ,QIRUPDWLRQ"

"'LDJQRVLQJ +DUGZDUH"

&DOO IURP WKH GLDJQRVWLF YLHZ

项为了目的显在示线具视有图本身或节通过点“地可址访的问模节块点的”状窗态口,建需立要该在连线接连。接到可编程控制器。可通过

模块信息功能

可下在显“示模时块,信只息显”示对与话选框中内模的块各有种关的标签那页些中标查签找页每。个模块的信息功能。在激活状态

功常能规/标签页 信所息选择的模块上的标识数据;例如,订

用来自插入进模行块比的较在线信息与已组态模

诊断缓冲区 货诊的断详缓细冲信本区息号中、的状事态件、总 架以中及的选插中事件

CPU

STOP

。断缓冲区,可以在以后分析系统

因查,找并引在起选中的进模入块上评估模导式致的该原原因

诊断中断 选中模块的诊断数据

DP 从站诊断 选中 DP 从站的诊断数据(符合EN

中踪的并错归误类,单查个找诊引断起事件ST的O发P生的。原因或追

DP 从站中评估故障原因

评在估模块故障的原因

内容。

存储器 内作存储量器。、选加中载存CP储U器或和M保7持功性能存块储的器工

在前将,新检模查块或扩展能模模块块传中送是到否有足之够

50170)

的当前用途

扫描周期 选以中及最CP后U一或次M扫7描功周能期模的块持的续最时长间、最短

时间系统 当同前步时钟、的工信作息小时和时间间隔

可用的加载CP存U储/功器,否则就压缩CP存U储器

持和续当检前查周已期组态的最小周期、最大周期显时示间和同设步置模块的时间与日期,并检查

是否满足执行用户程序的要求;例

性能数据 选中模块

(同步的地址区和)可用的块 在创建用户程序之前以及期间,检查

如,加载存储器大小或过程映像大小

(可从“性能数据”标

堆栈标签页:只能在 STOP 模式或

(CPU/FM)

显块示类选型定,模列块出供可应用范于围该内模的块所的有可、用的

OB

CPU

检中查用户上程运序行可的包标含准或块调。用哪些可在选

CPU

签通页讯中打开)

传选SF输B率和、S通FC讯连接总览、通讯负载以及

确定可使用多少个、哪个 或

堆栈 小中模块通讯总线上的最大消息帧的大

显HO示L用D 模于式选中模调块用的。

示块中栈的、出错栈位以置及。嵌套B栈栈,。并然跳后转还到可中显断

I

L

M7 F7 连接,以及正在使用CP的U数目

确定转换到STOP 模式的原因并更正块

所显示的附加信息

每个标签页有下列显示信息:

        • 到选中模块的在线路经
        • 相应CPU 的工作模式(例如,RUN、STOP)
        • 选中模块的状态(例如,出错、正常)

RUN、STOP)

        • 如,果具有各自的工作模式(例如,CP 342-5),那么显示选中模块的工作模式(例

身如果的从工“作模可式访以问及节选点中”模窗块口的中状打态开。了非 CPU 模块的模块信息,就不能显示CPU 本

同时显示大量模块

块可,同然时后显调示用大该量模块的模块信息,。然为后此显,示必另须一转个到每“模个模块信块息环”境对,话选框择。另每一个模块

只能打开一个对话框。

更新模块信息显示

过每,次显切示换一到个“页模面块信时息,不”对更新话其框内中容的。一如个果标点签击页“时更,会新”重新按从钮,模那块么中可读以取在数不据改。变不

标签页的情况下,从模块中读取数据。

与模块类型有关的信息范围

可以评估和显示的信息范围取决于:

        • 所选的模块以及
        • 从调组用态模表块的信在息线的视图或项目窗口中调用时,可以得到全范围的信息。

从“可访问节点”窗口调用时,只能得到有限范围的信息。

能力据信”类息别范。围下,模图显块示划了分这为些“类具有别:系统诊断能力”、“具有诊断能力”或“无诊断

'LDJQRVWLF EXIIHU DQG 6=/ RI WKH PRGXOH

'LDJQRVWLF LQIRUPDWLRQ RI WKH &38 YLD WKH PRGXOH

'LDJQRVWLF GDWD RI WKH PRGXOH

0RGXOHV ZLWK V\VWHPGLDJQRVWLFV FDSDELOLW\

$OO PRGXOHV &38

0RGXOHV ZLWK GLDJQRVWLF FDSDELOLW\

        • 具有系统诊断能力的模块,例如,模块 FM 351 和 FM 354
        • 具有诊断能力的模块,大部分是模拟信号模块。
        • 无诊断能力的模块,大部分为数字信号模块。

显示的标签该表显示了在每种模块类型的“模块信息”对话框中出现的属性标签。

标签

常规

诊断缓冲区

M7是FM 能力的是模块 的模块是

CPU 或 具有系统诊断 具有诊断能力 无诊断能力的 DP 从站

诊断中断

模 块 是

存储器

扫描周期

时间系统

性能数据

堆栈

通讯

DP 从站诊断

H 状态 1)

1)只用于 H 系统中的 CPU

用)。

除线了打标开签该属对性话页框上时的,从信息之外,具有工作模式的模块还显示工作模式。从组态表在

CPU 角度来显示模块的状态(例如,正常、故障、模块不可

显示 Y 型链路之后的 PA 现场设备和 DP 从站的模块状态

从站ST和EP 7 现V5场.1设S备er的vic模e 块Pa状ck态3。起,您可在 DP/PA 链路(IM 157)“之后”评估 DP

这将影响PA下列组态:

        • 具有DP/PA 连接器的 IM 157,用于连接 PROFIBUS-PA
        • 接作”为冗余模块化接口模块的 IM 157,用于连接非冗余 PROFIBUS-DP(“Y-链

在该组态)中,编程设备 将与 链路连接同一个 子网上。

此外还存在另一种组态(PG法),将 DP/将PA连接到工业以太网P并R将OFIBUS P该R设O置FI的BU先S

子网上。

决条件如下图所示:

PG

S7-400

站连接到

具有 DP/PA 连接器的 IM 157,用于连接 PROFIBUS-PA

352),%86 '3

352),%86 3$

'3/3$ /LQN

(,0 157+'3/3$ FRQQHFWRU)

3$ ILHOG GHYLFH

3*

作为 Y 型链路的 IM 157

352),%86 '3 (UHGXQGDQW)

3*

工业以太网中的 PG

'3/3$ /LQN (,0 157 "<-/LQN")

'3 6ODYH

352),%86 '3 (QRW UHGXQGDQW)

352),%86-3$

&3 443-5';02, DV RI 93.0

"'DWD-UHFRG" JDWHZD\ RSWLRQ HQDEOHG

,QG. (WKHUQHW

352),%86 '3

3*

'3/3$-/LQN

(,0 157+'3/3$ FRQQHFWRU)

&3 443-5

&3 443-1

67-400

&38

3$-ILHOG GHYLFH

在STOP 模式中诊断

确定造成 STOP 原因的基本步骤

要确定CPU 为何进入“STOP”模式,可如下操作:

  1. 选择已进入 STOP 模式的CPU。
  2. 选择菜单命令 PLC > 诊断/设置 > 模块信息。
  3. 选择“诊断缓冲区”标签。
  4. 可以从诊断缓冲区的最后一个条目确定停止原因。如果发生编程错误:
  5. 误例,如然,后条尝目试“启由动于没不有存加在载的编程错来误处O理B该而编停程止错”误表。示前C一P个U条检目测指到代一实个际程的序编错

程错误。

( )OB

  1. 选择与编程错误有关的消息。
  2. 点击“打开块”按钮。
  3. 选择“栈”标签。

STOP 模式中的栈内容

通过评估诊断缓冲区和栈内容,可以确定用户程序处理期间发生的故障的原因。

的例“如,栈”如标果签由显于编示块程错栈。误可或“以使停用止“”命栈令”导、致“CP栈U”进和入“停嵌止套模栈式”,按那钮么来模显块示信其息它中

栈的内容。栈内容给出哪个块中的哪条I 指令导致L 进入停止模式的信息。

CPU

B 栈内容 B 栈,或称块栈,列出了变为停止模式之前调用的所有块以及没有完全处理的块。

I 栈内容

L 栈内容

的点数击据“或I 栈状”态按,钮例时如,:显示中断位置处的数据。I 栈,或称中断栈,包含中断时有效

  • 累加器内容和寄存器内容
  • 打开的数据块及其大小
  • 状态字的内容
  • 优先级(嵌套等级)
  • 中断块
  • 中断后,继续进行程序处理的块

部对于数据B。栈中列出的每个块,通过选择该块并点击“L 栈”按钮,可以显示相应的局

L 栈,或称局部数据栈,包含发生中断时用户程序正在处理的块的局部数据值。

的解释临时和变评估量。所显示的局部数据要求非常熟悉系统。所显示数据的第一部分对应于块

嵌套栈内容点击“嵌套栈”按钮时,显示中断位置处嵌套栈的内容。

嵌套栈是逻辑操作A(、AN(、O(、ON(、X(和 XN(使用的存储区。只有在中断时仍然打开括号表达式时,才激活该按钮。

检查扫描周期,避免时间错误

模块信息中的“扫描周期”标签给出关于用户程序扫描周期的信息。

误如的果危最险长。周延期长的持用续户时程序间的接最近大所周组期态的监最视大狗扫时描间周可期避,免则出有现因这周种期情波况动。引发时间错

态如的果最周小期周长期度。小如于果所为组态的最小扫描时( 间,则由 ) 自动将该周期如延果长已至经所下组

OB(OB90)(

载)。

CPU,则在该延长时间内C处P理U/背FM景

设置扫描周期

双当击配置,定硬件义其时属,性可以。设可以置在最大“周和期最小时周钟期存。储为器此”,标在签C中P输U入/FM适当组的态值表。的离线视图上

/

诊断

诊断信息流

下图给出了 SIMATIC S7 中诊断信息的流程。

STEP 7 V5.4 编程手册-141 STEP 7 V5.4 编程手册-142

6)&V

8VHU SURJUDP

67(3 7

'LDJQRVWLF EXIIHU

'LDJQRVWLF LQWHUUXSW

6\VWHP VWDWXV OLVW

7KH GLDJQRVWLF IXQFWLRQ RI WKH &38 GHWHFWV DQ HUURU LQ WKH XVHU SURJUDP.

7KH GLDJQRVWLF IXQFWLRQ RI WKH &38 GHWHFWV D V\VWHP HUURU.

0RGXOHV

&38

7KH GLDJQRVWLF IXQFWLRQ RI D PRGXOH GHWHFWV DQ HUURU DQG JHQHUDWHV D GLDJQRVWLF LQWHUUXSW.

(2% 82)

显示诊断信息

可语以言在显用示户诊程断序信中息使。用 SFC51 RDSYSST 读取诊断条目,或者用 STEP 7 以通俗的它们提供了以下信息:

  • 出错的地点和时间

)。

  • 模该式条改目变所属的诊断事件的类型(用户自定义的诊断事件、同步/异步的错误、工作

生成过程控制组信息

'LDJQRVWLF GDWD RQ PRGXOHV

'LDJQRVWLF VWDWXV GDWD LQ WKH &38

生CP成U用在于诊标断准缓诊冲断区事中件输的入过标程准控诊制断组和信扩息展:诊断的事件。如果满足以下条件,它也会

  • 已经指定将要在 STEP 7 中生成的过程控制信息。
  • 至少在CPU 上为过程控制信息记录了一个显示单元。
  • 制在组当信前息没。有一个相应等级(总共有 7 个等级)的过程控制组信息时,才生成过程控
  • 每个等级可以生成一个过程控制组信息。
      1. 系统状态列表 SSL

系CP统U 的当前状态和顺序以及属于它的模块的信息。

系统状态列表(SSL)描述可编程控制器的当前状态。它概述了组态、当前参数分配、

表。状态列表中的数据只能读取,而不能修改。它仅是一个按要求创建的虚拟列可以使用系统列表显示的信息可分为四个区域。

6\VWHP VWDWXV OLVW

6\VWHP GDWD

读取系统状态列表

'LDJQRVWLF EXIIHU

有两种方法可用于读取系统状态列表中的信息,如下所述:

        • 数隐据含、地诊,断通缓过冲来区自、编状程态设显备示的 S。TEP 7 菜单命令(例如,存储器组态、静态 CPU

)

        • 统明状确态地列,表通的过编用号户程参序见中块的帮系助统功能 SFC 51 RDSYSST,只要输入所需部分系

( )

系统状态列表的系统数据

分系统系统数据状态是列CP表U:固有的或者已分配特征数据。下表给出了可以显示信息的议题(部

)

议模题块标识

CPU 特征器

信模息块的订货号、类型识别号和版本

系统区域块类型

模计块数的器系、统存存储储器器 例

述CPU 的时间系组统、系作统特储性器(例如,多值计算)和语言描

如,存储器位的

)。

中断和错误的分配

中优断先状级态的状态

块分的配最给大数的目中以断及块(O类B 型D的B最大SD空B间

模块上存在哪些块型( 、 、 、 、 ,各类

类 )

(

数目、定时器、

FC FB)

工作模式和模式转换

中断处理 生成的中断的当前状态

OB

执行哪一个/ ,禁止哪一个优先级取决于参数设置

OB

/错误

模式个工作模式可行,最后的工作模式改变,当前工作

CPU 中的诊断状态数据

的诊断议题状态部数分据系描统述状由态系列统表诊:断所监控的部件的当前状态。下表给出了可以显示信息

(

)

议通题讯状态数据

诊断模块

O启B动的事启件动列信表息列表

当信前息在系统中设置的所有通讯功能

在 CPU 上记录的具有诊断能力的模块

模块状态信息

启关动于事CP件U和的 OB的的优启先动级信息

有关所有插入O的B 、有故障的或生成硬件中断的已分配模块的状态信息

关于模块的诊断数据

状除态了列CP表U中,。还下有表其给它出具了有可诊以断显能示力信的息模的块议(S题M、部C分P系、统FM状)态,列它表们的:数据输入到系统

(

)

议模题块诊断信息

模块诊断数据

模信块息启动地址、内部 外部故障、通道故障、参数错误 个字节

特殊模块的所有诊断数/ 据

(4

)

发送个人诊断消息

还可以使用系统功能 SFC 52 WRUSMSG 来扩展 SIMATIC S7 的标准系统诊断:

        • 在诊断缓冲区中输入个人诊断信息(例如,关于用户程序执行的信息)。
        • 发送用户定义的诊断信息来登录站(监控设备,如 PG、OP 或TD)。

用户定义的诊断事件

分将成诊如断下事两件组分成:事件等级 1-F。用户自定义的诊断事件属于事件等级 8-B。这些事件

        • 行事调件用类。别 8 和 9 包含具有固定编号和预定义文本的消息,这些消息可根据编号进
        • 本事的件消类息别。A 和 B 包含可任意分配一个编号(A000 - A0FF、B000 - B0FF)以及文

将诊断消息发送到站

用除户了自在定诊断义的缓冲诊断区消中息生来成用登录户定显义示的设备条。目当外使,用还可以使用 SF调C用52 WRUS时M,SG诊发断送消

息写入到发送缓冲区,然后自动发送到在

上S登E录ND的=一1个或多S个FC站5。2

然如在果不诊能断缓发冲送区消息中输(例入如用,户因定为义没的有登录显C示P设U备,或因为发送缓冲区已满),那么依

诊断事件。

生成带确认的消息

如果要确认一个用户定义的诊断事件,并希望记录该确认,可如下操作:

0 写入到该变量中。

        • 时当,事将件进入事件状态时,将 1 写入到一个布尔型的变量中;当事件离开事件状态
        • 然后,可以使用 SFB33 ALARM 监控该变量。

诊断功能

能力的每个 和每个模块 例如, 都有一个诊断缓冲区,在该缓冲区中,

系统诊断会检测、评估以及报告可编程控制器中发生的错误。为此,具有系统诊断按照事件的发CP生U顺序输入了所(有诊断F事M件3的54详) 细信息。

诊断事件 下列条目显示为诊断事件,例如:

        • 模块上的内、外部故障
        • CPU 中的系统错误
        • 工作模式变化(例如,从 RUN 变为 STOP)
        • 用户程序错误
        • 插入/删除模块
        • 通过系统功能 SFC52 输入的用户消息

中存的储错器误复,位后查找,引诊断起缓冲区中的的原内因容或保追持踪。并通归过类诊单断个缓诊冲断区事,件可的以发在生以。后分析系统

STOP

获取诊断数据

没性。有必要通过系统提诊供断各为种获诊取断诊功断能数。据一而些进功行能编集程成。在这是一个上自,动另运一行些的功标能准由特模块

(SM、CP 和 FM)。

提供SIMATIC S7

CPU

显示故障

及在其模块评的估。前对面于板上显示内,、内外部部和模外块部故故障障。作在为S一7组硬错件误手一册起中显描示述。了 LED 显示内容

断CP消U息识。别这系统错S误7和-3用00户程序中的错误,并在系统状态列表和诊断缓冲区中输入诊

断具有诊断能些诊断消息可在编程设备上读取。

进行响应的诊断中断。

力的信号和功能模块会检测内部和外

OB

部模块错误,并生成一个可通过中

诊断

用于出错处理的程序措施

时当,CP就U调检用测处到理程该序错处误理的中相的应错组误织(同块步错误:)以及可编程控制器中的错误(异步错误)

(OB)

错误

I/O 冗余错误

错误 OB

C时电P间源U错冗误余错误

诊插入断中删断除模块中断

CPU 硬件故障

/

优先级错误

机通编程讯错错误障误或分布式 I/O 中的站故障

I/O 访问错误

OB122

OB121

OB87

OB86

OB85

OB84

OB83

OB82

OB81

OB80

OB72

OB70

基本过程

如果没有合适的 OB 可供使用,那么 CPU 进入停止模式(例外:OB70、OB72、

减OB少81或消O除B8错7误) 影响。 OB

、 。否则,可以在 中存储如何响应该错误情况的指令。这表示可以

创建并打开 OB

  1. 显示CPU 的模块信息。
  2. 选择“性能数据”标签。
  3. 根据所显示的列表,确定是否允许该 CPU 使用要编程的 OB。
  4. 在程序的“块”文件夹中插入 OB,然后打开该 OB。
  5. 进入进行错误处理的程序。
  6. 将 OB 下载到可编程控制器。

处理错误的程序措施

局 OB部数据中的变量 和 包含错误代码。在“系统和标

1. 评估 的局部数据,确定引起错误的确切原因。

准功能参考手册”中O描B8述xF了LT它ID们的O含B义12。xSWFLT

跳转到响应该错误的程序段。

在2.

的文系本统中和,标可准以功能获取的在处理线诊参断考中帮断助的中的实例标。题为“SFC51(RDSYSST)模块诊断实例” 在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

      1. 评估输出参数 RET_VAL

能利。用 RET_VAL 输出参数(返回值),系统功能指示 CPU 是否可以正确执行 SFC 功

返回值中的错误信息

值返之回间值的为关整系型指数示据在类执型行(IN该T)功。能整期数间符是号否指发示生它错是误正整参数见还表是:负整数。返回值与“0”

“如果在执行该功能期间,发生错误,那么返回值( 小于“) 0”。整数的符号位为

1”。

0”。

        • “如果执行该功能期间,无错误,那么返回值大于或等于“0”。整数的符号位为

由出现CP错U误处理 SFC

无错误

小返于回“值 ”

大于或等于“ ”

0

负整数符符号号位为“ ”

(

符号位为“

1 )

0

(

0”

)

响应错误信息

如代果码在。执行 SFC 期间,发生错误,那么 SFC 在返回值(RET_VAL)中提供一个错误

区别下列各种情况:

        • 所有 SFC 都可输出的常规错误代码,以及
        • SFC 根据其特殊功能可输出的特殊错误代码。

传送功能值一些

R在ET_VAL 传送所读取的系统时间。

还使用输出参数

SFC

来传送功能值,例如, 使用

RET_VAL

SFC64 TIMETCK

SFB/SFC 帮助中,可以获取关于输出参数 RET_VAL 的更多详细资料。

对检测到错误响应的错误 OB

可检测错误系统程序可检测下列错误:

        • CPU 功能异常
        • 系统程序执行错误
        • 用户程序错误

根• I/O 错误

编程响应

据错误类型,CPU 进入停止模式或调用错误 OB。

程可序以可设以计保程存序在来错响误应不同类型的错误,以及确定 CPU 的响应方式。处理特殊错误的

OB 中。如果调用了错误 OB,那么执行该程序。

$Q HUURU RFFXUV...

7KH &38 FDOOV WKH FRUUHVSRQGLQJ HUURU 2%.

,I DQ HUURU 2E LV SURJUDPPHG, WKH &38 H[HFXWHV WKH SURJUDP LQ WKH 2%. ,I QR HUURU 2% LV SURJUDPPHG, WKH &38 JRHV LQWR "6723" PRGH. (([FHSWLRQ: 2% 81)

错误 OB 区别同步错误和异步错误的方法如下:

        • 同步错误可分配给 MC7 指令(例如,给已经删除的信号模块的加载指令)。

册下表”显或示“了可能发生的错误类型。请参见“S7-300 可编程控制器、硬件和安装手

        • 异步错误可分配给优先级或整个可编程逻辑控制器(例如,超出周期)。

OB 的信息。

所指定的S7-400、M7-400 可编程控制器、硬件和安装手册”,获取 CPU 是否提供

错冗误余类别

异步

错误类型

CPU 冗余错误

I/O 冗余错误

中)

优先级

(

仅在H CPU

时间) 错误

(仅在H CPU

诊插断入中断

(如果在启动程序中调用错误

C程P序U顺硬序件错故误障

/删除模块中断

OB,则为 28)

同步

通机讯架错故误障

I/O 访问错误

编程错误

引起错误的 的优先级

OB

OB 122

OB 121

OB 87

OB 86

OB 85

OB 84

OB 83

OB 82

OB 81

28

OB 72

25

OB 70

OB

使用错误 OB81 的实例

利用错误 OB 的局部数据(启动信息),可以评估已经发生的错误类型。例如,如果 CPU 检测到电池错误,那么操作系统调用 OB81(参见图)。

7KH &38 GHWHFWV D EDWWHU\ HUURU.

2SHUDWLQJ V\VWHP

2% 81 FKHFNV WKH W\SH RI SRZHU VXSSO\ HUURU WKDW ZDV GHWHFWHG DQG GLVSOD\V ZKHWKHU WKH HUURU ZDV FDXVHG E\ D EDWWHU\ IDLOXUH.

7\SHV RI SZHU VXSSO\ HUURU

STEP 7 V5.4 编程手册-143 STEP 7 V5.4 编程手册-144

24 9 SRZHU VXSSO\ IDLOXUH

%DWWHU\ H[KDXVWHG (&38)1)

1R EDFNXS YROWDJH (&38)

3URJUDP H[HFXWLRQ

2% 81

1) 1RW ZLWK WKH 67-300

(([SDQVLRQ XQLW) 1)

24 9 SRZHU VXSSO\ IDLOXUH (([SDQVLRQ XQLW)

1)

1R EDFNXS YROWDJH

(&38) 1)

%DWWHU\ H[KDXVWHG 1)

(([SDQVLRQ XQWL)

21

22

23

31

32

33

的可程以序编,写如一激个活程一序个,与评估操由作员O站B8上1 的调灯用相触连发的输事出件。代码。还可以编写一个产生响应

错误 OB81 的局部数据

下表显示了在本例中,OB81 的变量声明表中必须声明的临时变量。

问电这池错些数误据(布。尔型)符号必须看作一个输出(例如,Q 4.0),以便程序的其它部分可以访

声明 名称

TEMP OB81EVCLASS TEMP OB81FLTID

类型

BYTE BYTE

错误类别/错误标识符 39xx

描述

错误代码:

CPU 中没有备用电压

CPU 的备用电池耗尽 1)

b#16#22 =

CPU 中 24V 电源故障

b#16#23 =

1

b至#少16有#3一1 个= 扩展基架的备用电池耗尽

1)

b扩#展16机#3架2 中= 没有备用电压

1

优先级

24V 电源故障 1)

= 26/28

保81留= OB81

保留

只与错误代码B#16#31、B#16#32、

1) =不适用于S7-300。

B#16#33 有关

启动OB 时的日期和时间

TEMP OB81PRIORITY BYTE
TEMP OB81OBNUMBR BYTE
TEMP OB81RESERVED1 BYTE
TEMP OB81RESERVED2 BYTE
TEMP OB81MDLADDR INT
TEMP OB81RESERVED3 BYTE
TEMP OB81RESERVED4 BYTE
TEMP OB81RESERVED5 BYTE
TEMP OB81RESERVED6 BYTE
TEMP OB81DATETIME DATEAND TIME

错误 OB81 的样例程序

STL 样例程序显示了如何在 OB81 中读取错误代码。

程序结构如下:

        • 的读值取进O行B8比1 较中。的错误代码(OB81FLTID),然后与事件“电池耗尽”(B#16#3921)

batteryerror

        • 活如输果出错误代码与“电池耗尽”的代码一致,那么程序跳转到 Berr 标签,然后激

进行 电池比较。

        • 的如代果码错误代码与“ 耗尽”的代码不一致,那么程序将该代码与“电池故障”

batteryerror。否则,终止该块。

        • 活如输果出错误代码与“电池故障”的代码一致,那么程序跳转到 Berr 标签,然后激

AWL

L

B#16#21

L

==I

JC Berr

L

#OB81_FLT_ID

// OB81 的错误代码。.

// 比较事件代码“电池耗尽”

// 如果相同(电池已耗尽),跳转到 Berr。

//(B#16#21)和

描述

B#16#22

// 比较事件代码“电池故障”

//(b#16#22)和

==I

JC BF BEU

// 如果相同,跳转到 Berr。

// 和 OB81 的错误代码。.

Berr:

L

==I S

L

B#16#39

#OB81_EV_CLASS

// OB81 的错误代码。.

// 比较下一个事件的 ID 和

// 没有关于电池故障的消息

batteryerror

// 那么设置输出“电池错误”。

// 如果发现发生电池故障或电池耗尽,

L

==I R

B#16#38

batteryerror

// 当修复该错误时,

// 比较结束事件的 ID

// 和 OB81 的错误代码。.

// (符号表中的变量)

// 复位输出“电池错误”。

符在的相应解的释。关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料,以及事件标识

插入用于错误检测的替换值

值对于提特供替定换类型值。的错有两误(种例提如供,替影换响值输的入方信法号:的断线),可以给由于错误而导致不可用的

        • 具可有以默使认用的ST替E换P 值7,将。替换值分配给可组态输出模块。不能分配参数的输出模块
        • 通过 ,可以在错误 中编程替换值 仅适用于输入模块 。

0

对于导致同SF步C错44误R的PL所V有AL加载指令,可以O在B错误 中为累( 加器内容指定替换)值。

OB

用于替换值的样例程序

别在出下输列入样模例块程没序有中,响在应时SF,C如44何R调P用LVAL 中可。以使用替换值。下图显示了当 CPU 识

OB122

2%1

STEP 7 V5.4 编程手册-145 STEP 7 V5.4 编程手册-146 STEP 7 V5.4 编程手册-147 STEP 7 V5.4 编程手册-148

/ 3,%O 7 ,%O

2% 122 6)&44

53/B9$/

在该实例中,在程序中输入下图中的替换值,从而程序可采用可行值继续运行。

6XEVWLWXWH YDOXH: 0 0 0 1 0 0 1 0

6WDUWB6Z , 0.0

6WRSB6Z , 0.1

6WDQGB(YDO , 0.3

)XOOB6Z , 0.4

。标准情况下,加载指令读取 。然而,对于 ,可以定义任何适合

如果输入模块发生故障,那么语句L PIB0 的处理产生一个同步错误,并启动

该OB过12程2的替换值。 用指定的替换值替0 换累加器内容S。FC44

中可必以须在声O明B122 中编S写FC下列样例程序。下表显示了在本例中,OB122 的变量声明表

的临时变量。

声明 名称

TEMP

TEMP

OB122EVCLASS

OB122SWFLT

类型

BYTE

BYTE

错误类别/错误标识符 29xx

描述

错误代码:

16#42、16#43、16#44 1)、16#45 1)

TEMP OB122PRIORITY

TEMP OB122OBNUMBR TEMP OB122BLKTYPE

BYTE

BYTE BYTE

优先级=发生错误处的OB 的优先级

发12生2 =错O误B处12的2块类型

存储区和访问类型

WORD WORD WORD

DATEANDTIME

发生错误处的存块储编器号地址

1)不适用于 S7-300。

错误

保存 SFC44 的错误代码

产生错误的指令的相对地址

启动 OB 时的日期和时间

TEMP OB122MEMAREA BYTE
TEMP OB122MEMADDR
TEMP OB122BLKNUM
TEMP OB122PRGADDR
TEMP OB122DATETIME
TEMP INT

STL

描述

L

L

==I JC L

<>I

B#16#2942

#OB122SWFLT

比较 OB122 的事件代码和读取 I/O 时出现的时间错误确认

的事件代码(B#16#2942)。如果

“Aerr“。

相同,那么跳转到

Aerr

B#16#2943

比较 OB122 的事件代码和寻址错误(写入不存在的模块

事件代码(B#16#2943)。如果不相同,那么跳转到

)的

JC Stop

SFC44 (REPL_VAL)。

Aerr”标签:将 DW#16#2912(二进制 10010)传送到

Stop

替换触发 OB122 调用的值

SFC44 在累加器 1 中加载该值

。在

#Error 中保存 SFC 错误

CALL "REPL_VAL"

VAL : = DW#16#2912 RETVAL : = #Error

代码。

(

)

Aerr:

L

L

==I BEC

#Error

0

比生较错误

“模式。

Stop”标签:调用 SFC46“

#Error 和 , 如果相同,那么执行

OB122 时没有发

)

。如果没有错误,那么结束块。

0 (

STP”,并将 CPU 变成停止

Stop:

CALL "STP"

I/O 冗余错误(OB70)

描述

H CPU 的操作系统调用 OB70。

在如果在 PROFIBUS DP 上发生丢失冗余(例如,在激活的DP 主站上发生总线故障或

站,DP那从么站接口模块上发生错误),或通过切换 I/O 从DP 从站切换到激活的 DP 主

编程 OB70 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB70 中执行的程序,然后将其作为用户程序的一部分下载到CPU 中。

OB70

例如,可以将 OB70 用于下列目的:

        • 评估 OB70 的启动信息,并确定哪个事件会触发 I/O 丢失冗余。
        • 用 SFC51 RDSYSST (SZLID=B#16#71)来确定系统状态。

如果发生 I/O 冗余错误,且没有编程 OB70,那么 CPU 不会变成停止模式。

系如统果仍下然载处了于O冗B7余0,模且式。H 系统未处于冗余模式,则两个 CPU 中都会处理 OB70。H

在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

CPU 冗余错误(OB72)

描述 如果发生下列其中一件事情,那么

        • CPU 丢失冗余
        • 比较错误(例如,RAM、PIQ)
        • 备用主站切换
        • 同步错误
        • SYNC 子模块错误
        • 更新过程失败

H CPU

的操作系统调用

OB72:

        • 伴随启动事件之后,由位于运行模式或启动模式的所有 CPU 执行 OB72。

编程 OB72 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB72 中执行的程序,然后将其作为用户程序的一部分下载到 中。

OB72

例如,可以将

用于下列目的:

CPU

OB72 的启动信息,并确定哪个事件触发CPU 丢失冗余。

        • 用 SFC51 RDSYSST (SZLID=B#16#71)来确定系统状态。
        • 响应CPU 丢失冗余,尤其是设备引起的。

如果发生 CPU 冗余错误,并且没有编程 OB72,那么 CPU 不会变成停止模式。在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

时间错误(OB80)

描述 发生时间错误时,

        • 超出最大周期CPU

操作系统调用

OB80

。时间错误包括下列各项,例如:

        • 通过向前调整时间,跳过时间中断
        • 处理优先级时,时延太大

编程 OB80 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB80 中执行的程序,然后将其作为用户程序的一部分下载到CPU 中。

OB80

例如,可以将 OB80 用于下列目的:

        • 评估 OB80 的启动信息,并确定跳过哪个时间中断。
        • 执通行过与SF新C时29间C有A关NT的IN时T,间可中以断取。消激活跳过的时间中断,从而不执行该中断,只

并如忽果略在所O有B8其0 它中中没断有。取消激活跳过的时间中断,那么执行第一个跳过的时间中断, 如果没有编程 OB80,那么当检测到时间错误时,CPU 变成停止模式。

在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

电源错误(OB81)

描述

如果在

CPU

OB81

或扩展单元中下列其中一个发生故障,那么

CPU

操作系统调用

        • 24V 电源
        • 电池
        • 备用系统

消除故障后也调用该 OB (事件出现和消失时都调用该 OB)。

编程 OB81 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB81 中执行的程序,然后将其作为用户程序的一部分下载到 中。

OB81

例如,可以将 用于下列目的:

CPU

OB81 的启动信息,并确定已经发生哪些电源错误。

        • 查明具有故障电源的机架数目。

错如误果会没输有入编程诊断O缓B8冲1,区则,在并检且测前到面电板源上错的误相时应,CPU 不会变成停止模式。不过,该

        • 激活操作员站上的灯,以指示维护人员应该更换电池。

OB

SFB

SFC 的详细资料。

在相应的关于块的帮助中,可以获取

、 LE和D 会指示该错误。

诊断中断(OB82)

描述

OB82(事件出现或消失时,调用该 OB)。

统当调具用有诊断能力并启用诊断中断的模块检测到错误,以及消除错误时,CPU 操作系

编程 OB82 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB82 中执行的程序,然后将其作为用户程序的一部分下载到CPU 中。

OB82

例如,可以将 OB82 用于下列目的:

        • 评估 OB82 的启动信息。

中触输发入诊断中断时,发生故障的模块自动在诊断中断 OB 的启动信息以及诊断缓冲区

        • 获取已发生错误的精确诊断信息。

所在模块4 的字信节息的。诊断数据以及它们的启动地址。这可为您提供错误发生时间和错误通错过误使,用发生O何B8种2 错中误的合适程序,可以进一步评估模块的诊断数据(在哪个通道上发生

)。通过 SFC51 RDSYSST,可以读取模块诊断数据,并使用

S送F到C监52控W设R备US。RMSG 在诊断缓冲区中输入该信息。还可以将用户定义的诊断信息发

如果没有编程 OB82,那么触发诊断中断时,CPU 会变成停止模式。在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

插入/删除模块中断(OB83)

描述

S7-400 CPU 以 1 秒左右的间隔时间监控中央机架和扩展机架中模块的出现。

经接插通入电。源如后果,出CP现U所检有查模通块过,S那TE么P保7存创实建际的组组态态,表并中且所该列组的态所用有作模循块环是监否控都模确块实的已如参果考组值态。在之间每存个在扫描差周异,期那中么,发最出新插检入测到的实际组态与以前的实际组态进行比较。

状态列表中生成一个条目。在运行模式下/删,除插模入块删中断除模信块号中,断并在诊启断动缓。冲区和系统

/ OB

禁注止释在运行模式下删除电源模块、 和 。

块删。除和插入模块之间,必须间隔至CPU秒的IM时间,使 可以检测到已经删除或插入一个模

2

CPU

将参数分配给新插入的模块

型如果相匹在配运。行如模果式下类插型入匹配一个,那模块么给,那该模么块CP分U配检参查数新。模默块认的参模数块或类通型过是否与原模块类

的参数会传送至该模块。

STEP 7 分配

编程 OB83 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB83 中执行的程序,然后将其作为用户程序的一部分下载到CPU 中。

OB83

例如,可以将 OB83 用于下列目的:

        • 评估 OB83 的启动信息。
        • 通过系统功能 SFC55 - 59,将参数分配给新插入的模块。

式如。果没有编程 OB83,那么发生插入/删除模块中断时,CPU 从运行模式变成停止模在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

CPU 硬件故障(OB84)

描述 当在

网络接口、通讯总线接口或分布式

的网卡接口上检测到错误时,

操作系M统PI调用 OB84;例如,在线路上检测到I/错O误信号电平时。消除故障时也调CP用U该 OB ( OB)

事件出现和消失时都调用该 。

编程 OB84 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB84 中执行的程序,然后将其作为用户程序的一部分下载到CPU 中。

OB84

例如,可以将 OB84 用于下列目的:

        • 评估 OB84 的启动信息。
        • 通过系统功能 SFC52 WRUSMSG,将消息发送到诊断缓冲区。

如果没有编程 OB84,那么当检测到 CPU 硬件故障时,CPU 变成停止模式。在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

程序顺序错误(OB85)

描述 在下列情况下,

操作系统调用 :

OB。

OB 的启动事件,但由于还没有将该 OB 下载到 CPU 而不能执行该

        • 访问系统功能块的实例数据块时发生错误。
        • 更新过程映像表时发生错误(模块不存在或处于故障状态)。

编程 OB85 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB85 中执行的程序,然后将其作为用户程序的一部分下载到CPU 中。

OB85

例如,可以将 OB85 用于下列目的:

)。

        • 动评地估址OB85 的启动信息,并确定哪个模块处于故障状态或没有插入(指定模块启
        • 通过 SFC49 LGCGADR,查找所涉及的模块的插槽。

如果没有编程 OB85,那么当检测到优先级错误时,CPU 变成停止模式。在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

机架故障(OB86)

描述

CPU 操作系统在检测到下列其中一个事件时,调用 OB86:

        • 中央扩展机架(不适用于 S7-300)故障,如断线、机架上的分布式电源故障
        • 障主站系统、从站(PROFIBUS DP)故障、或 IO 系统、IO 设备(PROFINET IO)故

消除故障时也调用 OB86 (事件出现和消失时都调用该 OB)。

编程 OB86 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB86 中执行的程序,然后将其作为用户程序的一部分下载到CPU 中。

OB86

例如,可以将 OB86 用于下列目的:

        • 评估 OB86 的启动信息,并确定哪个机架处于故障状态或丢失。
        • 到通监过控系设统备功。能 SFC 52 WRUSMSG 在诊断缓冲区中输入消息,并将该消息发送

如果没有编程 OB86,那么当检测到机架故障时,CPU 变成停止模式。在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

通讯错误(OB87)

描述

OB87,例如:

系当统使调用用通讯功能块进行数据交换或在全局数据通讯期间发生通讯错误时,CPU 操作

        • 接收到全局数据时,检测到错误帧标识符。
        • 全局数据的状态信息的数据块不存在或太短。

编程 OB87 必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB87 中执行的程序,然后将其作为用户程序的一部分下载到CPU 中。

OB87

例如,可以将 OB87 用于下列目的:

        • 评估 OB87 的启动信息。
        • 在丢失全局数据通讯状态信息的数据块时,用于创建该数据块。

在检测到通讯错误且没有对 OB87 进行编程时,CPU 不进入 STOP 模式。在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

编程错误(OB121)

描述 发生编程错误时, 操作系统调用

,例如:

        • 已寻址的定时器CP不U存在。
        • 没有加载所调用的块。

OB121

编程 OB121必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB121 中执行的程序,然后将其作为用户程序的一部分下载到 CPU 中。

OB121

例如,可以将 OB121 用于下列目的:

        • 评估 OB121 的启动信息。
        • 在消息数据块中输入错误原因。

如果没有编程 OB121,那么当检测到编程错误时,CPU 变成停止模式。在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

I/O 访问错误(OB122)

描述

CPU 操作系统调用 OB122,例如:

时当,STEP 7 指令访问在最后一次热重启动时没有分配模块的信号模块的输入或输出

        • 直接 I/O 访问错误(模块故障或丢失)
        • 访问CPU 未知的 I/O 地址。

编程 OB122必须使用

在 程序中将

STEP 7

S7

创建为对象。在所生成的块中编写将要在

OB122 中执行的程序,然后将其作为用户程序的一部分下载到 CPU 中。

OB122

例如,可以将 OB122 用于下列目的:

        • 评估 OB122 的启动信息。
        • 的调、用与系过统程功有能关SF的C值4继4,续给执输行入。模块提供一个替换值,从而程序可以采用有意义

如果没有编程 OB122,那么当检测到 I/O 访问错误时,CPU 变成停止模式。在相应的关于块的帮助中,可以获取 OB、SFB 和 SFC 的详细资料。

打印项目文档

出一项旦目为自文档动的化所任有务重创建要数了程据。序,就可以使用集成在 STEP 7 中的打印功能来打印输

可以打印的项目部分

程可进以行从打SI印M。ATIC 管理器直接打印对象内容,也可以打开相关对象,然后启动打印过通过 SIMATIC 管理器可以直接打印项目的下列部分:

      • 对象树(项目/库的结构)
      • 对象列表(对象文件夹的内容)
      • 对象内容
      • 消息

通过打开相关项目,可以打印项目的下列部分:

      • 以梯形图、语句表或功能块图或以其它语言(可选软件)表示的块
      • 带有绝对地址符号名的符号表
      • 可编程控制器中的模块排列的组态表和模块参数
      • 诊断缓冲区内容
      • 带有监视格式、监视和修改值的变量表
      • 参考数据;例如交叉索引表、赋值表、程序结构、未使用地址表、无符号地址表
      • 全局数据表
      • 带有模块状态的模块信息
      • 操作员相关文本(用户文本和文本库)
      • 可选包的文档,如其它编程语言的文档

DOCPRO 可选包

DIN 和 ANSI 标准的设备文档。

满要足创建、编辑和打印标准化的接线手册,可使用可选软件包 DOCPRO。这就创建了

打印和归档

      1. 打印的基本步骤

要进行打印,可如下操作:

        1. 打开相应的对象,在屏幕上显示要打印的信息。
        2. 所在在应的用应程用序程窗序口,中菜,单使栏用中菜出单现命的令第文一件个> 条打目印可打能开不“是打“印文”件对”话,框而。是根该据应当用前程

序处理的对象,例如“符号表”。

        1. 后如关有闭必该要对,话可框以。在对话框中更改打印选项(打印机、打印范围、打印份数等),然

对某话些框对的话框内容具有。“打印”按钮,例如,“模块信息”对话框。点击该按钮可以打印无需打开块,就可以在 SIMATIC 管理器中,使用菜单命令文件 > 打印直接打印。

打印功能

在对打印对象进行打印时,可使用下列附加功能:

打印对象

块模、块信息

全组局态数表据表

STL 源文件

菜单命令

文件 > *

功打能印预览

功页能面设置、“页面格 页功面能设置、“页眉

式”标签

和页脚”标签

对象、对象文件夹

参符考号数表据

文件>*

站GD 表>*

变量表

连接表

参表考格数> 据*

> *

与操作员相关的文本 文本 > *

表 格 > *

(用户文本、文本库)

网 络 > *

> *

* : 其中,* 符号用作各自功能菜单命令的通配符(例如打印预览或页面设置)

可在下面找到对单个打印作业进行打印的逐步说明: 如何打印

打印预览 您可使用“打印预览”功能来显示要打印的文档的页面布局。

注释

已完成的文档的打印格式将不会显示在打印预览中。

设置页面格式和页眉与页脚

、 、 和页面格式以及方向 纵向或横向 。此外,您可选择是将设置值应

您可使用文件 > 页面设置菜单命令设置您想要打印的所有文档的纸张大小(例如用A4于整A5个项L目ett还er是) 仅应用于当前章节。( )

印调整在相文档邻的布局页面以上便。其与要求的纸张格式相匹配。如果文档太宽,则右边的页边将打

的如左果您边将选择留有了具页边有距页边,您距可的将页其面穿格孔式,(例以如进,行A 的订页。边距),则所打印的文档在页面

“为标了签在区希望域”打印标签的。文档的整个项目中或只是当前章节中设置页眉和页脚,可转到

打印对象树时的特殊注意事项

项在来“打印对象树列表。”对话框中,除了对象列表外,您还可以通过选择“树窗口”选选如果项按在钮“打“选印范择”围,”那中么选将择打了印选所项选“全对象部往”下,的那么树结将构打印。整个树结构。如果选择了

注释

关在应该用对程话框序中的所设作的置用设于置仅打印适用对于象的打印内容列表。或树,并不适用于打印对象的内容;相

打印和归档

对项目和库进行归档

(例如软盘)上进行。

或可以便将携式单数个项据介目质或库以压缩形式存储在一个归档文件中。该压缩存储过程可在硬盘

归档程序 在

中,您可选择适合的归档程序。归档程序 和 均是

STEP 7

 

ARJ

PKZIP 4.0

STEP

7 软件包的一部分。这些程序及其描述均位于其安装路径文件夹...\Step7\S7bin\中。

特殊事项

如果使用下列的归档程序,那么,您将需要所述的版本(或更新的版本):

  • PKZip Commandline V4.0 (随 STEP 7 提供)
  • 版本 6.0 以上的 WinZip
  • 版本 1.02 以上的 JAR
  • ARJ V2.4.1a (仅适用于恢复归档,已随 STEP 7 提供)
  • ARJ32 V3.x (仅适用于恢复归档)
  • 版本 2.13 以上的 LHArc(仅适用于恢复归档)

的至其于它ST程E序P 均7 V支5持.2恢,复仅。支持归档程序 PKZip 4.0、JAR、WinZip。然而,上面所列出档如果将,只在能使早用期同版一本个的程ST序E进P 行7 中恢,复使。用了程序 ARJ32 V3.x 创建文档,那么,这些文在网络驱动器上使用 PKZIP V4.0 创建文档将比本地驱动器上花费更多的时间。

      1. 用于保存/归档

另存为 使用该功能,可以创建项目副本并以其它名称保存。使用该功能可以:

  • 创建备份副本
  • 复制已存在的项目以用于其它目的。

将要不使作用检创查建就副复本制的最从项快方目目法录,往可在下对的整话个框文中件选择结构不用,然重后新以排其列它的名“称另保存存为。”选项。盘数据通常介质没有必须足够有的足可够用的空间。来要存往储磁备盘份上副传本输。项不目要数尝据试,将使项用目保“归存到档”磁盘功能,。因为磁显带示有一重条新消排息列。任出务现的该保情存将况的花费原因较可长能的时是缺间少,可但选是它包或会在对象不数能据复制损坏和。保存对象时,

归档 或可以便将携式单数个项据介目质或库以压缩形式存储在一个归档文件中。该压缩存储过程可在硬盘只跨能磁以盘归档文的归件档的程形式序往。磁盘上传输项目。如果项目太大,那么选择一个可以创建

(例如软盘)上进行。

数不据能包对,压缩即检到索归档项文目或件中库。的项目或库进行编辑。如果希望再次编辑它们,必须提取

归档要求

要对项目或库进行归档,必须满足下列要求:

的链接。

  • 必须在系统中安装归档程序。在“归档/检索过程”的在线帮助主题中解释了与

STEP 7

  • 作项时目,的可所以有在数其据它必位须置一存律储位数于据项。目那目么录,或归项档目文的件子中目不录包中含。这在些C数开据发。环境中工

ARJ 和 LHArc 程序。

  • 时至,于还ST支E持P 7 V5.2,仅支持归档程序 PKZip 4.0、JAR、WinZip。但是,在检索

打印和归档

归档/检索过程

使用菜单命令文件 > 归档或文件 > 检索来归档/检索项目或库。

数据包,即检索项目或库。

注不释能对压缩到归档文件中的项目或库进行编辑。如果希望再次编辑它们,必须提取检索时,自动在项目/库列表中包含所检索的项目或库。

设置目标目录

义要设”对置话目框标。目录,在 SIMATIC 管理器中使用菜单命令选项 > 自定义来打开“自定在该对话框的“归档”标签中,可以打开或关闭选项“检索时检查目标路径”。 “ 如库果该存储选位项置无”效而,设那么置的在同路径一个将对用来话框作为的检“索通用的目”标路签径中为。“项目存储位置”和

将归档文件复制到磁盘

选可择以软对盘项驱目动/库器进作行为归目档标,目然录后。将归档文件复制到磁盘。也可以在“归档”对话框中

M7 系统的步骤

M编7程-3扩00展/M。7您-40可0以自使动用化高计级算语机言的,标例准如PC 结构构成的 SIMATIC 自动化平台可以自由

来为 SIMATIC M7 用户程序编程。要创建程序,除了

程序的开发环境 或 。

C 语言或使用图形化语言 CFC (连续功能表)

STEP 7 以外,还需要 M7-300/400 的系统软件M7-SYS RT 和

M7 (ProC/C++ CFC)

基本过程 当给您出使了用大多SI数M项AT目IC都M需7要创执建行自的动任化务解,决并方将案其时分,配您给将一面个对基一本系过列程的。基该本表任也务给。出下了表

本手册或其它手册相关章节的参考。

步设骤计自动化解决方案启动

参M7考:

创建项ST目E结P 构7

M7-SYS RT 编程手册

描述专用;

对于S7

S7

安装

定组义态符通号讯表连接

对于 S7

S7

创建C 或 CFC 用户程序组态操作系统

在 上安装操作系统

参考:ProC/C++

M7 专用;

测下试载和硬调件试配用置户和程用序户程序到 M7

专用;

M7-300/M7-400

M参7考:

M7-SYS RT 用户手册

监视操作和 M7 诊断打印和归档

对于 S7

诊对断于 S7

ProC/C++

,但没有自定义的

在 M7 中有何不同?

对于 M7-300/M7-400,下列功能在 STEP 7 中不支持:

  • 多计算- 同步操作多个 CPU
  • 强制变量
  • 全局数据通讯
  • 自定义诊断

管理 M7 可编程控制系统

通过 M7 可编程控制系统上的下列任务,STEP 7 为您提供了特殊的支持:

  • 在 M7-300/M7-400 上安装操作系统
  • 通过编辑系统文件组态操作系统
  • 下载用户程序到 M7-300/M7-400
  • 更新固件程序

FM 的站的项目中,打开关联菜单,从中选择菜单命令:

或要访问 M7 可编程控制系统的管理界面,选择 M7 程序文件夹后,在包含 M7 CPU

PLC > 管理 M7 系统

您可以从在线帮助和M7-SYS RT 用户手册中获取详细的指导。

M7 编程的可选软件

M7 可选软件

STEP 7 提供了完成下列工作所需的基本功能:

  • 创建并管理项目
  • 硬件配置及硬件参数设定
  • 网络和网络连接组态
  • 管理符号数据

无论您是否使用 SIMATIC S7 或 SIMATIC M7 可编程控制器,都提供这些功能。为了创建 M7 应用程序,除 STEP 7 外,您还需要 M7 可选软件。

软件

M7-SYS RT

内容

  • 支持 MPI

M7 RMOS32 操作系统

用于S7 和M7 的 用于 CFC (连续功能图

M7API 系统库

)程序的编程软件

CFC

  • STEP 7 中的Borland 开发环境链接
  • 符号导入编辑器和发生器
  • Organon xdb386 高级语言调试工具

Borland C/C++

开发环境

Borland C++

M7ProC/C++

结合 M7 可选软件,STEP 7 可支持下列附加任务:

  • 通过多点通讯接口(MPI),将数据下载到 M7 可编程控制系统
  • 查询 M7 可编程控制系统的信息
  • 完成 M7 可编程控制系统的特殊设置,以及复位 M7

下图所示为用于 M7 编程的M7 可选软件的相互关系。

STEP 7 V5.4 编程手册-149

结论

要创建的对象 需要的 M7 软件选项

程序

  1. M7-SYS RT
  2. M7ProC/C++
  3. Borland C++
2. 用于S7 和M7 的 CFC

1. M7-SYS RT

3. Borland C++

C/C++

CFC 程序

软件和软件所支持的任务

可创建选软M件7 应中用。程序所需要的特殊工具,一部分集成在 STEP 7 中,一部分集成在 M7

下表说明各种软件包所支持的任务:

软件

  • 安装 M7 操作系统

所提供的支持

  • 管理 M7 可编程控制系统
  • 下载、启动及删除 M7 程序

M7 操作系统和 M7 系统应用软件有助于实现下列任务:

  • 显示状态和诊断数据
  • 复位 CPU

控制程序处理

管理存储器和资源

访问计算机硬件和SIMATIC 硬件

处理中断

诊断

状态监视

通讯

集成代码创建(将Borland 开发环境集成到STEP 7 中)

将项目的符号链接到源代码中

用于 S7 和M7 的

通过集成的调试功能

Borland C++

创建C 和 C++程序

创建、测试和调试 CFC 程序

CFC

启动和运行 CFC 程序

M7-ProC/C++

M7-SYS RT

STEP 7

25.3 M7-300/M7-400 操作系统

关对于重要用的C。和操C作++系高统级为语应言用创程建序的完应成用下程列序任来务说:,操作系统提供的这些应用软件是至

  • 访问硬件
  • 管理资源
  • 系统集成
  • 与系统中的其它组件通讯

口Mu的lti,tasking Operating System)实时操作系统。M7 RMOS32 已扩展为包含调用接

为了执行自动化任务,SIMATIC M7 自动化计算机使用了 M7 RMOS32 (Realtime

系统中。

M7 API (Application Programming Interface,应用程序接口)已集成到

SIMATIC

位应用程序上。下列 模块组态中可使用该操作系统:

实时操作系统 M7 RMOS32 可用于对时间要求苛刻的、实时的、多任务解决方案的

32 M7

使用 的

  • M7 RMOS32
  • MSDOS M7 RMOS32

您为 M7 可编程控制系统选择的操作系统组态取决于您所使用的 M7 模块:

操作系统组态

模块/主存储器

是/

PROFIBUS-DP 和 TCP/IP

否否是

安装在海量存储器上

存或储者卡硬盘

4 MB

是是

存或储者卡硬盘

4 MB

FM 356-4 / 8 MB

CPU 388-4 / 8 MB

FM 456-4 / 16 MB

CPU 488-3 / 16 MB

CPU 486-3 / 16 MB

M7 RMOS32

使用 MS-DOS

FM 356-4 / 4 MB

FM 356-4 / 8 MB

CPU 388-4 / 8 MB

FM 456-4 / 16 MB

CPU 488-3 / 16 MB

CPU 486-3 / 16 MB

M7 RMOS32

在组态表中更换模块

换如模果块使用,请HW做如Co下n处fig理来:修订站组态,并且,例如,希望为一个具有新订货号的站更

放下新模块。新模 尽量采用已插入的模块的参数。

1. 使用拖放操作从硬件目录窗口将模块拖到已放置好的旧模块上。

此2. 过程比通过删除旧模块、然后插入新模块并为新模块设置参数,从而实现更换模此功HW能。Config 中,可以通过菜单命令选项 > 设置(“启用模块更换”)来打开或关闭

在块的方法更快。

具有大量联网站的项目

连如果接,逐站个将组自态动所有置于的站网络,然视图后通中过。这菜个单步命令骤选的项缺点> 是组随态后网必络须调根用据N拓etP扑ro准,则以排便列组站态和如子果网项。目包含大量联网的站,并且希望组态这些站之间的连接,应在网络视图中从

头组态系统结构,以保持总览:

  1. 在 SIMATIC 管理器中创建新项目(菜单命令文件 > 新建)。

3. 在 NetPro 中按如下步骤创建站:

启动 菜单命令选项 组态网络

  1. NetPro ( > )
    • 使用拖放操作,从目录窗口放置站。

- 双击站以启动 HW Config。

    • 在 HW Config 中,使用拖放操作放置具有通讯能力的模块(CPU、CP、FM IF )

、 模块 。

    • 口如。果希望联网这些模块,双击组态表中相应的行,创建新的子网,并联网接

- 保存组态并切换到NetPro。

    • 在 NetPro 中,放置站和子网(用鼠标移动对象,直到到达希望的位置)

4. 在 NetPro 中组态连接,必要时更正联网。

重新排列

数如据果在库来ST解E决P 。7 中工作时出现无法解释的问题,常常可以通过重新排列项目或库的的选间择菜隙,单这命令种间文件隙的> 存重在新会排减列少,项可目进行重新排列。这可以清除内容删除过程中产生整这理项。功能可以优化项目或库的数据存储,方法类似于硬盘文件存储优化的硬盘碎片

/库数据的存储空间。

功重能新不排能列过自动程所进行需的时间取决于要移动的数据量,这可能需要一些时间。因此,该

行重新排列的时候,(如由在用关户闭触某发个进项行目。的时候),而是在用户觉得需要对项目或者库进

要求 能只进有行当项重新目和排列库。中没有任何对象被其它应用程序编辑,并因此锁定数据访问时,才

跨多个程序段编辑符号

LAD/STL/FBD 程序编辑器使您可以视图和编辑多个程序段的符号。

  1. 点击程序段名称(例如“程序段 1”),以选择该程序段名称。
  2. 按住CRTL 键,添加更多的程序段到您的选择中。
  3. 右击,调用上下文关联菜单命令编辑符号。

使用快捷键 CTRL+A,选择一个块的所有程序段,然后突出显示程序段名称。

用变量表测试

为了监视和修改变量表中的变量,请注意如下的编辑提示:

  • 可以将符号和地址输入“符号”列以及“地址”列。条目会自动写入合适的列。
  • 改要”显触示发修改点设的置值到,应“将扫描“周监期视”结束触发”处点。设置到“扫描周期开始”处,并将“修

以获得消除错误的建议。

  • 如果将光标放在有红色标记的行中,将显示简要的信息,告知错误原因。按下

F1

  • 必只须能输完入全按已经照符在号符号表中表的中定义来过输的入那符些号符号。。

Motor+Off”、“Motor-Off”)。

“含特殊字符的符号名称必须包含在引号内(例如,“Motor.Off”、

  • 可以在“在线”标签(“自定义”对话框)中关闭警告。
  • 无需事先断开连接,即可改变连接。
  • 监视触发器可以在监视变量时定义。
  • 变可以量。通过选择行并执行“强制”功能来修改所选择的变量。只修改高亮度显示的
  • 当不确“监认即视”退、出:“修改”、“释放 ”、“监视”和“修改”终止时,如果按

ESC 键,则不会提问是否希望退P出Q。

  • 使输用入菜连续单命的令地插址范入围:变量范围。

>

>

  • 显示和隐藏列:

符使号用下:视列菜图单命符令号显示或隐藏各个列: 状符态号值注的释表:达>视格图式>:符视号图注释显示格式变修量改的变量状的态值:视图 > 变修量改> 状变态量值

  • 同时改变表格多个行的> 显示格式:
  1. 按住鼠标左键,在目标表格区域上拖动,选择希望改变显示格式的区域。
  2. 选用中菜的单表命格令行视的图格> 式选。择显示格式选择表达方式。仅改变那些允许改变格式的、
  • 通过 F1 键输入实例:
    • 如果将光标放在地址列并按 F1 键,将获得有关地址输入的实例。
    • 例如。果将光标放在修改变量值列并按 F1 键,将获得有关修改/强制输入值的实

使用程序编辑器修改变量

为在您程提序供编一辑种器快中,速、您可简单以的对方用于式,二通进过制鼠输标入点和击存就储可位以的对按这钮些进地行址编进程行,这修些改。按钮将

要求

  • 配在给符号您想表中要修,改通的过地菜址单命令特殊对象属性 > 在接触点上控制,您已将该属性分
  • 单已经命令选选择了项 LA自D定/S义TL/。FBD 程序编辑器“常规”标签中的“触点控制”选项(菜
  • 已经选择了菜> 单命令调) 试 监视。

此处的触发条件为“永久 在周>期启动处”。

只过要多保重持选按择钮处于按下状态/ ,就会对设备中实际使用的输入进行监视。您还可以通

(CTRL 键)修改多个输入。

目对或于在位变存量储器表中或提无出法明使用确要的输求,入或,该按地下址按钮被将使状态置位为 1。仅当通过关联菜单条

为 0。

STEP 7 程序复位时,该状态才会复位

存对于储器非,否则定输修改入值或“位存储器,按下按钮将导致修改值“1”生效;对于否定输入或位

0”生效。

关于 WinCC 的注意事项

的如控果在制选W项inC是C允中许通的过。操然作而员,控如制果启操动作了员程具序有编辑器和变量监视,那么只有 WinCC

是允许的。

WinCC 的“维护权限”,那么两者都

虚拟工作存储器

中出现问题的另一个原因可能是虚拟工作存储器不够。

使ST 用EP 7

STEP 7 进行工作时,您应该调整虚拟存储器设置。操作过程如下:

1. 例如,打开控制面板,进入开始菜单开始 设置 控制面板,再双击“系统” 仅适用于 XP:在开始 > 桌面 > 属性 > 高级 > 系统性能 > 设置下打开。

图标。 > >

在 Windows 2000 中,选择“高级”标签,并点击“系统性能选项”按钮。

2.

Windows XP/Server 2003 下,在“系统设置”对话框中选择“高级”标签。

  1. 点击“更改”按钮。
  2. 在“最小值”中输入至少 40 兆字节,在“最大值”中输入至少 150 兆字节。

提示和技巧

工作模式

工作模式和模式转换

工作模式

试工控作制模器式的描编述程了以特及定进时行间故点障处诊CP断U非的常工有作用情。况。了解 CPU 的工作模式对启动、测 S7-300 和 S7-400 CPU 可采用下列工作模式:

  • STOP
  • STARTUP
  • RUN

存在ST,O并P将模式中,CPU 会检查所有已组态的模块或由默认寻址设置的模块是否的确

在 I/O 设置为预定义的初始状态。用户程序不能在 STOP 模式下执行。

别:STARTUP 模式中,“暖启动”、“冷启动”和“热启动”启动类型之间互有区

(复位非保持性定时器、计数器和位存储器)。

    • 在理暖启动中,从程序开始处以系统数据和用户地址区的初始设置开始进行程序处

用户程序 也适用于暖启动 。

    • 在冷启动中,执行 OB1 中的第一个命令时,读取过程映像输入表,并处理STEP 7 ( )
      • 器删的除预工置作值存。储器中由 SFC 创建的数据块;剩余的数据块具有来自加载存储
      • 复持位状过态程。映像和所有定时器、计数器和位存储器,不管它们是否已分配为保
    • 器在热启动中,在程序中断处继续开始执行程序(不复位定时器、计数器和位存储在

)。只有 S7-400 CPU 中才能进行热启动。

程设HO备L进D行模测式试中时,才暂能停使用用户程序处理,然后可以逐步测试用户程序。只有在使用编

消息RU。N 模式中,CPU 执行用户程序、更新输入和输出、处理中断并处理过程出错

在所有这些模式中,

HOLD 模式。

进行通讯。

CPU 可通过多点接口(MPI)

其它工作模式

如果CPU 没有准备好操作,则它处于下列模式之一:

  • 故要障检,查即发生故障。
    • 关闭,即切断电源。

CPU 启动,则显示诊断缓冲区,以便分析问题。如果

然后再接CP通U电是源否。的如确果发生故障,可将 CPU 切换到 STOP 模式,并切断电源, CPU CPU

没有启动,则必须更换该 。

工作模式转换

下图显示了 S7-300 和 S7-400 CPU 的工作模式和模式转换:

STEP 7 V5.4 编程手册-150

下表显示了可改变工作模式的条件。

转换 描述

CPU 进入STARTUP 模式:

接通电源后,CPU 处于STOP 模式。

1.
2.
  • 通过按键开关或编程设备将 CPU 转变为RUN 或RUNP 之后。
  • 通执过行接了通电源自动或触发启动后通。讯功能。
  • 在两种情况下RE,S按U键ME开关S必T须AR设T置为 或 。

RUN RUNP

转换

在描下述列情况下,

  • 在启动OB 中执行了停止命令。
  • 启动期间检测到错误。
  • 通过按键开关或编程设备,将 CPU 变为STOP 模式。

CPU 返回STOP 模式:

到达启动程序中的断点时,CPU 变为 HOLD 模式。

当置位启动程序中的断点,且执行“

  • 执行了 STOP 通讯功能。

在下列情况下,CPU 返回 STOP 模式:

STARTUP 模式(

测试功能)

EXIT HOLD

”命令后,CPU 变为

如果启动成功,那么 C返P回U 进入 RUN 模式。

  • 通过按键开关或编程设备,将 CPU 变为STOP 模式。

在下列情况下,

行了STOP 通讯命令。

  • 在 RUN 模式中检测到出错,并且没有加载相应的OB

CPU STOP 模式:

  • 在用户程序中编辑停止命令。
  • 通过按键开关或编程设备,将 CPU 变为STOP 模式。

到达用户程序中的断点时,CPU 变为

置位一个断点并执行“

行了STOP 通讯功能。

模式。

EXIT HOLD

”命H令OL之D后, 进入 模式。

CPU RUN

10.

9.

8.

7.

6.

5.

4.

3.

工作模式优先级

该模式优先级最高,RU因N此,而用户尝试在编程设备中将 CPU 设为 STOP,那么由于

如果果模同式时选请择求器大设量为工作模式转换,那么选择具有最高优先级的工作模式。例如,如

CPU 将进入 STOP 模式。

优最先高级 模式

STOP
HOLD
STARTUP
RUN

最低

STOP 模式

CPU 进行以下检查:

处用于户安程全序状不态能。在 STOP 模式下执行。所有输出都被设置为替换值,以便使受控过程

        • 硬件是否有问题(例如:模块不可用)?
        • CPU 应采用默认设置,或者进行参数设置?
        • 是否满足程序中规定的启动条件?
        • 有没有系统软件问题?

在 STOP 模式下,CPU 也能接收全局数据,且有可能为已组态的连接使用通讯

SFB,为未组态的连接使用通讯 SFC 进行被动单向通讯。

存储器复位手在动ST复O位P,模或式者下通,过CP编U程存设储备器进可行以复复位位。可以通过按键开关(MRES)对存储器进行

(如在下载某个用户程序之前)。

CPU 存储器复位意味着 CPU 将回到初始状态,如下所示:

        • 零工作。存储器和 RAM 装载存储器中全部的用户程序,以及所有地址区域,都被清
        • 数系保统参留。数以及 CPU 和模块参数复位为默认设置。在存储器复位前设置的MPI 参
        • 存如储果器插中入了存储卡(EPROM 闪存),CPU 就会将存储卡中的用户程序复制到工作

如果存储卡中有合适的组态数据,则还包括 和模块参数 。

诊断缓冲区、( CPU )

MPI 参数、时间以及运行系统计时器不会复位。

STARTUP 模式

启在动CPU 可以开始处理用户程序之前,必须首先执行启动程序。通过在启动程序中对

进行编程,可以指定循环程序的某些特定设置。

有 OB三种

STEP 7 在 CPU 的参数集中明确设置这一点。

动。必类须型通过的启动:暖启动、冷启动和热启动。只有 S7-400 CPU

STARTUP 模式的特性如下:

)。

中才能进行热启

暖启动

  • 处冷理启启动动 OB 中的程序(OB100 用于暖启动,OB101 用于热启动,OB102 用于
  • 不能执行时间驱动型或中断驱动型程序。
  • 更新定时器。
  • 运行时测量器开始运行。
  • 信号模块上禁止的数字量输入(可通过直接访问设置)。

选始择终:允许暖启动,除非系统已经请求存储器复位。发生下列情况后,暖启动是唯一

  • 存储器复位
  • 当 CPU 处于 STOP 模式时,下载用户程序
  • I 栈/B 栈溢出
  • 放弃暖启动(由于断电或改变模式选择器设置)
  • 当热启动前的中断超过设置的时间限制时。

手动暖启动手动暖启动可由下列各项触发:

    • 模式选择器

(CRST/WRST 开关 - 如果可用 - 必须设置为 CRST)

    • 编程设备上的相应命令或通过通讯功能

(如果模式选择器设为 RUN 或 RUNP)

自动暖启动在下列情况下,上电后可触发自动暖启动:

    • 发生断电时,CPU 不处于STOP 模式。
    • 模式选择器设为 RUN 或 RUNP。
    • 没有编程上电后自动热启动。
    • 在暖启动期间,CPU 因断电中断(与编程设定的重启动类型无关)。

CRST/WRST 开关对自动暖启动没有影响。

无备用电池时自动暖启动

断如电果使恢复用电没有源后备用,电池的存C储P器U自(如动果复有位必,要并执执行行免暖维启护动操。作用),户那程么序在必接须通位电于源闪后存或

EPROM (存储卡 CPU上。

)

热启动

户程序段被称为剩余周期。剩余周期可包含时间驱动型和中断驱动型程序段。

动在执RU行N热模启式动下。断在电热、启恢动复期电间源,后用,户S程7-序40从0C中P断U处执继行续一执个行初。始断化电例之行前程未序执,行然的后用自有仅当其它用户导致程序暖启没动有的在原ST因O时P,模才式允中许进热行启修动改。(例手如动,和重自新动加执载行一热个启已动修均改可的。块),且没

手动热启动热仅启当动CP:U 参数集中有合适的参数设置并由于下列原因导致 STOP 时,才能使用手动

    • 模式选择器从 RUN 变为 STOP。
    • 没有加载用户编程的 STOP、调用 OB 后的 STOP。模式是编程设备上一个命令或通讯功能的结果。
  • 可由S下T列OP

各项触发手动热启动:

    • 模式选择器

CRST/WRST 必须设置为 WRST。

    • 编程设备上的相应命令或通过通讯功能(模式选择器设为 RUN 或 RUNP)。
    • 在 CPU 的参数集中设置手动热启动时。

自动热启动在下列情况下,上电后可触发自动热启动:

    • 发生断电时,CPU 不处于STOP 或HOLD 模式。
    • 模式选择器设为 RUN 或 RUNP。
    • 在 CPU 的参数集中设置上电后自动热启动。

CRST/WRST 开关对自动热启动没有影响。

断电后的保持数据区

S7-300 和 S7-400 CPU 对断电再上电的响应不同。

成存S7数储-3据位00丢、C失定PU。时(器除、了计C数PU器3以18及外数)只据具块有中暖的启区动指的定功为能具。有然保而持,性通,过以免ST由E于P 7断,电可而以造将持S7性-4上00电C后PU响根应据重参新数上设电置。,以暖启动(保持性或非保持性上电后)或热启动(只能在保

当上电时,执行存储器自动暖启动。

下表显示了在) 暖启动、冷启动或热启动期间, 和 上保持的数据。

S7-300 S7-400

表示

保在持的数据上保持的逻辑块,所有过载的逻辑块均丢失

表示

表示

据块EP丢ROM 上的保持数据来自 NV-RAM 时,才保持数据块(RAM 中加载或创建

表示

复位或删除数据)

(DB )

内容

数据设置为从 EPRO 存储器中获取的初始值

为 NV-RAM 不可用

M

---

V

0

VX

VC

X

下表显示了在工作存储器(EPROM 和RAM 加载存储器)中保持的数据:

备用

EPROM

数据 加载存储 工作存 存储位、 存储位、 加载存 工作存储 工作存储 存储位、 存储位、

器中的块 储的器中 定计时数器 定计时数器 储的器块中 器中的 器中的 定计时数器 定计时数器

CPU

电池

(存储器 卡

集成)

CPU

不带

备用

电池

DB

(定义为

易失性)

保定持义性为

DB

(

) 易失性) 保持性) 易失性)

(定义为 (定义为 (定义为

DB

允许

暖启动

只允许

X

X

X

X

S上热7启的-4动00

0

0

V

---

VC

0

0

0

X

S上冷7启的-4动00

0

0

V

V

VC

0

0

0

X

S上冷7启的-3动00

0

0

V

---

VC

0

X

X

X

S上冷7启的-4动00

0

X

V

VX

VC

0

X

X

X

S上冷7启的-3动00

定义为

(

保持性)

启动活动 下表显示启动期间,CPU 执行的活动:

以清执除行顺序排列的活动

清除易I 栈失/性B 栈存储位、定时器、计数器

在暖启动中

在冷启动中

在热启动中

放弃延诊时断中断

X

更计新算系模统块状参态数列并表将其传送到模块或传送默认值

X

执行相剩关余启周动期 由于断电没有执行的程序部分

X

更新过程映像输入表

(

)

X 表 示 已 执 行

到 RUN 后启用数字量输出(取消OD 信号)

X

0 表 示 未 执 行

X X 0
X 0 0
清除所过有程存映储像位输、出定表时器、计数器 0

X

X

X

可0选
复放位弃数硬字件量中信断号模块的输出 X X 可选
X 0
x x 0
X X
(SZL) X X X
X X
OB X X X
0 0 X
X X X
X X

中止启动 如果在启动期间出错,那么放弃启动, 进入或保持 模式。

必须重复放弃的暖启动。放弃重启动后,CP可U进行暖启动和S热TO启P动。在下列情况下,不执行启动(重启(暖启动)或热启动)或放弃启动:

    • CPU 的工作模式开关设为 STOP。
    • 请求存储器复位。
    • 插入带 STEP 7 不许可应用代码的存储卡(例如,STEP 5)。
    • 在单个处理器模式中插入一个以上CPU。
    • 如果用户程序包含CPU 不能识别或已经禁用的 OB。
    • 没如有果全在部上插电后入,不C允P许U 预发置现和通过实际ST参E数P 分7 创配建之的间组出态现表区中别列。出的所有模块实际上
    • 如果在计算模块( 参数时出错。

)

在下列情况下,不执行热启动或放弃热启动:

    • CPU 存储器复位(存储器复位后只能执行暖启动)。

)。

    • 之超间过的中时断间时间限制(该时间为从退出 RUN 模式到执行完包含剩余周期的启动 OB
    • 改变了模块组态(例如,替换了模块)。
    • 参数分配只允许暖启动。
    • 当 CPU 处于 STOP 模式时,加载、删除或修改了块时。

活动顺序

下图显示了在 和 期间 的活动:

STARTUP RUN CPU

6723 581

STEP 7 V5.4 编程手册-151 STEP 7 V5.4 编程手册-152

5HDG LQ SURFHVV- LPDJH LQSXW WDEOH (3,,)

3URFHVV WKH XVHU SURJUDPP

(VHH 3)

2XWSXW WKH SURFHVV- LPDJH RXWSXW WDEOH

(3,4)

2XWSXWV DUH HQDEOHG (VHH 4)

67$5783

8VHU GDWD 'HOHWH

3,,/3,4, UHWHQWLYH DQG

QRQ-UHWHQWLYH PHPRU\ ELWV, WLPHUV, DQG FRXQWHUV

,QLWLDOL]H ZLWK ORDG

YDOXHV DOO '%V

5HTXHVW IRU D FROG UHVWDUW

&ROG UHVWDUW - 2%102

3HULSKHUDO RXWSXWV

DUH VZLWFKHG WR D VDIH VWDWH

(VHH 1)

5HTXHVW IRU D ZDUP UHVWDUW

8VHU GDWD 'HOHWH 3,,/3,4,

QRQ-UHWHQWLYH PHPRU\ ELWV, WLPHUV, FRXQWHUV 5HWDLQHG UHWHQWLYH PHPRU\ ELWV, WLPHUV, FRXQWHUV, DQG '%V (VHH 5)

:DUP UHVWDUW- 2%100

7UDQVIHU 3,4 WR ,/4 PRGXOHV
3HULSKHUDO - RXWSXWV

RXWVLGH RI WKH SURFHVV- LPDJH

(VHH 1)

3HULSKHUDO RXWSXWV

DUH VZLWFKHG WR D VDIH VWDWH

(VHH 1)

5HTXHVW IRU D KRW UHVWDUW

5HPDLQLQJ VFDQ F\FOH

8VHU GDWD

5HWDLQHG UHWHQWLYH DQG QRQ- UHWHQWLYH PHPRU\

ELWV, WLPHUV, FRXQWHUV, DQG '%V

(VHH 2)

+RW UHVWDUW - 2%101

 

3HULSKHUDO RXWSXWV

DUH VZLWFKHG WR D VDIH VWDWH

(VHH 1)

5HVHW WKH SURFHVV-LPDJH RXWSXWV DQG SHULSKHUDO RXWSXWV. (SDUDPHWHUV FDQ

EH DVVJLQHG)

\HV

6723

,QWHUUXSWLRQ WLPH OLPLW QR H[FHHGHG"

%HKDYLRU FDQ EH LQIOXHQFHG E\ XVHU DFWLRQV

“STARTUP 和 RUN 期间CPU 的活动”图的要点

  1. 管通用过户I/O程模序块采在用硬的件是侧过将程所映有像外区围以设内备的输出,切还换是到以安外全的状输态出(,默都认可值进=行0)该。切不 “如保果持使用上一具有次值替”换。值能力的信号模块,那么可以将参数分配给输出特性,如

换。

  1. 处理剩余扫描周期时必需。
  2. 在首次调用中断 OB 时,该 OB 可使用当前过程映像输入表。
  3. 出通的过状下态列:步骤,可在用户程序的第一个扫描周期内确定本地和分布式外围设备输
    • 使用可给其分配参数的输出模块来启用替换值输出或保持上一次值。
    • 当对于默启认设动置:激。活 CPU 启动参数“在热启动期间复位输出”,以输出 0 (相

)

)

    • 在启动 、 、 中预置输出。
  1. 在没有备份的OB (OB100系统O中B1,0只1 有O组B态10为2)保持性的 区才能保持。

S7-300

DB

RUN 模式

在 RUN 模式下,CPU 执行周期程序、时间驱动程序和中断驱动程序,如:

        • 读取输入的过程映像。
        • 执行用户程序。

使只用有通在讯RUN 模式下,才有可能通过全局数据通讯(全局数据表),且为已组态的连接

        • 输出过程映像输出表。

出了不同工作模式下,有可能进行的数据交换的

例:

下表给

SFB,为未组态的连接使用通讯 SFC,进行 C实PU 之间的主动数据交换。

通全讯局类数据型通讯

RUN RUN
RUN STOP/HOLD
STOP RUN
STOP X STOP
HOLD X STOP/HOLD
RUN RUN
RUN STOP/HOLD
SFB RUN RUN
RUN RUN
SFC RUN STOP/HOLD
RUN RUN
→ 表示 数据交换只能单向进行

X 表示 不能进行数据交换

单带双向有通讯 SF带B有通讯单带向有通讯

双向通讯,带有通讯 SFC

↔ 表示 数据交换可以双向进行

CPU 1 的模式 数据交换方向 CPU 2 的模式

HOLD 模式

模式下会出现下列情况:

HOLD 模式是一种特殊的模式。仅用于在启动阶段或者 RUN 模式下的测试目的。HOLD

        • 电冻结平的所有基本的定时钟时脉器:冲定停止时。器和运行系统计时器不工作,监视时间停止,时间驱动
        • 实时时钟运行。
        • 输出未激活,但可以为测试的目进行激活。
        • 可以置位和复位输入和输出。
        • 况在,HO而L不D是模自式动下热,启当动有或备重用启电动池的暖启CP动U。掉恢电复,供恢电复后供,电没后有,备CP用U电变池为的停止状

将自动重启动 暖启动 。 ( )

CPU

用可通以讯接收全局(数据,且) 有可能为组态的连结使用通讯 SFB,为非组态的连结使

SFC,进行被动单向通讯(参见RUN 模式节中的表)。

S7 CPU 的存储器区

存储器区的分配

S7 CPU 的存储器可以划分为三个区域(参见下图):

)。装载存储器可以是RAM 或 EPROM。

        • 的装存载储存器储中器用于用户程序,不包含符号地址分配或注释的(这些保留在编程设备
        • 未标记为启动时所需要的块将只存储在装入存储器中。
        • 作工存作储存器储和器系(集统成存的储R器AM区)中包执含行了。与运行程序相关的部分 S7 程序。该程序仅在工
        • 像系输统入存和储输器出(R表AM、)包位含存了储每器个、定CP时U器为和用计户数程器序。提系供统的存存储储器器也单包元含,块例堆如栈过和程中映断

堆栈。

        • 放除调了用上块述的时用区到域的外临,C时P数U据的。系这统些存数储据器只还在提块供激了活临时时才存保储持器有(本效地。数据堆栈),存

'LVWULEXWLRQ RI WKH 0HPRU\ DUHDV

&38

'\QDPLF ORDG PHPRU\ (5$0, LQWHJUDWHG RU RQ D PHPRU\ FDUG): FRQWDLQV WKH XVHU SURJUDP

5HWHQWLYH ORDG PHPRU\ ()(3520, RQ PHPRU\ FDUG RU LQWHJUDWHG LQ 67-300-&38V): FRQWDLQV WKH XVHU SURJUDP

6\VWHP PHPRU\ (5$0) FRQWDLQV:

3URFHVV-LPDJH LQSXW/RXWSXW WDEOHV, ELW PHPRU\, WLPHUV, FRXQWHUV

/RFDO GDWD VWDFN

%ORFN VWDFN

,QWHUUXSW VWDFN 'LDJQRVWLF EXIIHU

:RUN PHPRU\ (5$0) FRQWDLQV WKH H[HFXWDEOH XVHU SURJUDP

(IRU H[DPSOH ORJLF DQG GDWD EORFNV)

装载存储器和工作存储器

储当器从和编工程作设存备储下器载中用。户程序到 CPU 时,只有逻辑和数据块被装载到 CPU 的装入存

符号地址分配(符号表)和块注释保留在编程设备上。

分割用户程序

只为保装载证快与程速序执执行行用户相关程的序,部分以到及工避作免存到储不器能。扩展的工作存储器的不必要的的装载, 执行程序时不需要的块的各部分(例如,块标题)保留在装入存储器中。

下图给出了一个被装载到 CPU 存储器中的程序。

STEP 7 V5.4 编程手册-153 STEP 7 V5.4 编程手册-154 STEP 7 V5.4 编程手册-155 STEP 7 V5.4 编程手册-156 STEP 7 V5.4 编程手册-157

67-400

3URJUDPPLQJ GHYLFH

67-300

/RDG PHPRU\

(QWLUH ZRUN PHPRU\

6DYHG RQ WKH KDUG GLVN

(QWLUH GDWD EORFNV

(QWLUH ORJLF EORFNV

3DUWV RI ORJLF DQG GDWD EORFNV UHOHYDQW IRU

SURJUDP H[HFXWLRQ

/RJLF %ORFNV
'DWD %ORFNV
&RPPHQWV
6\PEROV

注借释助系统功能,在用户程序中创建的数据块 例如

被 整个

地保存在工作存储器中。

CPU 的模块信息的“存储器”标签中给出。

( SFC22 CREAT_DB)

CPU

配某在些这CP些U 在工作存储器中有用于代码和数据的独立管理区域。这些区域的大小和分

识别数据块为在“源文与件执中行编无程关的”数据块,作为 程序的一部分,就可以被识别为“与执行无

储关器”中(关。键如字有U必N要LIN,K可ED以)。使这用意味ST着L当它们下载到 CPU 时,数据块只存储在装入存于混和的公式:只有用于下一批空的间。公式因才此装可载扩到展工装作入存储器中用作。缓存区(例如,对用

)

器这。 SFC20 BLKMOV 将这些块的内容复制到工作存储项技术节省了工作存储器的

装入存储器结装构入存储器可以用存储卡扩展。为获得装入存储器的最大容量,参见“ 可编

手程控册”制器装入、存硬储件器及。安装手册”和“S7-400、M7-400 可编程控制器模块技S7术-3规00范参考在部分S7。-3通00过C在PU 中装入中存分储配器参也数可,以数具据有块集中成的区E域PR可O以M声部明分为,保以持及集参成见的 RAM

STEP 7

(

S7-300

在CPU 上保持存储器区)。

集成S7的-4装00入C存P储U 器中是,使用存存储储卡器(R,A主M要或用E于EP重R新OM装)载以和扩更展正装块入。存对储于器新是的强制性的。

CPU,也可以插入附加RA的M工作存储器。

S7-400

RAM 和 EPR根O据M是区选域择中的装还入是存储器特性存储卡来扩展装入存储器,装入存储器在下载、重新

下装表载或给存储器RA复M位载期间E可P能RO有M不同的反应。

出了多种装

方法:

存储器类型 装入的方法 装载类型

PG-CPU 连接

下载整个重新装入各个块

RAM

下载和并删除各整个

PG-CPU 连接

集成的(仅适用于S7- 300)

EPROM 到 CPU

存储卡插入 CPU 下载

或插入式

插入式

S7 程序 PG-CPU 连接

S7 程序 PG-CPU 连接

,并将

ROM 到PG

上传 EP

EPROM

EPROM

下载整个

S7 程序

将当丢复失位。CPU 存储器(MRES)或拆除 CPU 或 RAM 存储卡时,存储在 RAM 中的程序电保存池的在情EP况R下O,M也存会储保卡留中的传程输序、不备会份因副本CP。U 存储器复位而被擦除,甚至在没有备用

(

)

系统存储器

        1. 使用系统内存区域

相S7应C的PU地的址系区统域存中储直器接被对划数分据成寻多址个。地址区(参见下表)。使用程序中的指令,可以在

地址区 通访过问下列大小的单元进行 S7 符号(IEC) 描述

输入字字节

过程映像输入表 (位) I IB

IW

输入双字

ID

块。

在读扫取描输周入期,的并开记始录,该C区P域U中从的输值入。模块

过程映像输出表 输出(字位节) Q

描们周放期入发此送间区计域算程。的在输扫出描值周到期输结出并束模

输出字双字

QB CPU

QW

QD

位存储器

存储器(字位节) M

此果区。域用于存储程序中计算的中间结

MB

存储器双字 MW

MD

定计时数器

定计时数器(T) T

此区域为定计时数器提供存储空间。

数据块

数打据开块:,(C用) “ ” C

数由据所块有包逻含辑程块序定的义信为息通。用它共们享可以被,

数据位字节

OPN DB DB

或例者可以分配给特定的

( 或 DB) 实

数据字双字,用“

DB)。

打开:

DBX DBB DBW

” DBD

FB SFB (

数据位字节数据双字

OPN DI

DI

DIX DIB DIW

L

当块被执行时,此区域包含块的临时

本地数据 本地的数据字节

DID

LB

数据。L

堆栈也提供存储空间,

地址区

外设输入

外设

输出

S7 符号(IEC) 描述

(I/O)区:

本地的数据双字

外设输入字节

(I/O)区:

外设输入双字字

外设输出字节

外设输出双字

PQD

PQW

PQB

PID

PIW

(DP)。

外问围中设央备和输分入布和式的输出输区入域和允输许出直模接块访

PIB

LD

LW

通访过问下列大小的单元进行

息参:见下列 CPU 手册或指令列表,以获取关于哪个地址区域可用于您的 CPU 的信

          • “S7-300 可编程控制器,硬件与安装”手册
          • “S7-400、M7-400 可编程控制器,模块技术规范说明”参考手册
          • “S7-300 可编程控制器,指令列表”
          • “S7-400 可编程控制器,参考指南”

过程映像输入/输出表

状在态用,户而程是序中访问访问输入系(I统)和存输储出器(Q和)地分址布区式时,中程的序存并储不器扫区描。数该字存信储号器模区块就上是的过信程号

映像。

更新过程映像

CPU

I/O

下图给出在一个扫描周期内的处理步骤。

STEP 7 V5.4 编程手册-158 操完作成系,统将(执O行S)用的户内程部序任以务及之它一所是调读用取的输所入有状块态。到周过期程结映束像时输,入将表过(P程II)。映一像旦输该出步表骤

STEP 7 V5.4 编程手册-159 (出PI,Q均)写由入操到作模系块统的独输立出控。制读。入过程映像输入表以及将过程映像输出表写入模块的输

控有制块。将过程映像输出表(PI写I)。入一模旦块该的步输骤出完和成读,入将过执程行映用像户输程入序表以均及由它操所作调系用统的独所立

状操态作到系过统程(O映S)像的输内入部表任务之一是过程映像输出表(PIQ)写入模块的输出,并读取输入

过程映像的优点

期与直间,接访问输具入有/输过出程模信块号相的比一,致过性程的映像访。问如的果主在要程优序点执在行于期在间一,个输程入序模周块期的持信续号

行状了态更发C生P。了U在变用化户时程,序过中程映周期像中性的地扫信号描输状态入信仍号被保的过持程,,直确到保下了一总个有周一期致过程的映输入像进信

息。

中访。问过程映像还比直接访问信号模块更节省时间,因为过程映像位于 CPU 的内存

局部过程映像除(了过由程操映作像系分统区自)动更新的过程映像 过程映像输入表 和过程映像输出表 ,

(CPU

还见可为

区。/输出表。输入和输出地址只能一次分配到 OB 1 过程映像和所有的过程映像分

no. 1

分配最多

S7-400 CPU

个局( 部过程映像

15

PI专I

用的,

到 PIQ,) 参

no. 15

可以S7-400于、过M程7-映40像0 表可的编更程新控周制期器,模更块新技过术程规映格像参表考的手部册分)。。也就是说,在必要时,

通入过 STEP 7 为每个输入/输出地址分配的过程映像分区将不再属于 OB1 过程映像输

些在过分程配映地像址分时区,可以使用 STEP 7 定义过程映像分区(哪些模块输入/输出地址列在哪

O例B外进:行同自步动周更期新中。断(OB 61 OB 64)

)。过程映像分区既可由用户通过 SFC 来更新,也可通过系统连接的

到 上 OB。

的过程映像分区并不在系统侧更新,即使它们已链接到 OB

注对释于

,未分配的过程映像输入和输出可以用作附加的位存储器区域。

使用该S7性-3能00的C程P序U 只要满足下列条件之一,就可运行在更低版本的 即,

上:

(

4/99

)

S对7于-4这00些CPU

之前的

          • 用作位S存7-储40器0 C的P过U程映像区必须位于参数赋值“过程映像的大小”以外,或者

必须位于既不被系统也不被 更新的过程映像分区。

          • SFC26/SFC27

使用 SFC 更新局部过程映像(过程映像分区)

可以在用户程序中使用 SFC 来更新整个过程映像或一个过程映像分区。

          • 要求:所说的过程映像不能由系统更新。
          • SFC26 UPDAT_PI:更新过程映像输入表
          • SFC27 UPDAT_PO:更新过程映像输出表。

局部过程映像(过程映像分区)的系统更新

O在B1 处理之前或之后周期性地更新。只能作为一个参数为特定的 CPU 分配该功能。运

也可以调用 OB 自动对过程映像分区进行系统更新 - 与(整个)过程映像类似,它是在

行期间,所分配的过程映像分区将自动更新:

          • 在处理 OB 之前,用于输入的过程映像分区
          • 在处理 OB 之后,用于输出的过程映像分区

给在分了哪配个OB 优。先级的同时,可以为 CPU 分配参数,来指示哪个过程映像分区被分配

OB

(YHQW WKDW OHDGV WR DQ 2% LQWHUUXSWLRQ

STEP 7 V5.4 编程手册-160

3LQW RI LQWHUUXSWLRQ LQ WKH XVHU SURJUDP

5HDGLQJ WKH LQSXWV IURP WKH FRQILJXUHG SURFHVV-LPDJH SDUWLWLRQ RI WKH PRGXOHV
3URFHVVLQJ RI WKH XVHU SURJUDP (LQWHUUXSW 2% DQG DOO EORFNV FDOOHG LQ WKDW 2%)
:ULWLQJ RI WKH RXSXWV IURP WKH FRQILJXUHG SURFHVV-LPDJH SDUWLWLRQ LQWR WKH PRGXOHV

在过程映像更新期间的 I/O 访问错误(PZF)

差在过别程:映像更新时,CPU 默认情况下(S7-300 系列和 S7-400 系列)对错误的反应有

0”并将保持为“0”,直到故障消失。

          • S“7-300:不在诊断缓冲区中生成条目,不调用 OB,相应的输入字节被复位为
          • S访7问-4启00动:在诊断。缓每冲次区访中问生过成程一映个像条时目,,故为障相输应入的字每节个被过复程位映为像“更新”的。每个 I/O

以下列方式之CP一U工(如作:4/99),可以为 I/O 访问错误的反应重新分配参数,以便 CPU

          • 之在前诊,断故缓障冲输区入中生字节成被条复目位,为仅“为进”入,的而和且离在开的 P离ZF开启之动前O操B作85系(在统调不用会再OB将8其5

覆盖)

          • 生成默认的

0

执行结果 不调用

PZF

;相应的输入字节被复位为“ ”,

并且故障清除S7之-3前00操作系统不(会再将其O覆B8盖5 。 0

将生故成障默输认入的字S7节-4复00位执为行“结”果。(为每个单独访问)调用 OB85;每次访问过程映像时

0 )

OB85 的启动频率?

地除址了作空间为也参数会影分响配的 PZF的的启反动应频(进率入:的/离开的或对于每个 I/O 访问)之外,模块的或对输于出一的个数地址字空间多O达B8双5 字两的模个块通道,的OB模85拟启模动块一。次,例如对于最多为 32 位的输入

模块或对于有

例对如于,有对更于大的带有地址四个空通间的道的模模块拟,模OB块85需的要启两动次次。数随双字命令需要的访问次数而定,

局部数据堆栈

L 堆栈保存有:

          • 块的本地数据的临时变量
          • 组织块的启动信息
          • 关于传送参数的信息
          • 梯形图程序中逻辑的中间结果

覆当盖您。对在组首织次块访编程问本时,地数可以据堆声栈名临之前时变,必量须(TE对M本P地)只数在据块初执始行化期。间除可此用之,外然,后每它个将组被只能为当前执行的块的临时变量 本地数据 提供有限的存储空间。该存储器区

织块还需要 个字节的本地数据来存储它们的启动信息。

20

每本CP地U数据堆栈的大小取决于 。本(地数据堆栈) 被各优先级均分 默认 。也就是说

的本个优地先数据级有都可有用它的自空己间的。本地CP数U据区,从而保证了较高的优先级和( 它们)的 OB 自身

下断图,用而一后个者实又例被给出了优中先断级。的本地数据分配,其中在 L 堆栈中,OB1 被 OB10 中

OB81

3ULRULW\ FODVV 26

3ULRULW\ FODVV 2

3ULRULW\ FODVV 1

/ VWDFN

)%

2% 1

QHHGV 20 %\WHV LQ WKH /-6WDFN

)%

2% 20

QHHGV 20 %\WHV LQ WKH /-6WDFN

2% 81

QHHGV 20 %\WHV LQ WKH /-6WDFN

)&

6)&

嵌OB套和的它层相,关在的执块行中块所时有,的临堆时栈变可量能(会TE溢M出P)。都保存在 L 堆栈中。如果使用了过多的

!

当心

如果超出一个 堆栈的允L许大小, 将切换到 模式。

STOP

测试程序中的 L

OB

CPU

本地数据需求也必须加以

同步错误

的L 堆栈(临时变量)。

STOP

考虑。

分配本地数据给优先级

通本过地分数配据参堆数栈,中可,以并为不是每个优先级都需要同样大小的存储空间。在 STEP 7 中,

数它据优区先。级任等何级不的需存要储的器优区S7便-4增级00都C可P以U 将和其C取PU消3。18这的样各个优先级分配和不同大小的中本其地

将被忽略,

以节省循环时间。

大了。在程序执行期间,S7取-4消00激C活P的U

CPU 318

OB

节而对于其它的 S7-300 CPU,每个优先级被分配了固定大小的本地数据(256 个字

),不能对其修改。

中断堆栈

当如果前内程容序,的以执及行在被中更断高堆优栈先中级的打开O数B 中据断块,的操编作号系和统长将度保。存累加器和地址寄存器的的一块旦。执行新的 OB,操作系统将从 I 堆栈中装载信息,并从中断发生处恢复执行中断您当找CP出U 处于改ST变O为P 模式时模,式可的以原使因用。STEP 7 在编程设备上显示 I 堆栈。这就允许

CPU

STOP

块堆栈

列如数果据块:的处理被另一个块的调用或更高优先级的中断/错误检修中断,B 堆栈存储下

          • 编号、类型(OB、FB、FC、SFB、SFC),并返回被中断块的地址。
          • 当块被中断时,已打开的数据块(来自 DB 和 DI 寄存器)编号。使用此数据,用户程序可以在中断后恢复。

变如为果 CPU 处于 STOP 模式,可以用 STEP 7 在编程设备上显示 B 堆栈。当 CPU 改

(参见下图)。

出 STOP 模式时,B 堆栈将列出所有没有完全执行的块。块以处理开始的顺序列

/RNDO GDWD VWDFN (/-6WDFN)
/RNDO GDWD RI )& 3
/RNDO GDWD RI )& 2
/RFDO GDWD RI )% 1
2UGHU LQ ZKLFK WKH )%1 )&2 )&3 EORFNV DUH FDOOHG

7KH QXPEHU RI EORFNV WKDW FDQ EH VWRUHG LQ WKH

% VWDFN (SHU SULRULW\ FODVV GHSHQGV RQ WKH

&38

数据块寄存器

%ORFN VWDFN (%-6WDFN)
'DWD RI )& 3:

%ORFN QXPEHU 5HWXUQ DGGUHVV

'DWD RI )& 2:

%ORFN QXPEHU 5HWXUQ DGGUHVV

'DWD RI )% 1:

%ORFN QXPEHU 5HWXUQ DGGUHVV

'% DQG ', UHJLVWHU: 1R. RI RSHQ '%

1R. RI RSHQ LQVWDQFH '%

存在两个数据块寄存器。该寄存器组装有打开数据块的编号,如下:

          • DB 寄存器包含打开的共享数据块的编号
          • DI 寄存器包含打开的实例数据块的编号

诊断缓冲区

存诊区断中缓的存条区按目编诊断号取信决息出于模现块的及顺其序当进行前显工作示模。式第。一个条目包含最新的事件。诊断缓诊断事件包括:

          • 模块上的故障
          • 过程接线中的错误
          • CPU 中的系统错误
          • CPU 上的模式转换
          • 用户程序错误
          • 用户自定义诊断事件(通过系统功能 SFC52)。

评估诊断缓冲区

自系定统义状的态诊表断有事一件部的分更是多诊断信息缓。冲区当系,统包含诊断了以事件发发生生顺时序,排输列入的诊系断统缓诊冲断区事的件和信息用户与您无法清除诊断缓冲区中的这些条目,即使存储器复位,它们仍将保持。

传送到相应组织块的启动信息相同。

诊断缓冲区为您提供了以下可能:

          • 因如。果 CPU 切换到 STOP 模式,您可以判读最后导致 STOP 的事件,并定位原
          • 快速检测错误原因,大大提高系统的可用性。
          • 您可以评估和优化动态系统响应。

组织诊断缓冲区

于诊断每个缓不冲同区的设模计块为。环也形就缓冲是说区的,当工达作到方条式,目的这最样大可以数目利时用,条下目一的最个诊大数断缓目冲,区它事决件定

总将是导在致诊最断早缓的条冲区目的被第删一除条。。然对后于,所有的条目往后退,一可位能。的也条就目是数说目,为最新的:条目

,可以

设诊置断诊缓断存缓区冲中区显的示的长条度目。数目取决于S7模-3块00及C其P当U 前31工4 作模式。对于某些 100

CPU

诊断缓冲区的内容

上部列表框中包含了所有诊断事件的列表,它们具有下列信息:

          • 条目的序列号(最新的条目的编号为 1)
          • 诊使断缓事冲件区的中时的间时和间日数期据:有如效果,模应块设有置集模成块的时钟间,和日将期显并示定模块期检的查时间,这和点日期很重。要

要。

诊断事件的简短描述

在•

括下:部文本框中,将显示上部窗口的列表中所选事件的全部附加信息。这些信息包

          • 事件编号
          • 事件的描述
          • 诊断事件引起的模式转换
          • 涉及的错误位置的块,该块在缓冲区中生成条目 (块类型、块编号、相关地址)
          • 已进入或已离开的事件状态
          • 特定事件的附加信息

使用“事件帮助”按钮,可以在上部列表框中显示所选事件的附加信息。

块关、于系事统件属标识性的号语的言信描息述可以和帮在助“系统块和系统功能的参考帮助”中找到(跳转到关于

)

以文本文件保存内容

文使本用“的格模式块保信存息诊”断对缓话冲框区“的诊断内缓容。冲区”标签中的“另存为”按钮,可以以 ASCII

显示诊断缓冲区

,可以在编程设备上显示诊断缓冲区的内容。

通过“模块信息”对话框“诊断缓冲区”标签或者在程序中使用系统功能 SFC51 RDSYSST

STOP 之前的最后一个条目

录可以的监指视定在设从备 R例U如N,切换到、STO、P 前,以诊更断快缓速冲地区定的位最和后修一复个引条起目自动发的送原到因已。登

(

PG

OP

TD)

STOP

        1. S如7果-3电0源0 出C现PU掉上保持存储器区

的情况,

的存储器 动态

数装据入将存储丢失器 电、或工C作PU存存储储器器和复系位统(存MR储E器S)方复法位保,护而程S且7序这-3及些00其区C数域P据U先:前包含的(所有

。(R对AM于) S7-300 CPU,可以用下列)

          • 可的以部使分用数备据用。电池,保护在装入存储器、工作存储器中的所有数据和系统存储器

可编程控制器,硬件和安装”手册 。

          • 可以将程序存储在 EPROM 中(或者是存储卡或者是集成于 CPU 上,参见“S7-

300 )

          • 依靠CPU,在非易失性的 NVRAM 区中可以存储一定数量的数据。

使用 NVRAM

存S7储-3器00的CPU 在 NVRAM (非易失性 RAM)中提供一个区域(参见下图)。如果已在装入

电或当

CPU

EP从ROM 中存切储换程到序,从而的可情以况通下过。组态 CPU 保存某些数据(在有电源掉

1RQ-YRELOH PHPRU\ DUHDV RQ 67-300 &38V

STOP

RUN

)

'\QDPLF ORDG PHPRU\ (5$0)

:RUN PHPRU\

&RQILJXUDEOH PHPRU\ (195$0)

6\VWHP PHPRU\

6WDWLF ORDG

3OXJLQ )(3520 FDUWULGJH (RSWLRQDO)

PHPRU\ ()(3520)

为此,设置 CPU 以便下列数据保存在非易失性RAM 中:

&38

          • 数据包含在 DB 中(只有将程序已存储在装入存储器的 EPROM 中时才有效)
          • 定时器和计数器值
          • 在 保存在位存储器的数据。

可用每个,包CP含U在上,可内以的保数存据一可定以数保量存的在定那时里器。、计数器和存储位。一定数量的字节也进CP行U通的讯M。PI 地D址B存储在 NVRAM 中。确保在电源掉电或存储器复位后,CPU 能够

使用备用电池保护数据

,使得定时器、计数器和位存储器保存在 中,不管是否使用备用电

通过使用备用电池,在电源掉电期间,装入存储器和工作存储器将保持。如果组态

池CP,U此信息也将保留。 NVRAM

组态 的数据

NVRAM当

使用 STEP 7 组态 CPU 时,可以决定哪些存储器区将保持。

定可的以数在目NV多R的A数M 据中。组态的存储器数量取决于正在使用的 CPU。不能备份比 CPU 指

S7-400 CPU 上的保留存储区

没有备用电池的操作

时如,果使用没有备用电池时操作系统,当发生电源掉电或复位 CPU 存储器(MRES)

位,并S7且-4丢00失C所PU有的包存含储在器这(些动区态域装的入数存据储。器(RAM)、工作存储器和系统存储器)复

仍能够进行通讯。

有没有备用电池,只能重新启动(暖重启),且没有保持的存储器区。随着电源掉电,只

MPI 参数(例如,CPU 的 MPI 地址)保留。这意味着在电源掉电或存储器复位后, CPU

有备用电池的操作

如果使用电池备份存储器:

          • 在电源掉电后,当CPU 重新启动时,所有 RAM 区域的全部内容都保留。
          • 据在块重的启动内容期。间(暖重启),位存储器、定时器和计数器的地址区域被清零。保留数
          • 除的了内那容些也被保设留计。为非保持的位存储器、定时器和计数器之外,RAM 工作存储器

组态保持数据区

期可以间声暖明重一启定,数当目使的用存备储用位电、池定时时,器此和数计据数也器保为留保。持(数目取决于 CPU)。在重启动

当用( ) 分配参数时,可定义在重启动 暖重启 期间哪些存储位、定时器和计数

器应该ST保E持P 。7 只能备份 允许数量的数据( 。 )

器关,于模更块详细技术的规有关范”定参义保CP持U存储。器区的信息,请参见“S7-400、M7-400 可编程控制

考手册

工作存储器中的可组态存储器对象

对置于。某例些如,CP如U果,减对少象预的设大值小的,数如量本,地将数留据出或工诊作断存缓储存器区的,更可多以部在分“作组为态它硬用件。”在下设

当)。

钮“模块信息”对话框的“存储器”标签中找到这些 CPU 的设置(“详细资料”按

生改效变。存储器组态和下载新的组态到可编程控制器时,需要冷重启 CPU,以使改变

工作存储器中的可组态存储器对象

对如于,某如些果减CP少U默,认对值象,的将大留小出,工如作本存地储或器诊的断更缓多存部区分,作可为以它在用硬。件将组在态模中块设信置息。的例在存储器组态改变和下载到可编程控制器后,必须执行冷启动,以使改变生效。

“存储器”标签中显示这些 的设置 “详细资料”按钮 。

CPU ( )

数据类型和参数类型

数据类型和参数类型介绍

用户程序中的所有数据必须被数据类型识别。下列数据类型可用:

        • STEP 7 提供的基本数据类型
        • 用户可以通过组合基本数据类型创建复杂数据类型
        • 用来定义传送到 FB 或 FC 参数的参数类型

常规信息

位语。句装表、载和梯形传递图和指令功能块图以指及令移使动用指特令定长度和的数据对使象用。字例节如、,字位和逻双辑字指。令使用

由位是二进制的数字“(S”T或L)“数

32 位组成。

0

1

8

16

”。一个字(L节AD由

位FB组D成)

,一个字由

位组成,双字

格式学,运如算整指数令和也使浮点用数字节,进、行字编或码双字。。在这些字节、字或双字地址中,可以对各种

型当具使有用不符号同格寻式址选时,项和定计义数符号法。并指定这些符号的数据类型(参见下表)。不同的数据类解此释章。只描述一些书写编号和常数的方法。下表列出的编号和常数的格式,不再详细

格十式六进制

二进制的

以位计的长度

IEC 日期

8、16 和 32

I时EC间时间

8、16 和 32

计数法

B#16#、W#16#和 DW#16#

字符

'A'

8

TOD#

32

T#

32

D#

16

2#

基本数据类型

每个基本数据类型具有定义的长度。下表列出了基本数据类型。

类型和描述 以的位长计度 格式选项 范围和计数法(最低到最高值) 实例

BOOL (位) 布尔文本
1 十六进制的数字 TRUE/FALSE

B#16#0 到B#16#FF

TRUE
(字节

BYTE

)

8 二进制的数字 2#0 到 L B#16#10

L byte#16#10

(字

WORD

)

16 十六进制的数字

B十字C进D制无符号数二进制的数字

W#16#0 到

2#1111_1111_1111_1111

W#16#FFFF

C#0 到C#999

B#(0.0)到B#(255.255)

2#0 到

L 2#0001_0000_0000_0000

L W#16#1000

L word#16#1000 L C#998

L B#(10,20)

L byte#(10,20)

(双字

DWORD

)

32 十进进制制无的符数号字数字 2#1111_1111_1111_1111

1111_1111_1111_11到11 DW#16#0000_0000

B#(0,0,0,0)到

DW#16#FFFF_FFFF

B#(255,255,255,255)

2#1000_0001_0001_1000_

1011_1011_0111_1111

L DW#16#00A2_1234

L dword#16#00A2_1234 L B#(1, 14, 100, 120)

L byte#(1,14,100,120)

(整数

INT

)

16 十字进制有符号数 -32768 - 32767

L#-2147483648 到

L 1
(整数,

DINT

32 位)

32 十字进制有符号数 L#2147483647

上 限 : 3.402823e+38

L L#1
(浮点数

REAL

)

32 I浮EE点E数

S7 时间

下 限 : 1.175 495e-38

S5T#0H_0M_0S_10MS 到

L 1.234567e+13
S5TIME

(时SI间MATIC

)

16 以步长

10 毫秒(默认值)

IEC 时间步长为

S5T#2H_46M_30S_0MS 和S5T#0H_0M_0S_0MS L S5T#0H_1M_0S_0MS

L S5TIME#0H_1H_1M_0S_0M S

(IEC 时间

TIME

)

32 1整毫数秒,有符号

IEC 日期步长为

到-T#24D_20H_31M_23S_648MS

D#1990-1-1 到

T#24D_20H_31M_23S_647MS

L T#0D_1H_1M_0S_0MS L

TIME#0D_1H_1M_0S_0MS

(IEC 日期

DATE

)

16 1时天间步长为 TOD#0:0:0.0 到

D#2168-12-31

L D#1996-3-15

L DATE#1996-3-15

AY (时间

TIME_OF_D

)

32 1 毫秒

ASCII 字符

'A','B' 等

TOD#23:59:59.999

L TOD#1:10:3.3

L TIME_OF_DAY#1:10:3.3

(字符

CHAR

)

8 L 'E'

数据类型 INT 的格式(16 位整数)

空整间数是有一个字符号。下,表指给出它出整是数正整数位还的是范负围整。数。一个整数(16 位)在存储器中占用的

格式

整数(16 位)

(16 )

范围

-32 768 - +32 767

下图中将整数+44 显示为二进制的数字。

%LWV 15

12 11

8 7

4 3

0

6LJQ

'HFLPDO YDOXHV: 32 + 8 + 4 44

0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0

数据类型 DINT 的格式(32 位整数)

个整字数有。一下表个给符号出双,整指数出的它范是围正整。数还是负整数。双整数在存储器中占用的空间是两

格式

整数(32 位)

范围

-2 147 483 648 - +2 147 483 647

的二进制补码。 +1

%LWV

6LJQ

示下为图中正将整数整的数二-50进0制00补0码显。示通为过二取进反制所的有数位字的。状在态二,进然制后系将统结中果,加整数,的以负获数取形整式数表

31 28 27 24 23 20 19 16 15 12 11 8 7 4 3 0
1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 0 1 1 1 1 0 1 1 1 0 0 0 0 0

数据类型 REAL 的格式(浮点数)

这E”是整数;尾数“m”是有理数。

“浮点格式数字表示的通用形式是“数字 = m * b 的 E 次方”。基数“b”和指数

值。种在类型尾数的和数指字数表的达有法限的优位数点在内,于可:以在有覆盖限很的大空范间围内的能数够字表示。非常大和非常小的数动缺小点是数计点算来的匹精配度,有因限为。只例有如具,有当相构同成指两数个的数数字字的才和能时相,加指。数必须通过移位尾数(移

)

STEP 7 中的浮点数格式

IEEE 标准中描述的。它们由下列组件组成:

S浮T点EP算7术中的的浮点数符合基本格式,单宽度,在 ANSI/IEEE 标准 754-1985,二进制

          • 符号 S
          • 指数 e = E + 偏差,以常数增加(偏差 = +127)
          • 于尾数的m整的个小数数字部部分分。不和其它数字一起存储,因为在有效数字范围内,它总是等这

STEP 7 V5.4 编程手册-161 STEP 7 V5.4 编程手册-162

1。

三个组成部分一起占用一个双字(32 位):

%LW

31 28 27 24 23 20 19 16 15 12 11 8 7 43 0

6 H I

6LJQ (1 %LW) ([SRQHQW: H 0DQWLVVD: P (8 %LW) (23 %LW)

下表显示浮点格式中各个位的值。

符号

浮点数的组成部分 位号 值

e 30
24
e 23
m 22
1
m 0

2 的 7 次方

2 的 0 次方

指尾数 e

尾数m

2 的 1 次方

2 的-1 次方

的 次方

2 的-22 次方

2 -23

使用三个组成部分 Sem,以此形式表示的数值由以下公式定义: 数字 = 1.m 的2 (e - 偏差)次方

此处:

          • e:1 e 254
          • 偏差:偏差 = 127。这意味着不需为指数附加符号。
          • S:对于正数,S = 0;对于负数,S = 1。

浮点数的数值范围

使用上述的浮点格式,下列结果为:

          • 最小的浮点数 = 1.0 的2 (1-127)次方 = 1.0 的2 (-126)次方

= 1.175 495E-38

次方

          • 最大的浮点数 = 2-2 的(-23)次方 的2 (254-127)次方 = 2-2 的(-23)次方 的2 (+127)

数字=零3表.4示02为823E+38 ;

和 表示“无限大”。

e = m = 0

浮点数依据 格式

ANSI/IEEE 0 和

-1.175 495E-38

+1.175 495E-38 至+3.402 823E+38

e = 255

标准

m = 0

范围至 1)

下表给出了对于不在有效范围内的浮点数的指令结果状态字中符号位的状态。

CC1 CC0 OV OS
0 0 1 1
0 0 1 1
0 1 1 1
1 0 1 1
1 1 1 1

结果的无效范围

-1.175494E-38 < 指令结果 < -1.401298E-45 (负数)下溢

指令结果 < -3.402823E+38 (负数)上溢

指令结果 正数 下溢

指令结果

+1.401298E-45 < < +1.175494E-38 ( )

不是有效的> 浮3.4点0数28或23无E+效3指8 (令正数)上溢

(输入值超出有效的值范围)

使用数学运算时的注意事项:

果例继如续,计当算尝试之前求,-2 始的终平应方该根先时估,计将数获学得运结算果中“的不状是态有位效。的浮点数”。因此在基于结

修改变量时的注意事项:

值例。如然,而如,果不用是于每浮个点位运算模式的都值是存有储在效的存数储字器。双字中,可以用任何位模式修改这些

计算浮点数时的精度

!

当涉及心包含非常大和非常小数字的一长串数值的计算,可能会导致不精确的结果。

S数T。EP 7 中的浮点数精确到 6 位小数。因此当输入浮点常数时,最多只能指定 6 位小

注计算释的精度为 个小数位数意味着,例如加法 如果

6

number1 + number2 = number1

 

6

number1 + number2 = number1

number1 大于 number2  1的0 y 次方,y 6:

100 000 000 + 1 = 100 000 000。

浮点格式数字的实例

下图给出了下列十进制值的浮点格式:

          • 10.0

的平方根

          • Pi (3.141593)
  • 2 (1.414214)

下在:第一个实例中的数字 10.0 从其浮点格式得出(十六进制的表达式:4120 0000)如

e = 2 的 7 次方 + 2 的 1 次方 = 2 + 128 = 130

m = 2 的(-2)次方 = 0.25

STEP 7 V5.4 编程手册-163 STEP 7 V5.4 编程手册-164 STEP 7 V5.4 编程手册-165 STEP 7 V5.4 编程手册-166

这导致:

(1 + m) 的2 (e - 偏差)次方 = 1.25 的2 3 次方 = 10.0 [1.25 的2 (130-127)次方 = 1.25 的2 3 次方 = 10.0]

STEP 7 V5.4 编程手册-167 STEP 7 V5.4 编程手册-168

'HFLPDO YDOXH 10,0

+H[DGHFLPDO YDOXH

%LWV

6LJQ RI

0DQWLVVD: V (8 %LW)

([SRQHQW: H

(1 %LW)

H 27 + 21 130

0DQWLVVD: P (23 %LW)

I 2-2 0.25

1.IB2H-ELDV 1.25 B 23 10.0

'HFLPDO YDOXH 3,141593 >1.25 B 2(130-127) 1.25 B 23 10.0@

+H[DGHFLPDO YDOXH

%LWV

6LJQ RI

0DQWLVVD: V (8 %LW) (1 %LW)

([SRQHQW: H

0DQWLVVD: P (23 %LW)

'HFLPDO YDOXH 1,414214

+H[DGHFLPDO YDOXH

%LWV

6LJQ RI

0DQWLVVD: V (8 %LW) (1 %LW)

([SRQHQW: H

0DQWLVVD: P (23 %LW)

31 4 28 1

27

24 2

23

20 0

19

16 15 0 12 0

11

8 7 0 4 3 0 0
0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
31 4 28 27 0 24 23 4 20 19 9 16 15 0 12 11 ) 8 7 ' 4 3 & 0
0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 1 1 1 1 1 0 1 1 1 0 0
3

31 28

27 ) 24 23 % 20 19 5 16 15 0 12 11 4 8 7 ) 4 3 7 0
0 0 1 1 1 1 1 1 1 0 1 1 0 1 0 1 0 0 0 0 0 1 0 0 1 1 1 1 0 1 1 1

以二进制编码的十进制数字中的数据类型 WORD 和 DWORD 的格式

合形成4 字个位表示一个有符号的十进制数字的一位或十进制数字的符号。4 位一组的组

1 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1

一二组进制编码的十进制的(BCD)格式通过用一组二进制的数字(位)来表示十进制数字。

(16 位)或双字(32 位)。四个最高有效位指示数字的符号(1111 表示负的,

双00字00格表式示中正是的第)。具位有。BC下D表编给码出地了址两的种命类令型只求最高数位字的格(式字和格范式围中。是第 15 位,

31

)

BCD

字 格式 范围

(双16字位,带符号的三位 BCD 数字) -999 - +999
(32 位,带符号的七位BCD 数字) -9 999 999 - +9 999 999

下图给出了以下格式的二进制编码的十进制数字的实例:

          • 字格式

+310 ('HFLPDO IRUPDW)

%LWV 15

6LJQ

12 11

8 7

4 3

0

+XQGUHGV

7HQV

  • 双字格式

(102)

(101)

2QHV

(100)

0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0
-9 999 999 ('HFLPDO IRUPDW)

%LWV

31 28 27 24 23 20 19 16 15 12 11 8 7 4 3 0

6LJQ 0LOOLRQV +XQGUHGV RI 7HQV RI 7KRXVDQGV +XQGUHGV 7HQV 2QHV (106) 7KRXVDQGV 7KRXVDQGV (103) (102) (101) (100)

(105) (104)

数据类型 S5TIME 的格式(持续时间)

行当存使储用。S5下T图IM说E 明数了据时类间型值输为入持续,时时间间时基,准输为入条目的以时二间进地制址编的码内的容十。进制格式进

127

1s

15... ...8 7... ...0

STEP 7 V5.4 编程手册-169 STEP 7 V5.4 编程手册-170

[ [ 1 0 0 0 0 1 0 0 1 0 0 1 1 1

1 2 7

7LPH EDVH 7LPH YDOXH LQ %&' (0 WR 999)

1 VHFRQG

,UUHOHYDQW: 7KHVH ELWV DUH LJQRUHG ZKHQ WKH WLPHU LV VWDUWHG.

间当基使用准指S5的T是IM定E 时器,以输多入少时间隔值为的一范个围单为位0 来- 9递99减,时并间说值明,时一间直基到准达(参见的下时表间)间。时

隔。 0

S5TIME 的时间基准

时间基准 时间基准的二进制代码

10ms 00
100ms 01
1s 10
11

10 秒

可以使用下列语法格式之一预装载时间值:

  • L1) W#16#wxyz
  • 此处w = 时间基准 即时间间隔或分辨率)
  • 此处 xyz = 以二进制( 编码的十进制格式表示的时间值
  • 此处 a = 小时, 分钟,cc = 秒,dd = 毫秒
          • L1) S5T#aH_bbM_ccS_dddMS

- 时间基准自动选b择b,=该值四舍五入至具有此时间基准的下一个较小的数字。

可以输入的最大时间值是 9,990 秒或 2H_46M_30S。

1) = L 只能在STL 编程中指定

复杂数据类型

允复许杂下数列据复类型杂数定据义类大于型:32 位的数字数据群或包含其它数据类型的数据群。STEP 7

  • DATE_AND_TIME
  • STRING
  • ARRAY
  • STRUCT
  • UDT (用户自定义数据类型)
  • FB 和 SFB

构下表和中数描组。述了复杂数据类型。要么在逻辑块的变量说明中,要么在数据块中定义结

数据类型 描定述义具有 位 个字节 的区域。此数据类型以二进制编码的十进制的格式保存:

64 (8 )

DATE_AND_TIME DT
STRING 定字义节最长多。有这是25保4存个字符的个组字(符数和据类个型字C节HA的R标)。题为所字需符要串的保空留间的。标可准以区通域过是定2义5即6 个将存储在字符串中的字25符4数目来减少2字符串所需要的存储空间 例如:

string[9]'Siemens')。

(

ARRAY 定义一个数据类型(基本或复杂)的多维组群。例如:“ARRAY [1..2,1..3] OF INT”

2 x 3 的整数数组。使用下标(“[2,2]”)访问数组中存储的数据。最多可以定义

6 维数组。下标可以是任何整数(-32768 - 32767)。

STRUCT 定构义。一个数据类型任意组合的组群。例如,可以定义结构的数组或结构和数组的结
UDT 在入创。建在数据块或中在,变可量以声组明合中复声杂明的变和量基时本,的简数化据大类量型数以据创的建结用构户化的和“数用据户类自型定的输

义”数据ST类E型P 。7 具有自己的名称,因此可以多次使用。

UDT

确数定据分。配的实例数据块的结构,并允许在一个实例 DB 中传送数个 FB 调用的实例

FB、SFB

保存结构化的数据类型和字的限制是一致的。(WORD 对齐)。

数据类型 DATE_AND_TIME 的格式

二当进使制用编DA码T的E_十A进ND制_格TI式ME存数储据。类型(DT)输入日期和数时据间类时型,的输范入围条如目下以:8 个字节的

DT#1990-1-1-0:0:0.0 到 DATE_AND_TIME

下面的实例给出了日期和时间分D别T是#2089-1年2-31-月23:59:日59星.9期99四上午 和

秒的语法。下列两种格式是可行的: 1993

12 25

8:12

34,567

          • DATE_AND_TIME#1993-12-25-8:12:34.567
          • 如下D的T专#1用993-12-国25际-8电:12工:3委4.员56会7 标准功能在使用

数据类型时可

用: IEC ( )

DATE_AND_TIME

          • 转变日期和时间到DATE_AND_TIME 格式FC3:D_TOD_DT
          • 从 DATE_AND_TIME 格式提取日期FC6:DT_DATE
          • 从 DATE_AND_TIME 格式提取星期

FC7:DT_DAY

          • 从 DATE_AND_TIME 格式提取时间

包含日期

午下表给出F了C8:DT_TO和D时间信息的字节的内容,例子为

8:12 和 34,567 秒。

1993 年

12 月

25 日星期四上

字节

年目录

实例

月日

MSEC 的两个最高有效位

小分时钟

MSEC 的两个最低有效位星期

1 = 星期日

2 = 星期一

7 = 星期六

...

B#16#_5

7 (4LSB)

B#16#7

7 (4MSB)

B#16#56

6

B#16#34

5

B#16#12

4

B#16#08

3

B#16#25

2

B#16#12

1

B#16#93

0

数据类型 DATE_AND_TIME 的允许范围是:

  • 最小:DT#1990-1-1-0:0:0.0
  • 最大:DT#2089-12-31-23:59:59.999

年 可能的值范围 BCD 代码

1990 - 1999

2000 - 2089

90 - 99

00 - 89

1 - 12 01 - 12
1 - 31 01 - 31
00 - 23 00 - 23
00 - 59 00 - 59
00 - 59 00 - 59
000 - 999
- 1 - 7

日月

小时

分钟毫秒

星期 星期0日- 99星9期六

使用复杂数据类型

据可类以型通:过组合基本的和复杂的数据类型创建如下的复杂数据类型,用于创建新的数

          • 数组(数据类型 ARRAY):数组与相同类型的数据群组合形成单个单元。

类字型符串(数据类型 STRING):字符串定义具有最多 254 个字符的一维数组(数据

          • 结构(数据类型 STRUCT):结构与不同的数据类型组合形成单个单元。

参数和CH实A际R参)。数字。符串只能作为一个单元传送。字符串的长度必须匹配块的形式

          • 日、期小和时、间分(数钟据、类秒型、D毫AT秒E和_A星N期D_。TIME):日期和时间数据类型存储年、月、

FB、OB 或 FC 的变量声明中定义数组或结构。

者下在图给出了数组和结构如何在一个区域内结构化数据类型和保存信息。在 DB 中,或

,17
%<7(
&+$5
5($/
%22/
6WUXFWXUHV 6758&7 ,QWHJHU

%\WH &KDUDFW

5HDO QX

%RROHDQ

U

EHU

YDOXH

$UUD\V 1,1 ,QWHJHU
1,2 ,QWHJHU
1,3 ,QWHJHU
$55$< >1..2,1..3@
,17(*(5 2,1 ,QWHJHU
2,2 ,QWHJHU
2,3 ,QWHJHU

使用数组访问数据

数组

当数组定组义数合组一时组,相必同须的数做如据下类步型骤(基:本或复杂)以构成单元。可以创建包含数组的数组。

          • 给数组指定名称。
          • 用关键字 ARRAY 声明数组。
          • 数使用字。下将标指下标定输数入组的方大括号小中。,指每定数个维组数中之各间个用维逗(最号多隔为开6,维维)的数第中一的个第和一最个后数一字个和

最一个数字之间用两个点隔开。例如,下列下标定义一个三维数组:

实例:1

  • 指定[1包..5含,-2在..数3,3组0中..3的2]数据的类型。

中下的图数显示字。具例有如三,个第整二数个的数整数组的。下使用标是下标访问数组中。存储的数据。下标是在方括号

下标可以是任何整数 ,O包p括_te负m的p[值2]。下图中的数组也可以被定义为

ARRAY [-1..1]。然后(,-32第7一68个- 整32数76的7)下标可以是

,第二个可以是

Op_temp[0],而第三个整数可以是

Op_temp[1]

。Op_temp[-1]

$GGUHVV 1DPH 7\SH ,QLW. 9DOXH &RPPHQW
0.0 6758&7
+0.0 2SB7HPS $55$< >1..3@
*2.0 ,17
3.0 (1'B6758&7
1 2SB7HPS>1@
2SB7HPS $55$<>1..3@

,17(*(5

2 2SB7HPS>2@
3 2SB7HPS>3@

实例 2 数组也可以描述多维数据类型的组。下图给出两维整数数组。

Op_Temp = $55$< >1..2,1..3@

,17(*(5

1,1

1,2

1,3

2,1

2,2

2,3

是使用下标访问多维数组中的数据。在此例中,第一个整数是 Op_temp[1,1],第三个

Integer Integer Integer

Integer Integer Integer

Op_temp[1,3],第四个是 Op_temp[2,1],第六个是 Op_temp[2,3]。

数可组以:为数组定义最多 6 维(6 个下标)。例如,可以定义变量 Op_temp 如下作为六维

A在R此R数AY组中[1.的.3,第1.一.2,个1..元3,素1..的4,下1..标3,1是..4]

。最后元素的下标是

Op_temp[3,2,3,4,3,4]。

Op_temp[1,1,1,1,1,1]

创建数组

数当组在大DB小中后或跟在指变定量的声关明键中字声明数据时,,如可下以:定义数组。当声明数组时,在方括号中

[下限值

上限值

(ARRAY)

示在多格维数.. 组中,]也可以指定另声外明的。上限和下限值,并用逗号分开各个维数。下图显

式为 2 x 3 的数组创建的

$GGUHVV 1DPH 7\SH ,QLW. 9DOXH &RPPHQW
0.0 6758&7
+0.0 +HDWB2;3 $55$<>1..2,1..3@
*2.0 ,17
6.0 (1'B6758&7

输入数组的初始值

值当:创建数组时,可以将初始值赋给每个数组元素。STEP 7 提供两种方式输入初始

子指定重[1,1]。记住各个元素必须用逗号互相隔开。 指定元素的数目 重复因

    • 定输值入:单个值:对于数组的每个元素,指定有效的数组数据类型值。按元素顺序指

复因子:对于具有相同初始值的有序元素,可以 (

子,),而以及是这重些复元的素值的。初始值。输入重复因子的格式是 x(y),此处 x 是重复因

如果使用上图y 中声明的数组,可以如下为全部六个元素指定初始值: 、 、 、

17

23

-45

5前5两6、个3元34素2、的0特。定也值可,以然通后过设指置定余6下(1的0)四设个置元所素有为六个,元如素下的指初定始:值为、10。、可以指。定

访问数组中的数据

0 17

23 4(0)

通过数组中特定元素的下标访问数组中的数据。下标使用符号名。

数实组例的:第如二果在个元上素图中:声明的数组以 DB20 (电机)的第一个字节开始,用下列地址访问Motor.Heat_2x3[1,2].

将数组作为参数

数可组以将数组作为参数传送。如果在变量声明中参数被声明为 ARRAY,必须传送整个

数组的(而元不素是就单可个以元分素配)。给然一而个,参当数调。用块时,倘若数组的元素符合参数的数据类型,

两如果个使数用组数形组式作参为数参和数实,际数参组数不必需须要具具有有相相同同的的结名构称。(它例们如甚,至只不有需当要块名的称形)参。定然义而为,

格式 ( 的整数数组,并且调)用操作提供的实际参数为 的整数数组时,格式

2 x 3 2的x整3数数组才能作为参数传送。

2 x 3

使用结构访问数据

结构

可结以构归组类合数了据各以种适数据合过类程型控(基制本。和因复此杂,数也据可类以型将,参包数括作数为组数和据结单构元),传形送成,一而个不单是元作。

为单个元素传送。下图说明包含整数、字节、字符、浮点数和布尔值的结构。

6758&7

,17
%<7(
&+$5
5($/
%22/

,QWHJHU

%\WH &KDUDFWHU

5HDO QXPEHU

%RROHDQ YDOXH

结构最多可以嵌套 8 层(例如,结构由包含数组的结构组成)。

创建结构 当在

中或在逻辑块的变量声明中声明数据时,就定义了结构。

保下存图说DB明了结构的声明(Stack_1),包含下列元素:整数(用作保存总数)、字节(用于

用于终止信号 。

原始数据)、字符(用于保存控制代码)、浮点数(用于保存温度)和布尔型存储位

( )

$GGUHVV 1DPH 7\SH ,QLW. YDOXH &RPPHQW
0.0 6WDFNB1 6758&7
+0.0 $PRXQW ,17 100
+2.0 2ULJLQDOBGDWD %<7(
+4.0 &RQWUROBFRGH &+$5
+6.0 7HPSHUDWXUH 5($/ 120
+8.0 (QG %22/ )$/6(
10.0 (1'B6758&7

为结构赋初始值

例如如果可想以要将赋值初始下列值初赋始给值结构给的上每图个中元声素明,的则结要构指:定有效数据类型的值和元素名称。

(

)

Amount = 100
Original_data = B#(0)
Control_code = 'C'
Temperature = 120
End = False

在结构中保存和访问数据

然用而户,能也够可访以问指结定构元的素各所个位元于素的。可绝对以地使用址符实号例地:址如(果例如,Stack_1.Temperature)节。

0 开始,amount 的绝对地址是

DB20.DBD6)

( , 而

Stack_1的地址D是B20

使用结构作为参数

DB20.DBW0

temperature

具可有以将相同结组构件作的为参结构数。传然送而。,如果当参调用数块在变时,量倘声若明结中被构的声明元素为符ST合R参UC数T的,数则据必类须型传,送件如。果换使用句话结说构,作为相同参的数数,据两类个型结必构(须对以于相形同式的参顺数序和排实列际。参数的)必须具有相同的组

结构的元素就可以分配给一个参数。

使用用户自定义数据类型访问数据

用户自定义数据类型

并用多户自次使定用义它数们据。类下型(图U说DT明)可包以含组整合数基、本字和节复、杂字数符据、类浮型点。数可和以布指尔定值名的称用给户U自D定T义,

数据类型的结构。

8'720

,17
%<7(
&+$5
5($/
%22/

,QWHJHU

%\WH &KDUDFWHU

5HDO QXPEHU

%RROHDQ YDOXH

代替逐一地输入所有数据类型或作为结构,只需要指定“UDT20”作为数据类型,

自动地分配相应的内存空间。

STEP 7

创建用户自定义数据类型

数使用 STEP 7 定义UDT。下图中给出的 UDT 包括如下的元素:整数(用作保存总

布尔)、型字存节储(用位于用保于存终原止始信数号据)。、可字以符在(用符于号保表存中控指制定代一码个)、符浮号点名数称(给用于保存例温如度)和

(

)

UDT (

process data)

$GGUHVV 1DPH 7\SH ,QLW. YDOXH &RPPHQW
0.0 6WDFNB1 6758&7
+0.0 $PRXQW ,17 100
+2.0 2ULJLQDOBGDWD %<7(
+4.0 &RQWUROBFRGH &+$5
+6.0 7HPSHUDWXUH 5($/ 120
+8.0 (QG %22/ )$/6(
10.0 (1'B6758&7

变一量旦说已明创中建 U为D变T,量可声以明象了数据类型那样使用。UDT。例如,如果在 DB 中(或在 FB 的

下图给出了具)

有变量

UDT200 据类型

process_data_1

的 。只指定

 

UDT200

DB

 

process_data_1

UDT200

DB

UDT200 process_data_1。当编译 DB 时,以斜体字显示被创建的数组。

$GGUHVV 1DPH 7\SH ,QLW. 9DOXH &RPPHQW
0.0 6758&7
+10.0 3URFHVVBGDWDB1 8'7200
10.0 (1'B6758&7

为用户自定义数据类型分配初始值

和如果元素希望的名将称初。始例值如赋可给以用户赋值自下定列义初数始据值类型给的上每图个中元声素明,的要用指户定自有定效义数数据据类类型型的:值

(

)

E如n果d 声明变量为 ,变量的初始值是当创建

= False

Amount

Original_data Control_code

=

=

=

100

B#16#0) 'C'

Temperature = 1.200000e+002

UDT

UDT

时指定的值。

在用户自定义数据类型中保存和访问数据

而用,户也访问可以UD指T定的元各素个位元于素的。绝可对以地使址用实符例号:地如址果(例如,Stack_1.Temperature节)。然开

始,amount 的绝对地址是

( ,而

Stack_1 的地址D是B20 0 。

使用用户自定义数据类型作为参数

必可须以将传数送具据有类相型同UD结T构的的变量作。为然参而数,传当送调。用如块果时参,数倘在若变量说明的中元被素声符明合为该U参D数T的,

DB20.DBW0

temperature

DB20.DBD6)

数据类型,UDT 的元素可U以D分T配给一个参数。

UDT

具有分配的 UDT 的 DB 优点

使通用过这使些用数一据次块创为建特的定UD的T任,务可输以入生不成同具的有实相际同值数。据结构的大量数据块。然后就可以同例数如量,的如数果个为公式构造一个 UDT (如为混和颜色),可以将此 UDT 分配给每个包含不

STEP 7 V5.4 编程手册-171

8VHU GHILQHG GDWD W\SH

(

数据块的结构由分配给它的 UDT 确定。

"

'%22 "/,*+7B%/8

'%17 "'$5.B%/8("

DB。

8'71 ")RUPXOD"
'%23 "785482,6("

参数类型

识别下列参数类型:

除了基本和复杂数据类型外,也可以为块之间传送的形式参数定义参数类型。

STEP 7

T”或“C”。

  • T果IM赋E值R给或 COUNTER:指定当执行块时将使用的特定定时器或特定计数器。如

或计数器,TI换ME句R话或说C,O在U正NT整E数R 参之数后类输型入的“形参,相应的实际参数必须是定时器

  • 块:指定用作输入或输出的特定块。参数的声明确定使用的块类型(FB、FC、

例DB:等“)。如果提赋给 BLOCK 参数类型的形参,指定块地址作为实际参数。实

FC101”(当使用绝对寻址时)或“Valve”(使用符号寻址)。

  • P数O类IN型T的ER形:式参参考数变,量指的定地地址址。作指为针实包际含参地数址。而在不是值。当赋值给 POINTER 参

简单地以地址指定指针

STEP 7 中,可以用指针格式或

的实例:

(例如,M 50.0)。寻址以 M 50.0 开始的数据的指针格式

  • A个N。Y关:于当P实#际M参50数.0的数据类型未知或当可以使用任何数据类型时,可以使用这参章数节类“型使也用可用以户在自用定户义自数定据义类数型据以类访型问数(U据DT”)中。使用。关于 UDT 的更多信息,参见

参数

容量

2 个字节 指示程序在调用的逻辑块中使用的计数器。

2 个字节 指示程序在调用的逻辑块中使用的定时器。

描述

T1

2 个字节 指示程序在调用的逻辑块中使用的块。

C10

6 个字节 识别地址。

FC101

DB42

10 个字节 在当前参数的数据类型未知时使用。

P#M50.0

P#M50.0 BYTE 10 数据类型的ANY 格式

P#M100.0 WORD 5

ANY 格式

L#1COUNTER 10

用于参数类型的

参数类型

ANY

POINTER

BLOCK_FB BLOCK_FC BLOCK_DB BLOCK_SDB

COUNTER

TIMER

ANY”。

用参数类型ANY 参数类型的更多信息,参见章节“参数类型 ANY 的格式”和“使

参数类型 BLOCK、COUNTER、TIMER 的格式

S中T。EP下7图将给参出数这类些型参B数L类OC型K的、格C式OU。NTER 和 TIMER 以二进制数字存储在字(32 位)

%LWV 15 8 7 0

0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1

%\WH 0 %\WH 1

器块、硬定件时和器安和装计数手册器”允或许“的数目取决、于 S7 CP可U编的程类控型制。器在、“硬S7件-3和00安可装编手程册控”制中的

S7-400 M7-400

目CP的U更数多据信表息中。,可以找到关于定时器和计数器的允许编号和关于最大可用的块的数

参数类型 POINTER 的格式

下图给出了存储在每个字节中的数据类型。

%\WH 0

%\WH 2

%\WH 4

3RLQWHU-)RUPDW

15... ...8 7... ...0

'% QXPEHU (RU 0)
0HPRU\ DUHD 0 0 0 0 0 E E E
E E E E E E E E E E E E E [ [ [

%\WH 1

%\WH 3

%\WH 5

 

E %\WH DGGUHVV [ %LW DGGUHVV

参数类型 POINTER 存储下列信息:

          • DB 编号(或 0,如果数据没有存储在 DB 中)
          • CPU 中的存储区域(下表给出了参数类型 POINTER 存储器区的十六进制代码)

十六进制代码

存储器区

输描入述区域

输位出存区储域区域

数实据例块数据块

本先地前的本据地数(L 据堆栈)

V

b#16#87

L

b#16#86

DI

b#16#85

DB

b#16#84

M

b#16#83

Q

b#16#82

I

b#16#81

          • 数据的地址(格式为字节.位)

重S声T明EP为7参提数供类指型针格式:p#,me只m需or要y_指ar出ea存b储yte区.b域it_和ad地dr址es。s. (如果形将式自参动数地被

类型定输入指针的格PO式IN。TE下R面的实例说明如何为以

POINTER:

开始ST的E数P 据7 输入参数

) M50.0

  • P#M50.0
          • M50.0 (如果形式参数声明为 POINTER)。

使用参数类型 POINTER

地指址针。用于指向地址。这种寻址方式的优点是可以在程序处理期间动态地修改语句的

存储器间接寻址的指针

括使号用内存给储出器间。接寻址的程序语句由指令、地址标识符和偏移量组成(偏移量必须在方

双字格式指针) 的实例:

装传载送指针的到值到累。加器 1。

询问输入位 MD2的信号状态,并

将信号状态分I 8配.7给输出位

Q 8.7

Q [MD2]

=

I [MD2]

A

MD2

T

P#8.7

L

区域内部和区域交叉寻址的指针

符使用、偏这移些量寻。址方式的程序语句包含指令和下列部分:地址标识符、地址寄存器标识

地址寄存器(AR1/2)和偏移量必须在方括号内一起指定。

区域内部寻址的实例

指针不包含存储器区的指示:

装载指针的值到累加器 1。

将指针从累加器 1 装载到AR1。

L P#8.7
LAR1
A I [AR1, P#0.0]
= Q [AR1, P#1.1]

询问输入位I 8.7 的信号状态,并

将信号状态分配给输出位 。

Q 10.0

偏而移不量是 0.0 没有影响。输出 10.0 由 8.7 (AR1)加上偏移量 1.1 计算出来。结果是 10.0

9.8,参见指针格式。

区域交叉寻址的实例

在区域交叉寻址中,存储区域在指针中指出(在实例 I 和 Q 中)。

将装指载针存的储值器和区区和域地标址识装载到到累加器中。1 中。

将指针的值和区I 域标识8装.7载到A累R加1 器 中。

装载存储器区 和地址 到

询问输入位

将信号状态分I 8配.7给输出位 。

Q 10.0

Q 的信号状8.7态,A并R2 中。

1

[AR2, P#1.1]

=

[AR1, P#0.0]

A

LAR2

P# Q8.7

L

LAR1

P# I8.7

L

偏而移不量是 0.0 没有影响。输出 10.0 由 8.7 (AR2)加上偏移量 1.1 计算出来。结果是 10.0

9.8,参见指针格式。

改变指针的块

使变用的采指样针块传送FC到3变“量路“由指针” 能够改变指针的位或字节地址。当调用 FC 时,要改

使用参数“

(可以使用以双字格式的区域内部和区域交叉指针)。

量“ Bit_Byte”可以改变指针的位或字节地址(0:位地址,1:字节地址)。变

少地址Inc。_Value”(整数格式)指定增加或减少地址内容的数字。也可以指定负数以减改变位地址,字节地址也有所改变(当减少时也是),例如:

          • P#M 5.3, Bit_Byte = 0, Inc_Value = 6 => P#M 6.1 或
          • 指针P的#区M 域5.3信, 息Bit不_B受yt此e 功= 0能, 影Inc响_V。alue = -6 => P#M 4.5。

)设置为“1”(直到下一个 FC3 的更正处理)。此处是个例子:

的FC错截误取处指理针的上溢/下溢。在此情况下,指针不改变,输出变量“RET_VAL”(可能

          • 1. 位地址已选择,Inc_Value >7,或<-7
          • 2. 位或字节地址已选择,改变可能导致“负的”字节地址
          • 3. 位或字节地址已选择,改变可能导致非法的大的字节地址。

改变指针的 STL 中采样块

TITLE =路由指针

FUNCTION FC 3 BOOL

//FC3 可以用于改变指针。

AUTHOR:AUT1CS1

FAMILY:INDADDR NAME ADDRPOINT VERSION : 0.0

:位地址,

VAR_INPUT

Bit_Byte : BOOL ; //0

:字节地址

Inc_Value : INT ; //增加 如果值负 减少 如果值正 增加

1

=> / => )

END_VAR

VAR_IN_OUT

指针:

DWORD ; //

(

要改变的指针

END_VAR

Inc_Value1 : INT ; //中间值增加

VAR_TEMP

Pointer1 : DWORD ; //中间值指针Int_Value : DWORD ; //

辅助变量

END_VAR

BEGIN NETWORK

TITLE =

//块截取改变指针区域信息的改变 或自动地导致“负的”指针的改变。

设置

//

R #RET_VAL; //复位上

SET ; // 1

RLO

L #Pointer; //提供临时

T #Pointer1; //中间值指针

L #Inc_Value; //提供临时值

T #Inc_Value1; //中间值增加

A #Bit_Byte; //If =1,字节地址指令L 7; //如果增加值> 7,

JC Byte; //跳转到字节地址计算

L #Inc_Value1;

S #RET_VAL; //然后设置 RET_VAL L -7; //如果增加值 < -7,

<I ;

JC End; //跳转到 End

JC End; //跳转到 End

<I ;

S #RET_VAL; //然后设置 RET_VAL

A L 1.3; //如果该值的位 4 = 1

为负

//(Inc_Value )

JC neg; //然后跳转到位地址减少L #Inc_Value1; //加上增加量

JU test; //跳转到负的结果测试

L #Pointer1; //装载指针地址信息

+D ;

neg: L #Pointer1; //装载指针地址信息NEGI ; //取反负值,

-D ; //减去该值

L #Inc_Value1; //装载增加量

JU test; //并跳转到测试

Byte: L 0; //开始字节地址的改变

L #Inc_Value1; //如果增加量 >=0,那么

JC pos; //跳转到增加,否则

<I ;

L #Pointer1; //装载指针地址信息, L #Inc_Value1; //

NEGI ; //取反负值,

装载增加量,

SLD 3; //向左移位增加量 3, JU test; //并跳转到测试

-D ; //减去该值,

pos: SLD 3; //向左移位增加量 3

L #Pointer1; //装载指针地址信息

+D ; //加上增加量

test: T #Int_Value; //传送计算的结果到A L 7.3; //如果无/效/的In字t_节V地al址ue 太长或

,然后设置

JC End; //并跳转到结束,

S #RET_VAL; //负的

(

RET_VAL

)

L #Int_Value; //否则传送结果T #Pointer; //

到指针

End: NOP 0; END_FUNCTION

参数类型 ANY 的格式

所ST有EP 7 以 10 个字节存储参数类型 ANY。当构造类型为 ANY 的参数时,必须确保

指定 10 个编字号节,都也被必占须用以,字因节为调明用确块地估指计定参存数储整器个区内。容的值。例如,如果以字节 4

STEP 7 管理基本和复杂数据类型的数据与参数类型的数据不同。

DB 6

数据类型的对AN于Y 格式

基本和复杂数据类型,STEP 7 存储下列数据:

          • 数据类型
          • 重复因子
          • DB 编号
          • 信息存储的存储区域
          • 数据的起始地址

'DWD IURP HOHPHQWDU\ DQG FRPSOH[ GDWD W\SHV

15... ...8 7... ...0

10K IRU 67 'DWD W\SH
5HSHWLWLRQ IDFWRU
'% QXPEHU (RU 0)
0HPRU\ DUHD 0 0 0 0 0 E E E
E E E E E E E E E E E E E [ [ [

%\WH 0

%\WH 2

%\WH 4

%\WH 6

%\WH 8

%\WH 1

%\WH 3

%\WH 5

%\WH 7

%\WH 9

 

E %\WH DGGUHVV [ %LW DGGUHVV

区重,复也因可子以识和别参由数参类数型类型 ANY 传送的指示数据类型的数量。这意味着可以指定数据

值据类型的编号 借助重复A因N数Y 结。合例使如用,数如组果和要结传构送。ST个E字P ,7 将必数须组为和重结复构因识子别输为入数

10,并且必(须为数据类型)输入数值

10

地址以格式 存储,此处字节寻0址4 存储在字节 的位 ,节字 的位

7,节字 的位 3 - 7。位地址存储在字节 9 的位 0 - 2。

对于类型9

Byte.Bit

的空指针,所有来自字节

NIL

7

的字节设置为

1

0 - 2

0

8 0 -

下表给出参数类型 ANY 的数据类型或存储区域的编码。

数据类十型六的进编制码代码

数据类型

空指针

位字 节 位

描述

整数(1位6 位

(8 位

(8 )

(16 位

)

)

双整(32数 ) 位

浮点数

(32 位

(32 )

)

时间

数据类型 S5TIME

字符串

时间(64 位)

STRING

b#16#13

DATE_AND_TIME (DT)

b#16#0E

S5TIME

b#16#0C

TIME

b#16#0B

TIME_OF_DAY (TOD)

b#16#0A

DATE

b#16#09

REAL

b#16#08

DINT

b#16#07

DWORD

B#16#06

INT

b#16#05

WORD

b#16#04

CHAR

b#16#03

BYTE

b#16#02

BOOL

b#16#01

NIL

b#16#00

存储器十区六的进编制码代码

区域

输入区域

输位出存区储域区域

描述

数实据例块数据块

本先地前的本据地数(L 据堆栈)

V

b#16#87

L

b#16#86

DI

b#16#85

DB

b#16#84

M

b#16#83

Q

b#16#82

I

b#16#81

参数类型的 ANY 格式

7 始终是 0。字节 8 和 9 指示定时器、计数器或块的编号。

对和于参数类型,STEP 7 存储数据类型和参数的地址。重复因子始终是 1。字节 4、5

'DWD IURP SDUDPHWHU W\SHV (WLPHUV, FRXQWHUV, EORFNV) 15... ...8 7...

...0

%\WH 0 %\WH 1

%\WH 2 %\WH 3

%\WH 4 %\WH 5

%\WH 6 %\WH 7

%\WH 8 %\WH 9

下表为参数类型显示参数类型 ANY 的数据类型编码。

10K IRU 67 'DWD W\SH
5HSHWLWLRQ IDFWRU 1
'% QXPEHU (RU 0)
'DWD W\SH 0 0 0 0 0 0 0 0
1XPEHU RI WLPHU, FRXQWHU, RU EORFN

十六进制代码

数据类型

描述

FB 编号

计SD数B器编编号号

DB 编号

FC 编号

定时器编号

TIMER

b#16#1D

COUNTER

b#16#1C

BLOCK_SDB

b#16#1A

BLOCK_DB

b#16#19

BLOCK_FC

b#16#18

BLOCK_FB

b#16#17

使用参数类型 ANY

改可变以时为适合于任何数据类型的实际参数的块定义形式参数。当调用块是未知或可以

何在块的(变和量当声允明许中任,何可数以据声类明型参时数),为已数提据供类了型实际参。数然的后数可据以类在型时,这尤中其分有配用任。

数据类型的实际参数。

ANY

STEP 7

式ST参EP数7,为 ANY 数据类型的变量分配存储器的 80 个位。 如果分配实际参数给此形

STEP 7 在 80 个位中编码起始地址、数据类型和实际参数的长度。调用块ANY 80

参数分析保存数据的 个位,并获取进一步处理所需的信息。

分配实际参数给 ANY 参数

中,可以指定下列数据类型为实际参数:

如果为参数声明数据类型 ANY,可以分配任何数据类型的实际参数给形式参数。在

STEP 7

          • 基本数据类型:指定实际参数的绝对地址或符号名称。
          • 复杂数据类型:指定复杂数据类型的数据符号名称(例如,数组和结构)。
          • 定时器、计数器和块:指定编号(例如,T1、C20 或 FB6)。
          • 下图说明数据如何传送到具有 ANY 数据类型参数的 FC。

&$// )&100

LQBSDU1 : #6SHHG LQBSDU2 : 0:100

LQBSDU3 : '%10.'%'40

5($/

#7KHUPR

0 1.3

7 2

)&100

LQBSDU1

LQBSDU2 LQBSDU3

$1<

LQBSDU3

,1

$1<

LQBSDU2

,1

$1<

LQBSDU1

,1

9DULDEOH GHFODUDWLRQ

)&100

,17

6SHHG

67$7

9DULDEOH GHFODUDWLRQ

ZLWK '%10

)%10

)%11 PLW '%20
9DULDEOH GHFODUDWLRQ
7(03 7KHUPR $55$< >1..3@

据在类此型实。例中,FC100 具有三个参数(in_par1in_par2 in_par3),声明为 ANY 数

和一个双字到 。

          • 当 FB10 调用 FC100 时,FB10 传送一个整数(静态变量 speed)、一个字(MW100) DB10 (DB10.DBD40)

(M 1.3)和一个定时器(T2)。

          • 布当尔FB值11 调用 FC100 时,FB11 传送一个实数数组(临时变量“Thermo”)、一个

为 ANY 参数指定数据区

望不指仅定可数以据分区配为各实个际地参址数(例,如使,用M下W列10常0)数给格A式NY指参定数要,传而送且的可数以据指总定量数:据区。如果希

数据类型元素,可以为常数指定所有基本数据类型和数据类型

对p#于 区域标识符 Byte.Bit 数据类型 重复因数

ANY 参数的格式的实例。

表DA为T指E_定AN要D传_T送IM的E存的储格区式域。给如果数据类型不是 BOOL,必须指定位地址 0 (x.0)。下

实际参数 描述

p# M 50.0 BYTE 10 MB50 到 MB59。
p# DB10.DBX5.0 S5TIME 3 DB 字节 5 到DB 字节 10。
p# Q 10.0 BOOL 4 Q 10.0 到Q 10.3.

指定字节存储区域中的 10 个字节:

指定数据类型S5TIME 的数据的 3 个单元,它们位于 DB10: 在输出区指定 4 个位

使用参数类型 ANY 的实例

节下的列存实储例区给域出。了如何使用参数类型 ANY 和系统功能 SFC20 BLKMOV 复制 10 个字

STL

FUNCTION FC10: VOID VAR_TEMP

解释

Source : ANY;

Target : ANY;

END_VAR BEGIN

LAR1 P#Source;

L

T

B#16#10;

LB[AR1,P#0.0];

装在载AR语1法中标装识载符A并NY将指它针的起始地址。

装传载送数给据AN类Y型指字针节。并

将它传送到 ANY 指针。

L B#16#02;

T LB[AR1,P#1.0];

传送到ANY 指针。

装载 10 个字节并将它们

L

T

10;

LW[AR1,P#2.0];

源是DB22, DBB11

L 22;

T LW[AR1,P#4.0];

装在载AR语1法中标装识载符A并NY将指它针的起始地址。

L P#DBX11.0;

T LD[AR1,P#6.0];

LAR1 P#Target;

传 到 ANY 指针。

L

T

B#16#10;

LB[AR1,P#0.0];

目标是 DB33、

装将装载它载数传据送个类到型字节指并针。

传送给ANY 指针。

10 字节并将它们

ANY

DBB202

L B#16#02;

T LB[AR1,P#1.0];

调用系统功能

MW12 的值

L 10;

T LW[AR1,P#2.0];

L 33;

T LW[AR1,P#4.0]; L P#DBX202.0;

T LD[AR1,P#6.0];

CALL SFC 20 (

SRCBLK := Source, RET_VAL := MW 12,

DSTBLK := Target

);

END_FUNCTION

分配数据类型给逻辑块的本地数据

)受限制。

型对和于参ST数E类P 型7,在变量声明中,分配给块的本地数据的数据类型(基本和复杂数据类

OB 的本地数据的有效数据类型

入下、表输说出明或了为输入OB 声明本地数据的限定(-) 。因为不能调用 OB,OB 不能有参数(输

临时变量的数据类/输型出可)。以因是为基O本B或没复有杂实数例据D类B型,以不及能数为据O类B 型声明任何。静态变量。OB

有效的分配由 符号显示。

声明类型

输入

参数类型 参数类型 参数类型 参数类型 参数类型

输静态入

临时

/输出

TIM—ER

COU—NTER

BL—OCK

POIN—TER

A—NY

位于 OB 的L 堆栈。

.(1)

(1)

.(1)

.(1)

复杂数型据类

基本数型据类

ANY

FB 的本地数据的有效数据类型

制下表较少说明。当了为声明FB输声入明参本数地时数,据没的有限什定么(限-)。制至;于对实于例输D出B参,数在,声不明能F声B明本任地何数参据数时类限

有AN效Y 数据类型。其它所有参数类型是非法的。

型,对于输入 输出参数仅允许参数类型 和 。可以声明临时变量为

/ POINTER ANY

的分配由·符号显示。

声明类型

输入

基型本数据类 复型杂数据类 参数类型 参数类型 参数类型 参数类型 参数类型

输出

输静入态/输出

 

FC 的本地数据的有效数据类型

量下。表对说于明了为 FC 声明本地数据的限定(-) 。因为 FC 没有实例 DB,也没有静态变

也可以声明FC 的输参入数、类输型出的和临输时入变/输量出。参数,只允许参数类型 POINTER 和 ANY。有效的分配由ANY符号显示。

声明类型

输入

基型本数据类 复型杂数据类 参数类型 参数类型 参数类型 参数类型 参数类型

TIMER

COUNTER

BLOCK

POINTER

ANY

输入

临时

/输出

.(2)

.(2)

.(1)

.(1)

1

位于FC 的L 堆栈。

.(1)

2

STRING 只能以默认长度定义。

在传送参数时允许的数据类型

在块之间传送参数的规则

当不分同配参实数际的参有数效给分形配式。参例数如时,,输可出以和指输定入绝对地址、符号名称或常数。STEP 7 限制

入 /输出参数不能被分配常数值(因为输出或输

些参/输数出既参不数能的分目配的绝是对改地变址其也值不)。能这分些配限常定数尤。其适用于具有复杂数据类型的参数,这下表说明涉及分配给形式参数的实际参数数据类型的限制(-)。

有效的分配由·符号显示。

声明类型

输入/输出

基符本号数名据称类型

临时本地符号

常数

输出

(在符号表中)

—.

绝地对址

声明类型

/

绝地对址

复杂数据类型

DB 元素的符号名称

临时本地符号

输入出 输出

(在符号表中)

常数

通过功能进行功能调用的有效数据类型

FC12 的形式参数。

参可数以作将为调实用际FC参的数形分式配参给数分配给被调用 FC 的形式参数。下图说明了 FC10 的形式

)XQFWLRQ ()&) &DOO )XQFWLRQ ()&)

STEP 7 V5.4 编程手册-172

)&10

9DULDEOH GHFODUDWLRQ

)&12

9DULDEOH GHFODUDWLRQ

3DUDPB1

3DUDPB2

3DUDPB3

&DOO )&12

,QSXW 2XWSXW

,Q/RXW

$B3DUDP

%B3DUDP &B3DUDP

,QSXW 2XWSXW

,Q/RXW

$B3DUDP : 3DUDPB1

%B3DUDP : 3DUDPB2 &B3DUDP : 3DUDPB3

S将T具EP有7复限杂制数将据F类C型形的式参参数数或作参为数实类际型参分数配分为配实给际不参同数F。C 的形式参数。例如,不能下表给出了当一个 FC 调用另一个FC 时允许的数据类型(·)。

声明类型

参数类型 参数类型 参数类型 参数类型 参数类型

输入 → 输入/输出

输出 → 输出

输出 → 输入

输入 → 输入 输出

输输入入 → 输输入出

—. ——

TIMER

——

COUNTER BLOCK

——

——

POINTER

——

ANY

——

输入/输出 → 输入

/输出 → 输入/

/输出 → 输出

复类杂型数据

基型本数据类

通过功能块调用功能的有效数据类型

FC12 的形式参数。

式可参以数将作调为用实FB际的参形数式分参配数给分配给被调用 FC 的形式参数。下图说明了将FB10 的形

)XQFWLRQ %ORFN ()&) &DOO )XQFWLRQ ()&)

STEP 7 V5.4 编程手册-173

)%10

ZLWK '%10

)&12

9DULDEOH GHFODUDWLRQ 9DULDEOH GHFODUDWLRQ

3DUDPB1

3DUDPB2

3DUDPB3

&DOO )&12

,QSXW 2XWSXW

,Q/RXW

$B3DUDP

%B3DUDP &B3DUDP

,QSXW 2XWSXW

,Q/RXW

$B3DUDP : 3DUDPB1

%B3DUDP : 3DUDPB2 &B3DUDP : 3DUDPB3

S参T数EP作7为限实制际将参F数B。的下形表式给参出数了分配给 FC 的形式参数。例如,不能分配参数类型的

声明类型

输输入入 → 输入

基型本数据类 复杂类数型据 参数类型

TIMER

输出 → 输出

输出 → 输入

输入 → 输出

输出 → 输入/输出

/输出

输入

输入 → 输入/输出

输入/输出 → 输入

/输出 → 输出

/输出 → 输入

FB 调用FC 时允许的数据类型(·)。

参数类型 参数类型 参数类型 参数类型
COU—NTER BL—OCK POI—NTER A—NY

通过功能调用功能块的有效数据类型

FB12 的形式参数。

参可数以作将为调实用际FC参的数形分式配参给数分配给被调用 FB 的形式参数。下图说明了 FC10 的形式

)XQFWLRQ ()&) &DOO )XQFWLRQ %ORFN ()&)

STEP 7 V5.4 编程手册-174

)&10

)%12

ZLWK '%11

9DULDEOH GHFODUDWLRQ 9DULDEOH GHFODUDWLRQ

3DUDPB1

3DUDPB2

3DUDPB3

&DOO )%12,'%11

,QSXW 2XWSXW

,Q/RXW

$B3DUDP

%B3DUDP &B3DUDP

,QSXW 2XWSXW

,Q/RXW

$B3DUDP : 3DUDPB1

%B3DUDP : 3DUDPB2 &B3DUDP : 3DUDPB3

BLOCK 的输入参数给被调用 FB 的输入参数。下表给出了 FC 调用 FB 时允许的数据类型(·)。

声明类型

输输入入 → 输入

基型本数据类 复杂类数型据 参数类型 参数类型 参数类型 参数类型 参数类型

TIMER

COUNTER

BLOCK

POINTER

  • . —

ANY

输入 → 输入/输出

输出 → 输出

输出 → 输入

输入 → 输出

输出 → 输入/输出

/输出

输入

输入/输出 → 输入

/输出 → 输入

/输出 → 输出

TIMER、COUNTER 或

S据T类EP型7的限参制数将作F为C实的际形参式数参。数然分而配,给可F以B分的配形参式数参类数型。例如,不能分配具有复杂数

通过功能块调用功能块的有效数据类型

FB12 的形式参数。

参可数以作将为调实用际FB参的数形分式配参给数分配给被调用 FB 的形式参数。下图说明了 FB10 的形式

Function Block (FC) Call Function Block (FC)

STEP 7 V5.4 编程手册-175

FB10

FB12

with DB10

with DB11

Variable declaration Variable declaration

Param_1 Param_2 Param_3

Call FB12,DB11

A_Param := Param_1

B_Param := Param_2 C_Param := Param_3

Input Output In/out

A_Param B_Param C_Param

Input Output In/out

参可数以。分配参数类型

、 或 的输入参数给被调用 的输入

S杂T数EP据7类限型制的分输配入F和B输的出形参式数参作数为给被另调一用个 FB 的形式参数。例如,不能分配具有复

FB 的输入和输出参数的实际参数。然而, TIMER COUNTER BLOCK FB

下表给出了 FB 调用另一个FB 时允许的数据类型(·)。

声明类型

参数类型 参数类型 参数类型 参数类型 参数类型

输输入入 → 输入

POINTER

输入 → 输入/输出

输出 → 输出

输出 → 输入

输出 → 输入/输出

ANY

输入 → 输出

/输出

输入

输入/输出 → 输入

/输出 → 输入

/输出 → 输出

BLOCK

COUNTER

TIMER

复杂类数型据

基型本数据类

传送到功能块的 IN_OUT 参数

)。

用当调复用杂数据类型传送给功能块(FB)的 IN_OUT 参数时,同时也传送变量的地址(由引制当到基实本例数数据据类块型中传,送在给功能块结的束IN后_O从U实T例参数据时块,中在将功值能复块制开出始来执。行之前,将值复

这意味着基本数据类型的 IN_OUT 变量可以用值初始化。

写然入而常,数不。可能在 IN_OUT 变量的位置指定常数作为在调用中的实际参数,因为不能于数实据例类型数据ST块R中UC。T 或 ARRAY 的变量无法初始化,因为在此情况下仅有一个地址位

使用旧项目

转换版本 1 的项目

版本2 项目。

本可以重复使用通过 STEP 7 版本 1 创建的项目。为此,必须将版本 1 项目转换为版1 项目的下列组件保持不变:

        • 程序的项目结构
        • STL 源文件
        • 符号表

硬个件站配到置新不项转目换,。并可且以为将它项组目态和中包分含配的参程数序。组件复制到其它项目中。也可以增加一

版本项目。

一旦转换到版本 2,就可以在对话框中决定,现在是否希望将版本 2 项目转换为当前STEP 7

注就释属性而言,单个块保持为版本

能结合多重实例一起使用。

如程果序希,望从在所所转转换换的的块块生中成声明多重实例,请先使用“LAD/STL/FBD:程序块”应用

1 块。在版本

1 中生成的代码不会改变,因此块不

编本程多重实例是

STL 源文件,然后将它们编译回块中。

STEP 7 版本 2 的新特性,可用于创建功能块(FB)。如果希望在版

2 项目中以相同的方法继续使用以版本 1 创建的功能块,则不需要转换它们。

步骤 要转换版本 项目,步骤如下:

  1. 选择菜单1命令文件 打开版本 项目。
  2. 在出现的对话框中,> 选择要在版1本 中使用的版本 项目。可通过项目扩展名

*.s7a 识别版本

项目。

2

1

  1. 然后,在下一个1对话框中,输入希望转换的版本 项目的新项目名称。

1

转换版本 2 的项目

在 STEP 7 中,还可以使用菜单命令文件 > 打开来打开版本 2 项目。

换可以使用菜单命令文件 > 另存为和选项“保存之前重新排列”,将版本 2 项目/库转

然后(移,植项)到目S被T另EP存7为当当前前版本。可将版本 2 的项目/库转换(移植)到当前的 STEP 7。

可话以框编中辑选来择自

STEP 7 版本的项目。

STEP 7 旧版本中的项目和库,保留其格式,并在“项目另存为”对

2.x”或“库 2.x”(从版本 5.1 开始,不可以另存为版本

对象,在此处ST选E择P “7 旧项版目本作为文件类型。例如,要编辑版本为 STEP 7 版本 2.1 的 2 2 )

。也可以参见编辑版本 的项目和库 。

文件类型标志

当前版本的文件类型旧版本的文件类型

STEP 7 V3
Project3.x Library3.x
Project2.x Library2.x Project2.x Library2.x

项从目STEP 7 V4 起

这本意的味项着目只和能库访。问 STEP 7 旧版本的功能范围。不过,仍可以继续管理 STEP 7 旧版

从注版释本 升级至版本 及更高版本,只涉及名称的改变:格式保持相同。因此,在

Project3.x”文件类型。

步骤 要将版本 项目转换为当前 版本的格式,可如下操作:

  1. 在“文2件”菜单中执行“S另TE存P为7”命令,选中“在保存前重新排列”选项。
  2. 在“项目另存为”对话框中,选择“项目”文件类型,并点击“保存”按钮。要将版本 2 项目转换为当前 STEP 7 版本,同时保留它们的格式,过程如下:
  3. 如有必要,执行上述的步骤 1。
  4. 按在钮“。项目另存为”对话框中,选择 STEP 7 旧版本的文件类型,并点击“保存”

关于具有 GD 通讯的 STEP 7 V.2.1 项目的注意事项

项目中用 打开全局数据表。以前组态的通讯数据通

        • 如果希望将具有全局数据的项目从 STEP 7 V2.1 转换到 STEP 7 V5,必须先在

GD 通讯自动转换为新结构。

过STEP 7 V2.1 STEP 7 V5.0

(ARJ、PKZIP...)可能发布错误消息。如果编辑 STEP 7 V2.1 项目中的

        • 则当旧归程档序STEP 7 V2.1 项目时,如果项目中含有名称长度大于八个字符的文件,

M数P据I 程的序段时,所用标识符的长度大于 8 个字符,此消息也会出现。在具有全局

段编辑一ST个E最P 大7 V长2度.1为项八目个中字,符首的次名开称始。组态全局数据通讯之前,请为 MPI 程序

GD 表中的栏(CPU)标题。如果恢复旧的项目名称,该分配会再次显示。

        • 如配果希望重命名 STEP 7 V2.1 项目,就必须通过重新选择合适的 CPU,重新分

具有丢失或故障 GSD 文件的 DP 从站

件如会果用丢失ST或E不P 能7 版编本译5例.1如处,理由较于早的站组文态件,中在的极语少法的错情误况。下,DP 从站的 GSD 文

在程这设种备情,况或下打,开 ( 生成代进表G已S组D态从站的“占占位”从) 站。例如,在站下载到内编

处理。不能改变从S较T站早EP的7结项构目并

一步处理后。此“

位”从站只能在有限的程度

从站的初始组态仍保持。也可(D以P 标删识除符整)个和从站从的站参。数。不过,可以重新下载到站。

DP

重新组态和设置参数到 DP 从站

站如的果希最新望重新组文态件D,P并从通站过或菜重单新命分令配选参项数到安D装P 从站,文必件须使向之制可造用商。申请此 DP 从

再在次安装全面了正G确SD的 GSD

处理。

DP

DP

文件后,它用于表示 >

从站G。SD

从站包含其数据,并可以

示例程序

示例项目和示例程序

能S“T还打EP添开7”安对装话光框盘中包找含到了这大些量示示例例项项目目“,示列例举项如目下”。标您签可以。当在安SI装M有A考T选IC项管包理时器,中也的可

文档。加了其它的示例项目。关于这些(

示例项目的有关信) 息,请参

选项包的相关

实例和示例项目

“ZEn01_01_STEP7_*”到“ZEn01_11_STEP7_DezP”项目

项目ZEn01_入门与06练_STEP7_*习 ”

“(示例 PROFIBUS DP 组态)

(

)

含在 CD 中已包

在本文档中描述 OB1 中的描述

单独的手册

- -

ZEn01_08_STEP7_Blending”项目ZEn01_09_STEP7_Zebra”项目

“(工业混合过程)

(“人行横道线/人行横道的交通信号控制)

Zen01_10_STEP7_COM_SFB”项目ZXX01_14_HSystem_S7400H”项目

(“容错系统项目入门)

(“两个 S7-400 CPU 之间的数据交换)

ZXX01_15_HSystem_RED_IO 项目“Zen01_11_STEP7_COM_SFC1”和

(“具有冗余 I/O 设备的容错系统项目入门)

ZEn01_13_STEP7_PID-Temp”

Zen01_12_STEP7_COM_SFC2”项目

(项使目用“未组态的连接的通讯 SFC 进行数据交换) (处用理于时温间度中控断制的器实F例B 58 和 FB 59 的实例)

处对禁理同止时步和间错激延误活迟进中中行断断掩和的码异和实步例消除掩码的例实例

延迟处理中断和异步错误的实例

-

单独手册

例实只例是的重旨在点说不明在于设计教授一个特程定序的所程必序须设计遵守方式的步或骤控。制特定过程所需要的专业知识。实

删除和安装所提供的示例项目

项可目以,在您SI必M须AT启IC动管理器中删除所安提装供程的序示。例也项可目以,有然选后择再地重日新后安再装安。装为示了例安项装目示。例

提用户供的项示目例保项存目。的副ST本E以P 及7 V使5用.0菜单命令“另存为”自行创建的示例项目只能作为

注当安释装 时,除非指定不安装,否则将复制所提供的示例项目。如果您已经

目编辑覆了盖。所ST提E供P 的7 示例项目,在重新安装 STEP 7 时,这些修改过的项目将被原始项因此,在修改前,您应复制所提供的示例项目,然后只对副本进行编辑。

工业混合过程的示例程序

示例程序使用在手册第一部分中读到过的关于控制工业混合过程的信息。

任务

阀搅拌从混机合在罐混中合排罐出中。将下两种图显配示料了(配示料例A过和程配的料框B图)混。和在一起。混合好的产品通过排料

STEP 7 V5.4 编程手册-176 STEP 7 V5.4 编程手册-177 STEP 7 V5.4 编程手册-178 STEP 7 V5.4 编程手册-179 STEP 7 V5.4 编程手册-180 STEP 7 V5.4 编程手册-181

$UHD: 'UDLQ 0

'UDLQ YDOYH

,QOHW )HHG )HHG YDOYH SXPS YDOYH

0

0

$UHD: ,QJUHGLHQW %

$UHD: 0L[LQJ WDQN

$JLWDWRU PRWRU

0

6ZLWFK IRU WDQN OHYHO PHDVXULQJ

)ORZ VHQVRU

,QOHW )HHG )HHG YDOYH SXPS YDOYH

$UHD: ,QJUHGLHQW $

0 0

过程各部分描手述。册第 1 部分描述了如何将示例过程分割为功能区域和单个任务。各区域说明如

用于配料 A 和 B 的区域:

        • 每种配料管道都装备有入口阀、进料阀和进料泵。
        • 入口管还装有流量传感器。
        • 当混合罐液位传感器显示混合罐已满时,打开进料泵必须互锁。
        • 当排料阀打开时,进料泵的起动必须互锁。
        • 在启动进料泵后的最初 1 秒,入口和进料阀必须打开。
        • 漏在。进料泵停止后(来自流量传感器的信号),必须立即关闭阀,以防止配料从泵泄
        • 器进料必泵须报的告起流动量与。时间监视功能相关联。换句话说,在泵启动后 7 秒内,流量传感
        • 如果在进料泵运行时,流量传感器不再发出流量信号,则必须尽快关闭进料泵。
        • 必须对进料泵的启动次数进行计数(维护时间间隔)。

混合罐区域:

        • 电当机混的合起罐液动。位传感器指示“液位低于最小值”或排料阀打开时,必须互锁搅拌器
        • 到在该达信到号额,定则速必度后须关,闭搅拌电机器。电机发送响应信号。如果电机起动后 10 秒内没有收
        • 必须计数搅拌机电机启动的次数(维护时间间隔)。
        • 必须在混合罐中安装三个传感器:
          • 混合罐满:常闭触点。当达到搅拌罐最高液位时,触点断开。
          • 混合罐中的液位高于最小值:常开触点。如果达到最低液位,触点闭合。
          • 混合罐不空:常开触点。如果混合罐不是空的,则触点闭合。

排料区:

        • 混合罐的排料由电磁阀控制。
        • 阀电磁。阀由操作员控制,但最迟当产生“混合罐空”信号时,必须再次关闭电磁
        • 下列情况下,打开排料阀是互锁的
          • 搅拌器电机正在运行
          • 混合罐空

操作员站 为了让操作员启动、停止和监视过程,还需要操作员站。操作员站配备下列设备:

        • 关用闭于电控机制的最维重护要的指过示灯程,阶并段将的相开应关的。使维护用“时间复间位隔维护计数显器示”复开位为关,。可以在维护时

0

0

        • 指示过程状态的指示灯。
        • 紧急停止开关。

定义逻辑块

通过分配用户程序给各个块及建立块调用层次,建立程序结构。

块调用层次下图显示在结构化程序中,被调用的块的层次。

)HHG YDOYHV

$ DQG %

)& 1

'% 3

$JLWDWRU PRWRU

0RWRU

)HHG SXPS LQJUHGLHQW %

'% 2

)% 1

'% 1

2% 1

9DOYHV

,QJUHGLHQW %

,QJUHGLHQW $

'UDLQ YDOYH

,QOHW YDOYHV

$ DQG %

$JLWDWRU PRWRU

)HHG SXPS LQJUHGLHQW $

          • O送B过1程:C控P制U所操需作要系的统特接定口参,数包。含主程序。在 OB1 中调用块FB1 和 FC1,并传
          • F块B控1:制配,料因为A 的它进们料的泵要、求配开料、B关的、进计料数泵应和用搅等拌是机相电同机的可。以由一个单独的功能

态实数例据DB是1不-3同:的用,于因控此制存配(料 A、配料 B 的进料)泵和搅拌器电机的实际参数和静

储在三个与 FB1 关联的实例DB 中。

          • F对C“1:打配开料和关A 闭和”B功的能入是口必阀须、进行料编阀程以的及,排所料以阀使也用使单用个共的用逻辑已块足。够由。于只是

FC

分配符号名

定义符号名和符程号序在示元素例程所使序用中的使绝用对,地它址们。必须用 STEP 7 在符号表中定义。下表给出了符号名

进符料号泵名、搅拌机电机和入口地阀址的符号地址 数据类型 描述

停止配料 的进料泵

启动配料 的进料泵

Feed_pump_A_start I0.0 BOOL A

Flow_A I0.2 BOOL 配料A 流量

Feed_pump_A_stop I0.1 BOOL A

Inlet_valve_A Q4.0 BOOL 起动配料A 的入口阀

Feed_valve_A Q4.1 BOOL 起动配料A 的进料阀

Feed_pump_A_on Q4.2 BOOL “配料A 进料泵运行”灯Feed_pump_A_off Q4.3 BOOL A

Feed_pump_A Q4.4 BOOL 起动配料A 的进料泵

“配料 进料泵不运行”灯

Feed_pump_A_fault Q4.5 BOOL “进料泵A 故障”灯Feed_pump_A_maint Q4.6 BOOL A

停止配料 的进料泵

启动配料 的进料泵

“进料泵 维护”灯

Feed_pump_B_start I0.3 BOOL B

Flow_B I0.5 BOOL 配料B 的流量

Feed_pump_B_stop I0.4 BOOL B

Inlet_valve_B Q5.0 BOOL 起动配料A 的入口阀

Feed_valve_B Q5.1 BOOL 起动配料B 的进料阀

Feed_pump_B_on Q5.2 BOOL “配料B 进料泵运行”灯Feed_pump_B_off Q5.3 BOOL B

Feed_pump_B Q5.4 BOOL 起动配料B 的进料泵

“配料 进料泵不运行”灯

Feed_pump_B_fault Q5.5 BOOL “进料泵B 故障”灯Agitator_running I1.0 BOOL 搅拌机电机的响应信号Agitator_stop I1.2 BOOL 搅拌机停止按钮

Agitator Q8.0 BOOL 起动搅拌机

Agitator_start I1.1 BOOL 搅拌机启动按钮

Feed_pump_B_maint Q5.6 BOOL “进料泵B 维护”灯

Agitator_on Q8.1 BOOL “搅拌机运行”灯

Agitator_off Q8.2 BOOL “搅拌机不运行”灯

Agitator_fault Q8.3 BOOL “搅拌机电机故障”灯

“搅拌机电机维护”灯

Agitator_maint Q8.4 BOOL

BOOL

BOOL BOOL BOOL

用于关闭排料阀的按钮

起动排料阀

“排料阀打开”灯

“排料阀关闭”灯

传符感号器名符号地址及显示混合地罐址的液位

数据类型

“描混述合罐未满”传感器

“混合罐超不过空最”低传液感位器”传感器

“混合罐满低”于灯最低液位”灯

“混合罐空”灯

BOOL

Q9.2

Tank_empty_disp

BOOL

Q9.1

Tank_min_disp

BOOL

Q9.0

Tank_max_disp

BOOL

I1.5

Tank_not_empty

BOOL

I1.4

Tank_above_min

BOOL

I1.3

Tank_below_max

排符料号阀名的符号地址 地址 数据类型 描述

BOOL 用于打开排料阀的按钮

Drain_open I0.6
Drain_closed I0.7
Drain Q9.5
Drain_open_disp Q9.6
Drain_closed_disp Q9.7

其符它号程名序元素的符号地址地址

数据类型

紧描急述停车开关

所用有于电控机制上泵的和维电护机灯的的复位开关

用于控制阀进的料泵

FB

FC

用于控制进料泵A 的实例 DB

用于控制搅拌机电机的实例 DB

B

DB

FB1

DB3

DB_agitator

FB1

DB2

DB_feed_pump_B

FB1

DB1

DB_feed_pump_A

FC1

FC1

Valve_block

FB1

FB1

Motor_block

BOOL

I1.7

Reset_maint

BOOL

I1.6

EMER_STOP_off

为电机创建 FB

对 FB 有哪些要求?

电机 FB 包含下列逻辑功能:

          • 有启动和停止输入。

“ ”、“ ” 保存在 的临时局部数据 堆栈

          • 一系列允许设备运行(泵和搅拌机电机)的互锁。互锁的状态

中( ,M当ot处or_理en电a机ble 时,V与al启ve动_e和na停bl止e 输)出在逻辑O上B1组合在一起。 (L )

后来,自该设备功能的会反馈必FB须在。一定的时间内显示。否则,会假定发生了错误或故障。然

停止电机

          • 必须指定时间点和响应或错误/故障周期的持续时间。
          • 如果按下启动按钮且电机已启用,则设备自己开动并运行,直到按下停止按钮。
          • 的当响设备应信开动号,时,则设定备时停器止开始。运行。如果在定时器时间用完之前没有收到来自设备

指定输入和输出

下图显示电机通用的FB 的输入和输出。

6WDUW 0RWRU )DXOW
6WRS

5HVSRQVH

6WDUWB'VS
6WRSB'VS
5HVHWB0DLQW 0DLQW
7LPHUB1R
5HVSRQVHB7LPH
0RWRU

定义 FB 的参数

通如用果的使参用数了名用。于电机的多重实例 FB(用于控制泵和电机),就必须为输入和输出定义

示例过程的电机 FB 要求如下:

          • 它必须有来自操作员站的信号,以停止和启动电机和泵。
          • 它需要来自电机和泵的响应信号,以指示电机正在运行。
          • 有它必收到须响计算应信从发号,出则信电号机起必动须电机关闭到。收到响应信号之间的时间。如果在该时间中没
          • 它必须能打开和关闭操作员站的灯。
          • 它提供信号以起动电机。

这些要求可以指定为FB 的输入和输出。下表所示为示例过程中电机 FB 的参数。

参数名称 输入 输出 输入/输出

Start n
Stop n
Response n
Reset_maint n
Timer_No n
Response_Time n
Fault n
Start_Dsp n
Stop_Dsp n
Maint n
Motor n

声明用于电机的 FB 的变量

必须声明用于电机的FB 的输入、输出和输入/输出参数。

地址 声明 名称 类型 变量初始值

0.0 IN Start BOOL FALSE
0.1 IN Stop BOOL FALSE
0.2 IN Response BOOL FALSE
0.3 IN Reset_Maint BOOL FALSE
2.0 IN Timer_No TIMER
4.0 IN Response_Time S5TIME S5T#0MS
6.0 OUT Fault BOOL FALSE
6.1 OUT Start_Dsp BOOL FALSE
6.2 OUT Stop_Dsp BOOL FALSE
6.3 OUT Maint BOOL FALSE
8.0 IN_OUT Motor BOOL FALSE
10.0 STAT Time_bin WORD W#16#0
12.0 STAT Time_BCD WORD W#16#0
14.0 STAT Starts INT 0
16.0 STAT Start_Edge BOOL FALSE

中使。用临FB时时变,量输存入储、在输出堆、栈输中入。/输出和静态变量保存在调用语句指定的实例 DB

L

编程用于电机的

在 FB

程序ST中E,P 必7 中须,在由创其建它块调用的每个块都必须先于调用它的块创建。因此,在示例

OB1 之前创建用于电机的FB。使用 STL 编程语言的 FB1 代码段如下所示:

Network 1 Start/stop and latching

A(

O #Start

O #Motor

)

AN #Stop

= #Motor

Network 2 Startup monitoring

A #Motor

L #Response_Time SD #Timer_No

AN #Motor

R #Timer_No L #Timer_No T #Timer_bin LC #Timer_No T #Timer_BCD A #Timer_No AN #Response S #Fault

R #Motor

Network 3 Start lamp and fault reset

A #Response

= #Start_Dsp R #Fault

Network 4 Stop lamp

AN #Response

= #Stop_Dsp

Network 5 Counting the starts

A #Motor

FP #Start_Edge JCN lab1 L #Starts

+ 1

T #Starts lab1 NOP 0

Network 6 Maintenance lamp

L #Starts

L 50

>=I

= #Maint

Network 7 Reset counter for number of starts

A #Reset_Maint A #Maint

JCN END L 0

T #Starts

END: NOP 0

创建实例数据块

创的建数三据个块数”据选块项,。然在后“逐引用个打”开列。表在框“中新选建择数“据块”对话框中,选择“引用功能块

给 FB1 的实例数据块。

FB1”。然后数据块被指定为固定分配

创建用于阀的 FC

对 FC 有哪些要求?

用于入口和进料阀以及排料阀的功能包含下列逻辑功能:

          • 有用于开、关阀的输入参数。

(L 堆栈)中,在处理阀 FC 时,与开、关输入在逻辑上组合在一起。

          • 据互锁允许将阀打开。互锁的状态(“Valve_enable”)保存在 OB1 的临时局部数

下表给出了必须传送给 FC 的参数。

用打于开阀的参数 输入 输出 输入/输出

Close
Dsp_Open
Dsp_Closed
Valve

指定输入和输出

下些图输给入出参了数用。于阀阀的返常回规输F出C 参的输数入。和输出参数。调用用于电机的 FB 的设备传送这

FC

2SHQ 9DOYH 'VSB2SHQ
&ORVH 'VSB&ORVHG
9DOYH

声明用于阀的 FC 的变量

参见下面的变量声明表 。

就象用于电机的 FB 那样,也必须为用于阀的 FC 声明输入、输出和输入/输出参数( )

地址 声明 打名开称 类型 变量初始值

0.0 IN BOOL FALSE
0.1 IN Close BOOL FALSE
2.0 OUT Dsp_Open BOOL FALSE
2.1 OUT Dsp_Closed BOOL FALSE
4.0 IN_OUT Valve BOOL FALSE

变量。 FC L ( )

指对于向被FC调,用临的时变量的保逻存辑在块。L 堆堆栈栈中。在输临入时、变输量出后和中输的入附/输加出内变存量空被间保用存于为存指储针这,些

编程用于 FC 的阀

必建须。在创建 OB1 之前创建用于阀的 FC1 功能,因为被调用块必须在调用块之前创使用 STL 编程语言的 FC1 代码段如下所示:

Network 1 Open/close and latching

A(

O #Open

O #Valve

)

AN #Close

= #Valve

Network 2 Display "valve open"

A #Valve

= #Dsp_Open

Network 3 Display "valve closed"

AN #Valve

= #Dsp_Closed

创建 OB1

OB1 决定了示例程序的结构。OB1 还包含传送到各种功能的参数,例如:

(“Start”)、停止(“Stop”)、响应(“Response”)和复位维护显示

          • 用于进料泵和搅拌器电机的 STL 程序段为用于电机的 FB 提供了用于启动

进(“行R处es理et_。Maint”)的输入参数。在 PLC 的每个周期中,都会对用于电机的 FB

          • 用如的果定用时于器电机的功的能FB,被并处通理知,必输须入测T量im哪e个r_时No间和。Response_Time 会通知正在使
          • 程由序于是周在期都O会B1被中处被理调。用,用于阀的 FC 和用于电机的 FB 在可编程控制器的每个

程序使用具有不同实例 DB 的电机FB 来处理进料泵和搅拌机电机的控制任务。

为 OB1 声明变量

OB1 的变量声明表如下显示。前 20 个字节包含 OB1 的启动信息,不得修改。

地址 声明 名称 类型

0.0 TEMP OB1_EV_CLASS BYTE
1.0 TEMP OB1_SCAN1 BYTE
2.0 TEMP OB1_PRIORITY BYTE
3.0 TEMP OB1_OB_NUMBR BYTE
4.0 TEMP OB1_RESERVED_1 BYTE
5.0 TEMP OB1_RESERVED_2 BYTE
6.0 TEMP OB1_PREV_CYCLE INT
8.0 TEMP OB1_MIN_CYCLE INT
10.0 TEMP OB1_MAX_CYCLE INT
12.0 TEMP OB1_DATE_TIME DATE_AND_TIME
20.0 TEMP Enable_motor BOOL
20.1 TEMP Enable_valve BOOL
20.2 TEMP Start_fulfilled BOOL
20.3 TEMP Stop_fulfilled BOOL
20.4 TEMP Inlet_valve_A_open BOOL
20.5 TEMP Inlet_valve_A_closed BOOL
20.6 TEMP Feed_valve_A_open BOOL
20.7 TEMP Feed_valve_A_closed BOOL
21.0 TEMP Inlet_valve_B_open BOOL
21.1 TEMP Inlet_valve_B_closed BOOL
21.2 TEMP Feed_valve_B_open BOOL
21.3 TEMP Feed_valve_B_closed BOOL
21.4 TEMP Open_drain BOOL
21.5 TEMP Close_drain BOOL
21.6 TEMP Valve_closed_fulfilled BOOL

为 创建程序

2SHUDWLQJ V\VWHP

OB1 在

程序ST中E,P 必7 中须,在由其它块调用的每个块都必须先于调用它的块创建。因此,在示例

OB1 编程前,创建用于电机的FB 和用于阀的 FC。

在 OB1 中,多次调用块 FB1 和 FC1;调用 FB1 使用了不同的实例 DB :

)% 1

,QVWDQFH '% 1

)& 1

)& 1

)% 1

,QVWDQFH '% 2

)& 1

)& 1

)% 1

,QVWDQFH '% 3

)& 1

6ZLWFK IRU WDQN OHYHO PHDVXUHPHQW

2% 1

'UDLQ YDOYH

$JLWDWRU PRWRU

)HHG YDOYH $

,QOHW YDOYH %

)HHG SXPS LQJUHGLHQW %

)HHG YDOYH $

,QOHW YDOYH $

)HHG SXPS LQJUHGLHQW $

在 STL 编程语言中,OB1 的代码段如下所示:

Network 1 Interlocks for feed pump A

A "EMER_STOP_off" A "Tank_below_max" AN "Drain"

= #Enable_Motor

Network 2 Calling FB Motor for ingredient A

A "Feed_pump_A_start"

A #Enable_Motor

= #Start_Fulfilled A(

O "Feed_pump_A_stop" ON #Enable_Motor

)

= #Stop_Fulfilled

CALL "Motor_block", "DB_feed_pump_A" Start :=#Start_Fulfilled

Stop :=#Stop_Fullfilled Response :="Flow_A" Reset_Maint :="Reset_maint" Timer_No :=T12 Reponse_Time:=S5T#7S

Fault :="Feed_pump_A_fault" Start_Dsp :="Feed_pump_A_on" Stop_Dsp :="Feed_pump_A_off" Maint :="Feed_pump_A_maint" Motor :="Feed_pump_A"

Network 3 Delaying the valve enable ingredient A

A "Feed_pump_A" L S5T#1S

SD T 13

AN "Feed_pump_A" R T 13

A T 13

= #Enable_Valve

Network 4 Inlet valve control for ingredient A

AN "Flow_A"

AN "Feed_pump_A"

= #Close_Valve_Fulfilled

CALL "Valve_block" Open :=#Enable_Valve

Close :=#Close_Valve_Fulfilled Dsp_Open :=#Inlet_Valve_A_Open Dsp_Closed:=#Inlet_Valve_A_Closed Valve :="Inlet_Valve_A"

Network 5 Feed valve control for ingredient A

AN "Flow_A"

AN "Feed_pump_A"

= #Close_Valve_Fulfilled

CALL "Valve_block" Open :=#Enable_Valve

Close :=#Close_Valve_Fulfilled Dsp_Open :=#Feed_Valve_A_Open Dsp_Closed:=#Feed_Valve_A_Closed Valve :="Feed_Valve_A"

Network 6 Interlocks for feed pump B

A "EMER_STOP_off" A "Tank_below_max" AN "Drain"

= "Enable_Motor

Network 7 Calling FB Motor for ingredient B

A "Feed_pump_B_start"

A #Enable_Motor

= #Start_Fulfilled A(

O "Feed_pump_B_stop" ON #Enable_Motor

)

= #Stop_Fulfilled

CALL "Motor_block", "DB_feed_pump_B" Start :=#Start_Fulfilled

Stop :=#Stop_Fullfilled Response :="Flow_B" Reset_Maint :="Reset_maint" Timer_No :=T14 Reponse_Time:=S5T#7S

Fault :="Feed_pump_B_fault" Start_Dsp :="Feed_pump_B_on" Stop_Dsp :="Feed_pump_B_off" Maint :="Feed_pump_B_maint" Motor :="Feed_pump_B"

Network 8 Delaying the valve enable ingredient B

A "Feed_pump_B" L S5T#1S

SD T 15

AN "Feed_pump_B" R T 15

A T 15

= #Enable_Valve

Network 9 Inlet valve control for ingredient B

AN "Flow_B"

AN "Feed_pump_B"

= #Close_Valve_Fulfilled

CALL "Valve_block" Open :=#Enable_Valve

Close :=#Close_Valve_Fulfilled Dsp_Open :=#Inlet_Valve_B_Open Dsp_Closed:=#Inlet_Valve_B_Closed Valve :="Inlet_Valve_B"

Network 10 Feed valve control for ingredient B

AN "Flow_B"

AN "Feed_pump_B"

= #Close_Valve_Fulfilled

CALL "Valve_block" Open :=#Enable_Valve

Close :=#Close_Valve_Fulfilled Dsp_Open :=#Feed_Valve_B_Open Dsp_Closed:=#Feed_Valve_B_Closed Valve :="Feed_Valve_B"

Network 11 Interlocks for agitator

A "EMER_STOP_off" A "Tank_above_min" AN "Drain"

= #Enable_Motor

Network 12 Calling FB Motor for agitator

A "Agitator_start"

A #Enable_Motor

= #Start_Fulfilled A(

O "Agitator_stop" ON #Enable_Motor

)

= #Stop_Fulfilled

CALL "Motor_block", "DB_Agitator" Start :=#Start_Fulfilled

Stop :=#Stop_Fullfilled

Response :="Agitator_running" Reset_Maint :="Reset_maint" Timer_No :=T16 Reponse_Time:=S5T#10S

Fault :="Agitator_fault" Start_Dsp :="Agitator_on" Stop_Dsp :="Agitator_off" Maint :="Agitator_maint" Motor :="Agitator"

Network 13 Interlocks for drain valve

A "EMER_STOP_off" A "Tank_not_empty" AN "Agitator"

= "Enable_Valve

Network 14 Drain valve control

A "Drain_open"

A #Enable_Valve

= #Open_Drain A(

O "Drain_closed" ON #Enable_Valve

)

= #Close_Drain

CALL "Valve_block" Open :=#Open_Drain Close :=#Close_Drain

Dsp_Open :="Drain_open_disp" Dsp_Closed :="Drain_closed_disp" Valve :="Drain"

Network 15 Tank level display

AN "Tank_below_max"

= "Tank_max_disp" AN "Tank_above_min"

= "Tank_min_disp" AN "Tank_not_empty"

= "Tank_empty_disp"

处理时间中断的实例

用户程序“时间中断”的结构

FC12 OB10

OB1

OB80

用户程序“时间中断”的结构

任务 从周一上午

点到周五晚上 点的时间段中,输出点

5

应该置位。从周五晚上

点到周一上午5

转换成用户程序

点的时间段中8 ,输出点

Q 4.0

应该复位Q。4.0 8

下表说明所使用的块的子任务。

块 子任务

调用功能

OB1
FC12
  • 指定启动时间
  • 设置时间中断
  • 激活时间中断
OB10
  • 指定启动时间
  • 置位或复位输出Q 4.0
  • 设置下一个时间中断
  • 激活下一个时间中断
OB80 置将位输出 Q 4.1

OB80 的启动事件信息存储在位存储器区

Q 4.0 的状态、时间中断状态和输入I 0.0 与I 0.1

根• 据当CA前N周_T时INT

使用的地址下表给出了所使用的共享地址。临时局部变量在各个块的声明部分进行声明。

地址

输含入义,可启用“设置时间中断”和“激活时间中断”

输出,通消过时间中断 实现置位 复位

OB (OB10)

MB100 到

输出,由时间错误

MW16

时间中断

用于OB10 的启动事件信息的存储器

(OB80)置位

/

(SFC31"QRY_TINT"

)的STATUS

MB110 到

(仅适用于时间)

MB107

用于OB80 的启动事件信息的存储器(时间错误)

MB129

SFC28"SET_TINT"的 RET_VAL

SFC30"ACT_TINT"的 RET_VAL

SFC31"QRY_TINT"的 RET_VAL

SFC 的二进制结果(状态位BR)缓存区

MW208

MW204

MB202

MW200

Q4.1

Q4.0

I0.1

I0.0

系统功能和所使用的功能

编程实例中用到了下列系统功能:

          • SFC28 "SET_TINT" : 设置时间中断
          • SFC29 "CAN_TINT" : 取消时间中断
          • SFC30 "ACT_TINT" : 激活时间中断
          • SFC31 "QRY_TINT" : 查询时间中断
          • FC3 "D_TOD_DT" : 将 DATE 和 TIME_OF_DAY 组合为DT

FC12

声明部分 下列临时局部变量在 的声明部分进行声明:

FC12

变量名称

数据类型

声明

启注动释时间

启动日转期换后的日期 时间

允许设置时间中断/

TEMP

BOOL

OK_MEMORY

TEMP

DATE_AND_TIME

OUT_TIME_DATE

TEMP

DATE

IN_DATE

TEMP

TIME_OF_DAY

IN_TIME

STL 代码段在 FC12 的代码段中输入下列 STL 用户程序:

STL (FC12) 解释

Network 1 查SF询C 时Q间RY中_T断I的NT状态

根在据变Q量4.0 指定启动和时间

(启动日期#是IN周_五DATE #IN_TIME

启动日期是周一

中)
CALL SFC 31
OB_NO := 10
RET_VAL:= MW 208
STATUS := MW 16
Network 2:
AN Q 4.0
JC mond
L D#1995-1-27
T #IN_DATE
L TOD#20:0:0.0
T #IN_TIME
JU cnvrt
mond: L D#1995-1-23
T #IN_DATE
L TOD#5:0:0.0
T #IN_TIME
cnvrt: NOP 0

STL (FC12) 解释

用于设置时间中断

Network 3:

CALL FC 3

IN1 := #IN_DATE

IN2 := #IN_TIME RET_VAL:= #OUT_TIME_DATE

Network 4:

A I 0.0

AN M 17.2

A M 17.4

= #OK_MEMORY

Network 5:

A #OK_MEMORY

JNB m001 CALL SFC 28

OB_NO := 10

SDT := #OUT_TIME_DATE PERIOD := W#16#1201 RET_VAL:= MW 200

m001 A BR

= M 202.3

Network 6:

A #OK_MEMORY

JNB m002 CALL SFC 30

OB_NO := 10

RET_VAL:= MW 204

m002 A BR

= M 202.4

Network 7:

A I 0.1

JNB m003 CALL SFC 29

OB_NO := 10

RET_VAL:= MW 210

m003 A BR

= M 202.5

将格式从DATE 和TIME_OF_DAY 转换为

DATE_AND_TIME ( )

设用置设时置间的中输断入的、所时有间要中求断是没否有已激满活足并?且时(间输中入断用于启 如果是) 这样,设置时间中断

载入 OB 已

...

...并激活时间中断。

如果用于取消时间中断的输入置位,则取消时间中断。

OB10

声明部分 和

的默认声明部分不同,声明了下列临时局部变量:

O用B1于0整个启动事件信息的结构

IN_TIME

OUT_TIME_DATE

          • 在 STARTINFO 结构内的时间(结ST构ARTINFO)
          • 其它临时局部变量

变量名称

STARTINFO

数据类型

STRUCT

声明

TEMP

注释

事优先级等识级号:

为OB结1构0 的全部启动事件信息声明

保OB留编号

保时留间中断的周期

保存留储详细时间的结构

周时

IN_DATE

DATE

TEMP

(时间格式转换)

FC3 的输入变量

IN_TIME

TIME_OF_DAY TEMP

(时间格式转换)

FC3 的输入变量

OUT_TIME_DATE DATE_AND_TIME TEMP

F入C变3 量的输出变量和 SFC28 的输

WDAY

IN_DATE

、 (T_、STMP) 和

E_ID WORD TEMP
PR_CLASS BYTE TEMP
OB_NO BYTE TEMP
RESERVED_1 BYTE TEMP
RESERVED_2 BYTE TEMP
PERIOD WORD TEMP
RESERVED_3 DWORD TEMP
T_STMP STRUCT TEMP
YEAR BYTE TEMP
MONTH BYTE TEMP
DAY BYTE TEMP
HOUR BYTE TEMP
MINUTES BYTE TEMP
SECONDS BYTE TEMP
MSEC_WDAY WORD TEMP
END_STRUCT TEMP
END_STRUCT TEMP
WDAY INT TEMP

STL 代码段在 OB10 的代码段中输入下列 STL 用户程序:

STL (OB10)

Network 1

L L AW T

Network 2:

L L

<>I JC

Network 3:

L T L T

SET

= JU

#STARTINFO.T_STMP.MSEC_WDAY

W#16#F

#WDAY

解释

选择周时

并存储。

#WDAY

2

如间果,不并是复周位一输,出则指定周一上午 点为下一个启动时

Q 4.0。

5

mond

D#1995-1-27

#IN_DATE TOD#20:0:0.0

#IN_TIME

否为则下,一如个果启是动周时一间,并指置定位周输五出晚上 。

8.00(20

:00)

Q 4.0

Q 4.0

cnvrt

mond:

L

T L T

CLR

=

D#1995-1-23

#IN_DATE TOD#5:0:0.0

#IN_TIME

指定启动时间。

Q 4.0

将指定的启动时间转换为 DATE_AND_TIME 格式 对于

cnvrt: NOP

0

Network 4:

CALL IN1 IN2

FC 3

:= #IN_DATE

:= #IN_TIME

SFC28)。

设置时间中断。

(

RET_VAL:= #OUT_TIME_DATE

Network 5:

CALL SFC 28

OB_NO := 10

SDT := #OUT_TIME_DATE PERIOD := W#16#1201 RET_VAL:= MW 200

A BR

= M 202.1

Network 6:

CALL SFC 30

OB_NO := 10

RET_VAL:= MW 204

激活时间中断

A

=

Network 7:

BR

M 202.2

CALL SFC 20

SRCBLK := #STARTINFO.T_STMP RET_VAL:= MW 206

DSTBLK := P#M 100.0 BYTE 8

器区MB100 至MB107 中。

块传送:将OB10 的启动事件信息中的时间保存到存储

的启动事件信息。

A.5.3.4 O因B为1 OB80

OB1 (用于循环程序的 OB)的启动事件信息在此实例中未作评价,所以只显示OB80

OB1 代码段

在 OB1 的代码段中输入下列 STL 用户程序:

STL (OB1)

CALL

解释

FC 12

调用功能FC12

OB80 声明部分

和 OB80 的默认声明部分不同,声明了下列临时局部变量:

          • 用于整个启动事件信息的结构(STARTINFO)
          • 在 STARTINFO 结构内的时间结构(T_STMP)

变量名称 数据类型 声明 注释

优先级等级

STARTINFO STRUCT TEMP

事OB件8标0 的识全号部:启动事件信息声明为结构

保保OB 编号

E_ID WORD TEMP
PR_CLASS BYTE TEMP
OB_NO BYTE TEMP
RESERVED_1 BYTE TEMP
RESERVED_2 BYTE TEMP
A1_INFO WORD TEMP
A2_INFO DWORD TEMP
T_STMP STRUCT TEMP
YEAR BYTE TEMP
MONTH BYTE TEMP
DAY BYTE TEMP
HOUR BYTE TEMP
MINUTES BYTE TEMP
SECONDS BYTE TEMP
MSEC_WDAY WORD TEMP
END_STRUCT TEMP
END_STRUCT TEMP

起错误的事件的有、关优附先加级信和息 编号

存的储有详关细附时加间信的息结。构 OB

OB80 代码段序在。如果发生时间错误,则操作系统将调用的 OB80 的代码段中输入下列 STL 用户程

STL (OB80)

Network 1

AN S

Q 4.1

Q 4.1

解释

如果发生时间错误,置位输出 Q 4.1。

块传送:将全部启动事件信息保存到存储器区 MB110

CALL SFC 20

SRCBLK := #STARTINFO RET_VAL:= MW 210

DSTBLK := P#M 110.0 Byte 20

至MB129。

处理时间延迟中断的实例

用户程序“时间中断”的结构

FC12 OB10

OB1

OB80

用户程序“时间延迟中断”的结构

任务

迟当置时间位输应该入重I 0新.0开时始,。应该在 10 秒以后置位输出 Q 4.0。每次置位输入 I 0.0 后,延

户延特时定中的断标的识启号动出时现间(。秒和毫秒)应该在延时中断 OB (OB20)的启动事件信息中作为用不如应果被I 0置.1位在。这 10 秒内置位,则组织块 OB20 不应该被调用;这意味着输出 Q 4.0

当输入 I 0.2 置位时,输出 Q 4.0 应复位。

转换成用户程序

下表说明所使用的块的子任务。

块 子任务

OB1 读根取据当输延前入时时间并上准的备边启沿动变延化时,中启断动上延的时边中沿断变化,取消延时中断

根据输入中I 0断.0的状态和输入

I 0.2 的状态,复位输出Q 4.0

I 0.1

OB20 置读将启取动和事准件备Q信当4.息前0 保时存间到位存储器区

使用的地址下表给出了所使用的共享地址。临时局部变量在各个块的声明部分进行声明。

地址

输含入义,用于启用“启动延时中断”

输入,用于复消位延输时出中断

输用出作,由延的时边中断 OB (OB20)

Q 4.0

延时中断(SFC34"QRY_TINT")的 STATUS

SFC 沿标志和二进制

置位 状态位 缓存区

结果

(

BR)

SFC34"QRY_DINT"的 RET_VAL

自OB1 的启动事件信息的BCD 编码的秒和毫秒SFC32"SRT_DINT"

的 RET_VAL

MB120 至 MB139

SFC33"CAN_DINT"的 RET_VAL

MW106

SFC20"BLKMOV"

OB20 启动事件信息的存储区

来自 OB20 的启动事件信息的 BCD 编码的秒和毫秒

的 RET_VAL

用户特定

的启动事件信息中获得

SIGN)

来自 OB1 启动事件信息的BCD 编码的秒和毫秒;从OB20 (

的标识符

MW144

MD140

MW104

MW102

MW 100

MD10

MW4

MB1

Q4.0

I0.2

I0.1

I0.0

所使用的系统功能

在用户程序“延时中断”中使用下列 SFC:

          • SFC32 "SRT_DINT" : 启动延时中断
          • SFC33 "CAN_DINT" : 取消延时中断
          • SFC34 "QRY_DINT" : 查询延时中断的状态

OB20

声明部分 与

的默认声明部分不同,将对下列临时局部变量进行声明:

O用B2于0整个启动事件信息的结构

变量名称

STARTINFO

数据类型

STRUCT

声明

TEMP

注释

事OB件2标0 的识启号动:信息

优先级等级

数OB据编标号识号

数据标识号 1

用户特定的标2 识号

延存时储中详断细的时启间动的时结间构

(时间标志)

(T_STMP)

          • 在 STARTINFO 结构内的时间(结ST构ARTINFO)
E_ID WORD TEMP
PC_NO BYTE TEMP
OB_NO BYTE TEMP
D_ID1 BYTE TEMP
D_ID 2 BYTE TEMP
SIGN WORD TEMP
DTIME TIME TEMP
T_STMP STRUCT TEMP
YEAR BYTE TEMP
MONTH BYTE TEMP
DAY BYTE TEMP
HOUR BYTE TEMP
MINUTES BYTE TEMP
SECONDS BYTE TEMP
MSEC_WDAY WORD TEMP
END_STRUCT TEMP
END_STRUCT TEMP

代码段 在 OB20 的代码段中输入下列 STL 用户程序:

STL (OB20)

Network 1

SET

=

Network 2:

L T

Network 3:

L T L T L

SRD

T

Q 4.0

QW 4

PQW 4

#STARTINFO.T_STMP.SECONDS MW 140

#STARTINFO.T_STMP.MSEC_WDAY MW 142

MD 140

4

MD 140

解释

无条件地置位输出Q 4.0

立即激活输出字

从启动事件信息中读取毫秒和周时

清除周时并

写回成毫秒 现在

从启动事件信息中读取

( MW 142 中为 BCD 编码的数据)

延时中断的启动时间 调

(= 用

SFC32)

Network 4:

L T

#STARTINFO.SIGN

MW 144

将启动事件信息复制到存储器区(MB120 至MB139)

Network 5:

CALL SFC 20

SRCBLK := STARTINFO RET_VAL:= MW 106

DSTBLK := P#M 120.0 Byte 20

OB1

声明部分 和

的默认声明不同,声明下列临时局部变量:

O用B1于整个启动事件信息的结构

变量名称

STARTINFO

E_ID

数据类型

STRUCT

WORD

声明

TEMP

TEMP

注释

事优件先标级识等号级:

OB1 的启动信息

数OB据编标号识号

1

数据标识号 2

最存大周期

前周期

储详细时间的结构

(时间标

)

(T_STMP)

          • 在 STARTINFO 结构内的时间(结ST构ARTINFO)
PC_NO BYTE TEMP
OB_NO BYTE TEMP
D_ID1 BYTE TEMP
D_ID 2 BYTE TEMP
CUR_CYC INT TEMP
MIN_CYC INT TEMP
MAX_CYC INT TEMP
T_STMP STRUCT TEMP
YEAR BYTE TEMP
MONTH BYTE TEMP
DAY BYTE TEMP
HOUR BYTE TEMP
MINUTES BYTE TEMP
SECONDS BYTE TEMP
MSEC_WDAY WORD TEMP
END_STRUCT TEMP
END_STRUCT TEMP

代码段 在 的代码段中输入下列 用户程序:

OB1 STL

STL (OB1) 解释

Network 1

L #STARTINFO.T_STMP.SECONDS T MW 10

L #STARTINFO.T_STMP.MSEC_WDAY

动事 信息中读取毫秒和周时

清写除回周成时毫并秒 编码的数据

现在

中为

L MD 10

SRD 4

T MD 10

Network 2:

A I 0.0

FP M 1.0

= M 1.1

Network 3:

A M 1.1

JNB m001 CALL SFC 32

OB_NO := 20 DTME := T#10S SIGN := MW 12 RET_VAL:= MW 100

m001: NOP 0

Network 4:

CALL SFC 34

OB_NO := 20

RET_VAL:= MW 102 STATUS := MW 4

Network 5:

A I 0.1

FP M 1.3

= M 1.4

Network 6:

A M 1.4

A M 5.2

JNB m002 CALL SFC 33

OB_NO := 20

RET_VAL:= MW 104

m002: NOP 0

A I 0.2

R Q 4.0

I 0.0 的上升沿吗?

如果是,则启动延时中断 延时中断的启动时间分配给

(

参数

SIGN)

查询延时中断(SFC QRY_DINT)的状态

是输入I 0.1 的上升沿吗?

然..后.并取激消活延延时时中中断断(延时中断 STATUS 的第 2 位)?

用输入I 0.2 复位输出Q 4.0

屏蔽和取消屏蔽同步错误的实例

,下列错误在编程错误过滤器中被屏蔽:

下面的用户程序实例说明了如何屏蔽和取消屏蔽同步错误。使用

读取数据时发生的区域长度错误

SFC36 "MSK_FLT"

          • 写入数据时发生的区域长度错误

第二次调用 SFC36 "MSK_FLT"时,访问区域也可以被屏蔽:

          • 写入数据时发生的 I/O 访问错误

I/O 访问错误”。

取使消用屏SF蔽C“38写"R入E数A据D_时ER发R生",的查询被屏蔽的同步错误。用 SFC37 "DMSK_FLT"再次

代码段 在下面将看到的 中,用户程序实例是在语句表中编程的。

OB1

STL (Network 1)

解释

AN M 255.0

非掉电保护的存储位M 255.0 (仅在第一次运行 = 0)

JNB m001

CALL SFC 36

S位FC36 MSK_FLT (屏蔽同步错误)

PRGFLT_SET_MASK :=DW#16#C

所有位 =0 (

ACCFLT_SET_MASK

:=DW#16#0

返回

2 = 位 3 = 1 (BLFL 和 BLFS 被屏蔽

输出当前访

没有访问错误被屏蔽)

)

问错误过滤器到 MD14

MD10

RET_VAL :=MW 100

PRGFLT_MASKED :=MD 10

如果屏蔽成功则置位M255.0

ACCFLT_MASKED :=MD 14

m001: A

S

BR

M 255.0

STL (Network 2) 解释

CALL SFC 36

S所F有C3位6 MSK_FLT (屏蔽同步错误)

返位回值

MD24

PRGFLT_SET_MASK :=DW#16#0

= 0写(访不问再错有误编被程屏错蔽误被屏蔽)

ACCFLT_SET_MASK :=DW#16#8

3 = 1 (

)

RET_VAL :=MW 102

PRGFLT_MASKED :=MD 20

ACCFLT_MASKED :=MD 24

输出当前编访程问错误过滤器到 MD20

STL (Network 3)

AN M 27.3 BEC

蔽,块结束

解释

如果写访问错误(ACCFLT_MASKED 中的位 3)没有屏

STL (Network 4) 解释

L T B#16#0 PQB 16 到PQB 16 的写访问(通过值 0)
L

T

B#16#0

PQB 17

到PQB 17 的写访问(通过值 0)

STL (Network 5)

CALL

解释

SFC 38

SFC38 READ_ERR (查询同步错误)

所有位 = 0 (没有查询到编程错误)

PRGFLT_QUERY :=DW#16#0

ACCFLT_QUERY :=DW#16#8

返回值

输出当前编程错误过滤器到 MD30

位 3 = 1 (查询到写访问错误)

输出当前访问错误过滤器到 MD34

RET_VAL

:=MW 104

PRGFLT_CLR

:=MD 30

ACCFLT_CLR

:=MD 34

没有发生错误,且没有检测到写访问错误

取反RLO

如果PQB 16 存在,M 0.0=1

A

BR

A

M 37.3

NOT

=

M 0.0

STL (Network 6) 解释

STL (Network 7) 解释

CALL SFC 38

S所F有C3位8 READ_ERR (查询同步错误)

返位回值

PRGFLT_QUERY :=DW#16#0

= 0查(询没到有写查访询问到错编误程错误)

ACCFLT_QUERY :=DW#16#8 RET_VAL :=MW 104

输出当前访问错误过滤器到

3 = 1 (

)

PRGFLT_CLR :=MD 30

ACCFLT_CLR :=MD 34 A BR

编程 MD30

没有发生错误,且没有检测到MD写3访4 问错误

取如反果 RLO

PQB 17 存在,M 0.1=1

A M 37.3 NOT

= M 0.1

STL (Network 8) 解释

L T B#16#0 PQB 18 到PQB 18 的写访问(通过值 0)

STL (Network 9) 解释

CALL SFC 38

S所F有C3位8 READ_ERR (查询同步错误)

返位回值

PRGFLT_QUERY :=DW#16#0

= 0查(询没到有写查访询问到错编误程错误)

ACCFLT_QUERY :=DW#16#8 RET_VAL :=MW 104

输出当前访问错误过滤器到

3 =