甲方信息化部门甩过来一句话:"我们已经有一个综合运维平台,你们智慧用电数据直接通过API接进来就行,别让我们再开一个账号。"弱电分包这才发现,手里的电气厂家只给了个Web后台,北向只有一个加密私有SDK,既没有HTTP接口文档,也不支持MQTT订阅。现场折腾两周,最后只能让电气厂家临时开发接口,验收节点差点黄掉。在陕西,越来越多甲方不是要"一个孤立的智慧用电系统",而是要"把数据并进我已有的平台"。谁能把南向现场设备和北向第三方平台同时打通,谁才是真正能交付的集成商。本文讲清楚智慧用电对接第三方平台时,南向、北向各走哪些协议,API该怎么设计、怎么鉴权、怎么联调。
智慧用电对接第三方平台,技术上是两条相反方向的数据流:
很多项目卡就卡在"南向能采,北向开不出来"。电气厂家往往只关心自己后台能不能看,对"把数据喂给别人"准备不足。选型时必须在合同阶段就把北向接口清单写死。
南向这一段在第35篇已展开:RS485 手拉手接线、120Ω终端电阻、总线最远约1200m、Modbus RTU 帧结构、CRC16、字节序。网关负责轮询多台从站、做协议转换。这里强调一点:网关要做"协议可配置",不能把寄存器映射写死在固件里,否则换一厂家探测器就要重新刷机。
第三方平台如果是物联中台,最常见的对接方式就是让它订阅智慧用电平台的 MQTT topic。平台作为 broker 或转发端,按 项目/建筑/回路/测点 发布遥测和告警。第三方拿到的是标准 JSON payload,例如:
```
{
"project": "xian-xpark",
"loop": "b1-incoming-1",
"ts": 1726800000,
"leakage_mA": 120.5,
"temp_C": 46.2,
"alarm": false
}
```
鉴权用用户名密码或客户端证书,ACL 限制第三方只能订阅授权项目的 topic。
甲方 IT 平台通常更熟悉 HTTP API。典型接口包括:
GET /api/v1/devices:设备列表;GET /api/v1/telemetry?deviceId=xx&start=..&end=..:历史遥测;GET /api/v1/alarms?status=active:活动告警;POST /api/v1/alarms/{id}/ack:告警确认/派单。鉴权用 OAuth2/JWT 或 API Key,传输走 HTTPS 443。接口要分页、要限速、要有错误码规范。第三方可以定时轮询,也可以由平台通过 Webhook 把告警事件主动推给第三方回调地址。
工业场景(厂区、数据中心)用 OPC UA 做统一信息模型,SCADA 原生支持;楼宇 BA 系统用 BACnet/IP,把剩余电流、温度等映射成模拟量对象。这两类对接的重点不是"能不能",而是"点表怎么映射"——把电气侧的测点翻译成对方母语。
对接第三方最容易被忽略的是数据语义。直接把 Modbus 寄存器扔给第三方,对方不知道单位、量程、阈值、告警级别。成熟的北向接口应该同时提供:点表元数据(单位、量程、系数)、实时值、告警状态、告警阈值、设备通讯状态。这样第三方平台不用反过来问"这个数是多少安培"。
国标衔接上,剩余电流式、测温式、故障电弧探测器的技术要求仍按 GB 14287 系列,与 GB 50116、GB 50016 衔接;电能质量参数参考 GB/T 14549、GB/T 15543。北向 API 不改变这些业务标准,只是把合规采集到的数据开放出去。下文引用以最新版国标为准。
陕西鹰威科技在做北向对接时的落地建议:
1. 投标阶段就要北向接口清单:明确支持 MQTT 订阅、HTTP API 还是 OPC UA/BACnet,要求厂家提供接口文档(Swagger/OpenAPI 最好)。
2. 点表元数据随数据一起交付:单位、量程、系数、阈值、告警级别,写进 API 字段或 topic payload。
3. 鉴权与网络策略先行:HTTPS/TLS、API Key 定期轮换、白名单IP、限流;跨网对接走专线或VPN,不把接口裸放公网。
4. Webhook 推送要重试与签名:平台推给第三方的告警,第三方接收后要返回2xx,平台做指数退避重试;payload 加签名防伪造。
5. 联调用沙箱:先在测试环境对接通,再切生产;保留一周并行期,两边数据对账。
误区一:以为"我们有API"就等于能对接。 很多厂家的"API"是内部调试接口,没有文档、没有鉴权、没有错误码,第三方根本用不了。要的是正式 OpenAPI 文档、稳定版本号、沙箱环境。
误区二:北向只推告警,不推实时数据和元数据。 第三方平台只收到告警事件,没有历史曲线和点表定义,做不了趋势分析。北向应同时提供实时、历史、告警、元数据四类接口。
误区三:把私有协议当开放接口卖。 有些厂家所谓"对接"是让对方装自己的私有SDK或客户端,这不是开放,是锁定。真正的北向对接应该基于标准协议和公开文档。
在陕西做智慧用电第三方平台对接,核心是"南向标准化、北向文档化"。南向把 RS485/Modbus 做扎实,北向把 MQTT/HTTP API/OPC UA/BACnet 做成有文档、有鉴权、有元数据的开放接口。工程商在选型时直接问厂家三件事:北向接口文档能不能发我、是否支持标准协议、点表元数据随不随数据给。这三个问题问下来,对方是真开放还是假开放,基本一目了然。