news 2026/9/17 16:58:24

地铁直流牵引供电Simulink仿真:24脉波整流与钢轨回流建模

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
地铁直流牵引供电Simulink仿真:24脉波整流与钢轨回流建模

简介:面向地铁牵引供电系统设计、运维技术人员及高校电力系统仿真方向师生的技术文档,围绕Matlab/Simulink平台展开地铁直流牵引供电系统的完整建模与故障分析。内容涵盖外部电源、24脉波整流变电站、直流母线、接触网PI分布参数模型及钢轨大地回路,并延伸到牵引传动系统的SVPWM逆变控制与故障工况仿真,对成都地铁实际参数进行复现验证,仿真结果与现场故障录波对比,可用于理解建模关键技术、掌握故障特性分析方法。资源包为1个docx文档,约49KB,内含可运行的复现代码及逐段中文注释,涉及24脉波整流器、接触网特征阻抗计算、空间矢量PWM扇区判断与系统级主仿真脚本等模块,兼顾理论推导与工程落地。已有183人学习,适合需要快速搭建仿真框架、对照代码理解电力电子系统建模细节的读者参考。

1. 直流牵引供电仿真的误差大头往往不在整流器

很多人拿到“地铁牵引供电系统建模与仿真”这个题目,第一反应是把 24 脉波整流器的二极管桥搭出来,看着直流母线纹波小就以为模型成了。真做过现场对录波的人会知道,空载电压对得上、满载压降对不上,问题往往出在钢轨—大地回流路径和接触网分布参数上。直流牵引是走行轨回流体系,电流从接触网去、经钢轨回,钢轨对地并非理想绝缘,泄漏电流在地层里扩散,这条路径的阻抗随频率和土壤分层变化,直接决定短路电流峰值和馈线保护定值。本篇按外部电源、整流变电站、直流母线、接触网、列车负载、回流网络的顺序,把各子系统在 Simulink 里怎么落地、参数从哪来、故障工况怎么注入讲清楚。适合做供电系统设计、继保整定,以及拿这条线做毕业设计的同学。

2. 24 脉波整流变电站的移相变压器与直流母线建模

2.1 为什么是 24 脉波而不是 12 脉波

城市轨道交通牵引变电所普遍采用 24 脉波整流机组,两台机组并联运行。原理是用两段相位差 15° 的阀侧绕组,各自接三相全桥,直流侧并联输出。12 脉波的特征谐波是 11、13 次,24 脉波把特征谐波推到 23、25 次,网侧电流 THD 从 8% 左右压到 3% 以内,这是城市电网对地铁这种大功率非线性负荷的基本准入条件。理解这一点,才能明白为什么模型里“移相”这一步绝对不能省。

建模时最容易踩的坑是:以为在 Simulink 里放两个 Universal Bridge 再并联就算 24 脉波了。没有移相变压器,两个桥的输入电压同相,并联后谐波是叠加而不是抵消,直流纹波反而更差。判断移相是否真正生效,不看模型结构,看直流侧纹波的主频。

2.2 整流机组的关键参数

参数典型值说明
网侧电压35 kV部分线路 110 kV 直降
阀侧电压1180 V空载直流约 1590 V
移相角±7.5° 或 0°/15°两组之间差 15°
联结组Dyn11 / Dy0配合实现 15° 相位差
理想空载直流电压√2·1180·(3√3/π) ≈ 1593 V理论值
额定直流电压1500 V牵引网标称值

参数表看起来简单,但每一行都对应一个仿真里的可调量。阀侧电压偏高,空载电压就对不上;移相角给错,纹波主频就错。整定这些参数的原则是:先让空载工况的直流电压和纹波对上现场,再谈负载和故障。

2.3 移相变压器组的搭建代码

function tf_group = build_phase_shift_transformers() % 网侧 35kV,两个阀侧绕组相位相差 15 度 base = struct('PrimaryVoltage', 35e3, ... 'SecondaryVoltage', 1180, ... 'VectorGroup', 'Dyn11', ... 'PhaseShift', 0); tf1 = ThreePhaseTransformer(base); base.PhaseShift = 15; % 第二组移相 15 度 base.VectorGroup = 'Dy0'; tf2 = ThreePhaseTransformer(base); tf_group = [tf1, tf2]; % 说明:移相通过阀侧绕组接法(星/三角)配合实现 % 两组阀侧分别接三相全桥,直流侧串联或并联 end

