B站视频链接:
MOS如何计算管栅极电阻的功耗,基本原理是什么?怎么想?
我在微信官方账号发的视频一般都是B站发的,最近有个朋友在我的视频下留言。
因为这个视频里有讲讲MOS管栅极串联电阻的作用,怎么就能抑制谐振,还有电阻的阻值怎么选择,但是我没说这个电阻的功耗怎么计算。
考虑到有些朋友不知道我以前说了什么,我会再次发布链接(不要浪费时间再看)
B站是这个链接:
https://www.bilibili.com/video/BV15o4y1o7Ru/
微信官方账号视频链接如下:
《LC串联谐振的意义
MOS视频后面是管串联电阻的问题。两个链接的内容是一样的,看一个就行了。
小伙伴留言的问题是如何计算栅极电阻的功率?
当我看到这个问题时,我想:啊,好问题,这涉及到这个电阻的包装尺寸。我以前用手册推荐的包装这种电路,因为我认为这种电阻的功率太难计算,我不计算。
有人曾经质疑我说:你为什么做0805这么大的包装?这个电阻在这个地方使用。你不能做0402吗?材料归一,板材整齐美观,都是0402。
我也不是素食者,反驳道:no!no!no!开关速度快,瞬时电阻功率大,会燃烧。
事实上,我不知道功率有多大,它是否会燃烧,汗水。。。幸运的是,它被愚弄了。
然而,到目前为止,有了以前的基础,既然一些朋友提出了这个问题,它仍然需要解决。因为,更重要的是,最近没有灵感,只是借此机会水一篇文章。
说干就干。
小伙伴的原问题是:如何计算电阻电路学习中栅极电阻的功率?比如我10V/2A20欧欧的栅极电阻输出驱动芯片。
句子不是很流畅。手机打字留言应该不方便,但我明白驱动电压是10V驱动电流输出到2A,栅极串联了20Ω电阻,这个电阻的功率是多少?
这个小伙伴没有给出开关频率。显然,功率与频率有关。如果每秒驱动一次,功率必须很低,因为电阻只有在切换时才会有电流。在大多数情况下,电压是稳定的,电阻电流是0。
加入开关频率1Mhz,占50%的空比PWM方波,即方波。
驱动电流可达2A,串联了20Ω电阻,因为不会谐振(如果不知道为什么,可以看前面的视频),所以最大电流不会超过10V/20Ω=0.5A,也就是说,驱动电流必须足够。这表明驱动电压10V不会被拉下来。
我们假设栅极线是12mil线宽,长度1cm寄生电感为9.17nH,为方便寄生,我们设为10nH吧。功率MOS管道寄生电容约为1nF左右,我们拿1nF。
最后的问题是:驱动电压10V,驱动信号为PWM波,占空比50%,频率1Mhz,寄生电感10nH,MOS管寄生电容为1nF,网极串联电阻为20Ω,这个电阻消耗的功率是多少?
如图所示,型如图所示。
那么如何寻求电阻功率呢?真的很难找到,有电感,有电容,阻抗也随频率变化,不固定,怎么做?
在这个时候,你需要应用你以前学到的知识。你脑子里的信号是什么?信号应该在你的脑海中分解成频率的正弦波,更不用说你不知道了。我写了文章,发了视频。如果你不知道,你配得上我吗?
首先将驱动电压波形分解为每个频率的正弦波,然后计算每个正弦波分量在电阻上的功率,然后加起来就是总功率。
What?这么复杂?你在玩我吗?
我自然帮你做了这么复杂的事情。
我的想法是用Matlab工具,这个工具有一个优点,就是我们可以建立任何波形,不一定是正弦波、三角波、方波,反正是一个序列点,只要能描述,就可以处理。
构建驱动序列后,使用fft函数分析频谱,得到每个频率的范围值,实际上是对应频率啦。如图
我们知道,电感和电容的阻抗在不同的频率下是不同的,它是频率的函数,jwL和1/jwC。因此,我们可以很容易地写出上述模型的总阻抗公式。我们需要阻抗的原因是我们需要每个频率的电流。
阻抗Z=Rs jwL 1/jwC。
现在我们有每个频率分量的电压值和阻抗,所以每个分量出来了。因为是串联的,这个电流也是流过电阻的电流。
我们再根据P=I^2*R,每个频率分量的功率都可以找到,然后加起来,就是总功率。
最后,我们要求电阻的功耗是P=0.10047W
上面的过程看起来是很复杂的,其实Matlab代码很简单,只有三四十行。实际计算过程不到10行,其他都是定义变量、绘图、设置坐标轴等。
建议您可以尝试运行代码。我以前也分享过在线运行Matlab的方法。
Matlab在线执行
不懂代码也没关系。本模型最重要的参数为5个,包括电感、电容、电阻、驱动电压和开关频率。您可以尝试将其修改为不同的值,以计算不同情况下电阻的功率。您也可以收集并替换相关参数以获得电阻的功率。
需要指出的是,这些参数对结果影响很大,所以我就不一一解释区别了。
Fclk=1000000; %PWM频率为1MHz U0 = 10; %电压幅值10V Rs = 20; 串联电阻为20%Ω ESL= 10^(-8); %走线电感10nH C= 10^(-9); %线电感为1nF Fs=1000*Fclk; 基频采样率为1000倍 Num_T=100; 100个周期的信号分析% L=(Fs/Fclk)*Num_T; 0周期信号长度(采样总点) T=1/Fs; %采样周期 t=(1:L)*T; %时间长度 N=length(t); LEN_PWM=zeros(1,N); %定义PWM信号采样序列 for i=1:N %产生PWM信号-点序列 if mod(i,(Fs/Fclk))<Fs/(2*Fclk) LEN_PWM(i)=0; else LEN_PWM(i)=U0; end end figure; subplot(2,2,[1 2]); plot(t,LEN_PWM); %画出PWM信号 title('PWM波形','FontSize',18); set(gca,'XLim',[0 10/Fclk]);%x轴的数据显示范围 set(gca,'YLim',[-0.5 10.5]);%y轴的数据显示范围 xlabel('时间t (s)','FontSize',18); ylabel('电压/V','FontSize',18); X_LEN_PWM=abs(fft(LEN_PWM)); ?t傅里叶变换 Fn=Fs*(0:(L/2))/L; 每个谐波频率序列% An=X_LEN_PWM(1:L/2 1)*2/L; 每个谐波的幅值序列% Zn=Rs Fn.*ESL.*2.*pi.*1i 1./(Fn.*C.*2.*pi.*1i); 每个频率对应的总阻抗序列 Pn=(((0.707.*An)./abs(Zn)).^2)*Rs; 每个频率的功率序列%,电压有效值除以阻抗电流 Pall=sum(Pn) %总功率 subplot(2,2,3); semilogx(Fn,An); title('PWM频谱','FontSize',18); xlabel('f (Hz)','FontSize',18); ylabel(幅度,'FontSize',18); subplot(2,2,4); semilogx(Fn,Pn); title([电阻功率谱-总功率=',num2str(Pall),'W'],'FontSize',18); xlabel('f (Hz)','FontSize',18); ylabel(幅度,'FontSize',18);
:
可使用电容脉冲波充放电造成的损失P_loss=VDD2×C_load×f快速估计损耗发生在脉冲源的内阻、导线上的电阻和电容内阻上。只要电容上的脉冲波形与原波形相似,就可以用次公式估计,与空比无关。