上節(jié)學(xué)個(gè)Antenna:HFSS腳本建模入門一文中,對(duì)HFSS的腳本錄制和利用matlab-hfssapi建模進(jìn)行了入門介紹,今天我們就利用HFSS-API來設(shè)計(jì)指數(shù)漸變傳輸線,實(shí)現(xiàn)寬帶高性能的阻抗匹配。
本文使用的電磁仿真軟件為ANSYS Electronics Desktop Version 2017.2.0
0 1微帶線尺寸計(jì)算
已知基板的厚度,介電常數(shù)和微帶線的線寬可以利用微波射頻網(wǎng)的微帶線特征阻抗計(jì)算器進(jìn)行特性阻抗的快速計(jì)算。那么已知基板的厚度,介電常數(shù)和微帶線的特性阻抗,如何計(jì)算其對(duì)應(yīng)的線寬呢?
相應(yīng)的理論公式已在上面的微波工程一書中詳細(xì)闡述,現(xiàn)摘取部分關(guān)鍵內(nèi)容如下:
先計(jì)算等效介電常數(shù):對(duì)于給定的特性阻抗和介電常數(shù),比值可求得:(公式左右滑動(dòng)可看全部):
已知基板介電常數(shù)、厚度,以及需要得到的微帶線阻抗值可以根據(jù)上述理論公式進(jìn)行Matlab代碼編寫:
function W=microstrip_Zcal(Er,H,Z0)
%Unit:mm,GHz,ohm
%計(jì)算中間變量
A=Z0/60*sqrt((Er+1)/2)+(Er-1)/(Er+1)*(0.23+0.11/Er);
B=377*pi/(2*Z0*sqrt(Er)); W_d_A=8*exp(A)/(exp(2*A)-2); W_d_B=2/pi*(B-1-log(2*B-1)+(Er-1)/(2*Er)*(log(B-1)+0.39-0.61/Er));
if(W_d_A《2)
W_d=W_d_A; else W_d=W_d_B; end %計(jì)算微帶線寬度 W=W_d*H;end
對(duì)于介電常數(shù)3.66、厚度1mm的基板,100歐姆微帶線理論計(jì)算的線寬為0.5467mm
對(duì)于介電常數(shù)2.2、厚度0.508mm的基板,50歐姆微帶線理論計(jì)算的線寬為1.5652mm
0 2指數(shù)漸變傳輸線理論
多節(jié)匹配變換器的理論這里不做過多闡述。如下圖所示,若傳輸線各位置的特性阻抗按一定規(guī)律進(jìn)行漸變,則可以通過改變漸變的類型得到不同的通帶特性。本節(jié)對(duì)指數(shù)漸變傳輸線進(jìn)行分析和建模。
對(duì)應(yīng)上述圖示,指數(shù)漸變傳輸線滿足:
因?yàn)椋虼擞小?/p>
結(jié)合小反射理論推導(dǎo)出輸入端的反射系數(shù):(公式左右滑動(dòng)可看全部):
為了降低低頻率處的失配,漸變傳輸線的長(zhǎng)度應(yīng)該大于介質(zhì)中的半波長(zhǎng),即為。
0 3微帶線漸變傳輸線的HFSS-API快速設(shè)計(jì)
有了前二節(jié)的理論支撐,在限定長(zhǎng)度的情況下,已知負(fù)載阻抗為,輸入端參考阻抗為,微帶線各位置的特性阻抗值可以確定,接著反向計(jì)算微帶線線寬。
代碼僅供參考,筆者自行根據(jù)個(gè)人習(xí)慣自行修改過hfssapi文件,參數(shù)傳入等存在差異
clear;clc;%參數(shù)輸入Z0=50;ZL=100;%Z0:輸入的參考阻抗,ZL:負(fù)載阻抗lambda=300/3;%自定義工作頻率下限的波長(zhǎng):mmL=50;%漸變傳輸線的長(zhǎng)度:mmL0=linspace(0,L,251);tot_num=length(L0);dL=L0(2)-L0(1);%離散化的傳輸線,每節(jié)的長(zhǎng)度%指數(shù)漸變傳輸線a=1/L*log(ZL/Z0);Z=Z0*exp(a*L0);plot(L0,Z);%獲取m文件當(dāng)前路徑p1 = mfilename(‘fullpath’);i=findstr(p1,‘’);p1=p1(1:i(end));pp=strcat(p1,‘hfssapi’);%與m文件同級(jí)的文件夾中的hfssapi加入到路徑中addpath([pp ‘/3dmodeler’]);
addpath([pp ‘/general’]); addpath([pp ‘/analysis’]); addpath([pp ‘/boundary/’]); %vbs腳本路徑tmpScriptFile = ‘C:UsersDellDesktopexp_transmissionLine.vbs’;%計(jì)算微帶線的線寬:mmEr=2.2;H=0.508;
Wcal=zeros(1,tot_num);for num=1:tot_num zcal=Z(num); Wcal(num)=microstrip_Zcal(Er,H,zcal);end
%vbs腳本建模:此處引用hfssapi為自己修改過后的,參數(shù)傳入有差異;%不可直接復(fù)制運(yùn)行,當(dāng)作偽代碼,僅供參考%建立HFSS模型文件.fid = fopen(tmpScriptFile, ‘wt’);% 建立一個(gè)新的HFSS project和design.hfssNewProject(fid);hfssInsertDesign(fid, ‘gradually_changed_tri_transmissionLine’);
% 創(chuàng)建新的PolylinePoints=zeros(2*tot_num,3);for num=1:tot_num Points(num,1:3)=[-Wcal(num)/2,(num-1)*dL,0];endPoints((tot_num+1):end,1)=abs(flipud(Points(1:tot_num,1)));Points((tot_num+1):end,2)=flipud(Points(1:tot_num,2));Points((tot_num+1):end,3)=flipud(Points(1:tot_num,3));hfssPolyline(fid, ‘exp_transmissionLine’, Points, ‘mm’, 1, ‘Line’, [255, 255, 0],0)hfssSetColor(fid, ‘exp_transmissionLine’, [255,255,0]); hfssSetTransparency(fid, {‘exp_transmissionLine’}, 0); hfssAssignPE(fid, ‘Line’, {‘exp_transmissionLine’});
% Create the substratehfssBox(fid, ‘substrate’,[-40/2,0,0],[40,L,-H],‘mm’,1);hfssAssignMaterial(fid, ‘substrate’, ‘Rogers RT/duroid 5880 (tm)’); hfssSetTransparency(fid, {‘substrate’}, 0.2);
% Create the groundhfssRectangle(fid, ‘GroundPlane’, ‘Z’, [-40/2,0,-H],40,L, ‘mm’,1); hfssSetColor(fid, ‘GroundPlane’, [192, 192, 192]); hfssSetTransparency(fid, {‘GroundPlane’}, 0.4); hfssAssignPE(fid, ‘PerfE_Ground’, {‘GroundPlane’});
%------------空氣盒------------% hfssBox(fid, ‘AirBox’, [-40/2-lambda/4,0,-H-lambda/4],[40+lambda/2, L, H+lambda/2], ‘mm’,1);
hfssSetTransparency(fid, {‘AirBox’}, 0.9); hfssAssignRadiation(fid, ‘Rad1’, ‘AirBox’); %-----------設(shè)置端口---------------% hfssRectangle(fid, ‘waveport1’,
‘Y’, [-Wcal(1)*6/2,0,-H],5*H,Wcal(1)*6, ‘mm’,1); hfssRectangle(fid, ‘waveport2’, ‘Y’, [-Wcal(end)*6/2,L,-H],5*H,Wcal(end)*6, ‘mm’,1); hfssSetColor(fid, ‘waveport1’, [255, 0, 0]); hfssSetColor(fid, ‘waveport2’,
[255, 0, 0]); hfssAssignWavePort(fid, ‘Port1’, ‘waveport1’, 1, false, [0,0,-H], [0,L,-H], ‘mm’);hfssAssignWavePort(fid, ‘Port2’, ‘waveport2’, 1, false, [0,0,0], [0,L,0], ‘mm’);%-----------改變積分終點(diǎn)--------------% hfssInsertSolution(fid, ‘Setup3000MHz’, 3, 0.02, 15);hfssInterpolatingSweep(fid, ‘Sweep3to10GHz’, ‘Setup3000MHz’,3, 10,351);
% Close the HFSS Script File.fclose(fid);
function W=microstrip_Zcal(Er,H,Z0) %Unit:mm,GHz,ohm %計(jì)算中間變量 A=Z0/60*sqrt((Er+1)/2)+(Er-1)/(Er+1)*(0.23+0.11/Er); B=377*pi/(2*Z0*sqrt(Er)); W_d_A=8*exp(A)/(exp(2*A)-2);
W_d_B=2/pi*(B-1-log(2*B-1)+(Er-1)/(2*Er)*(log(B-1)+0.39-0.61/Er)); if(W_d_A《2) W_d=W_d_A; else W_d=W_d_B; end %計(jì)算微帶線寬度 W=W_d*H;end
這里直接給出可執(zhí)行的vbs腳本文件(第四小節(jié)-資源分享有下載鏈接),vbs腳本建模的好處就是不管對(duì)方是用hfss15還是hfss18,都可以通過下面圖片的操作,Run script進(jìn)行模型的復(fù)構(gòu)。
原文標(biāo)題:學(xué)個(gè)Antenna:利用HFSS-API設(shè)計(jì)指數(shù)漸變傳輸線
文章出處:【微信公眾號(hào):微波射頻網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
責(zé)任編輯:haq
-
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7508瀏覽量
88068 -
hfss
+關(guān)注
關(guān)注
32文章
167瀏覽量
50321
原文標(biāo)題:學(xué)個(gè)Antenna:利用HFSS-API設(shè)計(jì)指數(shù)漸變傳輸線
文章出處:【微信號(hào):mwrfnet,微信公眾號(hào):微波射頻網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論