Difference between revisions of "ATC-pie"

From FlightGear wiki
Jump to: navigation, search
m (r8d)
(New release (r9))
Line 10: Line 10:
 
| developedby            = Michael Filhol
 
| developedby            = Michael Filhol
 
| initialrelease        = February 1, 2015
 
| initialrelease        = February 1, 2015
| latestrelease          = February 21, 2016 (r8d)
+
| latestrelease          = May 8, 2016 (r9)
 
| writtenin              = Python3
 
| writtenin              = Python3
 
| os                    = Any
 
| os                    = Any
Line 20: Line 20:
 
}}
 
}}
  
'''ATC-pie''' is an [[air traffic control]] simulation program allowing to play solo games and connect to [[FlightGear]] multi-player networks. It features an en-route (CTR) mode as well as an airport mode where tower viewing is possible. It is essentially designed for realism and simulates many tasks of real-life ATC such as transponder identification, strip rack and sequence management, handovers to/from neighbouring controllers, ATIS recording, flight plan editing, routing and conflict solving.
+
'''ATC-pie''' is an [[air traffic control]] simulation program allowing to play solo games, connect to [[FlightGear]] multi-player networks and set up tutorial sessions for teacher supervision of an ATC student. It features modes for en-route (CTR) control as well as airport-based service (TWR, APP, GND...) where tower viewing is possible for all types of games. It is essentially designed for realism and simulates many tasks of real-life ATC such as transponder identification, strip rack and sequence management, handovers to/from neighbouring controllers, ATIS recording, flight plan editing, routing and conflict anticipation.
  
ATC-pie is free and open source, programmed in Python3 for Qt5 hence system-independant, only Python3 and its Qt5 bindings must be installed. That done, it is meant to work straight away, with no make/compile command to run or external resource to install (except for local tower viewing, which requires FlightGear and the appropriate scenery).
+
ATC-pie is free and open source, programmed in Python3 for Qt5 hence system-independant, only Python3 and its Qt5 bindings must be installed. That done, it is meant to work straight away, with no make/compile command to run or external resource to install (except for internal tower viewing, which requires FlightGear and the appropriate scenery).
  
 
== Program features ==
 
== Program features ==
Line 28: Line 28:
 
The features listed below have been tested on various Linux versions, Mac and Windows.
 
The features listed below have been tested on various Linux versions, Mac and Windows.
  
=== Game and environment ===
+
=== General features ===
Multi-player and network environment:
+
 
* Configurable [[FGMS]] connections
+
Games available:
* ATC handovers: strip exchange with [[OpenRadar]] and other ATC-pie instances in range
+
* Various game types: solo sessions, FlightGear multi-player, teacher–student connections
* Interface with Lenny64's [http://flightgear-atc.alwaysdata.net flight plan data base], including in-game FPL retrieval, filing and editing
+
* For all game types: en-route centre or airport mode
* In-app session announcement facility to post on Lenny64's popular ATC event page
+
 
 +
Common data sources:
 +
