你的位置:首頁 > RF/微波 > 正文

音頻D類功放LC濾波器設(shè)計(jì)(一)

發(fā)布時(shí)間:2021-02-02 來源:煉成之路 責(zé)任編輯:wenwei

【導(dǎo)讀】有了上一節(jié)的基礎(chǔ),這一節(jié)我們來看看D類音頻功放的LC濾波器如何設(shè)計(jì),思路是怎么樣的,可以看作是一個(gè)案例。考慮到有些同學(xué)沒接觸過D類音頻功放,我會先簡單介紹下D類功放的工作原理,然后D類功放為什么要用LC濾波器,再到LC濾波器設(shè)計(jì)具體過程。
 
LC串聯(lián)諧振的意義
 
有了上一節(jié)的基礎(chǔ),這一節(jié)我們來看看D類音頻功放的LC濾波器如何設(shè)計(jì),思路是怎么樣的,可以看作是一個(gè)案例。
 
考慮到有些同學(xué)沒接觸過D類音頻功放,我會先簡單介紹下D類功放的工作原理,然后D類功放為什么要用LC濾波器,再到LC濾波器設(shè)計(jì)具體過程。
 
TI公司也有介紹D類放大器LC濾波器的設(shè)計(jì)文檔,文末會分享出來。我寫的與TI的區(qū)別,TI的主要介紹具體如何設(shè)計(jì),我主要想說明思路過程,并指出里面的一些細(xì)節(jié),為什么是這樣。我希望的是,有了思路,即使沒有任何文檔,遇到類似的問題,也能自己去分析。
 
D類功放工作原理
 
