☰
7.2kW单相光伏储能并网逆变器:Heric拓扑与DSP控制实现
2026/10/25 4:52:00 网站建设 项目流程

之前调试 7.2kW 单相光伏储能并网逆变器时,最深的感受是:拓扑、控制算法和 DSP 底层配置往往被拆成三块资料看,真正要合在一起跑通时,又得回头补课。Heric 拓扑用来解决无变压器逆变器的漏电流问题,TMS320F280039C 用来跑电流环和锁相,PCB 上要考虑采样、驱动、保护怎么布,代码里要处理 ADC 触发、PWM 死区、故障封锁这些细节。这篇内容围绕一套完整的“DSP 代码 + PCB + 原理图”方案,把 7.2kW 单相 Heric 并网逆变器从功率级结构、控制算法、软件架构到硬件设计思路完整拆开讲一遍,适合正在做光伏储能、双向逆变器或者 DSP 数字电源项目的读者参考。

1. 项目背景与核心概念

1.1 Heric 拓扑是什么

很多入门资料会把 Heric 拓扑直接描述成“H 桥加一个交流旁路”,这个说法基本准确,但理解它为什么要加这个旁路,比记住名字更重要。

常规单相全桥无变压器逆变器在并网运行时,四个开关管在不同开关状态下,输出端对直流母线的共模电压是变化的。光伏电池板对地存在寄生电容,共模电压变化会在寄生电容上形成充放电回路,产生共模漏电流。这个漏电流会导致电磁干扰超标、并网电流畸变,严重时还会带来安全问题。

Heric 拓扑是在 H 桥交流输出侧增加了一个由两个开关管组成的双向开关支路。正半周工作时,桥臂上管与对角下管导通,能量从直流侧流向交流侧;续流阶段则把输出端切换到交流旁路支路,让电感电流通过旁路续流,此时 H 桥不再直接决定输出电压。这样做的效果是,续流阶段变换器与电网之间处于一种“解耦”状态,共模电压被稳定住,漏电流得到有效抑制。

相比一些需要增加额外开关管的拓扑,Heric 的结构相对紧凑,功率损耗也更低,所以在中小功率单相光伏逆变器里用得比较多。本文讨论的 7.2kW 单相系统,正是这种拓扑的典型应用场景。

1.2 为什么选择 TMS320F280039C

做并网逆变器控制,MCU 需要同时完成几件对实时性要求很高的事情:电网电压锁相、并网电流闭环、母线电压控制、MPPT 追踪、保护逻辑处理。如果主频偏低或者外设不够灵活,很难在一个 PWM 周期内完成全部运算。

TMS320F280039C 是 TI C2000 系列中的一款实时控制 MCU,主频最高可达 120MHz 左右,带硬件浮点单元。单相并网逆变器的控制环路在 20kHz 开关频率下,每个周期留给控制算法的时间并不宽裕,硬件浮点能明显减轻计算压力。

外设方面,它配备了多路高精度 PWM 模块,支持死区控制、相位同步、故障封锁。ADC 模块支持多个采样通道,并且可以由 PWM 事件触发采样,这一点对并网逆变器非常关键。因为电流采样需要尽量避开开关管开通关断带来的噪声,软件很难精准控制采样时刻,用 PWM 触发 ADC 则能从硬件上保证每次都采在固定的相位点。

此外,芯片还带有比较器子系统,可以实现硬件过流保护,不依赖 CPU 运行状态。一旦检测到电流越限,直接封锁 PWM 输出,比纯软件保护更可靠。

当然,STM32、其他系列 MCU 也都能做逆变器控制,但 C2000 系列在“实时控制”这个方向上的外设设计更贴合电机控制和数字电源场景,尤其是 PWM 与 ADC 的联动、硬件保护链路这些细节,能省去不少外围逻辑。

1.3 7.2kW 单相光伏储能系统整体架构

单看 7.2kW 这个功率等级,放在单相光伏储能系统里是偏户用或小型工商业场景的。电网电压按 220V 交流有效值计算,并网电流有效值大约 32.7A,峰值电流接近 46A,母线电压一般在 360V 到 400V 左右。

