/content/projects/airwiz/Images/airwiz_ui.png

AirWiz

Contributors

guser40
magba44
jonlu41
treli80

Funding

trafikverket
kaw
vinnova

About

AirWiz is a tool for visualizing primarily air traffic simulations, but also other types of traffic and events. It is developed as a part of the Air Mobility project. It shows an interactive 3D map which the user can more around in, covering the entire globe. The core content air traffic data streamed live from various systems into AirWiz, both real and simulated, combined with some novel concepts for automated air traffic control of drones.

Repositories

The code repositories are hosted in the LiU GitLab and are private. Please contact us if you want to inquire about access.

Purpose

The purpose of this tool is to visualize data, rather then produce/simulate it directly. It is a playground for us to try out various concepts, and to create different types of visualization to explain the systems we are developing for air traffic control. It is a research tool, used in active research projects.

Real Time Entity Server

This is a Python server that listens to MQTT servers populated with traffic data and communicates with AirWiz over ZeroMQ. It subscribes to various topics across MQTT servers and converts messages to AirWiz-friendly messages before passing them on. It can also receive commands from AirWiz, so the communication is a two way street. The Python server is used as it proved difficult at the start of the project to implement MQTT in UE C++.

Entities

Entities can be any sort of moving object, and covers both air, land and water. Entities are spawned in from live traffic coming from various sources such as WARA PS, UTM City and Air Mobility. Data with coordinates are received approximately once per second, and the new coordinate is set as the target we move towards every tick. This gives is a smooth movement, instead of jumping to the next location directly. It should be noted that this means that the visualization is always a second delayed.

Entities can be represented by a variety of 3D models, such as quadcopter drones, commercial air planes, robot dogs and boats. We also assign different behaviors to these types to ensure correct visuals, such as ground vehicles always staying on the ground even if we have a height mismatch, and air planes not diving under the ground.

In addition to the 3D representation, entities have a 2D icon to help you follow smaller objects at a distance. Clicking an icon will jump you closer to the entity. If icons overlap they are clustered together into one icon, with a number indicating how many entities are in the cluster.

Airspace objects

There are two types of airspace objects:

  • Constraint
  • Grid

They represent the air traffic control system that is being designed through the Air Mobility project, meant to automate the air traffic control of unmanned drones en masse. These 3D objects are generated from a series of coordinates, provided by our various online systems, which is used to produce dynamically generated meshes. Initially the idea was to also define these objects within the AirWiz application, but we have since pivoted towards pure visualization tool.

Constraints are concave geometries that provide a limiting area where drone traffic cant pass through.

  • In the green state, entities can pass through
  • In the red state, entities are blocked
  • In the orange state, blocking is pending waiting for entities to leave the area

Grids are networks of paths that entities can take through a constraint. In the current state of AirWiz they are represented as a series of tubes with a radius, but this definition is to be redefined in the future. They consist of segments that are colored based on the amount of entities in the segment.

  • None is transparent
  • One is green
  • Two is orange
  • More is red

The purpose of this is to show if drones are to close to each other.

Plans

Drones follow a predetermined plan that can be altered if changes occur in the air space, such as an area suddenly becoming of limits due to a fire etc. Plans are represented as an orange line, plotting out the path that the entity will take.

Transform location

AirWiz has a feature that allows objects to be transformed to another location in the world. This allows us to for example visualize real data from one point, in this case Gränsö, Västervik, and transform the data to show a scenario at Landvetter. You can transform both the location, rotation and scale of airspace objects, to allows for scenarios in a much bigger area to be tested at a smaller location. In the current state Gränsö to Landvetter is the only transformation we do, but the goal is to be able to transform between two arbitrary points in the future.

Constraints located in Gränsö

The same constraints, transformed to Landvetter