电力电子矢量输出总结
生活随笔
收集整理的这篇文章主要介绍了
电力电子矢量输出总结
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
单相SPWM
在单相电路中存在两个桥臂,也就是有两个电位点分别定义为a(在A轴上)和b(在B轴上),
输出的电压为输出电压矢量在实轴上的投影为; m为输出电压矢量
在单极性调制中
上半周期令
在下半周期
void SPwmGen(u16 m_Q15, u16 sita_Q15) {if(sita_Q15 > 0x7fff) // > 180{LeftBridgeSetLow();RightBridgeSetPluse(m_Q15,sin(0xffff - sita_Q15));}else{RightBridgeSetLow();LeftBridgeSetPluse(m_Q15,sin(sita_Q15));} }在双极性调制中
void SPwmGen(u16 m_Q15, u16 sita_Q15) {RightBridgeSetPluse(m_Q15,(sin(sita_Q15)+1)/2);LeftBridgeSetPluse(m_Q15,(sin(sita_Q15+0x7fff)+1)/2); }从以上分析可以看出在单极性与与双极性调制,会有细微的差别,双极性调制需要对调制信号进行平移和缩放,这在实际编程时需要注意。
三相两电平
以alfa 和 beta 为坐标系进行扇区划分
扇区主要划分为6个区间,扇区的划分依据为边界线,比如图上所标注的一条边界线的表达式为
另外的边界表达式和,通过这三条边界线则可以将6个扇区区分开来,同时也就成为了判断矢量扇区的三个条件
u8 DetectAre(SVGEN *v) {v->tmp1= v->Ubeta; //v->tmp2= v->Ubeta/2 + 866*v->Ualpha/1000; //0.5(beta + sqrt(3)*alfa)v->tmp3= v->tmp2 - v->tmp1; //0.5(beta - sqrt(3)*alfa)v->VecSector=3;v->VecSector=(v->tmp2> 0)?( v->VecSector-1):v->VecSector;v->VecSector=(v->tmp3> 0)?( v->VecSector-1):v->VecSector;v->VecSector=(v->tmp1< 0)?(7-v->VecSector) :v->VecSector;}矢量作用时间的计算
矢量作用时间的计算比较复杂,首先通过几何特性计算每个扇区的矢量合成时间
然后按照七段式或五段式进行矢量的合成。
Ti官方给出的计算方法比较简练高效,现将代码粘贴如下,这是七段式代码,可以稍加修改改为5段式代码
void SvTimeCal(SVGEN *v) {v->tmp1= v->Ubeta;v->tmp2= v->Ubeta/2 + 866*v->Ualpha/1000;v->tmp3= v->tmp2 - v->tmp1;v->VecSector=3;v->VecSector=(v->tmp2> 0)?( v->VecSector-1):v->VecSector;v->VecSector=(v->tmp3> 0)?( v->VecSector-1):v->VecSector;v->VecSector=(v->tmp1< 0)?(7-v->VecSector) :v->VecSector;if(v->VecSector==1 || v->VecSector==4){v->Ta= v->tmp2;v->Tb= v->tmp1-v->tmp3;v->Tc=-v->tmp2;}else if(v->VecSector==2 || v->VecSector==5){v->Ta= v->tmp3+v->tmp2;v->Tb= v->tmp1;v->Tc=-v->tmp1;}else{ v->Ta= v->tmp3;v->Tb=-v->tmp3;v->Tc=-(v->tmp1+v->tmp2);}//五段式处理 (把111脉冲干掉)x = (Ta+1)*period/2;y = (Tb+1)*period/2;z = (Tc+1)*period/2;m = min( x, y, z );x - m;y - m;z - m; }三相三电平
以alfa 和 beta 为坐标系进行扇区划分的9条线
矢量作用时间的计算
三相四线
总结
以上是生活随笔为你收集整理的电力电子矢量输出总结的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Typora 数学符号
- 下一篇: Hadoop MapReduce编程模型