第2章:远程监控系统架构

远程监控系统,说白了就是把光储一体机的运行状态搬到你的手机上。我刚开始接触这个领域时,总觉得不就是个数据传输嘛,有什么难的?后来踩了不少坑才发现,这里面的门道还真不少。

今天我就把这套架构拆开揉碎了讲给你听。它分四层:感知层、网络层、平台层、应用层。每一层都有它的脾气,咱们一层层来看。

2.1 感知层:设备的数据触角

感知层是系统的"眼睛"和"耳朵"。它负责采集光储一体机的各种运行参数。

我在项目中遇到过最头疼的问题,就是传感器选型不当导致数据偏差。举个例子,光伏板的温度传感器,如果选的是工业级(-40℃~85℃),放在户外完全没问题。但有人为了省钱选了商业级(0℃~70℃),夏天暴晒下直接罢工。

感知层核心传感器清单:

  • 电压传感器:监测光伏组件、电池组、逆变器直流侧/交流侧电压
  • 电流传感器:霍尔效应型或分流器型,精度要求±0.5%以内
  • 温度传感器:PT100或NTC热敏电阻,建议双冗余设计
  • 辐照度传感器:硅光电池式,用于评估光伏发电效率
  • 电能计量芯片:如ADE7878,实现双向计量

嗯,这里要注意:传感器输出的信号通常是4-20mA或0-10V的模拟量,需要经过ADC转换成数字量。我建议采样频率至少100Hz,这样才能捕捉到电网波动时的瞬态响应。

2.2 网络层:数据的高速公路

网络层负责把感知层采集的数据传出去。你想想看,光储一体机可能装在屋顶、车库、甚至偏远农场,通信方式必须因地制宜。

我个人习惯把网络层分成三种场景:

通信方式 适用场景 优点 缺点
4G/5G 偏远地区、无WiFi覆盖 覆盖广、即插即用 需SIM卡、有流量费用
WiFi 家庭、商业楼宇 免费、带宽高 距离受限、易受干扰
以太网 工厂、大型电站 稳定、低延迟 需布线、灵活性差

我曾经在一个项目中,客户坚持用WiFi连接,结果设备装在金属配电柜里,信号衰减得厉害。后来我建议加装外置天线,问题才解决。说白了,网络层的核心就三个字:稳、快、省

避坑指南:我曾经遇到过4G模块在弱信号区频繁掉线的问题。后来发现是天线匹配没做好。建议选用带SMA接口的模块,方便更换高增益天线。另外,一定要配置心跳包机制,每30秒发一次,确保连接不断。

2.3 平台层:云端的大脑

平台层就是云服务器,它负责接收、存储、处理所有设备的数据。为什么需要它?因为本地设备存储能力有限,而且你不可能跑到每台设备前看数据。

我参与过的一个项目,平台层架构是这样的:

数据流路径:
传感器 → 网关 → MQTT Broker → 数据清洗 → 时序数据库 → API服务 → 应用层

关键技术栈:
- 消息队列:EMQX(支持百万级并发)
- 时序数据库:InfluxDB(写入速度10万点/秒)
- 应用框架:Spring Boot + Redis缓存

平台层最怕什么?数据丢失。我记得有一次云服务器磁盘满了,导致新数据写不进去,整整丢了2小时的数据。从那以后,我强制要求所有项目配置磁盘告警和自动清理策略。

重要提醒:平台层必须考虑数据安全。建议采用TLS加密传输,设备端使用证书认证。另外,用户密码不要明文存储,用bcrypt加盐哈希。我曾经见过一个平台被脱库,就是因为密码没加密。

2.4 应用层:你手中的遥控器

应用层是用户直接接触的部分,包括手机APP和Web端。它的任务是把平台层的数据变成直观的图表、告警、控制按钮。

我设计应用层时,会遵循三个原则:

  • 实时性:数据刷新间隔不超过5秒,关键告警延迟小于1秒
  • 易用性:一个页面展示所有核心指标,不要翻三页才能看到发电量
  • 可靠性:离线时能显示最后一条数据,并提示"设备离线"

举个实际例子,APP首页我通常会放四个卡片:

  1. 今日发电量(kWh)—— 绿色大字显示
  2. 电池SOC(%)—— 环形进度条
  3. 负载功率(kW)—— 实时曲线图
  4. 系统状态(正常/告警/故障)—— 状态指示灯

为什么会这样设计?因为运维人员扫一眼就能判断系统是否正常。我曾经见过一个APP,把数据藏在三级菜单里,客户气得直接打电话骂人。

2.5 架构总览:一张图看懂

说了这么多,咱们用一张图把整个架构串起来。这张图我画了很多遍,每次给客户讲解时都用它,效果很好。

光储一体机远程监控系统架构 感知层(传感器) 电压传感器 | 电流传感器 | 温度传感器 | 辐照度传感器 | 电能计量芯片 采样频率 ≥ 100Hz | 精度 ±0.5% | 输出 4-20mA / 0-10V RS485 / CAN / 以太网 网络层(4G / WiFi / 以太网) 4G/5G(覆盖广) | WiFi(免费) | 以太网(稳定) 心跳包 30s | TLS加密 | 双通道冗余 MQTT / HTTP / CoAP 平台层(云服务器) EMQX消息队列 | InfluxDB时序数据库 | Redis缓存 数据清洗 | 告警规则 | 证书认证 | 自动扩容 RESTful API / WebSocket 应用层(APP / Web) 实时数据 | 历史曲线 | 告警推送 | 远程控制 | 报表导出 数据采集 数据传输 数据存储 数据展示

这张图我每次培训都会用。你看,数据从底层的传感器一路往上,经过网络传输、云端处理,最后变成你手机上的一个数字。每一层都不可或缺。

核心要点总结:

  • 感知层要选对传感器,精度和量程是关键
  • 网络层根据现场环境选型,别忘了加心跳包
  • 平台层做好数据安全和存储策略
  • 应用层把复杂数据变成简单直观的界面

好了,这一章就讲到这里。下一章咱们聊聊具体的硬件选型和接线,那才是真正动手的地方。


公众号:蓝海资料掘金营,微信deep3321