产品说明
精简宣传版: 产品手册(中文) · Product Guide (EN)
用户操作: 用户手册 · User Manual (EN)
架构主线: 边缘网关架构设计总览(影子设备热路径)
目录
产品概览
EdgeX(工业边缘网关)是一款轻量级工业边缘计算网关软件,面向制造、能源、楼宇等现场部署。后端采用 Go,管理界面采用 Vue 3 + Vuetify。
EdgeX 部署在工业现场,使命是打通 OT 设备 ↔ IT 系统 的数据通道——南向统一接入、边缘就地处理、北向灵活对接,一机完成采集到上报的闭环。以 ShadowCore 影子设备为运行时真源,联动虚拟设备、边缘计算、持久化与北向通道;覆盖 13 种工业协议,并以工业级 SLA 与 Soak 长稳验证保障现场长期可靠运行。
- 统一接入:Modbus · BACnet · OPC UA · S7 · EtherCAT · EtherNet/IP · FINS · SNMP · IEC 104 · DL/T645 · Mitsubishi MC · Profinet IO · KNXnet/IP — 异构 PLC、表计、楼宇与网络设备,一套网关采集
- 影子真源:南向采集写入内存影子,UI / 规则 / 历史 / 北向共用同一快照
- 边缘智能:本地规则与派生点位,联动控制、减轻上行
- 开放集成:对接云平台、SCADA 与企业应用,支持反向写控
- 工业级稳定:内置指标门控、Soak 长稳回归与 CI 五 gate,SLA 可观测、可验证
GitHub 首屏摘要见 README — 产品概览(源码)。命名由来见 为何叫 EdgeX?(源码)。
产品采用全配置化设计:通过图形化界面或配置完成点位映射、规则编写与通道绑定,实现零代码/低代码敏捷交付。
核心应用场景
下表汇总网关支持的 20 类典型工业边缘应用场景;其中 18 类已配备数据流示意图(见「示意图」列及下方图示)。通过这些场景的自由组合与叠加配置,可延伸出成百上千种业务落地方案。
| 场景类别 | 典型应用 | 场景描述 | 示意图 |
|---|---|---|---|
| PLC 读写控制 | 生产线自动化控制、设备参数调整 | 通过 Modbus、S7、EtherNet/IP 等协议实时读写 PLC 寄存器,支持位操作、批量数据采集与反向写控,实现远程设备参数配置与工艺参数下发。 | — |
| 热加载控制硬件 | 设备固件升级、配置热更新 | 支持运行时动态加载驱动与配置,无需重启即可接入新设备或修改采集策略,适用于生产现场不停机维护与设备在线升级。 | — |
| 告警联动 | 温度越限联动、故障自动响应 | 基于边缘规则引擎实时监测设备状态,触发本地告警联动(如温度过高自动启动冷却系统、设备故障自动切换备用通道),实现毫秒级响应。 | 图 2 |
| 设备联合抄表 | 电能表批量采集、能耗统计 | 通过 DL/T645、Modbus-RTU 等协议批量读取电表、水表、燃气表数据,支持定时抄表、数据校验与异常识别,生成能耗报表。 | 图 3 |
| 跨设备数据聚合 | 产线效率计算、设备综合指标 | Virtual Shadow Engine 聚合多台设备数据,通过公式计算生成派生指标(如设备综合效率 OEE、多泵流量总和、多路温度平均值)。 | 图 4 |
| 多设备联动控制 | 生产线协同、楼宇智能控制 | 跨协议联动控制多台设备(如 PLC 与 BACnet 楼宇控制器联动、KNX 照明与传感器联动),实现复杂业务流程的自动化编排。 | 图 5 |
| 设备远程监控 | SCADA 集成、云端可视化 | 通过 OPC UA Server 或 MQTT 将实时数据推送至 SCADA 系统、云平台或移动应用,支持远程设备状态监控与历史数据分析。 | 图 6 |
| 边缘实时决策 | 质量检测、安全联锁 | 在边缘端实时分析采集数据,触发质量判定(如产品尺寸偏差检测)或安全联锁(如危险区域人员接近自动停机),减少数据上行延迟。 | 图 7 |
| 网络设备监控 | 交换机/路由器状态采集 | 通过 SNMP 协议采集网络设备 OID 数据,监控端口流量、设备温度、电源状态等,实现工业网络健康度实时监测与预警。 | 图 8 |
| 电力自动化 | 变电站数据采集、遥控操作 | 通过 IEC 60870-5-104 协议接入电力系统,支持总召唤、自发上报与单点遥控(M1 阶段),满足电力调度自动化基础需求。 | 图 9 |
| 预测性维护 | 振动分析、轴承寿命预警 | 通过 ScanEngine 持续采集振动、温度等运行数据,结合 expr 规则进行趋势分析与异常检测,在故障发生前生成维修工单并上报运维平台,降低非计划停机损失。 | 图 10 |
| 环境温湿度监控 | 机房环境、洁净室监测 | 接入 BACnet、Modbus 温湿度与 CO₂ 传感器,实现阈值告警、新风系统联动及数据北向上报,保障生产与办公环境合规。 | 图 11 |
| 冷链物流监控 | 冷藏运输、冷库监测 | 采集车载与冷库温度、GPS 轨迹,边缘端检测脱冷事件并本地缓存时序记录,网络恢复后补传至冷链平台,满足 GSP 合规追溯。 | 图 12 |
| 光伏逆变器聚合 | 分布式电站、发电量统计 | 批量采集多台 Modbus 逆变器功率数据,Virtual Shadow Engine 计算总功率、组串效率与日发电量,MQTT 上报能源管理平台。 | 图 13 |
| Modbus 设备透传 | 旧设备接入、协议桥接 | 提供 Modbus TCP↔RTU 透明透传与地址映射,上位机无需改造即可访问 RS485 总线上的 legacy 设备,转发延迟低于 5ms。 | 图 14 |
| 数据断点续传 | 弱网环境、离线缓存 | 网络中断时 ScanEngine 持续采集并写入本地队列,恢复后按时间戳顺序批量补传,保障数据完整性与零丢失。 | 图 15 |
| 产线节拍统计 | 产量统计、CT/OEE 分析 | 采集 PLC 产品到位与周期信号,expr 引擎进行节拍计数与 CT 计算,联动 OEE 指标并实时上报 MES 系统。 | 图 16 |
| 楼宇能耗分项计量 | 照明/空调/电梯分项 | 整合 DL/T645 电表、BACnet 能耗点与 KNX 传感器,分项汇总与楼层分摊,生成能耗看板并对接楼宇管理平台。 | 图 17 |
| 多协议网关转换 | 异构设备统一接入 | 南向适配 Modbus、BACnet、KNX、IEC 104 等协议并映射至统一数据模型,北向输出 MQTT、OPC UA 或 REST,一台网关实现多协议互通。 | 图 18 |
| 时序数据本地存储 | 边缘历史查询、断网可用 | 采集数据与计算指标持久化至本地 TSDB,支持 REST 历史检索与趋势图表,可选北向同步摘要,弱网环境下保障本地可查。 | 图 19 |
图 1:数据流向总览
告警联动
图 2:告警联动场景示意
设备联合抄表
图 3:设备联合抄表场景示意
跨设备数据聚合
图 4:跨设备数据聚合场景示意
多设备联动控制
图 5:多设备联动控制场景示意
设备远程监控
图 6:设备远程监控场景示意
边缘实时决策
图 7:边缘实时决策场景示意
网络设备监控
图 8:网络设备监控场景示意
电力自动化
图 9:电力自动化场景示意
预测性维护
图 10:预测性维护场景示意
环境温湿度监控
图 11:环境温湿度监控场景示意
冷链物流监控
图 12:冷链物流监控场景示意
光伏逆变器聚合
图 13:光伏逆变器聚合场景示意
Modbus 设备透传
图 14:Modbus 设备透传场景示意
数据断点续传
图 15:数据断点续传场景示意
产线节拍统计
图 16:产线节拍统计场景示意
楼宇能耗分项计量
图 17:楼宇能耗分项计量场景示意
多协议网关转换
图 18:多协议网关转换场景示意
时序数据本地存储
图 19:时序数据本地存储场景示意
产品优势
工业级稳定性是 EdgeX 的核心卖点:在功能丰富(13种标准工业协议(覆盖85%工业场景1)、规则引擎、北向多通道)的同时,通过内置指标门控、Soak 长稳回归与 CI 五 gate 持续验证 SLA,保障现场长期可靠运行。
| 能力维度 | 核心价值 | 关键指标 / 交付物 |
|---|---|---|
| 质量保障 | 内置指标门控 + Soak 长稳回归 + CI 五 gate | lag P95 <100ms · miss deadline =0 · 万 Tag 压测 · 可观测诊断 |
| 南向接入 | 13 种工业协议,异构 OT 统一采集 | 设备发现 · 对象扫描 · 批量点位注册 |
| 采集调度 | 10ms 级调度内核,内存影子真源 | P99 调度 lag <150ms(≤10k tag,统计 SLA) |
| 边缘智能 | 规则引擎 + 虚拟影子派生计算 | 跨设备映射 · 公式聚合 · 本地联动控制 |
| 北向集成 | 多协议对接云平台、SCADA 与企业应用 | MQTT · Sparkplug B · OPC UA · EdgeOS |
EdgeX 产品能力分层总览:接入 → 采集 → 边缘 → 北向 → 质量层
下文为各能力维度的完整说明。
丰富的工业协议支持
内置 13 种南向驱动,覆盖 Modbus、BACnet、OPC UA、Siemens S7、EtherCAT、EtherNet/IP、Omron FINS、SNMP、IEC 60870-5-104、DL/T645、Mitsubishi SLMP、Profinet IO、KNXnet/IP 等主流工业协议。支持设备发现、对象扫描与批量点位注册,满足 PLC、表计、楼宇与电力等场景的异构接入需求。完整驱动矩阵见 设备驱动;测试覆盖见 南向驱动测试报告。
低延迟数据采集与处理
ScanEngine 以 10ms Tick 驱动优先级队列调度,ExecutionLayer 按 Serial / Parallel / Limited 模式隔离执行;ShadowCore 以纯内存快照作为数据真源(SoT),UI、边缘计算与北向接口统一从影子设备读取。Phase D 引入 EDF 最早截止优先与 hard jitter clamp,超时任务提权并记录 miss,≤10k tag 规模下 P99 调度 lag <150ms(统计 SLA,非硬实时 PLC)。WebSocket 实时推送点位变化,支持通道级 TCP 链路监控。
| 能力项 | 说明 |
|---|---|
| 调度内核 | 10ms Tick · 优先级队列 · EDF 最早截止优先 |
| 执行隔离 | Serial / Parallel / Limited 三模式,慢设备硬隔离 |
| 数据真源 | ShadowCore 内存快照,UI / 边缘 / 北向统一读路径 |
| 实时推送 | WebSocket 点位变化 · 通道级 TCP 链路监控 |
轻量灵活部署
单二进制交付,CGO_ENABLED=0 静态编译,无运行时依赖;最低 128MB 内存、1GB 存储即可运行,支持 x86_64、ARMv7、ARM64。部署方式:裸机 / systemd · 嵌入式设备。
| 配置项 | 最低配置 | 推荐配置 |
|---|---|---|
| 内存 | 128MB | 512MB+ |
| 存储 | 1GB | 4GB+ |
| CPU | 单核 | 双核+ |
边缘规则与联动控制
内置轻量级 expr 规则引擎,扩展工业位操作语法(v.N / v.bit.N、bitget/bitset 等),支持寄存器 RMW 写保护其他位状态。规则可编排 Sequence(序列)、Delay(延时)、Check(条件检查)等工作流,配套规则运行日志查询与 CSV 导出。表达式语法与工作流配置见 边缘计算指南。
虚拟影子设备
Virtual Shadow Engine 从多台真实设备选点:直接映射来源点位,或通过公式计算生成虚拟点位;结果写入 ShadowCore,供边缘计算、北向与 UI 统一消费。数据路径:南向采集 → 真实影子 → Virtual Shadow Engine → 虚拟影子 → 边缘 / 北向 / UI。
| 模式 | 适用场景 |
|---|---|
| 直接映射 | 1:1 转发真实点位,跨设备汇聚与北向暴露 |
| 公式计算 | 引用 channel_id.device_id.point_id,支持 + - * / 与括号 |
配置流程与典型场景见 §4 虚拟影子设备。性能优化数据见 Shadow 优化报告:
| 优化项 | 效果 |
|---|---|
| COW 快照读路径 | GetShadowDevice 约 4.3× 加速 |
| 批量写入缓冲 | 8ms/256 缓冲 + ring queue 批量 flush |
| 10k tag 批量 apply | 约 952k tags/sec |
| 订阅扇出 | 固定 worker pool 有界,避免 goroutine 泄漏 |
智能采集优化
基于设备画像的自适应采集:RTT 管理器(EWMA 动态超时)、MTU 管理器(批量读包大小探测)、Gap 优化器(请求间隔调节)及 Modbus Illegal Address 24h 冷却。ExecutionLayer 提供 Serial 硬隔离 + Parallel 三层背压 + Limited 低并发;per-device RTT throttle 在 100+5 慢设备压测下集群 lag P95 增幅 -6.8%(门控阈值 <30%)。热路径 loadPoints 0 allocs/op。ConnectionManager 提供五态状态机、指数退避重连、采集健康检测与低频补偿探测。
| 组件 | 技术原理 | 优化目标 |
|---|---|---|
| RTT 管理器 | EWMA 监测往返延迟,动态超时 | 避免超时设置不当导致通信失败 |
| MTU 管理器 | 自动探测单次最大数据包 | 最大化批量采集吞吐量 |
| Gap 优化器 | 基于设备负载调节请求间隔 | 平衡采集效率与设备负载 |
| ConnectionManager | 唯一 dial Owner;EnsureConnected / ScheduleReconnect | 全驱动统一重连与 single-flight |
北向平台集成
工业级 SLA 与稳定性验证
ScanEngine 对标工业采集软件的统计 SLA(非硬实时 PLC),核心指标内置阈值门控,通过 GET /diagnostics/scan-engine 与 sla_warnings[] 实现零外部依赖的可观测,无需 Prometheus/Grafana。
门控阈值
| 指标 | 阈值 |
|---|---|
scan_lag_p95_ms |
<100ms |
| 调度漂移均值 | <50ms |
稳态 scan_miss_deadline_total |
=0 |
| GC pause max | <20ms |
运行时指标经门控写入 diagnostics,压测与 Soak 在 CI 中形成回归闭环;断路器 + SerialQueue 硬隔离确保慢/离线设备不拖死 channel
万 Tag 压测基线(100 设备 × 100 点,1s Scan Class · 2026-07-12 Mac 复测)— 详见 Q3 万 Tag 压测报告;配套 G007 / Soak / 边缘压测见 压力测试报告
| 指标 | 实测 |
|---|---|
| lag P95 | 1.56ms |
| miss deadline | 0 |
| Pipeline 吞吐 | 约 9.8k points/s |
| 内存漂移 | 0.00%(<5%) |
Soak 长稳测试 · CI 门控 make test-soak-short(完整 soak 支持 SOAK_DURATION 覆盖,默认 72h 框架)。联调脚本与 go test 维护原则见 test/ 目录说明。
| 项目 | 结果 |
|---|---|
| failure rate | 0.143% |
| lag P95 | 1.66ms |
| mem drift | 1.19% |
| miss deadline | 0 |
部署建议:PoC <2k tag 可上线;中小规模生产 2k–10k tag 建议完成 Phase A+B 验收后部署。评估计划与完成报告见 SLA 评估 · SLA 完成报告。
功能索引
| 模块 | 说明 |
|---|---|
| 南向采集 | 工业协议 · 调度与影子 · 采集优化 |
| 北向上报 | 北向平台集成 |
| 虚拟影子 | 虚拟影子设备 |
| 边缘计算 | 规则与联动 |
| 系统管理 | Vue 3 管理 UI · JWT / LDAP · 安装向导 · config.db · 日志 · WebSocket 实时推送 |
| 质量保障 | 工业级 SLA · 轻量部署 |
完整驱动矩阵见 设备驱动;测试覆盖见 测试验证 · 南向驱动测试报告 · test/ 维护。
系统架构
架构图、组件职责与数据路径等运行时细节以文档站点为准(避免与 README 重复):
| 文档 | 说明 |
|---|---|
| 架构设计 | ScanEngine 调度内核、ShadowCore、系统架构图 |
| 边缘网关架构设计总览 | 全生命周期架构、SLA 调度与数据流 |
| 设备驱动 | 12 种协议驱动与开发规范 |
核心数据路径:ScanEngine 调度驱动 → ExecutionLayer → Driver → ShadowCore(SoT)→ Virtual Shadow Engine → ShadowBridge → DataPipeline → 边缘计算 / 北向 / WebSocket。
南向 13 协议与北向通道明细见 设备驱动 · 北向数据,此处不再重复罗列。
边缘计算指南
图 2:虚拟影子引擎示意图
本网关内置边缘计算引擎,支持基于规则的本地联动控制,特别针对工业位操作进行了深度优化。
1. 表达式语法
规则引擎兼容 expr 语言,并扩展了工业场景专用的语法糖:
基础变量:
v: 当前点位的实时值
位操作增强: 支持 1-based (v.N) 和 0-based (v.bit.N) 两种风格:
| 语法/函数 | 索引方式 | 说明 | 等效函数 |
|---|---|---|---|
v.N |
1-based | 获取第 N 位 (从1开始) | bitget(v, N-1) |
v.bit.N |
0-based | 获取第 N 位 (索引从0开始) | bitget(v, N) |
内置位运算函数:
bitget(v, n): 获取第 n 位 (0/1)bitset(v, n): 将第 n 位置 1bitclr(v, n): 将第 n 位置 0bitand(a, b),bitor(a, b),bitxor(a, b),bitnot(a)bitshl(v, n)(左移),bitshr(v, n)(右移)
2. 智能写入机制 (读-改-写)
当对寄存器进行位操作写入时,网关采用 RMW(读-改-写)机制,确保不破坏其他位的状态。
流程:
- 读:驱动读取当前点位完整值
- 改:根据公式计算新值
- 写:将新值写入设备
3. 工作流引擎
图 3:边缘流示意图
规则引擎支持高级工作流编排:
- 序列 (Sequence): 按顺序执行一系列动作
- 延时 (Delay): 在动作之间插入等待时间
- 检查 (Check): 验证某个条件是否满足
图 4:边缘核心示意图
4. 虚拟影子设备
Virtual Shadow Engine 从多台真实设备选点拼积木,将结果写入 ShadowCore,供边缘计算规则、北向接口与 UI 统一消费。
数据流: 南向采集 → 真实影子设备 → Virtual Shadow Engine → 虚拟影子设备 → 边缘计算 / 北向 / UI。单点位更新链路:真实点位值更新 → 解析公式依赖图 → 增量重算虚拟点位 → 写入 virtual-{id} 影子。
点位模式:
| 模式 | 说明 | 适用场景 |
|---|---|---|
| 直接映射 (Map) | 1:1 转发真实点位值,表达式即来源引用 | 跨设备汇聚开关量、点位整理、北向暴露前的命名空间统一 |
| 公式计算 (Formula) | 引用 channel_id.device_id.point_id 来源,支持 + - * / 与括号 |
跨设备求和/差值/平均、倍率换算、简单派生指标 |
配置流程: 选择源设备通道 → 勾选/拖拽点位 → 批量映射或手动添加积木 → 切换映射/公式、设置虚拟点位 ID 与单位 → 保存启用。保存后引擎按依赖图增量计算;可先验证映射点位实时值,再叠加跨设备公式。
典型场景: 跨设备流量汇总(如 pump_a.flow + pump_b.flow → total_flow)、多路温度平均供越限规则、分散点位整理后统一北向 MQTT/OPC UA 上报、工程单位换算(如 raw_value * 0.1)。虚拟点位 quality 取决于所有依赖点位;任一路离线会导致计算结果 quality 降级。
技术栈
后端: Go 1.25+
- Web 框架: Fiber
- MQTT: Paho MQTT
- Modbus: simonvetter/modbus
- OPC UA: gopcua/opcua
- 表达式引擎: expr
前端: Vue 3
- 构建工具: Vite
- UI 库: Vuetify 3
- 路由: Vue Router 4
- HTTP 客户端: Axios
部署流程
1. 环境要求
| 项目 | 最低 | 推荐 |
|---|---|---|
| 内存 | 128MB | 512MB+ |
| 存储 | 1GB | 4GB+ |
| CPU | 单核 | 双核+ |
| Go(源码编译) | 1.25+ | — |
| Node.js(前端编译) | 16+ | — |
| GoReleaser v2 | 最新版 | 一键多平台打包 |
支持 Linux / Windows,架构:x86_64、ARMv7、ARM64。
2. 编译方式
一键多平台打包(推荐)
项目使用 GoReleaser(.goreleaser.yml)统一构建前端与后端,并生成分平台安装包。GoReleaser 内置 nfpm,用于生成 .deb 包,无需单独安装 nfpm。
# 安装 GoReleaser(任选其一)
go install github.com/goreleaser/goreleaser/v2@latest
# 或 brew install goreleaser
# 在仓库根目录执行:清理 dist/ 并构建(snapshot 模式,不发布 GitHub Release)
goreleaser release --snapshot --clean
构建流水线(before.hooks):
go mod tidy— 整理 Go 依赖npm run build --prefix ./ui— 构建 Vue 前端至ui/dist/
交叉编译目标(CGO_ENABLED=0,入口 ./cmd/main.go,二进制名 edgex):
| 平台 | 架构 |
|---|---|
| Linux | amd64、arm64、arm/v7 |
| Windows | amd64(不含 arm/arm64) |
产物目录 ./dist/:
| 类型 | 说明 |
|---|---|
| tar.gz | edgex-{version}-{os}-{arch}.tar.gz,含二进制、conf/、scripts/、edgex.service、edgex.sh、ui/dist/ 等 |
| deb | edgex-v{version}-{arch}.deb,安装至 /usr/local/bin/edgex,含 systemd 单元与前端静态资源 |
| SHA256SUMS | 各产物校验和 |
版本信息通过 ldflags 注入:Version、BuildTime、CommitID(snapshot 模式下版本号为 snapshot 标识)。
snapshot vs 正式发布:
--snapshot仅本地/CI 构建,不上传 Release。推送v* 标签并执行goreleaser release(无--snapshot)时,按配置创建 draft GitHub Release(release.draft: true)。
手动编译(开发 / 单平台)
git clone https://github.com/anviod/edgex.git
cd edgex
go mod tidy
# 后端:静态编译,无 CGO 依赖
CGO_ENABLED=0 go build -o edgex ./cmd/main.go
# 前端(生产环境推荐,产物由后端托管 ui/dist)
cd ui && npm install && npm run build && cd ..
3. 目录与配置
| 路径 | 说明 |
|---|---|
data/ |
运行时数据目录;config.db 存储配置(首次启动为空则进入安装向导) |
logs/ |
运行日志(默认 logs/gateway.edgex.log) |
conf/ |
遗留 YAML 配置,用于一次性迁移(-conf 参数指定,默认 ./conf) |
首次启动若 data/config.db 不存在,网关以安装模式启动,通过 Web UI 完成初始化。
4. 启动服务
# 默认配置目录 ./conf,HTTP 端口见 server 配置(常见 8080/8082)
./edgex
# 指定遗留 YAML 迁移目录
./edgex -conf ./conf/
访问 http://localhost:<port> 进入管理界面。默认账号见安装向导或 conf/users.yaml。
5. 生产部署参考
- systemd 服务、防火墙端口、配置初始化:见 用户手册 — 部署流程
- 系统包安装与升级(deb / rpm):见 用户手册 — 安装指南
- EdgeOS 集成与北向通道:见 EdgeOS 快速入门
- 多从站 Modbus 配置:见 多从站快速入门
快速开始
前置要求
1. 启动后端
# 获取依赖
go mod tidy
# 运行网关
go run cmd/main.go
# 或者指定配置目录
go run cmd/main.go -conf ./conf/
2. 编译前端
cd ui
# 安装依赖
npm install
# 编译生产环境代码
npm run build
访问 http://localhost:8082(默认端口)即可进入管理界面。
默认账号见 conf/users.yaml(admin / passwd@123)。
3. 设备扫描与点位管理(BACnet)
- 通道页面进入设备 → 点位列表 → 点击”扫描点位”即可从设备读取对象列表
- 勾选后点击”添加选定点位”,系统将以
Type:Instance地址批量注册 - 发现流程:优先单播 WhoIs,失败后进行多网口广播;仍失败时使用配置地址回退构造设备并标记为离线
4. OPC UA 服务端指南
安全连接:
- 默认启用
Basic256Sha256(SignAndEncrypt)安全策略 - 自动生成有效期 10 年的自签名证书
- 支持
admin/admin(默认)登录
双向互通:
- 数据上报: 所有南向通道采集的数据自动映射到 OPC UA 地址空间
- 反向控制: 支持客户端直接修改点位值,网关自动透传写入指令至底层设备
API 概览
所有 API 需要携带认证头:Authorization: Bearer <token>
| 功能 | API | 方法 |
|---|---|---|
| 扫描通道设备 | /api/channels/:channelId/scan |
POST |
| 扫描设备对象 | /api/channels/:channelId/devices/:deviceId/scan |
POST |
| 获取点位列表 | /api/channels/:channelId/devices/:deviceId/points |
GET |
| 添加点位 | /api/channels/:channelId/devices/:deviceId/points |
POST |
| 更新点位 | /api/channels/:channelId/devices/:deviceId/points/:pointId |
PUT |
| 删除点位 | /api/channels/:channelId/devices/:deviceId/points/:pointId |
DELETE |
| 实时数据订阅 | /api/ws/values |
GET |
| 获取边缘计算日志 | /api/edge/logs |
GET |
| 导出边缘计算日志 | /api/edge/logs/export |
GET |
配置结构
配置文件已拆分为模块化 YAML 文件,位于 conf/ 目录:
server.yaml: HTTP 服务器端口、静态资源路径channels.yaml: 南向通道及设备配置northbound.yaml: 北向 MQTT/SparkplugB 配置edge_rules.yaml: 边缘计算规则配置system.yaml: 系统级网络配置users.yaml: 用户账号管理storage.yaml: 数据库路径配置
生产环境推荐使用 data/config.db(BoltDB)存储配置;首次启动若不存在则进入 Web 安装向导。
示例(BACnet 通道片段):
id: bac-test-1
protocol: bacnet-ip
config:
interface_port: 47808
devices:
- id: "2228316"
enable: true
interval: 2s
config:
device_id: 2228316
ip: 192.168.3.112
port: 47808
points:
- id: AnalogInput_0
name: Temperature.Indoor
address: AnalogInput:0
datatype: float32
readwrite: R
更新记录
最近更新
- 2026-07:
- EtherCAT M1(v0.0.8): PDO 周期交换、CoE SDO 邮箱、模拟主站;
-short覆盖率 87.8%;依赖升级至github.com/anviod/EtherCATv1.0.3 - 南向驱动全量回归(2026-07-11 / 07-12): 主驱动包 22/22 PASS(含 EtherCAT);首次 Windows amd64 全量回归;详见 南向驱动测试报告
- Mac 万 Tag / ScanEngine 复测(2026-07-12): Q3 lag P95 1.56ms · miss=0 · G007 986 设备/s · Short Soak 五 gate 全绿;见 压力测试报告 · Q3 万 Tag 压测
- 热路径单测补强(2026-07-12):
internal/core80.0% ·ai_agent91.4% · Modbus 65.9% · EtherNet/IP 62.2%(-short,均 ≥60%) - Industrial Protocol Copilot(AI 助手)MVP: 协议逆向/配置辅助面板落地,热路径单测已补;工业联调与完整验收仍进行中
- 产品手册: 新增精简 PRODUCT.zh-CN / PRODUCT
- Q3 南向采集闭环与 SLA 调度达标: Phase A–D 验收复测、diagnostics API、ShadowCore 性能优化
- 版本发布门禁: G-Stability / G-Industrial / G-Performance / G-Lightweight 四道门禁文档化
- Dashboard v3 UI 与虚拟影子设备体验优化
- EtherCAT M1(v0.0.8): PDO 周期交换、CoE SDO 邮箱、模拟主站;
- 2026-06:
- ScanEngine 调度驱动内核落地:ExecutionLayer + ResourceController + 调度闭环;CollectionScheduler/deviceLoop 已移除
- ConnectionManager 统一重连:Modbus/DLT645 等驱动重连已统一至 ConnectionManager
- SNMP v2c/v3 与 Omron FINS 驱动正式发布
- Profinet IO 与 KNXnet/IP 驱动: I/O 模块采集与楼宇自动化网关接入
- IEC 60870-5-104 M1 交付: 总召唤、自发上报、单点遥控
- 南向驱动测试报告: 单元测试、性能基准与边界场景覆盖矩阵
- 采集健康检测: 取消独立心跳,以采集成功判断连接健康
- BACnet 半开探测优化: 冷却期结束自动探测设备恢复
- 2026-05:
- S7 协议完整支持: S7-200Smart/1200/1500/300/400 全系列 PLC
- 连接生命周期系统: 状态机、指数退避、冷却期策略
- 2026-02-25:
- 点位管理增强: 实现点位批量删除功能,支持基于搜索关键词和质量状态的响应式实时过滤
- Modbus 稳定性优化: 增加非法数据地址自动检测与 24 小时长冷却机制
- 2026-02-24:
- TCP 链路深度监控: 增加本地 IP:端口、远程 IP:端口、链接时长及最后断开时间显示
- 链路展示优化: 前端显示优化为直观的「本地 -> 远程」连接模式
- 2026-02-20:
- Modbus 智能 MTU 探测: 自动探测并保存从站支持的最大寄存器数量
- Modbus 指数退避重连: 优化连接策略,避免网络抖动时的频繁重连尝试
界面预览
概览与系统
初始化安装

