使用微带线快速进行电感、电容的等效(Matlab代码实现)
目录
- 使用微带线快速进行电感、电容的等效(Matlab代码实现)
- 1、高低阻抗微带线的近似等效
- 2、等效电容的ADS测试
- 3、等效电感的ADS测试
1、高低阻抗微带线的近似等效
更加精确的等效方法参考(更复杂):
https://blog.csdn.net/rzchong1988/article/details/113615378
https://blog.csdn.net/rzchong1988/article/details/113591915
此处参考其他论文的说明,简单来说就是用高低阻抗线进行等效,其中高阻抗微带线等效为电感,低阻抗微带线等效为电容:
我写了一个Matlab脚本,给定要等效的电容数值、介质板介电常数和高度、还有高低阻抗线的阻抗就能得到等效的微带线的宽度和长度,其中microstrip_calW函数来自微带线特性阻抗快速计算—根据介质板参数和特性阻抗得到线宽(Matlab代码):
clear all
clc
% 初始化
L=0;
C=0;
% 设置参数,如果是电容则设置电容,如果是电感就设置电感
% L=1E-9;
C=0.31697E-12;
% 介质板定义
epsilon=12.9;% 介质板的介电常数
H=100e-6;% 介质板的高度,单位m
Zoh=90;%高阻抗线阻抗
Zol=20;%低阻抗线阻抗
c=299792458;%光速
loh=L*c/(Zoh*sqrt(epsilon));
lol=C*Zol*c/sqrt(epsilon);
Woh=microstrip_calW(Zoh,epsilon,H);
Wol=microstrip_calW(Zol,epsilon,H);
if L~=0
disp(['电感值为:',num2str(L*1e9),'nH,微带线长度:',num2str(loh*1000),'mm,','微带线阻抗为:',num2str(Zoh),'欧姆,',',微带线宽度为:',num2str(Woh*1000),'mm'])
elseif C~=0
disp(['电容值为:',num2str(C*1e12),'pF,微带线长度:',num2str(lol*1000),'mm,','微带线阻抗为:',num2str(Zol),'欧姆',',微带线宽度为:',num2str(Wol*1000),'mm'])
else
disp('请输入电感或者电容数值')
end
2、等效电容的ADS测试
等效目标为C=0.31697E-12F的电容(也就是上面的代码),介质板的介电常数为epsilon=12.9,介质板的高度H=100um。此处等效的是电容,因此使用低阻抗线等效,假设使用的低阻抗线特性阻抗为20欧姆。Matlab运算得到的结果为:
在ADS中构建电路,将微带线等效和理想电容进行对比:
由此可见等效还是比较好的:
3、等效电感的ADS测试
等效目标为L=1nH的电容(也就是上面的代码),介质板的介电常数为epsilon=12.9,介质板的高度H=100um,代码如下:
clear all
clc
% 初始化
L=0;
C=0;
% 设置参数,如果是电容则设置电容,如果是电感就设置电感
L=1E-9;
% C=0.31697E-12;
% 介质板定义
epsilon=12.9;% 介质板的介电常数
H=100e-6;% 介质板的高度,单位m
Zoh=90;%高阻抗线阻抗
Zol=20;%低阻抗线阻抗
c=299792458;%光速
loh=L*c/(Zoh*sqrt(epsilon));
lol=C*Zol*c/sqrt(epsilon);
Woh=microstrip_calW(Zoh,epsilon,H);
Wol=microstrip_calW(Zol,epsilon,H);
if L~=0
disp(['电感值为:',num2str(L*1e9),'nH,微带线长度:',num2str(loh*1000),'mm,','微带线阻抗为:',num2str(Zoh),'欧姆,',',微带线宽度为:',num2str(Woh*1000),'mm'])
elseif C~=0
disp(['电容值为:',num2str(C*1e12),'pF,微带线长度:',num2str(lol*1000),'mm,','微带线阻抗为:',num2str(Zol),'欧姆',',微带线宽度为:',num2str(Wol*1000),'mm'])
else
disp('请输入电感或者电容数值')
end
运行结果如下所示:
根据结果构建ADS图:
仿真对比结果如下所示,具有一定的等效能力: