Y = step(H,X)
Y = step(H,X,ANG)
[Y,W] =
step(___)
performs
phase shift beamforming on the input, Y
= step(H
,X
)X
, and
returns the beamformed output in Y
.
uses Y
= step(H
,X
,ANG
)ANG
as
the beamforming direction. This syntax is available when you set the DirectionSource
property
to 'Input port'
.
[
returns the beamforming weights, Y
,W
] =
step(___)W
.
This syntax is available when you set the WeightsOutputPort
property
to true
.
Note:
The object performs an initialization the first time the 

Beamformer object. 

Input signal, specified as an MbyN matrix. If the sensor array contains subarrays, N is the number of subarrays; otherwise, N is the number of elements. 

Beamforming directions, specified as a tworow matrix. Each column has the form [AzimuthAngle; ElevationAngle], in degrees. Each azimuth angle must be between –180 and 180 degrees, and each elevation angle must be between –90 and 90 degrees. 

Beamformed output. 

Beamforming weights. 
Apply phase shift beamforming to the signal received by a 5element ULA. The beamforming direction is 45 degrees azimuth and 0 degrees elevation.
% Simulate signal t = (0:1000)'; x = sin(2*pi*0.01*t); c = 3e8; Fc = 3e8; incidentAngle = [45; 0]; ha = phased.ULA('NumElements',5); x = collectPlaneWave(ha,x,incidentAngle,Fc,c); noise = 0.1*(randn(size(x)) + 1j*randn(size(x))); rx = x + noise; % Beamforming hbf = phased.PhaseShiftBeamformer('SensorArray',ha,... 'OperatingFrequency',Fc,'PropagationSpeed',c,... 'Direction',incidentAngle,'WeightsOutputPort',true); [y,w] = step(hbf,rx);
The phase shift beamformer uses the conventional delayandsum beamforming algorithm. The beamformer assumes the signal is narrowband, so a phase shift can approximate the required delay. The beamformer preserves the incoming signal power.
For further details, see [1].
[1] Van Trees, H. Optimum Array Processing. New York: WileyInterscience, 2002.