Skip to Content
工厂数据提取IO-Link Collector

IO-Link Collector

接入你的 IO-Link 智能传感器,即可获得带名称、带缩放的工程量值,无需任何按传感器的配置。连接你的 IO-Link 主站——以及它们背后的传感器和执行器——并将其过程数据直接流式传输到你的车队数据库中。一切都在浏览器中配置:无需编码,无需重新部署,无停机。

该应用支持三种传输方式,可按主站选择:HTTP/RESTifm IoT Core API、Balluff 主站实现的厂商中立的 IO-Link Community JSON 标准,以及面向其他设备的通用可配置 REST 方言)、OPC UA(例如 OPC UA IO-Link Companion Spec)和 MQTT(例如 Pepperl+Fuchs)。OPC UA 和 MQTT 传输基于订阅——值在变化时被推送。无论采用哪种传输方式,连接的传感器都会从其 IODD 自动解码——原始过程数据变为带名称、带缩放的工程量值,无需按传感器进行设置。

IO-Link Collector 应用面板,显示已发现的主站、端口和实时解码的传感器值

为何选择此应用

自动传感器发现。 将应用指向一个 IO-Link 主站,它会探测每个端口,检测连接了哪些传感器,并读取它们的设备 id、厂商 id 和产品名称。每个已连接的端口会自动成为一个数据点。

自动 IODD 解码——带名称、带缩放的值,无需映射。 这是应用开箱即用的工作方式。它能识别每个连接的传感器,并自行将其原始过程数据转换为成品工程量值——在公共 IODD Finder 上查找该传感器的官方 IODD(IO-Link 设备描述),无需账户,无需 API 密钥,并以正确的名称、缩放和单位解码每个值。插上一个传感器,它的温度(°C)、压力(bar)或距离(mm)便会直接出现。对于离线或物理隔离的网关,你可以将 IODD 粘贴到内置目录中,同一个解码器会使用它(粘贴的 IODD 始终优先于抓取的 IODD)。

热插拔感知。 更换一个传感器、拔下一个,或新增一个,应用都会自动察觉——它会重新发现主站并更新数据点目录,无需重启。

只存储重要的数据。 暂停单个数据点,或开启变更时存储,使一个值仅在它实际发生变化时才被记录——避免嘈杂或快速循环的信号撑爆你的数据库。

支持的主站、传输方式与传感器

所有发现、热插拔以及 IODD/过程数据解码在每种传输方式之间共享;主站类型设置只是选择应用如何接入某个给定的主站。

传输方式

