永磁同步電機的矢量控制方法、系統及存儲介質與流程
2023-05-16 17:07:07 1

本發明涉及電機技術領域,特別是涉及一種永磁同步電機的矢量控制方法、系統及存儲介質。
背景技術:
永磁同步電機是指由永磁體勵磁產生同步旋轉磁場的同步電機,稱為永磁同步電機。近年來,隨著電力電子技術、微電子技術、新型電機控制理論和稀土永磁材料的快速發展,永磁同步電機得以迅速的推廣應用。
用於對電磁噪音比較敏感的場合,如油煙機等廚衛家電類。為了減少電磁噪音,pwm波的頻率要大於20khz以上。而如此高的開關頻率對控制算法的執行時間有嚴格的要求,在工程應用上選用廉價的單片機面臨著較大的挑戰。
現有技術中,並沒有將開關頻率和控制頻率分開,其出發點只是優化實行時間,如簡化位置估計算法,去掉電流環等,據此來減少算法的執行時間。但這種解決方案帶來的問題就是控制性能的下降,如動態響應性差,運行頻率範圍小,帶載能力降低等。
技術實現要素:
為此,本發明的一個實施例提出一種永磁同步電機的矢量控制方法,在保持矢量算法性能的前提下,降低對執行時間的要求。
根據本發明一實施例的永磁同步電機的矢量控制方法,包括:
根據開關頻率k1,將控制頻率k2配置成k2=k1/n,其中,n為控制周期的分頻係數,n為自然數;
初始化開關周期定時器的周期值和初始值、以及控制周期定時器的周期值和初始值;
當所述控制周期定時器產生中斷時,計算下個控制周期內覆蓋的所有開關周期的發波電壓;
在下一個控制周期覆蓋的所有開關周期內,當所述開關周期定時器中斷時,將發波電壓轉換成發波比較值。
根據本發明實施例的永磁同步電機的矢量控制方法,採用將控制頻率和開關頻率分開的思路,將pwm模塊配置成較高的開關頻率k1,將控制頻率k2配置成k2=k1/n,並對開關周期定時器的周期值和初始值、控制周期定時器的周期值和初始值分別進行初始化,一個控制周期內將包括n個開關周期,控制算法只需要同時算出n個開關周期的比較值,然後逐一加載到n個佔空比內即可實現較高的開關頻率,從而實現了較低的控制頻率達到較高開關頻率的效果,在保持矢量算法性能的前提下,降低了對執行時間的要求。
另外,根據本發明上述實施例的永磁同步電機的矢量控制方法,還可以具有如下附加的技術特徵:
進一步地,在本發明的一個實施例中,所述初始化開關周期定時器的周期值、以及控制周期定時器的周期值的步驟包括:
採用以下公式計算所述開關周期定時器的周期值p1為和所述控制周期定時器的周期值p2:
其中,fs為主時鐘的主頻。
進一步地,在本發明的一個實施例中,所述初始化開關周期定時器初始值、以及控制周期定時器初始值的步驟包括:
設置所述開關周期定時器的初始值t01=0,同時設置所述開關周期定時器的初始值t02=0;
配置所述控制周期定時器和所述開關周期定時器過零點產生中斷,並同時啟動所述控制周期定時器和所述開關周期定時器。
進一步地,在本發明的一個實施例中,所述計算下個控制周期內覆蓋的所有開關周期的發波電壓的步驟包括:
觸發adc採樣電機的相電流,完成矢量控制算法流程,以獲得d軸和q軸的發波電壓ud和uq,以及轉子位置θi;
採用以下公式計算第n個開關周期的發波角度θp(n):
θp(n)=θi+2πfc*ts*n
其中,fc為所述永磁同步電機運行的電頻率,ts為開關周期,θi為當前轉子估計的角度位置,0<=θn<2π,0≤n≤n-1;
依次按照角度θp(n)進行逆park變換以獲得第n個開關周期的發波電壓值unα和unβ;
unα=ud×cosθp(n)-uq×sinθp(n)
unβ=ud×cosθp(n)+uq×sinθp(n)
其中,ud和uq是發波電壓在dq域的表示值。
進一步地,在本發明的一個實施例中,所述將發波電壓轉換成發波比較值的步驟包括:
採用以下公式計算una、unb和unc:
una=unα
採用以下公式計算unr、uns和unt:
unr=una+unh
uns=unb+unh
unt=unc+unh
其中,即una、unb和unc三個值中間值除以2;
採用以下公式計算svpwm的三路比較值:
其中,ud為母線電壓。
本發明的另一個實施例提出一種永磁同步電機的矢量控制系統,在保持矢量算法性能的前提下,降低對執行時間的要求。
根據本發明實施例的永磁同步電機的矢量控制系統,包括:
配置模塊,用於根據開關頻率k1,將控制頻率k2配置成k2=k1/n,其中,n為控制周期的分頻係數,n為自然數;
初始化模塊,用於初始化開關周期定時器的周期值和初始值、以及控制周期定時器的周期值和初始值;
計算模塊,用於當所述控制周期定時器產生中斷時,計算下個控制周期內覆蓋的所有開關周期的發波電壓;
轉換模塊,用於在下一個控制周期覆蓋的所有開關周期內,當所述開關周期定時器中斷時,將發波電壓轉換成發波比較值。
另外,根據本發明上述實施例的矢量控制系統,還可以具有如下附加的技術特徵:
進一步地,在本發明的一個實施例中,所述初始化模塊具體用於:
採用以下公式計算所述開關周期定時器的周期值p1為和所述控制周期定時器的周期值p2:
其中,fs為主時鐘的主頻。
進一步地,在本發明的一個實施例中,所述初始化模塊具體用於:
設置所述開關周期定時器的初始值t01=0,同時設置所述開關周期定時器的初始值t02=0;
配置所述控制周期定時器和所述開關周期定時器過零點產生中斷,並同時啟動所述控制周期定時器和所述開關周期定時器。
進一步地,在本發明的一個實施例中,所述計算模塊具體用於:
觸發adc採樣電機的相電流,完成矢量控制算法流程,以獲得d軸和q軸的發波電壓ud和uq,以及轉子位置θi;
採用以下公式計算第n個開關周期的發波角度θp(n):
θp(n)=θi+2πfc*ts*n
其中,fc為所述永磁同步電機運行的電頻率,ts為開關周期,θi為當前轉子估計的角度位置,0<=θn<2π,0≤n≤n-1;
依次按照角度θp(n)進行逆park變換以獲得第n個開關周期的發波電壓值unα和unβ;
unα=ud×cosθp(n)-uq×sinθp(n)
unβ=ud×cosθp(n)+uq×sinθp(n)
其中,ud和uq是發波電壓在dq域的表示值。
進一步地,在本發明的一個實施例中,所述轉換模塊具體用於:
採用以下公式計算una、unb和unc:
una=unα
採用以下公式計算unr、uns和unt:
unr=una+unh
uns=unb+unh
unt=unc+unh
其中,即una、unb和unc三個值中間值除以2;
採用以下公式計算svpwm的三路比較值:
其中,ud為母線電壓。
本發明的另一個實施例還提出一種存儲介質,其上存儲有電腦程式,該程序被處理器執行時實現上述方法的步驟。
本發明的附加方面和優點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發明的實施例了解到。
附圖說明
本發明實施例的上述和/或附加的方面和優點從結合下面附圖對實施例的描述中將變得明顯和容易理解,其中:
圖1是根據本發明一實施例的永磁同步電機的矢量控制方法的流程圖;
圖2是圖1中初始化開關周期定時器初始值、以及控制周期定時器初始值的流程圖;
圖3是根據本發明另一實施例的永磁同步電機的矢量磁控制系統的結構示意圖。
具體實施方式
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
請參閱圖1,本發明實施例提出的永磁同步電機的矢量控制方法,包括以下步驟:
s101,根據開關頻率k1,將控制頻率k2配置成k2=k1/n,其中,n為控制周期的分頻係數,n為自然數;
s102,初始化開關周期定時器的周期值和初始值、以及控制周期定時器的周期值和初始值;
s103,當所述控制周期定時器產生中斷時,計算下個控制周期內覆蓋的所有開關周期的發波電壓;
s104,在下一個控制周期覆蓋的所有開關周期內,當所述開關周期定時器中斷時,將發波電壓轉換成發波比較值。
根據本發明實施例的永磁同步電機的矢量控制方法,採用將控制頻率和開關頻率分開的思路,將pwm模塊配置成較高的開關頻率k1,將控制頻率k2配置成k2=k1/n,並對開關周期定時器的周期值和初始值、控制周期定時器的周期值和初始值分別進行初始化,一個控制周期內將包括n個開關周期,控制算法只需要同時算出n個開關周期的比較值,然後逐一加載到n個佔空比內即可實現較高的開關頻率,從而實現了較低的控制頻率達到較高開關頻率的效果,在保持矢量算法性能的前提下,降低了對執行時間的要求。
作為一個具體示例,在步驟s102中,初始化開關周期定時器的周期值、以及控制周期定時器的周期值可以採用以下步驟:
採用以下公式計算所述開關周期定時器的周期值p1為和所述控制周期定時器的周期值p2:
其中,fs為主時鐘的主頻。
在步驟s102中,初始化開關周期定時器初始值、以及控制周期定時器初始值的步驟包括:
s1021,設置所述開關周期定時器的初始值t01=0,同時設置所述開關周期定時器的初始值t02=0;
s1022,配置所述控制周期定時器和所述開關周期定時器過零點產生中斷,並同時啟動所述控制周期定時器和所述開關周期定時器。
此外,作為一個具體示例,在步驟s103中,計算下個控制周期內覆蓋的所有開關周期的發波電壓的步驟包括:
觸發adc採樣電機的相電流,完成矢量控制算法流程,以獲得d軸和q軸的發波電壓ud和uq,以及轉子位置θi;
採用以下公式計算第n個開關周期的發波角度θp(n):
θp(n)=θi+2πfc*ts*n
其中,fc為所述永磁同步電機運行的電頻率,ts為開關周期,θi為當前轉子估計的角度位置,0<=θn<2π,0≤n≤n-1;
依次按照角度θp(n)進行逆park變換以獲得第n個開關周期的發波電壓值unα和unβ;
unα=ud×cosθp(n)-uq×sinθp(n)
unβ=ud×cosθp(n)+uq×sinθp(n)
其中,ud和uq是發波電壓在dq域的表示值。
作為一個具體示例,在步驟s104中,將發波電壓轉換成發波比較值的步驟包括:
採用以下公式計算una、unb和unc:
una=unα
採用以下公式計算unr、uns和unt:
unr=una+unh
uns=unb+unh
unt=unc+unh
其中,即una、unb和unc三個值中間值除以2;
採用以下公式計算svpwm的三路比較值:
其中,ud為母線電壓。
請參閱圖3,基於同一發明構思,本發明另一實施例提出的永磁同步電機的矢量控制系統,包括:
配置模塊10,用於根據開關頻率k1,將控制頻率k2配置成k2=k1/n,其中,n為控制周期的分頻係數,n為自然數;
初始化模塊20,用於初始化開關周期定時器的周期值和初始值、以及控制周期定時器的周期值和初始值;
計算模塊30,用於當所述控制周期定時器產生中斷時,計算下個控制周期內覆蓋的所有開關周期的發波電壓;
轉換模塊40,用於在下一個控制周期覆蓋的所有開關周期內,當所述開關周期定時器中斷時,將發波電壓轉換成發波比較值。
本實施例中,所述初始化模塊20具體用於:
採用以下公式計算所述開關周期定時器的周期值p1為和所述控制周期定時器的周期值p2:
其中,fs為主時鐘的主頻。
本實施例中,所述初始化模塊20還具體用於:
設置所述開關周期定時器的初始值t01=0,同時設置所述開關周期定時器的初始值t02=0;
配置所述控制周期定時器和所述開關周期定時器過零點產生中斷,並同時啟動所述控制周期定時器和所述開關周期定時器。
本實施例中,所述計算模塊30具體用於:
觸發adc採樣電機的相電流,完成矢量控制算法流程,以獲得d軸和q軸的發波電壓ud和uq,以及轉子位置θi;
採用以下公式計算第n個開關周期的發波角度θp(n):
θp(n)=θi+2πfc*ts*n
其中,fc為所述永磁同步電機運行的電頻率,ts為開關周期,θi為當前轉子估計的角度位置,0<=θn<2π,0≤n≤n-1;
依次按照角度θp(n)進行逆park變換以獲得第n個開關周期的發波電壓值unα和unβ;
unα=ud×cosθp(n)-uq×sinθp(n)
unβ=ud×cosθp(n)+uq×sinθp(n)
其中,ud和uq是發波電壓在dq域的表示值。
本實施例中,所述轉換模塊40具體用於:
採用以下公式計算una、unb和unc:
una=unα
採用以下公式計算unr、uns和unt:
unr=una+unh
uns=unb+unh
unt=unc+unh
其中,即una、unb和unc三個值中間值除以2;
採用以下公式計算svpwm的三路比較值:
其中,ud為母線電壓。
本發明實施例提出的永磁同步電機的矢量控制系統的技術特徵和技術效果與本發明實施例提出的方法相同,在此不予贅述。
此外,本發明的實施例還提出一種存儲介質,其上存儲有電腦程式,該程序被處理器執行時實現上述方法的步驟。
在流程圖中表示或在此以其他方式描述的邏輯和/或步驟,例如,可以被認為是用於實現邏輯功能的可執行指令的定序列表,可以具體實現在任何計算機可讀介質中,以供指令執行系統、裝置或設備(如基於計算機的系統、包括處理器的系統或其他可以從指令執行系統、裝置或設備取指令並執行指令的系統)使用,或結合這些指令執行系統、裝置或設備而使用。就本說明書而言,「計算機可讀介質」可以是任何可以包含、存儲、通信、傳播或傳輸程序以供指令執行系統、裝置或設備或結合這些指令執行系統、裝置或設備而使用的裝置。
計算機可讀介質的更具體的示例(非窮盡性列表)包括以下:具有一個或多個布線的電連接部(電子裝置),可攜式計算機盤盒(磁裝置),隨機存取存儲器(ram),只讀存儲器(rom),可擦除可編輯只讀存儲器(eprom或閃速存儲器),光纖裝置,以及可攜式光碟只讀存儲器(cdrom)。另外,計算機可讀介質甚至可以是可在其上列印所述程序的紙或其他合適的介質,因為可以例如通過對紙或其他介質進行光學掃描,接著進行編輯、解譯或必要時以其他合適方式進行處理來以電子方式獲得所述程序,然後將其存儲在計算機存儲器中。
應當理解,本發明的各部分可以用硬體、軟體、固件或它們的組合來實現。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執行系統執行的軟體或固件來實現。例如,如果用硬體來實現,和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現:具有用於對數據信號實現邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(pga),現場可編程門陣列(fpga)等。
在本說明書的描述中,參考術語「一個實施例」、「一些實施例」、「示例」、「具體示例」、或「一些示例」等的描述意指結合該實施例或示例描述的具體特徵、結構、材料或者特點包含於本發明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特徵、結構、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結合。
儘管已經示出和描述了本發明的實施例,本領域的普通技術人員可以理解:在不脫離本發明的原理和宗旨的情況下可以對這些實施例進行多種變化、修改、替換和變型,本發明的範圍由權利要求及其等同物限定。