这次我们来看一个电力电子方向非常完整的工程级项目:基于 TMS320F280039C 的 7.2kW 单相光伏储能 Heric 并网逆变器,而且不是空壳方案,DSP代码、PCB、原理图全套都齐。
这类项目的价值不在于“DEMO能转灯”,而在于控制算法、功率拓扑、板级设计是相互约束的。单独看代码,你不知道为什么电流内环要这么写;单独看原理图,你也不知道母线电容和采样带宽是给谁服务的。三件套放一起,才能把并网逆变器从“嘴上懂”变成“手里会”。
本文不搞空泛介绍。我会按这个顺序拆解:先给核心能力速览,再分析 TMS320F280039C 为什么适合并网控制,接着讲 Heric 拓扑的共模漏电流抑制原理、整体控制算法框架、DSP开发环境与工程结构、关键控制算法代码思路、PCB设计要点,最后给出一套可执行的调试、测试和排错流程。
需要提前说明的是:我没有在这套硬件上做过完整满载实测,所以本文不会编造效率、THD、共模电流这些具体数字。所有测试流程都是通用验证方法,最终性能要以你自己的板子和示波器为准。
1. 核心能力速览
| 能力项 | 说明 |
|---|---|
| 项目类型 | DSP代码 + PCB + 原理图全套工程包 |
| 主控芯片 | TI TMS320F280039C,C2000系列实时MCU |
| 拓扑结构 | 单相 Heric 并网逆变器拓扑 |
| 功率等级 | 7.2kW(单相系统属于中大功率) |
| 应用方向 | 光伏储能、单相并网逆变、控制算法研究 |
| 核心算法 | 锁相环、电流内环、电压外环、MPPT、保护逻辑 |
| 代码形式 | CCS 工程,C28x 内核,可编译烧录 |
| 硬件设计 | 原理图 + PCB,覆盖功率、驱动、采样、辅助电源 |
| 调试接口 | 参考工程中的串口/CAN/PMBus 等外设配置 |
| 适合人群 | 电力电子方向研究生、DSP开发工程师、逆变器研发人员 |
| 上手难度 | 较高,需要懂功率硬件,也需要会用 CCS |
从项目标题看,这套资料最核心的价值是把“Heric并网逆变器控制算法”完整落到真实芯片和真实板子上。你不会只看到一堆数学公式,而是能看到公式如何写进 DSP 的中断服务函数,以及对应硬件电路的连接关系。
2. TMS320F280039C 选型分析与硬件边界
2.1 为什么选择 F280039C
TMS320F280039C 属于 TI C2000 系列实时 MCU,采用 C28x 内核,是专门为电力电子实时控制设计的芯片系列。相比普通 MCU,它的优势集中在几个地方:
- 处理器针对控制环路做了优化,适合高频电流环、电压环。
- 片上集成 ePWM、ADC、eQEP、eCAP 等电力电子控制外设,PWM 与 ADC 之间可以硬件同步。
- 支持 CLA(控制律加速器),可以把一部分运算从主 CPU 卸载到 CLA。
- 提供浮点运算能力,写控制算法时不需要手动定标,开发效率比定点 DSP 高很多。
在单相 Heric 并网逆变器这种场景里,主控需要同时完成锁相、电流环、电压环、MPPT、保护逻辑、通信交互。F280039C 这类 C2000 芯片的定位就是“实时控制”,直接把大部分外设和中断资源整合在一起,外围电路可以做得更紧凑。
具体到 F280039C 的时钟频率、ADC 采样率、PWM 分辨率等参数,我建议直接查 TI 官方器件手册。不同批次、不同封装会略有差异,以手册为准最稳妥。
2.2 7.2kW 单相机带来的硬件约束
7.2kW 在单相 220V 系统中意味着什么?按 P = U × I 估算,不考虑功率因数影响时,交流侧电流在 32A 到 35A 左右。这个电流等级直接决定了功率器件、母排、继电器、保险丝、PCB 走线和散热方案。
做这部分设计时,几个关键点必须提前确定:
- 交流侧额定电流与峰值电流,决定 IGBT/MOSFET 和输出熔断器选型。
- 母线电压范围,决定母线电容耐压和放电电阻参数。
- 开关频率,决定驱动电阻、吸收电路和散热器尺寸。
- 电网电压波动范围,决定继电器、压敏电阻、共模电感的设计裕量。
这些参数在原理图里是相互关联的。比如开关频率提高,磁性元件体积会变小,但驱动损耗和开关损耗会上升,PCB 的 EMI 处理难度也会增加。所以“7.2kW”并不只是一个功率标签,它决定了一整条硬件设计约束链。
3. Heric 拓扑原理与共模漏电流抑制
3.1 共模漏电流怎么来的
无变压器光伏并网逆变器为了降低成本、提高效率,通常会省掉工频变压器。但光伏组件对地存在寄生电容,当逆变器开关管高速动作时,共模电压会在这个寄生电容上产生高频对地电流,也就是共模漏电流。
共模漏电流会带来几个直接问题:
- 并网电流谐波增大,THD 变差。
- 可能触发漏电保护开关误动作。
- 对人身安全有隐患。
- 电磁干扰变严重。
所以无变压器拓扑必须在电路结构或调制策略上抑制共模电压变化。
3.2 Heric 拓扑的工作方式
Heric 拓扑可以理解成在传统 H 桥交流侧增加了一个双向开关支路,通常由两个开关管反向串联构成。它的核心思想是:在续流阶段把交流侧和直流母线隔离,让电感电流通过双向开关续流,而不是通过桥臂的反并联二极管回灌,从而减小共模电压跳变。
从控制角度看,Heric 比标准 H6 多了一个交流侧双向开关的控制自由度,调制策略更灵活。损耗分布也更合理,理论上效率可以做高。这也是它常被用在中大功率单相并网逆变器上的原因。
3.3 调制注意事项
Heric 拓扑的调制不是简单加一路 PWM 就行,需要考虑:
- 双向开关的驱动时序要和桥臂互补,要留死区。
- 续流阶段不能让桥臂下管同时导通,否则会破坏共模钳位效果。
- 过零附近要防止开关状态混乱,需要设置合理的过零处理逻辑。
- 死区补偿要做,否则输出电流会畸变。
这也是为什么这类项目一定要算法和硬件一起看。原理图里双向开关的驱动电路、隔离供电方式,会直接影响代码里 PWM 配置的可行性。
3.4 专利提醒
Heric 拓扑是 SMA 等公司提出的专利拓扑,商用产品需要核实专利状态和授权情况。
高校科研、个人学习、论文验证使用问题不大,但如果要把方案做成产品出口或上市销售,必须在立项阶段做专利排查。这不是套话,而是电力电子方向实际的工程风险点。
4. 控制算法总体框架
4.1 控制层次
单相并网逆变器控制通常分四层:
- 外环:母线电压控制,稳定直流母线电压,同时为内环提供电流指令。
- 内环:并网电流控制,目标是让并网电流和电网电压同频同相,波形质量好。
- 锁相环:提供电网电压相位和频率,是整个控制系统同步的基础。
- 保护逻辑:过压、过流、过温、孤岛、电网异常检测。
这套基于 TMS320F280039C 的工程,代码里应该会覆盖以上这些模块。从研究角度,重点往往放在电流内环和锁相环上。
4.2 单相锁相环:SOGI-PLL
单相系统没有三相那样的天然正交分量,必须构造一个正交虚拟信号。常见做法是 SOGI-PLL:用 SOGI(二阶广义积分器)从单相电网电压中生成两相正交信号,再通过 Park 变换进入锁相环调节。
SOGI-PLL 的优势是结构简单、滤波效果好,在电网电压畸变不太严重时表现很好。
它的实现包含两个部分:
- SOGI 正交信号发生器。
- PI 调节器 + 积分器,闭环跟踪电网频率和相位。
4.3 电流内环:PR 控制
单相并网电流是正弦量,如果直接使用 PI 控制器,稳态下无法完全跟踪正弦指令,会出现幅值和相位误差。常用替代是 PR(比例谐振)控制器,或者 PI + 电网电压前馈。
PR 控制器在基波频率处增益很高,可以做到对正弦指令的近似无静差跟踪。
PR 的离散化方式对控制效果影响很大,数字化实现时要选择合适的方法,建议直接看工程代码里实际用的离散化公式。
4.4 电压外环:母线电压与 MPPT
光伏输入侧需要做 MPPT,让光伏组件工作在最大功率点。母线电压外环根据功率平衡调整电流指令幅值,保证输入功率和输出功率平衡。MPPT 的步长和扰动周期需要根据母线电容大小来设计,不能太激进,否则直流母线电压会剧烈波动。
4.5 孤岛检测与保护
并网逆变器必须考虑孤岛效应。被动式检测通过监测电网电压幅值和频率变化,主动式检测则通过注入扰动来判断电网是否脱离。另外,过压、欠压、过流、过温保护都要在中断或快速循环里处理,不能只靠主循环轮询。
5. DSP 开发环境与代码工程结构
5.1 开发工具
TMS320F280039C 的工程通常基于 TI CCS 开发,需要准备以下环境:
- Code Composer Studio(CCS),版本以支持 F280039C 为准。
- C2000Ware,包含芯片支持库、例程和驱动文件。
- XDS 系列仿真器,用于烧录和在线调试。
- 如果是图形化配置外设,还需要用 SysConfig 工具生成初始化代码。
这套工程的代码结构如果是标准 C2000 工程,通常会包含外设初始化、中断处理、控制算法模块、通信模块和主循环状态机。
5.2 工程目录结构参考
一个典型的 F280039C 并网逆变器工程目录可以这样组织:
ProjectRoot/ ├── include/ # 头文件 │ ├── main.h │ ├── inverter_hw.h # 硬件映射定义 │ ├── control.h # 控制算法接口 │ └── protection.h ├── src/ │ ├── main.c # 主循环 │ ├── device_init.c # 时钟、GPIO、外设初始化 │ ├── adc_isr.c # ADC中断与采样计算 │ ├── pwm_ctrl.c # PWM配置与更新 │ ├── pll_sogi.c # SOGI-PLL 锁相环 │ ├── current_loop.c # PR电流环 │ ├── mppt.c # 光伏MPPT │ ├── protection.c # 保护逻辑 │ └── comm.c # 串口/CAN通信 ├── driverlib/ # C2000Ware驱动库 ├── board/ # 板级支持文件 └── targetConfigs/ # CCS 目标配置文件5.3 启动与初始化流程
DSP 上电后不会直接跑控制算法,要先完成初始化:
- 关闭看门狗,配置系统时钟。
- 初始化 GPIO 和 ePWM 引脚。
- 配置 ADC 采样通道和触发源。
- 配置中断向量表,使能 ADC 中断。
- 初始化控制算法变量。
- 启动 PWM 输出。
- 进入主循环,执行状态机和保护逻辑。
5.4 主循环代码示意
下面是一段工程主循环框架示意,寄存器名称和库函数以实际版本为准:
#include "main.h" volatile uint16_t g_adc_result[8]; volatile float g_bus_voltage = 0.0f; void main(void) { // 1. 初始化系统 init_system_clock(); init_gpio(); init_adc(); init_epwm(); init_interrupts(); // 2. 初始化控制参数 init_control_params(); init_mppt(); // 3. 开启全局中断 EINT(); // 4. 主循环 for (;;) { // 状态机:待机 -> 预充电 -> 并网 -> 停机 run_state_machine(); // 保护逻辑,非实时保护也至少在这里做一次检查 check_protection_level(); // 通信任务:串口或CAN发送调试数据 run_comm_task(); // 看门狗喂狗 kick_watchdog(); } }初次启动时,建议先把 PWM 输出强制为低,只跑 ADC 采样和串口打印,确认采样值和通信正常后,再把 PWM 使能打开。
6. 关键控制算法代码思路
6.1 SOGI-PLL 实现示意
SOGI 正交发生器需要处理两个状态变量,每个控制周期更新一次。示意逻辑如下:
typedef struct { float alpha; // 正交信号与输入同相分量 float beta; // 正交信号滞后90度分量 float k; // SOGI阻尼系数 float w; // 谐振角频率 float Ts; // 采样周期 } SOGI_Handle; void sogi_update(SOGI_Handle *h, float v_in, float *alpha_out, float *beta_out) { float alpha_dot = h->w * (v_in - h->alpha); float beta_dot = h->w * h->beta; // 前向欧拉离散,实际工程建议用更高精度离散方法 h->alpha += h->Ts * alpha_dot; h->beta += h->Ts * beta_dot; *alpha_out = h->alpha; *beta_out = h->beta; }上面只是算法核心示意,完整 SOGI-PLL 还要把 alpha/beta 做 Park 变换,再用 PI 调节器对 q 轴电压做闭环,才能得到电网频率和相位。
6.2 PR 电流控制器实现示意
PR 控制器在数字实现时,典型结构是比例项加一个谐振项。谐振项可以用二阶滤波器的差分方程近似:
typedef struct { float kp; // 比例系数 float kr; // 谐振增益 float w0; // 谐振频率 float Ts; // 采样周期 float state1; // 谐振项状态 float state2; } PR_Controller_Handle; void pr_controller_update(PR_Controller_Handle *h, float err, float *out) { // 谐振项差分方程,需要按照实际离散化推导系数 float res_out = h->state1; h->state1 = h->state2; h->state2 = res_out * 2.0f - h->state2 * 1.0f + h->kr * h->Ts * err; *out = h->kp * err + res_out; }代码里的系数是示意,不能直接用于工程。实际工程需要把连续域的 PR 传递函数离散化,得到准确的差分方程系数。
6.3 PWM 更新与 ADC 采样配合
并网电流环要求 PWM 载波周期和 ADC 采样严格同步。典型做法是:在 PWM 载波计数到零点时触发 ADC 采样,ADC 转换完成后进入中断,在中断里计算电流环输出,直接更新 PWM 比较寄存器。
__interrupt void adc_isr_handler(void) { // 1. 读取ADC结果 g_bus_voltage = read_adc_channel(ADC_CH_BUS); float grid_current = read_adc_channel(ADC_CH_CURRENT); // 2. 更新锁相环 update_sogi_pll(grid_voltage); // 3. 电流环计算 float current_ref = get_outer_loop_ref(); float duty = update_current_loop(current_ref, grid_current); // 4. 更新PWM比较值 set_epwm_compare(duty); }这种结构把实时性要求高的代码全部放在中断里,主循环只处理状态机和通信,能保证控制周期稳定。
7. 原理图与 PCB 设计要点
7.1 功率回路设计
7.2kW 的功率等级,功率回路要重点处理三件事:
- 母线电容:要满足纹波电流和母线电压支撑要求,位置要靠近功率器件。
- 功率开关:选择要留足电流裕量,驱动回路尽量短粗。
- 功率地回路:大电流路径不能和信号地混在一起。
母排或铺铜面积不够,轻则发热,重则触发过温保护。
7.2 采样与驱动电路
电流采样和母线电压采样直接影响控制效果。常见电流采样方式包括采样电阻、霍尔电流传感器和电流互感器。采样信号进入 DSP 前要经过调理电路,注意偏置电压和滤波带宽的配合。
驱动电路需要关注隔离方式、驱动电流能力和米勒平台。Heric 拓扑中交流侧双向开关的驱动供电,可能需要额外的隔离电源,原理图里要看清楚供电来源。
7.3 布局与布线
PCB 布局应让功率回路形成最小环路面积,降低杂散电感。
- 驱动信号走线远离功率开关栅极回路。
- 模拟采样信号走线远离开关节点。
- 功率地和信号地在单点连接或通过磁珠连接。
- 大电流走线考虑开窗加锡或使用铜排。
- 驱动芯片和功率器件之间距离尽量短。
这部分的经验很难用文字完全覆盖,需要结合具体原理图和 PCB 文件反复核对。
7.4 安规、EMI 与散热
逆变器是强电设备,PCB 设计必须考虑爬电距离和电气间隙。市电侧、母线侧、隔离侧之间要有足够的间距。交流输入输出可以加共模电感、X/Y 电容来抑制 EMI。
7.2kW 满载工作时,功率器件散热方案非常关键。风扇、散热器、导热绝缘垫的选型要配合整机结构设计,不能只靠 PCB 铜箔散热。
8. 功能测试与效果验证流程
8.1 测试前安全检查
调试并网逆变器之前,先确认几个安全条件:
- 测试台架有隔离变压器或者可编程交流电源,不直接接入现场电网。
- 直流源限流设置合理,通常先从低电压、小功率开始。
- 示波器探头使用隔离通道,避免共地问题。
- 板子周围没有裸露带电体,准备急停开关。
第一次上电,不要把输入直接拉到额定值,先把电压调到额定值的 10% 到 20% 验证基础功能。
8.2 开环测试
开环测试的目的不是看电流多准,而是确认功率回路和驱动回路工作正常。
操作步骤:
- 只给控制板供电,确认 DSP 程序正常启动。
- 用示波器观察驱动波形,确认 PWM 频率和死区时间设置正确。
- 给直流母线加低压,逐步观察母线电压采样是否准确。
- 用电子负载或者电阻负载接交流输出,确认功率回路能建立电流。
判断标准:驱动波形稳定,无异常毛刺,采样值线性正确。
8.3 闭环并网测试
先接模拟电网,再接真实电网。闭环测试重点看:
- 锁相环能否稳定锁定电网相位。
- 电流指令和实际电流是否无静差。
- 电流波形是否平滑,过零处有没有畸变。
- 输出功率能否按照指令快速调节。
如果电流波形出现持续震荡,优先检查电流环增益和相位裕度,用示波器看指令和实际电流之间的相位关系。
8.4 MPPT 与效率测试
MPPT 测试需要光伏模拟器,设置不同的 I-V 曲线,观察逆变器能否稳定寻找最大功率点。
效率测试需要功率分析仪,同时记录直流输入功率和交流输出功率。
注意,MPPT 的扰动步长和扰动周期在低辐照和高辐照下表现不同,测试要覆盖多个工作点。
8.5 保护功能测试
保护测试是并网逆变器不能跳过的一环:
- 交流过压/欠压保护。
- 母线过压保护。
- 过流保护。
- 过温保护。
- 孤岛保护。
每种保护都需要验证保护阈值、响应时间和恢复逻辑。保护阈值要在代码里设置成可配置参数,方便测试时调整。
9. 调试接口与自动化批量测试
9.1 串口/CAN 上位机
调试控制算法时,不能只靠示波器看波形,还需要导出内部控制变量。常见做法是通过串口把采样值、PLL 相位、电流环输出等变量周期发送到上位机。
也可以把 DSP 的内部变量通过 CAN 总线发送到显示屏或上位机。如果工程里已经配置了 PMBus 或 CAN,可以直接复用。
9.2 日志系统
在功率硬件调试中,日志系统很关键。建议在代码里加一个环形缓冲区日志,把关键事件记录下来,比如:
- 过压触发时间。
- 过流触发时间。
- 状态机切换记录。
- 报错代码。
这样板子保护停机后,还能从日志里找出故障原因。
9.3 Python 串口批量测试脚本
生产测试或者长时间老化测试时,可以用 Python 脚本通过串口批量读取 DSP 上报的数据并自动保存。下面是一个通用示例:
import serial import time import csv SERIAL_PORT = "COM3" BAUDRATE = 115200 DURATION_SECONDS = 3600 LOG_FILE = "inverter_log.csv" ser = serial.Serial(SERIAL_PORT, BAUDRATE, timeout=1) start_time = time.time() with open(LOG_FILE, "w", newline="") as f: writer = csv.writer(f) writer.writerow(["timestamp", "data"]) while time.time() - start_time < DURATION_SECONDS: line = ser.readline().decode("utf-8", errors="ignore").strip() if line: writer.writerow([time.strftime("%H:%M:%S"), line]) time.sleep(0.1) ser.close() print("Test finished, log saved.")这种脚本适合老化测试、参数扫描、故障复现。DSP 端的串口输出协议需要和脚本约定好,比如按行输出逗号分隔的数值。
9.4 生产测试建议
如果是小批量产品,建议做半自动测试台:
- 上电自检。
- 校准采样通道。
- 跑一次额定功率长时间老化。
- 跑一遍保护测试用例。
每台板子的校准数据可以存到 DSP 内部的 Flash 或外置 EEPROM,生产测试软件通过串口读写这些参数。
10. 资源占用与性能观察
10.1 CPU 负载怎么观察
CCS 里可以查看 CPU Load 或使用 profiler 统计中断执行时间。对控制类程序,更直接的方法是记录中断服务函数入口和出口之间的时钟周期。
可以在中断里加一个 GPIO 翻转,用示波器看这个引脚的高电平时间,就能算出中断执行占用了多少 CPU 资源。
10.2 Flash/RAM 占用
CCS 编译后会在 Build 输出中显示 Flash 和 RAM 占用。并网控制算法如果包含查表、多组 PI/PR 参数、波形数据,RAM 占用会明显增加。优化思路包括:
- 常量表放到 Flash。
- 控制变量使用浮点,占用 RAM 较大时考虑部分变量改用定点。
- 不用的外设和中断向量不要开启。
10.3 实时性优化方向
如果中断执行时间过长,可以这样优化:
- 把 SOGI-PLL 放到更低频率的慢速中断里执行,比如 PWM 频率的 1/4。
- 使用 CLA 卸载一部分运算。
- 预先计算常量,减少三角函数调用。
- 电流环使用查表法实现部分非线性环节。
10.4 看门狗与异常复位
DSP 控制程序在强电磁环境下跑,死机风险是真实存在的。看门狗一定要开,并且只在主循环里喂狗。中断里不要喂狗,否则一旦主循环卡死,看门狗不会触发复位。
如果程序固化后必须接 JTAG 才能启动,常见原因是启动模式配置不正确,需要检查 boot mode 引脚和 Flash 烧录后的启动逻辑。
11. 常见问题与排查方法
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| 程序烧录失败,JTAG 连不上 | 仿真器驱动异常、目标板供电不稳 | 检查仿真器连接和板子电源 | 重新插拔仿真器,确认 3.3V 供电正常 |
| 固化后必须接 JTAG 才能启动 | 启动模式引脚配置错误 | 查看 boot mode 引脚电平 | 按芯片手册修改 boot 配置 |
| 母线电压采样波动大 | 采样调理电路滤波不足或参考电压不稳 | 用示波器看采样点波形 | 增加 RC 滤波,检查参考源 |
| 并网电流波形畸变 | 电流环参数不合适 | 抓取指令电流和实际电流波形 | 降低电流环增益,检查死区补偿 |
| PLL 锁定慢或失锁 | SOGI 参数或 PI 参数不合适 | 查看 PLL 输出频率曲线 | 增大锁相环带宽,但注意抗干扰 |
| 共模漏电流偏大 | Heric 调制时序错误或双向开关驱动异常 | 查看驱动波形 | 检查时序和死区配置 |
| 驱动芯片异常发热或损坏 | 驱动供电不足、栅极电阻不合适 | 检查驱动电压和栅极波形 | 核对驱动电流能力,增大栅极电阻 |
| 满载时过温保护动作 | 散热器选型偏小或风道设计不合理 | 记录温升曲线 | 更换散热方案,降低开关频率 |
| 过流保护误动作 | 采样噪声或保护阈值偏小 | 查看保护触发时刻的电流采样 | 增加滤波,提高阈值并留裕量 |
| 老化测试中偶发死机 | 电磁干扰导致程序跑飞 | 查看看门狗复位标志 | 开启看门狗,优化 PCB 走线和滤波 |
12. 最佳实践与使用建议
12.1 调试顺序
拿到这套工程后,建议按以下顺序推进,不要直接上额定功率:
- 先编译代码,跑通空载程序。
- 查看 ADC 采样是否准确。
- 检查 PWM 驱动波形。
- 用低压开环测试功率回路。
- 低压闭环测试。
- 逐步升压,测试 MPPT 和保护逻辑。
- 最后做额定功率满载和老化测试。
12.2 代码管理
工程到手后,先把引脚定义、保护阈值、控制参数集中放在几个配置头文件里,不要散落在各模块中。这样后续改板子或者调参数时,只需要改一个文件,出问题也容易回溯。
12.3 安全与合规提醒
光伏并网逆变器直接连接电网,电压和电流都具备人身危险性,所有强电测试必须在隔离变压器或模拟电网条件下进行。不要直接跳过保护测试上电网。
并网设备还涉及电网接入的各项标准和合规要求,具体测试认证需要咨询有资质的检测机构。产品化之前,除了硬件和软件,还必须做拓扑专利排查。
12.4 后续扩展方向
如果这套 7.2kW Heric 方案跑通,后续可以往几个方向继续扩展:
- 双向储能:把单向并网改为双向变换,增加电池充放电逻辑。
- 并离网切换:增加离网模式,支持本地负载供电。
- 多机并联:增加下垂控制或主从控制。
- 通信组网:通过 CAN、Modbus 或 Wi-Fi 模块接入监控平台。
这套工程最适合的用法,是先把它当一个可靠参考实现去学习和验证,然后再基于它做自己的硬件调整和算法迭代。上手时优先验证锁相环和电流环,这是并网控制质量的核心;最容易踩的坑则在驱动时序和 PCB 功率回路,这两个地方出问题往往不是改代码能解决的。