上節學個Antenna:HFSS腳本建模入門一文中,對HFSS的腳本錄制和利用matlab-hfssapi建模進行了入門介紹,今天我們就利用HFSS-API來設計指數漸變傳輸線,實現寬帶高性能的阻抗匹配。
本文使用的電磁仿真軟件為ANSYS Electronics Desktop Version 2017.2.0
0 1微帶線尺寸計算
已知基板的厚度,介電常數和微帶線的線寬可以利用微波射頻網的微帶線特征阻抗計算器進行特性阻抗的快速計算。那么已知基板的厚度,介電常數和微帶線的特性阻抗,如何計算其對應的線寬呢?
相應的理論公式已在上面的微波工程一書中詳細闡述,現摘取部分關鍵內容如下:
先計算等效介電常數:對于給定的特性阻抗和介電常數,比值可求得:(公式左右滑動可看全部):
已知基板介電常數、厚度,以及需要得到的微帶線阻抗值可以根據上述理論公式進行Matlab代碼編寫:
function W=microstrip_Zcal(Er,H,Z0)
%Unit:mm,GHz,ohm
%計算中間變量
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 %計算微帶線寬度 W=W_d*H;end
對于介電常數3.66、厚度1mm的基板,100歐姆微帶線理論計算的線寬為0.5467mm
對于介電常數2.2、厚度0.508mm的基板,50歐姆微帶線理論計算的線寬為1.5652mm
0 2指數漸變傳輸線理論
多節匹配變換器的理論這里不做過多闡述。如下圖所示,若傳輸線各位置的特性阻抗按一定規律進行漸變,則可以通過改變漸變的類型得到不同的通帶特性。本節對指數漸變傳輸線進行分析和建模。
對應上述圖示,指數漸變傳輸線滿足:
因為,因此有。
結合小反射理論推導出輸入端的反射系數:(公式左右滑動可看全部):
為了降低低頻率處的失配,漸變傳輸線的長度應該大于介質中的半波長,即為。
0 3微帶線漸變傳輸線的HFSS-API快速設計
有了前二節的理論支撐,在限定長度的情況下,已知負載阻抗為,輸入端參考阻抗為,微帶線各位置的特性阻抗值可以確定,接著反向計算微帶線線寬。
代碼僅供參考,筆者自行根據個人習慣自行修改過hfssapi文件,參數傳入等存在差異
clear;clc;%參數輸入Z0=50;ZL=100;%Z0:輸入的參考阻抗,ZL:負載阻抗lambda=300/3;%自定義工作頻率下限的波長:mmL=50;%漸變傳輸線的長度:mmL0=linspace(0,L,251);tot_num=length(L0);dL=L0(2)-L0(1);%離散化的傳輸線,每節的長度%指數漸變傳輸線a=1/L*log(ZL/Z0);Z=Z0*exp(a*L0);plot(L0,Z);%獲取m文件當前路徑p1 = mfilename(‘fullpath’);i=findstr(p1,‘’);p1=p1(1:i(end));pp=strcat(p1,‘hfssapi’);%與m文件同級的文件夾中的hfssapi加入到路徑中addpath([pp ‘/3dmodeler’]);
addpath([pp ‘/general’]); addpath([pp ‘/analysis’]); addpath([pp ‘/boundary/’]); %vbs腳本路徑tmpScriptFile = ‘C:UsersDellDesktopexp_transmissionLine.vbs’;%計算微帶線的線寬: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為自己修改過后的,參數傳入有差異;%不可直接復制運行,當作偽代碼,僅供參考%建立HFSS模型文件.fid = fopen(tmpScriptFile, ‘wt’);% 建立一個新的HFSS project和design.hfssNewProject(fid);hfssInsertDesign(fid, ‘gradually_changed_tri_transmissionLine’);
% 創建新的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’); %-----------設置端口---------------% 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’);%-----------改變積分終點--------------% 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 %計算中間變量 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 %計算微帶線寬度 W=W_d*H;end
這里直接給出可執行的vbs腳本文件(第四小節-資源分享有下載鏈接),vbs腳本建模的好處就是不管對方是用hfss15還是hfss18,都可以通過下面圖片的操作,Run script進行模型的復構。
原文標題:學個Antenna:利用HFSS-API設計指數漸變傳輸線
文章出處:【微信公眾號:微波射頻網】歡迎添加關注!文章轉載請注明出處。
責任編輯:haq
-
計算機
+關注
關注
19文章
7425瀏覽量
87722 -
hfss
+關注
關注
32文章
167瀏覽量
50257
原文標題:學個Antenna:利用HFSS-API設計指數漸變傳輸線
文章出處:【微信號:mwrfnet,微信公眾號:微波射頻網】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論