软件与系统集成

触发到 PLC 判定的延迟负载测试

平均耗时短的算法,并不能证明每个工件都能及时得到判定。请在相机、处理和存储负载并发的条件下测量整条路径,并以工位实际的判定截止时间为准。

发送样品,申请工程评审
触发到 PLC 判定的延迟负载测试
工程说明用示意图,不是实物照片,也不代表已完成测试。

问题与前置条件

平均耗时短的算法,并不能证明每个工件都能及时得到判定。请在相机、处理和存储负载并发的条件下测量整条路径,并以工位实际的判定截止时间为准。

准备测试

假设各环节依次进行:采集 10 ms、传输 20 ms、排队 15 ms、处理 70 ms、输出 5 ms,合计 120 ms,对照 200 ms 的截止时间,示例中留有 80 ms 余量。这是规划用的加法,不是基准测试结果;实际各环节可能重叠。

在引用某个处理耗时之前,先确定实际运行的截止时间及其测量边界。产线可能需要在到达物理剔除点之前拿到最终输出,机器人则可能需要在发出动作之前拿到经过验证的目标。要明确延迟是从物理触发、主机请求还是曝光开始时起算,到计算完成、结果发出还是观测到输出时截止。它们对应的是不同的测量。记录测试中使用的硬件、相机格式、采集速率、算法或模型、应用版本和输出路径。把计划的相机数量和图像留存策略也包括进来。要明确标出预热和启动阶段的行为,以免稳态运行很快,掩盖了第一次生产请求很慢这一事实。

操作步骤

  1. 定义起止事件及其所属的时钟域;绝不要把未同步的设备时间戳直接相减。
  2. 主机内部的时间间隔使用单调时钟;跨设备则使用经过验证的同步方式或外部测量。
  3. 在所有相机和预定的图像留存都启用的情况下,运行 1000 个计划周期;保留每个工件的标识符和各环节耗时。
  4. 分别加入慢速存储和峰值流量,再将两者同时加入;要统计缺失和迟到的结果,而不能只统计快速完成的那些。
  5. 测试超时处理,确保错过截止时间时产生约定的故障或处置,而不是沿用旧的合格结果。

只要实现方式允许可靠观测,就在采集、传输完成、进入处理队列、开始处理和最终输出处打时间戳。主机内部的间隔使用主机的单调时间。通过经过验证的方法,把设备时钟关联到这条时间线上;或者对物理触发到输出的时间采用外部测量。应用程序察觉到事件时打下的时间戳,应视为事件接收时间,而不要自动当作硬件上事件的发生时间。同时让所有计划中的相机、正常通信和图像写入都产生负载。引入一个慢速消费端和预期的突发模式,然后除了完成时间,还要观察队列深度和排队时长。缺失的触发、被拒绝的请求和采集故障,要保留在运行记录表中,不要从数据集中删掉。

测试记录示例

以下为示例性假设,并非 Deyi 的实测性能。请将这些数值替换为你自己经签字确认的测试记录。

测试记录示例
记录项假设值
采集与分析时长10 ms
传输时长20 ms
处理时长70 ms
判定截止时间200 ms

对每一次计划的触发,都记录它是按时完成、超过了截止时间,还是始终没有产生结果。延迟百分位数由已完成的结果计算,但要同时报告缺失数和迟到数;省略失败的情况会使分布具有误导性。同时让图像写入和所有计划中的相机都产生负载,再引入一个慢速消费端。120 ms 的示例合计值并不能确定实际观测到的最大延迟,1000 个周期的运行也无法确定罕见故障的发生率。

示例中的各环节合计只是一张计算表,不是基准测试。依次进行的耗时加起来是 120 ms,相对于假设的截止时间,算术上余量为 80 ms。实际各环节可能重叠或排队,因此应直接测量端到端的时间间隔,并说明各环节内部耗时与它的关系。报告所测试的负载、完成数、迟到数、缺失数、延迟分布和观测到的最差值。百分位数只描述用于计算它的那个样本总体;较低的百分位数不能成为排除失败请求的理由。更改任何设置之前,先查明长延迟是否与网络传输、消费端积压、算法运算或文件写入同时出现。资源上的相关性只提示下一步该做哪个受控实验,并不能证明原因。

流程的两种视图

触发到 PLC 判定的延迟负载测试 — 1

被测路径包括采集、传输、等待、分析和输出。在各个边界处打时间戳,而不要根据帧率去猜。

  1. 采集
  2. 传输
  3. 排队与处理
  4. PLC 结果
工程说明用示意图,不是实物照片,也不代表已完成测试。
查看原尺寸示意图

触发到 PLC 判定的延迟负载测试 — 2

空载测试、满载测试和故障注入测试回答的是不同的问题;它们的结果应分开保存。

  1. 空载
  2. 生产负载
  3. 注入故障
工程说明用示意图,不是实物照片,也不代表已完成测试。
查看原尺寸示意图

故障排查

  • 排队时间很长,说明存在资源争用或消费端处理能力不足。
  • 传输时间出现尖峰时,需要检查数据流统计信息和网络负载。
  • 出现时钟跳变或负的时间间隔时,在修正测量方法之前,计时证据一律无效。

验收与交接

按照约定的截止时间、缺失结果和故障处理要求进行验收。报告实测最大值和测试条件,不要对未测试的尾部表现作出承诺。相机数量、像素格式、算法或留存方式发生变化后要重新检查;仅凭 1000 个周期并不能确定长期可靠性。

测试前先设定验收限值,并保留原始证据。此处的示例并不能说明所供型号具备相应能力。

验收要求在具有代表性的最大计划负载下,满足约定的时序和处置规则,其中包括已定义的启动和恢复情形。拟议变更之后,用相同的工作负载重复测试,并沿用不变的基线作比较。验证减小队列深度或丢帧,不会因为漏掉了必须完成的检测而造成看似更快的结果。确认迟到的判定仍然绑定在其原来的工件上,并得到规定的围堵措施。保留配置、时钟方法、事件记录表和跟踪记录,使另一位评审人员能够复现这一计算。1000 个周期的试验可以暴露功能问题和负载问题,却无法确定长期生产中罕见故障的发生概率。交接材料应写明测试条件和未覆盖的内容,不要把示例中的 120 ms 拔高成对所供系统的延迟保证。

来源与技术参考资料

这些资料说明了本教程所用方法的依据与适用范围。文中的检查示例仅供参考;量产验收需要用你自己的样品取得证据。

  1. Acquisition Timing InformationBasler核查于
  2. Optimizing GigE Vision Systems in pylonBasler核查于

工程评审

把检测问题和证据一起发过来。

请发送样品图像、当前方案,以及未通过的检查项;同时注明视野、工作距离、线速度和验收标准,便于做出切实可行的评审。

发送样品,申请工程评审
咨询

直接联系

把您的检测需求告诉工程师。

请提供样品图片、参考型号、视野、工作距离和线速度。

目标:24 小时内回复选型建议
发送样品图片