Offset paraboloid reflector design
8 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I'm playing with the Antenna Toolbox, but I can't generate an offset reflector where the paraboloid is not symmetric (e.g., I would like only to have a section of the parabola, defining focal length, diameter, clearance...). Any attempt of using the propertires of the reflectorParabolic just moves the feed, reflector size, tilt...but always symmetric parabola.
ant = reflectorParabolic;
ant.Exciter = design(hornConical,18e9);
ant.Tilt = 40;
ant.Radius = 0.5;
ant.FocalLength = 1;
ant.FeedOffset = [0 0 0];
ant.Exciter.Tilt = 90;
show(ant)
0 Commenti
Risposte (1)
Umeshraja
il 23 Set 2024
Modificato: Umeshraja
il 23 Set 2024
I understand you're trying to create an offset paraboloid reflector design using MATLAB's Antenna Toolbox, but you are having trouble generating an asymmetric section of the parabola. To achieve this, you can isolate the mesh for the reflector and extract only the desired portion of the parabola. You can then create an STL file from the reflector surface and use it as the platform for an installed antenna analysis.
Here's a demonstration which considered reflector with a dipole exciter, focusing on a specific section of the parabola within the specified range
close all;
% Define frequency and dimensions
f = 3.5e9; % Frequency in Hz
D = 1.2; % Diameter of the reflector
F_by_D = 0.3; % Focal length to diameter ratio
% Design the parabolic reflector
p = design(reflectorParabolic, f);
p.Radius = D/2; % Set the radius of the reflector
p.FocalLength = F_by_D * D; % Set the focal length
p.Tilt = 90; % Tilt the reflector
p.TiltAxis = [0 1 0]; % Define the tilt axis
feedLoc = p.FeedLocation; % Get the feed location
% Display the designed reflector
figure;
show(p);
% Display the radiation pattern
figure;
Dmax = pattern(p, f, 0, 0);
pattern(p, f);
%% Isolate and export the desired section of the parabolic reflector
p.FeedOffset = [0, 0, 0]; % Reset feed offset
[Pt, t] = exportMesh(p); % Export the mesh points and connectivity list
% Identify the indices of points to be removed, keeping only the range -0.3 to 0.3
idrad = find(Pt(:,1) >= p.FocalLength | Pt(:,3) >= 0.3 | Pt(:,3) <= -0.3);
% Initialize array to store triangles to be removed
removeTri = [];
for i = 1:size(t,1)
if (any(t(i,1)==idrad)|| any(t(i,2)==idrad)||any(t(i,3)==idrad))
removeTri = [removeTri, i];
end
end
% Remove identified triangles
tref = t;
tref(removeTri,:) = [];
% Create a triangulation object and export to STL
TR = triangulation(tref(:,1:3), Pt);
stlwrite(TR, 'UpdatedAnt.stl');
% Set up the installed antenna with the custom platform
pn = installedAntenna;
pl = platform;
exciter = p.Exciter;
exciter.Tilt = 0;
exciter.TiltAxis = [1 0 0];
pl.FileName = 'UpdatedAnt.stl';
pl.Units = 'm';
pn.Platform = pl;
pn.Element = exciter; % Excitation element is the same as before
pn.ElementPosition = [p.FeedLocation(1), 0, 0];
% Display the installed antenna
figure;
show(pn);
% Display the pattern of the installed antenna
figure;
pattern(pn, f);
We can also create custom antenna using 'shape.custom3D'
To know more, please refer to the following MATLAB R2023b documentation
0 Commenti
Vedere anche
Categorie
Scopri di più su Installed Antenna and Large Structures in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!