一、Simulink 官方的 PMSM 电机模型

1.1  Surace Mount PMSM 电机模型

下图为 Simulink 自带的 Surace Mount PMSM 电机模型:

1.2 模型配置

1.2.1 运行配置

配置项 配置内容 解释
Mechanical input configuration Torque 给负载扭矩模型会算出转速
Simulation type Discrete 离散仿真 (数字控制必须)
Sample Time 1e-5 和模型定步长采用设置时间相同

1.2.2 电机核心参数

配置项 配置内容 解释
Number of pole pairs 4 极对数
Stator resistance 1.02 定子电阻 (Ω)
Stator d-axis inductance 0.00059 d 轴电感 (H)
Permanent flux linkage 0.0083 永磁磁链 (Wb)

1.2.3 机械参数

配置项 配置内容 解释
Physical inertia 1/99999.999999999985 (1e-5 kg·m²) 转动惯量:物体抗加速能力,惯量越大电机越难加速 / 减速
viscous damping 0.001 粘性阻尼:类似速度越快,阻力越大
staticfriction (mechanical) 0.001 (Nm) 静摩擦力 (静摩擦转矩):小扭矩推不动,必须超过门槛才动

二、PMSM 电机模型结构概览

2.1 PMSM 电机模型参数

下图是我们预设的电机模型参数:

说明 配置
B (粘性阻尼系数) 0.001 (N·m·s)
dt (仿真步长 / 采样时间) 1E-5 
fc (摩擦库仑项) 0.001 (N·m)
flux (永磁体磁链) 0.0083 (ψf)
j_inv (惯量的倒数) 99999.999999999985 (J)
ld (d 轴电感) 0.00059 (H)
id_inv (d 轴电感倒数) 1694.9152542372881 (H)
lq (q 轴电感) 0.00059 (H)
lq_inv (q 轴电感倒数) 1694.9152542372881 (H)
pn (极对数) 4
r (定子电阻) 1.02 (Ω)

注:倒数是为了给乘法加速

2.2 PMSM 电机模型结构

下图是我们 PMSM 电机建模的结构:

2.2.1 模型输入

uabc_tar:

  • 简述:三相电压指令 (V)
  • 来源:PWM 等效电压或控制器输出

tl:

  • 简述:负载转矩 (TN·m)
  • 作用:外界阻力,机械负载、摩擦、风阻

2.2.2 模型输出

iabc_now:

  • 简述:当前电机三相电流输出
  • 用于:控制反馈、示波观察

wm_now:

  • 简述:机械转速
  • 单位:rad/s

real_elec_angle_now:

  • 简述:电角度
  • 范围:0 ~ 2π

real_pos_now:

  • 简述:机械角度
  • 范围:0 ~ 2π

2.2.3 核心模块

ParkTransform:

  • 概述:把三相电压转换到 qd 轴坐标系
  • 输入:uabc_tar (三项电压)
  • 输出:ud、uq

sm_pmsm_dq:

  • 概述:核心电机模型,内部做了三件事:电流计算、电磁转矩计算、机械运动方程
  • 输入:ud、uq、tl (负载转矩)
  • 输出:id_now、iq_now、wm  (机械转速)

dis_int_wm:

  • 概述:角速度积分器,对机械转速积分后得到机械角度
  • 输入:wn (机械转速)
  • 输出:real_pos_now (机械角度)

mod2pi_fun:

  • 概述:把角度限制在 0~2 π

InverseParkTransform:

  • 概述:dq 轴转化为 abc
  • 输入:id、iq、θe
  • 输出:ia、ib、ic

2.3 sm_pmsm_dq 模型解析

2.3.1 全局概览

sm_pmsm_dq 中内部做了三件事:电流计算、电磁转矩计算、机械运动方程。

  • 输入:ud、uq、tl (负载转矩)
  • 输出:id_now、iq_now、wm (机械转速)

其实现过程由下列四个公式实现:

d 轴电压方程:

  • u_d = R i_d + L_d \frac{d i_d}{d t} - p_n \omega_m L_q i_q

d 轴电压方程:

  • u_q = R i_q + L_q \frac{d i_q}{d t} + p_n \omega_m (L_d i_d + \psi_f)

电磁转矩公式 (电机所产生的力矩):

  • T_{e}=\frac{3}{2}p_{n}i_{q}(i_{d}(L_{d}-L_{q})+\psi _{f})

机械运动方程 (电机所消耗的力矩):

  • T_e-T_L=J\frac{d\omega _m}{dt}+B\omega +Fc

2.3.1 d 轴电压方程与仿真

