S7-1200 可编程控制器 在线和诊断工具

2018年6月23日08:12:57 发表评论 129 阅读

在线和诊断工具

状态 LED

CPU 和 I/O 模块使用 LED 提供有关模块或 I/O 的运行状态的信息。

CPU 上的状态 LED

CPU 提供以下状态指示灯:

STOP/RUN

黄色常亮指示 STOP 模式

纯绿色指示 RUN 模式

闪烁(绿色和黄色交替)指示 CPU 处于 STARTUP 模式

ERROR

红色闪烁指示有错误,例如,CPU 内部错误,存储卡错误或组态错误(模块不匹配)

纯红色指示硬件出现故障

MAINT(维护)在每次插入存储卡时闪烁。 然后 CPU 切换到 STOP 模式。 在 CPU

切换到 STOP 模式后,执行以下操作之一以启动存储卡评估:

将 CPU 切换到 RUN 模式

执行存储器复位 (MRES)

CPU 循环上电

也可使用 LED 指令 (页 319)来确定 LED 的状态。

表格 14- 1 CPU 上的状态 LED

说明 STOP/RUN

黄色/绿色

ERROR

红色

MAINT

黄色

断电
启动、自检或固件更新 闪烁

(黄色和绿色交替)

-
停止模式 亮(黄色) - -
说明 STOP/RUN

黄色/绿色

ERROR

红色

MAINT

黄色

运行模式 亮(绿色) - -
取出存储卡 亮(黄色) - 闪烁
出错 亮(黄色或绿色) 闪烁 -
请求维护 亮(黄色或绿色) -
硬件出现故障 亮(黄色)
LED 测试或 CPU 固件出现故障 闪烁

(黄色和绿色交替)

闪烁 闪烁

CPU 还提供了两个可指示 PROFINET 通信状态的 LED。 打开底部端子块的盖子可以看到 PROFINET LED。

Link (绿色)点亮指示连接成功

Rx/Tx (黄色)点亮指示传输活动

CPU 和各数字量信号模块 (SM) 为每个数字量输入和输出提供了 I/O Channel LED。 I/O Channel (绿色)通过点亮或熄灭来指示各输入或输出的状态。

SM 上的状态 LED

此外,各数字量 SM 还提供了指示模块状态的 DIAG LED:

绿色指示模块处于运行状态

红色指示模块有故障或处于非运行状态

各模拟量 SM 为各路模拟量输入和输出提供了 I/O Channel LED。

绿色指示通道已组态且处于激活状态

红色指示个别模拟量输入或输出处于错误状态

此外,各模拟量 SM 还提供有指示模块状态的 DIAG LED:

绿色指示模块处于运行状态

红色指示模块有故障或处于非运行状态

SM 可检测模块的通断电情况(必要时,还可检测现场侧电源)。

转到在线并连接到 CPU

表格 14- 2 信号模块 (SM) 上的状态 LED

说明 DIAG

(红色/绿色)

I/O Channel

(红色/绿色)

现场侧电源关闭 呈红色闪烁 呈红色闪烁
没有组态或更新在进行中 呈绿色闪烁
模块已组态且没有错误 亮(绿色) 亮(绿色)
错误状态 呈红色闪烁 -
I/O 错误(启用诊断时) - 呈红色闪烁
I/O 错误(禁用诊断时) - 亮(绿色)

转到在线并连接到 CPU

装载程序和项目工程数据以及执行下列操作时,编程设备和 CPU 之间必须存在在线连接:

测试用户程序

显示和改变 CPU 的工作模式 (页 735)

显示和 设置 CPU 的日期和日时钟 (页 734)

显示模块信息

比较和同步 (页 737)离线与在线程序块

上传和下载程序块

显示诊断和 诊断缓冲区 (页 736)

通过使用 监视表格 (页 741)监视并修改值来测试用户程序

使用强制表格 强制 CPU 中的值 (页 744)

在线为 PROFINET IO 设备分配名称

要与组态的 CPU 建立在线连接,请单击“项目导航”树中的

CPU,并在“项目”(Project) 视图中单击“转到在线模式”(Go

S7-1200 可编程控制器 在线和诊断工具-1 online) 按钮:

S7-1200 可编程控制器 在线和诊断工具-2

如果这是该 CPU 首次转到在线模式,则必须从“转到在线模式”(Go Online) 对话框中选择 PG/PC 接口的类型以及特定的 PG/PC 接口,然后才能在与该接口中发现的 CPU 建立在线连接。

编程设备已连接到 CPU。 橙色单元指示存在在线连接。 现在,您就可以使用“项目树”和

“在线工具任务卡”中的“在线和诊断”(Online & diagnostics) 工具。

在线为 PROFINET IO 设备分配名称

PROFINET 网络中的设备在分配名称后才可与 CPU 连接。 如果 PROFINET 设备尚未分配名称,或要更改该设备的名称,则可使用“设备和网络”(Devices & networks) 编辑器为该设备分配名称。

对于各 PROFINET IO 设备,必须在 STEP 7 项目(使用“在线和诊断”(Online &

diagnostics) 工具)和 PROFINET IO 设备组态存储器(例如 ET200 S 接口模块组态存储器)中为该设备分配相同的名称。 如果名称缺失或两个位置中的名称不匹配,则PROFINET IO 数据交换模式将不会运行。

在线为 PROFINET IO 设备分配名称

S7-1200 可编程控制器 在线和诊断工具-3 在“设备和网络”(Devices &

networks) 编辑器中,右键单击所需的 PROFINET IO 设备,并选择“在线和诊

断”(Online & diagnostics)。

在“在线和诊断”(Online &

diagnostics) 对话框中,选择以下菜单项:

“功能”(Functions)

“分配名称”(Assign name)

单击“网络中的可访问设

备”(Accessible devices in the

network) 图标以显示网络中的所有 PROFINET IO 设备。

S7-1200 可编程控制器 在线和诊断工具-4 在显示的列表中,单击所需的 PROFINET IO 设备,然后单击“分配名称”(Assign

name) 按钮将该名称写入PROFINET IO 设备组态存储器。

设置 IP 地址和日时钟

设置 IP 地址和日时钟

S7-1200 可编程控制器 在线和诊断工具-5 S7-1200 可编程控制器 在线和诊断工具-6 可以设置在线 CPU 中的 IP 地址 (页 138)和时间。 访问在线 CPU“项目树”中的“在线和诊断”(Online & diagnostics) 之后,可以显示或更改 IP 地址。 还可以显示或设置在线 CPU 的时间和日期参数。

说明

该特性仅对只具有 MAC 地址(还未分配 IP 地址)或已恢复出厂设置的 CPU 可用。

复位为出厂设置

可在以下情形下将 S7-1200 复位为原始出厂设置:

CPU 中未插入存储卡。

CPU 有在线连接。

CPU 处于 STOP 模式。

说明

如果 CPU 处于 RUN 模式,而用户要启动复位操作,则可在接受确认提示后将其切换到 STOP 模式。

操作步骤

要将 CPU 复位为出厂设置,请按以下步骤操作:

打开 CPU 的“在线和诊断”(Online and Diagnostics) 视图。

从“功能”(Functions) 文件夹中选择“复位为出厂设置”(Reset to factory settings)。

在线 CPU 的 CPU 操作员面板

如要保留 IP 地址,请选中“保留 IP 地址”(Keep IP address) 复选框;如果要删除 IP 地址,则选中“复位 IP 地址”(Reset IP address) 复选框。

单击“复位”(Reset) 按钮。

单击“确定”(OK) 接受确认提示。

结果

模块会根据需要切换到 STOP 模式,并被复位为出厂设置:

工作存储器、内部装载存储器以及所有操作数区域都将被清空。

所有参数都复位为其默认值。

诊断缓冲区被清空。

时间被复位。

IP 地址将根据用户设置被保留或删除。 (MAC 地址是固定的,始终不变。)

在线 CPU 的 CPU 操作员面板

S7-1200 可编程控制器 在线和诊断工具-7 “CPU 操作员面板”(CPU operator panel) 显示在线 CPU 的工作模式

(STOP 或 RUN)。 该面板还显示 CPU 是否有错误或值是否处于强制状态。

使用“在线工具”(Online Tools) 任务卡的 CPU 操作面板可更改在线 CPU 的工作模式。 只要 CPU 处于在线模式,便可访问“在线工具”(Online Tools) 任务卡。

监视循环时间和存储器使用情况

监视循环时间和存储器使用情况

S7-1200 可编程控制器 在线和诊断工具-8 S7-1200 可编程控制器 在线和诊断工具-9 可以监视在线 CPU 的循环时间和存储器使用情况。连接到在线 CPU 后,打开

“在线工具”(Online tools) 任

务卡查看以下测量值:

循环时间

存储器使用情况

S7-1200 可编程控制器 在线和诊断工具-10 S7-1200 可编程控制器 在线和诊断工具-11

显示 CPU 中的诊断事件

使用诊断缓冲区可以查看 CPU 的近期活动。 可通过“在线和诊断”(Online & Diagnostics)

访问项目树中在线 CPU 的诊断缓冲区。 它包含以下条目:

诊断事件

CPU 工作模式改变(切换到 STOP 或 RUN 模式)

比较离线 CPU 与在线 CPU

S7-1200 可编程控制器 在线和诊断工具-12 第一个条目包含最新的事件。 诊断缓冲区中的各条目均包含记录事件的日期和时间以及一段说明。

最大条目数由 CPU 决定。 最多支持

50 个条目。

仅永久存储诊断缓冲区中 10 个最新的事件。 将 CPU 复位为工厂设置会通过删除条目的方式复位诊断缓冲区。

还可以使用 GET_DIAG 指令 (页 324)来采集诊断信息。

比较离线 CPU 与在线 CPU

可以将在线 CPU 中的代码块与项目中的代码块进行比较。 如果项目中的代码块与在线CPU 的代码块不匹配,则可通过“比较”编辑器使项目与在线 CPU 同步,具体方法可以是将项目的代码块下载到 CPU 中,或者从项目中删除在线 CPU 中不存在的块。

S7-1200 可编程控制器 在线和诊断工具-13 在项目中选择 CPU。

使用“比较离线/在线”(Compare Offline/online) 命令打开“比较”(Compare) 编辑器。 (通过“工具”(Tools) 菜单或右键单击项目中 CPU 的方式访问该命令。)

S7-1200 可编程控制器 在线和诊断工具-14 单击某对象的“操作”(Action) 列,在删除对象、不执行任何操作或将该对象下载到设备这三项中进行选择。

单击“同步”(Synchronize) 按钮装载代码块。

S7-1200 可编程控制器 在线和诊断工具-15 在“比较目标”(Compare to) 列中右键单击一个对象, 并选择“开始详细比较”(Start detailed comparison) 按钮可并排显示代码块。

详细比较功能会高亮显示在线 CPU 代码块与项目中

CPU 代码块之间的差异。

监视和修改 CPU 中的值

STEP 7 提供了用于监视 CPU 的在线工具:

您可以显示或监视变量的当前值。 监视功能不会改变程序顺序。 它为用户提供有关

CPU 中程序的顺序以及数据信息。

还可以使用其它功能控制用户程序的顺序和数据:

可以修改在线 CPU 中变量的值,了解用户程序如何响应。

可以将外围设备输出(如 Q0.1:P 或“Start”:P)强制为特定值。

可以在 STOP 模式下启用输出。

说明

使用控制功能时必须始终小心谨慎。 这些功能可能会严重影响用户/系统程序的执行。

表格 14- 3 STEP 7 编辑器的在线功能

编辑器 监视 修改 强制
监视表格
强制表格
程序编辑器
变量表
DB 编辑器

转到在线模式监视 CPU 中的值

S7-1200 可编程控制器 在线和诊断工具-16 S7-1200 可编程控制器 在线和诊断工具-17 要监视变量,必须在线连接到 CPU。 只需单击工具栏中的“转到在线”(Go online) 按钮。连接到 CPU 后,STEP 7 将工作区的标题变为橙色。

项目树显示离线项目和在线 CPU 的比较结果。 绿色圆点表示

CPU 与项目同步,即二者都具有相同的组态和用户程序。

变量表会显示变量。 监视表格也可以显示变量以及直接地址。

S7-1200 可编程控制器 在线和诊断工具-18

S7-1200 可编程控制器 在线和诊断工具-19 要监视用户程序的执行并显示变量的值,请单击工具栏中的“全部监视”(Monitor all)

S7-1200 可编程控制器 在线和诊断工具-20 按钮。

“监视值”(Monitor value) 字段中将显示每个变量的值。

显示程序编辑器中的状态

还可以在 LAD 和 FBD 程序编辑器中监视各变量的状态。使用编辑器栏显示 LAD 编辑器。使用编辑器栏,可以在打开的编辑器之间切换视图,而无需打开或关闭编辑器。

在程序编辑器的工具栏中,单击“接通/断开监视”(Monitoring on/off) 按钮,以显示用户程序的状态。

S7-1200 可编程控制器 在线和诊断工具-21 S7-1200 可编程控制器 在线和诊断工具-22

程序编辑器中的网络以绿色显示能流。

还可以右键单击指令或参数,以修改指令值。

捕获 DB 的在线值以重设起始值

可以捕获在线 CPU 中受监视的当前值,使其成为全局 DB 的起始值。

必须能够在线连接到 CPU。

CPU 必须处于 RUN 模式。

必须已在 STEP 7 中打开相应 DB。

S7-1200 可编程控制器 在线和诊断工具-23 使用“显示监视值的快照”(Show a snapshot of the monitored value) 按钮捕获 DB 中所选变量的当前值。 然后可以将这些值复制到 DB 的“起始值”(Start value) 列。

在 DB 编辑器中单击“监视所有变量”(Monitor all tags) 按钮。 “监视值”(Monitor value)

列会显示当前数据值。

单击“显示监视值的快照”(Show a snapshot of the monitored value) 按钮显示“快照”(Snapshot) 列中的当前值。

单击“全部监视”(Monitor all) 按钮停止监视 CPU 中的数据。

为变量复制“快照”(Snapshot) 列中的值。

选择要复制的值。

右键单击选中的值,以显示右键快捷菜单。

选择“复制”(Copy) 命令。

将复制的值粘贴到该变量的相应“起始值”(Start value) 列。 (右键单击单元格并从右键快捷菜单中选择“粘贴”(Paste)。)

保存项目,将复制的值组态为该 DB 的新起始值。

编译 DB 并将其下载到 CPU。 DB 会在 CPU 进入 RUN 模式之后使用新起始值。

说明

始终从 CPU 中复制要在“监视值”(Monitor value) 列中显示的值。 STEP 7 不会检查所有值是否来自于 CPU 的同一扫描周期。

使用监视表格来监视和修改 CPU 中的值

通过监视表格可以在 CPU 执行用户程序时对数据点执行监视和控制功能。 根据监视或控制功能的不同,这些数据点可以是过程映像(I 或 Q)、M、DB 或物理输入 (I_:P)。 由于监视功能只能显示从 Q 存储器写入的最后一个值,并且不会从物理输出读取实际值,因此无法准确监视物理输出 (Q_:P)。

监视功能不会改变程序顺序。 它为用户提供有关 CPU 中程序的顺序以及数据信息。

控制功能允许用户控制程序的顺序和数据。 使用控制功能时必须小心谨慎。 这些功能可能会严重影响用户/系统程序的执行。 三种控制功能是修改、强制和在 STOP 模式下启用输出。

使用监视表格可以执行以下在线功能:

监视变量的状态

修改个别变量的值

选择监视或修改变量的时间:

扫描循环开始时: 在该扫描循环开始时读取或写入值

扫描循环结束时: 在该扫描循环结束时读取或写入值

切换到停止

S7-1200 可编程控制器 在线和诊断工具-24 要创建监视表格:

双击“添加新监视表格”(Add new watch table) 打开新监视表格。

输入变量名称将变量添加到监视表格。可使用以下选项监视变量:

“监视全部”(Monitor all): 该命令用于启动对激活的监视表格中的可见变量进行监视。

“立即监视”(Monitor now): 该命令用于启动对激活的监视表格中的可见变量进行监视。 监视表格仅立即监视变量一次。

可使用以下选项修改变量:

“修改为 0”(Modify to 0) 将所选地址的值设置为“0”。

“修改为 1”(Modify to 1) 将所选地址的值设置为“1”。

“立即修改”(Modify now) 立即修改所选地址的值一个扫描周期。

“使用触发器修改”(Modify with trigger) 修改所选地址的值。

该功能不提供反馈来指示实际上是否修改了所选地址。 如果需要修改反馈,则使用“立即修改”(Modify now) 功能。

“启用外围设备输出”(Enable peripheral outputs) 禁用输出禁用命令并且仅在 CPU 处于 STOP 模式时可用。

要监视变量,必须在线连接到 CPU。

S7-1200 可编程控制器 在线和诊断工具-25

可以使用监视表格顶部的按钮选择各种功能。

输入要监视的变量名称并从该下拉选择项中选择一种显示格式。 在线连接到 CPU 时,单击“监视”(Monitor) 按钮将在“监视值”(Monitor value) 域中显示数据点的实际值。

监视或修改 PLC 变量时使用触发器

触发决定将在扫描周期中的哪个点监视或修改所选地址。

表格 14- 4 触发器类型

触发器 说明
永久 连续采集数据
扫描周期开始时 永久: CPU 读取输入后,在扫描周期开始时连续采集数据
一次: CPU 读取输入后,在扫描周期开始时采集一次数据
扫描周期结束时 永久: CPU 写入输出前,在扫描周期结束时连续采集数据
一次: CPU 写入输出前,在扫描周期结束时采集一次数据
切换到 STOP 时 永久: CPU 切换到 STOP 时连续采集数据
一次: CPU 切换到 STOP 后采集一次数据

要在给定触发点修改 PLC 变量,请选择周期开始或结束。

修改输出: 触发修改输出事件的最佳时机是在扫描周期结束且 CPU 马上要写入输出之前的时间。

在扫描周期开始时监视输出的值以确定写入到物理输出中的值。 此外,在 CPU 将值写入到物理输出前监视输出以检查程序逻辑并与实际 I/O 行为进行比较。

修改输入: 触发修改输入事件的最佳时机是在周期开始、CPU 刚读取输入且用户程序要使用输入值之前的时间。

如果在扫描周期开始时修改输入,则还应在扫描周期结束时监视输入值,以确保扫描周期结束时的输入值自扫描周期开始起未改变。 如果值不同,则用户程序可能会错误地写入到输入。

要诊断 CPU 转到 STOP 的可能原因,请使用“切换到 STOP”(Transition to STOP) 触发器捕捉上一个过程值。

在 STOP 模式下启用输出

监视表格允许用户在 CPU 处于 STOP 模式时写入输出。 通过该功能可以检查输出的接线并检验连接到输出引脚的电线是将高电平信号还是低电平信号引入与其相连的过程设备端子。

S7-1200 可编程控制器 在线和诊断工具-26 警告
即使在 CPU 处于 STOP 模式时,启用物理输出也可激活相连的过程点。

输出启用时,可以在 STOP 模式下修改输出的状态。 如果输出禁用,则无法在 STOP 模式下修改输出。

要启用在 STOP 模式下修改输出,请选择“在线”(Online) 菜单中的“修改”(Modify) 命令的“启用外围设备输出”(Enable peripheral outputs) 选项或右键单击监视表格行。

如果已组态分布式 I/O,则无法在 STOP 模式下启用输出。 若尝试启动,将返回错误。

将 CPU 设置为 RUN 模式会禁用“启用外围设备输出”(Enable peripheral outputs) 选项。

如果任何输入或输出被强制,则处于 STOP 模式时不允许 CPU 启用输出。 必须先取消强制功能。

CPU 中的强制值

使用强制表格

强制表格提供了“强制”功能,能够将与外围设备输入或外围设备输出地址对应的输入或输 出点的值改写成特定的值。 CPU 在执行用户程序前将此强制值应用到输入过程映像并在将输出写入到模块前将其应用到输出过程映像。

说明

强制值存储在 CPU 中,而不是强制表格中。

不能强制输入(或“I”地址)或输出(或“Q”地址)。 但是,可以强制外围设备输入或外围设备输出。 强制表格将自动在地址后面添加一个“:P”(例如:“On”:P 或“Run”:P)。

S7-1200 可编程控制器 在线和诊断工具-27

在“强制值”(Force value) 单元格中,输入要强制的输入值或输出值。 然后可以使用“强制”(Force) 列中的复选框启用对输入或输出的强制功能。

S7-1200 可编程控制器 在线和诊断工具-28 使用“启动或替换强制”(Start or replace forcing) 按钮强制设置强制表格中的变量值。 单击“停止强制”(Stop forcing) 按钮重置变量值。

S7-1200 可编程控制器 在线和诊断工具-29 在强制表格中,可以监视输入的强制值的状态。 但是不能监视输出的强制值。还可以在程序编辑器中查看强制值的状态。

注意
在强制表格中强制输入或输出时,强制操作将变成项目组态的一部分。 如果关闭STEP 7,被强制元素仍会在 CPU 程序中保持激活状态,直至这些元素被清除。 要清除这些被强制元素,必须使用 STEP 7 连接到在线 CPU,然后使用强制表格断开或停止对

这些元素的强制功能。

强制功能的操作

CPU 允许用户在强制表格中指定物理输入或输出地址(I_:P 或 Q_:P)然后启动强制功能,以此来强制输入和输出点。

在程序中,物理输入的读取值被强制值覆盖。 程序在处理过程中使用该强制值。 程序写入物理输出时,输出值被强制值覆盖。 强制值出现在物理输出端并被过程使用。

在强制表格中强制输入或输出时,强制操作将变成用户程序的一部分。 即使编程软件已关闭,强制选项在运行的 CPU 程序中仍保持激活,直到在线连接到编程软件并停止强制功能将其清除为止。 含有通过存储卡装载到另一个 CPU 的强制点的程序将继续强制程序中选择的点。

如果 CPU 正在执行写保护存储卡上的用户程序,则无法通过监视表格初始化或更改对

I/O 的强制,因为用户无法改写写保护用户程序中的值。 强制写保护值的任何尝试都将生成错误。 如果使用存储卡传送用户程序,则该存储卡上的所有被强制元素都将被传送到

CPU。

说明

无法强制分配给 HSC、PWM 和 PTO 的数字 I/O 点

在设备配置期间分配高速计数器 (HSC)、脉冲宽度调制 (PWM) 和脉冲串输出 (PTO) 设备使用的数字 I/O 点。 将数字量 I/O 点的地址分配给这些设备之后,无法通过监视表格的强制功能修改所分配的 I/O 点的地址值。

)

(

'

&

%

$

启动 RUN

强制功能不影响 I 存储区的清除。 ① 将 Q 存储器写入到物理输出时,CPU

在更新输出时应用强制值。

强制功能不影响输出值的初始化。 ② 读取物理输入时,CPU 仅在将这些输入

复制到 I 存储器前应用强制值。

C 启动 OB 执行期间,CPU 在用户程 用户程序(程序循环 OB)执行期间,
序访问物理输入时应用强制值。 CPU 在用户程序访问物理输入或写入物
理输出时应用强制值。
D 不影响将中断事件存储到队列。 强制功能不影响通信请求和自检诊断的
处理。
E 不影响写入到输出的启用。 不影响在扫描周期的任何时段内处理中
断。

在 RUN 模式下下载

该 CPU 支持“在 RUN 模式下下载”(Download in RUN mode)。 此功能是为了让您以对过程干扰最小的方式对控制该过程的程序进行小幅改动。 但是,执行此功能也可以对程序进行重大更改,这可能会导致损坏甚至危险情况。

S7-1200 可编程控制器 在线和诊断工具-30 警告
在 RUN 模式下向 CPU 中下载更改时,这些更改将立即影响过程操作。 在 RUN 模式下更改程序可能会引起意外的系统操作,进而导致人员死亡、重伤和/或设备损坏。

在 RUN 模式下执行下载的人员必须经过授权,并清楚 RUN 模式下的更改对系统运行的影响。

利用“在 RUN 模式下下载”功能,可在不切换为 STOP 模式的情况下对程序进行更改,并将其下载到 CPU 中:

可以在不停机的情况下对当前过程进行少量更改(例如,更改一个参数值)。

可利用此功能更快速地调试程序(例如,插入一段常开或常闭开关逻辑)

可在 RUN 模式下进行下列程序块和变量更改,并将其下载到 CPU 中:

创建、覆盖和删除函数 (FC)、函数块 (FB) 和变量表。

创建和删除数据块 (DB);但是,不会覆盖 DB 的结构更改。 只能覆盖 DB 初始值。无法在 RUN 模式下下载 Web 服务器 DB(控件或片段)。

覆盖组织块 (OB);但是,不能创建或删除 OB。

在 RUN 模式下最多可同时下载 10 个块。 如果要下载 10 个以上的块,那么必须将 CPU

置于 STOP 模式。

如果将更改下载到实际过程(相对仿真过程而言,程序调试期间可能会进行仿真),在下载前必须全面考虑可能会对机器操作员和机器造成的安全后果,这一点非常重要。

说明

如果 CPU 处于 RUN 模式,且进行了程序更改,那么 STEP 7 始终会尝试先在 RUN 模式下下载。 如果不希望出现这种情况,则必须将 CPU 置于 STOP 模式。

如果“在 RUN 模式下下载”不支持所做的更改,那么 STEP 7 将提示用户 CPU 必须转到

STOP 模式。

“在 RUN 模式下下载”的先决条件

要向 RUN 模式下的 CPU 中下载程序更改,必须满足以下先决条件:

程序必须编译成功。

必须已在运行 STEP 7 的编程设备和 CPU 之间成功建立通信。

在 V3.0 或更高版本中,目标 CPU 的固件必须支持“在 RUN 模式下下载”功能。

在 RUN 模式下更改程序

要在 RUN 模式下更改程序,必须首先确保 CPU 支持“在 RUN 模式下下载”,并且 CPU

已处于 RUN 模式:

如果要在 RUN 模式下下载程序,请选择以下某种方法:

从“在线”(Online) 菜单中选择“下载到设备”(Download to device) 命令

按下工具栏中的“下载到设备”(Download to device) 按钮

S7-1200 可编程控制器 在线和诊断工具-31 在“项目树”中,右键单击“程序块”并选择“下载到设备 > 软件”(Download to device > Software) 命令。

如果程序已编译成功,STEP 7 会将该程序下载到 CPU 中。

STEP 7 将提示加载程序或取消操作。

如果单击“加载”(Load),则 STEP 7 将把程序下载到 CPU。

下载所选块

光标放在“程序块”(Program blocks) 文件夹上,选择多个块或单个块。

S7-1200 可编程控制器 在线和诊断工具-32 如果在块编辑器中选择下载单个块,那么“操

作”(Action) 列中将只显示“统一下载”(Consistent

download) 一个选项。

可以展开类别行,以确保选择要加载的块。在本例中,仅对离线块进行少量更改,无需加载其它块。

S7-1200 可编程控制器 在线和诊断工具-33 在本例中,需要下载多个块。

说明

在 RUN 模式下,同时可最多下载 10 个块。 如果要下载 10 个以上的块,那么必须将

CPU 置于 STOP 模式。

S7-1200 可编程控制器 在线和诊断工具-34 如果尝试在 RUN 模式下下载,但系统在实际下载前检测出无法执行该操作,则该对话框中将显示“停止模块”(Stop modules) 类别行。

S7-1200 可编程控制器 在线和诊断工具-35 单击“加载”(Load) 按钮,将显示“加载结果”(Load results) 对话框。单击“完成”(Finish)按钮完成下载。

其它块中存在编译错误时下载选定的单个块

如果当其它块中存在编译错误时尝试执行统一下载,则该对话框中将显示一个错误信息, 并禁用加载按钮。

S7-1200 可编程控制器 在线和诊断工具-36

用户必须更正其它块中的编译错误。之后,才会激活“加载”(Load) 按钮。

S7-1200 可编程控制器 在线和诊断工具-37

下载失败时的系统响应

执行“在 RUN 模式下下载”的过程中,如果出现网络连接故障,那么将显示“加载预览”(Load preview) 对话框,如下图所示。

S7-1200 可编程控制器 在线和诊断工具-38

在 RUN 模式下下载程序

在 RUN 模式下下载程序之前,如果发生以下情况,则需考虑 RUN 模式下进行修改对

CPU 运行的影响:

如果删除一个输出的控制逻辑,则在下一次上电循环或切换到 STOP 模式之前,CPU 将始终保持该输出的最终状态。

如果删除了正在运行的高速计数器或脉冲输出函数,则该高速计数器或脉冲输出将继续运行,直至下一次上电循环或切换到 STOP 模式。

在下一次上电循环或者从 STOP 切换到 RUN 模式之前,任何以首次扫描位状态为条件的逻辑都不会执行。首次扫描位只会因切换到 RUN 模式而置位,不受 RUN 模式下下载的影响。

不会覆盖数据块 (DB) 的当前值和/或变量。

说明

CPU 必须支持在 RUN 模式下进行更改,程序的编译必须没有错误,CPU 必须能与

STEP 7 通信,并且 CPU 必须无错误,这样才能在 RUN 模式下下载程序。可在 RUN 模式下对程序块和变量进行以下更改,并将其下载到 CPU 中:

创建、覆盖和删除函数 (FC)、函数块 (FB) 和变量表。

创建和删除数据块 (DB);但是,不会覆盖 DB 的结构更改。 只能覆盖 DB 初始值。 无法在 RUN 模式下下载 Web 服务器 DB(控件或片段)。

覆盖组织块 (OB);但是,不能创建或删除 OB。

在 RUN 模式下,同时可最多下载 10 个块。 如果要下载 10 个以上的块,那么必须将

CPU 置于 STOP 模式。

下载一旦启动,在其完成前 STEP 7 将无法执行其它任务。

由于“在 RUN 模式下下载”,可能导致出错的指令

CPU 中激活了“在 RUN 模式下下载”后,以下指令可能会发生临时错误。 如果 CPU 正准备激活已下载的更改,那么初始化指令时将出现错误。 在此过程中,CPU 将暂停用户程序访问加载存储器的初始化过程,同时完成正在进行的用户程序对加载存储器的访问。完成后,将统一激活所下载的更改。

指令 暂停激活时的响应
DataLogCreate STATUS = W#16#80C0, ERROR = TRUE
DataLogOpen STATUS = W#16#80C0, ERROR = TRUE
DataLogWrite STATUS = W#16#80C0, ERROR = TRUE
DataLogClose STATUS = W#16#80C0, ERROR = TRUE
DataLogNewFile STATUS = W#16#80C0, ERROR = TRUE
READ_DBL RET_VAL = W#16#82C0
WRIT_DBL RET_VAL = W#16#82C0
RTM RET_VAL = 0x80C0

无论何种情况,只要发生错误,指令的 RLO 输出都将失败。 该错误是临时错误。 如果出现错误,则需稍后重试该指令。

说明

而不能在执行 OB 的过程中重试该操作。

在线和诊断工具

状态 LED

CPU 和 I/O 模块使用 LED 提供有关模块或 I/O 的运行状态的信息。

CPU 上的状态 LED

CPU 提供以下状态指示灯:

STOP/RUN

黄色常亮指示 STOP 模式

纯绿色指示 RUN 模式

闪烁(绿色和黄色交替)指示 CPU 处于 STARTUP 模式

ERROR

红色闪烁指示有错误,例如,CPU 内部错误,存储卡错误或组态错误(模块不匹配)

纯红色指示硬件出现故障

MAINT(维护)在每次插入存储卡时闪烁。 然后 CPU 切换到 STOP 模式。 在 CPU

切换到 STOP 模式后,执行以下操作之一以启动存储卡评估:

将 CPU 切换到 RUN 模式

执行存储器复位 (MRES)

CPU 循环上电

也可使用 LED 指令 (页 319)来确定 LED 的状态。

表格 14- 1 CPU 上的状态 LED

说明 STOP/RUN

黄色/绿色

ERROR

红色

MAINT

黄色

断电
启动、自检或固件更新 闪烁

(黄色和绿色交替)

-
停止模式 亮(黄色) - -
说明 STOP/RUN

黄色/绿色

ERROR

红色

MAINT

黄色

运行模式 亮(绿色) - -
取出存储卡 亮(黄色) - 闪烁
出错 亮(黄色或绿色) 闪烁 -
请求维护 亮(黄色或绿色) -
硬件出现故障 亮(黄色)
LED 测试或 CPU 固件出现故障 闪烁

(黄色和绿色交替)

闪烁 闪烁

CPU 还提供了两个可指示 PROFINET 通信状态的 LED。 打开底部端子块的盖子可以看到 PROFINET LED。

Link (绿色)点亮指示连接成功

Rx/Tx (黄色)点亮指示传输活动

CPU 和各数字量信号模块 (SM) 为每个数字量输入和输出提供了 I/O Channel LED。 I/O Channel (绿色)通过点亮或熄灭来指示各输入或输出的状态。

SM 上的状态 LED

此外,各数字量 SM 还提供了指示模块状态的 DIAG LED:

绿色指示模块处于运行状态

红色指示模块有故障或处于非运行状态

各模拟量 SM 为各路模拟量输入和输出提供了 I/O Channel LED。

绿色指示通道已组态且处于激活状态

红色指示个别模拟量输入或输出处于错误状态

此外,各模拟量 SM 还提供有指示模块状态的 DIAG LED:

绿色指示模块处于运行状态

红色指示模块有故障或处于非运行状态

SM 可检测模块的通断电情况(必要时,还可检测现场侧电源)。

转到在线并连接到 CPU

表格 14- 2 信号模块 (SM) 上的状态 LED

说明 DIAG

(红色/绿色)

I/O Channel

(红色/绿色)

现场侧电源关闭 呈红色闪烁 呈红色闪烁
没有组态或更新在进行中 呈绿色闪烁
模块已组态且没有错误 亮(绿色) 亮(绿色)
错误状态 呈红色闪烁 -
I/O 错误(启用诊断时) - 呈红色闪烁
I/O 错误(禁用诊断时) - 亮(绿色)

转到在线并连接到 CPU

装载程序和项目工程数据以及执行下列操作时,编程设备和 CPU 之间必须存在在线连接:

测试用户程序

显示和改变 CPU 的工作模式 (页 735)

显示和 设置 CPU 的日期和日时钟 (页 734)

显示模块信息

比较和同步 (页 737)离线与在线程序块

上传和下载程序块

显示诊断和 诊断缓冲区 (页 736)

通过使用 监视表格 (页 741)监视并修改值来测试用户程序

使用强制表格 强制 CPU 中的值 (页 744)

在线为 PROFINET IO 设备分配名称

要与组态的 CPU 建立在线连接,请单击“项目导航”树中的

CPU,并在“项目”(Project) 视图中单击“转到在线模式”(Go

S7-1200 可编程控制器 在线和诊断工具-39 online) 按钮:

如果这是该 CPU 首次转到在线模式,则必须从“转到在线模式”(Go Online) 对话框中选择 PG/PC 接口的类型以及特定的 PG/PC 接口,然后才能在与该接口中发现的 CPU 建立在线连接。

编程设备已连接到 CPU。 橙色单元指示存在在线连接。 现在,您就可以使用“项目树”和

“在线工具任务卡”中的“在线和诊断”(Online & diagnostics) 工具。

在线为 PROFINET IO 设备分配名称

PROFINET 网络中的设备在分配名称后才可与 CPU 连接。 如果 PROFINET 设备尚未分配名称,或要更改该设备的名称,则可使用“设备和网络”(Devices & networks) 编辑器为该设备分配名称。

对于各 PROFINET IO 设备,必须在 STEP 7 项目(使用“在线和诊断”(Online &

diagnostics) 工具)和 PROFINET IO 设备组态存储器(例如 ET200 S 接口模块组态存储器)中为该设备分配相同的名称。 如果名称缺失或两个位置中的名称不匹配,则PROFINET IO 数据交换模式将不会运行。

在线为 PROFINET IO 设备分配名称

S7-1200 可编程控制器 在线和诊断工具-40 在“设备和网络”(Devices &

networks) 编辑器中,右键单击所需的 PROFINET IO 设备,并选择“在线和诊

断”(Online & diagnostics)。

S7-1200 可编程控制器 在线和诊断工具-41 在“在线和诊断”(Online &

diagnostics) 对话框中,选择以下菜单项:

“功能”(Functions)

“分配名称”(Assign name)

单击“网络中的可访问设

备”(Accessible devices in the

network) 图标以显示网络中的所有 PROFINET IO 设备。

S7-1200 可编程控制器 在线和诊断工具-42 在显示的列表中,单击所需的 PROFINET IO 设备,然后单击“分配名称”(Assign

name) 按钮将该名称写入PROFINET IO 设备组态存储器。

设置 IP 地址和日时钟

设置 IP 地址和日时钟

S7-1200 可编程控制器 在线和诊断工具-43 S7-1200 可编程控制器 在线和诊断工具-44 可以设置在线 CPU 中的 IP 地址 (页 138)和时间。 访问在线 CPU“项目树”中的“在线和诊断”(Online & diagnostics) 之后,可以显示或更改 IP 地址。 还可以显示或设置在线 CPU 的时间和日期参数。

说明

该特性仅对只具有 MAC 地址(还未分配 IP 地址)或已恢复出厂设置的 CPU 可用。

复位为出厂设置

可在以下情形下将 S7-1200 复位为原始出厂设置:

CPU 中未插入存储卡。

CPU 有在线连接。

CPU 处于 STOP 模式。

说明

如果 CPU 处于 RUN 模式,而用户要启动复位操作,则可在接受确认提示后将其切换到 STOP 模式。

操作步骤

要将 CPU 复位为出厂设置,请按以下步骤操作:

打开 CPU 的“在线和诊断”(Online and Diagnostics) 视图。

从“功能”(Functions) 文件夹中选择“复位为出厂设置”(Reset to factory settings)。

在线 CPU 的 CPU 操作员面板

如要保留 IP 地址,请选中“保留 IP 地址”(Keep IP address) 复选框;如果要删除 IP 地址,则选中“复位 IP 地址”(Reset IP address) 复选框。

单击“复位”(Reset) 按钮。

单击“确定”(OK) 接受确认提示。

结果

模块会根据需要切换到 STOP 模式,并被复位为出厂设置:

工作存储器、内部装载存储器以及所有操作数区域都将被清空。

所有参数都复位为其默认值。

诊断缓冲区被清空。

时间被复位。

IP 地址将根据用户设置被保留或删除。 (MAC 地址是固定的,始终不变。)

在线 CPU 的 CPU 操作员面板

S7-1200 可编程控制器 在线和诊断工具-45 “CPU 操作员面板”(CPU operator panel) 显示在线 CPU 的工作模式

(STOP 或 RUN)。 该面板还显示 CPU 是否有错误或值是否处于强制状态。

使用“在线工具”(Online Tools) 任务卡的 CPU 操作面板可更改在线 CPU 的工作模式。 只要 CPU 处于在线模式,便可访问“在线工具”(Online Tools) 任务卡。

监视循环时间和存储器使用情况

监视循环时间和存储器使用情况

S7-1200 可编程控制器 在线和诊断工具-46 S7-1200 可编程控制器 在线和诊断工具-47 可以监视在线 CPU 的循环时间和存储器使用情况。连接到在线 CPU 后,打开

“在线工具”(Online tools) 任

务卡查看以下测量值:

循环时间

存储器使用情况

S7-1200 可编程控制器 在线和诊断工具-48 S7-1200 可编程控制器 在线和诊断工具-49

显示 CPU 中的诊断事件

使用诊断缓冲区可以查看 CPU 的近期活动。 可通过“在线和诊断”(Online & Diagnostics)

访问项目树中在线 CPU 的诊断缓冲区。 它包含以下条目:

诊断事件

CPU 工作模式改变(切换到 STOP 或 RUN 模式)

比较离线 CPU 与在线 CPU

S7-1200 可编程控制器 在线和诊断工具-50 第一个条目包含最新的事件。 诊断缓冲区中的各条目均包含记录事件的日期和时间以及一段说明。

最大条目数由 CPU 决定。 最多支持

50 个条目。

仅永久存储诊断缓冲区中 10 个最新的事件。 将 CPU 复位为工厂设置会通过删除条目的方式复位诊断缓冲区。

还可以使用 GET_DIAG 指令 (页 324)来采集诊断信息。

比较离线 CPU 与在线 CPU

可以将在线 CPU 中的代码块与项目中的代码块进行比较。 如果项目中的代码块与在线CPU 的代码块不匹配,则可通过“比较”编辑器使项目与在线 CPU 同步,具体方法可以是将项目的代码块下载到 CPU 中,或者从项目中删除在线 CPU 中不存在的块。

S7-1200 可编程控制器 在线和诊断工具-51 在项目中选择 CPU。

使用“比较离线/在线”(Compare Offline/online) 命令打开“比较”(Compare) 编辑器。 (通过“工具”(Tools) 菜单或右键单击项目中 CPU 的方式访问该命令。)

S7-1200 可编程控制器 在线和诊断工具-52 单击某对象的“操作”(Action) 列,在删除对象、不执行任何操作或将该对象下载到设备这三项中进行选择。

单击“同步”(Synchronize) 按钮装载代码块。

S7-1200 可编程控制器 在线和诊断工具-53 在“比较目标”(Compare to) 列中右键单击一个对象, 并选择“开始详细比较”(Start detailed comparison) 按钮可并排显示代码块。

详细比较功能会高亮显示在线 CPU 代码块与项目中

CPU 代码块之间的差异。

监视和修改 CPU 中的值

STEP 7 提供了用于监视 CPU 的在线工具:

您可以显示或监视变量的当前值。 监视功能不会改变程序顺序。 它为用户提供有关

CPU 中程序的顺序以及数据信息。

还可以使用其它功能控制用户程序的顺序和数据:

可以修改在线 CPU 中变量的值,了解用户程序如何响应。

可以将外围设备输出(如 Q0.1:P 或“Start”:P)强制为特定值。

可以在 STOP 模式下启用输出。

说明

使用控制功能时必须始终小心谨慎。 这些功能可能会严重影响用户/系统程序的执行。

表格 14- 3 STEP 7 编辑器的在线功能

编辑器 监视 修改 强制
监视表格
强制表格
程序编辑器
变量表
DB 编辑器

转到在线模式监视 CPU 中的值

S7-1200 可编程控制器 在线和诊断工具-54 S7-1200 可编程控制器 在线和诊断工具-55 要监视变量,必须在线连接到 CPU。 只需单击工具栏中的“转到在线”(Go online) 按钮。连接到 CPU 后,STEP 7 将工作区的标题变为橙色。

项目树显示离线项目和在线 CPU 的比较结果。 绿色圆点表示

CPU 与项目同步,即二者都具有相同的组态和用户程序。

变量表会显示变量。 监视表格也可以显示变量以及直接地址。

S7-1200 可编程控制器 在线和诊断工具-56

S7-1200 可编程控制器 在线和诊断工具-57 要监视用户程序的执行并显示变量的值,请单击工具栏中的“全部监视”(Monitor all)

S7-1200 可编程控制器 在线和诊断工具-58 按钮。

“监视值”(Monitor value) 字段中将显示每个变量的值。

显示程序编辑器中的状态

还可以在 LAD 和 FBD 程序编辑器中监视各变量的状态。使用编辑器栏显示 LAD 编辑器。使用编辑器栏,可以在打开的编辑器之间切换视图,而无需打开或关闭编辑器。

在程序编辑器的工具栏中,单击“接通/断开监视”(Monitoring on/off) 按钮,以显示用户程序的状态。

S7-1200 可编程控制器 在线和诊断工具-59 S7-1200 可编程控制器 在线和诊断工具-60

程序编辑器中的网络以绿色显示能流。

还可以右键单击指令或参数,以修改指令值。

捕获 DB 的在线值以重设起始值

可以捕获在线 CPU 中受监视的当前值,使其成为全局 DB 的起始值。

必须能够在线连接到 CPU。

CPU 必须处于 RUN 模式。

必须已在 STEP 7 中打开相应 DB。

S7-1200 可编程控制器 在线和诊断工具-61 使用“显示监视值的快照”(Show a snapshot of the monitored value) 按钮捕获 DB 中所选变量的当前值。 然后可以将这些值复制到 DB 的“起始值”(Start value) 列。

在 DB 编辑器中单击“监视所有变量”(Monitor all tags) 按钮。 “监视值”(Monitor value)

列会显示当前数据值。

单击“显示监视值的快照”(Show a snapshot of the monitored value) 按钮显示“快照”(Snapshot) 列中的当前值。

单击“全部监视”(Monitor all) 按钮停止监视 CPU 中的数据。

为变量复制“快照”(Snapshot) 列中的值。

选择要复制的值。

右键单击选中的值,以显示右键快捷菜单。

选择“复制”(Copy) 命令。

将复制的值粘贴到该变量的相应“起始值”(Start value) 列。 (右键单击单元格并从右键快捷菜单中选择“粘贴”(Paste)。)

保存项目,将复制的值组态为该 DB 的新起始值。

编译 DB 并将其下载到 CPU。 DB 会在 CPU 进入 RUN 模式之后使用新起始值。

说明

始终从 CPU 中复制要在“监视值”(Monitor value) 列中显示的值。 STEP 7 不会检查所有值是否来自于 CPU 的同一扫描周期。

使用监视表格来监视和修改 CPU 中的值

通过监视表格可以在 CPU 执行用户程序时对数据点执行监视和控制功能。 根据监视或控制功能的不同,这些数据点可以是过程映像(I 或 Q)、M、DB 或物理输入 (I_:P)。 由于监视功能只能显示从 Q 存储器写入的最后一个值,并且不会从物理输出读取实际值,因此无法准确监视物理输出 (Q_:P)。

监视功能不会改变程序顺序。 它为用户提供有关 CPU 中程序的顺序以及数据信息。

控制功能允许用户控制程序的顺序和数据。 使用控制功能时必须小心谨慎。 这些功能可能会严重影响用户/系统程序的执行。 三种控制功能是修改、强制和在 STOP 模式下启用输出。

使用监视表格可以执行以下在线功能:

监视变量的状态

修改个别变量的值

选择监视或修改变量的时间:

扫描循环开始时: 在该扫描循环开始时读取或写入值

扫描循环结束时: 在该扫描循环结束时读取或写入值

切换到停止

S7-1200 可编程控制器 在线和诊断工具-62 要创建监视表格:

双击“添加新监视表格”(Add new watch table) 打开新监视表格。

输入变量名称将变量添加到监视表格。可使用以下选项监视变量:

“监视全部”(Monitor all): 该命令用于启动对激活的监视表格中的可见变量进行监视。

“立即监视”(Monitor now): 该命令用于启动对激活的监视表格中的可见变量进行监视。 监视表格仅立即监视变量一次。

可使用以下选项修改变量:

“修改为 0”(Modify to 0) 将所选地址的值设置为“0”。

“修改为 1”(Modify to 1) 将所选地址的值设置为“1”。

“立即修改”(Modify now) 立即修改所选地址的值一个扫描周期。

“使用触发器修改”(Modify with trigger) 修改所选地址的值。

该功能不提供反馈来指示实际上是否修改了所选地址。 如果需要修改反馈,则使用“立即修改”(Modify now) 功能。

“启用外围设备输出”(Enable peripheral outputs) 禁用输出禁用命令并且仅在 CPU 处于 STOP 模式时可用。

要监视变量,必须在线连接到 CPU。

S7-1200 可编程控制器 在线和诊断工具-63

可以使用监视表格顶部的按钮选择各种功能。

输入要监视的变量名称并从该下拉选择项中选择一种显示格式。 在线连接到 CPU 时,单击“监视”(Monitor) 按钮将在“监视值”(Monitor value) 域中显示数据点的实际值。

监视或修改 PLC 变量时使用触发器

触发决定将在扫描周期中的哪个点监视或修改所选地址。

表格 14- 4 触发器类型

触发器 说明
永久 连续采集数据
扫描周期开始时 永久: CPU 读取输入后,在扫描周期开始时连续采集数据
一次: CPU 读取输入后,在扫描周期开始时采集一次数据
扫描周期结束时 永久: CPU 写入输出前,在扫描周期结束时连续采集数据
一次: CPU 写入输出前,在扫描周期结束时采集一次数据
切换到 STOP 时 永久: CPU 切换到 STOP 时连续采集数据
一次: CPU 切换到 STOP 后采集一次数据

要在给定触发点修改 PLC 变量,请选择周期开始或结束。

修改输出: 触发修改输出事件的最佳时机是在扫描周期结束且 CPU 马上要写入输出之前的时间。

在扫描周期开始时监视输出的值以确定写入到物理输出中的值。 此外,在 CPU 将值写入到物理输出前监视输出以检查程序逻辑并与实际 I/O 行为进行比较。

修改输入: 触发修改输入事件的最佳时机是在周期开始、CPU 刚读取输入且用户程序要使用输入值之前的时间。

如果在扫描周期开始时修改输入,则还应在扫描周期结束时监视输入值,以确保扫描周期结束时的输入值自扫描周期开始起未改变。 如果值不同,则用户程序可能会错误地写入到输入。

要诊断 CPU 转到 STOP 的可能原因,请使用“切换到 STOP”(Transition to STOP) 触发器捕捉上一个过程值。

在 STOP 模式下启用输出

监视表格允许用户在 CPU 处于 STOP 模式时写入输出。 通过该功能可以检查输出的接线并检验连接到输出引脚的电线是将高电平信号还是低电平信号引入与其相连的过程设备端子。

S7-1200 可编程控制器 在线和诊断工具-64 警告
即使在 CPU 处于 STOP 模式时,启用物理输出也可激活相连的过程点。

输出启用时,可以在 STOP 模式下修改输出的状态。 如果输出禁用,则无法在 STOP 模式下修改输出。

要启用在 STOP 模式下修改输出,请选择“在线”(Online) 菜单中的“修改”(Modify) 命令的“启用外围设备输出”(Enable peripheral outputs) 选项或右键单击监视表格行。

如果已组态分布式 I/O,则无法在 STOP 模式下启用输出。 若尝试启动,将返回错误。

将 CPU 设置为 RUN 模式会禁用“启用外围设备输出”(Enable peripheral outputs) 选项。

如果任何输入或输出被强制,则处于 STOP 模式时不允许 CPU 启用输出。 必须先取消强制功能。

CPU 中的强制值

使用强制表格

强制表格提供了“强制”功能,能够将与外围设备输入或外围设备输出地址对应的输入或输 出点的值改写成特定的值。 CPU 在执行用户程序前将此强制值应用到输入过程映像并在将输出写入到模块前将其应用到输出过程映像。

说明

强制值存储在 CPU 中,而不是强制表格中。

不能强制输入(或“I”地址)或输出(或“Q”地址)。 但是,可以强制外围设备输入或外围设备输出。 强制表格将自动在地址后面添加一个“:P”(例如:“On”:P 或“Run”:P)。

S7-1200 可编程控制器 在线和诊断工具-65

在“强制值”(Force value) 单元格中,输入要强制的输入值或输出值。 然后可以使用“强制”(Force) 列中的复选框启用对输入或输出的强制功能。

S7-1200 可编程控制器 在线和诊断工具-66 使用“启动或替换强制”(Start or replace forcing) 按钮强制设置强制表格中的变量值。 单击“停止强制”(Stop forcing) 按钮重置变量值。

S7-1200 可编程控制器 在线和诊断工具-67 在强制表格中,可以监视输入的强制值的状态。 但是不能监视输出的强制值。还可以在程序编辑器中查看强制值的状态。

注意
在强制表格中强制输入或输出时,强制操作将变成项目组态的一部分。 如果关闭STEP 7,被强制元素仍会在 CPU 程序中保持激活状态,直至这些元素被清除。 要清除这些被强制元素,必须使用 STEP 7 连接到在线 CPU,然后使用强制表格断开或停止对

这些元素的强制功能。

强制功能的操作

CPU 允许用户在强制表格中指定物理输入或输出地址(I_:P 或 Q_:P)然后启动强制功能,以此来强制输入和输出点。

在程序中,物理输入的读取值被强制值覆盖。 程序在处理过程中使用该强制值。 程序写入物理输出时,输出值被强制值覆盖。 强制值出现在物理输出端并被过程使用。

在强制表格中强制输入或输出时,强制操作将变成用户程序的一部分。 即使编程软件已关闭,强制选项在运行的 CPU 程序中仍保持激活,直到在线连接到编程软件并停止强制功能将其清除为止。 含有通过存储卡装载到另一个 CPU 的强制点的程序将继续强制程序中选择的点。

如果 CPU 正在执行写保护存储卡上的用户程序,则无法通过监视表格初始化或更改对

I/O 的强制,因为用户无法改写写保护用户程序中的值。 强制写保护值的任何尝试都将生成错误。 如果使用存储卡传送用户程序,则该存储卡上的所有被强制元素都将被传送到

CPU。

说明

无法强制分配给 HSC、PWM 和 PTO 的数字 I/O 点

在设备配置期间分配高速计数器 (HSC)、脉冲宽度调制 (PWM) 和脉冲串输出 (PTO) 设备使用的数字 I/O 点。 将数字量 I/O 点的地址分配给这些设备之后,无法通过监视表格的强制功能修改所分配的 I/O 点的地址值。

 

启动 RUN

强制功能不影响 I 存储区的清除。 ① 将 Q 存储器写入到物理输出时,CPU

在更新输出时应用强制值。

强制功能不影响输出值的初始化。 ② 读取物理输入时,CPU 仅在将这些输入

复制到 I 存储器前应用强制值。

C 启动 OB 执行期间,CPU 在用户程 用户程序(程序循环 OB)执行期间,
序访问物理输入时应用强制值。 CPU 在用户程序访问物理输入或写入物
理输出时应用强制值。
D 不影响将中断事件存储到队列。 强制功能不影响通信请求和自检诊断的
处理。
E 不影响写入到输出的启用。 不影响在扫描周期的任何时段内处理中
断。

在 RUN 模式下下载

该 CPU 支持“在 RUN 模式下下载”(Download in RUN mode)。 此功能是为了让您以对过程干扰最小的方式对控制该过程的程序进行小幅改动。 但是,执行此功能也可以对程序进行重大更改,这可能会导致损坏甚至危险情况。

S7-1200 可编程控制器 在线和诊断工具-68 警告
在 RUN 模式下向 CPU 中下载更改时,这些更改将立即影响过程操作。 在 RUN 模式下更改程序可能会引起意外的系统操作,进而导致人员死亡、重伤和/或设备损坏。

在 RUN 模式下执行下载的人员必须经过授权,并清楚 RUN 模式下的更改对系统运行的影响。

利用“在 RUN 模式下下载”功能,可在不切换为 STOP 模式的情况下对程序进行更改,并将其下载到 CPU 中:

可以在不停机的情况下对当前过程进行少量更改(例如,更改一个参数值)。

可利用此功能更快速地调试程序(例如,插入一段常开或常闭开关逻辑)

可在 RUN 模式下进行下列程序块和变量更改,并将其下载到 CPU 中:

创建、覆盖和删除函数 (FC)、函数块 (FB) 和变量表。

创建和删除数据块 (DB);但是,不会覆盖 DB 的结构更改。 只能覆盖 DB 初始值。无法在 RUN 模式下下载 Web 服务器 DB(控件或片段)。

覆盖组织块 (OB);但是,不能创建或删除 OB。

在 RUN 模式下最多可同时下载 10 个块。 如果要下载 10 个以上的块,那么必须将 CPU

置于 STOP 模式。

如果将更改下载到实际过程(相对仿真过程而言,程序调试期间可能会进行仿真),在下载前必须全面考虑可能会对机器操作员和机器造成的安全后果,这一点非常重要。

说明

如果 CPU 处于 RUN 模式,且进行了程序更改,那么 STEP 7 始终会尝试先在 RUN 模式下下载。 如果不希望出现这种情况,则必须将 CPU 置于 STOP 模式。

如果“在 RUN 模式下下载”不支持所做的更改,那么 STEP 7 将提示用户 CPU 必须转到

STOP 模式。

“在 RUN 模式下下载”的先决条件

要向 RUN 模式下的 CPU 中下载程序更改,必须满足以下先决条件:

程序必须编译成功。

必须已在运行 STEP 7 的编程设备和 CPU 之间成功建立通信。

在 V3.0 或更高版本中,目标 CPU 的固件必须支持“在 RUN 模式下下载”功能。

在 RUN 模式下更改程序

要在 RUN 模式下更改程序,必须首先确保 CPU 支持“在 RUN 模式下下载”,并且 CPU

已处于 RUN 模式:

如果要在 RUN 模式下下载程序,请选择以下某种方法:

从“在线”(Online) 菜单中选择“下载到设备”(Download to device) 命令

按下工具栏中的“下载到设备”(Download to device) 按钮

S7-1200 可编程控制器 在线和诊断工具-69 在“项目树”中,右键单击“程序块”并选择“下载到设备 > 软件”(Download to device > Software) 命令。

如果程序已编译成功,STEP 7 会将该程序下载到 CPU 中。

STEP 7 将提示加载程序或取消操作。

如果单击“加载”(Load),则 STEP 7 将把程序下载到 CPU。

下载所选块

光标放在“程序块”(Program blocks) 文件夹上,选择多个块或单个块。

S7-1200 可编程控制器 在线和诊断工具-70 如果在块编辑器中选择下载单个块,那么“操

作”(Action) 列中将只显示“统一下载”(Consistent

download) 一个选项。

可以展开类别行,以确保选择要加载的块。在本例中,仅对离线块进行少量更改,无需加载其它块。

S7-1200 可编程控制器 在线和诊断工具-71 在本例中,需要下载多个块。

说明

在 RUN 模式下,同时可最多下载 10 个块。 如果要下载 10 个以上的块,那么必须将

CPU 置于 STOP 模式。

S7-1200 可编程控制器 在线和诊断工具-72 如果尝试在 RUN 模式下下载,但系统在实际下载前检测出无法执行该操作,则该对话框中将显示“停止模块”(Stop modules) 类别行。

S7-1200 可编程控制器 在线和诊断工具-73 单击“加载”(Load) 按钮,将显示“加载结果”(Load results) 对话框。单击“完成”(Finish)按钮完成下载。

其它块中存在编译错误时下载选定的单个块

如果当其它块中存在编译错误时尝试执行统一下载,则该对话框中将显示一个错误信息, 并禁用加载按钮。

S7-1200 可编程控制器 在线和诊断工具-74

用户必须更正其它块中的编译错误。之后,才会激活“加载”(Load) 按钮。

S7-1200 可编程控制器 在线和诊断工具-75

下载失败时的系统响应

执行“在 RUN 模式下下载”的过程中,如果出现网络连接故障,那么将显示“加载预览”(Load preview) 对话框,如下图所示。

S7-1200 可编程控制器 在线和诊断工具-76

在 RUN 模式下下载程序

在 RUN 模式下下载程序之前,如果发生以下情况,则需考虑 RUN 模式下进行修改对

CPU 运行的影响:

如果删除一个输出的控制逻辑,则在下一次上电循环或切换到 STOP 模式之前,CPU 将始终保持该输出的最终状态。

如果删除了正在运行的高速计数器或脉冲输出函数,则该高速计数器或脉冲输出将继续运行,直至下一次上电循环或切换到 STOP 模式。

在下一次上电循环或者从 STOP 切换到 RUN 模式之前,任何以首次扫描位状态为条件的逻辑都不会执行。首次扫描位只会因切换到 RUN 模式而置位,不受 RUN 模式下下载的影响。

不会覆盖数据块 (DB) 的当前值和/或变量。

说明

CPU 必须支持在 RUN 模式下进行更改,程序的编译必须没有错误,CPU 必须能与

STEP 7 通信,并且 CPU 必须无错误,这样才能在 RUN 模式下下载程序。可在 RUN 模式下对程序块和变量进行以下更改,并将其下载到 CPU 中:

创建、覆盖和删除函数 (FC)、函数块 (FB) 和变量表。

创建和删除数据块 (DB);但是,不会覆盖 DB 的结构更改。 只能覆盖 DB 初始值。 无法在 RUN 模式下下载 Web 服务器 DB(控件或片段)。

覆盖组织块 (OB);但是,不能创建或删除 OB。

在 RUN 模式下,同时可最多下载 10 个块。 如果要下载 10 个以上的块,那么必须将

CPU 置于 STOP 模式。

下载一旦启动,在其完成前 STEP 7 将无法执行其它任务。

由于“在 RUN 模式下下载”,可能导致出错的指令

CPU 中激活了“在 RUN 模式下下载”后,以下指令可能会发生临时错误。 如果 CPU 正准备激活已下载的更改,那么初始化指令时将出现错误。 在此过程中,CPU 将暂停用户程序访问加载存储器的初始化过程,同时完成正在进行的用户程序对加载存储器的访问。完成后,将统一激活所下载的更改。

指令 暂停激活时的响应
DataLogCreate STATUS = W#16#80C0, ERROR = TRUE
DataLogOpen STATUS = W#16#80C0, ERROR = TRUE
DataLogWrite STATUS = W#16#80C0, ERROR = TRUE
DataLogClose STATUS = W#16#80C0, ERROR = TRUE
DataLogNewFile STATUS = W#16#80C0, ERROR = TRUE
READ_DBL RET_VAL = W#16#82C0
WRIT_DBL RET_VAL = W#16#82C0
RTM RET_VAL = 0x80C0

无论何种情况,只要发生错误,指令的 RLO 输出都将失败。 该错误是临时错误。 如果出现错误,则需稍后重试该指令。

说明

而不能在执行 OB 的过程中重试该操作。

weinxin
plc入门知识问答
每一个PLC工程师都应该关注的微信公众账号,只需输入您的问题,就会有答案

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: