Crossed dipole antenna polarization

A crossed-dipole sends RHCP out one side, and LHCP out the other. I can simulate this well in MATLAB.
When you place this crossed-dipole a quarter wave above a ground plane, it should reflect the power back towards the other side, and switch the polarization. https://en.wikipedia.org/wiki/Turnstile_antenna (axial mode section).
Problem is, I get almost identical LHCP and RHCP plots out of matlab over a ground plane. Shouldn't one polarization have all the power, and the other be really low?
What's worse, when I set the ground plane to 0 length and width I would expect to get plots out like the first image above. I don't I get this weirdness.
Is there something wrong with the reflector command, or am I messing something up?
Thanks for your help.
freq = 433e6;
lambda = 3e8/freq;
length = lambda/2.1;
width = lambda/50;
gndspacing = lambda/4;
d = dipole('Length',length,'Width',width);
a = dipoleCrossed('Element',d,'Tilt',[0 90 0],'TiltAxis', [1 0 0; 0 1 0; 0 0 1]);
r = reflector('Exciter',a,'GroundPlaneLength',.0,'GroundPlaneWidth',0,'Spacing',gndspacing);
figure; show(r);
figure; pattern(r,freq,'Polarization','RHCP');
figure; pattern(r,freq,'Polarization','LHCP');

13 Comments

