Main Content

uavWindSteady

Generate steady wind for UAV platform

Since R2024a

    Description

    The uavWindSteady object generates steady wind with a constant direction and velocity for a UAV platform. To simulate steady wind in a UAV scenario:

    1. Create the uavWindSteady object and set its properties.

    2. Attach the wind model to a UAV platform by using the addWind function.

    3. Obtain the wind velocity from the UAV scenario by using the windVelocity function while the UAV scenario is running.

    Note

    Simulating a UAV scenario that contains a uavWindSteady object requires Aerospace Toolbox.

    Creation

    Description

    example

    steadyWind = uavWindSteady creates a steady wind object with default property values.

    steadyWind = uavWindSteady(Name=Value) specifies properties using one or more name-value arguments. For example, uavWindSteady(StartTime=10) sets the wind start time to 10 seconds.

    Properties

    expand all

    You can modify these value object properties before you add the uavWindSteady value object to the UAV platform using addWind function.

    Wind velocity, specified as a vector of the form [vx vy vz]. the values of vx, vy, and vz are wind velocities in the positive x-, y-, and z-axes, respectively. . When you add a uavWindSteady object to a UAV platform, these velocities are in the inertial frame specified by the ReferenceFrame property of the UAV platform. Units are in m/s.

    Example: [1 0 0]

    Data Types: double

    Wind start time, specified as a nonnegative scalar. This value is relative to the simulation start time of the UAV scenario. Units are in seconds

    Example: 2

    Data Types: double

    Wind stop time, specified as a nonnegative scalar. This value is relative to the simulation start time of the UAV scenario. If specified as inf, the wind gust continues until the UAV scenario simulation ends. Units are in seconds

    Example: 5

    Data Types: double

    Examples

    collapse all

    Create a UAV scenario and platform. Specify a trajectory to fly the platform 5 meters north of the scenario origin at an altitude of 50 meters.

    scene = uavScenario;
    platformTrajectory = waypointTrajectory([0 0 -50; 5 0 -50],[0 1]);
    platform = uavPlatform("UAV",scene,Trajectory=platformTrajectory);

    Create a steady wind object with default properties.

    steadyWind = uavWindSteady
    steadyWind = 
      uavWindSteady with properties:
    
         Velocity: [3.5000 3.5000 5]
        StartTime: 0
         StopTime: Inf
    
    

    Create a wind gust object with default properties.

    gustWind = uavWindGust
    gustWind = 
      uavWindGust with properties:
    
        GustAmplitude: [3.5000 3.5000 5]
           GustLength: [120 120 80]
            StartTime: 0
             StopTime: Inf
    
    

    Create a turbulence wind object with default properties.

    turbulenceWind = uavWindTurbulence
    turbulenceWind = 
      uavWindTurbulence with properties:
    
                              Specification: "MIL-F-8785C"
                                  ModelType: "Von Karman (+q +r)"
                              WindSpeedAt6m: 15
                          WindDirectionAt6m: 0
        ProbExceedanceHighAltitudeIntensity: "10^-2 - Light"
            ScaleLengthAtMediumHighAltitude: 762
                                   Wingspan: 10
                 BandLimitedNoiseSampleTime: 0.1000
                           RandomNoiseSeeds: [23341 23342 23343 23344]
                                  StartTime: 0
                                   StopTime: Inf
    
    

    Add the wind objects to the UAV platform.

    addWind(platform,{steadyWind gustWind turbulenceWind})

    Set up the simulation, and advance the scene.

    setup(scene)
    advance(scene);

    Obtain the translational wind velocity on the UAV platform.

    velocityWind = windVelocity(platform)
    velocityWind = 1×3
    
        3.5753    3.0892    4.5805
    
    

    Obtain the angular wind velocity on the UAV platform.

    angularVelocityWind = windAngularRate(platform)
    angularVelocityWind = 1×3
    
       -0.0484   -0.0323   -0.0419
    
    

    Version History

    Introduced in R2024a