# 工业通信信号

In-Sight 视觉系统使用一组固定的预命名信号，可用于将数据和结果传输到 PLC 和 In-Sight 设备以及/或者从 PLC 和 In-Sight 设备传输数据和结果。

要使用触发器控制和状态信号控制来自 PLC 的触发，必须满足以下条件：

- 该属性必须设置为工业以太网。
- 视觉系统必须处于联机状态。
- $System.OnlineEnabled 标记必须为 True。

注意： 这些信号在所支持的协议（EtherNet/IP、PROFINET）之间共享，但它们是以不同的方式映射到系统中。关于每种协议信号映射的特定内容，请参阅以下主题：

- EtherNet/IP I/O 程序集数据格式程序集

输入程序集 | 信号 | 说明
采集错误 | 当 In-Sight 设备由于以下原因之一无法获取图像时，就会设置这个位： 属性未设置为工业以太网。 In-Sight 设备未联机。 $System.OnlineEnabled 标记为 False。 In-Sight 设备当前正在采集图像。 In-Sight 设备的图像缓冲区不足。 当成功采集被触发、或者触发器启用位切换时，此位被清除。 注意： 如果在触发器启用位为“低”时设置触发器位，因为触发器位被忽略，将导致采集错误。
采集 ID | 无论触发器源如何，该 ID 都会在每次采集完成时递增，并可用于将采集与其检查结果同步。采集 ID在采集开始时更改。如果 PLC 是触发器源，则在设置触发器确认位之前设置采集 ID 。
命令完成 | 当命令执行完成时设置此位，并在清除执行命令位被清除。
命令执行 | 在命令执行期间设置此位。
命令执行失败 | 如果命令未能成功执行，或者如果设置了未知的命令 ID，在命令完成时设置此位。
命令结果代码 | 此字段用于表示命令未成功执行的原因（该代码对应执行的命令）： 0x0000 = 命令成功 / 未知失败 0x0002 = 错误命令 0x208D = 请求与系统状态不兼容
错误 | 发生错误时设置该位，该错误在“错误 ID”字段中定义。
错误 ID | 请参阅错误 ID 代码。
曝光完成 | 当视觉系统图像传感器不再暴露于光线时设置该位。它用于指示被检查的部件可以从视觉系统的视野下方移动。
外部事件确认 | 在相关脚本完成执行后将生成外部事件确认。
检查完成 | 在检查后切换该位。
检查图像 ID | 这些字节用于为每张与此结果集关联的图像提供采集 ID。
检测 ID | 与该组结果关联的采集 ID。
已通过检查 | 该位指示检查的通过和/或失败状态。
检查结果代码 | 这些字节用于传递用户自定义的结果代码。检查结果代码由 WriteResultsBuffer 函数的“Result Code”（结果代码）参数定义。
检查结果 | 检查工具结果的这些字节可以通过 WriteResultsBuffer 函数写入当前启用的工厂通信协议。
联机 | 该位表示 In-Sight 设备联机而且 $System.OnlineEnabled 标记的状态为 True。
暂停 | 该位表示 $System.OnlineEnabledComm 的状态。
结果缓冲超时运行 | 当设置启用结果缓冲区位时设置此位，并且结果数量超出结果队列的容量。
结果有效 | 当检查图像 ID、检查结果代码和检查结果字段有效时设置此位。当设置检查结果确认位时，此位被清除。
设置用户数据确认 | 设置该位来确认设置用户数据命令已完成执行。
系统就绪 | 该位表示 In-Sight 设备已完全启动且准备好接受和处理触发器。
触发器确认 | 该位表示 In-Sight 设备已通过触发器位成功触发。触发器确认位将保持设置，直到触发器位被清除。
触发器就绪 | 该位指示 In-Sight 设备可以通过触发器位接受新触发器。当已设置触发器启用位且视觉系统当前未采集图像时，该字段为 true。
输出程序集 | 信号 | 说明
启用缓冲结果 | 如果设置了该位，检查 ID、检查结果和检查结果字段保持不变，直到检查结果确认字段已确认它们且设置完毕。缓冲区中最多可保存 16 组结果。每个结果必须使用检查结果确认信号明确确认。
清除错误 | 如果设置了该位，将会清除错误和错误 ID信号；清除错误位应保持 High，直到错误位被清除。如果错误已排队，清除该位将导致错误和错误 ID 信号被设置为下一个排队错误代码。
清除曝光完成 | 当该信号保持 High 时，曝光完成状态将保持重置。一旦此信号设置为 Low，曝光完成状态将在下一次曝光完成时设置为 High。
执行命令 | 当执行命令位设置为 High 时，视觉系统会读取命令 ID 信号并执行相关命令。该信号必须保持 High，直到设置了命令完成位。命令完成位设置后，清除执行命令位还将清除命令完成位。
外部事件 | 设置外部事件让 PLC 能够触发电子表格中的关联事件。
设置暂停 | 如果设置该位，In-Sight 视觉系统将暂停并且 $System.OnlineEnabledComm 的状态为 false。
触发器启用 | 设置此字段可启用通过触发器位启用触发。清除该位可禁用网络触发机制。
命令 ID | 该字段表示将在执行命令位上升沿执行的命令。在命令完成位设置前，此信号不应更改。 0-0x0fff = 保留 0x1000-0x1fff = 保留 0x2000 = 将 $System.ProcessinEnabled 标记设置为 False 0x2001 = 将 $System.ProcessinEnabled 标记设置为 True 0x2002-0xFFFF = 保留
检测结果确认 | 设置缓冲区结果启用位时，检查结果确认位确认 PLC 已收到检查图像 ID、检查结果代码和检查结果数据。
通过结果 | 该位表示检查结果已通过。
设置用户数据 | 该位用于表示在视觉系统中有新的用户数据可供读取。将整个用户数据区域锁存到保持缓冲区后，视觉系统将通过发出设置用户数据确认信号向 PLC 指示它已读取数据，而且可以根据需要开始将新数据加载到缓冲区。
触发器 | 设置触发器位将在视觉系统上触发采集。还必须设置触发器启用位。
用户数据 | 数据缓冲区，可以使用 ReadUserDataBuffer 函数将其读入电子表格。数据写入缓冲区的方式与它们在 PLC 中的显示完全相同，位的显示顺序与 RSLogix 5000 中定义们的顺序相同。