Upload
lyphuc
View
215
Download
0
Embed Size (px)
Citation preview
Use of HFSS as integral part of
efficient design environment
for waveguide components
Jan Kocbach, Kjetil Folgerø
Nera Networks, Norway
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 2
Outline
• Nera products and needs
• Design environment
– Overview of design environment
– Role of HFSS in design environment
– HFSS – Matlab interaction
• Applications and examples
• Summary
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 3
Nera Products
• Terrestrial (Nera Networks)– Long haul networks (4-11 GHz)
– Fixed wireless access (6-40 GHz)
– Mobile infrastructure (6-40 GHz)
• Satellite (Nera Satcom)
– Mobile satellite communication solutions
– Broadband satellite communication solutions
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 4
Passive microwave components at Nera
• Design wide range of different passive microwave components– Waveguide filters
– OMTs, Polarizators
– Microstrip-to-waveguide and Microstrip-to-coaxtransitions
– Microstrip/stripline filters
• Many frequency variants for eachcomponent
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 5
• Need efficient and versatile design environment
– Accurate and flexible full 3D tool for
• complex structures
• final design phase & field analysis
– Fast tool for
• simple structures & initial design of more complex structures
• work on design methods
– ”Push-button” design
• fast design of frequency variants
• short design cycles
Passive microwave components at Nera
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 6
Design Environment
Control: Matlab
HFSS
STL export
SAT import
via translator
Via netlist
files Control software
3D simulator
Waveguide components / Passive microwave components
– Full 3D EM
• Arbitrary geometries
• possible to view fields/animations
• Drawback: Slow(compared to Mode matching)
– Mode matching
• Very fast solving
• Optimization with >10.000 iterations
• Large library of geometries
• Drawback: Not arbitrary geom
Via macros
Mode matching
software
Pro Engineer
CAD/CAE
Matlab control software also
communicates with other 3D
and 2.5D simulators used
at Nera
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 7
Matlab – HFSS interaction
• Our approach based on HFSS v9
– Interface to HFSS from Matlab
1. Make macro file using Matlab function
2. Matlab function starts HFSS with /RunScriptAndExit
3. Matlab function reads ”.tab” or ”.nmf” file into Matlab
• As of HFSS v10
– COM engine for Matlab-HFSS interaction
– Very similar program buildup - even better interaction possible
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 8
Matlab – HFSS interaction
• Defined ”Meta-language” for HFSS in Matlab
• Typical analysis functions:
– Repeated calling of setup/drawing-functions and h_runhfss function
• Simple analysis functions – short development time
h_addmaterial Add material Input: struct with material parameters
h_box Draw box Input: geometry vectors
h_cyl Draw cylinder Input: geometry vectors
h_rectangle Draw rectangle Input: geometry vectors
h_rectsweep Sweep rectangle Input: geometry vectors
h_iris Draw iris Input: struct with variables
h_polysweep Sweep polygon Input: vector with points + sweep
h_definesolution Define solution Input: struct with solution details
h_init Initialize Input: none
h_newcoordsys New coordinate sys Input: scalars theta/phi, coordsys name
h_plus Add two HFSS vars Input: strings/operators
h_setboundary Set boundary Input: string, type of BC
h_setcoordsys Set coordinate sys Input: string, name of coordinate system
h_setport Set port Input: string, object name
h_subtract Subtract objects Input: string, object names
h_unite Unite objects Input: string, object names
h_runhfss Run HFSS Input: struct with all info
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 9
Matlab – HFSS interaction
• ”Meta-language” - code example:
% Define variables
a=10.668;b=4.318;lin=6;
liris=[1.3 1.5 1.3];
airis=[6.5 6 6.5];lres=[6.3 6.3];
% Draw geometry
sp=h_init;sp=h_box({0 0 0},{lin a b},sp);
for i=1:length(liris)-1
sp=h_box({sp.x 0 0},{liris(i) airis(i) b},sp);sp=h_box({sp.x 0 0},{lres(i) a b},sp);
endsp=h_box({sp.x 0 0},{liris(end) airis(end) b},sp);
sp=h_box({sp.x 0 0},{lin a b},sp);
% Define ports
sp=h_rectangle({sp.x 0 0},{0 a b},sp);sp=h_setport(sp.last_obj,sp);
sp=h_rectangle({0 0 0},{0 a b},sp);sp=h_setport(sp.last_obj,sp);
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 10
Matlab – HFSS interaction
• Definition of sample function h_box
function [sp]=h_box(basevc,sizevc,sp)
<--- lines omitted --->
if sp.slipangle~=0
[sp]=h_box_slipa(basevc,sizevc,sp);
else
<--- lines omitted --->
sp.cmd{end+1}=[...
'oEditor.CreateBox Array("NAME:BoxParameters", _\n' ...
'"XPosition:=", ' h_tostr(basevc{1}) ', _\n' ...
'"YPosition:=", ' h_tostr(basevc{2}) ', _\n' ...
'"ZPosition:=", ' h_tostr(basevc{3}) ', _\n' ...
'"XSize:=", ' h_tostr(sizevc{1}) ', _\n' ...
'"YSize:=", ' h_tostr(sizevc{2}) ', _\n' ...
'"ZSize:=", ' h_tostr(sizevc{3}) '), _\n' ...
'Array("NAME:Attributes", "Name:=", "' name '", _\n' ...
'"Flags:=", "", "Color:=", "' simpar.curr_color '", _\n' ...
'"Transparency:=", ' num2str(simpar.curr_transparency) ' _\n'...
' , "PartCoordinateSystem:=", "Global", _\n' ...
'"MaterialName:=", "' simpar.curr_mat '", _\n' ...
'"SolveInside:=", ' simpar.solve_inside ')'];
<--- lines omitted --->
end
Set only one variable
to use slip angles
Global settings
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 11
Matlab – HFSS interaction
• Matlab applied as control software
– Partly common control functions for HFSS and othersimulators
• Circuit models implemented in Matlab
– HFSS and other 3D/Mode matching programsapplied for training of circuit model
– Trained circuit model used for very fast tolerance analysis
– Circuit model used for intelligent filter design in conjunction withHFSS and/or other 3D/Mode matching programs
– Applied for automatic and reliable design procedures
• Cascade coupling of S-pars from HFSS/Other simulators
– similar functionality to Ansoft Designer(?)
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 12
Matlab – HFSS interaction
• Optimization
– Optimization done by repeated calling of HFSS usingdifferent Matlab optimizers
• Tolerance analysis & sweeps
– Tolerance analysis & sweeps with arbitrary distributions by repeated calling of HFSS
• Documentation
– Automatic documentation of HFSS simulations from Matlab
– Simple text-file with ”meta-language” commands definesproblem
• Simplified buildup of complex models
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 13
Applications (I)
• Design of waveguide filter with slip angles
– Full 3D tool required for simulations due to slip angles
– Fast & predictable design possible using step-by-step procedure
• No optimization in 3D tool required
• Basic Theory described in [1]
– Automated design procedure using Matlab + HFSS
• Input: Center frequency, bandwidth, ripple & filter order
• Output: Filter dimensions, S-parameters
[1] Folgerø, K. (Nera Research), Step-by-step procedure for design of waveguide filters with HFSS,
Ansoft HFSS User Workshop, Los Angeles, January 2001
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 14
Applications (I)
• Design of waveguide filter with slip angles
S21 = -5.1 dB
Circuit model gives ideal S-parameter
value for each coupling
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 15
Applications (I)
• Design of waveguide filter with slip angles
1 2 3 4 5 6
-18
-16
-14
-12
-10
-8
-6
-4
SimulationCircuit model
Iteration number
S21[dB]
Coupling 1
S21 = -5.1 dB
Vary iris width
(varying iris width)
”Tune” single coupling
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 16
Applications (I)
• Design of waveguide filter with slip angles
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 17
Applications (I)
• Design of waveguide filter with slip angles
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 18
Applications (I)
• Design of waveguide filter with slip angles
f [GHz]
S-parameters[dB]
Simulation of complete filter
with slip angles
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 19
Applications (I)
• Measurements: Waveguide filter with slip angles
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 20
Applications (II)
• OMT with slip angles– Nominal version without slip angles optimized using ModeMatching simulator
– Exported from ModeMatching simulator to ProEngineer
– Slip angles + some other changes applied in ProEngineer
– Imported from ProEngineer to HFSS
– Some iterations with varying normal plane for slip angles
18 20 22 24 26 28 30 32
-50
-40
-30
-20
-10
0
frequency (GHz)
S (dB) Without slip-angle
With slip-angle*
*Final iteration regarding normal plane for slip angles
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 21
Applications (III)
• Composite structure: OMT + 2 filters
– All components simulated individually in HFSS with slip angles
– Cascade coupling of S-parameters done in Matlab(would also be possible in Ansoft designer)
– Tuning of waveguide lengths between components
– Tolerance analysis for filters without slip angles (ModeMatching)
– Cascade coupling of S-parameters done in Matlab
• OMT with slip angles (nominal)
• filter without slip angles (100 iterations each)
+
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 22
Applications (IV)
• Microstrip-to-waveguide transition
– Large number of frequency variants needed
– Problem setup, optimization, tolerance analysis done automatically from Matlab
S-parameters[dB]
f [Hz]
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 23
Applications (V)S-parameters[dB]
f [GHz]
• Rectangular dual mode filter
– Blue line: HFSS. Red line: ModeMatching
– HFSS simulation to visualize fields
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 24
Applications (V)
• Rectangular dual mode filter
– Very good correspondence between simulations and measurements
– No tuning
J. Kocbach and K. FolgerøAnsoft Converge 2005 - Slide 25
Summary
• HFSS central part of effective design environment for waveguide components
• Key points
– ”Meta-language” for HFSS
– Repeated calling of HFSS from Matlab
– Common control functions for HFSS and other tools
– Reliable and repeatable design – aided by circuit models
– Automatic design cycles