西门子1200PLC如何在RUN模式下下载?

2019年1月7日14:08:26 发表评论 307 阅读

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

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

  • 可以在不停机的情况下对当前过程进行少量更改(例如,更改一个参数值)。
  • 可利用此功能更快速地调试程序(例如,插入一段常开或常闭开关逻辑) 可在RUN模式下进行下列程序块和变量更改,并将其下载到 CPU 中:
  • 创建、覆盖和删除函数(FC)、函数块(FB) 和变量表。
  • 创建、删除以及覆盖数据块(DB)和函数块 (FB) 的背景数据块。 可添加到数据块结构并在 RUN 模式下下载它们。 根据组态设置 ,CPU 可维持现有块变量的值并将新的数据块变量初始化为各自的初始值,或者 CPU 将所有数据块变量设置为初始值。 无法在 RUN 模式下下载 Web 服务器 DB(控件或片段)。
  • 覆盖组织块(OB);但是,不能创建或删除OB。

在RUN模式下,您一次最多可下载二十个块。 如果要下载的块多于二十个,必须将CPU置于STOP模式。

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

说明

如果 CPU 处于 RUN 模式,且进行了程序更改,则 STEP 7 始终会尝试先在 RUN模式下下载。 如果不希望出现这种情况,则必须将 CPU 置于 STOP 模式。如果“在 RUN 模式下下载”不支持所做的更改,那么STEP 7将提示用户 CPU 必须转到STOP 模式。

 RUN 模式下下载的先决条件

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

  • CPU版本为V3.0 或更高版本

说明

要在 RUN 模式下修改现有块以及下载扩展块接口,CPU 版本必须为 V4.0或更高版本。

  • 程序必须编译成功。
  • 必须已在运行STEP7 的编程设备和 CPU 之间成功建立通信。

 RUN 模式下更改程序

要在 RUN 模式下更改程序,首先必须确保 CPU 和程序符合先决条件,然后按照以下步骤操作:

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

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

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

–  在“项目树”中,右键单击“程序块”并选择“下载到设备 > 软件”(Download to device >

Software) 命令。

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

  1.  STEP 7 将提示您加载程序或取消操作时,单击“加载”(Load) 将程序下载到CPU。

下载所选块

在“程序块”(Program blocks) 文件夹中,可以选择单个块或选择要下载的块。

如果选择下载单个块,则“操 作”(Action) 列中将只显示“统一下载”(Consistent download)  一个选项。 可以展开类别行,以确保选择 要加载的块。 在本例中,仅对离线块进行少量更改,无需加载其它块。在本例中,需要下载多个块。

说明

在 RUN 模式下,您一次最多可下载二十个块。 如果要下载的块多于二十个,必须将CPU 置于 STOP 模式。

如果尝试在 RUN 模式下下载,但系统在实际下 载前检测出无法执行该操作, 则该对话框中将显示“停止模 块”(Stop modules) 类别行。

单击“加载”(Load) 按钮,将显示“加载结果”(Loa d results) 对话框。 单击“完成”(Finish) 按钮完成下载。

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

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

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

在 RUN 模式下修改和下载现有块

利用“在 RUN 模式下下载”功能,您可以在数据块和函数块中添加和修改变量,然后在RUN 模式下将更改的块下载到 CPU。

下载而不重新初始化

每个数据块和函数块都有一定大小的预留存储器,可用来向随后在 RUN 模式下下载的块中添加变量。 默认情况下,存储器预留区域的初始大小为 100 字节。 您可以向数据中添加其它变量,直至达到存储器预留区域的大小,并在 RUN 模式下将扩展块下载到 CPU。 如果需要在块中为附加变量提供更多存储空间,也可以增大存储器预留区域。 如果添加的变量超过了已分配的存储空间,则无法在 RUN 模式下将扩展块下载到CPU中。

利用“下载而不重新初始化”功能,您可以通过添加更多的数据块变量来扩展数据块并在 RUN 模式下下载扩展数据块。 这样,您便可向数据块中添加变量并下载该数据块而不重新初始化程序。 CPU 将保留现有数据块变量的值并将新添加的变量初始化为其起始值。

