永磁同步电机 (PMSM) 空间矢量脉宽调制 (SVPWM) 矢量控制仿真系统
项目介绍
本项目是一个在 MATLAB 环境下运行的永磁同步电机 (PMSM) 矢量控制 (FOC) 仿真模型。该模型通过纯脚本编程的方式,完整模拟了电机控制系统的硬件逻辑与物理特性。系统以高性能的空间矢量脉宽调制 (SVPWM) 技术为核心,通过模拟双闭环 PID 调节器对电机的转速和电流进行精确控制。该模型旨在为电力电子、电机驱动及自动化控制背景的研究人员和工程师提供一个可靠的验证基准,能够动态演示电机在不同负载工况下的运行状态。
功能特性
- 双闭环控制结构:实现了外部速度环和内部电流环的串级控制,确保了系统调速的响应速度与稳定性。
- id=0 控制策略:采用经典的 $i_d=0$ 控制方案,通过将 d 轴电流锁定为零,实现了定子电流完全用于产生转矩,优化了低速下的运行效率。
- 完整的 SVPWM 算法实现:包含参考电压矢量的空间扇区判断、相邻基础电压矢量作用时间计算以及七段式 PWM 切换点分配逻辑。
- 动态负载模拟:支持在仿真运行过程中动态改变负载转矩(Step Change),用于测试控制系统的鲁棒性。
- 高精度数学模型:内置基于微分方程的 PMSM 物理模型,采用欧拉法进行数值积分,精细模拟了电感、磁链及转动惯量对系统响应的影响。
- 多维度结果可视化:提供转速轨迹、三相电流波形、电磁转矩、d-q 轴电流跟踪、SVPWM 扇区变化及 PWM 触发脉冲的实时绘图分析。
系统要求
- 软件环境:MATLAB R2016b 或更高版本。
- 核心模块:仅需基础 MATLAB 功能,由于算法采用纯代码实现,不强制依赖 Simulink 各类 Toolbox,具有极佳的可移植性。
实现逻辑说明
仿真系统按照时间步进循环运行,每个步长($T_s = 10mu s$)内部执行以下核心逻辑:
- 参数初始化与指令设定
系统首先配置电机的定子电阻、d/q 轴电感、磁链、转动惯量及极对数。同时设定目标转速(如 150 rad/s)和直流母线电压。程序预设了在特定时刻(0.5s)发生负载扭矩跃变的逻辑,以模拟真实工况。
- 速度外环 PI 调节
计算设定转速与反馈转速的误差,通过比例-积分 (PI) 调节器计算出期望的 q 轴电流参考值 $i_{q_ref}$。该环节包含限幅保护,防止控制信号饱和。
- 坐标变换 (FOC 核心)
*
Clark 变换:将模拟检测到的三相定子电流转换为静止坐标系下的 $alpha-beta$ 电流。
*
Park 变换:结合转子位置电角度,将 $alpha-beta$ 电流投影到随转子旋转的 d-q 坐标系,获取受控的直流分量 $i_d$ 和 $i_q$。
- 电流内环 PI 调节
针对 d 轴和 q 轴分别进行 PID 控制。d 轴维持电流为零,q 轴跟踪速度环输出的指令。PID 的输出作为指令电压 $V_d$ 和 $V_q$ 进入后续环节。
- SVPWM 模块实现
*
反 Park 变换:将 $V_d, V_q$ 转回 $alpha-beta$ 静止坐标系下。
*
扇区判断:利用 $U_{alpha}, U_{beta}$ 的线性组合计算标志位,将 $360^{circ}$ 空间划分为 6 个扇区。
*
矢量计算:基于伏秒平衡原理,计算当前扇区内相邻两个基础电压矢量的作用时间 $t_1, t_2$,并进行过调制处理(当作用时间总和超过采样周期时按比例缩小)。
*
PWM 切换点分配:计算对称七段式 PWM 在 A、B、C 三相上的比较值($T_a, T_b, T_c$)。
- 电机物理引擎模拟
利用电机运动学方程,计算 $i_d$ 和 $i_q$ 的导数以及机械角速度的导数。通过数值积分更新电机的实际电流、转速和电角度位置,完成闭环反馈。
关键算法与细节分析
核心在于如何将 $V_{alpha}$ 和 $V_{beta}$ 映射到逆变器开关状态。代码通过计算 $u_1, u_2, u_3$ 的符号确定扇区编号(1-6),并通过 $X, Y, Z$ 三个中间变量快速求解各相导通时间,极大地提高了电压利用率。
在循环中通过对误差累加(Sum of Error)实现积分功能,并对输出结果实施硬限幅(如 Iq 限幅 $15A$),确保在启动阶段不至于产生过大的电流冲击。
模型不仅考虑了基本的转矩产生机制,还包含了粘滞阻尼系数(B)和电磁转矩公式 $T_e = 1.5 P_n (psi i_q + (L_d - L_q) i_d i_q)$。对于表贴式电机($L_d = L_q$),在该代码中磁阻转矩项自动平衡,体现了模型的普适性。
在每一步物理模型更新后,电角度 $theta_e$ 均通过
mod(theta_e, 2*pi) 进行重置,保证了三角函数计算的数值稳定性。
通过模拟高频三角波载波与计算出的切换点进行比较,生成逻辑上的高低电平,可以直观地在波形图中观察到功率器件的开关动作,这对于理解逆变器工作原理非常有帮助。