Contenido principal

ManeuveringAircraft

Target specification for maneuvering aircraft

Since R2025a

    Description

    A ManeuveringAircraft object contains a target specification for a maneuvering aircraft. A maneuvering aircraft is an aircraft that can quickly change its flight mode from a steady, level flight to sharp turns and quick accelerations. You can use the ManeuveringAircraft object as an input target specification to multiSensorTargetTracker. The target specification defines the state convention for trackers initialized with it. For ManeuveringAircraft, the output state convention is [x;vx;y;vy;z;vz], where:

    • x, y, and z represent the x-, y-, and z-coordinates in meters.

    • vx, vy, and vz represent the velocity components in different directions in meters per second.

    Creation

    To create a ManeuveringAircraft object, use the trackerTargetSpec function with the input arguments "aerospace", "aircraft", and "maneuvering". For example:

    spec = trackerTargetSpec("aerospace","aircraft","maneuvering")

    Properties

    expand all

    Number of distinct maneuver modes, specified as a positive integer greater than 1. Each mode represents a different set of capabilities for altering the aircraft's trajectory and velocity, ranging from minimal changes in motion to high-intensity maneuvers involving rapid turns and accelerations.

    Note

    You must set this property before setting any other property.

    Example: 3

    Data Types: single | double

    Since R2026a

    Option to enable tracking in a geographic scenario, specified as true or false. For more information, see Tracking Aerospace Targets in Geographic Scenario.

    • When this property is true, the output state convention is [latitude;vxLocal;longitude;vyLocal;altitude;vzLocal], where position components latitude, longitude, and altitude are defined in the ECEF (WGS84) coordinate system, in units of [degrees;degrees;meters]. The velocity components vxLocal, vyLocal, and vzLocal are defined in a local NED or ENU coordinate system with an origin at its concurrent location [latitude;longitude;altitude]. You can use the GeographicReferenceFrame property to specify whether the reference frame is NED or ENU. Additionally, any track with an altitude level below zero will be deleted quickly.

    • When this property is false, the output state convention is represented in a user-defined reference frame. This user-defined reference frame must be consistent with the definition of the sensor specifications.

    Data Types: logical

    Since R2026a

    Reference frame for the target motion in a geographic scenario, specified as "NED" (north-east-down) or "ENU" (east-north-up).

    • When this property is "NED", the output state convention is [latitude;vNorth;longitude;vEast;altitude;vDown]. The velocity vNorth, vEast, and vDown are measured from a local reference frame with its origin at the object's location [latitude;longitude;altitude]. vNorth and vEast lie within the tangent plane of the Earth's surface, pointing north and east, respectively. vDown is measured perpendicular to this plane, pointing downward into the Earth.

    • When this property is "ENU", the output state convention is [latitude;vEast;longitude;vNorth;altitude;vUp]. The velocity vEast, vNorth, and vUp are measured from a local reference frame with its origin at the object's location [latitude;longitude;altitude]. vEast and vNorth lie within the tangent plane of the Earth's surface, pointing east and north, respectively. vUp is measured perpendicular to this plane, pointing away from the Earth.

    Example: "ENU"

    Data Types: single | double

    Maximum horizontal speed of the target for different modes, specified as a positive real-valued 1-by-N vector. The number of elements in the vector must be equal to NumManeuvers. Units are in meters per second.

    Example: [400 500 600]

    Data Types: single | double

    Maximum vertical speed of the target, specified as a positive real-valued 1-by-N vector. The number of elements in the vector must be equal to NumManeuvers. Units are in meters per second.

    Example: [100 200 300]

    Data Types: single | double

    Maximum horizontal acceleration of the target, specified as a positive real-valued 1-by-N vector. The number of elements in the vector must be equal to NumManeuvers. Units are in meters per second squared.

    Tip

    Horizontal acceleration encompasses both changes in speed and horizontal turns.

    Example: [5 50 60]

    Data Types: single | double

    Maximum vertical acceleration of the target, specified as a positive real-valued 1-by-N vector. The number of elements in the vector must be equal to NumManeuvers. Units are in meters per second squared.

    Example: [2 50 60]

    Data Types: single | double

    Object Functions

    hasTrackerInputDetermine whether tracker needs additional input for target specification

    Examples

    collapse all

    Create a specification for maneuvering aircraft performing aerobatics in an air show.

    aerobaticSpec = trackerTargetSpec("aerospace","aircraft","maneuvering")
    aerobaticSpec = 
      ManeuveringAircraft with properties:
    
                     IsGeographic: 0                
               MaxHorizontalSpeed: [600 600]    m/s 
                 MaxVerticalSpeed: [300 300]    m/s 
        MaxHorizontalAcceleration: [10 90]      m/s²
          MaxVerticalAcceleration: [1 90]       m/s²
    
    

    Configure the maneuvering aircraft specification based on your application. The aircraft of interest have two distinct maneuver modes. The first mode is for steady level flight and allows for little maneuvering. The second mode is for aerobatic performance and allows for much higher maneuvering acceleration compared to the first mode.

    aerobaticSpec.NumManeuvers = 2;
    aerobaticSpec.MaxHorizontalSpeed = [500 500];
    aerobaticSpec.MaxVerticalSpeed = [250 250];
    aerobaticSpec.MaxHorizontalAcceleration = [10 80];
    aerobaticSpec.MaxVerticalAcceleration = [1 50]; 

    More About

    expand all

    Extended Capabilities

    expand all

    C/C++ Code Generation
    Generate C and C++ code using MATLAB® Coder™.

    Version History

    Introduced in R2025a

    expand all