Description

An Aircraft is a Vehicle that can travel through the full three-dimensional local coordinate frame. Its nose heading is independent of its track and flight-path angle, and its altitude, climb, and turn can be limited. Motion is kinematic. The commanded speed is applied in the vehicle’s local east-north-up frame.


Example Use Cases

  • Airborne Platforms: Represents aircraft that climb, descend, and turn above a planetary surface.
  • Flight-Path Tracking: Simulates a commanded track and flight-path angle that are independent of the nose heading.

Module Implementation

The aircraft extends Vehicle and uses the same directed motion and waypoint routes. It adds a flight command, a turn-rate limit, a climb-rate limit, and an altitude floor. By default, Minimum Altitude is 0 m. Max Climb Rate and Max Turn Rate both default to 0, which disables those limits.

Position is integrated in the origin frame, where is east, is north, and is up. Latitude, longitude, and altitude are then updated by the parent vehicle.

Travel Direction

Track is the commanded horizontal direction, clockwise from true north. Flight Path Angle is the commanded angle of the velocity above the local horizontal. Positive climbs and negative descends. is clamped to , and is wrapped to .

Heading is commanded on its own. Setting heading motion is the one case that also sets the flight command: it selects level flight () with equal to the supplied heading, and it clears any waypoint route.

The commanded unit direction and velocity are

where is the commanded Speed [m/s]. The components are east, north, and up.

On a waypoint route, the desired direction points at the next waypoint and is still subject to the limits below. The route leaves Heading, Track, and Flight Path Angle on the last values written to them.

The flown track is the direction of the horizontal velocity. With east and north components and ,

wrapped to . When the ground speed is negligible, the flown track remains the commanded track.

Turn Rate

Max Turn Rate [deg/s] limits how fast the nose heading and the travel direction can change. A value of 0 disables the limit. Heading commands are then applied immediately, and the travel direction can reach its target in one step.

Otherwise the nose heading slews toward its command by at most degrees per step, along the shortest arc in :

where is the current nose heading and is the commanded heading.

The travel direction rotates toward the desired direction at the same rate, using spherical linear interpolation. If is the angle between the current direction and the desired direction , and in radians, then

where . While the aircraft is stopped, is the horizontal direction of the nose heading. While it is moving, is the current velocity direction.

Climb Rate

When Max Climb Rate is greater than zero, only the vertical speed is limited:

The east and north components stay at the values from the commanded direction, once the direction has reached the command. A capped climb or descent therefore flies a shallower path than , at a speed below .

Altitude Floor

Minimum Altitude is a hard floor.

Waypoint altitudes below the floor are raised before the leg is flown:

where is the current up coordinate and is the current geodetic altitude. On a waypoint leg at or below the floor, a downward component of the aim direction is removed and the direction is renormalized. A pure descent stops. A leg that still has a horizontal component continues level.

In every mode, downward speed is removed at the floor. If a step still finishes below , the aircraft is placed back on the floor:


Assumptions/Limitations

  • The model is kinematic. Lift, drag, thrust, stall, wind, and fuel use are outside this model.
  • Max Turn Rate is a shared limit on nose heading and velocity direction. Bank angle, load factor, and speed do not enter the turn.
  • Max Climb Rate limits vertical speed alone. Horizontal speed is held, so the flown speed falls while the cap is active. There is no maximum altitude.
  • The altitude floor is a geometric stop. Terrain, landing gear, and bounce are outside this model.
  • A waypoint route steers the velocity. Heading, Track, and Flight Path Angle stay on their own commands.
  • While the aircraft is stopped, turn limiting of the velocity direction starts from the nose heading.
  • A Max Climb Rate or Max Turn Rate of zero disables that limit.
  • Flight-path commands outside are clamped to that range.