“save-results”插件
此插件可用于将 MVApp 结果 中包含的数据自动保存到磁盘上一个可配置的目录中。与示例插件“save-images”相反,此插件只保存非图像数据,并且此插件不提供源代码。数据将存储在一个 .csv 格式的文件中。当“save-results”插件启动、MERLIC RTE 运行并且准备好配方时,插件会打开该文件。将收集相应 MVApp 结果的数据,一旦累积的数据超过预定义的缓冲区大小将间歇地写入该文件,并且当该文件被关闭时也会写入。当停止插件、取消准备配方或关闭 MERLIC Communicator 时,该文件将关闭。
此插件提供了一些配置选项来自定义输出目录、文件名格式和文件格式。
测试插件
您可以将此插件与您选择的任何 Communicator 插件组合使用。然而,对于一些初始测试,您可以使用“action-sender”示例插件和我们的一个示例配方来触发一些迭代。您可以通过“action-sender”插件发送操作,“save-results”插件会将结果存储在磁盘上。这让您可以在最终生产中使用“save-results”插件之前,检查该插件的可用配置选项以及所生成文件的相应格式和内容。
- 打开 MERLIC RTE Setup 并转到“配方”选项卡。
- 导入引用 MERLIC Vision App 的配方,该配方至少包含一个表示非图像结果的 MVApp 结果。您也可以使用示例配方之一(如“verify_chip_number_recipe.mrcp”)进行测试。
- 将该配方设置为默认配方。如果您跳过此步骤,并且在启动两个插件时未将该配方设置为默认配方,则必须使用命令“python.exe comm-send.py PrepareRecipe <Recipe ID>”通过“action-sender”插件手动加载配方,例如在步骤 9 之后。
- 通过 Windows 开始菜单项“MERLIC 5 RTE with Frontend + Communicator”启动 MERLIC RTE 和 MERLIC Communicator。以下步骤不需要 MERLIC Frontend。因此,如果您愿意,可以关闭 Frontend 窗口。但是,由于这是同时启动 MERLIC RTE 和 MERLIC Communicator 的最简单方法,我们建议使用开始菜单项。
- 在 MERLIC RTE Setup中,转到“通讯”选项卡,将“save-results”插件添加到左侧的插件实例列表中。

- 检查该插件的配置。有关可用配置选项的更多信息,请参阅配置插件部分。
- 单击 MERLIC RTE Setup 底部的“
启动插件”按钮或通过左侧插件实例列表中的相应菜单
,启动该插件的执行。要获取有关如何启动和停止插件的更多详细信息,请参阅 MERLIC 手册中的启动和停止 Communicator 插件主题。
- 按照与“save-results”插件相同的方式添加并启动“action-sender”插件。
- 打开命令提示符窗口,切换到“action-sender”插件的目录,即切换到 MERLIC 安装目录中的“examples\communicator_plugins\action-sender”目录。
- 使用 python 脚本“comm-send.py”启动单次执行,如下所示。MVApp 将执行一次,并且结果会被检索。复制
python.exe comm-send.py StartSingleJob或者,您也可以启动连续执行:
复制python.exe comm-send.py StartContinuous要获取有关其他可用选项的信息,请键入“python.exe comm-send.py --help”以了解更多使用信息。
- 当插件仍在运行时,将收集每次迭代的结果。如果累积的数据超过预定义的缓冲区大小,结果将间歇性地写入文件。缓冲区大小取决于操作系统,无法进行配置。由于以下更改导致该文件关闭时,也会写入结果:
- 插件被停止。
- 使用命令“python.exe comm-send.py UnprepareRecipe”取消准备配方。
- MERLIC Communicator 被关闭。
一旦满足其中一个条件,结果就会写入该文件,您可以在“save-results”插件配置中定义的目录中进行检查。
配置插件
在 MERLIC RTE Setup 的“通讯”选项卡中可以配置示例插件。只需打开 MERLIC RTE Setup 并添加该插件即可查看插件的可用配置选项。请记住,您首先必须启动 MERLIC Communicator 才能启用配置。
选定插件的参数将显示在“通讯”选项卡的右侧。下面将仅介绍“User parameters”部分中的参数,因为这些是可配置参数。
Additional Data
可使用此类别中的参数选择是否还在 .csv 文件中保存相应工作的任何其他信息。
Add measurement ID
此参数定义是否保存相应工作的测量 ID。如果未指定测量 ID,将返回空字符串。默认情况下不设置该参数。
Add part ID
此参数定义是否保存相应工作的部分 ID。如果未指定部分 ID,将返回空字符串。默认情况下不设置该参数。
Add timing information
此参数定义是否保存各种时序信息。这包括执行开始和结束时间、处理持续时间或采集持续时间等信息。默认情况下不设置该参数。
Formatting
Delimiter character
此参数定义用于分隔每次迭代存储的数据项的字符。默认情况下设置为“Comma”。下表列出了可用选项。
|
字符 |
描述 |
|---|---|
|
Comma |
结果将由逗号分隔。 |
|
Semicolon |
结果将由分号分隔。 |
|
Space |
结果将由空格分隔。 |
|
Tab |
结果将由制表符分隔。 |
Output
Base directory
此参数定义保存数据结果的目录。您可以通过 按钮(在本地系统上)从文件系统中选择目录,也可以直接在文本字段中输入路径。默认情况下,该参数在 Windows 系统上设置为“%LOCALAPPDATA%/Temp”,在 Linux 系统上设置为“/tmp”。
File name format:
此参数定义已保存结果的文件名格式。默认情况下设置为“Time (ISO 8601) and Recipe ID”。
|
格式 |
描述 |
|---|---|
|
Recipe ID |
文件名由前缀“MERLIC_recipe-”和当前准备的配方的 ID 组成,例如“MERLIC_recipe-2.csv”。 如果选择此格式,现有的结果文件可能会被删除,因为文件名仅使用当前加载配方的 ID。如果您在多个插件会话中使用相同配方,则上一个会话的现有文件将被新结果覆盖,因为配方 ID 与之前的相同,因此文件名也相同。上一个会话的结果将会丢失。 |
|
Time (ISO 8601) and Recipe ID |
文件名由 ISO 8601 格式的当前 UTC 时间和当前准备的配方的 ID 组成,例如“20230120T170327Z-2.csv”。 |