系统整体结构大致如下:

  • 光伏组件输入,经过 Boost 电路升压,同时完成 MPPT 控制
  • Boost 输出接直流母线电容,母线电压由电压环控制
  • Heric 逆变桥把母线直流电转换成交流电
  • 输出侧经过 LCL 滤波后并入电网
  • 储能电池通过双向 DC-DC 变换器挂在直流母线上,实现充电和放电

整个系统的控制核心是 TMS320F280039C,它采集光伏电压电流、母线电压、电网电压、并网电流、电池电压电流等信号,经过控制算法计算后,输出 Boost 开关管和 Heric 桥臂的 PWM 驱动信号。

这里要特别注意,储能系统的功率流向是双向的。并网逆变器不仅要把光伏能量送到电网,还可能从电网取电给电池充电。控制算法需要考虑并网模式和离网模式,甚至无缝切换。不过在本文研究的重点里,我们先把并网逆变这一部分做透,储能双向部分作为扩展方向去理解。

2. 系统总体方案与硬件架构

2.1 主电路拓扑与功率器件选型思路

以 7.2kW 输出功率为例,主电路可以划分为两级:前级 Boost 和后级 Heric 逆变桥。

前级 Boost 负责把光伏组件的电压升到母线电压等级。光伏组件的工作电压范围一般比较宽,可能从 100V 多到 400V 都有,Boost 的作用就是维持母线电压稳定,同时通过调节输入电流实现最大功率点跟踪。

后级 Heric 逆变桥负责 DC/AC 变换。交流侧输出通过 LCL 滤波器并网,LCL 相比单 L 滤波对高频开关谐波的衰减能力更强,但存在谐振峰问题,需要配合阻尼策略使用。

功率器件选型时,需要考虑以下几个维度:

  • 电压应力:如果母线电压按 400V 设计,考虑电网波动、开关尖峰,IGBT 或 MOSFET 的耐压一般选 650V 比较稳妥
  • 电流应力:7.2kW 单相交流输出电流有效值约 32.7A,实际器件选型要留 1.5 到 2 倍裕量,同时考虑散热条件
  • 开关频率:一般在 16kHz 到 20kHz 之间。频率越高,滤波电感可以越小,但开关损耗也会上升
  • 驱动方式:需要隔离驱动,并配合合适的栅极电阻和米勒钳位电路,避免开关管误导通

这里不建议直接套用某款具体型号,因为器件选型与散热结构、成本目标、母线电压范围都强相关。但有一条原则是通用的:把电压裕量和电流裕量算清楚,再根据开关损耗和热阻选择器件封装。

2.2 控制板与功率板划分

整套系统在硬件上通常拆成控制板和功率板两部分。

控制板核心是 TMS320F280039C 最小系统,包含电源、时钟、复位、JTAG 调试接口、BOOT 配置、ADC 采样调理电路、PWM 输出接口、通信接口等。控制板本身不直接承受高压大电流,属于弱电部分。

功率板包含整流或 Boost 功率管、Heric 桥臂、驱动电路、母线电容、交流继电器、LCL 滤波、电流电压采样传感器等。

控制板和功率板通过排针或连接器互联,信号主要包括:

  • PWM 驱动信号
  • 故障反馈信号
  • 模拟采样信号
  • 继电器控制信号
  • 辅助电源供电

把控制板与功率板分开,主要目的是方便调试和降低干扰。功率板上 dv/dt、di/dt 很大,如果控制电路和功率电路混在一起,ADC 采样噪声和保护误触发会非常难处理。分开之后,可以通过合理的接口设计和滤波电路把强弱电隔离开。

2.3 关键信号链路

从信号流向来看,系统里有三条关键链路决定了整个控制性能。

第一条是采样链路:电网电压、并网电流、母线电压、光伏电压电流通过霍尔传感器或者电阻分压网络转换成小信号,经过运放调理和滤波后进入 TMS320F280039C 的 ADC。

这条链路最关键的是采样时刻和滤波带宽。采样时刻由 PWM 触发决定,一般放在 PWM 计数器的中点,也就是开关管开关状态最稳定的位置;滤波带宽要根据控制环路的频带需求来设计,不能为了滤噪声把信号滤到失真。

第二条是驱动链路:DSP 的 EPWM 模块输出 3.3V 的 PWM 信号,经过驱动芯片隔离和增强后,驱动 IGBT 或 MOSFET。

