配方管理#
“属性”选项卡#
此选项卡上的区域允许您与当前在 Workbench 中选择的 vTool 进行交互,且允许您管理连线。
预览引脚数据#
此区域显示运行配方时当前在 Workbench 中选择的 vTool 的输入和输出数据的预览。要获得更大的视图,请通过 Workbench 工具栏打开引脚数据视图。这仅显示输出数据。
vTool 信息#
此区域允许您将 vTool 的标识符更改为您选择的名称。名称可以由字母数字字符 [AZ, az, 0-9] 组成。允许使用下划线“_”,但不能作为前导字符。数字也不允许作为前导字符。
vTool 设置#
此区域允许您打开 vTool 的设置对话框来配置 vTool。或者,您可以双击 vTool 以打开其设置。
连接信息#
如果在配方中选择连接,则此区域可用。在这里,您可以更改连接的名称并指定其工作方式。
对于要由配方处理的项目(如图像缓冲区)而言,连接就像是一个队列。连接的配置对配方的执行方式有很大影响。
示例:相机具有有限数量的图像缓冲区并以一定速率捕获图像。如果配方中的后续 vTool 处理图像缓冲区的时间比相机捕获图像的时间长,则缓冲区将在“慢速”vTool 处排队,直到没有更多的缓冲区可供相机使用。这将导致图像丢失。
根据您的应用,丢失的图像可能是可以接受的,或者您可能希望防止图像丢失。通过使用不同的队列模式并指定队列大小,您可以配置所需的行为。
可以使用以下队列模式:
- 阻止:队列大小设置指定一个连接可以保留多少个队列项目。一旦后续的 vTool 准备好处理新数据,项目将从连接移动到 vTool 并进行处理。
示例:如果您的队列大小为 2,并且队列中已经有两个项目,则系统会阻止配方中的前一个 vTool 发送更多项目。但是,您可能仍然会遇到图像丢失的情况,因为相机 Camera vTool 将继续以指定的帧速率捕获图像。但是,一般来说,如果为配方中的所有连接选择阻止,并根据配方中最慢的 vTool 指定队列大小,则可以将丢失的图像减至最少。 - 不受限制:队列中的项目数量不受限制。请注意,如果配方中有“慢速”vTool,则缓冲区可能无法足够快地返回到相机,致使相机无法以指定的帧速率继续捕获图像。因此,由于缓冲区不足,您可能仍会遇到图像丢失的情况。选择不受限制时,请考虑您的用例、相机设置和 vTool。
- 删除最旧:队列大小设置指定一个连接可以保留多少个队列项目。如果队列已满并且向队列中添加其他项目,则删除队列中最旧的项目,为新项目腾出足够的空间。
- 删除最新:队列大小设置指定一个连接可以保留多少个队列项目。如果队列已满并且有其他项目到达队列,则此新项目将被丢弃。
您可以使用统计选项卡来测量 vTool 的执行时间,并识别任何可能导致处理速度变慢的 vTool。
默认设置为阻止,队列大小为 1。
“统计”选项卡#
Statistics 选项卡允许您测量 vTools 的执行时间以检查您的时序要求是否得到满足。配方必须处于运行状态才能收集统计数据。
您可以测量配方中单个 vTool 或所有 vTools 的执行时间。所有 vTools 的执行时间都记录在一个 CSV 文件中。您可以使用电子表格应用程序来分析数据。
信息
CPU 可能会根据当前负载以不同的频率运行,例如,由于 CPU 节流或动态频率缩放。因此,测得的时间可能会因系统配置和整体 CPU 负载而异。
Windows:如果要消除 CPU 节流的影响,请将电源计划设置为 Best performance。
“优化”选项卡#
Optimization 选项卡允许您优化线程处理。
配方提供了一个工作线程池。此线程池中的一个工作线程用于 vTools 的数据处理任务。在 Optimization 选项卡上,您可以指定线程数,例如,将其与实际的 CPU 数相匹配。最佳设置取决于所使用的硬件和并行工作的 vTools 的最大数量。
信息
vTool 可能会使用额外的内部线程。这取决于各个 vTool 的底层实现。