Rotation of CustomAntennaElement data
6 次查看(过去 30 天)
显示 更早的评论
Intro:
For reasons I won't enumerate, I must import an Antenna Toolbox generated pattern() into Phased Array Toolbox by means of a CustomAntennaElement object:
az = -180:5:180;
el = -90:5:90;
dblpatch = customAntennaGeometry;
gain = pattern(dblpatch,freq,az,el);
elem = phased.CustomAntennaElement('AzimuthAngles',az,'ElevationAngles',el, ...
'MagnitudePattern',gain,'PhasePattern',zeros(dimEl,dimAz));
This seems to work fine,but when I build a URA the pattern comes out goofy. Here's the array code:
array = phased.URA;
array.ArrayNormal = 'z';
array.Element = elem;
array.Size = size;
array.ElementSpacing = [spacing spacing];
Basically, I believe that I need to rotate the dblpatch (AT) radiation pattern so that the max directivity is along the x axis, instead of the z-axis, then change to array.ArrayNormal = 'x'
How would one go about doing this?
Results:
Five figures are attached: four rad patterns (antenna & phased array toolbox elements and arrays) and the PA toolbox array's lattice.
Current idea fragments:
- phitheta2azel()
- circshift() & other manual array manipulation
I cannot use the AT element's Tilt or TiltAxis properties.
0 个评论
回答(1 个)
Honglei Chen
2018-5-4
Could you clarify what you want to achieve?
The elements in Phased Array System Toolbox assumes the element normal at 0 azimuth and 0 elevation. When you put a custom element into an URA, it automatically align that axis with the array normal.
On the other hand, if you directly import an element from Antenna Toolbox, there is no rotation. So you may want to just try
array.Element = dblpatch
and see if that's what you want.
HTH
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!