# Unmanned Aerial Traffic Management System Architecture for U-Space In-Flight Services
## 4 UTM System Architecture
### Tracking  
The Tracking module implements the U-space service with the same name. According to the U-space definition (Section 2.1), the main functionality of this service is to track the operational UAS in the airspace. These tracks contain information updated in real time about the UAS current position and its predicted trajectory within a certain time horizon. The module computes the tracks by fusing information from different sources that it receives through the USM. In particular, measurements from the UAS telemetry and ADS-B transceivers (when available) are integrated to achieve a more accurate estimation of the UAS positions. Moreover, the future trajectory of each UAS is predicted given its current position and velocity, as well as its flight plan. The tracking component keeps updated the UAS tracks in the DB module, so that this information is available for the rest of the system.  
Mathematically, the Tracking module implements a stochastic filter that maintains a list of objects to estimate the state of each UAS, as depicted in Figure 5. This filter allows the system to cope with noisy and delayed measurements, as well as irregular sensor rates. The state of each UAS consists of its 3D position and velocity (expressed in _Universal Transverse Mercator_ coordinates), and its current waypoint, i.e., the next waypoint of the flight plan that the UAS is targeting. The continuous variables are estimated through a _Kalman Filter_ that integrates the measurements coming from the UAS telemetry and the onboard ADS-B transceivers. These data are previously transformed from geographic to Universal Transverse Mercator coordinates.  
The procedures is as follows. At a constant rate, the list of operations is read from the DB in order to identify the active UAS. The state of all those UAS is predicted and then updated with the received observations. Each observation can be easily associated with its corresponding track, since they all come with a unique UAS identifier. The observations  
Figure 5: Scheme with the internal components of the Tracking module. The _data association_ component matches the measurements from the UAS with their tracks, to update the corresponding Kalman filters. The future UAS trajectories are predicted using the tracks and the flight plans.  
\begin{table}
\begin{tabular}{c c c} \hline \hline
**Attribute** & **Data Type** & **Description** \\ \hline Identifier & Integer & Unique identification of the aircraft \\ \hline Priority & Enum & Priority of the operation in the airspace \\ \hline Flight plan & List of waypoints (x, y, z, t) & Reserved 4D trajectory for the operation \\ \hline Next waypoint & Integer & Waypoint index that the UAS is currently targeting \\ \hline Predicted trajectory & Float & Prediction of the future UAS trajectory \\ \hline ConOps & String & Description of the concept of the operation \\ \hline Flight Geometry & Float & Radius of the cylindrical volume where the UAS is intended to remain during its operation \\ \hline Operational Volume & Float & Radius of the outer cylindrical volume to account for environmental or performance uncertainties \\ \hline \hline \end{tabular}
\end{table}
Table 3: Attributes of a UAS operation object.  
with _unknown_ identifiers are ignored by the filter, as they are considered non-cooperative aircraft. Moreover, the current waypoint for each UAS is computed by searching for the waypoint in its flight plan that is closest to its current position. The future trajectory within a given time horizon is also predicted for each track. If the current position of the UAS is close enough to its current waypoint (according to a given distance threshold), the prediction of the future trajectory sticks to the flight plan. Otherwise, the Kalman Filter is used to predict a trajectory given the current UAS position and velocity. Finally, after each step, the Tracking module updates all the information about the tracks in the DB module.