主要内容

coverageConfig

R2026b

Coverage configuration for radar scan controller object

Since R2026b

    Description

    cfg = coverageConfig(scanner) returns a configuration struct cfg that describes the current scan coverage of scanner (you can use this configuration structure to plot the scan coverage).

    example

    cfg = coverageConfig(scanner,Name=Value) returns a configuration struct cfg that describes the current scan coverage of scanner, with additional options specified using one or more name-value arguments.

    example

    Examples

    collapse all

    Create an electronic sector scan controller that scans the azimuth sector from -30 to 30 degrees for a bistatic transmitter that has a fan beam with a 10-degree azimuth beamwidth and a 30-degree elevation beamwidth.

    Define the bistatic transmitter.

    freq = 300e6;
    txAnt = phased.SincAntennaElement(Beamwidth=[10 30]);
    txRdr = bistaticTransmitter(TransmitAntenna=phased.Radiator(Sensor=txAnt,OperatingFrequency=freq));

    Create a radar scenario and position a moving platform for the bistatic transmitter.

    scnro = radarScenario;
    traj = kinematicTrajectory(Position=[0 10e3 0],Orientation=quaternion([-90 0 0],"eulerd","ZYX","frame"));
    txPlat = platform(scnro,Trajectory=traj);

    Set the scan duration to 31 pulse repetition intervals (PRIs) so the beam sweeps slowly enough to capture the full transmit antenna pattern as it traverses the receive antenna's location.

    pri = 1/txRdr.Waveform.PRF;
    txScnr = radarScanController("Electronic","Sector",AzimuthLimits=[-30 30],ScanDuration=31*pri)
    txScnr = 
      ElectronicSectorScanner with properties:
    
          AzimuthLimits: [-30 30]
           ScanDuration: 0.0031
              StepAngle: 1
        DwellTimeSource: "Auto"
              ScanAngle: -30
               ScanTime: 0
    
    

    Create a default coverage configuration structure using coverageConfig.

    txCovCfg = coverageConfig(txScnr)
    txCovCfg = struct with fields:
              Index: 1
          LookAngle: [-30 0]
        FieldOfView: [0 0]
         ScanLimits: [-30 30]
              Range: 1
           Position: [0 0 0]
        Orientation: [1×1 quaternion]
    
    

    Update the default coverage configuration to include information about the bistatic transmitter and platform.

    txCovCfg.Index = txPlat.PlatformID;
    txCovCfg.Range = 20e3;
    txCovCfg.FieldOfView = txRdr.TransmitAntenna.Sensor.Beamwidth;
    txCovCfg.Position = txPlat.Position;
    txCovCfg.Orientation = quaternion(txPlat.Orientation,"eulerd","ZYX","frame")
    txCovCfg = struct with fields:
              Index: 1
          LookAngle: [-30 0]
        FieldOfView: [10 30]
         ScanLimits: [-30 30]
              Range: 20000
           Position: [0 10000 0]
        Orientation: [1×1 quaternion]
    
    

    Plot the scan coverage using theaterPlot, coveragePlotter, and plotCoverage.

    fig = figure(Name="Scan Coverage");
    clf(fig);
    ax = axes(fig);
    tp = theaterPlot(Parent=ax,AxesUnits=["km" "km" "km"], ...
        XLimits=25e3*[-1 1],YLimits=25e3*[-1 1],ZLimits=25e3*[-1 1]);
    title(ax,"Tx Scan Coverage");
    view(ax,20,20);
    
    txCovPltr = coveragePlotter(tp,DisplayName="Tx Coverage");
    plotCoverage(txCovPltr,txCovCfg);

    Figure Scan Coverage contains an axes object. The axes object with title Tx Scan Coverage, xlabel X (km), ylabel Y (km) contains an object of type patch. This object represents Tx Coverage.

    Input Arguments

    collapse all

    Scan controller object (MechanicalRasterScanner, MechanicalSectorScanner, ElectronicRasterScanner, or ElectronicSectorScanner) generated by radarScanController.

    Name-Value Arguments

    collapse all

    Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

    Example: cfg = coverageConfig(scanner,FieldOfView=[60,30],Range=2000)

    Configuration index corresponding to the cfg "Index" field, specified as a positive integer. The default value is 1.

    Data Types: double

    Field of view corresponding to the cfg "FieldOfView" field, such as the field of view of the surveillance radar, specified as a 2-element row vector, where the first element is the azimuth field of view and the second element is the elevation field of view. Units are in degrees (deg). The default value is [0 0].

    Data Types: double

    Range corresponding to the cfg "Range" field, such as the maximum range of the surveillance radar, specified as a positive scalar. Units are in meters (m). The default value is 1.

    Data Types: double

    Output Arguments

    collapse all

    Coverage configuration, returned as a struct. Fields in the struct include Index, LookAngle, FieldOfView, ScanLimits, Range, Position, and Orientation.

    FieldDescription
    IndexConfiguration index, returned as an integer. The default value is 1.
    LookAngle

    Current scan angle (ScanAngle) of the scan controller object scanner, in units of degrees, returned as a scalar or 2-element row vector depending on the type of scan controller object.

    FieldOfView

    Field of view, returned as a 2-element row vector, where the

    • MechanicalRasterScanner or ElectronicRasterScanner – 2-element row vector, where the first element is the azimuth angle and the second element is the elevation angle.

    • MechanicalSectorScanner or ElectronicSectorScanner – Scalar azimuth angle.

    first element is the azimuth field of view and the second element is the elevation field of view. Units are in degrees. The default value is [0 0].

    ScanLimits

    Scan limits, returned as a 1-by-2 vector or 2-by-2 matrix.

    • MechanicalRasterScanner or ElectronicRasterScanner – 2-by-2 matrix, where the first row is the azimuth limits (AzimuthLimits) and the second row is the elevation limits (ElevationLimits).

    • MechanicalSectorScanner or ElectronicSectorScanner – 1-by-2 vector containing the azimuth limits (AzimuthLimits).

    RangeRange, returned as a positive scalar. Units are in meters. The default value is 1.
    Position

    Origin position with respect to the global coordinate frame, returned as a 3-element row vector in the form of [x y z]. Units are in meters. The default value is [0 0 0].

    Orientation

    Orientation with respect to the global coordinate frame, returned as a unitless scalar quaternion. A rotation matrix, a quaternion, or three Euler angles in ZYX sequence can describe this rotation transformation. The default value is quaternion(1,0,0,0).

    You can use cfg to plot the scan coverage in a theaterPlot using its plotCoverage object function.

    Version History

    Introduced in R2026b