SVPWM算法软件的编程实现
发布时间
阅读量:
阅读量
本文采用软件编程方法实现了SVPWM算法,并将各扇区的有效矢量T1、T2以及无效矢量T0+T7的时间通过DAC转换为马鞍波信号;从而深入理解了该算法在GD32E508芯片上的具体实现过程。
1.实现步骤
SVPWM波基波频率设定f为1Hz,旋转实时角度为2 3.14 1*t 时间t的步长为0.001,即每隔1ms更新一次旋转角度,1s为一个周期,一个周期1000个采样点
1、移植arm自带DSP库,使能FPU运算;
2、通过给定旋转坐标系直流电压Vd、Vq通过park逆变换得到正交的两相交流正弦电压Ua、Ub;
3、判断Ua、Ub大小判断扇区1/2/3/4/5/6,计算各扇区有效矢量T1,T2 ,无效矢量T0,T7作用时间。
4、各扇区有效矢量T1,T2,无效矢量T0,T7(实则为三相逆变电路三对mos管各下管导通时间,T1+T2+T0+T7的和为SVPWM三角波载波的周期T)。
5、将T1,T2,T0+T7通过DAC转换输出SVPWM马鞍波形(基波和三次谐波的叠加)。
2.软件C代码
2.1 .h文件
#ifndef MAIN_H
#define MAIN_H
#include "gd32e50x.h"
#include "arm_math.h"
/*--------转子
全部评论 (0)
还没有任何评论哟~
