電機雜訊之諧波分析(內附simulink中FFT分析的相關參數配置與解析) 寫在前面 宿舍持續隔離中,快遞停運,沒法搞實踐,那就搞點模擬(我才不會說是導師讓我乾的呢[手動doge]) 正文 電機雜訊 一開始我覺得,電機雜訊不就是因為電機運轉起來之後,轉子不停的旋轉引起的震動,因而產生的雜訊。 後來證 ...
電機雜訊之諧波分析(內附simulink中FFT分析的相關參數配置與解析)
目錄寫在前面
宿舍持續隔離中,快遞停運,沒法搞實踐,那就搞點模擬(我才不會說是導師讓我乾的呢[手動doge])
正文
電機雜訊
一開始我覺得,電機雜訊不就是因為電機運轉起來之後,轉子不停的旋轉引起的震動,因而產生的雜訊。
後來證明我還是太嫩了,這隻是從結果的角度去分析,而且只分析了人們肉眼可以看到的東西。
而且現在針對電機雜訊的研究,大致可以分類兩類:
- 針對電機自身的結構改來改去,比如極對數,溝槽數等
- 針對電機的控制策略角度去分析
電機的控制策略,無外乎是控制演算法和驅動硬體支持兩個。這裡只從控制演算法角度去說,硬體角度留到以後有機會再說。
諧波的產生
下麵是PMSM電機FOC控制的框圖:
而我們諧波就是在:PWM變頻器中功率器件的開關動作所產生的高頻諧波電壓會在電機繞組中產生高頻諧波電流。高頻諧波電流會影響電機的諧波磁場,從而導致電機產生高頻振動雜訊。
也就是圖片中,PMSM與三相逆變橋之間那塊。
這下就好說了,我們想辦法抑制諧波電壓的產生不就行了,可以減少諧波電壓的幅值,或者讓諧波不集中出現。
什麼是諧波?
對了,好像還沒說,什麼是諧波?
百度百科上說:頻率等於基本頻率的整倍數的正弦波分量稱為諧波。
還有人說:諧波是指對周期性非正弦交流量進行傅里葉級數分解所得到的大於基波頻率整數倍的各次分量,通常稱為高次諧波。
用人話就是說,按咱們以前的理解正弦波形是這樣子的:
但實際的我們產生用於驅動電機的電壓正弦波是這樣子的:
雖然從整體看仍然是正弦波的樣子,但實際上它是由很多正弦波合成的一個不那麼規則的正弦波。
而我們搞控制的當然想要理想的波形啊,可不能要這種東西,所以第一步我們就要先把這些諧波給找出來。
這就是這篇博文的首要目的。
傅里葉分析
提到傅里葉,大家都不陌生。
維基百科里定義:傅里葉變換是一種線性積分變換,用於信號在時域(或空域)和頻域之間的變換。
在時域上看不清楚的信號,可以在頻域上看的清清楚楚。
傅里葉變換本質其實就是諧波分析,這說明諧波也是正弦波,只是每個諧波都具有不同的頻率,幅度與相角。
諧波可以區分為偶次諧波與奇次諧波,如第3、5、7次編號的為奇次諧波,而2、4、6、8等為偶次諧波。
所以說,傅里葉變化就是為諧波分析而生的。
既然目標明確,現在就是選擇使用何種工具對咱們產生的波形進行諧波分析了。
matlab中的FFT分析工具
simulink中FFT的實現方式主要有兩種:
- 1.將模擬數據保存至workspace後,自行編寫程式進行FFT分析。此類方法適合有客制化需求的FFT分析,需要較好的編程功底。
- 2.採用simulink中內置的模擬分析工具FFT Analysis,此類方法簡單快捷,且內置工具功能全面,較一般自行編寫的FFT程式而言具有更好的操作性,故更推薦大部分人使用此種方法進行FFT分析。
第一步:打開你要進行分析的模型
打開你的模型之後,拖入一個powergui模塊,該模塊所在地址直接搜索這個名字就行。
這裡使用的是我正在做的一個有源濾波器的模擬模型,在這裡充當一個例子,powergui模塊就是畫線那個。
第二步:打開這個模塊,設置相關參數
首先設置Simulation type為Discrete,也就是分析的對象是離散的數據。
下麵是採樣的時間,可以理解成採樣頻率,這裡無特殊要求不用管它,預設就行。
第三步:進入FFT分析工具
這就是FFT快速傅里葉分析的工具界面
我們把其分為四個部分分別進行講解。
第1、2部分
第1部分,就是你要分析的波形名字Name(改名字與你模型中使用的示波器保存的名字一致)。
第2部分,number就是你要分析的波形輸入是幾個
對了,在分析之前別忘了把示波器採集到的數據保存在工作區,步驟如下:
打開示波器,按這個步驟進行設置,把採樣到的數據,保存在工作區。這裡的變數名稱可以自己隨便設置,和上面保持一致就行。
第3、4部分
參數設置:
-
Start time就是分析的開始時間
-
Number of cycles指的是採集的波形中,你要進行FFT分析的波形是幾個,這裡設置的是1個,也就是紅色的那段波形。
-
Fundamental frequency (Hz)基礎頻率,就是你想要的用來充當基準的頻率,也就是理想波形的頻率
-
Max frequency (Hz)最大頻率,就是左邊圖中橫坐標最大值,也是你要分析的諧波包括多少頻率在內。
-
Max frequency for THD computation這裡有兩個選項
用來計算THD時,要算多少頻寬內的諧波,什麼是THD後面再說,這裡設置成Same as Max frequency就行,而另一個選項是指採樣頻率的一半(奈奎斯特頻率),也就是一開始進入powergui的設置的那個參數
-
Display style指的是左邊顯示的是什麼類型的
有柱形圖,還有列表。
-
Frequency axis指的是橫坐標是直接顯示頻率,還是基礎頻率的倍數。
設置完這些參數,點擊Display就可以了。
THD
百度百科定義:總諧波失真(THD)指音頻信號源通過功率放大器時,由於非線性元件所引起的輸出信號比輸入信號多出的額外諧波成分。諧波失真是由於系統不是完全線性造成的,我們用新增加總諧波成份的均方根與原來信號有效值的百分比來表示。
在我看來:THD參數代表意義,THD越低越接近正弦波,就說明諧波含量越少,輸出的波形質量就越高
計算公式如下:
以上便是針對諧波,使用matlab的FFT工具進行分析的大致步驟。
諧波分析之後
分析完諧波之後,就可以有針對的對相關諧波進行抑制,具體抑制方法也有很多,現在我在嘗試的有:
- 無源濾波器
- 有源濾波器
- 諧波提取與抑制
- 載波調製
以後有機會再接著聊。
最後祝大家早安,午安和晚安!希望疫情早點過去,希望世界和平!