AirGuardian – UAV Hardware and Software System for Small Size UAVs

AirGuardian is a complex of an Unmanned Aerial Vehicle and ground station UAV hardware and software systems which has been developed at Obuda University. The hardware and software of the autopilot (AERObot), the antenna tracker station and the ground control station were simultaneously created resulting in the optimal cooperation of the modules. The aim of the research on AERObot – the special autopilot – was to create a generic autopilot which is capable of controlling different designs, weights and structures of airframes without any complex mathematical model recalculation.


Introduction
AirGuardian was created to meet these criteria: Antenna tracker unit


Compact unit without any other wired module  Automatic self-calibration before flight  Autonomous tracking of the UAV  Ground Control software connectivity Ground control software  Multi-user server-client architecture with different capabilities (navigator, observer mission planner and pilot)  Full mission record and replay features  Support of custom-calibrated maps AERObot (onboard hardware and software)  Compact, small size and low weight electronics, without wired off-board sensors  Module-based design with slot based architecture to achieve task specific application  Universal communication interface allowing the usage of both wireless (different RF modems) and wired (FTDI USB) connectability  Autopilot can store at least 200 waypoints, the parameters of planes and control functions in a nonvolatile memory  Fully autonomous operation (telemetry issues should not affect the flight)

Antenna tracker unit and ground control station
The ground electronics of the system are in the antenna tracker unit. The main task of the unit is involves RF communication with the UAV using directed high gain antennas and the wired communication with the ground control PC.
The tracker unit ( fig. 1) also has an onboard GPS so it is not only able to track the UAV from a single position but so that it also possible to use it as a mobile ground station. The tracker unit has two degrees of freedom, with limitless rotation on the yaw angle [1].

Ground control software
The ground control software is based on client-server architecture. The server is connected to the antenna tracker, which grants the telemetry and camera data. It can handle serial ports or TCP/IP packets. Multiple clients can connect to the server from one or many PCs. The server also relays the telemetry to the Wi-Fi, allowing AirGuardian Mobile (smartphone version) to access mission data ( fig. 2).
The users are basically using the client software, communicating with the server through TCP/IP using wired or wireless networks. The users have authentication in the clients, which grants them the proper permissions (pilot, navigator, observer and admin roles). They can see the data related to their task only. For example, the pilot can control the UAV remotely using the front camera but they cannot modify autonomous mode waypoints or altitude as the navigator can. The client interface is customizable for each (new) role. The software is highly scalable. It can be used as a multiple workstation with one dedicated server and multiple role-based clients or else in a single, low-cost notebook with an admin role. The AirGuardian can also record and replay missions in real time. Multiple 2D and 3D maps can be imported, enabling multilayer maps and 3D satellite image-based mission planning.

Onboard electronics
The the IMU, the GPS antenna and the engine battery (for power consumption) is connected to the main board electronically. The other connectors are the static and dynamic pressure tubes from the Pitot-tube, which grants the airspeed and altitude parameters. Expander modules (e.g., the Servo panel) can be connected to the main board through two row headers. Additional electric sensors can be attached to the board (an ultrasonic altimeter, a revolution sensor, a temperature sensor, etc.), but these are not essential parts for a general UAV application.  The servo board was made as an interface to connect AERObot to a common radio control plane easily. The main function of the board is to relay the control signals created by the main board to the actuators of the plane. Furthermore, the sensor board can switch the controls between manual, heterogeneous and autonomous at circuit level without modifying the connections between the boards and the actuators.
This can be activated with an RC transmitter switch on a free channel or a with a telemetry command. For flight safety purposes, the board can handle two different RC receivers in diversity, which is important in manual control mode during the setup procedure. When the signal of a receiver is weak, the board automatically switches to the other receiver. When both lose signal, the board switches to autonomous stabilized flight.   5.).
AERObot saves all the parameters to a non-volatile memory, which means that after turning on the UAV and the GPS locks position, the system is then ready to use. The waypoints and mission directives can be set before the mission and can also be modified during flight. There are many navigation approaches. Most of them use waypoints [3], defined by a geographic position (latitude and longitude), an altitude (above ground level or above sea level) and a waypoint radius (usually 25-75m is used to achieve precise path tracking). A waypoint is reached, when the distance between the UAV and the waypoint is under the predefined radius value. For precision navigation, the autopilot needs very accurate position and bearing information.

