调速器响应,0.05秒级延迟
交直流混合微电网,有两个交流电压配电级(初级为 13.8 kV,次级为 220 V)和一个直流配电级 (300V)。 该测试系统模拟包括: 一台柴油发电机, 两个光伏 (PV) 系统, 两个电池储能系统, 各种线性和非线性负载。
交直流混合微电网这玩意儿搞起来是真带劲,尤其是当13.8kV高压交流、220V低压交流和300V直流三个层级搅和在一起的时候。最近手头刚好有个仿真案例,柴油机带着俩光伏、俩电池,还有一堆能整活的负载——从纯电阻到变频器这类非线性设备全齐活。
先说说这个架构里的狠角色柴油发电机。这货在13.8kV交流母线上稳如老狗,代码里用了个经典二阶模型:
class DieselGenerator: def __init__(self, P_max=500): self.P_max = P_max # 单位kW self.H = 3.2 # 惯性常数 self.D = 1.0 # 阻尼系数 def governor_response(self, freq_deviation): return min(self.P_max, max(0, -self.D * freq_deviation * 0.05))重点看调速器那部分,D参数要是设大了容易过调,之前仿真时设成2.0直接让系统震荡到姥姥家。实战中发现1.0~1.5之间能平衡响应速度和稳定性。
交直流混合微电网,有两个交流电压配电级(初级为 13.8 kV,次级为 220 V)和一个直流配电级 (300V)。 该测试系统模拟包括: 一台柴油发电机, 两个光伏 (PV) 系统, 两个电池储能系统, 各种线性和非线性负载。
光伏这边整了两个阵列,MPPT算法必须得骚。用扰动观察法(P&O)的时候发现个坑——采样间隔太短容易在最大功率点附近反复横跳。后来改成变步长才稳:
% 变步长MPPT实现片段 delta_V = V_new - V_old; if abs(delta_V) < 0.5 step = 0.2; % 小步细调 else step = 1.5; % 大步追赶 end duty_cycle = duty_cycle + sign(delta_P) * step;直流母线300V的稳压主要靠电池兜底。电池管理有个状态机逻辑特别关键,充放电切换得丝滑:
// 电池充放电状态机 if (soc > 95% && V_dc > 310) { mode = IDLE; // 过充保护 } else if (V_dc < 290 && soc > 20%) { mode = DISCHARGE; // 低压支撑 } else { mode = AUTO; // 根据调度指令动作 }非线性负载这块最头疼的是谐波治理。220V交流母线上挂了个变频器负载,实测THD能飙到25%。后来在AC/DC换流器控制环里加了谐波补偿项:
# 谐波抑制补偿算法片段 h5 = fft_current[5] # 提取5次谐波分量 compensation = 0.5 * h5 * np.sin(5*w*t + phase_shift) # 相位补偿关键 modulation_wave += compensation # 叠加到PWM调制波最后整个系统的协调控制用了分层架构。交流侧玩Droop控制,直流侧搞电压下垂,中间用双向AC/DC做接口。调试时发现个反直觉的现象——交流侧频率下垂系数和直流电压下垂系数得成反比设置,不然两边抢功率能打起来。
搞这种混合系统就像在跳踢踏舞,交流的惯性、直流的快响应,还有柴油机的慢脾气得踩准节奏。下次打算试试把氢燃料电池也揉进来,估计又得掉几撮头发才能调顺溜。
