第3章:Simulink环境搭建
说实话,很多初学者一打开Simulink就懵了。满屏的模块库,不知道从哪下手。我当年也是这样,对着空白模型发呆了好一阵子。这一章,我就带你把这个环境摸透。
3.1 Simulink基础操作
先说说怎么打开Simulink。在MATLAB命令窗口输入simulink,或者直接点工具栏上的Simulink图标。我个人习惯用快捷键,但新手还是先点图标吧。
新建模型有两种方式:
- 点左上角的「新建」→「Simulink Model」
- 或者直接按
Ctrl+N
模型建好后,你会看到一个空白画布。嗯,这就是你的工作台了。从左侧的库浏览器拖拽模块到画布上,用鼠标连线。双击模块可以设置参数。
保存模型时,我建议文件名用英文,不要用中文。为什么?因为有些版本的MATLAB对中文路径支持不好,容易报错。我曾经因为这个折腾了一下午。
3.2 电机控制常用库介绍
做电机控制仿真,你不需要把所有库都记住。常用的就那么几个。我列个表给你看:
| 库名称 | 常用模块 | 用途 |
|---|---|---|
| Simscape / Electrical | PMSM、逆变器、DC电源 | 电机本体和功率电路建模 |
| Simulink / Continuous | Integrator、Derivative、Transfer Fcn | 连续系统传递函数、积分微分 |
| Simulink / Math Operations | Gain、Sum、Product、Trigonometric | 数学运算、坐标变换 |
| Simulink / Sinks | Scope、To Workspace、Display | 信号观测和数据导出 |
| Simulink / Sources | Step、Sine Wave、Constant | 输入信号生成 |
| Motor Control Blockset | FOC、SVPWM、Current Controller | 电机控制专用算法模块 |
这里我想重点说一下Motor Control Blockset。这个工具箱是专门为电机控制设计的,里面封装了很多现成的算法模块。比如FOC(磁场定向控制)模块,你拖出来就能用,参数设置也很直观。
3.3 搭建第一个电机仿真模型
好了,理论说完了,咱们动手搭一个最简单的模型。目标是:让一个PMSM电机空载运行,看看它的转速和电流响应。
你需要拖拽以下模块:
- PMSM模块(Simscape / Electrical / Specialized Power Systems / Electric Drives / Permanent Magnet Synchronous Motor)
- 逆变器模块(Universal Bridge,选3-arm,IGBT)
- DC电源(DC Voltage Source,设300V)
- PWM发生器(PWM Generator,载波频率设10kHz)
- 阶跃信号(Step,作为转速给定)
- PI控制器(用Gain和Integrator自己搭,或者用PID Controller模块)
- 示波器(Scope,看波形)
连线方式是这样的:
DC电源 → 逆变器直流侧
逆变器交流侧 → PMSM三相绕组
PWM发生器输出 → 逆变器门极信号
转速给定 → PI控制器 → PWM发生器调制波输入
PMSM转速输出 → 反馈到PI控制器输入端
嗯,这里要注意一点。PMSM模块的输出信号里,转速是机械角速度(rad/s),而PI控制器一般用转速误差作为输入。所以你需要把给定转速和反馈转速做差,再送给PI。
ode23t或ode15s求解器,最大步长设1e-5秒。否则仿真结果可能不收敛,甚至报错。
参数设置方面,我给出一个参考值:
- PMSM:极对数4,定子电阻0.5Ω,d/q轴电感8.5mH,永磁磁链0.175Wb
- PI控制器:Kp=10,Ki=100(这个需要调试,不同电机不一样)
- 仿真时间:0.5秒
设置好之后,点运行。你会看到转速从0开始上升,最后稳定在给定值附近。电流波形会有个冲击,然后趋于平稳。这就是最基本的电机开环控制仿真。
模型跑通之后,你可以试着改改PI参数,看看响应速度怎么变。或者加个负载转矩,看看抗干扰能力。这些都是后面章节要深入的内容。
好了,第一个模型搭完了。虽然简单,但麻雀虽小五脏俱全。后面我们做参数辨识和标定,都是在这个基础上加东西。所以这一章的基础一定要打牢。
下一章,我们会讲电机参数辨识的基本原理。到时候我会用这个模型来做演示,你就能看到理论是怎么落到仿真里的。