矩阵变换器(MC)双空间矢量调制(DSVM)仿真系统
项目介绍
本项目实现了一个完整的三相到三相矩阵变换器(Matrix Converter, MC)的动态数字仿真系统。该系统利用间接空间矢量调制(DSVM)技术,实现了交-交直接变换,无需中间直流环节。仿真涵盖了从输入三相电压源、输入LCL滤波器、由九个双向开关构成的变换器拓扑,到三相阻感负载的完整物理过程。通过精细的时间步进算法,模拟了控制逻辑在微秒级步长下的切换行为,能够准确反映矩阵变换器在稳态和瞬态下的运行特性。
功能特性
- 双空间矢量调制算法实现:集成了整流级和逆变级的空间矢量组合逻辑,自动计算每一开关周期内的占空比分配。
- 动态建模与仿真:基于一阶欧拉法实时求解负载电流、滤波电感电流及滤波电容电压的微分方程。
- 输入侧性能优化:包含输入滤波器逻辑,旨在降低开关频率引起的高频谐波,并支持输入功率因数监测。
- 实时开关状态映射:逻辑模块根据当前时刻在开关周期内的位置,动态输出3x3开关矩阵状态,模拟真实的硬件触发时序。
- 综合数据分析:自动生成输出电压/电流波形、输入侧电参数波形,并执行快速傅里叶变换(FFT)进行谐波频谱分析,同时计算系统的输入功率因数。
使用方法
- 运行环境准备:确保计算机已安装MATLAB R2016b或更高版本。
- 参数配置:在主程序起始位置,用户可以根据需求修改开关频率(fs)、调制比(q)、目标输出频率(fout)以及负载参数(Rload, Lload)。
- 执行仿真:直接运行主脚本函数。系统将按照设定的仿真总时长(T_sim)和步长(dt)执行闭环模拟。
- 结果查看:仿真结束后,程序会自动弹出图形窗口,展示A相输出波形、输入侧滤波波形以及输入电流的频谱分布。
- 性能评估:在MATLAB命令行窗口中,可以查看输出频率的实际效果及估算的输入功率因数。
系统要求
- 软件环境:MATLAB (无需额外工具箱,基于基本矩阵运算和绘图功能)。
- 硬件建议:为了保证仿真效率(尤其是在dt为1微秒的情况下),建议使用具备8GB以上内存和多核处理器的PC。
实现逻辑详细说明
仿真的核心逻辑在循环体中依序执行,严格遵循硬件系统的物理时序:
- 电源与相位计算:
程序首先生成理想的三相输入电压。随后,逻辑模块模拟控制采样,在每个开关周期的开始时刻,利用Clarke变换原理计算滤波电容电压的矢量角度。通过atan2函数确定输入电压所属的扇区(1-6扇区)及相对相位角。同时,根据设定的输出频率计算参考输出电压的相位和扇区。
- DSVM占空比合成:
根据整流侧和逆变侧的扇区信息,计算四组有效矢量的占空比。
整流侧占空比由输入相位角的正弦值决定(dr, dl)。
逆变侧占空比由输出相位角的正弦值决定(dm, dn)。
最终合成四个阶段的组合占空比(dr乘以dm等),并计算余下的零矢量时间(d0)。
- 开关矩阵状态生成:
内部映射函数将上述占空比分配到当前开关周期的五个状态段中。根据输入的扇区映射表和逆变输出映射表,确定九个开关管(SaA到ScC)的通断。在任何特定时刻,3x3开关矩阵中每一行只有一个开关导通(确保输出端不短路),从而实现从三相输入到三相输出的直接映射。
- 物理拓扑动力学求解:
输出侧逻辑:通过矩阵运算 Vout = S * Vin 得到瞬时输出电压。结合欧拉法求解负载电感电流方程。
输入侧逻辑:根据电流守恒 Iin = S' * Iout 得到变换器侧的输入电流。随后,结合输入滤波器的微分方程,迭代计算电感电流和电容电压,为下一时刻的控制逻辑提供反馈。
关键算法与细节分析
- 间接等效调制:算法将矩阵变换器等效为一个虚构的“整流-中间直流-逆变”结构。整流级负责控制输入电流相位,逆变级负责控制输出电压的幅值和频率。
- 扇区映射逻辑:程序采用了硬编码的映射表(rect_map和inv_map)来快速确定不同扇区下对应的开关动作。这种方法避免了复杂的条件判断,提高了控制算法的执行效率。
- 开关时序对齐:在generate_switches函数中,通过当前相对时间t_rel与累加占空比断点的比较,实现了在一个开关周期内五个矢量的顺序切换。
- 能量平衡与滤波:模型准确捕捉了输入滤波器与变换器之间的能量交换。通过设置较小的仿真步长(1e-6s),能够观测到开关切换产生的电压毛刺和滤波器的平滑效果。
- 性能估算:程序通过捕获输入电压与电流的峰值坐标偏移量,计算相位差 delta_phi,从而得出输入功率因数,反映了DSVM在无功补偿方面的潜力。