矢量控制——SVPWM

空间矢量脉宽调制——SVPWM,主要思想是把三相交流电机等效为直流电机,然后跟踪圆形磁场。

SVPWM主要由:波形发生器,Clark变换,扇区判断,Park变换,桥臂作用时间,比较器,插入死区等模块组成。

1、波形发生器。

使用DDS在FPGA内部产生正弦波、三角波。

如果是三相星形不带零线,则可以只产生两路正弦波(相位相差120度),相位差可以在DDS的地址加个常数来实现。

三角波,则是当载波来使用,所以频率应该比正弦波的要高。

2、Clark变换。

把三相静止坐标系转换成两相静止坐标系。原理较为简单,只是一个矩阵变换就可以了。仿真结果如下图所示。

 3、扇区判断。

因为要跟踪的磁场是圆形的,而SVPWM一共6个开关在同一时刻只能输出一个方向的磁场。那么我们可以利用内接(外切)多边形的原理,把圆形分割为若干块,每一块都对应着一种开关状态,不停地切换开关状态(也是切换方向),输出的波形就可以逼近圆形了。

根据两相静止坐标电压转换为X、Y、Z具体公式参考相关资料,再根据X、Y、Z的符号来确定当前的开关处于哪个扇区。

根据Clark变换过来的直流电,可以计算出扇区作用时间。

4、Park变换。

把静止的直角坐标系转换成旋转的直流坐标系。原理也很简单,只是个矩阵变换。采样电压的话,可以不用Park变换。Park变换主要用在dq轴的电机模型。

5、桥臂作用时间。

具体的计算公式,可以参考相关书籍。

6、比较器。

比较三角波形和桥臂作用时间,再根据当前的扇区,可以得到开关状态。

7、插入死区。

因为实际的开关,是有响应时间的,开关速率太快,可能使得上、下开关同时导通,而发生短路,所以必须插入死区。

8、SVPWM仿真波形。

 

 9、其它问题。

a、如何得到6路信号?

利用Clark变换、扇区判断、桥臂作用时间,所计算出来的值为Ta、Tb、Tc,再与三角载波比较后,可以得到sw_a、sw_b、sw_c,三路信号。

sw_a、sw_b、sw_c取反后可以得到n_sw_a、n_sw_b、n_sw_c,再插入死区,可以得到最终的SVPWM的6路信号。

b、利用DDS产生的三相波形,如何对应Ta、Tb、Tc?

一个时刻下,DDS产生三相正弦波,那么可以得到三个值,通过Clark变换、扇区判断、桥臂作用时间等计算后,得到Ta、Tb、Tc,也是三个值,这是一一对应的。

Ta、Tb、Tc与三角载波相比较,这里需要与三角载波的一个周期相比较。如果三角载波为256个点,那么比较出来的sw_a、sw_b、sw_c也是对应了256个点。

然后再通过DDS产生下一时刻的三相正弦波,为新的三个值,再循环。

c、要考虑开关管的速度。

看SVPWM最小的脉宽是多少,如果开关管的速度跟不上,那么要将这些窄脉冲滤掉。

d、仿真。

建议使用MATLAB的m语言仿真完成后,再写FPGA的代码,可以一步一步对照其计算结果。

  • 16
    点赞
  • 193
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值