Bearing estimation
The base sensor for navigation is the GPS. This provides the position, the speed over ground (SOG), the bearing and many other parameters used by the navigation algorithms. The maximum position refresh rate of the best GPS modules is about 5-10Hz, which is not enough for precision flight control.
The other problem is that the refresh rate is not reliable because the NMEA sentences and the checksums are often incorrect. It is necessary to estimate the missing and intermediate positions for the continuous bearing control (100Hz -update frequency of the most commercial RC actuators). This estimation can be computed using the yaw rate and the GPS bearing from the last valid NMEA sentence. The Z-axis angular rate (provided by the IMU) should be converted to the heading turn rate using the UAV bank angle [4]. With this procedure, the actual bearing can be estimated between two valid GPS sentences (1). The heading angle provided by the IMU is often unreliable because of the magnetic sensor used by the internal sensor fusion algorithms. This sensor is very sensitive to strong electromagnetic fields, especially when the UAV has electric propulsion. where: θ:previous bearing (measured by GPS), θe:estimated bearing, � � :heading turn rate. Small sized (around 1 m wingspan) and low weight (under 2 kg) UAVs are quite agile and so turn rates can reach high levels. For these airframes, bearing estimation is essential (fig 6.).

Position estimation
During navigation, both the bearing and the position have to be estimated with a navigation formula (2), which is well known in nautical terms [5]. The aim is not for a complete inertial navigation system with minimal error but rather the computation of intermediate positions and bearings in order to achieve better performance. As such, some things can be ignored [6,7,8].
where: Lat1:previous estimated latitude of the UAV, Lon1:previous estimated longitude of the UAV, � � :estimated bearing (in radians, clockwise from north), d: distance travelled, R:The Earthʹs radius.
Usually, there are 200ms between two valid GPS sentence bursts, but the distribution of the measured positions is not uniform. Even if one or two is corrupted, the refresh time is always under 1000ms. Because of this, the direction and velocity of the wind can be ignored. During the estimation, the last known SOG can be used no matter how the bearing of the UAV changed (compared to the wind). Obviously, there will be some errors, but usually it is low (under 1m) and will not cause any serious false position estimation.
The estimation (Fig. 7) can be calculated from the previous known SOG, estimated position and bearing (when the known position and bearing are unavailable).

Vector field navigation
The vector field navigation calculates a desired bearing in every position, no matter what the actual bearing of the UAV is. This can be easily represented as a vector field. The desired bearing depends on the position of the UAV, the source and destination waypoints and the cross track error (3).
The cross track error sensitivity can be set with Kc parameter ( fig. 8) and the path reaching smoothness ( fig.  9) with Kd. It is a common problem that a UAV will miss the waypoint if the waypoint radius is low and there is a strong wind or else the distance between the source and the destination points is short. In this case, the UAV should turn back and the flight path will contain unnecessary loops. The first possibility for avoiding this problem is the dynamic radius which must suit local airflow characteristics.
The alternative -and better -solution makes use of �. If the UAV is close to the destination point (under 1000m), the parameter � guarantees arrival at the waypoint, ignoring � depending upon the UAV -waypoint distance ( fig. 10).  Fig. 16 represents an altitude plot of the first test flight of Chelidon UAV. It contains a manual take-off and multiple heterogeneous/autonomous flights. The red parts are manual control. In the early stage of the flight, the independent tuning of the control loops was made through the AirGuardian ground control software. During this period, the UAV was flown in heterogeneous mode 6 times. After the independent tuning, there were 4 autonomous flights when the combined control loop fine tunings were made. The first three flights were short, because the controllers were not well-tuned. The last autonomous part was a successful fine tuned flight, with many laps on a three waypoint route ( fig. 17). The whole procedure took 30 minutes. This short time is remarkable since Chelidon was a brand new custom built prototype airplane, and so no preliminary flight data was available. The experiment confirmed that AERObot is robust and that the setup procedure is quick and effective.

Conclusions
Various experiments proved that AirGuardian met the criteria targeted at the beginning of the research. The onboard electronics and redundant systems were working reliably. The switch between manual, heterogeneous and autonomous is less faulty and transient.
The antenna tracker is capable of tracking the UAV in real time. After the GPS lock, it automatically turns to the UAV and starts following it. In case of telemetry loss, the antenna turret can be controlled manually for the plane with a remote.
The UAVs used to test AERObot and AirGuardian are in table 1. The examination displayed the abilities of the system using multiple, different sized and shaped UAVs. Comprehensive ground control software was developed which can effectively serve the UAV and the ground personnel. It can be used as a single or as a multiple workstation or even as a mobile application (fig 18.). As a result, the various parts of the system can be used as standalone units -e.g., an extension module to another existing system or as a part of a whole new development.