* Airport and navigation data retrieved from the latest [http://data.x-plane.com X-Plane] file set
 +
* Custom additions in separate nav/AD data files
 +
* Real world declination lookup and true/magnetic distinction
  
 
Solo games:
 
Solo games:
* Various ATC positions: CTR or free combination of APP, TWR and DEP
+
* Play CTR or a free combination of APP, TWR and DEP positions
 
* Handovers to/from virtual ATCs
 
* Handovers to/from virtual ATCs
 
* Instruction interface and pilot read back
 
* Instruction interface and pilot read back
 
* Adjustable difficulty (traffic density)
 
* Adjustable difficulty (traffic density)
 
* Departure–arrival and ILS–visual balance options
 
* Departure–arrival and ILS–visual balance options
* Configurable runways in use, entry/exit/routing points
+
* Configurable runways in use and entry/exit/routing points
  
World data:
+
FlightGear multi-player games:
* Real world METAR updates from selectable weather stations
+
* Configurable [[FGMS]] connections
* Real world declination lookup and true/magnetic distinction
+
* Weather: real world METAR retrieval
* Airport and navigation data retrieved from the latest [http://data.x-plane.com X-Plane] file set
+
* ATC handovers: strip exchange with other ATC-pie and [[OpenRadar]] instances in range
* Custom additions possible in separate files
+
* Flight plans: interface with [http://flightgear-atc.alwaysdata.net Lenny64's data base] (the ''de facto'' FG standard), including in-game retrieval, filing and editing (work on local copies and manage sync with online status)
 +
* In-app facility to announce ATC sessions on Lenny64's popular event page
 +
 
 +
Teaching/learning sessions:
 +
* Teacher spawns and manipulates traffic visible to student (flight and transponder settings)
 +
* Strip exchange, configurable ATC neighbours and handover supervision by teacher
 +
* Wind control
 +
* Traffic snapshots and recall to repeat situations with the student
  
 
GUI:
 
GUI:
 
* Floatable, dockable and closable GUI panes: strips, radios, text chat, etc. (window layout saved)
 
* Floatable, dockable and closable GUI panes: strips, radios, text chat, etc. (window layout saved)
* Notification system combining selectable sounds, status bar messages and a time-tagged history
+
* Notification system combining selectable sounds, status bar messages and time-tagged history
* General and location-specific notepads and settings saved on close and restored on restart
+
* General and location-specific settings and notes saved on close and restored on restart
 
* Custom alarm clocks with quick two-key timer set-up
 
* Custom alarm clocks with quick two-key timer set-up
* Customisable colours
+
* Selectable weather stations
 
+
=== Radar and visual contacts ===
+
Transponders:
+
* Full support and mode-dependant behaviour (off, A, C, S)
+
* Choice of simulated mode for non-equipped aircraft models
+
* Radar identification assistant (unique squawk link between radar pick-up and strip assignment detection)
+
* Individual and general cheat modes to override XPDR settings
+
  
Radar scope:
+
=== ATC surveillance ===
* Open multiple radar screens
+
Radar and transponders:
* Show/hide options for navigation points, vectors and route assignments, etc.
+
* Full transponder support and mode-dependant radar behaviour (off, A, C, S)
* Quick point-to-point heading and distance measuring tool and access to Earth coordinates
+
* Radar identification assistant (detects unique squawk code matches between radar pick-up and strip assignment)
* Custom radar background image and image display (e.g. to display maps/charts)
+
* Custom text labels to annotate radar background
+
* Configurable horizontal and vertical ranges, and rotation speed
+
 
* Primary radar activation (see targets without XPDR signals)
 
* Primary radar activation (see targets without XPDR signals)
 +
* Configurable horizontal and vertical radar ranges and rotation speed
 +
* Custom radar background images (integrated [[OpenStreetMap]] image retrieval)
 +
* Custom text labels to annotate radar background
 +
* Quick point-to-point heading and distance measuring tool and access to Earth coordinates
 +
* Open multiple radar screens
 +
* Individual and general cheat modes
 
* Ignore contacts
 
* Ignore contacts
 +
* Customisable colours
  
Tower viewing, scene rendering:
+
Tower viewing (not in CTR mode):
* Real-time rendering of the airport scene from tower viewpoint, available in both MP and solo games
+
* Real-time rendering of the airport scene from tower viewpoint
 
* Internally started (requires FlightGear installed) or through connection to an external instance
 
* Internally started (requires FlightGear installed) or through connection to an external instance
 
* Controller pane to orient/zoom view or follow aircraft
 
* Controller pane to orient/zoom view or follow aircraft
Line 80: Line 88:
 
* Additional views can be connected
 
* Additional views can be connected
  
=== ATC management ===
+
=== Traffic management ===
 
Strips, racks, flight plans:
 
Strips, racks, flight plans:
* Strip drag&drop along and across user-defined racks, with configurable colours
+
* User-defined racks with configurable colours for linked radar contacts
* Strip drop on neighbouring ATCs to hand over
+
* Mouse drag to move strips along and across racks; drop on neighbouring ATCs to hand over
 
* Link strips to flight plans and radar contacts to merge editable details and inform radar display
 
* Link strips to flight plans and radar contacts to merge editable details and inform radar display
 
* Conflicts between linked elements reported
 
* Conflicts between linked elements reported
* Work with local FPL copies and manage sync with online publication
 
  
 
Routes, vectors, conflicts:
 
Routes, vectors, conflicts:
Line 100: Line 107:
 
* [[FGCom]] integration, incl. echo test and possible use of externally running client
 
* [[FGCom]] integration, incl. echo test and possible use of externally running client
 
* ATIS recording with pre-filled preparation notepad (see [[:File:ATC-pie-screenshot-ATISdialog.png|feature dialog]])
 
* ATIS recording with pre-filled preparation notepad (see [[:File:ATC-pie-screenshot-ATISdialog.png|feature dialog]])
* Multiple and single frequency transmissions
+
* Multiple frequency transmissions and monitoring
 
* Frequency-specific sound level selection
 
* Frequency-specific sound level selection
  
Line 150: Line 157:
  
 
== Using ATC-pie ==
 
== Using ATC-pie ==
To download the program and learn more about how to use it, read the [[ATC-pie user guide]].
+
To download the program and learn more about how to use it, read the [[ATC-pie user guide]]. If you have a question, check the [[ATC-pie FAQ|FAQ]] for help or try the forum.
  
 
[[Category:ATC-pie]]
 
[[Category:ATC-pie]]
 
[[Category:ATC clients]]
 
[[Category:ATC clients]]

Revision as of 18:28, 8 May 2016

ATC-pie
ATC-pie logo
ATC-pie at the KSFO mess
ATC-pie at the KSFO mess
Developed by Michael Filhol
Initial release February 1, 2015
Latest release May 8, 2016 (r9)
Written in Python3
OS Any
Platform Qt5
Development status Active
Type ATC client
License GNU GPL v3
Website



ATC-pie is an air traffic control simulation program allowing to play solo games, connect to FlightGear multi-player networks and set up tutorial sessions for teacher supervision of an ATC student. It features modes for en-route (CTR) control as well as airport-based service (TWR, APP, GND...) where tower viewing is possible for all types of games. It is essentially designed for realism and simulates many tasks of real-life ATC such as transponder identification, strip rack and sequence management, handovers to/from neighbouring controllers, ATIS recording, flight plan editing, routing and conflict anticipation.

ATC-pie is free and open source, programmed in Python3 for Qt5 hence system-independant, only Python3 and its Qt5 bindings must be installed. That done, it is meant to work straight away, with no make/compile command to run or external resource to install (except for internal tower viewing, which requires FlightGear and the appropriate scenery).

Program features

The features listed below have been tested on various Linux versions, Mac and Windows.

General features

Games available:

  • Various game types: solo sessions, FlightGear multi-player, teacher–student connections
  • For all game types: en-route centre or airport mode

Common data sources:

  • Airport and navigation data retrieved from the latest X-Plane file set
  • Custom additions in separate nav/AD data files
  • Real world declination lookup and true/magnetic distinction

Solo games:

  • Play CTR or a free combination of APP, TWR and DEP positions
  • Handovers to/from virtual ATCs
  • Instruction interface and pilot read back
  • Adjustable difficulty (traffic density)
  • Departure–arrival and ILS–visual balance options
  • Configurable runways in use and entry/exit/routing points

FlightGear multi-player games:

  • Configurable FGMS connections
  • Weather: real world METAR retrieval
  • ATC handovers: strip exchange with other ATC-pie and OpenRadar instances in range
  • Flight plans: interface with Lenny64's data base (the de facto FG standard), including in-game retrieval, filing and editing (work on local copies and manage sync with online status)
  • In-app facility to announce ATC sessions on Lenny64's popular event page

Teaching/learning sessions:

  • Teacher spawns and manipulates traffic visible to student (flight and transponder settings)
  • Strip exchange, configurable ATC neighbours and handover supervision by teacher
  • Wind control
  • Traffic snapshots and recall to repeat situations with the student

GUI:

  • Floatable, dockable and closable GUI panes: strips, radios, text chat, etc. (window layout saved)
  • Notification system combining selectable sounds, status bar messages and time-tagged history
  • General and location-specific settings and notes saved on close and restored on restart
  • Custom alarm clocks with quick two-key timer set-up
  • Selectable weather stations

ATC surveillance

Radar and transponders:

  • Full transponder support and mode-dependant radar behaviour (off, A, C, S)
  • Radar identification assistant (detects unique squawk code matches between radar pick-up and strip assignment)
  • Primary radar activation (see targets without XPDR signals)
  • Configurable horizontal and vertical radar ranges and rotation speed
  • Custom radar background images (integrated OpenStreetMap image retrieval)
  • Custom text labels to annotate radar background
  • Quick point-to-point heading and distance measuring tool and access to Earth coordinates
  • Open multiple radar screens
  • Individual and general cheat modes
  • Ignore contacts
  • Customisable colours

Tower viewing (not in CTR mode):

  • Real-time rendering of the airport scene from tower viewpoint
  • Internally started (requires FlightGear installed) or through connection to an external instance
  • Controller pane to orient/zoom view or follow aircraft
  • Possible use of custom scenery and aircraft model addition/substitution
  • Additional views can be connected

Traffic management

Strips, racks, flight plans:

  • User-defined racks with configurable colours for linked radar contacts
  • Mouse drag to move strips along and across racks; drop on neighbouring ATCs to hand over
  • Link strips to flight plans and radar contacts to merge editable details and inform radar display
  • Conflicts between linked elements reported

Routes, vectors, conflicts:

  • Route parsing, drawing and world map view
  • Route presets and quick retrieval between two end airports
  • Current leg and next waypoint display with geodesic calculations of headings and distances
  • Assign vectors and change routes with direct mouse gestures
  • Anticipated conflict warnings and separation incident alarm
  • Visible mismatches between assigned vectors and picked up positions (see all-in-one graphics)

Communications

Radio:

  • FGCom integration, incl. echo test and possible use of externally running client
  • ATIS recording with pre-filled preparation notepad (see feature dialog)
  • Multiple frequency transmissions and monitoring
  • Frequency-specific sound level selection

Text chat:

  • Preset message list manager
  • Predefined and custom aliases for context-sensitive replacements (general, location- and ACFT-specific)
  • Message history and single-click dest. or message recall
  • Hardcore communication sim possible by disabling unknown senders' callsigns
  • Senders blacklist management (filter out trolls)

Screenshots

Working principles

General

You are the air traffic controller, and players will connect to the network (or AI traffic be simulated in solo mode) with different types of aircraft and transponder equipment. As in real life, the radar is SSR, hence will show you only (unless you cheat or activate the primary radar) what you pick up from on-board transponders in your range. That means:

  • If a transponder is off or on standby, you will not see the aircraft on your radar screen.
  • If a transponder is on, you will at least be able to see its position and read the transponder code, possibly its altitude and even its type and callsign, depending on the mode set by the pilot.

Strips

The ATC-pie strip detail sheet

Your basic traffic flow and sequence working unit is the strip, each representing a controlled (or soon expected) aircraft. Strips are created, filled with details and moved along and across racks until handed over to a different controller or discarded. Strip details include:

  • most importantly, the aircraft's callsign, to be used on the radio;
  • information like aircraft type, airspeed, route... that can be specified by the pilots themselves when filing flight plans;
  • transponder code and flight parameter assignments (or vectors: heading, altitude/FL, speed).

Linking strips

Strip details can be manually edited, but every strip can also be linked to a flight plan and/or a visible radar contact on the scope screen—a strip can only be linked to one flight plan and one radar contact. Linking to a strip will automatically:

  • make the strip display the missing elements made available by the linked aircraft transponder or flight plan;
  • label the radar contact dot with the more informed linked details, e.g. assigned altitude.

Any detail mismatch between a strip and its linked flight plan or radar contact will be reported for you to resolve.

Radar identification

Radar identification: both matched strip and radar contact marked in blue

To identify an aircraft and link the right radar contact to a strip, an ATC can rely on different things. He can read an aircraft's callsign straight away if its transponder has mode S turned on, tell from reported positions and altitudes, or use a transponder code. For instance, say a VFR traffic makes an initial radio contact giving his callsign and approximate position. ATC will typically pull out a new blank strip and give the pilot a unique transponder code to squawk, writing it on the strip alongside the announced callsign, then wait for it to appear on the radar. This allows for radar identification of aircraft–strip pairs such that:

  • the strip is assigned a transponder code;
  • no other strip is assigned the same code;
  • the aircraft is the only one squawking that code in radar range.

ATC-pie identifies such pairs automatically and reports them to you so you can properly link the two and get back to the pilot: "radar identified".

Using ATC-pie

To download the program and learn more about how to use it, read the ATC-pie user guide. If you have a question, check the FAQ for help or try the forum.