
单相桥式全控整流仿真从零复现教学
本文用于在一台新电脑上,从零复现单相桥式全控整流电路的仿真、数据导出和波形输出。
目标不是只打开已有图片,而是让你能自己重新运行 MATLAB 程序,重新生成:
text
仿真电路模型
整流输出电压和电流波形
晶闸管电压和电流波形
变压器二次侧电压和电流波形
触发角变化对输出的影响图
负载电感变化对输出电流的影响图
Excel 汇总数据
答案文字
1. 最终要得到什么
复现完成后,文件夹中应至少有这些内容:
text
single_phase_full_converter_homework.m
第4讲作业_答案文本.txt
figures
data
model
其中:
text
figures
保存图片:
text
01_单相桥式全控整流仿真电路示意.png
02_改变触发角_整流输出电压电流.png
03_触发角对平均输出的影响.png
04_改变负载电感_输出电流平滑作用.png
05_晶闸管与变压器二次侧波形.png
text
data
保存数据:
text
仿真结果汇总.xlsx
关键波形抽样数据.xlsx
single_phase_full_converter_data.mat
text
model
保存 Simulink 参考模型:
text
single_phase_full_controlled_rectifier_ref.slx
Simulink参考模型截图.png
2. 新电脑需要安装什么
最低要求:
text
MATLAB
完整复现建议安装:
text
MATLAB
Simulink
Simscape
Simscape Electrical
说明:
- MATLAB 脚本负责计算波形、生成图片和导出 Excel。
- Simulink / Simscape Electrical 负责打开或重新生成电路模型。
- 如果只有 MATLAB,没有 Simulink,仍可以生成主要数值结果和波形图,但
.slx模型可能打不开。 - 如果必须展示电路模型,建议安装 Simulink 和 Simscape Electrical。
3. 检查 MATLAB 工具箱
打开 MATLAB,在命令行输入:
matlab
ver
检查输出列表中是否有:
text
MATLAB
Simulink
Simscape
Simscape Electrical
也可以直接输入:
matlab
license('test','Simulink')
license('test','Simscape')
license('test','Power_System_Blocks')
判断方法:
text
返回 1:许可可用
返回 0:许可不可用
如果 Power_System_Blocks 返回 1,通常表示 Specialized Power Systems 可用,适合打开电力电子仿真模块。
4. 准备复现文件夹
把原电脑上的完整文件夹复制到新电脑,例如放到桌面:
text
D:\UsersData\Desktop\第4讲作业_单相桥式全控整流仿真
如果新电脑桌面路径不同,也可以放到任意位置,例如:
text
D:\Simulation\single_phase_converter
关键是文件夹里必须有:
text
single_phase_full_converter_homework.m
如果没有这个文件,就不能从零重新生成结果。
5. 在 MATLAB 中进入文件夹
方法一:图形界面操作。
- 打开 MATLAB。
- 在左侧或上方的 Current Folder 中进入复现文件夹。
- 确认能看到:
text
single_phase_full_converter_homework.m
方法二:命令行进入。
在 MATLAB 命令行输入:
matlab
cd('D:\UsersData\Desktop\第4讲作业_单相桥式全控整流仿真')
如果你放在别的路径,就把路径替换成自己的。
验证当前目录:
matlab
pwd
验证主脚本存在:
matlab
exist('single_phase_full_converter_homework.m','file')
正常应返回:
text
2
如果返回 0,说明当前目录不对,或者文件没有拷贝过来。
6. 一键运行
在 MATLAB 命令行输入:
matlab
single_phase_full_converter_homework
运行时会自动完成:
text
建立输出文件夹
计算触发角扫描工况
计算负载电感扫描工况
导出波形图片
导出 Excel 数据
保存 MAT 数据
生成答案文本
尝试生成 Simulink 参考模型
正常结束时,命令行会出现类似:
text
已完成:单相桥式全控整流电路仿真作业全部结果已输出。
结果文件夹:...
只要没有红色报错,通常就已经完成。
7. 检查输出是否完整
运行结束后,在 MATLAB 中输入:
matlab
dir
应能看到:
text
figures
data
model
第4讲作业_答案文本.txt
继续检查图片:
matlab
dir('figures\*.png')
正常应看到 5 张图片。
继续检查 Excel:
matlab
dir('data\*.xlsx')
正常应看到:
text
仿真结果汇总.xlsx
关键波形抽样数据.xlsx
继续检查 Simulink 模型:
matlab
dir('model\*.slx')
正常应看到:
text
single_phase_full_controlled_rectifier_ref.slx
8. 查看汇总结果
在 MATLAB 中读取触发角扫描结果:
matlab
T1 = readtable('data\仿真结果汇总.xlsx','Sheet','触发角扫描','VariableNamingRule','preserve');
disp(T1)
读取负载电感扫描结果:
matlab
T2 = readtable('data\仿真结果汇总.xlsx','Sheet','负载电感扫描','VariableNamingRule','preserve');
disp(T2)
典型数值应接近:
text
alpha = 0°:Ud ≈ 198.03 V,Id ≈ 99.01 A
alpha = 30°:Ud ≈ 184.71 V,Id ≈ 92.36 A
alpha = 60°:Ud ≈ 148.61 V,Id ≈ 74.31 A
alpha = 120°:Ud ≈ 49.42 V,Id ≈ 24.71 A
负载电感变化时,电流脉动应随电感增大而明显减小:
text
L = 0 H:电流脉动最大
L = 0.005 H:电流脉动减小
L = 0.01 H:电流进一步平滑
L = 0.05 H:电流最平滑
如果数值有极小差别,通常来自 MATLAB 版本、图片导出方式或数值舍入。
9. 打开 Simulink 模型
如果安装了 Simulink 和 Simscape Electrical,可以在 MATLAB 中输入:
matlab
open_system('model\single_phase_full_controlled_rectifier_ref.slx')
也可以在文件管理器里双击:
text
model\single_phase_full_controlled_rectifier_ref.slx
如果提示缺少模块或库,先检查工具箱:
matlab
ver
license('test','Simulink')
license('test','Power_System_Blocks')
如果 Power_System_Blocks 返回 0,说明电力系统模块不可用,需要安装或更换带有该许可的 MATLAB。
10. 修改仿真参数
如果要改变参数,打开:
text
single_phase_full_converter_homework.m
找到脚本前部的参数:
matlab
cfg.Vrms = 220;
cfg.f = 50;
cfg.Tstop = 0.50;
cfg.dt = 2e-5;
cfg.R = 2.0;
cfg.alphaList = [0 30 60 120];
cfg.inductanceList = [0 0.005 0.01 0.05];
cfg.indAlpha = 30;
含义:
text
cfg.Vrms 交流电源有效值
cfg.f 电源频率
cfg.Tstop 仿真总时长
cfg.dt 时间步长
cfg.R 负载电阻
cfg.alphaList 要扫描的触发角
cfg.inductanceList 要扫描的电感值
cfg.indAlpha 电感扫描时固定使用的触发角
例如想增加 90° 触发角:
matlab
cfg.alphaList = [0 30 60 90 120];
例如想增加 0.02 H 电感:
matlab
cfg.inductanceList = [0 0.005 0.01 0.02 0.05];
修改后重新运行:
matlab
single_phase_full_converter_homework
11. 图片是黑底怎么办
黑底通常来自 MATLAB 图形主题或默认坐标区样式,不影响数值。
如果希望改成白底黑字,在脚本开头:
matlab
clear; clc; close all;
后面加入:
matlab
set(groot,'defaultFigureColor','w');
set(groot,'defaultAxesColor','w');
set(groot,'defaultAxesXColor','k');
set(groot,'defaultAxesYColor','k');
set(groot,'defaultAxesZColor','k');
set(groot,'defaultTextColor','k');
set(groot,'defaultLegendTextColor','k');
然后重新运行:
matlab
single_phase_full_converter_homework
如果当前黑底图片已经清楚,可以不用改。
12. 常见问题与处理命令
12.1 MATLAB 提示找不到脚本
现象:
text
Unrecognized function or variable 'single_phase_full_converter_homework'
检查当前路径:
matlab
pwd
检查脚本是否存在:
matlab
exist('single_phase_full_converter_homework.m','file')
如果返回 0,进入正确目录:
matlab
cd('D:\UsersData\Desktop\第4讲作业_单相桥式全控整流仿真')
然后重新运行:
matlab
single_phase_full_converter_homework
12.2 Excel 写入失败
可能原因:
text
Excel 文件正在被打开
没有写入权限
路径中有异常字符
处理:
- 关闭已经打开的 Excel 文件。
- 重新运行脚本。
- 如果仍失败,把文件夹复制到简单路径,例如:
text
D:\sim_converter
然后在 MATLAB 中:
matlab
cd('D:\sim_converter')
single_phase_full_converter_homework
12.3 Simulink 模型生成失败
先确认主结果是否已经生成:
matlab
dir('figures\*.png')
dir('data\*.xlsx')
如果图片和 Excel 都有,说明数值仿真已经完成。
再检查工具箱:
matlab
license('test','Simulink')
license('test','Power_System_Blocks')
如果返回 0,需要安装或启用相关工具箱。
12.4 图片没有刷新
先关闭所有图窗:
matlab
close all
删除旧图片可以手动在文件管理器中删除 figures 里的 PNG。
然后重新运行:
matlab
single_phase_full_converter_homework
12.5 中文显示乱码
如果 MATLAB 命令行中文字乱码,不一定影响文件生成。
优先检查输出文件是否正常:
matlab
dir('figures\*.png')
dir('data\*.xlsx')
如果图片和 Excel 正常,乱码可以忽略。
如果图片中文字乱码,可以尝试在脚本画图部分使用系统已有中文字体,例如:
matlab
set(groot,'defaultAxesFontName','Microsoft YaHei');
set(groot,'defaultTextFontName','Microsoft YaHei');
放在脚本开头后重新运行。
13. 最小复现流程
如果只想最快跑通,按下面做:
- 把整个文件夹复制到新电脑。
- 打开 MATLAB。
- 进入文件夹:
matlab
cd('D:\UsersData\Desktop\第4讲作业_单相桥式全控整流仿真')
- 运行:
matlab
single_phase_full_converter_homework
- 检查:
matlab
dir('figures\*.png')
dir('data\*.xlsx')
dir('model\*.slx')
- 打开答案文字:
matlab
edit('第4讲作业_答案文本.txt')
- 打开 Simulink 模型:
matlab
open_system('model\single_phase_full_controlled_rectifier_ref.slx')
14. 建议上传材料
如果需要提交仿真电路和观测波形,建议整理这些文件:
text
model\single_phase_full_controlled_rectifier_ref.slx
model\Simulink参考模型截图.png
figures\01_单相桥式全控整流仿真电路示意.png
figures\02_改变触发角_整流输出电压电流.png
figures\03_触发角对平均输出的影响.png
figures\04_改变负载电感_输出电流平滑作用.png
figures\05_晶闸管与变压器二次侧波形.png
第4讲作业_答案文本.txt
如果平台允许上传压缩包,可以把这些内容放进一个文件夹后压缩。
不建议只上传 .m 文件,因为题目通常要求看到电路和波形结果。
15. 复现完成的判断标准
满足以下条件,就可以认为复现完成:
text
MATLAB 脚本能运行结束
figures 中有 5 张 PNG 图
data 中有 Excel 汇总表
model 中有 SLX 模型
答案文本存在
触发角增大时平均输出电压下降
电感增大时输出电流脉动减小
如果这几条都成立,说明仿真流程、数据输出和图像输出都已经跑通。