驱动链路上要关注死区设置、栅极电阻、驱动能力。如果驱动芯片峰值电流不够,开关管开关速度变慢,开关损耗会明显增大;死区设置不当,则可能导致桥臂直通。

第三条是保护链路:电流采样信号除了送到 ADC 做闭环控制,还会和比较器子系统的阈值比较器相连。一旦超过设定阈值,比较器模块直接触发 TZ(Trip Zone)封锁 PWM,不需要 CPU 干预。这条硬件保护链路的响应时间是纳秒到微秒级别的,是软件保护之外的最后一道防线。

3. 控制算法设计与理论拆解

3.1 单相锁相环 SOGI-PLL

并网逆变器必须知道电网电压的相位和频率,才能控制输出电流与电网电压同步。三相电网可以直接用 Clarke 变换得到两相静止坐标系,单相电网只有一路电压信号,缺少一个正交分量。SOGI-PLL 的思路就是构造一个正交信号发生器,把单相电压变成两相正交电压,然后再走锁相环的经典流程。

SOGI 模块的输入是电网电压 v_g,输出是两个正交分量 v_alpha 和 v_beta,其中 v_alpha 与输入同相,v_beta 滞后 90 度。SOGI 还有一个可调参数 k,影响带宽。k 越大,动态响应越快,但对谐波的抑制能力越弱;k 越小,滤波效果越好,但锁相速度变慢。实际工程需要折中,通常 k 取 0.5 到 1 之间。

得到正交分量后,把 v_alpha、v_beta 做 Park 变换得到 dq 轴分量,q 轴分量反映相位误差。用 PI 调节器控制 q 轴分量趋于零,PI 输出就是电网角频率,再经过积分得到相位角 theta。

SOGI-PLL 的离散化实现是 DSP 代码里的重点。下面给出一个基于二阶广义积分器的锁相环离散化思路示例,按差分方程写,可以直接移植到 DSP 中断函数中:

// 文件路径:control/pll_sogi.c // SOGI 正交信号发生器离散化示例 // 输入:vg 电网电压采样值 // 输出:valpha, vbeta,锁相角 theta typedef struct { float vg; // 输入电网电压 float valpha; // 输出 alpha 轴分量 float vbeta; // 输出 beta 轴分量 float x1, x2; // 状态变量 float k; // SOGI 带宽系数 float w; // 中心角频率 float Ts; // 采样周期 } SOGI_Struct; void SOGI_Update(SOGI_Struct *sogi, float vg) { float wTs = sogi->w * sogi->Ts; float den = 2.0f + sogi->k * wTs; float alpha = (2.0f * vg - 2.0f * sogi->x2 - (sogi->k * wTs - 2.0f) * sogi->x1) / den; sogi->x1 = sogi->x1 + wTs * alpha; sogi->x2 = sogi->x2 + wTs * sogi->x1; sogi->vg = vg; sogi->valpha = alpha; sogi->vbeta = sogi->x1; }

PLL 的 PI 调节器和角度积分部分可以放到 ISR 里执行,与 SOGI 模块串联。需要注意的是,PLL 参数设计时要兼顾动态响应和抗扰能力。并网逆变器在电网电压畸变时锁相不能剧烈波动,否则电流指令会跟着畸变。

3.2 电流环 PR 控制

并网逆变器的核心控制目标,是让输出电流快速、准确地跟踪正弦电流指令。控制器选择上,最常见的两个方向是同步旋转坐标系下的 PI 控制和静止坐标系下的 PR 控制。

单相系统如果要在旋转坐标系下做 PI 控制,需要先通过 SOGI 构造正交电流信号,做 Park 变换后得到 dq 轴电流,两个轴各配一个 PI。这样做的好处是 PI 控制稳态无静差,坏处是计算量偏大,而且 dq 轴之间存在耦合。

PR 控制直接在静止坐标系下对正弦电流指令做跟踪,比例谐振控制器在基波频率处增益很大,所以能够实现正弦量的无静差跟踪,实现上更直接。其连续域传递函数为:

G_PR(s) = Kp + 2 * Kr * wc * s / (s^2 + 2 * wc * s + w0^2)

其中 Kp 为比例系数,影响动态响应速度;Kr 为谐振系数,决定基波频率处的增益;wc 为谐振带宽,用于提高对电网频率偏移的适应性;w0 为基波角频率。

