HY-K 太阳能控制器协议|水利物联太阳能供电系统接入指南
干水利物联这么多年,一直有个绕不开的现实问题:设备再智能,没电就是摆设。
河道水位计、山坳雨量站、田间流量计、坝上监控,绝大多数野外点位拉不到市政电。不少项目一开始选择开挖埋电缆,征地协调周期长,土建成本甚至超过设备本身。
我们团队的思路从单纯接入感知设备,延伸到整套离网供电系统一体化管理。本文是太阳能供电协议系列第一篇,拆解华昱信通 HY-K 系列(HY-K60A)太阳能控制器,协议同源 EPEVER IT-NC G3,资料可互通参考。
野外离网供电,本质是一套完整底座:光伏发电、电池储电、控制器负责充放电管理、负载控制,再配上远程监控。供电故障主要集中三点:
取电难:无电网覆盖,布线征地成本高;
储电难:普通电池缺少专业保护,低温、长期阴雨很容易亏电;
管电难:站点分散,供电隐患是缓慢恶化的,往往等到设备掉线才发现,运维成本高。
野外光伏不是买一块光伏板就完事,需要一套可监测、可远程调整的供电系统。
一、HY-K 控制器能力简介
充电侧:双路 PV 输入,MPPT 跟踪,过压、欠压、过充保护
电池侧:支持铅酸、胶体、锂电、三元电池,带温度补偿;接锂电池可读取 BMS 电芯数据
负载侧:支持手动、光控、定时三种控制模式,具备过载、短路保护
通信接口:标准 Modbus RTU,默认从站 ID=1,115200,8N1。工程上一般搭配 DTU 透明传输或者 Modbus TCP 网关转发,一共 200 + 寄存器点位,覆盖光伏、电池 SOC、负载状态、告警、电量统计等数据。
二、协议重点 & 高频坑点
底层是标准 Modbus RTU,CRC16 多项式 0xA001,初值 0xFFFF,低字节在前。但有几处和常规 Modbus 习惯不一样,也是大部分对接翻车的地方:
1. 功能码千万别搞混(最隐蔽的坑)
很多工程师习惯性用 0x03 读实时数据,这台设备是反过来的:
|
功能码 |
用途 |
|
0x04 |
读实时数据 / 额定参数 / 状态位 / 统计电量 / BMS(输入寄存器) |
|
0x03 |
读设置参数区(保持寄存器,0x9000 起) |
|
0x10 |
写设置参数 |
|
0x05 |
写单个线圈(开关量) |
|
0x01 |
读线圈 |
坑:功能码用反,不一定直接报错,可能返回一堆看起来正常、实际完全错误的数据,排查难度极高。
2. 寄存器分 6 个独立区域,不要一次性盲目连续读取
寄存器地址不连续,分为 6 块:
|
分区 |
起始地址 |
寄存器数 |
内容 |
|
额定参数 |
0x3002 |
12 |
PV/电池/负载的额定电压电流功率 |
|
实时数据 |
0x3100 |
34 |
光伏、负载、电池的实时电压电流功率温度 SOC |
|
状态位 |
0x3200 |
7 |
按位拆的告警与运行状态 |
|
统计电量 |
0x3300 |
21 |
今日/本月/本年/累计的用电量、发电量 |
|
BMS 数据 |
0x3400 |
36 |
锂电池电芯级数据、保护状态 |
|
设置参数 |
0x9000 |
76 |
电池类型、各种电压阈值、负载控制模式等 |
推荐方案:按分区合并采集,一轮 6 条请求全部读完,避免 200 多次请求挤占 RS485 总线。
注意:区间内存在空洞地址(0x3204、0x9044、0x9048),不能凭主观判断地址连续。
3. 32 位数据低字在前,特殊换算系数
32 位数值:低字放在低地址,实际值 = (高字 <<16) + 低字,和很多设备字节序相反,直接套用通用解析逻辑,功率、电量必然出错。
换算系数规则:
100:原值 ÷100(保留 2 位小数)
10:原值 ÷10(保留 1 位小数)
1:原值直接使用
0.01:实际值 = 原值 ×100(典型如波特率 115200,寄存器存 1152)
附加细节:有符号数按 int16 解析;状态寄存器大量使用位域,需要按位拆分读取。
三、实测可用报文
// 读实时数据,从站1,0x3100,34寄存器
01 04 31 00 00 22 7E EF
// 设置浮充电压138.00V
下发:01 10 90 0C 00 01 02 35 E8 21 8B
正常应答:01 10 90 0C 00 01 EC CA
// 打开充电开关
01 05 00 00 FF 00 8C 3A
四、接入常见难点总结
1、0x03 / 0x04 功能码混用,静默错误最难排查;
2、读取区间切分错误、空洞地址没处理,点位全部串位;
3、字节序、换算系数、位域解析错误,SOC 和电量失真;
4、很多采集平台只做只读,无法远程改参数、控制负载,故障只能现场处理。
五、YBolt + 平台接入方案
我们将该控制器封装独立协议插件,把上面所有特殊规则内置固化:
自动区分功能码、字节序、换算系数,直接输出工程值;
分区合并采集,总线负载更低;
链路自适应:支持 DTU 透明传输、Modbus TCP 网关、串口服务器多种链路;
双向读写:远程改阈值、控制充电开关、故障复位;
平台可展示发电功率、SOC、负载功耗、预估续航,低电量提前告警,不用等站点掉线再处理。
结语
野外离网光伏供电,难点不在于能不能发电,而是发电、储电、用电全程可感知、可调控。 这是光伏供电协议系列第一篇,后续持续更新其他型号控制器、BMS 电池协议,欢迎工程同行一起交流。