逻辑说明:移相角在 Simulink 的 Three-Phase Transformer (Two Windings) 里由 Winding 2 的 connection 参数决定,Dyn11 与 Dy0 组合天然产生 30° 相位差,要细分到 15° 需要延边三角形或 Zigzag 绕组。参数说明:PhaseShift 只是工程标记,真正决定相位的是绕组接法和匝数比,不要把它当成仿真里会直接生效的物理量,否则跑出来的纹波会骗人。

2.4 直流母线 RLC 与纹波校验

整流器输出到直流母线之间有平波电抗器和母线电容。验证模型是否正确的第一关是空载纹波,第二关才是满载压降。

% 直流母线纹波快速校验 Vdc0 = sqrt(2)*1180*(3*sqrt(3)/pi); % 理想空载直流电压 ≈1593V L_smooth = 2e-3; % 平波电抗 2 mH C_bus = 10e-3; % 母线电容 10 mF f_line = 50; % 网侧频率 f_ripple = 24*f_line; % 24 脉波纹波基频 1200 Hz % 简单 LC 二阶梯波衰减估算 atten = 1 / (2*pi*f_ripple)^2 / (L_smooth*C_bus + 1e-12); fprintf('空载纹波衰减系数 ≈ %.2e\n', atten);

逻辑说明:纹波基频取 24×50=1200 Hz,不是 300 Hz,这是判断模型是否真的 24 脉波的关键。参数说明:L_smooth 和 C_bus 的乘积决定纹波衰减,母线电容取值要在纹波和故障电流上升率之间折中,取值太大短路电流 di/dt 会被拉低,和现场录波对不上。如果仿真出来的纹波主频落在 300 Hz,回头检查变压器接法,几乎可以确定移相没生效。

3. 接触网 PI 链式电路与钢轨—大地回流阻抗建模

3.1 集中参数为什么不成立

接触网随线路长度变化,一段馈线供电半径常见 1~3 km,工频和纹波频段下必须用分布参数。PI 型链式电路是最省算力的做法:把馈线切成 N 段,每段用串联 R+L 和两端各半个并联 C+G。这样既保留了行波特性,又把状态变量数量控制在可控范围。

参数成都地铁取值单位
R per km0.02Ω/km
L per km1.2e-3H/km
C per km12e-9F/km
G per km1e-6S/km

这些参数不是拍脑袋来的,要按实际接触网型号、悬挂方式和回流轨截面换算。同一批参数下,分段数不同算出来的短路峰值能差 5% 以上,所以参数和分段数必须一起标定。

3.2 特征阻抗与分段数的选择

function [Zc, seg_num] = contact_line_model(freq, length_km) R = 0.02; L = 1.2e-3; C = 12e-9; G = 1e-6; Zs = R + 1j*2*pi*freq*L; % 串联阻抗 Yp = G + 1j*2*pi*freq*C; % 并联导纳 Zc = sqrt(Zs/Yp); % 特征阻抗 % 分段数:每段长度不超过最高关注频率对应波长的 1/10 v = 1/sqrt(L*C); % 行波速度 lambda = v / freq; seg_num = max(4, ceil(length_km / (lambda/10))); fprintf('特征阻抗 %.3f∠%.2f° Ω,建议分段 %d\n', ... abs(Zc), angle(Zc)*180/pi, seg_num); end

逻辑说明:特征阻抗决定馈线末端短路时反射系数的量级,分段数决定仿真能否捕捉行波过程。参数说明:freq 取关注的最高频率,做保护整定关注 50 Hz 足够,做纹波或暂态要按 1200 Hz 甚至更高算。分段数不是越多越好,每段都引入状态变量,段数翻倍仿真步长要跟着减半,算力成本平方级上升。

3.3 钢轨对地不是绝缘:四层大地模型

走行轨通过扣件、道床对地存在过渡电阻,回流电流一部分经钢轨回,一部分经大地回。Carson 方程给出地回路阻抗,但完整形式要算 Bessel 函数的无穷积分,Simulink 里跑不动,工程上通常做分层加权简化。

function Z_earth = carson_equation(freq, depth, rho) % depth: 各层深度(m),最后一层用 Inf % rho : 各层电阻率(Ω·m) mu0 = 4*pi*1e-7; omega = 2*pi*freq; % 分层土壤等效电阻率(简化:按深度加权) rho_eq = 0; for k = 1:numel(rho) if k == numel(rho) w = 0.1; % 底层权重 else w = min(depth(k), 5) / 5; % 浅层权重更高 end rho_eq = rho_eq + w*rho(k); end Z_earth = (mu0*omega/8) + 1j*omega*(mu0/(2*pi))*log(2.0/1.0) ... + rho_eq*freq*1e-6; % 经验修正项 end

逻辑说明:这里给的是工程可用的简化形式,用一个加权等效电阻率替代分层积分的复杂计算。参数说明:depth 按地层分层给,成都地区常见表层黏土、下层砂卵石,电阻率从 100 降到 30 Ω·m,最后两层权重自动降低。钢轨自身取 R=0.02 Ω/km、L=1.5e-3 H/km,两部分相加得到总回流阻抗。这个模型在 50 Hz 到 1 kHz 的误差可以接受,再高的频段需要回到精细 Carson 展开式。

提示:如果只关心直流侧稳态压降,钢轨—大地阻抗可以先用常数 0.05 Ω/km 顶替,等整流和逆变调通之后再换成频变模型,调试效率会高很多。

4. SVPWM 牵引逆变与列车负载的联合仿真

4.1 矢量控制与 SVPWM 的分工

牵引传动做的是把直流 1500 V 逆变成变频变压的三相交流驱动异步或永磁电机。外层是转子磁场定向的电流环,内层是 SVPWM 输出六路驱动。两层在 Simulink 里不要混在一个 S-Function 里,调试时很难定位是控制参数不对还是扇区判断出错。分开成两个 Function-Call Subsystem,中间用电压矢量传递,出问题一眼能看出是外层还是内层。

4.2 电流环参数表

参数取值说明
d 轴电感 Ld8 mH表贴式 PMSM 时 Ld≈Lq
q 轴电感 Lq12 mH凸极率约 1.5
定子电阻 Rs0.2 Ω影响低速转矩精度
电流环 Kp_d0.5按带宽取开关频率的 1/10
电流环 Ki_d10消除稳态误差
开关频率2 kHzIGBT 常用

这些值对应的是 1.5 MW 级牵引电机,换功率等级时电阻电感要按比例缩放。Kp 的整定原则是先按带宽 1/10 开关频率推算,再在仿真里阶跃响应观察超调,最终以调整时间小于 10 ms 为准。

4.3 SVPWM 扇区判断与作用时间

function duty = svpwm_control(Vref, Vdc) % Vref: [Valpha, Vbeta] Valpha = Vref(1); Vbeta = Vref(2); theta = atan2(Vbeta, Valpha); theta = mod(theta, 2*pi); % 归一到 [0, 2pi) sector = floor(theta/(pi/3)) + 1; % 扇区 1..6 % 相邻基本矢量的作用时间 T1 = sqrt(3)*abs(Vref)*sin(sector*pi/3 - theta)/Vdc; T2 = sqrt(3)*abs(Vref)*sin(theta - (sector-1)*pi/3)/Vdc; T0 = max(0, 1 - T1 - T2); % 零矢量时间 duty = struct('sector', sector, ... 'T1', T1, 'T2', T2, 'T0', T0, ... 'saturate', (T1+T2) > 1); % 过调制标志 end

逻辑说明:T1、T2 是两个相邻基本电压矢量的作用时间,T0 是零矢量时间,三段加起来等于一个开关周期。参数说明:saturate 标志很重要,当 T1+T2>1 说明参考矢量超出内切圆,需要做过调制处理,否则输出波形顶部被削平,电机电流出现明显低次谐波。Vdc 用实时母线电压而不是额定 1500 V,PWM 才能在网压波动时自动补偿。

4.4 列车负载曲线的接入

% 单车运行阻力与加速度曲线 v_max = 80/3.6; % 最高速度 m/s m_train = 280000; % 列车质量 kg R_run = @(v) 5.2 + 0.045*v + 0.00086*v.^2; % 运行阻力 N a_cmd = [0 1.0; 10 0.8; 20 0; 30 -0.6; 40 0]; % 加速度指令(m/s^2) t_cmd = a_cmd(:,1); a_val = a_cmd(:,2); F_trac = @(t,v) m_train*interp1(t_cmd, a_val, t, 'linear', 0) + R_run(v);

逻辑说明:牵引力由加速度指令加运行阻力构成,负载功率再乘速度得到,接到直流母线上作为受控电流源。参数说明:运行阻力公式的二次项来自空气阻力,速度单位必须是 m/s,直接填 km/h 算出的功率偏小一个数量级,这是新手最常犯的错误。多车同时启动时用 this 累加,母线电压跌落幅度是校核馈线保护的核心指标。

5. 短路故障注入与求解器级校核技巧

5.1 短路故障的参数化注入

function set_fault(model, t_fault, duration, R_fault) % 正极对地短路注入 set_param([model '/Fault_Breaker'], ... 'SwitchTimes', mat2str([t_fault, t_fault+duration]), ... 'InitialState', '0'); % 0=断开 set_param([model '/Fault_Resistance'], ... 'Resistance', num2str(R_fault)); % 过渡电阻 Ω end

逻辑说明:用 Breaker 的 SwitchTimes 做时序开关,比在模块里用 Clock+Relational Operator 触发更稳,变步长求解器下不会因过零检测丢事件。参数说明:过渡电阻 R_fault 取 0.01 Ω 对应金属性短路,取 0.5~2 Ω 对应经电弧或道床电阻的非金属性短路,两者峰值电流差两三倍,整定保护时都要跑一遍。

5.2 校核指标与实测对比

场景实测仿真允许误差
空载母线电压1650 V1635 V< 2%
满载母线压降1420 V1405 V< 2%
正极接地短路峰值12.3 kA12.1 kA< 5%
短路电流上升率 di/dt按录波仿真值< 10%

四个指标里最容易超标的是 di/dt,它受母线电容和接触网分段数共同影响,调纹波时电容加大,di/dt 就偏小。两个指标互相拉扯,需要在参数上做折中,一般先满足 short-circuit 峰值,再回头微调分段数把 di/dt 拉回来。

5.3 求解器与步长的取舍

Simulink 里电力电子系统常用 ode23tb 或 ode15s。变步长下若故障事件时刻被跨过,短路电流峰值会偏低。稳妥做法是把 Max step size 固定到开关周期的 1/20,2 kHz 开关对应 25 μs,故障时刻再在求解器里加一个 Output times 断点。这样峰值误差能压到 3% 以内。

注意:功率器件用 ideal switch 时,步长太大会出现数值振荡,母线电压波形上看到寄生的高频毛刺,那不是模型物理特性,是求解器伪影,不要当成谐振去解释。

5.4 多区间仿真的一条提速技巧

整条线路多个区间一起仿真时,接触网链式电路的状态变量数量是瓶颈。把不关注的远端区间用戴维南等效压缩成一个电压源加阻抗,只在故障点附近保留完整 PI 分段,单次仿真时间通常能降 60% 以上,对故障点近端波形的影响可忽略。这是把“能跑通”推进到“能迭代参数”的关键一步,很多时候模型精度不是不够,而是跑一次太慢导致没法调参。

本文还有配套的精品资源,点击获取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/17 16:54:35

无人机开发实战:从视觉感知到飞控与仿真的完整技术链

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/17 16:50:27

MATLAB与MWORKS电机仿真建模:从状态方程到联合仿真

简介&#xff1a;这是一份面向电气工程专业学生与电机学研究人员的仿真实验PDF资料&#xff0c;系统演示了如何借助MATLAB与MWORKS完成电机学核心实验的建模、计算与结果分析。文档从励磁电流曲线、电压调整率、变压器效率曲线&#xff0c;到Yy联结相电动势波形、空载合闸磁通与…

作者头像 李华
网站建设 2026/9/17 16:49:47

医学影像跨模态合成:从U-Net到Diffusion的临床落地实战指南

简介&#xff1a;本资源是一篇聚焦深度学习在医学影像合成领域前沿进展的综述论文&#xff0c;面向医学人工智能方向的本科生毕业设计、研究生科研入门及临床工程技术人员。论文系统梳理了2018—2023年间伪CT、合成MRI与合成PET三大核心任务的技术路径&#xff0c;深入对比GANs…

作者头像 李华