实际 DSP 实现时,需要把传递函数离散化。比较常用的是双线性变换法,也就是 Tustin 变换。离散化之后,PR 控制器可以表示成二阶差分方程形式,核心代码如下:

// 文件路径:control/current_pr.c // PR 控制器离散化实现示例 // 输入:error 电流误差 // 输出:u 控制器输出 typedef struct { float b0, b1, b2; float a1, a2; float x1, x2; float out; } PR_Struct; void PR_Init(PR_Struct *pr, float Kp, float Kr, float wc, float w0, float Ts) { // 预畸变双线性变换系数计算 // 实际系数根据 Tustin 变换公式推导 float tan_half = tanf(w0 * Ts / 2.0f); float den = 4.0f + 4.0f * wc * Ts + w0 * w0 * Ts * Ts; pr->b0 = (4.0f * Kr * wc * Ts) / den; pr->b1 = 0.0f; pr->b2 = -pr->b0; pr->a1 = (2.0f * w0 * w0 * Ts * Ts - 8.0f) / den; pr->a2 = (4.0f - 4.0f * wc * Ts + w0 * w0 * Ts * Ts) / den; pr->x1 = 0.0f; pr->x2 = 0.0f; pr->out = 0.0f; } float PR_Update(PR_Struct *pr, float error) { // 差分方程实现 y[n] = b0*e[n] + b2*e[n-2] - a1*y[n-1] - a2*y[n-2] float out = pr->b0 * error + pr->b2 * pr->x2 - pr->a1 * pr->x1 - pr->a2 * pr->x2; pr->x2 = pr->x1; pr->x1 = out; pr->out = out; return out; }

这个示例展示了 PR 控制器的基本结构,但这个差分方程写法是示意性的,实际工程中建议通过 MATLAB 的 c2d 函数或者手推差分方程核对系数符号和状态变量更新顺序,避免实现错误。

电流环输出还需要加上电网电压前馈,抵消电网电压扰动对电流环的影响。前馈量可以和 PR 输出相加,形成最终的调制波,再送入 PWM 比较器。

3.3 母线电压环与 MPPT

并网逆变器通常采用电压外环、电流内环的双闭环结构。母线电压外环根据并网功率需求生成电流指令的幅值,电流内环控制并网电流跟踪指令。

光伏侧还需要 MPPT 控制。最常用的是扰动观察法,基本原理是:小幅改变 Boost 电路的输入电压,然后观察光伏输出功率的变化。如果功率增加,说明扰动方向正确,继续朝这个方向扰动;如果功率减少,则反向扰动。

扰动观察法实现简单,但稳态时会在最大功率点附近来回振荡,导致能量损失。实际系统中可以通过减小扰动步长或引入自适应步长来改善。电导增量法也是一种常用方案,它对环境变化响应更快,但实现复杂度稍高。

MPPT 代码的核心结构是周期性读取光伏电压和电流,计算功率,再与上一次功率比较,决定 PWM 占空比调整方向:

// 文件路径:control/mppt.c // 扰动观察法 MPPT 实现示例 // 每 100ms 执行一次 typedef struct { float v_pv_old; float p_pv_old; float duty; float step; } MPPT_Struct; void MPPT_Update(MPPT_Struct *mppt, float v_pv, float i_pv) { float p_pv = v_pv * i_pv; if (p_pv > mppt->p_pv_old) { // 功率增加,保持扰动方向 if (v_pv > mppt->v_pv_old) { mppt->duty += mppt->step; } else { mppt->duty -= mppt->step; } } else { // 功率减小,反向扰动 if (v_pv > mppt->v_pv_old) { mppt->duty -= mppt->step; } else { mppt->duty += mppt->step; } } // 限幅 if (mppt->duty > 0.95f) mppt->duty = 0.95f; if (mppt->duty < 0.05f) mppt->duty = 0.05f; mppt->v_pv_old = v_pv; mppt->p_pv_old = p_pv; }

在光伏储能系统中,如果电池需要充电,母线电压的控制策略会更复杂一些,可能需要根据电池充电功率来限制并网功率。整体逻辑可以理解成:光伏能量、电池能量、并网能量三者的功率平衡,控制器的任务是根据工作模式分配功率流向。

3.4 孤岛检测与保护逻辑