D類功放相對于A,B,C類來說更不好理解,因?yàn)樗切枰{(diào)制的,看起來就是占空比不同的PWM波,波形看著與我們的音頻模擬波形一點(diǎn)都不像。
 
下面來看一看它的原理。
 
音頻D類功放LC濾波器設(shè)計(jì)(一)
 
簡單理解就是:音頻信號與三角波高頻載波經(jīng)過比較器進(jìn)行比較,得到占空比不同的PWM波,然后將得到PWM信號通過MOS管對管,經(jīng)過濾波器輸入到喇叭。調(diào)制后得到的PWM里面含有音頻分量,然后通過LC濾波器濾掉高頻載波還原成原始信號。
 
原理確實(shí)非常簡單,但是我們可能會有如下問題,僅僅理解以上內(nèi)容還是遠(yuǎn)遠(yuǎn)不夠的。
 
為什么有的電路喇叭兩端用示波器量就是PWM波,但是卻能正常發(fā)出聲音?
 
LC濾波器該如何設(shè)計(jì),L,C如何取值?
 
有的D類放大器要LC濾波,有的用磁珠就可以了,為什么?
 
還有的廠家的宣稱它們的放大器不需要濾波,用了什么技術(shù)?
 
下面來看看這些問題是怎么分析的。
 
典型的D類放大器電路
 
D類放大器,我們常用的方式是差分的方式,即兩個(gè)MOS對管中間接喇叭。下面就只分析這種差分方式,單端的分析方法也差不多。
首先,D類放大器是一個(gè)大類,主要區(qū)別在于有不同的調(diào)制方式,下面先介紹兩種,AD類,和BD類。
 
音頻D類功放LC濾波器設(shè)計(jì)(一)
 
AD類是經(jīng)過三角波調(diào)制后再反相,用了一個(gè)比較器。BD類是先將音頻信號反相,再將原信號和反相后的信號分別通過調(diào)制,用了兩個(gè)比較器,從圖中看不出來差別,下面來看看波形的區(qū)別。
 
音頻D類功放LC濾波器設(shè)計(jì)(一)
 
紅色的為音頻信號,三角波是調(diào)制信號,我們可以很容易的得到濾波之前的差分輸出信號。從波形上看到,AD與BD的差分輸出有著明顯的區(qū)別,但是二者的電平都是高低變化,我們沒法從上面直接得到有用的信息,比如看不出來哪種效率更高,哪種輻射會小一些等等。
 
這時(shí)候,我之前的文章“信號在腦子里面應(yīng)該是什么樣的”就要派上用場了,我們需要把輸出信號進(jìn)行傅里葉變換,得到它們的頻譜,有了頻譜,就很容易看出差別。為此,我借助了Matlab軟件,分別畫出它們的頻譜。
 
注:為了減小Matlab軟件的計(jì)算量(計(jì)算量大了電腦會卡),我設(shè)定的音頻信號為1Hz,調(diào)制三角波為20Hz,雖然實(shí)際音頻信號頻率肯定是比1Hz要高的,但是分析結(jié)果應(yīng)是一樣的。
 
下圖是用幅度為1,頻率為20Hz的三角波,來調(diào)制幅度為0.9,頻率為 1Hz的正弦波。
 
音頻D類功放LC濾波器設(shè)計(jì)(一)
 
從上圖看出,調(diào)制之后的有用信號1Hz被保留,幅度都是0.9,兩種方式都是一樣的,這說明都能達(dá)到目的,包含了完整的音頻信號。
 
AD調(diào)制方式,除了有用信號1Hz在,還有調(diào)制三角波頻率20Hz的幅度也很大。而BD調(diào)制方式,20Hz頻率消失了,只存在更高的諧波。從這個(gè)角度說, BD的方式是要更好的,損耗降低了。
 
在音頻輸入為0的時(shí)候,也就是說放大器空閑,更能看出AD與BD的區(qū)別,如下圖:
 
音頻D類功放LC濾波器設(shè)計(jì)(一)
 
在輸入為0的時(shí)候,AD方式的差分輸出為方波,而BD方式輸出為0,毫無疑問,BD方式功耗更低。
 
事實(shí)上,我們拿到了頻譜,就能知道很多事情了。
 
首先,這些開關(guān)信號實(shí)在看起來不像是模擬音頻信號,但是其確實(shí)包含了完整的音頻頻率信號在其中,所以直接通到喇叭也是可以正常響的,雖然額外多了高頻載波,但是頻率太高,超過人耳范圍,高頻分量是聽不見的。
 
其次,這些開關(guān)信號除了包含有用信號,還有豐富的高頻頻率,這些高頻頻率從調(diào)制頻率開始往上。這些高頻分量通到喇叭是沒有什么好處的,反而會額外帶來功率損耗,還有會造成EMI的問題。所以,我們需要一個(gè)濾波器來濾掉高頻分量。并且,因?yàn)轵?qū)動喇叭需要的功率較大,而RC濾波器會有額外損耗,所以,LC低通濾波器就自然而然被選中了。
 
最后,我們知道頻譜里面的高頻的頻譜分布,那么濾波器的截止頻率自然就出來了。截止頻率必須高于音頻頻率上限20Khz,而要小于三角波的調(diào)制頻率,在這個(gè)范圍內(nèi),截止頻率越低,去除高頻分量越好。
 
下面分享下上面波形的Matlab源碼,有興趣的同學(xué)可以去試試。
 
f_audio=1;      %被調(diào)制信號(音頻信號)頻率為1Hz 
f_sanjiao=20;   %三角波調(diào)制頻率為20Hz
 
%%%%%%%%%%%%%%%%%%%%%%%%  fft采樣設(shè)置
Fs=10000;  %采樣率為Fs 
L=(Fs/f_audio)*100;   
%信號長度(采樣總點(diǎn)數(shù)):100個(gè)周期的信號,長度越長,fft精度越高,但是執(zhí)行時(shí)間越長
T=1/Fs;    %采樣周期
t=(0:L)*T; %時(shí)間長度
 
A_audio = 0.9;   %音頻信號的幅度為 0.9----可以修改為不同的值嘗試
S1=A_audio*sin(2*pi*f_audio*t);         %被調(diào)制信號(音頻信號)為幅度A_audio的正弦波
S2=sawtooth(2*pi*f_sanjiao*t,0.5);  %調(diào)制信號(三角波)為幅度為1的三角波
 
N=length(t);
PWM1=zeros(1,N); %定義PWM1的長度  AD調(diào)制后差分波形
PWM2=zeros(1,N); %定義PWM2的長度  BD調(diào)制后差分波形
tmp=zeros(1,N);  %定義tmp的長度  計(jì)算用(中間變量)
for i=1:N    
      if S1(i)>S2(i)        
           PWM1(i) = 1;        
           tmp(i)  = 1;    
     else        
           PWM1(i) = -1;        
           tmp(i)  = 0;    
     end
end
 
for i=1:N    
     if -S1(i)>S2(i)        
           PWM2(i) = tmp(i)-1;    
     else        
           PWM2(i) = tmp(i);    
     end
end
 
%%%%%%%%%%%%%%%%%%%%%%%% AD調(diào)制
subplot(3,2,1);
plot(t,S1,t,S2,'k');
set(gca,'XLim',[0 2/f_audio]);%x軸的數(shù)據(jù)顯示基頻2個(gè)周期
set(gca,'YLim',[-1.1 1.1]);
title('AD調(diào)制');
xlabel('t (s)');
ylabel('幅度');
 
subplot(3,2,3);
plot(t,PWM1);
set(gca,'XLim',[0 2/f_audio]);%x軸的數(shù)據(jù)顯示范圍
set(gca,'YLim',[-1.1 1.1]);
title('AD方式調(diào)制之后的-差分-信號');
xlabel('t (s)');
ylabel('幅度');
 
X1=abs(fft(PWM1));
subplot(3,2,5);
semilogx(Fs*(0:(L/2))/L,X1(1:L/2+1)*2/L); 
set(gca,'XLim',[0.1 10000]);%x軸的數(shù)據(jù)顯示范圍
set(gca, 'XTickLabel' ,{'0.1','1','10','100','10K','100K'}); %x軸頻率數(shù)據(jù)
title('AD方式調(diào)制之后的-差分-頻譜');
set(gca,'YLim',[-0.1 1.5]);
xlabel('f (Hz)');
ylabel('幅度');
 
%%%%%%%%%%%%%%%%% BD調(diào)制差分信號
subplot(3,2,2);
plot(t,S1,t,-S1,'--r',t,S2,'k');
set(gca,'XLim',[0 2/f_audio]);%x軸的數(shù)據(jù)顯示基頻2個(gè)周期
set(gca,'YLim',[-1.1 1.1]);
title('BD調(diào)制');
xlabel('t (s)');
ylabel('幅度');
 
subplot(3,2,4);
plot(t,PWM2);
set(gca,'XLim',[0 2/f_audio]);
%x軸的數(shù)據(jù)顯示范圍set(gca,'YLim',[-1.1 1.1]);
title('BD方式調(diào)制之后的-差分-信號');
xlabel('t (s)');
ylabel('幅度');
 
X2=abs(fft(PWM2));
subplot(3,2,6);
semilogx(Fs*(0:(L/2))/L,X2(1:L/2+1)*2/L);
 set(gca,'XLim',[0.1 10000]);     %x軸的數(shù)據(jù)顯示范圍
title('BD方式調(diào)制之后的-差分-頻譜');
set(gca, 'XTickLabel' ,{'0.1','1','10','100','10K','100K'}); %x軸頻率數(shù)據(jù)
set(gca,'YLim',[-0.1 1.5]);
xlabel('f (Hz)');
ylabel('幅度');
 
小結(jié)
 
這一節(jié)我們看了Class D的輸出信號波形,并分析了其頻譜,我們要學(xué)會看頻譜。本節(jié)就先寫到這里吧,下一節(jié)會具體看看LC濾波器的設(shè)計(jì)過程。
 
來源:硬件工程師煉成之路
 
 
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理。
 
推薦閱讀:
 
如何利用微控制器的完全隔離來控制具有電壓和電流輸出的16位輸出模塊
汽車USB 2.0和5 V Type-C解決方案提供充電和穩(wěn)健的數(shù)據(jù)線保護(hù)
交錯(cuò)式反相電荷泵——第二部分:實(shí)現(xiàn)和結(jié)果
了解通用異步接收器/發(fā)送器的硬件通信協(xié)議
零增益放大器
要采購濾波器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