Skip to content

驱动能力矩阵

本页一览 IoT DC3 全部 28 个驱动的协议类别、读 / 写 / 订阅能力与实现状态,帮你在选型时快速对位。每行链接到该驱动自己的页面,属性、采集周期、最小接入示例等细节在那里展开。

读 / 写 / 订阅按驱动当前实现的真实行为标注:「✓」表示该能力已落地,「—」表示该协议方向不实现、由设计决定不提供、或骨架尚未补齐——具体以代码为准(见表后说明)。订阅 / 上报指驱动被动接收设备推送(监听端口、网络回调、设备注册等),区别于周期轮询采集。

「实现状态」列总结该驱动整体成熟度:

  • 完整:读 / 写 / 订阅按协议设计全部落地,可直接用于生产接入。
  • 可用:核心链路可用,但有局部局限(如部分数据类型、Observe、健康钩子未实现),详见备注与驱动页。
  • 骨架:协议组帧或传输层尚未补全,目前仅供结构参考,不能直接采集真实设备。

工业总线 / PLC

这一类驱动作为主站(client)主动连设备,按位号 轮询读值、按命令写值,不监听上报。ethernet-ip 目前是协议骨架,CIP 组帧尚未补全。

驱动 (dc3.driver.code)类别订阅/上报实现状态备注
Modbus TCP (ModbusTcpDriver)工业总线/PLC完整以太网 Modbus 主站
Modbus RTU (ModbusRtuDriver)工业总线/PLC完整串口 Modbus 主站
OPC UA (OpcUaDriver)工业总线/PLC完整OPC 统一架构客户端
OPC DA (OpcDaDriver)工业总线/PLC完整经典 OPC 数据访问(DCOM)
S7 (PlcS7Driver)工业总线/PLC完整西门子 PLC
MELSEC (MelsecDriver)工业总线/PLC完整三菱 PLC(MC 协议)
FINS (FinsDriver)工业总线/PLC可用欧姆龙 PLC,当前限 16 位整数
EtherNet/IP (EthernetIpDriver)工业总线/PLC骨架罗克韦尔 / CIP,组帧待补

SCADA / 电力 / 计量

楼宇、电力与计量类协议。bacnet-ipsnmp 主动读写;sl651 是水文遥测,开 TCP 服务端被动收报文,故仅订阅;iec104dlms 当前为骨架。

驱动 (dc3.driver.code)类别订阅/上报实现状态备注
BACnet/IP (BacnetIpDriver)SCADA/电力/计量完整楼宇自控
IEC 104 (Iec104Driver)SCADA/电力/计量骨架电力 SCADA,协议层待补
DLMS (DlmsDriver)SCADA/电力/计量骨架智能电表,传输层待补
SL651 (Sl651Driver)SCADA/电力/计量完整水文遥测,TCP 服务端收报文
SNMP (SnmpDriver)SCADA/电力/计量完整网络设备监控

IoT / 无线

物联网与无线类。mqtt 走发布/订阅,值由订阅被动到达(无主动读),命令可下发;lwm2m 内嵌服务端、收设备注册与通知,读写已落地但 Observe 订阅尚未实现; coaphttpble 为请求-响应式主动读写(coap 的 Observe 未实现);canzigbee 当前为骨架实现,zigbee 仅监听协调器网络状态、尚未监听节点入网与属性上报,can 底层走 can-utils。

驱动 (dc3.driver.code)类别订阅/上报实现状态备注
MQTT (MqttDriver)IoT/无线可用发布/订阅,值经订阅到达;部分健康钩子为骨架
CoAP (CoapDriver)IoT/无线可用受限设备 RESTful,Observe 未实现
LwM2M (Lwm2mDriver)IoT/无线可用内嵌服务端,读写已落地,Observe 订阅未实现
HTTP (HttpDriver)IoT/无线完整通用 HTTP 采集
BLE (BleDriver)IoT/无线完整低功耗蓝牙 GATT
Zigbee (ZigbeeDriver)IoT/无线骨架骨架实现,订阅(入网/上报)未实现
CAN (CanDriver)IoT/无线骨架控制器局域网,底层走 can-utils

串口 / 通用网络

按命令模板组帧的通用透传驱动,主动收发,不监听。

驱动 (dc3.driver.code)类别订阅/上报实现状态备注
串口 Serial (SerialDriver)串口/通用网络完整通用串口透传
TCP/UDP (TcpUdpDriver) (raw)串口/通用网络完整通用 socket 透传

数据库

把库表当数据源:读走 executeQuery、写走 executeUpdate,由位号上的 SQL 模板驱动,不监听变更。

驱动 (dc3.driver.code)类别订阅/上报实现状态备注
MySQL (MysqlDriver)数据库完整从库表采集位号
PostgreSQL (PostgresqlDriver)数据库完整从库表采集位号
Oracle (OracleDriver)数据库完整从库表采集位号
SQL Server (SqlserverDriver)数据库完整从库表采集位号

虚拟 / 测试

无真实设备的两个驱动:virtual 按位号类型生成模拟读值(写为占位、不落设备);listening-virtual 反向开 TCP/UDP 服务端收外部推送,并可经连接通道向设备回写。

驱动 (dc3.driver.code)类别订阅/上报实现状态备注
虚拟 Virtual (VirtualDriver)虚拟/测试可用生成模拟数据,写为占位
监听虚拟 Listening Virtual (ListeningVirtualDriver)虚拟/测试完整TCP/UDP 服务端收推送,可回写

能力标记以代码为准

表中「✓ / —」反映各驱动 *DriverCustomServiceImpl 当前的真实实现:「—」可能是协议方向本就不提供(如 virtual 的写、mqtt 的主动读),也可能是骨架未补齐(如 ethernet-ipiec104dlmscan)。「实现状态」列是对成熟度的整体概括,局部的数据类型或子能力缺口以各驱动页的 ::: warning / ::: info 标注为准。最终行为请以对应模块的 read() / write() / initial() 源码为准;驱动迭代后此表会同步更新。

延伸阅读

基于 AGPL-3.0 协议发布