u_d = R i_d + L_d \frac{d i_d}{d t} - p_n \omega_m L_q i_q

  • U_d = d 轴电压 (V)
  • R = 定子电阻 (Ω)
  • L_{dq} = dq 轴电感 (H)
  • i_{dq} = dq 轴电流 (A)
  • \frac{d i_d}{d t} = 电流变化率 (A/s)
  • p_n = 极对数
  • \omega_m = 机械角速度 (rad/s)
  • Ri_{d} = 电阻压降
  • L_d \frac{d i_d}{d t} = 电感产生的电压
  • p_n \omega_m L_q i_q = 交叉耦合项

总结:d 轴电压 = 电阻压降 + d 轴电感动态 + 旋转耦合干扰

我们将上述公式变形可以得到:

\frac{d i_d}{d t} = \frac{1}{L_d} \left( u_d - R i_d + p_n \omega_m L_q i_q \right)

在 Simulink 中搭建仿真:

2.3.2 d 轴电压方程与仿真

u_q = R i_q + L_q \frac{d i_q}{d t} + p_n \omega_m (L_d i_d + \psi_f)

  • U_q = q 轴电压 (V)
  • R = 定子电阻 (Ω)
  • L_{dq} = dq 轴电感 (H)
  • i_{dq} = dq 轴电流 (A)
  • \frac{d i_q}{d t} = 电流变化率 (A/s)
  • p_n = 极对数
  • \omega_m = 机械角速度 (rad/s)
  • \psi_f = 永磁体磁链 (Wb)
  • Ri_{d} = 电阻压降
  • L_q \frac{d i_q}{d t} = 电感产生的电压
  • p_n \omega_m (L_d i_d + \psi_f) = 反电动势 + 交叉耦合项

总结:q 轴电压 = 电阻压降 + q 轴电感动态 + 反电动势 + dq 耦合

我们将上述公式变形可以得到:

\frac{d i_q}{d t} = \frac{1}{L_q} \left( u_q - R i_q - p_n \omega_m (L_d i_d + \psi_f) \right)

在 Simulink 中搭建仿真:

2.3.3 电磁转矩公式仿真

T_{e}=\frac{3}{2}p_{n}i_{q}(i_{d}(L_{d}-L_{q})+\psi _{f})

  • T_e = 电磁转矩 (N·m)
  • p_n = 极对数
  • i_{dq} = dq 轴电流 (A)
  • L_{dq} = dq 轴电感 (H)
  • \psi_f = 永磁体磁链 (Wb)
  • i_{d}(L_{d}-L_{q}) = 磁阻转矩项 (电机 dq 轴磁路不对称产生额外转矩)

总结:产生的转矩本质 = 磁场 (\psi_f) × 电流 (i_q​) + 磁阻效应

在 Simulink 中搭建仿真:

2.3.4 机械运动方程

T_e-T_L=J\frac{d\omega _m}{dt}+B\omega +Fc

  • T_e = 电磁转矩 (N·m)
  • T_L = 负载转矩 (N·m)
  • J = 转动惯量
  • \frac{d\omega _m}{dt}  = 角加速度 (rad/s²)
  • B = 粘性摩擦系数
  • \omega _m = 机械角速度 (rad/s)
  • Fc = 库仑摩擦 (静摩擦) (N·m)

总结:电机消耗的转矩 = 加速惯性 + 摩擦 + 负载

我们将上述公式变形可以得到:

\frac{d\omega_m}{dt} = \frac{1}{J} \left( T_e - T_L - B \omega_m - F_c \cdot \mathrm{sign}(\omega_m) \right)

在这里,我们将输出力矩 Te 和 负载的 tl 输入,得到 wm 机械转速。

在 Simulink 中搭建仿真:

2.4 dis_int_wm 模块解析

dis_int_wm 模块是角速度积分器,对机械转速积分后得到机械角度。

  • 输入:wn (机械转速)
  • 输出:real_pos_now (机械角度)

2.5 总结

至此,我们便总结完整个 PMSM 电机的仿真模型了。

2.5.1 模型输入

uabc_tar:

  • 简述:三相电压指令 (或 PWM 等效电压)
  • 类型:abc 三相
  • 来源:PWM 等效电压或控制器输出

tl:

  • 简述:负载转矩 (Torque Load)
  • 单位:N·m
  • 作用:外界阻力,机械负载、摩擦、风阻

2.5.2 模型输出

iabc_now:

  • 简述:当前电机三相电流输出
  • 用于:控制反馈、示波观察

wm_now:

  • 简述:机械转速
  • 单位:rad/s

real_elec_angle_now:

  • 简述:电角度
  • 范围:0 ~ 2π

real_pos_now:

  • 简述:机械角度
  • 范围:0 ~ 2π
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