图 初始化安装
登录页

图 登陆
首页监控

图 首页监控
系统设置

图 系统设置
系统网络设置

图 系统网络设置
南向采集
通道列表

图 南向通道采集
通道监控指标

图 通道监控指标
南向通道驱动列表

图 南向通道驱动列表
BACnet 设备发现

图 BACnet设备发现扫描
BACnet 设备发现结果

图 BACnet设备发现扫描结果
BACnet 点位扫描

图 BAC点位对象扫描发现
OPC_UA_设备模型扫描

图 OPC_UA_设备模型扫描
OPC_UA_设备模型扫描结果

图 OPC_UA_设备模型扫描结果
OPC_UA_设备数据订阅

图 OPC_UA_设备数据订阅
边缘计算
虚拟影子设备

图 虚拟影子设备
编辑虚拟影子设备

图 编辑虚拟影子设备
虚拟影子设备帮助

图 虚拟影子设备帮助
计算监控

图 边缘计算监控
规则配置

图 边缘计算规则配置
边缘计算规则支持类型

图 边缘计算规则支持类型
边缘计算规则支持动作类型

图 边缘计算规则支持动作类型
规则帮助手册

图 边缘计算规则配置帮助文档
北向数据
北向数据共享总览页面

图 北向数据共享总览页面
-
协议覆盖率说明:据 HMS Networks 2026年6月发布的年度工业网络市场份额报告,PROFINET(30%)、EtherNet/IP(25%)、EtherCAT(20%)、Modbus(TCP+RTU 约 8%)四大主流工业以太网协议合计占据全球工厂自动化新增节点约 83% 的市场份额。结合 OPC UA(IT/OT 融合核心标准)、S7 / Mitsubishi MC / FINS(三大 PLC 厂商私有协议)、BACnet / KNX(楼宇自动化行业标准)、IEC 104 / DL/T645(电力能源行业标准)、SNMP(网络设备管理标准)等行业专属协议,可覆盖工业现场绝大多数设备接入场景。
分维度覆盖参考:
维度 覆盖协议 说明 离散制造 PROFINET、EtherNet/IP、EtherCAT、Modbus、S7、FINS、Mitsubishi MC 覆盖 PLC、机器人、CNC 等主流设备,基于 HMS 2026 数据推算约 90% 新增节点 过程控制 Modbus、OPC UA、PROFINET 覆盖 DCS、SCADA 及仪表系统 楼宇自动化 BACnet、KNXnet/IP、Modbus 覆盖暖通空调、照明、门禁等楼宇子系统 电力能源 IEC 104、DL/T645 覆盖电力调度自动化与电能计量 网络设备管理 SNMP 覆盖交换机、路由器等网络基础设施监控 详见 HMS 2026 工业网络报告。 ↩