就是逆變器三個相開關函數為 時馬達三個相繞組上相電壓合成的空間電壓向量。請注意, 是空間向量。 是代表幅值的標量。 可以用固定在電機定子上的一個直角座標系 座標系來表示(圖5),此座標系 軸指向電機 相繞組(圖8)。
圖5 的計算方式如下:
代表圖5上從 軸開始逆時針60°( )的位置。
它們可以被分成兩組:一組零向量 和一組非零向量 。 6個非零向量具有相同的模長, 。它們在空間中間隔60°。將這六個非零向量的頂點連接起來可以得到一個正六邊形。兩個相鄰的向量再加它們頂點的連線可以組成一個正三角形。一共有6個這樣的正三角形。我們也可以做一個正六邊形的外接圓(未在圖5中畫出),兩個相鄰向量和他們頂點之間的圓弧可以組成一個扇區,這個外接圓可以被分割成6個扇區,可以用羅馬數字I-VI來表示。
在上面計算6個非零電壓向量的公式中的每個公式都另外乘了一個 ,下面我們將會講到如果給馬達三個定子施加特定的三相交流電壓,那麼合成的電壓向量的振幅就是每個相所加相電壓的1.5倍。我們用SVPWM重現這個合成電壓向量,但是希望重現的合成電壓向量的振幅和所加相電壓的振幅完全一樣,所以在這裡乘以 。當然有的人會在Clark裡面乘這個係數,有的人興許會在其他的地方做這個處理。
講到這裡我希望插入一段講解馬達運作原理的內容,對馬達合成電壓向量原理熟悉的讀者可以直接跳過下面兩條虛線之間的內容。
————————————————– ————————————————-
圖6 我們複習一下安培定理。右手握住通電的螺線圈,四指和電流方向一致。則此螺線圈產生的磁場方向和拇指方向一致。 S和N為此磁場的兩個磁極。
圖7是一個三相馬達的定子(沒有轉子)。該定子有 , , 三個相繞組。所有的繞組的一端連接在一起,另外一端用來裝入電壓。如果在 相加正電壓,則 相產生的磁場的方向根據安培定則以紅色箭頭表示,同理 加負電壓所產生的磁場的方向以藍色箭頭表示。這兩個相繞組產生的磁場的合成磁場的方向由綠色箭頭表示,而且該合成磁場可以看做一個磁鐵(在右側畫出)。假設馬達的轉子也是一塊只有一個N極和一個S極的磁鐵,則馬達轉子會趨向於和這個磁場對齊。在定子三相的兩相施加電壓,我們一共有三種選擇方式 , 和 。再考慮到每相電壓有兩種加載情況(正或負),所以我們一共有6種電壓施加的方式,也就是說我們能產生六個不同的磁場方向。假如這六個不同的磁場方向是按順序產生的,那麼磁體轉子也會按該順序和每個磁場方向對齊,該轉子也就轉起來了。請注意,產生磁場的方向和相電壓的方向是一致的。比如我們給 相加正電壓後磁場方向(紅色箭頭)沿著 相圓柱繞組的軸線指向圓柱繞組靠近馬達轉軸的那一側(圖中磁場方向箭頭起始的黑點),電壓也是這個方向。
圖7 以上討論的是在三個相繞組中選取兩個加載直流電壓,這種情況下我們只能產生6個不同的磁場方向。但我們希望產生任意方向的磁場。
我們可以在馬達的三個相繞組 , , 分別上加圖8所示的正弦交流電壓 , , 。 是他們的幅值, 是他們的角頻率。圖中出現虛線雙箭頭是因為正弦電壓有正有負。比如若 為正值時,它和 相繞組方向相同,否則相反。這三個電壓加在了三個在空間中兩兩相差120°空間角度的繞組 上。而這三個電壓又互差120°,這個120°可跟三相繞組在空間中差的120°是兩回事,它是指在時間相位上的120°。
圖8 是 , , 的合成電壓向量。我們看看如何得到該合成電壓向量。
相方向代表0°。 表示從 相方向開始逆時針旋轉120°的方向。如果 前面有負號則代表順時針旋轉。 其實是實數軸和虛數軸組成的直角座標系中模長為1的向量( 可以表示成 ,該式實部和虛部取平方和然後開平方是1),那麼它可以代表方向(方向是模長為1的向量)。那麼 代表 沿著 方向分佈。請注意,圖8是放在實數軸和虛數軸組成的直角座標系下討論(實數軸和虛數軸分別對應 軸和 軸)。
我們可以看到合成的電壓向量 是 ,它的大小是恆定的,而且是所施加三相正弦電壓振幅的1.5倍(這裡用到振幅是因為三相電壓是正弦變化的)。它在空間中以一定的角速度旋轉,該角速度和所施加的三相正弦電壓的角頻率一致。圖9綠色,紅色和藍色箭頭表示所施加的三相正弦電壓,黑色箭頭表示他們的合成電壓向量。三個相繞組 的位置已經在圖上標示出來。
動圖 圖9 剛才我們討論過了,合成電壓向量的方向和合成磁場的方向一致。如果三個相繞組結構一樣,那麼產生的合成磁場的大小也是每個線圈產生磁場振幅的1.5倍。轉子會跟著圖9合成電壓向量所產生的旋轉磁場而轉動。
————————————————– ————————————————-
給SVPWM演算法輸入圖9那個黑色合成電壓向量 (或輸入可合成此黑色電壓向量的等效電壓組合 , , ),透過控製圖1中三相逆變器的6個開關的狀態它會合成等效的,PWM形式的電機相電壓。也就是以PWM形式重現 ,重現的這個電壓輸出可以叫做 (它可以是一個合成的電壓向量,也可以是等效的電壓組合)。圖9的黑色合成電壓向量可以叫做參考電壓向量。這個 頂點的軌跡可以放到圖5裡面(圖10)。
圖10 可以在任何位置,而且幅值也是可以變化的。但我們只有6個非零向量和2個零向量,而且它們的振幅都是固定的。下面我們來看看我們如何用這6個非零向量和2個零向量來重現 。每一個PWM開關週期 (圖3),SVPWM演算法便可以使用圖中的8個向量( )來合成一次 。 越短,則 旋轉一圈的時間中合成 的次數越多, 頂點的軌跡也就越平滑越接近 頂點的軌跡(圓)。
現在假設 旋轉到了扇區 (如圖11)。
圖11 我們可以用扇區 兩個相鄰的非零電壓向量 , 和兩個零向量 , 來合成它,合成後的電壓向量為 。 是在一個PWM開關週期 內電壓向量 持續的時間(此電壓向量對應的逆變器開關狀態是 )。同理 就是一個 內電壓向量 ( )持續的時間。 和每個扇區中逆時針方向第一個向量同向(這裡和 同向), 和每個扇區中逆時針方向第二個向量同(這裡和 同向)。 和 是馬達三相電壓 , , 投影到圖10所示 座標系後的電壓。則根據伏秒平衡等效原理我們有以下關係( 很小)。
或 者
再進一步我們有:
仔細觀察圖11不難發現:
注意,如果不容易從圖11得到二個式子的話可以把 平移到右側平行的虛線位置(平行四邊形的右邊)。虛線和 平行則它們的同旁內角相等( ),它們的內錯角也相等( )。另外圖11中用到了電角度,為了泛化推導過程這我們使用一個任意角度 來代替。
組合以上兩個等式我們有下列關係式。
結合表1我們可以得到下列方程式。
請注意,雖然合成電壓向量 的振幅是馬達三相正弦輸入電壓 幅值 的1.5倍。但我們可以在圖5下面計算合成電壓向量時或在座標變換(將馬達三個定子相 上的相電壓 變換到馬達定子 座標系上)的過程中乘一個 使合成電壓向量 的幅值依然和這三個相電壓的振幅相等。 是對 的重現,也擁有和三個相電壓一樣的振幅 。
下面我們可以定義一下調變比M。
通常情況下 的振幅 小於圖5正六邊形的內切圓(圖12可見)的半徑,該半徑的大小是 。但實際上 的振幅最大可達圖5正六邊形外接圓的半徑,即 。此時調變比可達1.1547。和正弦脈寬調變技術(Sinusoidal Pulse Width Modulation, SPWM)比較SVPWM的調變比更大。這也是為什麼SVPWM的直流電壓 的利用率更高。正弦脈寬調變技術不在我們討論範圍內。
圖12 我們之前討論過 代表電壓向量 ( )在一個開關週期 內的持續時間。但只知道這個持續的時間是不夠的。我們還需要知道這個狀態的持續時間 是如何在一個開關週期 內分配的。我們有一個原則來分配它。由先前的分析可知,如果要合成落在第一個磁區內的參考電壓向量 ,那麼 要參與合成(合成過程中它們之間互相切換)。這些電壓向量對應著不同的逆變器開關狀態(開關函數 ),那麼這些電壓向量之間的切換就對應著不同的逆變器開關狀態(開關函數)之間的切換。我們希望在合成一次參考電壓時(一個開關週期 內),開關動作次數最少。這樣逆變器上開關的損耗也就最小。所以我們希望在切換電壓向量的時候只動一個開關函數,也就是說只改變逆變器一個相上的開關狀態(一個相有兩個開關)。透過引入零向量 我們可以輕鬆實現這一目標。如果參考電壓向量 落在第一個扇區,要合成這它的話 需要在一個開關週期內維持 的時間, 要維持 的時間, 分別要維持 的時間。這些時間是可以計算出來的,但問題是這四個向量出現的順序什麼?這些向量所需要維持的時間在一個開關週期內如何分配?現在我們嘗試合成落在第一個扇區的參考電壓向量,上述四個電壓向量出現的順序可以是這樣的(兩個零向量被平均分配到了中間和兩邊): 。當我們從 切換到 時開關函數從(0 0 0)變成(1 0 0),圖1的逆變器只有 相的開關狀態發生了變化(之前是上開關切斷,下開關導通,現在變成上開關導通,下開關切斷)。同理在上述切換順序中任一次切換只有圖1的逆變器只有一個相上的開關狀態改變。圖13表示了上述的開關切換順序。
圖13 以上是討論一個扇區的。所有扇區的開關切換順序可以由圖14來表示。
圖14 在圖14我們可以發現,在任一扇區,合成完一次參考電壓向量後開關狀態總是回到零向量位置 ( 或者 )。如果參考電壓向量在下一個開關週期 從一個磁區轉到了下一個磁區,合成過程總是從一個零向量開始,這就保障了參考電壓向量合成的連續性。表2列出了參考電壓向量在六個磁區的電壓向量(逆變器開關狀態)切換順序。最右邊的圖形表示在每個磁區各電壓向量的切換順序以及維持的時間。 代表逆變器的 相。在對應於第一個磁區的行中最右邊我們可以看到 ,代表開關狀態(0 0 0)先維持了 秒然後切換到了 ,也就是開關狀態(1 0 0)。
表2 從這一開關切換順序 和表2對應於第一扇區的開關順序圖我們可以看到,零向量 被放到了中間。這樣做還有一個很重要的好處,分析如下。
在表2第二個磁區開關狀態切換順序下,馬達的相電壓(相中性點電壓) 在圖15中以虛線表示。 為電機線電壓(相相間的電壓),請讀者忽略掉。
圖15 我們之前已經計算了 開關狀態下 , (請讀者現在在圖15上對應著看一下這個情況)。在其他開關狀態下電機相電壓也在表1中列出。我們可以看到所有的相電壓都被分成了相等的兩份並且在開關週期 內對稱分佈,對稱於開關週期的中點。圖16(a)顯示在一個開關週期內,相電壓沒有被分成兩份(只有一個電壓脈衝)。圖16(b)顯示相電壓被分成了兩份(兩個電壓脈衝),也就是圖15所示的情況(我們把零電壓向量放中間的時候)。
圖16 圖16中(a)和(b)兩種情況下電壓持續的總時間是完全一樣的,但在(b)中電壓脈衝的頻率卻是(a)中的兩倍。下面的公式定義電流波紋 。
圖16中(a)和(b)兩種情況下的電壓振幅 是一樣的,但是(b)中每次持續的時間 卻是(a)中的一半。所以(b)中的電流波紋被大幅削減了。那麼和電流波紋相關的轉矩脈動以及磁場能量損失也被削減了,馬達運轉更加平穩且噪音更小了。 是電感。
3,SVPWM演算法的實施
本節介紹SVPWM演算法在MATLAB Simulink中的實作。所有演算法模組均採用Simulink block設計,方便沒有紮實程式設計功底讀者理解。所有演算法的講解遵循清晰第一,效率第二的原則,力求讓讀者清楚原理。讀者若認為演算法和講解有可優化改進的地方待自己清楚其原理後可自行修改。在這裡我們使用 來代表之前提到的輸入的參考電壓向量 。
3.1,扇區判定
SVPWM演算法首先需要知道要合成的參考電壓向量 落在了哪個扇區。然後演算法就可以根據該磁區相鄰的兩個非零向量和兩個零向量來合成該參考電壓向量。
圖17 我們可以將 分解在馬達定子的 座標系上。對應在兩個座標軸上的電壓量是 和 (這是兩個標量)。我們可以定義三個變數 。
這三個變數可以用來判定 所在的扇區。 和 兩個方程式左邊設為零後是在 座標系下的兩根直線( 是 軸的變數)。紅線代表 ,粉紅色區域代表 大於0的區域,此線另外一側代表其小於零的區域。對於 同理。
圖18 下面我們可以再定義3個變數。注意,此處的 和電機三個相 不是一回事。
如果
(即 也就是圖18中 軸正半軸), 否則 (圖18中 軸負半軸);
如果 , (即圖18藍線的藍色區域), 否則 (圖18藍線藍色區域的另外一側);
如果 , (即圖18粉紅色區域), 否則 (圖18紅線另一側)。
透過 的值我們可以判定出扇區來。原理在表3中列出。
表3 可以表示一個二進制數不同的數位(表3),該二進制數可以用 轉換為一個十進制數。此10進制數也和扇區編號是一一對應的(表3可以看到)。圖19是Simulink裡的扇區判定演算法,該演算法計算的是十進制數 。
圖19
3.2,扇區內相鄰兩個非零向量和零向量的作用時間
我們已經將 分解到了 座標系上。根據圖11我們可以得到如下關係(依然假定 落到了第一個扇區)。請注意圖11中 這裡已經用它們的表達式取代(該表達式在圖11下面的公式已經列出)。
因為有:
和 在一個開關週期內的作用時間可以計算如下。
為了在其他磁區中重複利用在第一個磁區所得到的上述結論並簡化表達式,我們可以定義三個變數。
代表任意扇區內逆時針數第一個非零電壓向量持續的時間, 代表同一扇區第二個非零電壓向量持續的時間。在第一個扇區,顯然 和 分別是 和 ,對應的非零電壓向量分別為 和 。在六個扇區每個扇區內合成參考電壓向量用到的相鄰兩個非零向量以及兩個零向量它們分別持續的時間列在表4內。
表4 表3中列出了 和扇區的關係。
如果 ,則我們需要有做過調製處理。
圖20是計算每個扇區 三個變數的Simulink 模型。
圖20 圖21是給定 和 後來計算每個扇區 和 的Simulink模型。
圖21
3.3,確定切換時間點
我們現在知道了某個電壓向量例如 在一個開關週期內持續的時間,但這依然不夠。我們還需要知道在什麼時刻逆變器開關狀態切換到了這個電壓向量( )對應的狀態。我們將表2對應於第一個磁區的開關狀態圖拿出來分析(圖22)。此處 可以表示圖1三相逆變器三個相上開關的狀態(因為每個相的下開關狀態和該相上開關狀態相反,知道上開關狀態就知道下開關狀態了)。在圖22中,兩個零向量 (0 0 0) 和 (1 1 1)在一個開關週期 的持續時間為:
在第一個磁區可以定義下列三個時間變數。
從圖22可以看出它們分別是第一區 三相開關狀態切換的時間。即三相的上開關由切斷切換到導通的時間。注意,因為在一個開關週期 內各電壓向量(也就是各開關狀態)是對稱分佈的,那麼圖22中 相上開關由導通(高電平)切換到切斷(低電平)的時刻距離該週期結束的時間也是 。
圖22 對於任一磁區(不一定要是第一區),逆變器 三相的開關切換時間可以用圖23的三個時間表示。下角標 代表 相上開關何時由切斷切換到導通狀態。其實該圖中 應該變成 , 要變成 。
圖23 根據表2, 可以計算出來並用第一區的 表達(表5)。此處的 不是扇區編號,但和扇區編號一一對應。
表5 圖24給出如何在Simulink裡計算每個扇區的 。
圖24
3.4, 和一個三角波的比較
僅僅知道 演算法依然無法自行判斷何時改變開關狀態。將這三個時間變數與一個三波比較後演算法就能精確的在指定的時間改變開關狀態。下面解釋該原理。這個三角波可表示為圖25的紅色等腰三角形。它的高是底邊的一半。這個三角形的底邊長是開關週期 ,那麼高度就代表半個開關週期。這樣的程式裡產生的三角波訊號的值(三角波的振幅是高度)就和沿底邊變化的時間一一對應了。比如在前半個開關週期。時間(三角形底邊)經過 後,三角波的值沿高度也增加到了 。再具體一點,在前半個開關週期當時間經過 時,三角波的值沿高度也越過了 (當該三角波的值達到 演算法就知道時間也過去了 )。此時逆變器 相的開關透過比較三角波值的大小和預先設定的 就知道要從切斷切換到導通狀態了(對於 相原理相同)。在 時,三角波的值沿著高度變化到最大(此時三角波的值就等於下圖三角形的高了),時間沿著三角形底邊也走到了底邊的中點。如果在前半個開關週期三角波的值越過 達到最大(三角形的高)所需的時間是 ,那麼在後半個開關週期三角波的值經過同樣的時間 也會變成 並且在這一刻 相開關就從導通切換到了切斷狀態。在後半個開關週期隨著時間的增加,三角波的值是下降的。
圖25 圖26展示的Simulink模型在給定 和三角波後可以決定何時改變逆變器三個相上開關的狀態。圖中Sa,Sb和Sc就是我們之前說過的3個開關函數。
圖26 三角波的底(也就是週期)是開關週期 ,三角波的振幅是底邊的一半。圖27顯示了這種三角波一種典型的參數設定(開關週期 是0.0002秒)。
圖27 將圖26計算出的三個開關函數訊號Sa,Sb,Sc送給圖1所示的逆變器的三個相的6個開關以控制那6個開關的動作。在模擬中圖1的逆變器也是一個虛擬的模型,但在真實工況中圖1的逆變器是真實的實體設備。
我們將參考電壓分解到 軸上(圖17)接著送給SVPWM演算法模組(見圖20),SVPWM演算法就可以PWM形式重現這個參考電壓了(可以是三相電壓)。圖28是分解到 軸上的電壓,此時它們還不是PWM形式。
圖28 這兩個電壓的表達式如下。
那麼最終由SVPWM演算法重現的等效的三相電壓 (也就是三個電機相電壓 )如圖29所示。它們全都是PWM形式的。另外三相逆變器(圖1)中的直流電壓 是700V。
圖29 整體的演算法模型如圖30。
圖30 MATLAB自帶的逆變器模型如圖31。 g是SVPWM演算法算出的圖1中6個開關的開關狀態,它有6個元素。 1代表開關導通,0代表開關切斷。 A,B,C連接到馬達的 三相繞組。
圖31 因為MATLAB逆變器模型所需的開關控制訊號總共有六個,圖26計算開關函數的模型可以稍作更改(如圖32)。
圖32 在圖32中時間一但到達對應逆變器相的開關函數的'切斷—導通'切換點,Relay(繼電器)模組就將開關狀態變為'on'並保持,同樣的到了'導通—切斷'切換點此模組也可以將開關狀態變為'off'並保持。因為我們需要6個開關訊號。開關函數Sa,Sb,Sc代表圖1中 三相的上開關的狀態。對於每相下開關我們用'NOT'模組取反就可以了。圖33計算出的PWM訊號送給了圖32的逆變器模型以驅動其六個開關。
本篇文章中的演算法模型來自於[2]的隨書模型,理論講解有些內容參考了[1]和[2],扇區判斷原理部分參考了[7],一個合成電壓向量公式推導參考了[4],電機轉動原理參考了[5]。本文所涉及的一些圖形是從[3],[4],[5],[6]中截取並修改的。
完結。