Multiple feeds for customAntennaGeometry?

13 次查看(过去 30 天)
Joshua Goglio
Joshua Goglio2018-5-16
I've created a custom antenna element using customAntennaGeometry:
% Define custom elements by constructing individual metal rectangles
metalSq = antenna.Rectangle('Length', length, 'Width', 2*width+gap);
p1 = getShapeVertices(metalSq);
gapSq = antenna.Rectangle('Length', length, 'Width', gap);
p2 = getShapeVertices(gapSq);
feed = antenna.Rectangle('Length', 0.5e-3, 'Width', 0.5e-3,'Center',[0 -2e-3]);
p3 = getShapeVertices(feed);
% Build custom double patch element from rectangles
dblpatch = customAntennaGeometry;
dblpatch.Boundary = {p1,p2,p3};
dblpatch.Operation = 'P1-P2+P3';
dblpatch.FeedWidth = 0.5e-3;
dblpatch.FeedLocation = [0 -2.0e-3 0];
The resulting element model is attached, along with a typical mesh that is auto-generated by MATLAB prior to a pattern, impedance, etc function call.
My question: Since my element has two distinct patches to it and only one feed, is it possible to add a second feed on the other patch?
Of course I can create two separate single patch elements and join them together, but that would be excessively cumbersome. I'm wondering if Antenna Toolbox's auto mesh can handle this and, if not, how I might go about importing a custom mesh with two feeds.
Thank you in advance!

回答(1 个)

Sreekar Sai Ranganathan
编辑:Sreekar Sai Ranganathan 2020-5-23
The customArrayGeometry object can be used to create any 2D structure with multiple feeds. The example given on the page makes it clear how to use it. The documentation, though, is not complete as it says FeedLocation is a 3-element vector, when it can actually be a Nx3 element matrix (as given in the example). If you have the mesh of it as an stl file, then use customArrayMesh.
This page contains everything you need to know about such things (fortunately, the documentation has improved)
If you're trying to model something similar to (but different from) a patch antenna on a substrate, I guess using a pcbStack is much more appropriate. When using a pcbStack object, you can specify as many feed locations as you want.
Looking at what you're trying to do, it appears that you should be creating a 2-element linearArray of patchMicrostrip elements, which gets it done pretty neat (and not cumbersome).
Perhaps this question is too old, but I decided to answer it anyway because someone else might need it.
Hope it Helps!

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by