O antenă cu formă arbitrară
Sari la navigare
Sari la căutare
În Matlab sunt două metode importante prin care se poate genera o formă arbitrară, personalizată, a unei antene de tip "patch":
- prin combinarea unor forme geometrice
- prin desenarea formei în utilitarul pdetool din PDE Toolbox (Partial Differential Equation Toolbox).
Antena ca o combinație de forme geometrice
% creez elementele antenei - forme geometrice
% care vor fi combinate pentru a genera forma finală a antenei
rect = antenna.Rectangle('Length',0.01,'Width',0.005);
circle = antenna.Circle('Radius',0.004,'Center',[0.002 0.005]);
% slot este deschiderea care va fi folosită pentru feeder
slot = antenna.Rectangle('Length',0.0005,'Width',0.00025,'Center', [-0.004 0]);
% forma finală...
ant = rect + circle - slot;
fig = figure('Name','Antenă custom');
show(ant)
figure('Name','Antenă custom cu teselare')
mesh(ant,'MaxEdgeLength',0.001)
Modelare parametrică
% se descriu trei matrici care conțin vertex-urile fiecărui obiect teselat
p1 = getShapeVertices(rect);
p2 = getShapeVertices(circle);
p3 = getShapeVertices(slot);
% se generează o antenă cu o geometrie personalizată
ant2 = customAntennaGeometry;
% antena este definită de matricile care conțin vertex-urile
ant2.Boundary = {p1,p2,p3};
% forma antenei este definită de suma booleană a componentelor
ant2.Operation = 'P1+P2-P3';
% dimensiunea și poziția punctului de alimentare
ant2.FeedWidth = 0.5e-3;
ant2.FeedLocation = [-2e-3 0 0];
show(ant2)
% aspectul radiației la 10GHz
pattern(ant2,10e9)
În continuare realizăm un GIF animat cu variația distribuții sarcinii la diferite frecvențe
h = figure;
filename='animatedCharge.gif';
% frecvența va crește de la pas la pas cu această valoare - 1 GHz
increment = 1e9;
% frecvența de pornire - 1GHz
fs = 1e9;
% timpul pentru fiecare cadru, o secundă
delay = 1;
for n = 1:1:20
h.Name = (['Charge plot - freq: ', num2str(fs/1e9), ' GHz']);
charge(ant2,fs,'scale','log10');
fs = fs + increment;
frame = getframe(h);
im = frame2im(frame);
[imind,cm] = rgb2ind(im,256);
fprintf('frame number %i\n', n);
%write to GIF
if n == 1
imwrite(imind,cm,filename, 'gif', 'Loopcount', inf, 'DelayTime', delay);
else
imwrite(imind,cm,filename, 'gif', 'WriteMode', 'append', 'DelayTime', delay);
end
end
Și același exercițiu pentru distribuția curenților în antenă, între 1 și 20GHz.
Link-uri externe
- customAntennaGeometry – Crează modelul geometric 2D al unei antene
- Double slot cavity patch on TMM10 substrate