当前位置:首页 >> 信息与通信 >>

HFSS的近场仿真


HFSS 的近场仿真
1、 软件安装和破解 1)Hfss13 只能安装在 C 盘。 2 )破解时先在控制面板里关闭 Windows defender 并且退出 360 杀毒软件。否则 Ansoft2008fix.exe 会被当病毒杀掉。 3)将 Ansoft2008fix.exe 和 hfss12fix.exe 和 license.lic 拷贝到 HFSS13.0 目录

下。 4)以管理员身份运行 Ansoft2008fix.exe。 5)以管理员身份运行 hfss12fix.exe,连续 patch 六个 dll。 6)打开 hfss ,弹出框框,无视继续。依次点击 TOOls-options-general options-webupdate options-never

2、 模型的建立 2.1 设计变量

2.2 画模型

2.3

边界条件



2.4

激励源

因为 hfss 算出的场强为正弦波波峰,所以输入功率有一个 1/2 的因子。 2.5 加运算器

2.6 画近场线

近场线要一一对应。

3、 数据的导出

用 Add

Trace 添加曲线到同一页面, 用 Apply

Trace 改变频点。

导出为 csv 格式。 将横坐标反归一化。 画出三维曲面图。 4、 用脚本画近场线 Dim oAnsoftApp Dim oDesktop Dim oProject Dim oDesign Dim oEditor Dim oModule Set oAnsoftApp = CreateObject("AnsoftHfss.HfssScriptInterface") Set oDesktop = oAnsoftApp.GetAppDesktop() Set oProject = oDesktop.GetActiveProject() Set oDesign = oProject.GetActiveDesign()

Set oEditor = oDesign.SetActiveEditor("3D Modeler")

' 声明变量与常数. Dim zpos, Xnum, Ynum, xspan, yspan, dx, dy,pos Dim Units, index Dim y() Dim x() Units = "mm" pos=6000 '-----------------------------3 米 x 面---------------------------------------Units = InputBox("Select the units:"&Chr(13)& _ "(cm,mm,um,in,mil)", "Nearfield", "mm",pos,pos) zpos = InputBox("Input the Z plane position:","Nearfield", 3200,pos,pos) xspan = InputBox("Input X sampling span:","Nearfield", 4000,pos,pos) yspan = Xnum = Ynum = InputBox("Input Y sampling span:","Nearfield", 2100,pos,pos) InputBox("Input sampling number in X direction:", "Nearfield", 100,pos,pos) InputBox("Input sampling number in Y direction:", "Nearfield", 15,pos,pos)

Redim y(Ynum) dx=xspan/(Xnum-1) dy=yspan/(Ynum-1) y(0)="Position of y"

For n=1 To Ynum y(n)=-yspan/2 + (n-1)*dy ' 将 X 向点坐标存入数组 ZV alue=cstr(zpos) & Units YValue=cstr(y(n)) & Units XV aluemin=cstr(-xspan/2) & Units XV aluemmax=cstr(xspan/2) & Units index="lin3mx" & cstr(n) oEditor.CreatePolyline Array("NAME:PolylineParameters", "IsPolylineCovered:=", true, "IsPolylineClosed:=", _

false, Array("NAME:PolylinePoints", Array("NAME:PLPoint", "X:=", XValuemin, "Y:=", YValue, "Z:=", _ ZV alue), Array("NAME:PLPoint", "X:=", XV aluemmax, "Y:=", YValue, "Z:=", ZV alue)), _ Array("NAME:PolylineSegments", Array("NAME:P LSegment", "SegmentType:=", _ "Line", "StartIndex:=", 0, "NoOfPoints:=", 2)), Array("NAME:PolylineXSection", "XSectionType:=", _ "0mm", "XSectionHeight:=", "0mm", "XSectionNumSegments:=", "0", "XSectionBendType:=", _ "Corner")), Array("NAME:Attributes", "Name:=", index, "Flags :=", "", "Color:=", _ "", "MaterialV alue:=", "" & Chr(34) & "vacuum" & Chr(34) & "", "SolveInside:=", true) _ _ _ "None", "XSectionOrient:=", "Auto", "XSectionWidth:=", "0mm", "XSectionTopWidth:=",

