基于MATLAB的HFSS偶極子天線設(shè)計與準(zhǔn)確度分析
1. 前言
Matlab和HFSS相結(jié)合設(shè)計分析天線,不僅發(fā)揮了matlab強大的數(shù)據(jù)分析功能,同時還是實現(xiàn)天線設(shè)計的自動化。這對于復(fù)雜的陣列天線而言無疑是一個十分有用的功能。通過兩者相結(jié)合組成的設(shè)計框架,實現(xiàn)了自動化的建模,降低了軟件使用的難度,同時增強了兩者的耦合度與集成度,提升天線工程師的設(shè)計效率。
2. 偶極子天線理論
2.1 概述
智能天線如圖1所示,可以跟蹤目標(biāo)調(diào)整天線的輻射方向圖。圖中的天線可以是多個偶極子天線組成的陣列,通過一定的相位差合成一個窄波束的方向圖。
圖1. 智能天線
偶極子天線是一種經(jīng)典的天線形式,偶極子天線可分為電偶極子和磁偶極子天線兩種形態(tài)。其中,電偶極子天線在其 E 面,輻射方向圖形狀為∞,在 H 面,其輻射方向圖形狀為O形。而磁偶極子在 E 面,H 面的輻射方向圖正好與電偶極子的輻射方向圖相反。
目前偶極子天線主要朝著寬帶化、小型化發(fā)展。比較新穎的寬帶偶極子天線有以下幾種。
2.2 電偶極子天線
電偶極子天線的的物理長度遠(yuǎn)小于其波長,此時此導(dǎo)線上各處電流I可看作均勻分布,如圖2所示,通過失位法分析電偶極子產(chǎn)生的電磁場。
圖2. 電偶極子模型
天線在遠(yuǎn)場的輻射性能見下式。
由此可知,此時在遠(yuǎn)場天線只存在上述公式中的兩個分量即Eθ和Hφ,并且相互垂直同向,這些特性表明該天線可以向外傳播能量。
圖3. 輻射示意圖
2.3 磁偶極子天線
磁偶極子是為了類比電偶極子而假想的概念模型,通常將磁偶極子模型等效為一個極小型的載有電流的圓環(huán)。假設(shè)xoy平面上一小圓環(huán)的半徑為a,其遠(yuǎn)小于波長,如圖4所示,使用矢位法分析該天線的電場強度和磁場強度。
圖4. 磁偶極子
經(jīng)過推導(dǎo)得到下式的電場強度和磁場強度。
對比電偶極子的電場強度和磁場強度,兩種偶極子天線存在一定差異,兩種天線存在90°的相位差,即兩種的方向圖正好相反。
半波長偶極天線的輸入阻抗是由尋=73+ j42.5歐姆。
2.4 寬帶電磁偶極子天線
1954年Calvin提出了磁電偶極子天線,下面將以一種寬帶電磁偶極子天線為例,說明其工作原理。該天線主要由E形貼片和折疊垂直短路貼片組成。E 形電偶極子貼片一般具有多個相鄰的諧振頻點,從而實現(xiàn)了擴寬工作頻帶;折疊垂直短路貼片與其之間的地板可以等效為磁偶極子。下圖是該天線的表面電流分布圖。
圖5. 天線表面電流分布
上圖為該寬帶天線在同一周期內(nèi)不同時刻的表面電流分布,當(dāng)t=T/2時,電偶極子處于工作的狀態(tài),天線的電流大部分都存在于E貼片上,折疊垂直端路貼片上只有很少的電流;而在t=T/4時,E形貼片上的電流很少,折疊垂直短路貼片上的表面電流增大,此時天線處于磁偶極子工作狀態(tài)。可見,其電偶極子和磁偶極子有效結(jié)合在一起,就可以在遠(yuǎn)場實現(xiàn)良好的互補型輻射方向圖,這也是電磁偶極子天線的基本理論依據(jù)。
圖6. 電磁偶極子輻射特性
兩者的遠(yuǎn)場輻射方向圖存在互補的關(guān)系。通常情況下,電磁偶極子天線由正交放置且同時激勵的電偶極子和磁偶極子組成,電偶極子在 E 面的方向圖是平 8 字,對于磁偶極子,其是 O 字形狀;在 H 面電偶極子的方向圖是 O 字形狀,而對于磁偶極子,其是平 8 字形狀。將電偶極子和磁偶極子采用恰當(dāng)?shù)姆绞浇Y(jié)合在一起,就可以在 E 面和 H 面獲得相似的心形輻射方向圖,電偶極子和磁偶極子在 E 面和 H 面疊加后的輻射方向圖具有良好的相似性,更為關(guān)鍵的是,得到的輻射方向圖后瓣都很小。
3. 基于matlab的偶極子天線設(shè)計程序
3.1 設(shè)計流程
基于Matlab的HFSS天線是指編寫matlab程序并由該程序生成對應(yīng)的腳本文件,接著再由HFSS調(diào)用該腳本文件最終實現(xiàn)天線設(shè)計的自動化過程。
與手動進(jìn)行天線設(shè)計相類似,腳本語言設(shè)計天線遵從以下流程,首先使用啟動HFSS命令開啟軟件,接著新建工程,在該工程中建立天線模型,依次設(shè)置各參數(shù)后開始仿真。
按照上述流程使用matlab控制HFSS生成的部分腳本內(nèi)容如下:
Set oHfssApp = CreateObject("AnsoftHfss.HfssScriptInterface") Set oDesktop = oHfssApp.GetAppDesktop() oDesktop.RestoreWindow oDesktop.NewProject Set oProject = oDesktop.GetActiveProject oProject.InsertDesign "HFSS", " dio ", "DrivenModal", "" Set oDesign = oProject.SetActiveDesign("dio") Set oEditor = oDesign.SetActiveEditor("3D Modeler") oEditor.CreateCylinder _ Array("NAME:CylinderParameters", _ "XCenter:=", "0.00100meter", _ "YCenter:=", "0.000000meter", _ "ZCenter:=", "0.000000meter", _ "Radius:=", "0.020000meter", _ "Height:=", "0.028000meter", _ "WhichAxis:=", "X"), _ Array("NAME:Attributes", _ "Name:=", "mydipole_1", _ "Flags:=", "", _ "Color:=", "(255 255 0)", _ "Transparency:=", 0, _ "PartCoordinateSystem:=", "Global", _ "MaterialName:=", "vacuum", _ "SolveInside:=", true) oEditor.CreateCylinder _ Array("NAME:CylinderParameters", _ "XCenter:=", "-0.001000meter", _ "YCenter:=", "0.000000meter", _ "ZCenter:=", "0.000000meter", _ "Radius:=", "0.020000meter", _ "Height:=", "-0.028000meter", _ "WhichAxis:=", "X"), _ Array("NAME:Attributes", _ "Name:=", " mydipole_2", _ "Flags:=", "", _ "Color:=", "(255 255 0)", _ "Transparency:=", 0, _ "PartCoordinateSystem:=", "Global", _ "MaterialName:=", "vacuum", _ "SolveInside:=", true) Set oModule = oDesign.GetModule("BoundarySetup") oModule.AssignPerfectE _ Array("NAME:Antennas", _ "InfGroundPlane:=", false, _ "Objects:=", _ Array("mydipole_1"," mydipole_2")) oEditor.CreateRectangle _ Array("NAME:RectangleParameters", _ "IsCovered:=", true, _ "XStart:=", "-0.025000meter", _ "YStart:=", "0.000000meter", _ "ZStart:=", "-0.020000meter", _ "Width:=", "0.040000meter", _ "Height:=", "0.050000meter", _ "WhichAxis:=", "Y"), _ Array("NAME:Attributes", _ "Name:=", "GapSource", _ "Flags:=", "", _ "Color:=", "(255 255 0)", _ "Transparency:=", 5.000000e-01, _ "PartCoordinateSystem:=", "Global", _ "MaterialName:=", "vacuum", _ "SolveInside:=", true) oEditor.CreateBox _ Array("NAME:BoxParameters", _ "XPosition:=", "-1.000000meter", _ "YPosition:=", "-0.500000meter", _ "ZPosition:=", "-0.500000meter", _ "XSize:=", "2.000000meter", _ "YSize:=", "1.000000meter", _ "ZSize:=", "1.000000meter"), _ Array("NAME:Attributes", _ "Name:=", "AirBox", _ "Flags:=", "", _ "Color:=", "(255 255 0)", _ "Transparency:=", 0.75, _ "PartCoordinateSystem:=", "Global", _ "MaterialName:=", "vacuum", _ "SolveInside:=", true) Set oModule = oDesign.GetModule("BoundarySetup") oModule.AssignRadiation _ Array("NAME:ABC", _ "Objects:=", Array("AirBox")) Set oModule = oDesign.GetModule("AnalysisSetup") oModule.InsertSetup "HfssDriven", _ Array("NAME:Setup150MHz", _ "Frequency:=", "2.50000GHz", _ "PortsOnly:=", false, _ "maxDeltaS:=", 0.020000, _ "UseMatrixConv:=", false, _ "MaximumPasses:=", 25, _ "MinimumPasses:=", 1, _ "MinimumConvergedPasses:=", 1, _ "PercentRefinement:=", 20, _ "ReducedSolutionBasis:=", false, _ "DoLambdaRefine:=", true, _ "DoMaterialLambda:=", true, _ "Target:=", 0.3333, _ "PortAccuracy:=", 2, _ "SetPortMinMaxTri:=", false) |
3.2 空氣盒子對偶極子天線仿真結(jié)果的影響
這里將天線的空氣盒的大小設(shè)置為變量AIR,研究AIR的尺寸對天線仿真結(jié)果的影響程度。對應(yīng)的程序設(shè)置內(nèi)容如下。
圖7. 天線仿真模型
這里在工作頻段內(nèi)計算了3個頻點,依次按照[λ/4,2λ]范圍調(diào)整空氣盒子的大小,對比天線S11參數(shù)的仿真計算結(jié)果,如下圖所示,可見隨著空氣盒子的尺寸大于天線中心頻率的一個波長時,此時的仿真結(jié)果的差異逐漸減少。由此可得出一下結(jié)論:當(dāng)天線空氣盒子的尺寸設(shè)置大于λ時,天線仿真的結(jié)果差異性較小;當(dāng)天線空氣盒子的尺寸小于λ/4時,此時的天線計算結(jié)果取決于空氣盒子的尺寸。