LC串联谐振的意义
有了上一节的基础,我们来看看这一节D类音频功放。LC如何设计滤波器,如何思考,可以看作是一个案例。
考虑到一些学生没有接触过D类音频功率放大器,我将首先简要介绍D类功率放大器的工作原理,然后为什么使用D类功率放大器?LC滤波器,再到LC滤波器设计的具体过程。
TI该公司还介绍了D类放大器LC文末将分享滤波器的设计文件。我写的和TI的区别,TI主要介绍如何设计,我主要想解释思维过程,指出一些细节,为什么是这样。我希望,有了这个想法,即使没有任何文档,你也可以自己分析类似的问题。
D相对于类功放A,B,C类别更难理解,因为它需要调制,看起来占空比不同PWM波形,波形看起来不像我们的音频模拟波形。
让我们来看看它的原理。
简单的理解是,通过比较器比较音频信号和三角波高频载波,获得不同的空比PWM波,然后得到PWM信号通过MOS管对管,经过滤波器输入到喇叭。调制后得到的PWM它含有音频分量,然后通过LC滤波器滤掉高频载波还原成原始信号。
原理确实很简单,但我们可能会有以下问题,仅仅理解上述内容还远远不够。
为什么有些电路喇叭在两端使用示波器?PWM但是能正常发出声音吗?
LC如何设计滤波器?L,C如何取值?
有些D类放大器需要LC滤波器,有些可以用磁珠,为什么?
其他制造商声称他们的放大器不需要滤波器,使用什么技术?
让我们来看看如何分析这些问题。
D类放大器,我们常用的方法是差异化,即两种MOS对管中间接喇叭。下面只分析这种差异,单端的分析方法也差不多。
首先,D类放大器是一大类,主要区别在于调制方法不同,下面先介绍两种,AD类,和BD类。
AD类是经过三角波调制后反相使用的比较器。BD类别是先将音频信号反相,然后调制原始信号和反相信号,使用两个比较器,从图中看不到区别,看看波形的区别。
红色是音频信号,三角波是调制信号,滤波前的差分输出信号很容易获得。从波形上看,AD与BD差异输出有明显差异,但两者的电平都在变化。我们不能直接从上面获得有用的信息,比如我们看不到哪种效率更高,哪种辐射更小等等。
在这个时候,我之前的文章信号在我的脑海中应该是什么样的将派上用场。我们需要改变傅里叶的输出信号,以获得它们的频谱。有了频谱,很容易看到差异。为此,我借助了它Matlab软件,分别画出它们的频谱。
注:减少Matlab我设置的音频信号为1Hz,调制三角波为20Hz,虽然实际音频信号频率必须比1Hz较高,但分析结果应相同。
下图为1,频率为20Hz的三角波,来调制幅度为0.9,频率为1Hz的正弦波。
从上图可以看出,调制后的有用信号1Hz被保留,幅度为0.这两种方法都是一样的,这表明它们都能达到目的,包括完整的音频信号。
AD除了有用的信号1Hz还有20个三角波频率的调制Hz也很大。还有BD调制方式,20Hz频率消失了,只有更高的谐波。从这个角度来看,BD的方式是要更好的,损耗降低了。
当音频输入为0时,也就是说,放大器是空的,可以看到更多AD与BD如下图所示:
当输入为0时,AD方法的差分输出是方波,BD毫无疑问,方式输出为0,BD方式功耗较低。
。
首先,这些开关信号看起来不像模拟音频信号,但它们确实包含了完整的音频频率信号,所以直接通过喇叭也可以正常响。虽然有额外的高频载波,但频率太高,超出人耳范围,听不到高频重量。
其次,这些开关信号除了包含有用的信号外,还具有丰富的高频率,从调制频率开始。这些高频分量对喇叭没有好处,但会带来额外的功率损失,并导致EMI的问题。因此,我们需要一个过滤器来过滤高频分量。而且,由于驱动喇叭需要更大的功率,RC因此,滤波器会有额外的损失,LC自然选择低通滤波器。
最后,我们知道频谱中谱中的高频频谱分布,滤波器的截止频率自然会出来。截止频率必须高于音频频率上限20Khz,在此范围内,截止频率越低,去除高频分量越好。
下面分享下面的波形Matlab有兴趣的同学可以试试源码。
f_audio=1; 调制信号(音频信号)的%频率为1Hz f_sanjiao=20; 3角波调制频率为20%Hz %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% fft采样设置 Fs=10000; %采样率为Fs L=(Fs/f_audio)*100; %信号长度(采样总点数):100个周期的信号,长度越长,fft精度越高,但执行时间越长 T=1/Fs; %采样周期 t=(0:L)*T; %时间长度 A_audio = 0.9; %音频信号的范围为 0.9-可以修改为不同的值 S1=A_audio*sin(2*pi*f_audio*t); 调制信号(音频信号)%的幅度A_audio的正弦波 S2=sawtooth(2*pi*f_sanjiao*t,0.5); 3角波调制信号(三角波)为1 N=length(t); PWM1=zeros(1,N); %定义PWM1的长度 AD调制后差分波形 PWM2=zeros(1,N); %定义PWM2的长度 BD调制后差分波形 tmp=zeros(1,N); %定义tmp的长度 计算用(中间变量) 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调制 subplot(3,2,1); plot(t,S1,t,S2,'k'); set(gca,'XLim',[0 2/f_audio]);%x轴数据显示基频2个周期 set(gca,'YLim',[-1.1 1.1]); title('AD调制'); xlabel('t (s)'); ylabel(幅度); subplot(3,2,3); plot(t,PWM1); set(gca,'XLim',[0 2/f_audio]);%x轴的数据显示范围 set(gca,'YLim',[-1.1 1.1]); title('AD模式调制后-差分-信号; 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轴的数据显示范围 set(gca, 'XTickLabel' ,{'0.十、十、十、十K','100K'}); %x轴频率数据 title('AD调制后的方法-差分-频谱; set(gca,'YLim',[-0.1 1.5]); xlabel('f (Hz)'); ylabel(幅度); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% BD调制差分信号 subplot(3,2,2); plot(t,S1,t,-S1,'--r',t,S2,'k'); set(gca,'XLim',[0 2/f_audio]);%x轴数据显示基频2个周期 set(gca,'YLim',[-1.1 1.1]); title('BD调制'); xlabel('t (s)'); ylabel(幅度); subplot(3,2,4); plot(t,PWM2); set(gca,'XLim',[0 2/f_audio]);%x轴的数据显示范围 set(gca,'YLim',[-1.1 1.1]); title('BD模式调制后-差分-信号; 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轴的数据显示范围 title('BD调制后的方法-差分-频谱; set(gca, 'XTickLabel' ,{'0.十、十、十、十K','100K'}); %x轴频率数据 set(gca,'YLim',[-0.1 1.5]); xlabel('f (Hz)'); ylabel(幅度);
我们看了这一节Class D输出信号波形并分析其频谱。我们应该学会阅读频谱。这是本节的第一部分。下一节将详细介绍LC滤波器的设计过程。
想要获得,关注下面的微信微信官方账号,在微信微信官方账号后台回复”