Documentation

This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

phased.BeamscanEstimator System object

Package: phased

Beamscan spatial spectrum estimator for ULA

Description

The BeamscanEstimator object calculates a beamscan spatial spectrum estimate for a uniform linear array.

To estimate the spatial spectrum:

  1. Define and set up your beamscan spatial spectrum estimator. See Construction.

  2. Call step to estimate the spatial spectrum according to the properties of phased.BeamscanEstimator. The behavior of step is specific to each object in the toolbox.

    Note:   Starting in R2016b, instead of using the step method to perform the operation defined by the System object™, you can call the object with arguments, as if it were a function. For example, y = step(obj,x) and y = obj(x) perform equivalent operations.

Construction

H = phased.BeamscanEstimator creates a beamscan spatial spectrum estimator System object, H. The object estimates the incoming signal's spatial spectrum using a narrowband conventional beamformer for a uniform linear array (ULA).

H = phased.BeamscanEstimator(Name,Value) creates object, H, with each specified property Name set to the specified Value. You can specify additional name-value pair arguments in any order as (Name1,Value1,...,NameN,ValueN).

Properties

SensorArray

Handle to sensor array

Specify the sensor array as a handle. The sensor array must be a phased.ULA object.

Default: phased.ULA with default property values

PropagationSpeed

Signal propagation speed

Specify the propagation speed of the signal, in meters per second, as a positive scalar.

Default: Speed of light

OperatingFrequency

System operating frequency

Specify the operating frequency of the system in hertz as a positive scalar. The default value corresponds to 300 MHz.

Default: 3e8

NumPhaseShifterBits

Number of phase shifter quantization bits

The number of bits used to quantize the phase shift component of beamformer or steering vector weights. Specify the number of bits as a non-negative integer. A value of zero indicates that no quantization is performed.

Default: 0

ForwardBackwardAveraging

Perform forward-backward averaging

Set this property to true to use forward-backward averaging to estimate the covariance matrix for sensor arrays with conjugate symmetric array manifold.

Default: false

SpatialSmoothing

Spatial smoothing

Specify the number of averaging used by spatial smoothing to estimate the covariance matrix as a nonnegative integer. Each additional smoothing handles one extra coherent source, but reduces the effective number of elements by 1. The maximum value of this property is M–2, where M is the number of sensors.

Default: 0, indicating no spatial smoothing

ScanAngles

Scan angles

Specify the scan angles (in degrees) as a real vector. The angles are broadside angles and must be between –90 and 90, inclusive. You must specify the angles in ascending order.

Default: -90:90

DOAOutputPort

Enable DOA output

To obtain the signal's direction of arrival (DOA), set this property to true and use the corresponding output argument when invoking step. If you do not want to obtain the DOA, set this property to false.

Default: false

NumSignals

Number of signals

Specify the number of signals for DOA estimation as a positive scalar integer. This property applies when you set the DOAOutputPort property to true.

Default: 1

Methods

cloneCreate beamscan spatial spectrum estimator object with same property values
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs from step method
isLockedLocked status for input attributes and nontunable properties
plotSpectrumPlot spatial spectrum
releaseAllow property value and input characteristics changes
resetReset states of beamscan spatial spectrum estimator object
stepPerform spatial spectrum estimation

Examples

expand all

Create the signals and solve for the DOA's

Estimate the DOA's of two signals received by a 10-element ULA with element spacing of 1 meter. The antenna operating frequency is 150 MHz. The actual direction of the first signal is 10 degrees in azimuth and 20 degrees in elevation. The direction of the second signal is 60 degrees in azimuth and -5 degrees in elevation.

fs = 8000; t = (0:1/fs:1).';
x1 = cos(2*pi*t*300); x2 = cos(2*pi*t*400);
ha = phased.ULA('NumElements',10,'ElementSpacing',1);
ha.Element.FrequencyRange = [100e6 300e6];
fc = 150e6;
x = collectPlaneWave(ha,[x1 x2],[10 20;60 -5]',fc);
noise = 0.1*(randn(size(x))+1i*randn(size(x)));
hdoa = phased.BeamscanEstimator('SensorArray',ha,...
    'OperatingFrequency',fc,...
    'DOAOutputPort',true,'NumSignals',2);
[y,doas] = step(hdoa,x+noise);
doas = broadside2az(sort(doas),[20 -5])
doas =

    9.5829   60.3813

Plot the beamscan spectrum

plotSpectrum(hdoa);

References

[1] Van Trees, H. Optimum Array Processing. New York: Wiley-Interscience, 2002, pp. 1142–1143.

Introduced in R2012a

Was this topic helpful?