Inference and interpolation of continuous 4D trajectories
10210765 ยท 2019-02-19
Assignee
Inventors
Cpc classification
G08G5/045
PHYSICS
G06F7/00
PHYSICS
G01C23/00
PHYSICS
International classification
G01C23/00
PHYSICS
G06F3/00
PHYSICS
Abstract
The present disclosure generally relates to systems and methods for determining a four-dimensional (4D) trajectory of an aircraft without requiring aircraft performance data or meteorological data. The techniques can include: detecting a plurality of 4D aircraft states of the aircraft, determining, for each of a plurality of pairs of adjacent aircraft states, a respective aircraft transition, detecting a plurality of pairs of repeat adjacent aircraft transition, discarding, for each pair of repeat adjacent aircraft transitions, a respective aircraft state from the plurality of aircraft states, and electronically transmitting the plurality of aircraft states after the discarding.
Claims
1. A method of updating a flight plan of an aircraft (702), the method comprising: detecting (502) a plurality of aircraft states (102) of the aircraft (702), each aircraft state (102) comprising a latitude value, a longitude value, an altitude value, and a time value, whereby the plurality of states (102) of the aircraft are stored in electronic memory (712) in temporal order; determining (504), for each of a plurality of pairs of adjacent aircraft states (102), a respective aircraft transition (104), each transition comprising a planar turn radius (208) value, a vertical turn radius (218) value, and an acceleration (230) value, whereby a plurality of aircraft transitions (104) are stored in electronic memory (712) in temporal order; detecting (506) a plurality of pairs of repeat adjacent aircraft transitions (104) comprising: respective planar turn radii (208) values whose difference is no more than a first threshold, respective vertical turn radii (218) values whose difference is no more than a second threshold, and respective acceleration (230) values whose difference is no more than a third threshold; discarding (506), for each pair of repeat adjacent aircraft transitions, a respective aircraft state (104) from the plurality of aircraft states (104), whereby an amount of data for the plurality of states of the aircraft stored in electronic memory (712) is reduced; electronically transmitting (508) from a first aircraft (792) system to a Flight Management System (FMS) the plurality of aircraft states (104) after the discarding; and updating, by the FMS, a flight plan for the aircraft (702) to represent at least a portion of a trajectory interpolated from the plurality of aircraft states (104), whereby an updated flight plan is produced.
2. The method of claim 1, wherein the detecting (506) is performed by the aircraft.
3. The method of claim 1, wherein the detecting (506) is performed by a terrestrial system.
4. The method of claim 1, wherein the determining (504), for each of the plurality of pairs of adjacent aircraft states (102), the respective aircraft transition (104) comprises computing respective headings (202) at each aircraft state (102) of a respective pair of adjacent aircraft states (102).
5. The method of claim 1, wherein the determining (504), for each of the plurality of pairs of adjacent aircraft states (102), the respective aircraft transition (104) comprises computing respective pitches (212) at each aircraft state (102) of a respective pair of adjacent aircraft states (102).
6. The method of claim 1, wherein the determining (504), for each of the plurality of pairs of adjacent aircraft states (102), the respective aircraft transition (104) comprises computing respective speeds (222) at each aircraft state (102) of a respective pair of adjacent aircraft states (102).
7. The method of claim 1, wherein the electronically transmitting (508) comprises electronically transmitting (508) from the aircraft (702) to a ground station (706).
8. The method of claim 1, wherein the electronically transmitting (508) comprises electronically transmitting (508) from a ground station (706) to the aircraft (702).
9. The method of claim 1, wherein the first threshold, the second threshold, and the third threshold are all zero.
10. The method of claim 1, further comprising: directing, by the FMS, the aircraft to follow the updated flight plan.
11. A system for updating a flight plan of an aircraft (702), the system comprising: a communications interface (708) configured to detect (502) a plurality of aircraft states (102) of the aircraft, each aircraft state (102) comprising a latitude value, a longitude value, an altitude value, and a time value, whereby the plurality of states (102) of the aircraft are stored in electronic memory (712) in temporal order; at least one electronic processor (710) configured to: determine (504), for each of a plurality of pairs of adjacent aircraft states (102), a respective aircraft transition (104), each transition (104) comprising a planar turn radius (208) value, a vertical turn radius (218) value, and an acceleration (230) value; store a plurality of aircraft transitions (104) in electronic memory (712) in temporal order; detect (506) a plurality of pairs of repeat adjacent aircraft transitions (104) comprising: respective planar turn radii (208) values whose difference is no more than a first threshold, respective vertical turn radii (218) values whose difference is no more than a second threshold, and respective acceleration (230) values whose difference is no more than a third threshold; discard (506) from the electronic memory (712), for each pair of repeat adjacent aircraft transitions (104), a respective aircraft state (102) from the plurality of aircraft states (102), whereby a filtered plurality of aircraft states is produced, and whereby an amount of data stored in electronic memory (712) is reduced; and a transmitter (708) configured to electronically transmit the filtered plurality of aircraft states (102) from a first aircraft (702) system to a Flight Management System (FMS) configured to update a flight plan for the aircraft (702) to represent at least a portion of a trajectory interpolated from the plurality of aircraft states (104), whereby an updated flight plan is produced.
12. The system of claim 11, further comprising instrumentation aboard the aircraft (702) configured to detect (502) the plurality of aircraft states (102) of the aircraft (702).
13. The system of claim 11, further comprising instrumentation present in a ground station (706) configured to detect the plurality of aircraft states (102) of the aircraft (702).
14. The system of claim 11, wherein the at least one electronic processor (710) configured to determine, for each of the plurality of pairs of adjacent aircraft states (102), the respective aircraft transition (104) is further configured to compute respective headings (202) at each aircraft state (102) of a respective pair of adjacent aircraft states (102).
15. The system of claim 11, wherein the at least one electronic processor (710) configured to determine, for each of the plurality of pairs of adjacent aircraft states (102), the respective aircraft transition (104) is further configured to compute respective pitches (212) at each aircraft state (102) of a respective pair of adjacent aircraft states (102).
16. The system of claim 11, wherein the at least one electronic processor (710) configured to determine, for each of the plurality of pairs of adjacent aircraft states (102), the respective aircraft transition (104) is further configured to compute respective speeds (222) at each aircraft state (102) of a respective pair of adjacent aircraft states (102).
17. The system of claim 11, wherein the transmitter (708) comprises a wireless transmitter (708) present aboard the aircraft (702).
18. The system of claim 11, wherein the transmitter (708) comprises a wireless transmitter (708) present at a ground station (706).
19. The system of claim 11, wherein the first threshold, the second threshold, and the third threshold are all zero.
20. The system of claim 11, wherein the FMS is further configured to direct the aircraft to follow the updated flight plan.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Various features of the examples can be more fully appreciated, as the examples become better understood with reference to the following detailed description, when considered in connection with the accompanying figures, in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
DESCRIPTION
(9) Reference will now be made in detail to the disclosed examples, which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts. In the following description, reference is made to the accompanying drawings that form a part thereof, and in which is shown by way of illustration specific examples. These examples are described in sufficient detail to enable those skilled in the art to practice them and it is to be understood that other examples may be utilized and that changes may be made without departing from the scope of the disclosure. The following description is, therefore, merely exemplary.
(10) Some examples disclosed herein provide a technique for describing and completely characterizing a four-dimensional (4D) trajectory of an aircraft using substantially less data than prior art techniques. That is, some examples operate using reduced bandwidth, in comparison to prior art techniques, for transmitting trajectory information. Such a reduced bandwidth results in reduced cost to airlines, with an estimated potential monetary savings of over 95%. Further, some examples operate with a limited need for complex infrastructures to accurately reproduce the 4D trajectory in ground and air systems. This results in reduced cost to airlines and air navigation service providers like the Federal Aviation Administration (FAA). Some examples provide for efficient representation of an aircraft trajectory without requiring knowledge of the aircraft's performance parameters or contextual meteorological conditions, such as ambient wind and temperature. Some examples may be used to efficiently provide trajectory information for use with air traffic management, for example. These and other advantages are described in detail herein.
(11) Some examples disclosed herein solve the problem of providing unambiguous and efficient continuous 4D trajectories. The disclosed techniques allow for describing a 4D trajectory by leaving out the aircraft-related and environment-related information. This allows for very simple and efficient representation of the trajectory without dependency on the characteristics of the objects executing the trajectory. At the same time, the disclosed techniques specify the way of inferring some of the kinematic properties (velocity, acceleration) of that object.
(12) Such representation of 4D trajectories can be particularly useful for the efficient transmission of trajectory information from and to an aircraft (e.g., via Automatic Dependent SurveillanceContract, ADS-C) and interpretation of the transmitted data to obtain unambiguous, continuous 4D trajectories. The techniques can also be used as an intermediate representation of reference trajectories in an aircraft Flight Management System (FMS) as a step between a flight plan and respective aircraft intent. Another application area is efficient conflict detection and resolution.
(13) Some examples disclosed herein enjoy one or more of the following advantages. Some examples provide a simple 4D trajectory representation, which requires no new data structures or custom objects (they can use any existing representation in which 4D trajectory is stored as a series of 4D points). Some examples provide a way to interpret the data that is contained in a series of 4D states, as well as a way of producing series of 4D points representing arbitrary 4D trajectory. Some examples provide for continuous representation of 4D trajectories. Some examples allow for inferring some of the kinematic properties of the object executing the trajectory (e.g., velocity, acceleration). Some examples allow for representing historical states together with the current state of the object on the trajectory. Some examples allow for efficient representation of a trajectory with a minimal number of elements required to reliably represent a 4D trajectory. Examples can be easily customized, for example, by providing extensions to the basic inference mechanism (e.g., custom acceleration model). Some examples provide an aircraft-independent representation of 4D trajectories, thus there is no requirement for a complex trajectory generation/prediction engine to produce or reproduce the representation of a trajectory (though examples can use a trajectory predictor to produce the representation of a trajectory which is flyable by a certain type of an aircraft). These and other features and advantages are presented herein.
(14)
(15) Thus, as depicted in
(16) As disclosed, transitions can be inferred from states. A special case of a transition is the constant transition when no change in heading, pitch or velocity over time occurs.
(17)
(18) Note that, in general, transitions describe how heading, pitch and/or velocity evolve over time between any two consecutive states. A transition can be realized as a straight line planar (great circle in the geodetic coordinates case), straight line vertical, or a turn (planar/vertical) with the radius determined by the change in heading between two subsequent states. A transition can be characterized by no change (constant transition) or any combination of changes (changing transition), thus a transition can be denoted by a triad as follows: (r.sub.p, r.sub.v, a), where r.sub.p denotes planar turn radius, r.sub.v denotes vertical turn radius, and a denotes acceleration. In general, such triads may be denoted by the symbol T or variations thereof.
(19) As described herein in detail, some examples of the disclosed subject matter filter out redundant aircraft states based on detecting and discarding equal or approximately corresponding transitions to achieve a compact low-memory representation of a trajectory by the remaining states. Two transitions T and T are considered equal if and only if the radius of the planar turn r.sub.p, the radius of the vertical turn r.sub.h, and the acceleration a are equal in those transitions. Note that any two constant transitions are equal. Two transitions T and T are considered approximately equal if and only if the differences in the values of the radii of the planar turn, the radii of the vertical turn and the accelerations are smaller than certain defined error thresholds. In symbols, for thresholds .sub.rp>0, .sub.rv>0, and .sub.a>0, two transitions T.sub.1=(r.sub.p1, r.sub.v1, a.sub.1) and T.sub.2=(r.sub.p2, r.sub.v2, a.sub.2), are said to be approximately equal if and only if |r.sub.p1-r.sub.p2|<.sub.rp and |r.sub.v1r.sub.v2|<.sub.rv and |r.sub.a1r.sub.a2|<.sub.a. A transition formed by the component-wise difference between two approximately equal transitions is said to be approximately constant.
(20) The error thresholds for the approximately equal determination may be selected according to a variety of techniques. For example, the error threshold may be selected to be, e.g., 1% of average values for these quantities. In general, the values of the thresholds may be application-dependent. Further, selecting the threshold values may involve a compromise between the size of the trajectory representation (number of 4D points) and its accuracy. An example rule for selecting the thresholds to represent a sufficiently accurate 4D trajectory of an aircraft is to account for the deadband or uncertainty of the control system of the aircraft. For example, the values of the thresholds may be set to one-half of the values of deadband size for the respective parameter (e.g., turn radii or acceleration).
(21) The flowchart of
(22) At block 202, the technique determines headings at the given states S.sub.i and S.sub.i+1. Given an input series of states of length L2, the heading angle h.sub.i (i=2, . . . , L) can be inferred from the states S.sub.i+1 and S.sub.i as follows, by way of non-limiting example.
(23) If i=2 (or another initial value of i) then h.sub.1=h.sub.2=atan2(d.sub.y, d.sub.x), where atan2(.Math.) is the two-argument arctangent function and d.sub.y=y.sub.2y.sub.1 and d.sub.x=x.sub.2x.sub.1 are the distances between S.sub.2 and S.sub.1 in the y and x coordinates respectively.
(24) If i>2, then h.sub.i=2atan2(d.sub.y, d.sub.x)h.sub.i1, where d.sub.y=y.sub.i=y.sub.i1 and d.sub.x=x.sub.iv.sub.i1 are the distances between S.sub.i and S.sub.i1 in the y and x coordinates respectively.
(25) At block 204, the technique computes the heading change between the given states. The heading change may be computed as a numerical difference between respective headings.
(26) At block 206, the technique determines whether the heading difference is non-zero. If not (210), the technique proceeds to block 212. Otherwise (208), the technique proceeds to determine the planar radius. The following is a non-limiting example determination. Given the input series of trajectory states of length L2, the planar radius r.sub.p.sub._.sub.i (i=2, . . . , L) can be inferred from the states S.sub.i1 and S.sub.i, and the respective heading angles h.sub.i1 and h.sub.i as r.sub.p.sub._.sub.i1=d.sub.p.sub._.sub.i(S.sub.i, S.sub.i1)/(2 sin((h.sub.ih.sub.i1)/2), where and d.sub.p.sub._.sub.i=((y.sub.iy.sub.i1).sup.2+(x.sub.i, x.sub.i1).sup.2).sup.0.5 is the planar distance between S.sub.i and S.sub.i1.
(27) At block 212, the technique determines respective pitches at the given states. Given the input series of trajectory states of length L2, the pitch angle p.sub.i (i=2, . . . , L) can be inferred from the states S.sub.i1 and S.sub.i as follows, by way of non-limiting example.
(28) If i=2, then p.sub.1=p.sub.2=atan2(d.sub.z, d.sub.p), where atan2(.Math.) is the two-argument arctangent function, d.sub.p=((y.sub.2y.sub.1).sup.2+(x.sub.2x.sub.1).sup.2).sup.0.5 is the planar distance between S.sub.2 and S.sub.1, and d.sub.z=z.sub.2z.sub.1 is the distance between S.sub.2 and S.sub.1 in the z-axis direction.
(29) If i>2, then p.sub.i=2atan2(d.sub.z, d.sub.p.sub._.sub.i)p.sub.i1, where d.sub.p.sub._.sub.i=((y.sub.iy.sub.i1).sup.2+(x.sub.ix.sub.i1).sup.2).sup.0.5 is the planar distance between S.sub.i, and S.sub.i1 and d.sub.z=z.sub.iz.sub.i1 is the distance between S.sub.i1 and S.sub.i in the z coordinate.
(30) At block 214, the technique computes the pitch change between the given states. The pitch change may be computed as a numerical difference between respective pitches.
(31) At block 216, the technique determines whether the pitch change is non-zero. If not (220), then the process proceeds to block 222. Otherwise (218), the process determines the vertical turn radius for the respective states. An example vertical radius determination follows. Given the input series of trajectory states of length L2, the vertical radius r.sub.v.sub._.sub.i (i=1, . . . , L1) can be inferred from the states S.sub.i1 and S.sub.i, and the respective pitch angles p.sub.i1 and p.sub.i as r.sub.v.sub._.sub.i1=d.sub.i(S.sub.i, S.sub.i1)/(2 sin((p.sub.ip.sub.i1)/2), where and d.sub.i=sqrt((y.sub.iy.sub.i1).sup.2+(x.sub.ix.sub.i1).sup.2+(z.sub.iz.sub.i1).sup.2) is the distance between S.sub.i and S.sub.i1.
(32) At block 222, the technique determines the respective speeds at the given states. Given the input series of trajectory states of length L2, the mean speed {tilde over (v)}.sub.i at the i-th transition (i=2, . . . , L) can be inferred from the states S.sub.i1 and S.sub.i, the planar radius r.sub.p.sub._.sub.i and the vertical radius r.sub.v.sub._.sub.i as follows, by way of non-limiting example.
(33) If r.sub.p.sub._.sub.i=0 and r.sub.v.sub._.sub.i=0, then {tilde over (v)}.sub.i1=d.sub.i(S.sub.i, S.sub.i1)/t, where and d.sub.i=sqrt((y.sub.iy.sub.i1).sup.2+(x.sub.ix.sub.i1).sup.2+(z.sub.iz.sub.i1).sup.2) is the spatial distance and t.sub.i=t.sub.it.sub.i1 is the time difference between S.sub.i and S.sub.i1.
(34) If r.sub.p.sub._.sub.i0 and r.sub.v.sub._.sub.i=0, then {tilde over (v)}.sub.i1==r.sub.p.sub._.sub.i (h.sub.ih.sub.i1)/t.sub.1, where h.sub.ih.sub.i1 is the heading difference between S.sub.i and S.sub.i1.
(35) If r.sub.p.sub._.sub.i=0 and r.sub.v.sub._.sub.i0, then {tilde over (v)}.sub.i1=r.sub.v.sub._.sub.i (p.sub.ip.sub.i1)/t.sub.i, where p.sub.ip.sub.i+1 is the pitch difference between S.sub.i and S.sub.i1.
(36) If r.sub.p.sub._.sub.i0 and r.sub.v.sub._.sub.i0, then {tilde over (v)}.sub.i1=d.sub.s.sub._.sub.i(S.sub.i, S.sub.i1)/t.sub.i, where d.sub.s.sub._.sub.i(S.sub.i, S.sub.i+1) is the distance between the two points S.sub.i and S.sub.i1 on a surface of spheroid given by the equatorial radius r.sub.p.sub._.sub.i and the distance from center to pole along the symmetry axis equal to r.sub.v.sub._.sub.i.
(37) At block 224, the technique computes the speed change between the given states. The speed change may be computed as a numerical difference between respective speeds.
(38) At block 226, the technique determines whether the speed difference is non-zero. If not (228), then the process proceeds to block 232. Otherwise (230), the process proceeds to determine the acceleration between the given states. Given the input series of trajectory states of length L2, the acceleration a.sub.i1 (i=2, . . . , L) on the transition between states S.sub.i1 and S.sub.i together with the velocity v.sub.i at the state S.sub.i can be inferred from the mean velocity {tilde over (v)}.sub.i1 using a constant acceleration model as follows, by way of non-limiting example.
(39) If i=2, then v.sub.1=0, v.sub.2=2 {tilde over (v)}.sub.i, and a.sub.1=v.sub.2/t.sub.1, where t.sub.1=t.sub.2t.sub.1 is the time difference between S.sub.2 and S.sub.1.
(40) If i>2, then v.sub.i=2 {tilde over (v)}.sub.i1v.sub.i1, and a.sub.i1=(v.sub.iv.sub.i1)/t.sub.i, where t.sub.i=t.sub.it.sub.i1 is the time difference between S.sub.2 and S.sub.1.
(41) If v.sub.i<0.5 {tilde over (v)}.sub.i1 and a.sub.i1<0, then apply a combined deceleration model (see
(42) At block 232, the technique determines whether the transition is constant, that is, whether the planar radius, the vertical radius, and the acceleration are all zero. If so (234), then the transition is determined to be constant. Otherwise (236), the transition between states S.sub.i and S.sub.i+1 is determined to be T.sub.i=(r.sub.p, r.sub.v, a).
(43) Alternately, at block 232, the technique determines whether the transition is approximately constant, that is, whether the differences in the values of the radii of the planar turn, the radii of the vertical turn and the accelerations are smaller than defined error thresholds. If so, the technique may store a constant transition or, in some embodiments, the approximately constant transition.
(44) Note that blocks 234 and 236 refer to storing certain transitions. Such storage may be in volatile or persistent memory. In some examples, the transitions are temporarily stored in volatile memory for as long as it takes to discard the associated state data if needed, then the respective transition data is discarded as well.
(45)
(46)
(47) State Discard Rule
(48) If transitions T.sub.i1 and T.sub.i are equal (or, for some examples, approximately equal, see below), then:
(49) discard the state S.sub.i from S,
(50) discard the transition T.sub.i from T, and
(51) recalculate the transition T.sub.i1 according to the transition inference technique disclosed herein, e.g., as shown and described in reference to
(52) An alternative approach to the trajectory filtering can involve allowed error specifications. For example, two transitions can be concatenated when they are approximately equal, as described herein.
(53) Thus,
(54) At block 402, the technique initializes i. More particularly, this block sets up the type of indexing and time information to be used for S and T. For example, this block establishes whether absolute time or relative time is used, and the specification and handling of the current state, the initial state, and any historical state information.
(55) In some examples, the state vectors may be based on absolute time as follows. For representing the absolute time, independently from the local time zones and daylight saving time, some examples may use the number of milliseconds elapsed from the Unix Epoch (Jan. 1, 1970 at UTC). Such a reference point in time technically does not change independently from the location on the globe, which is very useful representation to computer systems in dynamic and distributed applications. The use of milliseconds may take advantage of the continuous representation of the trajectories and facilitates the implementation with integer numbers. The absolute time may only be used for the current and future states represented in the trajectory, for the reasons stated in the following.
(56) Alternately, for some examples, the state vectors may be based on relative time information. In such examples, time may be represented as a number of milliseconds from a current (or reference) time instance.
(57) The following conventions may be used, with respect to a current state, an initial state, and historical states. The current state is the state for at the first non-negative time instance t along the trajectory (which is t=0, in the case of relative time). The initial state can be specified by defining an additional state So as the first position of the trajectory with a negative time index (e.g., at t=1000 milliseconds), which allows for inference of the initial state at S.sub.1. Under this convention, velocity at the first state of the trajectory is always equal to zero, and the initial heading and pitch angles are defined by the pair of the first and second state in the trajectory (the transition between those states is always a straight line transitions, i.e., no turn occurs). Historical state information can be stored in the states that represent the trajectory by defining more than one state with negative time indices. The time of historical state information is relative to the current state. The current state does have to be included explicitly in the trajectory representation and can be determined from the state with the greatest value of the time index and the corresponding transition.
(58) At block 404, the technique determines whether the current adjacent transitions are equal or approximately equal, i.e., whether they constitute a repeat transition. In some examples, this block detects whether the transitions are actually equal (or approximately equal, in some examples). If not, the index i is incremented (block 418) and control is passed to block 414. Otherwise, control passes to block 406.
(59) At block 406, the technique discards the detected redundant state, and at block 408 the technique discards the detected repeat transition. The discarding may include removing the corresponding data from memory by, e.g., erasing the data or altering a pointer to the data.
(60) At block 410, the technique recalculates the next transition. This block accounts for the removal of the repeat transition. The actions of this block may be performed as shown and described herein in reference to
(61) At block 412, the technique renumbers the states and transitions in order to account for the state discarded at block 406 and the transition discarded at block 408. Without this block, the index i may have a gap. Alternately, some examples omit this block, using instead the existing remaining indices.
(62) At block 414, the technique decides whether more states and transitions are to be processed. This block may be decided by examining the index i and determining whether any indexed states and transitions remain to be considered. If not, then the process proceeds to block 416 and ends. Otherwise, the process returns to block 404 and processes the next set of states and transitions.
(63)
(64) At block 502, the technique detects a plurality of aircraft states. The states may be as disclosed herein, i.e., quadruples consisting of geodetic coordinates of latitude, longitude, and altitude, together with a time parameter. The detection may be performed using any of a variety of expedients. For example, instrumentation of the aircraft itself may be used to determine any or all values in a state. Alternately, or in addition, ground systems, including RADAR, may be used to determine any of all values in a state. Per this block, states may be determined at regular temporal intervals, for example. Such intervals may be once every millisecond, every 10 milliseconds, every 100 milliseconds, every second, every two seconds, or every five seconds, by way of non-limiting examples. Alternately, or in addition, states may be determined at irregular intervals, but at least once every interval as described above.
(65) At block 504, the technique determines transitions corresponding to the states determined at block 502. The actions of this block may be performed as shown and described herein in reference to
(66) At block 506, the technique filters the aircraft states based on the transitions determined at the prior block. The filtering may discard approximately equal transitions and associated states, as shown and described above in reference to
(67) At block 508, the technique transmits the remaining states once filtering has been performed. The transmission may be made using a wireless radio-frequency transmitter, for example, e.g., wireless transmission interface 708 of
(68) Once the receiving entity has received the remaining states, it may obtain and/or reconstitute the aircraft's trajectory and/or flight parameters derivable therefrom. For example, the receiving entity may determine, from the received states, any of the following flight parameters at any selected time between the temporal outer boundaries of the received states: speed, heading, planar turn radius, pitch, vertical turn radius, acceleration, altitude, latitude, and/or longitude. Values for these flight parameters may be extracted from the states themselves directly, or may be derived therefrom, e.g., as shown and described in reference to
(69) The receiving entity, or another entity that has access to the aircraft's flight parameters derivable from the states sent to the receiving entity, may use such flight parameters for any of a variety of purposes.
(70) For example, an FMS or other system may update a flight plan (e.g., a preexisting flight plan) to better represent the aircraft's actual trajectory and/or account for any deviations from a filed flight plan. Such a flight plan may be an Instrument Flight Rules (IFR) or Visual Flight Rules (VFR) flight plan. The flight plan may be updated via an Aircraft Communications Addressing and Reporting System (ACARS), an ADS-C system, or a related ground control communications system, for example. The updated flight plan may be electronically stored in the FMC aboard the aircraft, at a ground system such as an air traffic control system, or both.
(71) As another example, an FMS within the aircraft itself may use the flight parameters to control the flight of the aircraft, e.g., by increasing or reducing speed, altering a heading, pitch, or turn radius, or otherwise adjusting an intended trajectory. The FMS within the aircraft may do so by, e.g., alerting a pilot that the aircraft has strayed from its intended flight parameters, by providing feedback and/or control signals to an autopilot system, or by displaying the actual trajectory, possibly together with the intended trajectory, for example.
(72) Yet another application area is efficient conflict detection and resolution. That is, a receiving entity, such as an air traffic control system, may predict that a first aircraft's future trajectory, as determined using the disclosed techniques, will intercept or potentially create a near-miss situation with a second aircraft, which may also provide its state data to the same or a different receiving entity for construction of its respective trajectory.
(73) Another application of the disclosed techniques includes using the state data as an intermediate representation of reference trajectories in the FMS, e.g., as a step between a flight plan and respective aircraft intent.
(74)
(75) Assume two representations of a 4D trajectory defined by two series of 4D state points. The series S.sub.d denotes a series of 4D trajectory points sampled at a certain mean frequency f over a period of time t and unfiltered. The series S.sub.c denotes a series of 4D state points that describe the trajectory according to an example, and contains no constant transitions. The relative efficiency E of representing 4D trajectories according to disclosed examples can be determined according to the ratio E=L.sub.d/L.sub.c, where L.sub.c is the length of the continuous trajectory represented by the series S.sub.c (i.e., the total number of states required for the trajectory to be correctly specified) and L.sub.d is the length of a discrete trajectory given by S.sub.d and is equal to L.sub.d=1+f.Math.t.
(76) The length L.sub.c is closely related to the total number of changes in all transitions c. Given that, according to some examples, the maximum number of simultaneous changes in one transition is three, and the number of transitions in the representation S.sub.d is equal to L.sub.d1, it is possible to determine the maximum number of changes in a discrete (input) 4D trajectory of length L.sub.d as c.sub.max=3(L.sub.d1)=3 f.Math.t. In such case there exist a transition with three changes between each two states, thus the lengths of the two representations are equal (i.e., L.sub.c=L.sub.d).
(77) The minimum number of changes c.sub.min=1 occurs in the degenerate case of a horizontally/vertically straight trajectory with a velocity change (acceleration), so that the total number of changes c can be a value from within the range c.sub.mincc.sub.max, where 1c3(L.sub.d1), c.sub.min+1L.sub.cL.sub.d, and 2L.sub.cL.sub.d.
(78) Thus, the efficiency is upper-bounded by E.sub.u=L.sub.d/(c.sub.min+1)=L.sub.d/2 and lower-bounded by E.sub.i=L.sub.d/L.sub.d=1.
(79) Because each transition defined for the series contains at least one change, then given c changes, the length L.sub.c can is a value from within the range 1+c/3L.sub.c1+c. Then the upper and lower bounds on the efficiency of the representation are given respectively as functions of the number of transitions by E.sub.u(c)=L.sub.d/(1+c/3), and E.sub.i(c)=L.sub.d/(1+c). Thus,
(80) An illustrative example of cost savings follows. For a typical discrete 4D trajectory sampled at the frequency of 1 Hz with 6-hour (3600 seconds) duration and 100 changes in total, the efficiency of data representation ranges from E.sub.i=34.6 up to E.sub.u=104.9. Assuming transmission of data over expensive and low-bandwidth medium such as, e.g., ACARS, for the transmission cost of a byte of data equal to $0.001, a fleet of 270 aircraft flying 200 days in a year, and 10 transmissions of 1000 points (44-byte values) per flight, the overall cost could be k=0.00127020010100044=$ 8,640,000.
(81) The potential minimum savings resulting from the efficient representation in the example case can be computed as s.sub.min=$8,640,000($8,640,000/34.6)=$8,640,000$249,711=$8,390,289, which is over 97% of the overall cost. The potential maximum savings may be computed as s.sub.max=$8,640,000($8,640,000/104.9)=$8,640,000$82,364=$8,557,636, which is over 99% of the overall cost. Both cases show that the overall annual cost of transmitting 4D trajectories could be almost eliminated when using the disclosed techniques.
(82) Thus, the results of these investigations show that the disclosed techniques have the potential to bring meaningful savings (over 95% in the analyzed case) in applications related to 4D trajectory date transmission, when compared to the traditional discrete 4D trajectory representation, without sacrificing accuracy.
(83) Note that the transmitted aircraft states may be subjected to a compression algorithm prior to transmission, further reducing the size of the transmitted data.
(84)
(85) Ground station 706 may include one or more electronic processors 710, communicatively coupled to computer readable media 712 (e.g., persistent memory), signal co-processor 714, and wireless transmission interface 708. Processor(s) 710 may form part of an electronic computer, for example. Signal co-processor 714 may be used to perform the signal processing operations disclosed herein, e.g., any, or any combination, of: determining, filtering, and transmitting state data, and/or reconstituting a trajectory from received state data. Wireless transmission interface 708 may be coupled to antenna 704, which sends and receives data wirelessly to/from aircraft 702. Computer readable media 712 may include computer-interpretable instructions which, when executed by processor(s) 710 and/or signal co-processor 714, cause ground station 706 to perform one or more of the techniques disclosed herein.
(86) Note that aircraft 702 of
(87) Examples are not limited to the communications between the example endpoints described herein. For example, examples may provide state information between intra-aircraft systems, or the state information may be communicated between aircraft.
(88) Although examples have been described in reference to aircraft trajectories, other forums are also possible for implementations. Examples have the potential to be used by any other companies that involve in their products trajectory processing or transmission. In particular, the following sectors may utilize examples: Aerospace (e.g., for trajectory processing and transmission in avionics, ATM, space), Automotive (e.g., for trajectory processing and transmission for ground vehicles and road systems), Navigation (e.g., for trajectory processing in navigation products such as GPS devices), and Software (e.g., for trajectory processing and transmission in software products such as on-line maps and routing services).
(89) Certain examples described above can be performed in part using a computer application or program. The computer program can exist in a variety of forms, both active and inactive. For example, the computer program can exist as one or more software programs, software modules, or both, that can be comprised of program instructions in source code, object code, executable code or other formats, firmware program(s), or hardware description language (HDL) files. Any of the above can be embodied on a computer readable medium, which can include computer readable storage devices and media in compressed or uncompressed form. Exemplary computer readable storage devices and media include conventional computer system RAM (random access memory), ROM (read-only memory), EPROM (erasable, programmable ROM), EEPROM (electrically erasable, programmable ROM), and magnetic or optical disks or tapes.
(90) Those skilled in the art will be able to make various modifications to the described examples without departing from the true spirit and scope. The terms and descriptions used herein are set forth by way of illustration only and are not meant as limitations. In particular, although the method has been described by examples, the steps of the method can be performed in a different order than illustrated or simultaneously. Those skilled in the art will recognize that these and other variations are possible within the spirit and scope as defined in the following claims and their equivalents.