并网逆变器必须带有孤岛检测功能。电网失电时,如果逆变器继续工作,会形成一个自主供电的小型孤岛,对电网检修人员造成安全风险。

孤岛检测分为被动式和主动式两类。被动式检测利用电网电压幅值、频率、相位的变化来判断失电,但如果在逆变器输出功率与本地负载功率接近的情况下,孤岛状态可能比较难检测,存在检测盲区。主动式检测则是故意向电网注入小幅扰动信号,观察电压或频率响应,比如频率偏移法 AFD、有功或无功扰动法等。

实际项目中通常是主被动结合:被动检测覆盖大多数情况,主动扰动消除盲区。同时还要设置过流、过压、过温、直流分量超限等保护阈值。保护策略要分两级:

  • 硬件保护:利用 TMS320F280039C 的比较器子系统,把电流信号直接引入比较器,超出阈值后立即触发 TZ 封锁 PWM
  • 软件保护:ADC 采样后,在中断服务程序中检查各状态量,如果异常则进入故障状态机

阈值设定时需要兼顾保护灵敏度和正常运行裕量。比如过流保护阈值至少要比最大工作电流峰值高 1.2 倍以上,还要考虑电流采样误差和滤波延迟,避免正常波动时误触发。

4. DSP 软件架构与代码实现

4.1 工程结构与模块划分

写 DSP 控制代码和写上位机应用代码的思路不一样,核心原则是“让中断尽量简短,让每个模块职责单一”。一个可维护的并网逆变器工程,建议按功能拆分成以下模块:

  • main.c:系统初始化入口
  • system_init.c:系统时钟、GPIO、外设初始化
  • adc.c:ADC 配置、采样数据读取与标定
  • pwm.c:EPWM 配置、死区、TZ 保护
  • pll.c:SOGI-PLL 锁相
  • control.c:电压环和电流环控制
  • mppt.c:最大功率点跟踪
  • protection.c:软件保护逻辑
  • state_machine.c:工作状态机
  • communication.c:通信模块

每个模块尽量通过结构体封装状态,避免大量全局变量。DSP 的 RAM 资源有限,但 F280039C 的 RAM 相对充裕,只要不在中断里做耗时操作,问题不大。

4.2 ADC 采样与标定

ADC 采样的关键点包括采样通道配置、触发源配置和采样时刻选择。

在并网逆变器中,并网电流和电网电压的采样时刻建议放在 PWM 载波周期的中点。当 EPWM 计数器工作在递增递减模式时,计数器的零点或周期值位置对应开关管的中间状态,此时开关噪声最小。通过 EPWM 模块产生 SOC 触发信号,ADC 在固定时刻启动转换。

ADC 采样回来的数字量需要转换成实际物理量,公式是:

实际值 = (ADC 数字值 - 偏置) * 增益

偏置对应零电流或零电压时的采样值,增益对应传感器和调理电路的变换系数。这两个值通常需要在硬件上实际标定,不能只用理论值。初始化阶段可以先读取通道偏置,再通过注入已知信号校准增益。

4.3 EPWM 配置与死区

Heric 拓扑中,H 桥同一桥臂的上下两个开关管不能同时导通,否则会造成直通短路,所以必须在 PWM 信号中加入死区时间。

EPWM 模块的死区逻辑很灵活,可以设置上升沿延迟和下降沿延迟。对于同一个桥臂,一般配置为高有效互补输出,一个信号加入上升沿延迟,另一个信号加入下降沿延迟,确保两路信号之间有一个安全间隔。

死区时间的选择需要综合开关管特性和系统效率。死区太短,不足以覆盖开关管的关断延迟,有直通风险;死区太长,输出波形畸变增大,会影响电流谐波。实际项目中一般从几百纳秒到几微秒不等,要根据器件数据手册里的关断时间和驱动延迟来确定,然后通过双脉冲测试验证。

EPWM 初始化代码的思路可以概括为以下步骤:

  • 设置时基周期,确定开关频率
  • 选择递增递减计数模式,生成对称载波
  • 配置比较值寄存器,更新调制波
  • 配置死区寄存器,生成互补 PWM
  • 配置 TZ 模块,使能硬件故障封锁
  • 配置 ADC 触发源

4.4 中断服务程序

控制核心是 PWM 中断服务程序。在 TMS320F280039C 中,PWM 模块可以在时基周期匹配或零事件时触发 ADC,并在 ADC 转换完成后触发中断,也可以由 EPWM 直接触发 ADC 中断。