"(132 132 193)", "Transparency:=", 0, "PartCoordinateSystem:=", "Global", "UDMId:=",

namepara="NAME:" & index Set oModule = oDesign.GetModule("RadField") oModule.InsertNearFieldLineSetup Array(namepara, "UseCustomRadiationSurface:=", false, "Line:=", index, "NumPts:=", cstr(Xnum)) Next _

'------------------------------3 米 y 面---------------------------------------

Units = InputBox("Select the units:"&Chr(13)& _ "(cm,mm,um,in,mil)", "Nearfield", "mm",pos,pos) zpos = xspan = yspan = Xnum = Ynum = InputBox("Input the Z plane position:","Nearfield", 3200,pos,pos) InputBox("Input X sampling span:","Nearfield", 2100,pos,pos) InputBox("Input Y sampling span:","Nearfield", 4000,pos,pos) InputBox("Input sampling number in X direction:", "Nearfield", 15,pos,pos) InputBox("Input sampling number in Y direction:", "Nearfield", 100,pos,pos)

Redim x(Xnum) dx=xspan/(Xnum-1)

dy=yspan/(Ynum-1) x(0)="Position of x"

For n=1 To Xnum x(n)=-xspan/2 + (n-1)*dx ' 将 X 向点坐标存入数组 ZV alue=cstr(zpos) & Units XV alue=cstr(x(n)) & Units YValuemin=cstr(-yspan/2) & Units YValuemmax=cstr(yspan/2) & Units index="lin3my" & cstr(n) oEditor.CreatePolyline Array("NAME:PolylineParameters", "IsPolylineCovered:=", true, "IsPolylineClosed:=", _ false, Array("NAME:PolylinePoints", Array("NAME:PLPoint", "Y:=", YValuemin, "X:=", XV alue, "Z:=", _ ZV alue), Array("NAME:PLPoint", "Y:=", YValuemmax, "X:=", XV alue, "Z:=", ZV alue)), _ Array("NAME:PolylineSegments", Array("NAME:P LSegment", "SegmentType:=", _ "Line", "StartIndex:=", 0, "NoOfPoints:=", 2)), Array("NAME:PolylineYSection", "YSectionType:=", _ "None", "YSectionOrient:=", "Auto", "YSectionWidth:=", "0mm", "YSectionTopWidth:=", _ "0mm", "YSectionHeight:=", "0mm", "YSectionNumSegments:=", "0", "YSectionBendType:=", _ "Corner")), Array("NAME:Attributes", "Name:=", index, "Flags :=", "", "Color:=", _ "(132 132 193)", "Transparency:=", 0, "PartCoordinateSystem:=", "Global", "UDMId:=", _ "", "MaterialV alue:=", "" & Chr(34) & "vacuum" & Chr(34) & "", "SolveInside:=", true) _

namepara="NAME:" & index Set oModule = oDesign.GetModule("RadField") oModule.InsertNearFieldLineSetup Array(namepara, "UseCustomRadiationSurface:=", false, "Line:=", index, "NumPts:=", cstr(Ynum)) Next 5、 用脚本导出近场数据 Dim oAnsoftApp Dim oDesktop _

Dim oProject Dim oDesign Dim oEditor Dim oModule Set oAnsoftApp = CreateObject("AnsoftHfss.HfssScriptInterface") Set oDesktop = oAnsoftApp.GetAppDesktop() oDesktop.RestoreWindow Set oProject = oDesktop.SetActiveProject("Project6") Set oDesign = oProject.SetActiveDesign("HFSSDes ign1") Set oModule = oDesign.GetModule("ReportSetup") '---------------------------------------3mx-0.8G-------------------------------------------------------oModule.CreateReport "XY Plot 27", "Near Fields", "Rectangular Plot", _

"Setup1 : Sweep", Array("Context:=", "lin3mx1"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx2"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx3"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx4"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx5"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx6"),

Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx7"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx8"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx9"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx10"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx11"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component :=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx12"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx13"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=",

_ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx14"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3mx15"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array()

oModule.ExportToFile "XY Plot 27", "C:/Users/xiaoen/Documents/3mx-0.8G.csv" oModule.DeleteReports Array("XY Plot 27")

'---------------------------------------3my-0.8G-------------------------------------------------------oModule.CreateReport "XY Plot 27", "Near Fields", "Rectangular Plot", _ "Setup1 : Sweep", Array("Context:=", "lin3my1"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my2"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my3"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my4"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _

"NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my5"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my6"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my7"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my8"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my9"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my10"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my11"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array()

oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my12"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:= ", "lin3my13"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my14"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array() oModule.AddTraces "XY Plot 27", "Setup1 : Sweep", Array("Context:=", "lin3my15"), Array("NormalizedDistance:=", Array( _ "All"), Array("NAME:VariableValues", "Freq:=", "0.8GHz")), Array("X Component:=", _ "NormalizedDistance", "Y Component:=", Array("NearETotal")), Array()

oModule.ExportToFile "XY Plot 27", "C:/Users/xiaoen/Documents/3my-0.8G.csv" oModule.DeleteReports Array("XY Plot 27")


相关文章:
HFSS仿真理论
HFSS仿真理论_兵器/核科学_工程科技_专业资料。一、HFSS 原理总结 HFSS(High Frequency...一、HFSS 原理总结 HFSS(High Frequency Structure Simulator) 1)基于电磁场...
HFSS_V13天线仿真基本操作指南
HFSS 13.0高频仿真软件操作指南程亚运 目录第一章 创建工程 Project 一、前期...辐射场之 后保存并命名) 2、插入HFSS设计 由主菜单选Project > Insert HFSS ...
计算机仿真设计
1 Ansoft HFSS 软件的介绍 Ansoft HFSS 可以仿真分析、设计各类天线,精确计算天线的各种性能,包 括二维、三维远场和近场辐射的方向图、天线的方向性系数、增益、...
HFSS仿真设计频率为4.7GHz的wilkinson功率分配器(图文)
(a)仿真模型: (b)在 hfss 中加入集总参数元件电阻 (c)查看仿真结果 由回波损耗可以看出 S12=S13=-3dB,S11 在-20dB 以下。相对带宽约为 27%。 (d)场...
HFSS仿真大作业
HFSS仿真大作业_电子/电路_工程科技_专业资料。一、微带线的仿真 介质基板厚度 ...设置辐射场。 仿真后观察端口的复特性阻抗和复传播常数随频率变化的曲线;观察 ...
PCB的HFSS仿真系列之一:焊点的仿真
PCB 的 HFSS 仿真系列之一:焊点的仿真 利用 HFSS 仿真了 PCB 上焊点的影响,分别得到了 800MHz 和 1900MHz 两个频段的散射 参数 S11;然后仿真了当焊点大小变化...
HFSS仿真魔T_图文
微波大作业(HFSS 仿真魔 T) 班级:071242 学号:07124141 姓名:侯延 魔 T 的...(负 x 方向) 场分布图(负 x 方向) 结论:从 p3 进入的信号,由 p2,p4 ...
HFSS V12应用
(1)二维和三维远场及近场HFSS V12 应用 0 简述 Ansoft HFSS 软件是美国 Ansoft 公司开发的一款基于电磁场有 限元法的全波三维电磁仿真软件,可仿真计算天线以下...
hfss和designer协同仿真
在线互动式文档分享平台,在这里,您可以和千万网友分享自己手中的文档,全文阅读其他用户的文档,同时,也可以利用分享文档获取的积分下载文档
HFSS仿真耦合器
HFSS仿真耦合器_信息与通信_工程科技_专业资料。HFSS仿真耦合器,讲解一个实例,清楚实用。HFSS 仿真耦合器使用说明一.软件安装 1.打开\HFSS92\Max 文件夹,运行 aut...
更多相关标签: