电力电子矢量输出总结
生活随笔
收集整理的這篇文章主要介紹了
电力电子矢量输出总结
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
單相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 数学符号
- 下一篇: 【Python】数据分析体系