Documentation

This is machine translation

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

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

phased.Collector System object

Package: phased

Narrowband signal collector

Description

The Collector object implements a narrowband signal collector.

To compute the collected signal at the sensor(s):

  1. Define and set up your signal collector. See Construction.

  2. Call step to collect the signal according to the properties of phased.Collector. 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.Collector creates a narrowband signal collector System object, H. The object collects incident narrowband signals from given directions using a sensor array or a single element.

H = phased.Collector(Name,Value) creates a collector 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

Sensor

Sensor element or sensor array

Sensor element or sensor array specified as a System object in the Phased Array System Toolbox™. A sensor array can contain subarrays.

Antenna Toolbox™ antenna

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

WeightsInputPort

Enable weights input

To specify weights, set this property to true and use the corresponding input argument when you invoke step. If you do not want to specify weights, set this property to false.

Default: false

EnablePolarization

EnablePolarization

Set this property to true to simulate the collection of polarized waves. Set this property to false to ignore polarization. This property applies when the sensor specified in the Sensor property is capable of simulating polarization.

Default: false

Wavefront

Type of incoming wavefront

Specify the type of incoming wavefront as one of 'Plane', or 'Unspecified':

  • If you set the Wavefront property to 'Plane', the input signals are multiple plane waves impinging on the entire array. Each plane wave is received by all collecting elements. If the Sensor property is an array that contains subarrays, the Wavefront property must be 'Plane'.

  • If you set the Wavefront property to 'Unspecified', the input signals are individual waves impinging on individual sensors.

Default: 'Plane'

Methods

stepCollect signals
Common to All System Objects
clone

Create System object with same property values

getNumInputs

Expected number of inputs to a System object

getNumOutputs

Expected number of outputs of a System object

isLocked

Check locked states of a System object (logical)

release

Allow System object property value changes

Examples

expand all

Use the phased.Collector System object™ to construct a signal arriving at a single isotropic antenna from 10° azimuth and 30° elevation.

antenna = phased.IsotropicAntennaElement;
collector = phased.Collector('Sensor',antenna);
x = [1;0;-1];
incidentAngle = [10;30];
y = collector(x,incidentAngle)
y =

     1
     0
    -1

Collect a far-field signal arriving at a 3-element uniform linear array (ULA) of isotropic antenna elements.

antenna = phased.ULA('NumElements',3);
collector = phased.Collector('Sensor',antenna,'OperatingFrequency',1e9);
x = [1;0;-1];
incidentAngle = [10 30]';
y = collector(x,incidentAngle)
y =

  -0.0051 - 1.0000i   1.0000 + 0.0000i  -0.0051 + 1.0000i
   0.0000 + 0.0000i   0.0000 + 0.0000i   0.0000 + 0.0000i
   0.0051 + 1.0000i  -1.0000 + 0.0000i   0.0051 - 1.0000i

Collect different signals at a three-element array. Each input signal comes from a different direction.

array = phased.ULA('NumElements',3);
collector = phased.Collector('Sensor',array,'OperatingFrequency',1e9,...
    'Wavefront','Unspecified');

Each column is a signal for one element

x = rand(10,3)
x =

    0.8147    0.1576    0.6557
    0.9058    0.9706    0.0357
    0.1270    0.9572    0.8491
    0.9134    0.4854    0.9340
    0.6324    0.8003    0.6787
    0.0975    0.1419    0.7577
    0.2785    0.4218    0.7431
    0.5469    0.9157    0.3922
    0.9575    0.7922    0.6555
    0.9649    0.9595    0.1712

Specify three incident angles.

incidentAngles = [10 0; 20 5; 45 2]';
y = collector(x,incidentAngles)
y =

    0.8147    0.1576    0.6557
    0.9058    0.9706    0.0357
    0.1270    0.9572    0.8491
    0.9134    0.4854    0.9340
    0.6324    0.8003    0.6787
    0.0975    0.1419    0.7577
    0.2785    0.4218    0.7431
    0.5469    0.9157    0.3922
    0.9575    0.7922    0.6555
    0.9649    0.9595    0.1712

Algorithms

If the Wavefront property value is 'Plane', phased.Collector collects each plane wave signal using the phase approximation of the time delays across collecting elements in the far field.

If the Wavefront property value is 'Unspecified', phased.Collector collects each channel independently.

For further details, see [1].

References

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

Extended Capabilities

Introduced in R2012a

Was this topic helpful?