ISR 的执行流程建议按以下顺序组织:

  1. 读取 ADC 转换结果
  2. 根据采样值计算实际电压电流物理量
  3. 更新 SOGI-PLL 锁相环
  4. 执行母线电压环控制,生成电流指令
  5. 执行电流环 PR 控制,生成调制波
  6. 叠加电网电压前馈
  7. 更新 PWM 比较寄存器
  8. 检查软件保护条件
  9. 清除中断标志,退出中断

ISR 执行时间需要通过 GPIO 翻转来实测,确保整个中断周期在 PWM 周期内完成。如果执行时间太紧张,可以考虑把部分算法放在 CLA 协处理器上执行。

下面是简化版 ISR 框架:

// 文件路径:main_interrupt.c // PWM 中断服务程序框架示例 __interrupt void EPWM_ISR(void) { // 1. 读取 ADC 结果 float i_grid = Read_Grid_Current(); float v_grid = Read_Grid_Voltage(); float v_bus = Read_Bus_Voltage(); float v_pv = Read_PV_Voltage(); float i_pv = Read_PV_Current(); // 2. 更新锁相环 SOGI_Update(&sogi, v_grid); PLL_Update(&pll, sogi.vbeta); // 3. 母线电压环 float i_ref = BusVoltage_Control(v_bus_ref, v_bus); // 4. 电流环 PR 控制 float error = i_ref - i_grid; float d = PR_Update(&pr_current, error); // 5. 电网电压前馈 d = d + v_grid * feedforward_gain; // 6. 更新 PWM 比较寄存器 update_pwm_cmp(d); // 7. 软件保护检查 check_protection(); // 清除中断标志 EPWM_clearEventTriggerInterruptFlag(EPWM1_BASE); }

4.5 状态机设计

逆变器不能上电就直接开始并网,需要分阶段工作。状态机是管理这些阶段的有效方式。

典型的工作状态如下:

  • 待机状态:系统初始化完成,等待启动指令
  • 软启动状态:通过限流电阻给母线电容充电,母线电压建立
  • 预并网状态:继电器吸合前检查电网参数是否正常,电流指令为零
  • 并网运行状态:正常输出功率
  • 故障停机状态:检测到保护条件后封锁 PWM,等待故障复位

状态迁移条件需要做防抖处理,比如电网电压异常要连续检测到几个周期才判定故障,避免瞬时干扰导致误动作。

5. 原理图与 PCB 设计要点

5.1 原理图设计流程

DSP 最小系统是原理图设计的第一步。对于 TMS320F280039C,需要重点设计电源部分。各电源轨的上电顺序、去耦电容摆放、模拟电源与数字电源的隔离都需要考虑。

时钟部分可以采用内部振荡器,也可以外接晶体。对于并网控制来说,内部振荡器的精度基本够用,锁相环本身会对频率偏差进行调节。不过如果需要更稳定的通信时钟,外接晶体更稳妥。

JTAG 接口用于程序下载和调试,BOOT 配置引脚决定 DSP 上电后从哪里启动程序。这个在原理图设计时就要留出可配置的电阻,方便后续切换启动模式。

原理图的分页建议按功能组织:电源页、DSP 最小系统页、采样调理页、PWM 驱动接口页、保护逻辑页、通信接口页、功率连接器页。每页之间用网络标签连接,方便后期检查和维护。

5.2 采样电路设计

电压采样和电流采样是控制精度的源头,设计不到位时,换什么控制算法都救不回来。

母线电压采样一般用电阻分压加差分运放。因为母线电压是直流,可以直接分压到 ADC 可接受的范围,再经过一级电压跟随和 RC 滤波进 ADC。分压电阻的精度和温度稳定性会直接影响电压采样精度,宜选用精度 1% 甚至更高、温漂低的电阻。

电网电压采样是交流信号,需要把负半周抬升到 ADC 输入范围内。常见做法是差分采样后,用运放叠加一个直流偏置电压,把信号抬到 1.65V 左右,再进 ADC。同时还要加钳位二极管,防止异常高压损坏 ADC。

电流采样两种常见方式:霍尔传感器和采样电阻。

霍尔传感器隔离性能好,不需要和功率回路共地,但是成本高、体积大。采样电阻成本低,直接串联在功率回路里,但需要注意共地问题和采样电阻的功率损耗。对于 32A 级别的交流电流,采样电阻的损耗会比较可观,所以更推荐使用霍尔传感器或电流互感器。

运放调理电路的输出要加 RC 低通滤波,截止频率需要根据控制带宽设计。滤波太狠会引入相位延迟,影响电流环稳定;滤波不够则噪声大,影响采样精度。

5.3 驱动电路设计

Heric 拓扑一共有六个开关管,各个开关管的参考地不完全一样,所以驱动电路必须隔离。

常见的驱动方案是使用集成隔离驱动芯片,比如光耦隔离驱动或磁耦隔离驱动。驱动芯片的峰值输出电流要能满足开关管栅极充电需求,否则开关速度不够。

栅极电阻的选择是一个重要设计点。栅极电阻越大,开关速度越慢,开关损耗越大,但 dv/dt 和 di/dt 越小,EMI 越好;栅极电阻越小,开关速度越快,损耗越小,但电压电流尖峰越大,甚至可能引起振荡。实际项目中需要通过双脉冲测试来优化栅极电阻值。

驱动电路的供电需要独立的隔离电源。如果六个开关管共用一个隔离电源,很容易因为电位不同产生问题。一般建议高端驱动和低端驱动分开供电,或者使用具有高压侧自举功能的驱动方案,但自举电路在部分工况下可能出现欠压问题。

5.4 PCB 布局与布线建议

功率板的 PCB 设计是整个硬件成败的关键。并网逆变器开关频率在 20kHz 左右,开关瞬态产生的 dv/dt 和 di/dt 非常可观,PCB 布局必须严格控制寄生参数。

功率回路的布线要遵循“最小回路面积”原则。正向导通回路和反向续流回路的面积越小,回路寄生电感越小,开关管的电压尖峰越低。母线电容要尽量靠近逆变桥,这样在开关切换瞬间,高频电流由母线电容提供,而不是从远处的大电容拉线过去。

驱动电路要尽量靠近开关管。栅极驱动回路的面积也要小,否则容易受功率回路干扰,导致误开通或误关断。驱动信号线和功率线不要平行走线,信号地需要用单独的地线连接。

控制板的布局相对宽松,但也要注意模拟地和数字地的处理。ADC 采样信号属于微弱模拟信号,要远离 PWM 驱动信号和高频数字信号。如果控制板上有通信接口,通信隔离也是一个需要提前规划的问题。

散热方面,功率管需要贴散热器,散热器与功率管之间要加绝缘垫片。PCB 上可以增加大面积铺铜辅助散热,但注意铺铜不能影响安规距离,高压区域和低压区域之间要留足爬电距离。

6. 联调、测试与常见问题排查

6.1 低压调试方法

并网逆变器直接上高压电网调试非常危险,一旦控制逻辑有 bug,很容易烧毁功率器件。合理的调试流程是先低压后高压,先开环后闭环。

第一步,先把 DSP 的 PWM 输出接到驱动电路,但断开功率级母线电压,只测 PWM 波形和驱动波形是否正常。重点检查死区时间是否设置正确、互补信号是否存在直通。

第二步,用低压直流源给母线供电,比如先加 30V 左右,用示波器观察逆变桥输出波形。此时可以验证电平转换和采样电路是否正常。

第三步,把母线电压提高到接近额定值,同时通过调压器控制交流输出,逐步验证 PLL 锁相、电流环闭环和并网过程。并网前一定要用示波器确认电网电压采样相位和幅值都正确。

整个调试过程要有紧急停机按钮,并且全程使用隔离变压器和示波器隔离探头,避免触电风险。

6.2 常见问题列表

以下是在类似项目中经常遇到的问题,按现象、原因和解决思路整理成表:

问题现象常见原因解决思路
PWM 无输出EPWM 模块被 TZ 封锁或时钟配置错误检查 TZ 标志,确认 GPIO 配置,查看 PWM 寄存器状态
驱动波形异常死区设置不当或驱动供电不足用示波器实测死区时间,检查隔离电源带载能力
过流保护频繁误触发采样偏置未校准,或比较器阈值过低重新标定采样偏置,留足阈值裕量
ADC 采样波动大采样时刻靠近开关沿,或滤波不足调整 PWM 触发时刻,优化 RC 滤波参数
并网瞬间电流冲击大锁相相位未对准或电流指令突变检查 PLL 动态过程,增加软启动斜坡
IGBT 炸管直通、过压尖峰或散热不足检查死区时间和驱动逻辑,用示波器测 Vce 尖峰

6.3 DSP 启动与 JTAG 问题专项

有工程师会遇到“程序固化到 Flash 之后,不接 JTAG 就运行不了”的情况。这个现象在 C2000 系列中比较常见,本质上是 BOOT 模式配置的问题。

TMS320F280039C 上电后,会根据 BOOT 引脚或 OTP 中的配置决定从哪个地址启动。如果 BOOT 模式被配置成等待 JTAG 仿真器连接,那么上电后芯片不会自动运行 Flash 里的程序,只有接上仿真器并连接目标板后才会继续。

排查步骤可以按以下顺序:

  • 检查 BOOT 引脚的上下拉电阻是否正确,确认选择了 Flash 启动模式
  • 检查 Flash 烧录是否完整,程序是否真的烧到了 Flash 地址
  • 检查复位引脚是否有周期性复位,有时看门狗或欠压复位会导致程序反复重启
  • 检查电源上电时序是否满足要求

如果是专门针对 F280039C 的开发板,可以查阅对应开发板的 BOOT 配置说明,确认引脚对应的启动模式后再硬件连接。

7. 工程最佳实践与进阶方向

7.1 工程规范与建议

控制算法的工程化,不只是把公式变成代码,还包括规范、测试和文档。以下几条建议供参考。

变量命名要统一。比如电压用 v 开头,电流用 i 开头,参考值加 ref 后缀,反馈值可以直接用名字区分。控制参数集中放在一个结构体里,方便整定和移植。

代码中尽量不出现魔法数。PWM 周期、死区时间、保护阈值、控制参数都定义成宏或常量,集中管理。这样在调试时修改一个参数,不用在代码里到处搜索。

参数整定过程要记录。电流环 Kp、Kr、PLL 带宽、MPPT 步长这些参数,每次都只改一个变量,记录修改前后的波形和现象。这个习惯能大幅减少排查问题的成本。

版本管理一定要用起来。硬件原理图、PCB、DSP 代码、上位机配置工具建议放在同一个仓库里,按版本打标签。硬件改版和代码升级的对应关系要记录清楚,否则过一段时间可能就说不清楚哪版固件对应哪版硬件了。

安全规范的优先级最高。调试高压系统时,要设置紧急断电回路,使用隔离工具,保持实验台整洁。每次上电前检查接线,测量母线电容放电后再触碰电路。

7.2 进阶学习方向

如果已经能跑通基础的并网逆变器控制,下一步可以考虑以下几个方向:

第一,控制算法的鲁棒性提升。电网并不总是理想电压源,弱电网下电网阻抗变化、电压畸变、频率波动都会影响系统稳定性。可以学习电网阻抗检测、自适应控制、重复控制、谐波补偿等方向。

第二,先进控制算法的工程化。预测控制、无差拍控制、ADRC、LQR 这些算法在学术研究中很常见,但要落到 DSP 上有不少工程细节。比如预测控制的模型误差、ADRC 的观测器带宽整定、LQR 的权重矩阵选取,都需要与实际硬件结合验证。

第三,储能双向变换器的控制。光伏储能系统中,电池侧的 DC-DC 变换器控制和并网逆变器控制需要协同。低压侧放电、高压侧稳压、充放电切换、并离网无缝切换,都是很有价值的工程问题。

第四,系统可靠性设计。除了控制算法,还要关注故障诊断、寿命预测、通信冗余、安规认证等工程化能力。

从学习路线来看,建议先把基础的单相并网逆变器完全吃透,包括拓扑、调制、锁相、电流环整定和硬件调试,再逐步扩展到三相系统、储能系统和更高功率等级。每增加一个需求,要对整个系统的控制架构重新审视一遍。

把控制算法放进真实的 DSP 硬件和功率电路里跑通,是学习电力电子控制最有效的一条路径。7.2kW 单相 Heric 并网逆变器这套方案,覆盖了从功率级、采样驱动到控制算法的完整闭环,值得多花时间把每个环节的原理和参数都搞清楚。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询