Hi tarrinr,
Where is it that you indicate that the x and y dipoles are 90 degrees out of phase, or for a crossed dipole does the toolbox just assume it? (I don't have the toolbox). I'm asking because if there is no 90 degree phase, then of course rhcp and lhcp will be identical.
Thanks for looking into this.
Yes, the function dipoleCrossed defaults the FeedPhase to [0 90].
Hi tarrinr,
Another question. In your plots with the ground plane, why is the elevation [-90 90] as opposed to [0 90]?
That's the default for the pattern function. I want to view the full pattern, so azimuth 360deg, elevation 180deg.
Good drawing. I was just thinking of how the pattern could be affected in unexpected ways and was curious to see what the patterns were for [0 90], where looking at the 'wrong' side of the ground plane is taken out of the picture. Unlikely to make any difference, I suppose.
Maybe it's a mistake even using this antenna toolbox. None of the results I'm getting seem to pass my sanity check... This reflector command seems to be broken or I'm doing something terribly wrong.
Yes, pretty bizarre. [0 90] is the upper half of the original plots, you would think. I assume you're using an infinite ground plane.
Whatever else is going on, I think it would be best to plot gain rather than directivity. That's because if you are expecting rhcp and a little bit of lhcp creeps in, the two directivity plots could be of similar size. That seems unlikely in this case (I keep using that word) due to how very similar the two plots in the second row look in the original posting, but you never know.
Yea just tried and directivity plots and gain plots give identical results. Makes sense because it's lossless.
I think I've kind of figured it out. It seems like the reflector function does not accept dipoleCrossed correctly as an Exciter. It seems to use a single dipole from the crossed dipole instead of both. I get identical results from a reflector with a dipole vs a reflector with a crossed dipole.
It's interesting because this method is used in the offical MATLAB examples. Is there a way to escalate this in case it really is a bug?
Do you mean Mathworks, Support tab, scroll all the way down, Report a Bug?
This seems "curious enough" to warrant a contact to Mathworks Support, if not outright report this as a bug. Surely a reflector should be able to handle arbitrary polarizations - I would even expect it to handle polarization-dependent reflectivity.
Also: Spectacular drawing! (neither the fancy trousers, nor the shadow are unappreciated.)
Submitted a Service Request, we'll se where it leads. Thanks for all your help.
FYI source for elevation drawing: https://www.photopills.com/articles/understanding-azimuth-and-elevation
Hi tarrinr,
On the most recent plots that you posted on 17 Oct 2022 at 23:16, because of the two circles in the xy plane I thought this looked like the source was a dipole along the y axis. But I got fooled by the cone shapes since I'm not used plots in dBi.
Concerning directivity and gain, not having a code that can find the voltage across the antenna terminals, that leaves radiated power as the only available power, so you get directivity and can't get gain. But I had something a bit differernt in mind. Suppose you have two perpendicular modes for radiated E field, being for example Etheta & Ephi or Eleft & Eright. I don't have examples for the latter quite yet, but for theta and phi suppose there is a single dipole in the z direction. Then Ephi (aximuthal angle) is zero. If the dipole is tipped away from the z axis a bit, Etheta is still large and Ephi is small. Neglecting some constants, let Etheta^2 represent the intensity as a function of angles, and Ptheta be the total radiated power in that mode, which can be calculated. Same thing for Ephi^2, Pphi. The total radiated power is Ptot = Ptheta + Pphi.
Suppose, not knowing all the details of the source, you suspect that Ephi is small. For the Ephi directivity, basically Ephi^2/Pphi, the pattern as a function of angles will have some values on the order of 1. No way to say how large Ephi might be on an absolute scale. But if you plot what might be called a kind of gain for Ephi, that is Ephi^2 / Ptot, that pattern will have much smaller values even though the overall situation is lossless.
That is what got me curious about the equal size of your Pleft and Pright plots. Being directivity, they might look the same even if Eleft^2 and Eright^2 were considerably different in size. Although now it seems that they actually were the same size and there is some kind of Matlab problem.
Here is a plot for a dipole tipped away from the z axis by 25 degrees. The outer pattern is E^theta^2 / Ptot and the small inner blob is Ephi^2/ Ptot.

Sign in to comment.

 Accepted Answer

tarrinr
tarrinr on 25 Oct 2022
Edited: Bjorn Gustavsson on 25 Oct 2022
From Support:
After further investigation, it has been determined that this is indeed an issue with assigning a “dipoleCrossed” object directly as an “Exciter” of a “reflector” function call.
As a temporary workaround, please see the below code with uses a “linearArray” to manually construct an object that serves as a “dipoleCrossed” and uses it as the “Exciter” of a “reflector” function call. This should also be applicable to the other question posted in the MATLAB Answers post.
clc;
clear all;
freq = 433e6;
lambda = 3e8/freq;
%Specfy dipole arm length and width
length = lambda/2.1;
width = lambda/50;
%Specify the gap between two dipole arms in dipoleCrossed
verticalGapDipoleArms=2.3983e-04;
%Manually construct the dipoleCrossed element (a) using linearArray
d1 = dipole('Length',length,'Width',width,'Tilt',45);
d2 = dipole('Length',length,'Width',width,'Tilt',-45);
a=linearArray('Element',[d1,d2],'ElementSpacing',...
verticalGapDipoleArms,'Tilt',[0 90 0],'TiltAxis',...
[1 0 0; 0 1 0; 0 0 1],'AmplitudeTaper',[1 1],'PhaseShift',[0 90]);
%Specify the vertical gap between the dipoleCrossed and the reflector
%ground
gndspacing = lambda/4;
%Construct the reflector with dipoleCrossed as Exciter
r = reflector('Exciter',a,'Spacing',gndspacing,'GroundPlaneLength',lambda,'GroundPlaneWidth',lambda);
% r = reflector('Exciter',b,'Spacing',gndspacing,'GroundPlaneLength',0,'GroundPlaneWidth',0);
%For comparison change the exciter from dipoleCrossed to dipole
%Visualize the shape and pattern for reflector with dipoleCrossed as Exciter
figure; show(r)
figure; pattern(r,freq,'Polarization','RHCP');
figure; pattern(r,freq,'Polarization','LHCP');
%For comparison change the exciter from dipoleCrossed to dipole
r2= reflector('Spacing',gndspacing,'GroundPlaneLength',lambda,'GroundPlaneWidth',lambda);
r2.Exciter.Length=length;
r2.Exciter.Width=width;
%Visualize the shape and pattern for reflector with dipole as Exciter
figure; show(r2)
figure; pattern(r2,freq,'Polarization','RHCP');
figure; pattern(r2,freq,'Polarization','LHCP');
I apologize for any inconvenience this causes. You will be notified if a related change is made in a future release to fix this issue.

More Answers (0)

Products

Release

R2021a

Asked:

on 11 Oct 2022

Commented:

on 25 Oct 2022

Community Treasure Hunt

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

Start Hunting!