固态变压器(Solid State Transformer, SST)是电力电子领域最复杂的系统之一。在实际工业工程中,固变SST 的完整控制代码量通常在数万行至十万行级别,且必须运行在**“多核 DSP + 多片 FPGA 集群”**的分布式异构硬件架构上。
主流中高压 固变SST 采用**“交-直-交”三级式物理拓扑**。全景拆解 固变SST 四大核心软件层的控制代码,详细说明其实现功能,并提取工程级 DSP 核心算法的 C 语言代码骨架。
第一部分:系统的“大脑” —— 顶层状态机与联锁保护

固变SST 内部拥有庞大的高压直流电容阵列和高频变压器,绝对不能“一键直接上电发波” ,否则通电瞬间的极高浪涌电流会直接炸毁整个系统。这部分代码通常运行在 DSP 的慢速定时器(如 1ms)中。
实现功能:
防浪涌预充电:控制交流接触器,先串入电阻给高压电容缓慢充电。
三级平滑软启动:严格按“高压整流 → 隔离降压 → 低压逆变”的顺序逐级解锁,并采用参考值斜坡上升(Ramp-up)防止超调。
极速硬件级急停:实时轮询全系统状态,发生异常时拍掉高压断路器。
工程核心 C 代码骨架:
C
typedef enum { STANDBY, PRECHARGE, CHB_START, DAB_START, VSC_START, RUNNING, FAULT } SST_State_t;
void SST_System_StateMachine_Task_1ms(void) {
// 1. 绝对最高优先级:故障急停与封锁
if (Check_Hardware_Desat_Fault() || Check_Fiber_Comms_Loss()) {
Disable_All_PWM_Hardware_Trip(); // 底层硬件引脚瞬间拉低
Open_Main_HV_Breaker(); // 断开高压交流断路器
System_State = FAULT;
}
// 2. 状态机流转调度
switch(System_State) {
case STANDBY:
if (Receive_Start_Cmd) {
Close_Precharge_Contactor(); // 闭合预充电接触器,串入电阻
System_State = PRECHARGE;
}
break;
case PRECHARGE:
// 依靠电网不控整流,等待所有高压电容充至额定值的 85%
if (Get_Vdc_Global_Avg() > 0.85f * V_GRID_PEAK) {
Close_Main_Contactor(); // 旁路预充电电阻
System_State = CHB_START;
}
break;
case CHB_START:
Enable_CHB_PWM(); // 解锁高压侧发波
Ramp_Up(&VDC_HV_REF, TARGET_HV); // 软启动:高压直流目标值斜坡上升
if (Is_CHB_Stable()) System_State = DAB_START;
break;
case DAB_START:
Enable_DAB_PWM(); // 解锁中间隔离级发波
Ramp_Up(&VDC_LV_REF, TARGET_LV); // 软启动建立低压直流母线
if (Is_LV_Bus_Stable()) System_State = VSC_START;
break;
case VSC_START:
Enable_VSC_PWM(); // 解锁末级逆变器,正式对外供电
System_State = RUNNING;
break;
}
}
第二部分:高压网侧 交-直(AC-DC)整流级控制
本级直接接入万伏高压电网,通常采用级联 H 桥(CHB)或模块化多电平(MMC)拓扑。
实现功能:
高功率因数并网(PFC) :锁定电网相位,控制网侧吸收/回馈的电流为纯正弦波,且与电网电压同相。
全局总压稳定:维持几十个串联子模块的直流总电压恒定(保证整机能量守恒)。
模块均压(最核心难点) :微调各个模块的占空比,克服器件制造公差,确保几十个模块均分万伏高压,防止个体过压炸毁。
工程核心 C 代码骨架(运行于 DSP 100μs 高频中断) :
C
void Stage1_CHB_Control_ISR(void) {
// 1. 锁相环 (SRF-PLL):获取电网相位 Theta
Run_PLL(V_grid_a, V_grid_b, V_grid_c, &Theta, &Omega);
// 2. 全局稳压外环
// 【工程避坑】单相功率脉动会在电容产生 100Hz 巨大纹波,必须用滑动平均滤波器(MAF)滤除,否则注入电网3次谐波
float vdc_total_filtered = MAF_Filter_100Hz( Calculate_Total_Vdc() );
float id_ref = PI_Calc(&PI_Vdc_Global, VDC_HV_REF - vdc_total_filtered);
float iq_ref = 0.0f; // 无功电流指令设为0,维持单位功率因数
// 3. 电网电流内环 (dq 坐标系前馈解耦控制)
Park_Transform(I_grid_a, I_grid_b, I_grid_c, Theta, &id_fb, &iq_fb);
float vd_cmd = PI_Calc(&PI_Id, id_ref - id_fb) - Omega * L * iq_fb + Vd_grid_ff;
float vq_cmd = PI_Calc(&PI_Iq, iq_ref - iq_fb) + Omega * L * id_fb + Vq_grid_ff;
// 反变换得到三相全局基础调制波 (-1.0 ~ 1.0)
Inv_Park_Transform(vd_cmd, vq_cmd, Theta, &D_base_a, &D_base_b, &D_base_c);
// 4. 模块级相内均压控制 (以 A 相的 N 个模块为例)
// 【致命细节】电流过零点处会导致均压正负剧烈翻转,必须做平滑防抖处理
float sign_Ia = Smooth_Sign(I_grid_a);
for(int i = 0; i < N; i++) {
// 计算单个模块电压偏差,经过 PI 算出微调占空比
float vdc_err_mod = VDC_MOD_REF - MAF_Filter_100Hz(Vdc_A[i]);
float delta_duty = PI_Calc(&PI_Balance_A[i], vdc_err_mod);
// 模块发波指令 = 基础波 + (微调量 * 电流充放电极性)
Duty_A[i] = D_base_a + (delta_duty * sign_Ia);
// 动态限幅抗积分饱和
Duty_A[i] = Saturate(Duty_A[i], -0.95f, 0.95f);
}
// 将最终 Duty 数组通过光纤发送给底层 FPGA 生成 PWM
}
第三部分:高频隔离 直-直(DC-DC)变压级控制
每个高压 H 桥模块背后都接一个双有源桥(DAB),数十个 DAB 的输出端并联在一起(ISOP架构),汇聚成低压直流母线。这是 SST 的“心脏”。
实现功能:
高频电气隔离与降压:利用 10kHz~100kHz 的高频变压器实现物理隔离,并降压至 400V/800V 直流。
软开关与能量双向流动:通过单移相(SPS)控制变压器原副边方波的相位差,实现无损能量传输。
并联均流:强制几十个并联的 DAB 模块输出相等的电流,防止个别漏感偏小的模块过载。
工程核心 C 代码骨架(移相与均流闭环) :
C
void Stage2_DAB_Control_ISR(void) {
// 1. 低压直流母线稳压 (全局外环)
float vdc_lv_err = VDC_LV_REF - ADC_Read(VDC_LV_BUS);
// 生成基础移相角指令 (范围 -0.5 ~ 0.5,代表 -180° ~ 180°)
// 正值代表高压侧超前(正向送电),负值代表反向回馈
float phase_shift_base = PI_Calc(&PI_LV_Bus, vdc_lv_err);
// 2. DAB 模块级并联均流控制 (ISOP Current Sharing)
float i_out_avg = Calculate_Total_LV_Current() / NUM_MODULES;
for(int i = 0; i < NUM_MODULES; i++) {
float i_err = i_out_avg - I_out_DAB[i];
// 生成均流微调移相角 (带宽必须极慢,防止与主电压环“抢方向”导致振荡)
float delta_shift = PI_Calc(&PI_Share[i], i_err);
// 合成最终下发给该模块的移相角
float final_shift = phase_shift_base + delta_shift;
// 物理限幅 (防止移相角过大导致变压器偏磁炸机)
final_shift = Saturate(final_shift, -0.45f, 0.45f);
// 更新高频发波寄存器 (底层转换为高频时钟计数器的 Tick 延迟)
Update_DAB_Phase_Shift_Reg(i, final_shift);
}
}
第四部分:低压 直-交(DC-AC)逆变级控制
低压母线通过逆变器输出。以 固变SST 替代传统配电变压器为小区供电为例,通常采用构网型(Grid-Forming / V/f控制) 。
实现功能:
建立交流微网:主动生成幅值恒定(380V)、频率恒定(50Hz)的纯净三相交流电。
抗短路与抗畸变:面对用户侧突然短路、三相不平衡、非线性负载时,维持波形并执行限流保护。
工程核心 C 代码骨架:
C
void Stage3_VSC_Control_ISR(void) {
// 1. 内部虚拟时钟发生器 (主动造 50Hz 参考相位,代替锁相环)
Virtual_Theta += 2.0f * PI * 50.0f * T_SAMPLE;
if(Virtual_Theta > 2.0f * PI) Virtual_Theta -= 2.0f * PI;
// 2. 交流电压外环 (维持输出 380V 线电压恒定)
Park_Transform(V_load_a, V_load_b, V_load_c, Virtual_Theta, &vd_load, &vq_load);
// Vd 轴参考值为交流峰值 (约 311V),Vq 轴设为 0
float id_ref = PI_Calc(&PI_Vd_Inv, 311.0f - vd_load);
float iq_ref = PI_Calc(&PI_Vq_Inv, 0.0f - vq_load);
// 核心保护:电流指令动态限幅 (防止外部短路烧毁 IGBT)
id_ref = Saturate(id_ref, -MAX_INV_CURRENT, MAX_INV_CURRENT);
iq_ref = Saturate(iq_ref, -MAX_INV_CURRENT, MAX_INV_CURRENT);
// 3. 电流内环带前馈解耦 (极速指令跟踪)
Park_Transform(I_inv_a, I_inv_b, I_inv_c, Virtual_Theta, &id_inv, &iq_inv);
float vd_cmd = PI_Calc(&PI_Id_Inv, id_ref - id_inv) - Omega * L_f * iq_inv + vd_load;
float vq_cmd = PI_Calc(&PI_Iq_Inv, iq_ref - iq_inv) + Omega * L_f * id_inv + vq_load;
// 4. SVPWM 空间矢量发波
Inv_Park_Transform(vd_cmd, vq_cmd, Virtual_Theta, &v_alpha, &v_beta);
SVPWM_Generate(v_alpha, v_beta, VDC_LV_BUS_FB, &Duty_Inv_A, &Duty_Inv_B, &Duty_Inv_C);
}
第五部分:底层的隐形守护者 —— FPGA 硬件描述代码
如果只靠上面的 C 语言代码,固变SST 是活不过 1 秒钟的。在固变SST 研发中,超过一半的代码量和核心动作是由主控/从控 FPGA 上的 Verilog/VHDL 逻辑电路直接完成的,完全脱离 CPU 的软件执行周期:
CPS-PWM 载波移相(算力卸载) :DSP 只发一个占空比,FPGA 负责内部生成数十个精确错开(如相差 36∘)的三角载波,自动错开发波。这让等效开关频率翻了几十倍,极大减小了网侧电感体积。
死区插入(Dead-time Insertion) :纯硬件逻辑死死锁住上下管,强制插入 2μs∼4μs 的死区时间,防止同一桥臂直通短路。
纳秒级硬件退饱和保护(Hardware Desat / OCP) :这是 固变SST 的最后一道免死金牌。当底层驱动电路检测到 IGBT/SiC 发生短路并拉高故障引脚时,FPGA 的硬件门电路会在 不到 1μs(一微秒)内 强行切断所有 PWM 发波,并触发 DSP 停机。这个速度是 C 语言软件中断永远无法企及的。
Aurora 高速光纤通信:维持主控大脑(DSP)与数十个位于上万伏高电位上的子模块之间“微秒级延迟”的 ADC 数据上传与发波指令下达。
固变SST 的控制系统是一个明确分工的多核异构体系:

DSP 的 C 语言是“大脑” :负责复杂的数学题(坐标变换、多变量解耦 PI、锁相、谐波滤除、均压均流)。它只输出一个结果——“占空比”和“移相角”。
FPGA 的 HDL 语言是“小脑与脊髓” :负责具体的脉冲分配执行(高速高精度的时钟管理)以及条件反射式的保命(微秒级短路保护)。
审核编辑 黄宇
-
SST
+关注
关注
0文章
154浏览量
36211
发布评论请先 登录
固变SST隔离驱动器的非对称延时补偿:提升级联型系统单元开关同步性
干变与油变制造商向固变SST(固态变压器)赛道转型的技术与商业逻辑剖析
继续死磕固变SST,2027年就是固变SST商业化爆发年!
基于SiC模块的固变SST支撑起新一代新能源汽车超级充电桩的闪充系统
软件定义电力电子:面向基于SiC模块的多电平固态变压器(SST)通用化控制底座(Open-SST)研究
固变SST固态变压器DAB双有源桥隔离DC-DC变换器热设计,移相控制策略,EMC设计
面向多枪并联快充的固变SST动态负载平衡与阻抗匹配控制策略研究
磁-热-流多场耦合:固变SST 高频变压器采用纳米晶磁芯的散热策略
SiC固变PEBB对中国SST固边变压器行业发展的技术价值和商业价值
基于62mm封装SiC模块及驱动的固变SST PEBB的硬件配置
工业HMI选型指南(中):决定效率的9项核心软件功能指标
全景拆解固变SST四大核心软件层的控制代码
评论