第3章 Simulink环境搭建:基础操作与电机模型构建

说实话,很多初学者一上来就急着写代码,结果调试起来一头雾水。我个人习惯是先在Simulink里把模型跑通了,再生成代码。这样能省下至少一半的调试时间。今天我们就来搭好FOC仿真的地基——Simulink环境。

3.1 Simulink基础操作——别小看这些基本功

我第一次用Simulink时,连信号线怎么连都找了半天。嗯,这些基础操作虽然简单,但直接影响后续建模效率。

3.1.1 界面布局

打开Simulink后,你会看到几个关键区域:

  • 库浏览器(Library Browser):所有模块都在这里,Ctrl+Shift+L快速打开
  • 模型画布(Model Canvas):拖拽模块、连线的地方
  • 仿真工具栏:运行、停止、步进仿真
我的小技巧: 把常用模块(比如Scope、Constant、Gain)拖到收藏夹里,能省不少时间。

3.1.2 信号连线与总线

连线时按住Ctrl键可以拐弯。我建议用Mux/Demux或者Bus Creator/Bus Selector来管理多路信号。特别是做FOC时,电流、电压、角度信号混在一起,用总线能让模型清晰很多。

// 连线小技巧
// 按住Shift拖动:复制模块
// 按住Ctrl拖动:快速连线到目标端口
// 双击空白处:快速搜索并添加模块

3.2 Simulink库介绍——你需要的模块都在这里

做电机控制仿真,其实用到的库就那么几个。我帮你梳理一下:

库名称 常用模块 用途
Simscape / Electrical PMSM模块、逆变器模块 电机本体与功率电路建模
Simulink / Math Operations Gain、Sum、Product 数学运算与增益调节
Simulink / Sinks Scope、To Workspace 波形观察与数据导出
Simulink / Sources Constant、Step、Sine Wave 输入信号生成
Simulink / Signal Routing Mux、Bus Creator、Goto/From 信号路由与组织
注意: 如果你用的是Simscape Electrical模块,需要额外安装Simscape Electrical工具箱。我曾经因为没装这个,折腾了半天找不到PMSM模块。

3.3 PMSM电机模型搭建——从物理方程到仿真模型

PMSM的数学模型,说白了就是电压方程和转矩方程。我们一步步来。

3.3.1 数学模型回顾

在dq坐标系下,PMSM的电压方程为:

Vd = Rs * Id + Ld * dId/dt - ωe * Lq * Iq
Vq = Rs * Iq + Lq * dIq/dt + ωe * (Ld * Id + ψf)

电磁转矩:

Te = 1.5 * p * (ψf * Iq + (Ld - Lq) * Id * Iq)

其中ψf是永磁体磁链,p是极对数。对于表贴式PMSM(SPMSM),Ld = Lq,转矩公式可以简化为Te = 1.5 * p * ψf * Iq。你看,这时候转矩只跟Iq有关,控制起来就简单多了。

3.3.2 使用Simscape Electrical模块搭建

最省事的方法是用现成的PMSM模块:

  1. 从Simscape / Electrical / Specialized Power Systems / Machines库中拖出Permanent Magnet Synchronous Machine
  2. 双击模块,设置参数:定子电阻Rs、d/q轴电感Ld/Lq、永磁体磁链ψf、极对数p
  3. 连接电气端口(A、B、C三相)和机械端口(Tm负载转矩、m测量信号)
关键参数设置示例:
Rs = 0.958 Ω
Ld = 5.25 mH, Lq = 12.0 mH(内置式PMSM)
ψf = 0.1827 Wb
p = 4(极对数)

3.3.3 从零搭建PMSM模型(理解内部原理)

如果你想深入理解电机内部机理,可以自己用数学模块搭建。我当年做毕业设计时就这么干过,虽然麻烦,但对理解FOC控制逻辑帮助很大。

// 搭建步骤概要
// 1. 用Integrator模块实现 dId/dt 和 dIq/dt
// 2. 用Gain和Product模块实现电压方程
// 3. 用Fcn模块实现转矩方程
// 4. 用Clarke/Park变换模块实现坐标变换

不过说实话,实际工程中直接用现成模块更高效。自己搭的模型容易出错,而且仿真速度慢。

3.4 逆变器模型搭建——从直流到交流的桥梁

逆变器的作用是把直流母线电压转换成三相交流电。在仿真中,我们通常用理想开关模型或者平均模型。

3.4.1 三相两电平逆变器

最常用的是三相两电平逆变器,由6个IGBT/二极管组成。在Simulink中:

  • 从Simscape / Electrical / Specialized Power Systems / Power Electronics库中拖出Universal Bridge
  • 设置桥臂数为3,功率开关器件为IGBT/Diode
  • 输入为PWM脉冲信号(6路),输出为三相电压
避坑指南: 我曾经把PWM信号的逻辑搞反了——高电平导通还是低电平导通?一定要跟你的驱动电路匹配。仿真中默认是1导通、0关断。

3.4.2 逆变器输出电压计算

逆变器输出的相电压与直流母线电压Vdc和开关状态有关:

Va = Vdc/3 * (2*Sa - Sb - Sc)
Vb = Vdc/3 * (2*Sb - Sa - Sc)
Vc = Vdc/3 * (2*Sc - Sa - Sb)

其中Sa、Sb、Sc为开关状态(1表示上桥臂导通,0表示下桥臂导通)。

3.5 本章知识体系总览

下面这张图帮你理清本章的核心逻辑:

第3章 Simulink环境搭建知识体系 Simulink基础操作 Simulink库介绍 电机与逆变器建模 界面布局与快捷键 信号连线与总线管理 仿真参数配置 Simscape Electrical库 数学运算与信号路由库 Sinks与Sources库 PMSM数学模型搭建 Simscape PMSM模块使用 三相逆变器模型搭建 目标:搭建完整的FOC仿真平台 PMSM模型 + 逆变器模型 + 控制算法 = 可运行的FOC系统

3.6 本章小结

到这,我们已经把Simulink环境的基础操作、常用库、PMSM电机模型和逆变器模型都过了一遍。说白了,就是搭好了FOC仿真的「硬件平台」。下一章我们会在这个平台上跑FOC控制算法,到时候你就能看到电机转起来了。

最后提醒一句:模型搭建时多保存几个版本。我习惯每完成一个功能模块就Ctrl+S一次,再另存为带日期的版本。这样万一改错了,还能回退。

课后小练习:
1. 在Simulink中搭建一个简单的PMSM模型,设置参数为Rs=1Ω, Ld=Lq=5mH, ψf=0.1Wb, p=2
2. 给电机施加一个阶跃负载转矩,观察转速响应曲线
3. 尝试修改逆变器开关频率,看看对电流波形有什么影响

公众号:蓝海资料掘金营,微信deep3321