# Air Traffic Avoidance: UAS Traffic Management (UTM)
PX4 can use MAVLink UTM_GLOBAL_POSITION
(opens new window) messages to support simple air traffic avoidance in missions.
If a potential collision is detected, PX4 can warn, immediately land, or return (depending on the value of NAV_TRAFF_AVOID
).
Note
This implementation is exactly the same as for ADS-B traffic avoidance (except for the source of other-vehicle data). For more information see implementation below.
# Configure Traffic Avoidance
Configure the trigger distance and action when there is a potential collision using the parameters below:
Parameter | Description |
---|---|
NAV_TRAFF_AVOID | Enable traffic avoidance mode specify avoidance response. 0: Disable, 1: Warn only, 2: Return mode, 3: Land mode. |
NAV_TRAFF_A_HOR | Horizonal radius of cylinder around the vehicle that defines its airspace (i.e. the airspace in the ground plane). |
NAV_TRAFF_A_VER | Vertical height above and below vehicle of the cylinder that defines its airspace (also see NAV_TRAFF_A_HOR). |
NAV_TRAFF_COLL_T | Collision time threshold. Avoidance will trigger if the estimated time until collision drops below this value (the estimated time is based on relative speed of traffic and UAV). |
# Implementation
PX4 listens for UTM_GLOBAL_POSITION
MAVLink messages during missions.
When a valid message is received, its validity flags, position and heading are mapped into the same transponder_report
UORB topic used for ADS-B traffic avoidance.
The implementation is otherwise exactly as described in: ADS-B traffic avoidance > Implementation.
Note
UTM_GLOBAL_POSITION (opens new window) contains additional fields that are not provided by an ADSB transponder (see ADSB_VEHICLE (opens new window)). The current implementation simply drops the additional fields (including information about the vehicle's planned next waypoint).