atd 2 is a prosumer of swim data
play

ATD-2 is a Prosumer of SWIM Data ATD-2 has greatly benefited from - PowerPoint PPT Presentation

ATD-2 is a Prosumer of SWIM Data ATD-2 has greatly benefited from existing SWIM feeds The project is powered by real-time SWIM data ATD-2 consumes and utilizes the following SWIM feeds in real-time (TFMS) Traffic Flow Management


  1. Monitoring • Grafana Reports • System Monitor • Prometheus Alerts/Emails 5/22/2019 6/10/20 23

  2. Grafana • Monitors feeds over time • Allows us to compare feeds from multiple sources (ACY and OEX) 5/22/2019 24

  3. System Monitor • Quick look view of the status of key ATD-2 Systems • Ability to drill down to the specific metrics • Custom developed for ATD-2 5/22/2019 25

  4. Prometheus Monitoring Emails 5/22/2019 26

  5. Mobile App • Swim Feed Dashboard – IOS - https://itunes.apple.com/us/app/swim-feed-dashboard/id1453740223 – Android https://play.google.com/store/apps/details?id=us.mosaicsoftware.swimfeeddashboar d&hl=en_AU – Reports status of Mosaic SWIM Feeds • Could be helpful in determining if your SWIM connection is the problem or more upstream impacting everyone 5/22/2019 27

  6. Overview of Data Feeds Feed Data Source ATD-2 Use Data • Schedule data • CDM data TfmData TFMS • Flight plans Flight Flight • EDCTs • Track data STDDS SMES ASDE-X/ASSC • Surface track data Track • Release times TBFM MIS TBFM Flight Plan • EDCTs • EOBTs TfmData TFMS • Gates Flight Terminal • Tail Numbers • Ground Stops TfmData Flow TFMS TMIs • MIT restrictions (planned) • Support for NASA research SFDPS ERAM Flight Plan TBFM 5/22/2019 28

  7. Overview of Data Feeds • The NAS systems generating flight data SWIM feeds are interconnected. – Basic understanding the NAS architecture helps make sense of the SWIM data. TBFM ASDE-X ERAM ERAM ERAM ERAM ERAM TFMS ERAM (ZFW) (DFW) (ZAU) (ZAU) (ZAU) (ZAU) (ZAB) (ZAB) ERAM TFDM ERAM ERAM ERAM ERAM ERAM ERAM (ZFW) (DFW) (ZAU) (ZAU) (ZAU) (ZAU) (ZAB) (ZAB) NAS System SWIM Feeds Primary Inputs Secondary Inputs Deployments TFMS • TfmData Flight • ERAM flight/track data • TBFM release times 1 • TfmData Flow • OAG schedule • STDDS surface times • TfmData Terminal • Airline CDM messages • OIS / NTML • ATOP oceanic track • International feeds • TFDM predictions ERAM • SFDPS • ATC flight plan data • TFMS EDCTs 1 per ARTCC • En route radar track • TFMS reroutes (20 total) TBFM • TBFM MIS • ERAM flight/track data • TFMS international track 1 per ARTCC (adjacent ARTCCs) • TFDM release time negotiation (20 total) • TRACON fight/track data ASDE-X • STDDS SMES • Surface radar track 1 per airport • ERAM flight data (38 total) TFDM • TTP • All the above 1 per airport (future) 5/22/2019 29

  8. Overview of Data Feeds Diff or Full Feed Daily Volume Sync Messages? Messages 280k (note: much TfmData Flight No Full larger batches) Diff (with full at STDDS SMES 22.5 million No regular intervals per flight) TBFM MIS 25 million Yes Diff TfmData Terminal 225k No Full TfmData Flow 1.7 million Yes Full SFDPS 5.3 million No Full 5/22/2019 30

  9. Overview of Data Feeds Source Flights Included Earliest Flight Data Latest Flight Data TFMData All IFR ~24 hours before “Actual” arrival gate time Flight scheduled OAG published by Operators operation (up to 2 hours after taxi in) TFMData Only flights that publish CDM ~24 hours before “Actual” arrival gate time Terminal messages including Terminal scheduled operation published by Operators Flight Data elements (up to 2 hours after taxi in) SFDPS All IFR and some VFR Filed flight plan Flight lands TBFM MIS Impacted by a TBFM arrival Flight plan filed within Track ends or leaves (TMA) or departure (EDC) TBFM adapted region TBFM adapted region system STDDS Operating at or near ASDEX First correlated flight Last correlated flight SMES airport track track 5/22/2019 31

  10. Overview of Data Feeds SWIM Feed IDs Source Unique Flight IDs Examples ID Recycles Multiple IDs per Flight TFMData • flightRef • 100725389 • Infrequent • Rare Flight • gufi • KT44707500 • Infrequent • Yes TBFM • tmaId • T06629 • Immediately • Yes MIS SFDPS • fdpsGufi • us.fdps.2019-05- • Never • Rare 09T13:40:40Z.00 0/19/501 • uuidGufi • b443e49c-0cdf- • Unlikely • Yes, on 47ed-bce5- failover 5275a54a8cc0 • flightPlanIdentifier • KT44707500 • Infrequent • Yes STDDS • stid • 1716539 • Infrequent • Possible SMES • track • 862 • Frequent • Frequent • enhancedData.eramGufi • KT44707500 • Infrequent • Yes • enhancedData.sfdpsGufi • us.fdps.2019-05- • Never • Rare 09T13:40:40Z.000 /19/501 5/22/2019 32

  11. Data Elements in SWIM Feeds • Full mappings available publically here: – https://aviationsystems.arc.nasa.gov/atd2-industry-days/fuser/TFMS-Flight- Data-Mapping_85328230.html • Mapping Example – TfmData Flight Messages Data TfmData Flight Message Type TfmData Flight Data Element Element acid <all> qualifiedAircraftId.aircraftId aircraftType BOUNDARY_CROSSING_UPDATE flightAircraftSpecs DEPARTURE_INFORMATION flightStatusAndSpec.aircraftspecification FLIGHT_CREATE airlineData.flightStatusAndSpec.aircraftspecification FLIGHT_MODIFY airlineData.flightStatusAndSpec.aircraftspecification FLIGHT_PLAN_AMENDMENT_INFO newFlightAircraftSpecs FLIGHT_PLAN_INFORMATION flightAircraftSpecs FLIGHT_ROUTE flightStatusAndSpec.aircraftspecification FLIGHT_SCHEDULE_ACTIVATE flightStatusAndSpec.aircraftspecification FLIGHT_TIMES flightStatusAndSpec.aircraftspecification 5/22/2019 33

  12. Parsing Data Feeds SWIM Data Processor Fuser TfmData Terminal TFMS FIXM TfmData Terminal Terminal Mediation Flight Flight Transfer Data Processor flight.getDepartureNas().getStandPositionAndTime().getStandTime(). getActual().getTime() flight.getActualOffBlockTime() 5/22/2019 34

  13. Parsing Data Feeds • One parser per feed – Transforms raw XML file into flattened object structure • Leveraging JAXB with jaxb2-basics to simply XML->Java Object conversion – In some cases, perform aggregation against messages from the same source • Aggregation examples – STDDS SMES • Track data is sent as diffs • Have to aggregate with previous messages for same flight so that complete position update is processed by Fuser Previous Current To Fuser Time 12:00:01 12:00:02 12:00:02 Latitude 35.2156 ----- 35.2156 Longitude -80.947 3 -80.947 5 -80.947 5 – TBFM-MIS • Need to be able to handle SYNC messages properly • Parsers archive raw message to databases for analysis 5/22/2019 35

  14. TFMData Flight Parser • Parser features – Message splitting/filtering • Filter to MessageType=FlightDataMessageOutgoing. • Un-batch incoming messages. – Message aggregation • Sort messages within each by time order. • Messages are full, but message types contain different types of data. – Message matching • Global GUFI assigned from ATD2 GufiService. • Locally match data on Flight Ref with additional internal validation. – Message Transformation • Common format with GUFI and all possible data across TFM message types. • Key headers – MessageType : FlowInformationMessageOutgoing / FlightDataMessageOutgoing 5/22/2019 36

  15. TFMData Flight Parser • Lessons learned – TFMS Flight Ref is good for matching NAS-wide flight data. – Schema is somewhat challenging to parse -- most messages are different format. – Message types (and message trigger) are important to interpreting the message intent. • E.g. MsgType=FLIGHT_TIMES, Trigger=NEMS_TBFM_FLT_DEPARTURE_MSG – Some JMSDD data elements are not available yet (e.g. etdTimeType=METERED). 5/22/2019 37

  16. STDDS SME Parser • Parser features – Message splitting/filtering • Process each airport independently. – Message aggregation • Merge input data on track number. • Handle “full=true” sync messages. • Handle the delete element (r=1) attribute. – Message matching • Global GUFI assigned from ATD2 GufiService. • Locally match data on STDDS Surface Track ID with additional internal validation. – Message Transformation • Common format with value-added fields (e.g. GUFI). • Key headers – airport – msgType : AT (PositionReport), AY (SystemStatus), AD (adsbReport), ML (mlatReport) 5/22/2019 38

  17. STDDS SME Parser • Lessons learned – Beacon code used to retrieve core data from ERAM (e.g. ACID, aircraft type, etc). • When aircraft emit the “wrong” beacon code, ACID will also be wrong. – Track messages are interpolated (may indicate wrong location). – Schema updates are deployed to different airports at different times. 5/22/2019 39

  18. TBFM-MIS Parser • Parser features – Message filtering • ATD2 filters to messages from TBFM ARTCCs of interest. – Message aggregation • Merge input data on TMA ID. • Merge elements in sta, eta, sch, mrp data groups by common “mfx” name. • Handle NEW, AMD, DEL message types. • Handle messages out of order. • Handle sync messages. – Message matching • Global GUFI assigned from ATD2 GufiService. • Locally match data on TMA ID with additional internal validation. – Message Transformation • Common format with value-added fields (e.g. GUFI). • Key headers – ARTCC – TBFM originating ARTCC. – SYNC – sync message. – STDCHG – indicator that release time either set or unset. 5/22/2019 40

  19. TBFM-MIS Parser • Lessons learned – TmaId used for merging data, but can recycle very quickly. – TBFM SYNC messages had to be handled as syncs and not updates. • Sync messages can take many minutes to complete. Prevented resetting the EDCT back to an old value. – Treat AMD/NEW the same. 5/22/2019 41

  20. Additional References • Animated storyboards – About ERAM in general – About TBFM in general – About TFMS in general – About TFDM in general • Operation Context and Use Cases – About TfmData Flow Operational Context and Use Cases – About TfmData Flight Operational Context and Use Cases – About TBFM SWIM Operational Context and Use Cases – About SFDPS Operational Context and Use Cases 5/22/2019 42

  21. Wrap Up • SWIM contains lots of data • The data has lots of value • But consuming that data is challenging • If only there were some way to fuse the data together… 5/22/2019 43

  22. Questions 5/22/2019 44

  23. National Aeronautics and Space Administration Airspace Technology Demonstration 2 (ATD-2) Fuser Why Everyone Should Have One May 22, 2019 5/22/2019

  24. Why Have a Fuser • One stop shopping for all your flight data needs 5/22/2019 5/22/2019 46

  25. Fuser Helps Solves SWIM Challenges • Problem – With the great new FAA SWIM feeds, your organization feels they are drowning in data that they do not understand. – You need to make actionable, operational information out of this data! • Solution – To accomplish this, you need a framework that can mediate between disparate sources of data, pulling in the right data, at the right time . – Need information on which data source is best to use for a specific need. – Access to the information in common well defined data model 5/22/2019 5/22/2019 47

  26. Design Motivations • Reduce time spent troubleshooting – Less time troubleshooting = more time to create new capabilities • Needed a system where the data is exposed at all critical phases – What we received – What we parsed – How we matched/correlated – How we fused • More data is not a linear problem. As you get more data feeds the possible issues become exponential • Tired of seeing same issues manifest on various efforts and phases – Redundant effort – Inconsistent results – Inconsistent definitions 5/22/2019 5/22/2019 48

  27. What is the Fuser • Fuser is a system composed of multiple components providing – Parsers for various data sources – Matching Services – Fusion Services • Transformation • Filtering • Merging • Mediation – Database Loaders • Common well defined schema 5/22/2019 5/22/2019 49

  28. Fuser High Level Architecture 5/22/2019 5/22/2019 50

  29. Additional Capabilities • Flight Management – Create – Update – Remove • Data Distribution • Built in performance monitoring • Built in recovery solution • Reconstitution available for Fuser clients • Pluggable – Pluggable architecture for new data feeds 5/22/2019 5/22/2019 51

  30. Fuser Client API • Quickly develop Fuser driven applications • Handles connecting and managing the connection • Creates an in memory repository • Support for event listeners 5/22/2019 5/22/2019 52

  31. Technology Stack • Java • Apache Camel • Spring Framework • Apache CXF – Web services used for reconstitution • Redis – Used for recovery • ActiveMQ – Pub/Sub messaging • Postgresql – Optional database loading • Dropwizard – Metrics 5/22/2019 5/22/2019 53

  32. Fuser Industry Documentation • Fuser Overview • Component Descriptions • Fuser Data Dictionary – Complete list of fields found in the Fuser – Field description • Most fields were meant to be self documenting • SWIM data to Fuser Mappings – Likely more valuable than the data dictionary itself • References to other SWIM related documentation • https://aviationsystems.arc.nasa.gov/atd2-industry-days/fuser/ATD-2- Industry-Day-Documentation-Outline_81565170.html 5/22/2019 5/22/2019 54

  33. Questions 5/22/2019 55

  34. National Aeronautics and Space Administration Airspace Technology Demonstration 2 (ATD-2) Fuser Deeper Dive (Mediation & Use Cases) May 22, 2019 5/22/2019

  35. Discussion Topics • Flight Matching • Fuser Processing – Transformation – Filtering – Mediation • Fuser Metadata • Use Cases 5/22/2019 57

  36. Flight Matching 5/22/2019 58

  37. Flight Matching: Overview • Goal – Assign a Global Unique Flight Identifier (GUFI) to every flight message. • Ex: AAL1428.DFW.MCI.190507.1504.0132.TFM • Why? – GUFI links together flight data across all external data feed sources. – Crucial precursor to data fusion. • What is a flight? – Flight matching is where the “flight” is defined. – ATD2 defines a “flight” as the full lifecycle : starting with the scheduled or planned operation and ending at the arrival gate. 5/22/2019 59

  38. Flight Matching: ATD2 Approach • ATD2 DFW GufiService – Handles GUFI requests from over 10 different data sources. – Stores the flight data state of each GUFI. • External data feed processors – Request GUFI from GufiService. – Messages to Fuser include GUFI. • GufiService performance (DFW Fuser): – Total: • ~15M avg messages handled per day. ~170 per second. • ~110K avg GUFIs managed per day. • ~200 avg messages per GUFI. – DFW: • ~3.5M avg messages handled per day. • ~7,500 avg GUFIs managed per day. • ~1,000 avg messages per GUFI. 5/22/2019 60

  39. Flight Matching: ATD2 Approach • Basic approach to matching a flight – Find the best possible flight match, if one exists in the known data. – Otherwise, create a new GUFI, if sufficient data exists. • Core flight matching data – Aircraft ID / Callsign (e.g. SWA568). – Origin / Destination airports (e.g. DFW -> LGA). – Flight time windows (e.g. 9:30 - 13:45). – Position (e.g. latitude / longitude / altitude). – External data feed system IDs (e.g. TFMData flightRef). – Aircraft attributes (e.g. registration number, Mode S transponder) 5/22/2019 61

  40. Flight Matching: Example Time Message TFM SFDPS TBFM STDDS A TD2 GUFI FlightData MIS SMES Sunday Scheduled flight plan X AAL045.DFW.CLT.021019.1900.0000 19:00 AAL045 DFW -> CLT Monday 19:00->21:59 Monday Filed flight plan X X X AAL045.DFW.CLT.021019.1900.0000 17:00 AAL045 DFW -> CLT Monday 19:00->21:59 Monday Amend flight plan X X X AAL045.DFW.CLT.021019.1900.0000 17:30 route AAL045 DFW -> CLT Monday 19:00->21:59 Monday CDM times update X AAL045.DFW.CLT.021019.1900.0000 18:30 AAL045 DFW -> CLT Monday 20:05->22:15 Monday EDCT X X AAL045.DFW.CLT.021019.1900.0000 18:50 AAL045 EDCT=20:24 Monday Scheduled flight plan X AAL045.DFW.CLT.021119.1902.0000 19:02 AAL045 DFW -> CLT Tuesday 19:00->21:59 Monday Surface surveillance X AAL045.DFW.CLT.021019.1900.0000 19:55 AAL045 ASEX=KDFW Monday Flight Departure X X X AAL045.DFW.CLT.021019.1900.0000 20:25 AAL045 Monday Airborne surveillance X X X AAL045.DFW.CLT.021019.1900.0000 20:27 AAL045 5/22/2019 62

  41. Flight Matching: Is Simple, Right? Spend 90% effort solving the last Air Taxi 10% of the problem Pilots Using Wrong Beacon Codes Callsign Amendments Multiple Flight Plans Filed Cancelations and Diversions Long Flight Delays The Easy-er Flight Data 5/22/2019 63

  42. Flight Matching: Regression Testing • Regression Testing = Key to matching logic improvement – Definition: A suite of tests that are required to pass when software changes are made. – Matching logic improvement is heuristic-based, adaptive process. • There is no 100% solution. Flight data is always scheming to defeat you. – Goal is intelligent whack-a-mole – fix one issue without causing another. • Purpose – Emulate full matching process: replaying input messages from mock sub-components through the internal GufiService logic. – Reliable debugging of operational use cases. – Each test is simple format for analysts/testers to describe a matching problem. – Stockpile of regression tests to run against future development. 5/22/2019 64

  43. Flight Matching: Regression Testing • Regression Test Process – Leverage database of historical GufiService messages. – Build match logic test cases with validated results. – GufiMatchTester software drives GufiService with test cases. • Currently over 100 regression test cases. – Iterate GufiService logic improvements until all tests pass. GufiMatch GufiService Tester GUFI Message Regression Database Test Cases 5/22/2019 65

  44. Flight Data Transformations 5/22/2019 66

  45. Fuser Flight Processing 5/22/2019 67

  46. Filtering • Filtering is used to filter out an entire update before the data is applied to the fused flight – Eliminate unnecessary processing and/or updates that reduce data quality. – Filtering is based on defined rules: Filter Name Description Reason In certain cases, we know that a source has See Industry Day Documentation for bad data in certain fields, we don't trust the AttributeFilter more details Link. values, or we feel we will have better data from another source. The systems needs to have all three to have Filter out the position update if that a valid position. At times we are getting bad FlightPositionFilter latitude, longitude, or timestamp is null. data with one of those three fields missing causing problems downstream. Filter out any messages that have not These are messages we were unable to GufiFilter been assigned a GUFI (Global Unique match typically due to a lack of information. Flight Identifier). In this case, the Fuser was for an STBO system operating for Charlotte Douglas Filter out any messages that are not International Airport (CLT) and Therefore only LocationFilter arriving at CLT, departing from CLT, or a needed data relevant to CLT. Implemented to Surveillance target at CLT. keep performance under control by not processing data not relevant to CLT. 5/22/2019 68

  47. Filtering Sample acid Departure departure stand Arrival Last update System id Timestamp Aerodrome earliest time Aerodrome source ABC1234 CLT 2017-04-05 DFW TFM_TFDM ABC 2017-04-05 11:00 10:00 ABC4567 ATL 2017-04-05 ORD TFM_TFDM ABC 2017-04-05 11:15 10:00 ABC8999 CLT 2017-04-05 JFK TFM_TFDM ABC 2017-04-05 11:30 10:00 Not a flight operating at CLT acid Departure departure stand Arrival Last update System id Timestamp Aerodrome earliest time Aerodrome source ABC1234 CLT 2017-04-05 DFW TFM_TFDM ABC 2017-04-05 11:00 10:00 ABC8999 CLT 2017-04-05 JFK TFM_TFDM ABC 2017-04-05 11:30 10:00 5/22/2019 69

  48. Attribute Filtering • Attribute filtering is used to filter out fields before they are applied to the fused flight, based on the defined rules • Attribute Filtering is used when – A source is known to have bad or untrustworthy data in certain fields – Better data is likely to exist in another source for certain fields Field Excluded by Sources Reason arrivalFixActualTime Airline Data, 3rd Party Data Relying on STBO detection times for the actual values arrivalMovementAreaActualTime Airline Data, 3rd Party Data Relying on STBO detection times for the actual values arrivalRunwayActualTime Airline Data, 3rd Party Data, Relying on STBO detection times for the TFMS_Flight, TFM_Terminal actual values departureFixActualTime Airline Data, 3rd Party Data Relying on STBO detection times for the actual values departureMovementAreaActualTime Airline Data, 3rd Party Data Relying on STBO detection times for the actual values departureRunwayActualTime Airline Data, 3rd Party Data, Relying on STBO detection times for the TBFM, TFMS_Flight, TFMS_Terminal actual values departureQueueEntryActualTime Airline Data, 3rd Party Data Relying on STBO detection times for the actual values departureRunwayAssigned TBFM The departure runway is only coming with the runway number and not an indication if is L,R, or C. For example 18 instead of 18L.. 5/22/2019 70

  49. Attribute Filtering Sample acid departure runway Last update System id Timestamp assigned source ABC1234 CLT_36 TBFM SWIM 2019-04-05 10:00 Departure Runway From TBFM are not Reliable (flt.drw) acid Last update System id Timestamp source ABC1234 TBFM SWIM 2019-04-05 10:00 5/22/2019 71

  50. Mediation • Fuser mediation processing – Input data correction • Data source has known errors or anomalies – Value-added data computations • Create new data elements not available in the input data source – Input data source priority rules • Used to define a precedence/authority between sources providing data for the same data elements. • Implemented when necessary – Default behavior allows any data source to modify a value • Filter out data modifications from one data source, if data modifications already exist from a higher priority source. – E.g. TFMData messages are more favorable in setting the Fuser schema “routeText” data element than TBFM MIS. • More information – https://aviationsystems.arc.nasa.gov/atd2-industry-days/fuser/Data-Mediation- Overview_85328193.html 5/22/2019 72

  51. Fuser Metadata • Fuser Metadata – In support of the mediation rules, Fuser tracks metadata of each Fuser schema data element: • Last modification input data source and message type. • Last modification timestamp. Fuser Schema Fuser MetaData 5/22/2019 73

  52. Fuser Airport Mediation Use Case • ICAO vs IATA – ICAO = International Civil Aviation Organization – IATA = International Air Transport Association – These organizations don’t agree on how to name things. • FAA generally uses IDs similar to ICAO. • Airlines generally prefer IATA. ICAO Country Codes IATA ICAO FAA Dallas Love Field Airport DAL KDAL DAL Hilton Head Airport HHH KHXD HXD Ardmore Downtown Executive Airport AHD 1F0 Gastonia Municipal Airport KAKH AKH Augusta Municipal Airport 3AU Boeing 737-700 Aircraft Type 73G B737 B737 Air Carrier AA AAL AAL 5/22/2019 74

  53. Fuser Airport Mediation Use Case • Airport Conversion and Correction by Source – Mapping over 27k ICAO / IATA / FAA LID. – Based upon input data source, set ICAO, IATA, and FAA LID values for all messages. • Special Cases and Data Anomalies – TBFM MIS “airport” can be a waypoint. • Airborne IFR filed flight plans. – TFM Schedule flight plan OAG errors. • E.g. Doha OTBD airport closed in 2014 (replaced by OTHH), but is published in TFMS Scheduled flight plan messages. 5/22/2019 75

  54. Fuser Airport Mediation Use Case • Fuser Airport Mediation Rule – Problem: When flights amend the arrival airport, some TFM messages continue to use the old arrival airport. • Without mediation, the arrival airport toggles between the current and old values. – Solution: Fuser mediation to ignore data modifications by TFM sources that may use the incorrect arrival airport. Fuser Mediation Rule 5/22/2019 76

  55. Fuser Airport Mediation Use Case • Arrival Airport Mediation Messaging Example. Input Source Fuser Time Source Arrival IA TA ICAO FAA MetaData Airport 1500 TFMData Schedule OTBD DOH OTHH OTHH 1500 (TFMData Schedule) (error) 0900 Airline Source DOH DOH OTHH OTHH 1500 (TFMData Schedule) 1100 TFMData Filed Flight Plan OTHH DOH OTHH OTHH 1100 (TFMData Filed Flight Plan) 1130 TFMData Amend Flight OMDB DXB OMDB OMDB 1130 (TFMData Amend Flight Plan) Plan 1150 TFMData Flight Modify OTHH DXB OMDB OMDB 1130 (TFMData Amend Flight Plan) 5/22/2019 77

  56. Mediation Position Data 5/22/2019 78

  57. Position Data Jumpiness • Position data can come from numerous feeds • If you combine the feeds without mediation, jumpiness in the data will occur TFMS Mediation ASDE-X ASDE-X TFMS ASDE-X ASDE-X 5/22/2019 79

  58. Position Coverage Transition • The images below show the path of a flight in the terminal airspace • In this case the flight transition from TRACON coverage to ASDE-X back to TRACON and finally back to ASDE-X In TRACON Coverage In ASDE-X Coverage 5/22/2019 80

  59. Mediation Example (Position Data) • Mediate to avoid jumpiness in the display and data – Define priority – Define a timeout • Transition back to a lower priority source if we quit getting data Source Frequency Coverage Priority Timeout STDDS (ASDE-X) 1 second Surface to about 16 miles 1 5 seconds STDDS TAIS 6 seconds TRACON 2 30 seconds SFDPS 12 seconds NAS by CENTER stops in 3 60 seconds TRACON TFMS 60 seconds NAS stops in TRACON 4 60 seconds 5/22/2019 81

  60. Mediation Example EDCTs • ATD-2 needs EDCTs for common situational awareness and runway predictions • ATD-2 mediates TFMS and TBFM as equal sources – ATD-2 does not have to track filtered EDCTs separately from unfiltered EDCTs EDCTs ERAM TBFM TFMS Filter TBFM-MIS TfmData Flight ATD-2 Fuser nscmFlightControl. tma.flt.etm nscmControlData.ctd EDCT *TBFM SYNC messages had to be handled as syncs and not updates Prevented resetting the EDCT back to an old value 5/22/2019 82

  61. Multiple Flight Plans 5/22/2019 83

  62. ATD-2 Data Elements Tracked per Flight Plan • ATD-2 tracks individual flight plans for AEFS integration • ATD-2 manages a list of pre-departure flight plans – Tracks when each flight plan was updated – Tracks when a flight plan is cancelled – Most recently updated, non-canceled, flight plan is used as the current plan for surface modeling and scheduling • The flight plan specific data elements are tracked per flight plan – P-Time, Route, Filed altitude, CID, etc. • All other data elements are stored for the entire flight regardless of flight plan – L-Time, EOBT, TOBT, AOBT, Flight state, EDCT, aircraft position, etc. • Currently uses TfmData as authoritative source for flight plan status and updates 5/22/2019 84

  63. Multiple Flight Plans (initially the same as single flight plan use case) TfmData TfmData TBFM ATD-2 Flight ATD-2 Model / Fusion Scheduler Flight Terminal SWIM Service GUFI: ABC123 Flight Schedule Active Message Create IOBT: 1200 Flight Initial Flight Data ETOT: 1215 Update Predictions Update Flight Flight Modify (L-Time, no CID) GUFI: ABC123 Update IOBT:1200 Flight Updated Flight Data Terminal Data (EOBT, gate, no CID) L-Time: 1210 Update EOBT:1210 Predictions ETOT: 1225 Update Flight Flight Plan (P-Time, CID = 123) Update GUFI: ABC123 Flight IOBT:1200 Updated Flight Data NEW message (P-Time, L-Time: 1210 Update no CID, TBFM ID) EOBT:1210 Predictions Update ETOT: 1225 Flight Plan 1: Flight • Current = true • P-Time:1210 • CID: 123 5/22/2019 85

  64. Multiple Flight Plans (continued) GUFI: ABC123 TfmData TfmData TBFM ATD-2 Flight ATD-2 Model / IOBT:1200 L-Time: 1230 Fusion Scheduler Flight Terminal SWIM Service EOBT: 1230 ETOT: 1245 Flight Plan 1: Flight Modify (L-Time, CID=123) Update • Current = true Flight Updated Flight Data • P-Time:1210 Terminal Data (EOBT, gate, no CID) • CID: 123 Update Predictions GUFI: ABC123 Update IOBT:1200 Flight L-Time: 1230 EOBT: 1230 ETOT: 1245 Flight Plan (P-Time, CID = 456) Update Flight Plan 1: Flight • Current = false Updated Flight Data NEW message • P-Time:1210 Update (P-Time, no CID, • CID: 123 Predictions TBFM ID) Update Flight Plan 2: Flight • Current = true • P-Time: 1230 • CID: 456 Flight Plan Cancellation (CID = 456) Update GUFI: ABC123 Flight IOBT:1200 Updated Flight Data DEL message L-Time: 1230 (no CID, TBFM ID) EOBT: 1230 ETOT: 1245 Update Flight Plan 1: Flight • Current = true • P-Time:1210 • CID: 123 Flight Plan 2: • Current = true • P-Time: 1230 5/22/2019 • CID: 456

  65. Fuser Flight Data 5/22/2019 87

  66. Overview of Fuser Flight Model • Standard naming convention used with most data elements in the Fuser Flight • Naming convention is a based on a flattened version of the Flight Object Data Dictionary (FODD) and FIXM Schema. • Named so that related elements are close together alphabetically • Self documenting for the most part • Each name consists of three parts – Information category – Resource Type – Source Type • Naming convention: category_resourceType_sourceType • Examples: – arrival_runway_actual_time – departure_spot_predicted 5/22/2019 88

  67. Prefix: Information Category Prefix Description aircraft_* Information about the physical airframe operating the flight arrival_* Information about the arrival portion of the flight departure_* Information about the departure portion of the flight position_* Information about the flight’s position release_* Information about the APREQ negotiation process 5/22/2019 89

  68. Middle of Name: Resource Type Resource Type Description *_runway_* The data element related to the runway used by the flight *_fix_* The data element related to the fix used by the flight The data element related to the parking gate used by the *_stand_* flight The date element related to the time the flight enters or *_movement_area_* exits the movement area The data element that pertains to the physical location the *_spot_* flight enters or exits the movement area The data element that pertains to the time when the flight *_queue_* enters the departure runway queue 5/22/2019 90

  69. Postfix: Source Type Source Type Description *_actual_time The time the flight actually made use of the resource *_controlled_time The controlled time from a TFM TMI (GDP , AFP , GS) The earliest time a flight is expected to use the resource by *_earliest_time external sources (EOBT) The time the flight is estimated to use the resource by external *_estimated_time sources *_initial_time The first event time received for the resource *_metered_time The TMA-metered time (STA) that the flight will use the resource *_proposed_time The flight time based on the filed flight plan *_scheduled_time The time the flight is scheduled to operate by the airline The time a flight should comply with as part of a Surface Metering *_surface_metered_time Program The time the flight is predicted to use the resource as set by the *_targeted_time scheduler The unimpeded time the flight would use the resource is not *_undelayed_time constrained by external restriction 5/22/2019 91

  70. Postfix: Source Type (continued) Source Type Description *_actual The actual resource used by the flight The resource provided by an airline source or user entering *_airline the information in the RTC or STBO client display *_assigned The resource set by an FAA controller The resource derivedfrom position data and adaptation by *_position_derived STBO *_model The resource derived from STBO modeling *_decision_tree The resource derivedfrom STBO decision trees 5/22/2019 92

  71. Timestamp Columns Column Name Description timestamp Typically the timestamp of the source message The time the fuser finished processing the timestamp_fuser_processed message timestamp_fuser_received The time the fuser received the message The timestamp in the message supplied by the timestamp_source source system when available The time the message was processed by the timestamp_source_processed data parser The time the message was received by the timestamp_source_received data parser 5/22/2019 93

  72. Fuser Mappings The most common flight identifying field must be consistent across sources, right? Source System Term Used Fuser/MatmFlight acid TFMS qualifiedAircraftId. aircraftId TBFM tmaType.air.flt. aid TFM Terminal Flight Data acid STDDS Position Report (ASDEX) flightId.aircraftId.value FIXM flightIdentification. aircraftIdentification 5/22/2019 94

  73. Best Available Out Time • ATD-2 departure predictions start with when the flight will leave the gate • There are multiple data elements that provide an estimate of pushback time – Some data elements are available in multiple sources Improving Accuracy • The Fuser mediates and stores each data element individually – departure_stand_initial_time (IOBT / IGTD) – departure_stand_proposed_time (P-Time from flight plan) – departure_stand_airline_time (L-Time from CDM messages) – departure_stand_earliest_time (EOBT) – departure_stand_actual_time (AOBT / OUT) • The ATD-2 prediction engine then uses the best available data element as the start of it’s predictions 5/22/2019 95

  74. Best Available Out Time CDM Updates Flight Operator File Flight Plan Flight Plan Flight Plan TFMS ERAM TBFM TfmData TBFM-MIS Terminal Flight ATD-2 Fuser Departure Stand Times initial proposed airline earliest actual 5/22/2019 96

  75. Best Available Out Time Departure TfmData Flight* TfmData Terminal TBFM-MIS** Stand Time Initial flight.qualifiedAircraftId.igtd flight.departureNas. runwayDepartureTime. original.time Proposed [flightPlanInformation / tma.air.flt.ctm flightPlanAmendmentInformation]. (if tma.air.flt.acs == coordinationTime.value PROPOSED && (if coordinationPoint == tma.air.flt.fps == PROPOSED departureAirport && && tma.air.dap == coordinationType == PROPOSED) tma.air.flt.cfx) Airline [nscmFlightCreate / nscmFlightModify]. airlineData.flightTimeData. airlineOutTime Earliest flight.departureNas. runwayDepartureTime. earliest.time Actual nscmFlightModify. flight.departureNas. airlineData.flightTimeData. standPositionAndTime. gateDeparture standTime.actual.time * Multiple TfmData Flight message types can contain this data. Only the most common ones are listed here. ** TBFM-MIS mapping not currently used on ATD-2 because of feedback loop between ATD-2 and TBFM 5/22/2019 97

  76. ATD-2 Fuser Mapping • Full Fuser Mappings Available – https://aviationsystems.arc.nasa.gov/atd2-industry-days/fuser/Fuser-Database- Input-Mapping-Table_85328219.html 5/22/2019 98

  77. Questions 5/22/2019 99

  78. National Aeronautics and Space Administration Airspace Technology Demonstration 2 (ATD-2) ATD-2 Fuser Database May 22, 2019 5/22/2019

Recommend


More recommend