配方管理器

概述

配方管理器提供功能来处理用户定义的以下列表:项目变量、指定的配方定义、配方定义中这些变量的定值集、指定的配方。

您可以使用配方来修改或读取控制器上特定变量集(配方定义)的配方值。也可从文件载入它们,或将将它们保存至文件。可使用您必须相应配置的可视化元素进行这些交互(输入配置执行命令)。您也可使用应用程序中的特定配方命令

如果选择了配方,验证配方是否适合将要控制的过程。

 警告
意外的设备操作
  • 对安装的应用程序和设备执行安全分析。
  • 验证配方是否适合过程和设备或所具有的功能。
  • 提供适当的参数,尤其是用于限制和其他安全相关元素的参数。
  • 验证所有传感器和执行器是否与所选配方兼容。
  • 在验证和调试期间彻底测试所有功能。
  • 根据安全分析与适用法规和规范为关键控制功能(紧急停止、超限情况等)提供独立路径。
未按说明操作可能导致人身伤亡或设备损坏等严重后果。

默认情况下,在下载期间,将把配方管理器载入控制器。它将在应用程序于控制器上运行时,处理配方的写入和读取。但是,仅将配方用于在系统启动过程中(即 EcoStruxure Machine Expert 仍连接到控制器时)交换参数无需将配方管理器载入控制器。您可为此使用选项 PLC 中的配方管理停用其下载。然后将由标准在线命令和服务来处理配方值的写入和读取。如果出于运行时期间应用程序需要,配方管理必须在控制器上运行,则 RecipeCommands 功能块用于处理配方命令。

有关各种在线模式下配方行为的说明,请参阅配方定义一章。

如果配方管理器位于配方影响的应用程序之外的另一个控制器上,则将使用数据服务器读取/写入配方中包含的变量。变量读写同步完成。在读取/写入后通过调用 g_RecipeManager.LastError,您可验证是否成功执行传输(在该情况下 g_RecipeManager.LastError=0)。

工具树中的配方管理对象

要将配方管理器对象添加至工具树,可选择应用程序节点,单击绿色加号按钮并执行命令添加其他对象... > 配方管理器...。通过单击添加确认 Add Recipe Manager 对话框,然后配方管理器节点将插入应用程序节点下。

您可将一个或数个配方定义对象添加至配方管理器节点。为此,可单击配方管理器节点的绿色加号按钮,并执行命令配方定义...。在 Add Recipe Definition 对话框中输入名称,并单击添加。双击节点以查看并编辑配方定义,包括单独编辑器窗口中的特定配方。有关各种在线模式下配方行为的说明,请参阅配方定义一章。

配方管理器编辑器,存储选项卡

默认情况下,配方将根据配方管理器编辑器的存储选项卡中的设置自动存储至文件:

参数

描述

存储类型

选择文本二进制存储类型。

文件路径

指定配方在控制器或本地系统文件中的保存位置。

注: 对于在仿真模式中工作的配方管理器,文件路径必须以点号 (.) 开头,例如./Rcp

文件扩展名

指定配方文件的文件扩展名。

注: 也可通过可视化元素上的输入来定义存储文件(输入配置 - 执行命令 - 保存配方/从文件载入配方)。但是,当在可视化配置中定义该文件的名称时,不要在配方管理器中覆盖在此定义的 * .txtrecipe / * .rcp 文件。

参数

描述

分隔符

对于文本存储,为存储选择的列将由分隔符来分离。选择提议的 6 个选项中的 1 个。

可用列

配方定义的所有列,由相应标题来表示。

选择列

配方定义的选择列,即要保存的列。

在该部分中至少包含具有当前值的列。无法将其取消选择。

箭头按钮

通过选择相应的条目并单击箭头按钮,可将其他列移位至右侧或左侧。您也可通过使用双箭头按钮,一次性将所有条目从一侧移动至另一侧。

向上向下按钮

单击这些按钮来调整所选列的顺序,该顺序为存储文件中列的顺序。

对于每个配方,将在指定文件夹中创建文件<配方名称>.<配方定义>.<文件扩展名>。在每次重新启动应用程序时,该文件将重新载入配方管理器。有关配方存储文件的更新配置,请参阅常规选项卡中的说明

另存为默认值

单击另存为默认值按钮将在该对话框中所做的设置用作另外插入的每个配方管理器的缺省设置。

注: 浮点值(类型 REAL/LREAL)以十进制格式和十六进制格式存储在文本配方文件中。(因为十六进制值表示确切值,而十进制 REAL 值表示第七个十进位位置的值。)

示例:PLC_PRG.realVar:=22.0F16#1600000H-5

如要手动修改配方文件中的值,请编辑十进制值,并删除后续的十六进制条目。(如果两个值都可用,则加载十六进制值。)

配方管理器编辑器,常规选项卡

参数

描述

PLC 中的配方管理

如果由于应用程序运行时期间没有要处理的配方而在控制器上不需要配方管理器,则可停用该选项,这样就不会下载管理器。

仅在执行下载后方可自动更新配方文件。要将配方管理下载至控制器,可选择该选项。

保存配方

自动保存修改到配方文件

只有在选择了选项 PLC 中的配方管理时,此选项才可用。

选择自动保存修改到配方文件选项后,无论配方如何更改,都会在 runtime 模式下自动更新配方文件。

加载配方

如果激活了选项 PLC 中的配方管理,则有以下两个选项可用于配置从控制器进行的下载。

仅通过变量列表的准确匹配进行加载

选择此选项后,只有在文件包含应用程序的配方定义变量列表中可用的所有变量时,才会加载配方文件。文件中的变量顺序必须与变量列表中相同。末尾的附加条目被忽略。否则,便无法加载配置,并且会设置返回值 ERR_RECIPE_MISMATCH (RecipeManCommands.GetLastError)。

通过变量名称加载匹配的变量

选择此选项后,可仅从配方文件加载变量名称一致的变量。当文件中的变量列表不同于应用程序的配方定义中的列表时,不设置错误状态。因此,如果文件或配方定义中的变量已被删除,也能够加载配方文件。

写配方

当配方值超出范围时限制变量在最小/最大值

选择此选项后,如果配方包含超出值范围的值,则将定义的最小或最大值写入到控制器。

不要在配方值超出最小/最大范围时写变量

选择此选项后,如果配方包含超出值范围的值,则会阻止值写入到控制器。将保留控制器中当前存在的值。

读取配方

检查配方更改

使用 RecipeManagement 库的功能块 RecipeManCommands 来读取配方。不要循环调用此方法,这会占用大量时间和控制器容量。

选择此选项,可通过每次的方法调用,将控制器中存在的变量值读取到配方中。只有在值发生了更改的情况下,才会用当前值覆盖配方文件。这个过程会生成用于对旧值和当前值进行比较的附加代码,因此请注意它对性能的影响。

如未选择此选项,则通过每次的方法调用,将控制器中存在的变量值读取到配方中。然后将配方写入到本地文件系统的配方文件。

注: 通过每次方法调用写入到本地文件系统的这个写入过程可能对控制器性能造成相当大的影响。