Drive multiple antenna elements in array
2 views (last 30 days)
Show older comments
Christopher Bridges
on 13 Feb 2019
Commented: Christopher Bridges
on 1 Mar 2019
Hi Matlab,
I'm looking to drive elements and understand directivity using the following code.
I generate a small microstrip patch in antennaDesigner first, then turn it into an array for analysis.
But how do I drive multiple elements to understand the beam formed / directivity?
Thanks, Chris
load msp20G.mat;
msp20G.GroundPlaneWidth = inf;
plotFreq = 20e9;
arr = rectangularArray('Element', msp20G, 'Size', [3 3]);
arr.RowSpacing = 0.03;
arr.ColumnSpacing = 0.03;
arr.PhaseShift(1);
pattern(arr, plotFreq, 'ElementNumber', 1, 'Termination', 50);
0 Comments
Accepted Answer
Shashank Kulkarni
on 27 Feb 2019
Hi Chris,
You can pass in avector to the AmplitudeTaper and PhaseShift proeprties.
For e.g.
arr.PhaseShift = [10 20 30 40 50 60 70 80 90]; for your 9 elemnt vector.
Similarly
ant.AmplitudeTaper = [1 0 0.1 0.2 1 1 1 1 0.1]
to model differnt voltage amplitude applied at the feed of each element of the array.
I hope this helps.
Regards,
Shashank
More Answers (1)
Shashank Kulkarni
on 1 Mar 2019
Hi Chris,
The code I wrote down was justa general idea. You would have to calculate the correct phaseshifts to make the beam form in a particular direction.
We have added functionality in 19a (should be avilable in a couple of weeks), to calculate the phaseShifts to perform beamscanning. In this case, the user will provide the antenna object, ferquency and the direction in which he wants to point the beam and we will calculate the phase shifts that the user needs to apply to the antenna elements in the array.
Regards,
Shashank
See Also
Categories
Find more on Antennas, Microphones, and Sonar Transducers in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!