要为 CPU 处于 RUN 模式的在线项目启用该功能,请按照以下步骤操作:

  1. 在 STEP 7 项目树的“程序块”(Program blocks)文件夹中,打开块。
  2. 单击块编辑器中的“下载而不重新初始化”(Download withoutreinitialization)切换按钮启用该功能。
  3. 单击提示中的“确定”(OK) 以确认选择。
  4. 向块接口添加变量并在 RUN 模式下下载该块。 存储器预留区域允许多少新变量,您就可以添加并下载多少新变量。

如果向块中添加的字节数超过为存储器预留区域组态的字节数,则尝试在 RUN 模式下下载块时,STEP 7 会显示错误。 您必须编辑块属性,增大存储空间。 在启用“下载而不重新初始化”功能时,不能删除现有条目或修改块的“存储器预留区域”。 要禁用“下载而不重新初始化”功能,请按照以下步骤操作:

  1.  单击块编辑器中的“下载而不重新初始化”(Download withoutreinitialization)切换按钮禁用该功能。 (禁用后,图标周围的框会消失:) )
  2. 单击提示中的“确定”(OK) 以确认选择。
  1. 下载该块。 在下载对话框中,必须选择“重新初始化”(reinitialize)以下载该扩展块。 下载过程随即将所有的现有块变量和新块变量重新初始化为其起始值。

下载保持性块变量

在 RUN 模式下下载保持性块变量需要分配保持性存储器预留区域。 要组态该保持性存储器预留区域,请按照以下步骤操作:

  1. 在STEP 7 项目树的“程序块”(Program blocks)

文件夹中,右键单击该块并在上下文菜单中选择“属性”(Properties)。

  1. 选择“下载而不重新初始化”(Download without reinitialization)属性。
  2. 选中“启用下载而不重新初始化保持性变量”(Enable download withoutreinitialization for retentive tags) 复选框。
  3. 组态为保持性存储器预留区域提供的字节数。
  4.  单击“确定”(OK)保存更改。
  5. 向数据块中添加保持性数据块变量并在 RUN模式下下载该数据块。 保持性存储器预留区域允许多少新保持性数据块变量,您就可以添加并下载多少新保 持性数据块变量。

如果向块中添加的保持性字节数超过为保持性存储器预留区域组态的字节数,则尝试在 RUN 模式下下载块时,STEP 7 会显示错误。 您向保持性存储器预留区域中添加的保持性块变量不能超过区域大小,这样才能在 RUN 模式下下载这些变量。

下载扩展的保持性块变量时,变量将包含其当前值。

为新块组态保留存储空间大小

新数据块的默认存储器预留区域的大小为 100 字节。 创建新块时,预留区域提供 100、个字节。 如果要更改新块的存储器预留区域大小,则可在 PLC 编程设置中更改设置:

  1. 在STEP 7 中选择 选项 > 设置”(Options > Settings) 菜单命令。
  2. 在“设置”(Settings) 对话框中,展开“PLC 编程”(PLCprogramming)并选择“常规”(General)。
  1. 在“下载而不重新初始化”(Download withoutreinitialization)部分,输入存储器预留区域的字节数。创建新块时,STEP 7 使用为新块输入的存储器预留区域组态。

限制

在 RUN 模式下编辑和下载块时,以下限制适用:

  • 通过添加新变量扩展块接口并在RUN模式下下载仅适用于优化块 。
  • 如果不重新初始化,则无法在RUN模式下更改块结构并下载已更改的块。 将新成员添加到 Struct变量、更改变量名称、数组大小、数据类型或保持性状态都需要重新初始化该块才能在RUN模式下下载该块。 对于现有块变量,可以执行并且在RUN模式下下载而不重新初始化的唯一修改是对起始值(数据块)、默认值(函数块)或 注释的更改。

说明

修改块并在 RUN 模式下下载这些块是 S7-1200 CPU V4.0 的新功能。 在 V4.0之前,只能在 STOP 模式下下载已修改的块。

  1. 在 RUN 模式下下载的新块变量数不能超过存储器预留区域可容纳的数目。
  2. 在RUN模式下下载的新的保持性块变量数不能超过保持性存储器预留区域可容纳的数目。

下载失败时的系统响应

执行“在 RUN 模式下下载”的过程中,如果出现网络连接故障,则 STEP 7将显示以下“加载预览”(Load preview) 对话框:

 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 模式下,您一次最多可下载二十个块。 如果要下载的块多于二十个,必须将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: