Alternatives to pcbStack for array element in Antenna Toolbox?

3 views (last 30 days)
The Antenna Toolbox will not create an array using pcbStack elements. Is there an equivalent way to make a custom microstrip patch antenna, with substrate, that doesn't use pcbStack and that can be used to make an array? A work-around?
Here is an example:
Open and run this example to create vivaldi_Notch, which is a pcbStack antenna:
openExample('antenna/InternallyMatchedVivaldiAntennaForUWBOperationExample')
Then create an array using vivaldi_Notch as the element:
a = linearArray('Element', vivaldi_Notch)
Here is the error:
Error using em.Array/setElementAsScalarHandle
pcbStack as Element is not supported for Arrays.
etc.

Answers (1)

Da Huang
Da Huang on 4 Nov 2019
pcbStack is not currently supported in array objects. Currently there is no plan for it. But you can create arrays in pcbStack object.
Work around would be to create the arrays you want in pcbStack. It will require a little work around in the original example code.
  1 Comment
Larry Smith
Larry Smith on 5 Nov 2019
Edited: Larry Smith on 5 Nov 2019
This is a good work around, and I have been able to create arrays using it. There is a problem I haven't solved. I want to build a rectangular array of the vivaldis. I can separate rows with an air gap, and I can make multiple columns by printing two vivaldis on a large dielectric. But I would like the columns to be air gapped (I will eventually insert a ground plane there). Here is a column array, with continuous dialectric, which I would like to be discontinuous:
openExample('antenna/InternallyMatchedVivaldiAntennaForUWBOperationExample')
wid = vivaldi_Notch.BoardShape.Width;
sep = 0.01;
trans = (wid + sep) / 2;
fl = vivaldi_Notch.FeedLocations;
v1 = vivaldi_Notch.Layers{1};
d = vivaldi_Notch.Layers{2};
f1 = vivaldi_Notch.Layers{3};
v2 = antenna.Polygon('Vertices', v1.Vertices);
f2 = antenna.Polygon('Vertices', f1.Vertices);
translate(f1, [0, trans, 0]);
translate(v1, [0, trans, 0]);
translate(f2, [0, -trans, 0]);
translate(v2, [0, -trans, 0]);
vivaldi_Notch.BoardShape.Width = 2 * wid + wep;
vivaldi_Notch.Layers = {v1+v2, d, f1+f2};
vivaldi_Notch.FeedLocations = [[fl + [0,trans,0,0]; fl + [0,-trans,0,0]]];
vivaldi_Notch.Tilt = -90;
pattern(vivaldi_Notch, 3e9);

Sign in to comment.

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!