异步电机矢量控制20讲:SVPWM的simulink仿真(总第38讲)
扇区判断
注意,这个N是二进制转来的十进制数。
波形对应出来的扇区是 5-6-1-2-3-4
如果改变三相电压输入的相位,就会改变扇区的顺序
A pi2/3
B 0
C -pi2/3
这样就能让扇区从I开始了【强迫症狂喜】
计算周期T1 T2
概览图
别人一般把XYZ当输出,把这部分当做一个模块。但是我看这个XYZ的输出没啥意义,也没有别的用途,就只是单纯的计算T1 T2的中间变量而已,所以我就没区分开。
Ts[Tpwm]是一个周期的时间,这个周期内会合成一个矢量
计算时机Ta Tb Tc
T1 T2只是时间段
而Ta Tb Tc是在整个Ts周期内的时间点
马鞍波的纵轴怎么变成负值了。。。【我直流电压给低了,翻倍之后就是正值了】
扇区各自的时机分配
当时算Ta Tb Tc时是以I扇区为例来计算的
不过其余的扇区也只是改换相的位置,而不改变大小
再次提醒,下图的N是扇区的二进制转十进制编号。N==3对应I扇区
马鞍波显示的是开关切换的时间,所以值越低,这个开关为1的时间越早,这个相的电压越大,所以马鞍波的谷值对应三相电压的峰值【下图的马鞍波是数值乘上了一千万倍后和输入的电压进行对比。】
整合为一个信号
载波为三角波
强制类型转换成double
这时候输出的信号是用来控制6个开关的方波信号
Vector Concatenate 串联相同数据类型的输入信号以生成连续输出信号
最终效果
负载的相电压,线电压,端电压的曲线
MATLAB
电机绕组
【哦,忘记设置成RL了,不过效果没影响诶】
三相逆变电路
MATLAB的逆变器的教程
搜索 univeral 选择
模块设置为IGBT
这个模块的输入信号g是一个六维向量,控制6个开关,1是闭合,2是打开
使用这个模块后必须要加入powergui模块
强制类型转换
搜索 Data Type Conversion
电压表
搜索measure
模块封装mask
官网 封装编辑器概述
Matlab之Simulink子系统及模块封装
Simulink 环境基础知识(十二)–Mask Editor 概述
查找表 lookup table
Simulink:Look up Table的一种赋值方法
Simulink 2-D Lookup Table 数据设置