光伏逆变器资料 8-10KW 5-8KW古瑞瓦特光伏逆变器电 路图、光伏逆变器资料 古瑞瓦特的5-10KW资料逆变器带程序 光伏逆变器资料 8-10KW 5-8KW古瑞瓦特光伏逆变器电 路图、光伏逆变器资料 古瑞瓦特的5-10KW资料逆变器带程序 古瑞瓦特逆变器资料,古瑞瓦特光并网伏逆变器,ST STEVAL-ISV002V2 3kW光伏电压转换解决方案
GRWT Growatt 5-10 kW 光伏并网逆变器
嵌入式软件架构与核心模块功能说明书
(基于 HITACHI H8/3062FB 官方 SDK 与 Growatt 二次开发代码)
================================================
一、总体定位
------------------------------------------------
- 产品形态
单相双路 MPPT 组串式逆变器,额定功率 5 kW / 6 kW / 8 kW / 10 kW,
通过内部“主-从”双 MCU 架构实现并网、保护、通信、显示四大功能。
- 硬件平台
- 主 MCU:Hitachi H8/3062FB(Flash 256 kB,RAM 64 kB,最高 25 MHz)
- 从 MCU:同型号,负责独立采样与冗余保护
- 外设:
– 12-bit SAR ADC(电压、电流、温度、绝缘阻抗、漏电流)
– 双 SCI(RS-232/RS-485)支持 Modbus-RTU / Growatt 私有协议
– 16-bit ITU 定时器生成 SPWM 与电网同步中断
– GPIO 控制继电器、风扇、LED、LCD、蜂鸣器
- 软件架构
采用“时间片 + 事件旗标” cooperative 调度(非抢占),优先级 0-31,
1 ms 时基由 ITU0 中断产生,所有任务通过 OSEventPend / OSEventSend 同步。
代码完全用 C 编写,中断向量与 Flash 自举模块用 H8 汇编。
================================================
二、工程目录与模块划分
------------------------------------------------
SunShine1t5K\QRPVInverter\
├─ App\Main\ 主 MCU 业务代码
│ ├─ ABFunctions.c 数学/滤波/保护算法库
│ ├─ Communication.c 主-从双机通信 & 外部 RS-485 协议
│ ├─ InverterState.c 并网状态机(Wait→Inv→Fault→Flash)
│ ├─ LoadAdjust.c 双路 MPPT & Boost/母线/功率调节
│ ├─ OutputTask.c 电网采样、RMS 计算、漏电流/过压/欠频保护
│ ├─ PVTask.c 光伏侧采样、绝缘检测、硬件保护
│ ├─ PanelTask.c LCD 菜单、按键、LED、蜂鸣器
│ └─ UserFunction.c 能量计量、EEPROM 磨损均衡、降额策略
├─ App\Slave\ 从 MCU 代码(镜像保护)
├─ App\SCIRTx.c 双 SCI 中断驱动(DMA 无,字节中断)
├─ CPU\Flash.c 片上 Flash 自举、ISP、参数区 CRC
└─ Include\ 统一寄存器头文件与常量表
光伏逆变器资料 8-10KW 5-8KW古瑞瓦特光伏逆变器电 路图、光伏逆变器资料 古瑞瓦特的5-10KW资料逆变器带程序 光伏逆变器资料 8-10KW 5-8KW古瑞瓦特光伏逆变器电 路图、光伏逆变器资料 古瑞瓦特的5-10KW资料逆变器带程序 古瑞瓦特逆变器资料,古瑞瓦特光并网伏逆变器,ST STEVAL-ISV002V2 3kW光伏电压转换解决方案
================================================
三、关键数据流与时序
------------------------------------------------
- 1 ms 时基中断(ITU0)
- 累加 ADC 采样计数 → 触发 10 ms/20 ms 任务
- 电网过零检测 → 置位 cLineZeroCrossed 事件
- 计算瞬时频率 wOPFrecyNew,用于锁相与孤岛检测
- 10 ms 周期(PVTask)
- 采样 PV1、PV2、Bus、NTC、2.5 V 参考
- 执行 MPPT(扰动观察,步长自适应)
- 绝缘阻抗、PV 过压、Bus 过压、NTC 过温保护
- 结果通过双口 RAM 结构体同步到主 MCU
- 20 ms 周期(OutputTask)
- 电网电压/电流 RMS、功率、功率因数
- 执行 VDE-AR-N-4110/4120、EN50549、CEI-021、AS4777 安规
- 频率/电压窗口、10 min 平均、ROCOP/ROR 算法
- 漏电流(GFCI)30 mA/300 ms、60 mA/150 ms、300 mA/30 ms 三档
- 直流分量(DCI)0.5 %/1 A 限值,闭环调整 wDCIAdj
- 状态机(InverterState)
Wait → Check → Relay ON → Soft-start → Run → Fault/Shutdown
状态切换条件全部量化(电压回差、时间滤波、计数器)
================================================
四、MPPT 与功率控制算法
------------------------------------------------
- 双路独立 MPPT
- 扰动步长:wMPPTVStep = wPVOpenVolt/(25 + bFastMPPT)
- 功率门槛:wMPPTWatt = 2×cMPPT5W/(1+bFastMPPT)
- 快速模式:当 |P-Pold|>1 % 连续 5 次,bFastMPPT 置 200,步长放大
- 防振荡:当 |P-Pold|<0.2 % 连续 50 次,锁定参考电压
- 母线能量平衡
- 母线目标 wStandBusVolt = 1.42×VAC_RMS + 30 V(自适应)
- Boost 采用电压-电流双环,比例系数 wBoostKP 84→98 可变
- 过载降额:当 P>1.01×Pnom 时,wPVoltRefer 正向扰动,强制远离最大功率点
- 频率过功率(CEI-021)
- f > 50.3 Hz 开始线性降额,50.5 Hz 时降至 0 %
- 状态变量 bFreOverLimit 11→3→4 逐级恢复,避免热重启
================================================
五、保护链路与故障管理
------------------------------------------------
- 故障分级
Level-1(自恢复):电网瞬态、PV 遮挡、温度回降
Level-2(可重启):DCI、GFCI、孤岛、10 min 过压
Level-3(锁死):绝缘失效、硬件过流、母线过压、NTC 短路
- 故障记录
环形缓存 5 条,每条包含:
- bFaultCode(1 byte)
- wFaultValue(2 byte,瞬时量)
- dwFaultTime(4 byte,0.1 h 单位)
写入 EEPROM 磨损均衡:6 h 一次块写,掉电前立即保存
- 孤岛检测
- 主 MCU:频率偏移法(SMS)+ 电压相位跳变
- 从 MCU:频率正反馈(AFD)+ 阻抗检测
双 MCU 独立判断,任一触发即断开继电器,满足 <2 s 要求
================================================
六、通信协议栈
------------------------------------------------
- 物理层
- SCI0:RS-232 115200-8-N-1,供本地调试/Flash 升级
- SCI1:RS-485 19200-8-N-1,Modbus-RTU + Growatt 私有帧
- 数据链路
- Modbus-RTU:支持 03/04/06/16 指令,寄存器映射 0-179(90 word)
- Growatt 私有帧:定长 26 byte,CRC16 校验,支持“广播→从机→主机”级联
- 应用层寄存器(节选)
0x00-0x2C:实时数据(PV、AC、功率、温度、故障量)
0x2D-0x57:参数区(电网限值、启动电压、延时、语言、对比度)
0x58-0x7D:安规区(CEI-021 第二窗口、V10 min、频率降额点)
0x7E-0x89:出厂校准(电压、电流、功率增益,保留 6 位小数)
================================================
七、LCD 人机交互
------------------------------------------------
- 显示内容
轮显 13 页:今日发电量、累计发电量、运行时间、PV/AC 实时值、
国家安规、序列号、固件版本、通信地址、降额模式、故障代码
- 按键逻辑
- 短按:翻页
- 长按 2 s:进入设置(语言、对比度、50/60 Hz、地址、自动测试)
- 隐藏组合键:同时按住 5 s 进入“高级校准”需密码
- 自动测试(CEI-021 认证)
8 步顺序:59 S2、27 S1、81>S2、81S1、81每步自动抬升/降低量、记录脱网时间与回差,结果保存在 0x63 寄存器
================================================
八、Flash 在线升级与双区备份
------------------------------------------------
- 升级流程
PC 发“code”→ 主 MCU 进入 Boot,擦除 Block5-7(0x8000-0x1FFFF)
128 byte 页写,擦写寿命 100 次,自带 ECC 与 CRC32 校验
升级完成后写“OK”标记 0x8000,软复位跳转到 0x0000
- 参数区双备份
EEPROM 模拟 16 kB 区间,分为 A/B 区,每次只写一份,写满后整体切换
掉电异常时通过 CRC 自动回滚,保证参数一致性
================================================
九、性能与可靠性指标
------------------------------------------------
- 稳压精度:±0.5 %
- 频率精度:±0.01 Hz
- THDi:<1.5 %(额定功率)
- 防孤岛检测时间:<1.2 s
- 平均无故障时间 MTBF:>100 000 h(Telcordia SR-332)
- 电磁兼容:IEC 61000-6-2 / 61000-6-4,Class A
================================================
十、二次开发指南
------------------------------------------------
- 编译环境
- Renesas NC30WA V6.2 或 IAR Embedded Workbench for H8 3.4
- 链接文件:flash.xcl(ROM 0x0000-0x1FFFF,RAM 0xFEF20-0xFFF1F)
- 调试器:E8a / E10A-USB,支持片上 2-wire 调试
- 新增任务
1) 在 appmain.c 增加任务体
2) 在 oscfg.h 定义优先级(建议 10-25 之间)
3) 在 OSEventTable 注册事件掩码
4) 1 ms 中断内如需要采样,扩展 ADC 通道并同步 bDCADCnt
- 校准流程
- 电压:外接 0.1 % 精度源,写 0x331x 寄存器,自动计算增益
- 功率:20 %/50 %/100 % 三点拟合,支持线性补偿与分段补偿
- 温度:NTC β=3950,两点校准 25 ℃/85 ℃,写 0x3328-0x3329
================================================
结语
------------------------------------------------
本代码基线经过 >200 k 台现场验证,覆盖欧标、澳标、国标等多国认证。
开发者可在保留安全链路与认证参数的前提下,利用已封装的数学库、
Modbus 映射、状态机框架,快速扩展储能接口、Wi-Fi/4G 模块、
远程调度(VPP)等高级功能,而无需改动核心保护算法。