主站类型传输方式API / 来源
ifmHTTP / REST(轮询)ifm IoT Core REST(getdatamulti)——ifm AL 系列及兼容主站
iolink_json(默认)HTTP / REST(轮询)IO-Link Community “JSON for IO-Link” 标准(/iolink/v1/...
balluffHTTP / REST(轮询)Balluff 主站——它们实现 JSON for IO-Link 标准
genericHTTP / REST(轮询)可配置的按端口 REST——任何暴露 HTTP URL 的主站
opcuaOPC UA(订阅/推送)暴露 IO-Link 数据的 OPC UA 服务器,例如 OPC UA IO-Link Companion Spec
mqttMQTT(订阅/推送)向代理发布的主站/网关,例如 Pepperl+Fuchs ICE2/ICE3

Turck(TBEN / FEN)主站通过 Modbus/TCP 和现场总线而非上述任何方式暴露 IO-Link——对于这些,请使用 Modbus Collector

主站厂商

  • ifm — IoT Core REST(AL13xx / AL19xx / AL11xx 及兼容型号);每个周期在一个批量请求中读取所有端口。
  • Balluff — BNI(当前固件)和 CMTK,通过 JSON-for-IO-Link 标准。
  • Pepperl+Fuchs — ICE2 / ICE3,通过 MQTT(或 OPC UA)。
  • 任何主站,只要它实现 IO-Link Community JSON 标准、暴露 OPC UA 服务器、向 MQTT 发布,或提供按端口的 REST URL(generic)。
  • 自动按端口发现:设备 id、厂商 id、产品名称。
  • 热插拔检测并自动重新发现——无需重启。
  • 自动 IODD 解码 — 从 IODD Finder 无密钥自动抓取,外加手动 IODD 粘贴目录(粘贴的 IODD 优先于抓取的 IODD)。
  • 手动 YAML 解码规范覆盖,按端口设置。
  • 解码类型:UINT8/16/32INT8/16/32FLOAT32BOOL
  • 字节对齐位字段解码——例如一个测量值加上状态位打包进一个过程数据字(IODD 风格)。
  • 按值的线性缩放(value = raw × scale + bias)和工程单位。
  • 未配置解码时,原始过程数据(十六进制)直通。

安全与认证

  • OPC UA — 安全策略(NoneBasic256Sha256Basic256Basic128Rsa15)、安全模式(NoneSignSignAndEncrypt),以及客户端证书 + 私钥。
  • MQTT — TLS,可选 CA 证书。
  • OPC UA 和 MQTT 的用户名 / 密码

你将获得什么

在你的项目中安装该应用,并为其分配边缘 PC(网关)。然后打开应用面板,进入设置视图并添加一个主站连接:选择网关,选择主站类型(默认 iolink_json),输入主站地址(根据类型不同,可以是像 192.168.0.10 这样的 REST URL、一个 opc.tcp://… 端点,或一个 mqtt://… 代理),并设置采集间隔。连接的传感器会从其 IODD 自动解码。

从那一刻起,应用从主站进行采集——按配置的间隔轮询 HTTP 主站,或通过 OPC UA / MQTT 接收推送的更新——并将每个值存储在你车队数据库的 measurements 表中。每个读数都带有端口的连接状态(在可用时还附带 OPC UA 质量和源时间戳,或 MQTT 源主题);每个主站每周期写入一行,每个主站的实时在线/离线状态在 assetstatus 表中跟踪。采集到的读数默认保留 3 个月(可调整)。

手动解码规范(备用)

解码通过 IODD 自动完成,因此这很少需要——仅在传感器没有已发布的 IODD,或你需要自定义布局时才使用它。在某个主站的 Datapoints 字段中放入一个 YAML 数组;每个条目将端口过程数据的一部分映射为一个带名称、带缩放的值。

- label: Temperature port: 1 offset: 0 # byte offset into the port's process data length: 2 # number of bytes type: INT16 # UINT8/16/32, INT8/16/32, FLOAT32, BOOL scale: 0.1 # value = raw × scale + bias unit: degC

位字段——用于将一个值和状态位打包进一个过程数据字的传感器(位从 LSB 开始计数,IODD 风格),例如 ifm O5D 距离传感器:

- label: Distance port: 1 type: UINT bit_offset: 4 bit_length: 12 scale: 10 unit: mm - label: OUT1 port: 1 type: BOOL bit_offset: 0

通用采集器特性

与每个 IronFlock 采集器一样,IO-Link Collector 完全在浏览器中配置——在内置应用面板中添加、编辑和暂停主站连接,无需参数文件,无需重启;表单只显示与所选传输方式相关的字段,你可以在每个网关上接入无限数量的主站,自由混合厂商和传输方式。它在边缘端可靠:每个主站在隔离状态下采集(一个无法访问的主站永远不会拖累其他主站),并且如果网关失去与平台的连接,应用会持续读取并在本地缓冲,然后在重连时通过高效的批量补传按顺序转发所有数据(缓冲区大小可按网关配置,并可选仅转发模式)。而且你无需硬件即可试用:将任意主站切换到演示模式,应用会生成逼真的传感器数据(温度、压力、流量、一个开关),让你在连接真实硬件之前就探索完整体验。

在你的数据之上构建

随附的应用面板让你即时概览到来的数据。如需量身定制的展示,可构建自定义仪表盘,将你的 IO-Link 测量值与来自其他应用的数据并排显示,通过 Data Backend 查询数据,并使用 Alarms 应用实时监视采集到的值并获取短信或邮件通知。要让设备上线并安装该应用,请参阅设备管理应用管理

Last updated on