Rotation of polar beam pattern using ULA.

조회 수: 5 (최근 30일)
Zain Shafiq
Zain Shafiq 2021년 5월 21일
답변: Suraj Kumar 2024년 8월 9일
Hi,
I would like to steer the beam pattern of a ULA so its at -25° and 25°.
My code is shown below:
c = 3e8;
fc = 2e9;
lambda = c/fc;
NoOfTxAntenna = 4;
txarray = phased.ULA('NumElements',NoOfTxAntenna,'ElementSpacing',lambda/2);
steer_ang = [25;0];
stv = phased.SteeringVector('SensorArray',txarray);
w = stv(fc,steer_ang);
figure,
pattern(txarray,fc,[-180:180],0,...
'PropagationSpeed',c,...
'CoordinateSystem','polar',...
'Type','powerdb', ...
'Weights',w)
Currently the beam pattern is as shown below.
Many thanks

답변 (1개)

Suraj Kumar
Suraj Kumar 2024년 8월 9일
Hi Zain,
To steer the beam pattern of a Uniform Linear Array (ULA) to 25° and -25°, go through the following steps:
1. Define the required parameters and create a Uniform Linear Array using the phased.ULA function.
c = 3e8;
fc = 2e9;
lambda = c/fc;
NoOfTxAntenna = 4;
txarray = phased.ULA('NumElements',NoOfTxAntenna, 'ElementSpacing', lambda/2);
2. Initialize the steering angles for both directions allowing the beam pattern to rotate accordingly.
% Initialize steering angles
steer_ang1 = [25; 0];
steer_ang2 = [-25; 0];
3. Create a steering vector object using the phased.SteeringVector function and compute the weights for the ULA.
stv = phased.SteeringVector('SensorArray', txarray);
w1 = stv(fc, steer_ang1);
w2 = stv(fc, steer_ang2);
4. Plot the beam pattern for both the steering angles.
figure;
pattern(txarray, fc, [-180:180], 0, ...
'PropagationSpeed', c, ...
'CoordinateSystem', 'polar', ...
'Type', 'powerdb', ...
'Weights', w1);
figure;
pattern(txarray, fc, [-180:180], 0, ...
'PropagationSpeed', c, ...
'CoordinateSystem', 'polar', ...
'Type', 'powerdb', ...
'Weights', w2);
You can look at the output below for a better understanding:
To know more about phased.ULA and phased.SteeringVector functions, please go through the documentation below:
Hope this works for you!

카테고리

Help CenterFile Exchange에서 Array Geometries and Analysis에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by