《feko应用16_偶极子阵列_天线罩》由会员分享,可在线阅读,更多相关《feko应用16_偶极子阵列_天线罩(18页珍藏版)》请在金锄头文库上搜索。
1、FEKO 应用 16:天线罩透波内容:偶极子阵列天线(带反射板)+单层天线罩一、设计仿真流程二、模型描述工作频率:freq=8GHz天线:采用 91 个偶极子辐射单元+反射板天线振子长度:0.45*lam,极化方向在 X 方向天线阵列单元排布规律参见文件:antarrayLayOut.inc反射板离开辐射振子的距离为:0.25*lam反射板半径:R=110 mm天线罩:相对介电常数:epsr=2.23介质损耗正切:tand=0.015天线罩母线文件从 radome.cfx 文件中读入天线阵列的端口和激励的复制在 EditFEKO 中完成。三、主要流程:启动 CadFEKO,新建一个工程: an
2、tarray_with_Radome.cfx,在以下的各个操作过程中,可以即时保存做个的任何修正。3.1:定义长度单位:默认单位是 m点击菜单“Home”中的图标按钮 “Model unit”,在“Model unit”对话框中,选择mm;3.2:定义容器大小:默认单位是 5e+02点击菜单“Home”中的图标按钮 “Model Extents”,在“Geometry extents”对话框中,设置 Maximum coordinate 为 5E+03;3.3:定义变量:在 CadFEKO 中左侧的树型浏览器中双击 “Variables”节点,依次定义如下变量:工作频率 freq=8e9 工作
3、波长 lam=c0/freq/0.001介电常数 epsr=2.33 损耗正切 tand=0.015天线反射板半径: R=110 天线反射板离偶极子阵列的距离:offset=-lam/4天线罩网格剖分标准:radome_mesh=lam/3.53.4:定义材料:在 CadFEKO 中左侧的树型浏览器中选中 “Media”节点,点击鼠标右键,选择“Dielectric”,在弹出的“Dielectric medium properties”对话框中,定义相对介电常数(Relative permittivity)和介质损耗正切值(Dielectric loss tangent) ,名称定义为“rad
4、ome”:3.5:模型建立:天线模型:在“Construct”菜单中,点击“Line” ,弹出“Create line”对话框,定义线段的起始点坐标:Start Point (U: -lam*0.225, V: 0, N: 0.0), End point (U: lam*0.225, V:0.0, N:0.0),Label: dipole,点击“Create ”。天线模型反射板:在“Construct”菜单中,点击“Ellipse” ,弹出“Create Ellipse”对话框,定义中心位置坐标:Centre Point (U: 0.0, V: 0.0 , N: offset), Radius
5、 (U)=r, Radius(V)=r, Label: ref,点击“Create ”。天线罩模型:在“Home”菜单中,点击 “Import-CadFEKO model (*.cfx) ”,选择自带的“radome.cfx ”文件,在弹出的“Import CADFEKO model”对话框中,按照如下选项设置,点击 OK。完成导入之后,可以发现在左侧树型浏览器的“Model-Geometry”中有“radome_base”、 “radome_inner”、 “radome_outer”,同时选中这三个模型,点击鼠标右键,选择“Apply-Union” ,新生成的模型为“Union1 ”;选中
6、新模型“Union1” ,点击鼠标右键“Apply-Spin” ,在弹出的“Spin”对话框中,按照下图进行设置:旋转中心 Origin:(U:0.0, V:0.0, N:0.0), 旋转轴 Axis direction (U:0.0, V:0.0, N:1.0), 旋转角 Angledegrees:360;点击“Create ”,把新生成的模型“Spin1 ”更名为“radome ”: 天线罩模型材料设置:在左侧树型浏览器的“Geometry ”中,选中 Radome,在详细树型浏览器中,展开其“Regions” ,选择“Region?free space”,点击鼠标右键选择“Propert
7、ies”,在弹出的“Region properties”对话框中,设置 Region medium 为“radome ”;在“Region properties”对话框中,进入 “Meshing”标签:勾选:Local mesh sizeMesh size: radome_mesh点击:OK3.6:天线端口设置:在左侧树型浏览器的“Model-Geometry”中选择“dipole” ,在其“details”树浏览器中展开“Wires ”节点,选择“Wire1 ”,点击鼠标右键选择 “Create port-Wire port”,在弹出的对话框“Create wire port”中,把“Loc
8、ation on wire”设置为“Middle ”,Label: Port1,点击“Create” 。3.7:电参数与求解设置:在左侧树型浏览器中,由“Construct”切换到“Configuration”:工作频率设置:展开“Global ”,双击“Frequency ”,弹出“Solution frequency”对话框:选择:Single frequency;Frequency (Hz): freq点击 OK激励设置:在“Global”中,选中 “Sources”点击鼠标右键选择“Voltage Source”,弹出“Add voltage source”对话框,采用默认设置,点击“
9、Create” 。辐射远场设置:在“Configuration specific”中,选中“Requests”点击鼠标右键选择“Far fields”,弹出“Request far fields”对话框:点击“3D pattern”,修正步长“Increment”中 Theta 的值为 2,Label:ff3D,点击Add;点击“Vertical cut (UN plane)”按钮,修正步长“Increment”中 Theta 的值为1, label:ffXOZ,点击“Create ”。求解方法设置:点击“Solve/Run”菜单,弹出“Solver settings”对话框,进入“MLFMM
10、/ACA”标签,选择“Solve model with the multilevel fast multipole method (MLFMM)”;为了降低内存,加速收敛,可以修正 MLFMM 的预调件(默认预调件是 SuperLU-8193,可以修正为 SPAI-8192)和迭代残差(0.009 的计算精度足够,默认值是 0.003) ,在这里我们设置为 0.01:在“Solver settings”对话框中,进入“Preconditioner”标签,设置如下:Stopping criterion for residuum: 0.01Preconditioner: Sparse approx
11、imate inverse (SPAI) (8192) 3.8:网格划分:点击菜单“Mesh-Create mesh”弹出“Create mesh”对话框,设置如下:网格剖分方法 Mesh size : Custom * 采用自定义方式三角形面元棱边长度 Triangle edge length: lam/6线段剖分单元长度 Wire segment length: lam/15线段剖分单元半径:Wire segment radius: lam/90点击:Mesh 生成网格。3.9:阵列的生成:由于阵列的单元(93 个)比较多,在 CadFEKO 中为每个单元设定端口和激励效率相对比较低,由于
12、阵列的单元尺寸是相同的,所以可以在 EditFEKO 中通过循环来快速生成阵列,并完成对端口激励信号的快速定义。为了保住 CadFEKO 与 EditFEKO 设置的一致性,我们在进入到 EditFEKO 界面的时候,可以锁定 CadFEKO 中的求解设置,操作如下:在 CadFEKO 中,先保存工程文件,点击菜单 “Solve/Run”中的“EDITFEKO”按钮,启动 EditFEKO,弹出“Disable CadFEKO Solution configuration?”对话框,如下,点击“Yes”即可进入 EditFEKO 界面。每一个工程文件都会对应一个脚本文件(后缀为.pre) ,该
13、工程自动生成的脚本如下,可以发现在该脚本中包含了:计算方法、材料设置、求解设置、激励、计算远场等全面信息,接下来我们需要在“IN ”函数下边写循环生成天线阵列,采用的 TG 函数(来复制、平移、旋转天线单元) ,在 Sources 部分,写循环来对端口进行信号加载。把下边的脚本(或者从附带的脚本文件 arrayGeneration.txt 中复制)复制到“IN”函数的下边:* Generate the array!for #i=1 to 92#x=fileread(arrayLayOut.inc,#i+2,1)#y=fileread(arrayLayOut.inc,#i+2,2)#z=file
14、read(arrayLayOut.inc,#i+2,3)TG: 1 : dipole.wire1 : dipole.wire1 : #i : 2 : : : : #x : #y : #zTG: 1 : dipole.wire1.port1 : dipole.wire1.port1 : #i: 2 : : : : #x : #y : #z!next复制之后,EditFEKO 中的脚本如下:说明:函数 fileread()实现从某文件中(如: “arrayLayOut.inc”)读取某行、某列的数值, #x=fileread(“arrayLayOut.inc”,#i+2,1)是从文件 “array
15、Layout.inc”中读取第 i+2 行、 1列的数据赋给 x 变量;在 EditFEKO,保存修改。把光标定在“Sources”下边,把 A1 一行注释掉,即:在 A1 前边添加“*” ,把下边的脚本复制到 A1 一行的下边(或者从附带的脚本文件 arraySource.txt 中复制) 。* Sources!for #i=1 to 93!if #i=1 thenA1: 0 : dipole.Wire1.Port#i : 0 : : : 1 : 0 * VoltageSource1!elseA1: 1 : dipole.Wire1.Port#i : 0 : : : 1 : 0 * Volt
16、ageSource#i!endif!next修改后的 EditFEKO 脚本如下:在 EditFEKO 中保存做过的修改,点击“Solve/Run”菜单中的“PreFEKO” ,检查有无错误,无误之后,可以点击“Solve/Run”中的“FEKO Solver”来提交计算。 (也可以关闭EditFEKO,在 CadFEKO 中提交计算,效果是一样的) ,在这里我们采用在 CadFEKO 中提交计算。3.10:后处理显示结果:计算完成之后,点击“Solve/Run”菜单中的“PostFEKO” ,启动后处理模块 PostFEKO显示结果。在 PostFEKO 中,启动之后默认显示是 3D 视图方式,点击“Far Field”按钮选择“ff3D”显示 3D 辐射方向图,在右侧面板中,勾选 dB。显示 2D 结果:点击“Home”