在城市水务行业中,各省市水务集团与水务公司作为国有资产管理和基础设施投资运营主体,负责城镇供水、排水防汛、污水处理、中水回用、河道运维、污泥处置、海水淡化、水务工程建设等各类水务相关业务。根据国务院国资委与各地方国资委新基建数字化转型以及智慧水务规划的目标任务,各水务运营主体提出了通过数字化转型提升集团生产效能,助推水务事业高质量发展的要求。

水务业务的数字化转型过程可分为「数据先行、夯实基础」、「资源整合、管理提升」、「管理创新、战略发展」三个阶段实施。 而构建一个物联网统一接入系统则是「数据先行,夯实基础」阶段的重要任务。

本文将分享青岛研博结合 EMQ 物联网数据基础设施软件构建智慧水务平台产品的实践经验。

水务数字化的现状与问题

厂站建设不标准

厂站数据未实现实时数据集中监管,各个厂站自控系统建设标准未统一,网络部署无规划,各个厂站 PLC 和组态软件的点表没有统一的标准规范,制约了数据汇聚及大数据分析应用,不利于数据挖掘工作。

抄表标准不统一,系统壁垒严重

随着各供水企业远传水表数量逐渐增多,各水表厂家的数据传输标准不统一,导致远传水表不能互换;各水表厂家各自搭建了抄表平台,存在抄表平台重复建设和数据壁垒问题,不利于集团统一管理。

数据质量无法支撑大数据平台

部分水务集团规划建设了集团大数据中心实现数据统一治理,大数据中心必须有高质量的感知层数据支撑。由于厂站数据、抄表数据以及其他业务数据没有统一接入规范,数据质量参差不齐。各类数据分散在各个系统中,很难形成可为大数据中心提供实时性强,格式规范的数据源。

青岛研博水务物联网统一接入系统建设思路

为了更好地服务于当前水务数字化转型的需求,青岛研博提出了基于物联网技术实现水务物联网统一接入系统的建设思路:

EMQ 助力青岛研博建设智慧水务平台_物联网

智慧水务物联网统一接入系统

厂站数据在边缘侧统一采集并规范化处理上报

为了解决厂站生产数据分散和数据壁垒问题,通过将已有厂站、管网的各类工业自动化设备与系统的数据在厂站边缘侧进行实时采集,数据格式统一处理,将各厂站数据统一接入到上层的物联网统一接入系统中。

从各个厂站上传周期需要根据现场的物理设备进行确认,但一般速率都比较快。每个厂站要采集的数据都不相同,点数不同,以其中某厂站为例,需要接入各种类型设备。 如某大型厂站主站设备包括:搅拌器,内回流泵(远程就地、故障、手动自动,开、停),电动阀门(阀位、开度、开到位、关到位、故障),生物池空气阀门(调节阀、阀位),外回流池,刮泥机,液位计,流量计,进口氨氮,氨氮硝氮一体机,溶解氧探头,ORP(测试微生物),MLSS(污泥浓度); 子站设备包括:鼓风机流量,压力,鼓风机,计量泵,液位计,卸料泵,混合泵,电动阀,流量计。大厂站采集点位在几千点,小型厂站采集点规模也在在几百点。

在实际项目中,厂区可以分为新建厂区和老厂区两种,老厂区基本上 PLC 比较老旧,而且不可以对现有 PLC 程序进行改造,需要对接厂区现有 SCADA 系统(一般对接 OPC-DA 接口)将数据采集出来后进行数据格式转换,然后上传到物联网统一接入系统中。新建厂区可以要求新建厂区的 PLC 支持 OPC UA 协议或者 Modbus TCP 协议,通过对接这两种协议将数据上传到物联网统一接入平台。

远传水表统一接入

针对抄表平台重复建设和数据壁垒问题,通过建立一套不受硬件厂商限制,实现不同品牌远传水表接入的数据采集系统,具备对各供水企业远传水表数据统一接入的能力。 物联网统一接入系统可以通过不同的通信方式,同时支持 TCP、UDP、MQTT、COAP 等物联网通讯协议连接感知层设备、工程系统和运营商物联网平台等系统进行对接、采集与数据汇聚。

接入数据汇聚,统一处理,对接大数据平台

通过建设物联网统一接入系统,将海量水务设备数据汇聚在数据中心。在平台数据汇聚层进行对各类数据按照水务运营部门对数据源格式进行统一处理,并实时对接后台的大数据中心的数据服务接口,从而支撑水务大数据分析的需求。

基于 EMQ 数据基础设施软件的云边结合水务物联网接入实施方案

综合上述方案与需求,统一接入物联网平台主要需要具备以下能力:

  • 边缘侧各类工控协议的对接,边缘数据处理以及与数据中心平台实时对接上报数据;
  • 平台侧多种物联网设备与各类物联网协议统一接入,并且提供对接第三方数据平台能力;
  • 平台高可靠海量数据汇聚,低时延低实时数据处理与北向大数据平台对接能力;

青岛研博在评估考察了各类基础软件能力后,选择了采用 EMQ 的云边整体数据接入产品作为研博平台的数据底座。具体实施方案如下:

厂站数据采集

厂站通过部署支持标准 Linux 的工业网关硬件配合安装 EMQ 边缘工业协议网关软件 ​​Neuron​​ ,将网关接入厂站的生产网络中,然后通过配置 Neuron 以及现场 PLC 和 SCADA 系统通信获取数据。

为了符合水务运营部门对厂站数据上报格式的统一化要求,在边缘侧的工业网关中安装 EMQ 提供的轻量级流数据处理引擎 ​​eKuiper​​,在厂站本地将数据格式转换为标准的上行报文格式。

eKuiper 规则配置参考:

EMQ 助力青岛研博建设智慧水务平台_实践案例_02

eKuiper 规则 SQL 语句示例

EMQ 助力青岛研博建设智慧水务平台_mqtt_03

规则数据模版

最终厂站数据报文将以 JSON 格式呈现:

{
"time": 1629963922278,
"topic": "Up/NABSPAP/79120285/61404601/Sensor",
"deviceTag": "61404601",
"productKey": "79120285",
"groupId": "NABSPAP",
"deviceId": "123456789012345678",
"Data": [
{
"Value": "92",
"Name": "FLOW",
"Error_Number": 0
},
{
"Value": "92",
"Name": "ZLJFLOW",
"Error_Number": 0
}
],
"channelId": "0",
"protocol": "MQTT"
}

厂站内网通过运营商专网服务对接上级单位生产网。边缘网关通过 ​​MQTT 协议​​​将标准化的厂站数据报文实时发给到生产网中 ​​EMQX​​ 的 ​​MQTT 集群​​服务中。在生产网与办公网之间,通过 EMQX 集群桥接方式穿越防火墙进行数据实时桥接,最终将实时数据写到办公网中的 EMQX 集群中。

EMQ 助力青岛研博建设智慧水务平台_iot_04

厂站数据采集架构图

水表数据采集

通常水表数据采集包括大表与户表两大类,新型的大表与户表采用可以 MQTT 协议直接对接统一数据平台。 表计上报的 MQTT Payload 通过水务运营管理部门的统一规划的上行报文规范进行数据传输。户表上传周期每天一次、大表半小时上传一次。 每个户表数据包含:

数据类型

别名(Name)

单位

数据类型

瞬时流量

FLOW

0.001m³/h

String

正累积流量

ZLJFLOW


String

负累积流量

FLJFLOW


String

水温

TEMP


String

压力

PRESS

KPa

String

金额

MONEY


String

累积运行时间

WKHOUR

h

String

结算日期

DATE

年-月-日

String

结算日累积流量

DAYFLOW


String

实际时间

TIMESTAMP

时间戳

String

每个大表数据包含:

数据类型

别名(Name)

单位

数据类型

瞬时流量

FLOW

0.001m³/h

String

正累积流量

ZLJFLOW


String

负累积流量

FLJFLOW


String

压力

PRESS

KPa

String

现有表计主要为直连设备 NB 水表与 M-Bus 水表以及采集网关,对接方式有以下三种方案:

  • 水表与采集网关符合水务运营主体制定的统一接入规范直接上传

由营销系统通过配表操作,向物联网统一接入系统推送新增或更换表具信息。物联网统一接入系统按统一接入规范进行对接;

  • NB 水表通过运营商平台上传数据

由营销系统通过配表操作,向物联网统一接入系统推送新增或更换表具信息。 物联网统一接入系统按照运营商上行协议,进行数据对接,但运营商平台传送数据类型需符合统一接入规范;

  • 通过自定义上行协议与系统对接

现实业务中存在某些国际品牌,如西门子,只能通过厂家自定义上行协议与系统对接的设备。由营销系统通过配表操作,向物联网统一接入系统推送新增或更换表具信息,物联网统一接入系统按照厂家自定义上行协议进行对接。

EMQ 助力青岛研博建设智慧水务平台_mqtt_05

作为较大的市级水务系统,表计大约在几十万台左右,结合厂站数据以及其他类型设备,需要系统可以支持百万设备并发连接能力。EMQX 作为高性能物联网消息中间件,在平台接入层提供了海量数据统一汇聚能力。由于水务平台系统的业务关键性,需要采用 EMQX 多节点集群满足了系统高可用需要,避免接入层的单点故障。

EMQX 内置提供了 MQTT 协议接入、NB 设备常用的 CoAP/LwM2M 协议接入、运营商 HTTP RestAPI 接入数据接入。同时,EMQX 针对企业私有协议提供了协议扩展能力,青岛研博通过自研开发 EMQX 私有协议插件,实现了一套平台全协议栈统一接入。

平台数据处理与北向数据对接

通过对水务厂站与水表数据的统一接入,可以将设备数据汇聚到集团 EMQX 集群中。在设备数据对接北向大数据平台前,可以按要求在 EMQX 中对原始数据进行清洗与整理,使数据规范化。

由于每种设备协议的不同采集的数据格式也是千差万别,为了方便后续对数据的有效使用,需要对数据统一构建数据模型。基于 EMQX 内置的高性能实时规则引擎,数据被筛选后形成预处理数据,将数据的各个维度(时间、空间、业务)等进行标准化处理,构建统一设备数据模型。有了统一的数据模型以后,可以更好的支撑后续的数据计算和大数据分析。设备统一规范参考结构如下:

EMQ 助力青岛研博建设智慧水务平台_mqtt_06

通过 EMQX 规则引擎的处理后的数据,一方面对接大数据平台的大数据服务(如 Kafka 服务),另一方面数据存储到本地的时序数据库中,实现了对数据的实时分流。以下为 EMQX 规则引擎配置:

EMQ 助力青岛研博建设智慧水务平台_emq_07

EMQ 助力青岛研博建设智慧水务平台_mqtt_08

性能测试

为了确保统一接入系统性能,我们对产品进行了模拟性能测试。测试模拟 10 万台设备连接双节点 EMQX 到 Kafka 和 TDengine,模拟每台设备间隔一分钟发两条数据,主要关注平均响应时间不高于 100 毫秒,吞吐量不低于 1000TPS,响应成功率不低于百分之 99.999%。 测试报告如下:

EMQ 助力青岛研博建设智慧水务平台_物联网_09EMQ 助力青岛研博建设智慧水务平台_mqtt_10EMQ 助力青岛研博建设智慧水务平台_iot_11

项目成果与未来展望

到本文截稿日,本方案已经在各地区实际项目中接入各类大小水厂数十个,采集点超过 300000 点,表计设备超过 50000 个。青岛研博打造的统一接入系统,为应用层实现了对水表各类设备的统一设备管理、智能配置等平台能力。同时,每月为上层大数据平台提供超过 1TB 的高质量实时数据。

EMQ 助力青岛研博建设智慧水务平台_emq_12

研博水务物联网管理平台

青岛研博基于自身在数据可视化方面多年积累,结合统一接入平台实时数据,实现了对水务系统各个网点和厂站的实时数据大屏展示、分区数据自定义展示能力,为水务运营主体的业务精细化管理与快速业务决策提供有力支撑。

EMQ 助力青岛研博建设智慧水务平台_emq_13EMQ 助力青岛研博建设智慧水务平台_实践案例_14

除了提供产品,青岛研博在物联网统一接入系统项目实施过程中,通过对每个厂站详细调研以及基于工业物联网技术架构实现的厂站数据实时采集架构改造,针对存在的问题编制了厂站建设改造指导方案,为新厂站及现有厂站自动化改造提供建设规范,从根本上解决了水厂数据无法统一汇聚的问题。

版权声明: 本文为 EMQ 原创,转载请注明出处。

原文链接:​​https://www.emqx.com/zh/blog/emq-helps-qingdao-yanbo-build-a-smart-water-platform​