# Coordinated landing of a quadrotor on a skid-steered ground vehicle in the presence of time delays

## Authors

- First Online:

- Received:
- Accepted:

DOI: 10.1007/s10514-014-9400-5

- Cite this article as:
- Daly, J.M., Ma, Y. & Waslander, S.L. Auton Robot (2015) 38: 179. doi:10.1007/s10514-014-9400-5

- 1 Citations
- 490 Views

## Abstract

This work presents a control technique to autonomously coordinate a landing between a quadrotor UAV and a skid-steered UGV. Local controllers to feedback linearize the models are presented, and a joint decentralized controller is developed to coordinate a rendezvous for the two vehicles. The effects of time delays on closed loop stability are examined using a Retarded Functional Differential Equation formulation of the problem, and delay margins are determined for particular closed loop setups. Both simulation and experimental results are presented, which demonstrate the feasibility of this approach for autonomous outdoor coordinated landing.

### Keywords

Mobile roboticsAutonomous landingSkid-steered vehicleQuadrotorTime delays## 1 Introduction

Interest in unmanned aerial vehicles (UAVs) has grown significantly across many sectors of society over the last few decades. The advantages provided by UAVs over human operators are clear, particularly for tasks that are dirty, dangerous or dull. Private sector companies are beginning to make use of the technology for tasks such as remote inspection and monitoring, persistent surveillance, aerial mapping and target tracking. This increase in interest has opened up opportunities for researchers to look for new methods of extending the capabilities of UAVs to accomplish their tasks more efficiently with less human involvement. In particular, the major limitations of large UAVs in terms of ease of deployment, operation in close proximity to obstacles and cost have driven extensive development of small UAVs for a wide range of military and civilian applications.

Small UAVs can be both safe and manoeuvrable, but as a result of their limited size, can suffer from reduced payload and flight length capabilities. In order to increase the range of a small UAV on a mission, the idea of pairing the UAV with an unmanned ground vehicle (UGV) that has a greater possible range has been put forward (see Waslander 2013 for a survey of the area). Another advantage arising from pairing the two different types of autonomous vehicles is in being able to gain multiple perspectives during a mission. In order to have a fully autonomous system that pairs a UAV with a UGV, one must ensure that the vehicles have the ability to rendezvous and perform coordinated landings autonomously.

Despite a large effort in the area autonomous landing on moving vehicles (described in Sect. 2), little attention has been paid to the possibility of coordinating aerial and ground vehicles for autonomous rendezvous. Our contributions in this work can be stated as follows. We present a novel decentralized control method for autonomous rendezvous of a UAV and a UGV, which uses feedback linearization for each vehicle controller to render the input-output dynamics of each vehicle linear, and a decentralized linear relative position controller to drive the vehicles together from an arbitrary initial state. We perform a time delay stability analysis in order to examine the tolerance of this control scheme to delays in processing and communication. Based on the real system parameters, the delay stability margin is determined to exceed the expected worst case performance of standard wireless communication, and simulation results are presented which demonstrate the degradation in performance of the controller as the communication delay is increased. Finally, we present experimental results for a small quadrotor UAV and skid-steer UGV which demonstrate that the feedback linearized controllers can successfully be implemented for both vehicles, and that coordinated landings can be executed indoors with high quality offboard positioning system data, and outdoors with low cost inertial sensors under windy conditions.

The paper proceeds as follows. Section 2 presents related work in UAV landings on moving ground vehicles. In Sect. 3, the components of the system are presented, including the dynamic models of the UAV and UGV, their associated controllers, and the coordinated controller to drive both vehicles together. Section 4 develops the stability analysis for this system in the presence of time delays. The coordinated controller is re-developed for the case with time delays. Simulation results which explore the effects of time delay on system performance are presented in Sect. 5 and experimental results from both indoor and outdoor flight tests are presented in Sect. 6. Finally, conclusions are given and opportunities for future work are discussed in Sect. 7.

## 2 Related work

Much work has been done on relative position estimation and controller design for performing autonomous landings on moving targets. The relative motion of the two vehicles can be determined either by measuring the inertial position of each vehicle using high-accuracy GPS and taking the difference (Oh et al. 2006), or by directly measuring the relative motion using either relative differential GPS measurements or visual target tracking (Saripalli and Sukhatme 2006; Voos and Bou-Ammar 2010; Wenzel et al. 2011). Ultimately, the methods are interchangeable, as long as the accuracy and availability of the measurements produced is consistent. In this work, we rely on a custom carrier-phase differential GPS solution (Waslander 2014) that provides 2–5 cm relative position accuracy over the experiment duration.

Numerous controller designs for autonomous landings on moving target platforms have been presented. Frequently, assumptions are included that ensure that the aerial vehicle is operating in a linear flight regime in near hover conditions, for which PID control has been demonstrated to be sufficient (Hoffmann et al. 2011). Saripalli and Sukhatme (2006) present an approach for landing an autonomous helicopter on a moving target using a camera mounted on the helicopter. This approach makes use of the camera to observe the target from the air. A Kalman filter is used to track the target using camera data. The state estimate is then used to generate a desired trajectory that the helicopter tracks as it lands on the moving target. The helicopter is controlled using a behaviour based PID control approach to track the reference trajectory through different flight regimes, with more aggressive tracking performance applied as the vehicle approaches the landing stage of the flight. No proof of stability is given, however, in terms of switching between linear controllers, but preliminary experimental results demonstrate the feasibility of the approach at low speeds with no wind disturbances. In an outdoor situation, this assumption can be unrealistic.

Nonlinear control methods have also been proposed for autonomous landing on moving targets, and promise to provide greater flexibility in the relative motion and larger flight envelopes over which guarantees of stability are applicable. In Oh et al. (2006), propose a nonlinear control technique for landing a UAV on a moving boat. The method relies on time scale separation of attitude and position control, where the attitude dynamics are controlled using a fast time scale for which stability is guaranteed with a Lyapunov stability argument, and the position of the helicopter is controlled using a slower time scale controller as an outer loop. The authors present simulation results only, but do guarantee robustness of the controller to bounded tracking errors in the attitude control. A tether is also proposed for communication of the boat position, which greatly limits the range of operations for small UAVs, adds significant disturbance to the position control in the form of a slung load (the tether) buffeted by wind and is therefore not suitable for most applications. Nonetheless, the method could be trivially extended to avoid the use of a tether through low-latency wireless communication of the boat position to the UAV.

Voos and Bou-Ammar (2010) have defined a feedback linearization base control method for landing an aerial vehicle on a base vehicle moving at constant velocity. The method reduces to a fixed trajectory tracking problem for a quadrotor vehicle, but has not yet been implemented, which may be due to the difficulty of correctly identifying the actual parameters in the decoupling matrix for a given UAV.

More recently, Li et al. (2011) have successfully demonstrated autonomous landings of UAVs on moving ground platforms. Li et al. perform a smooth takeoff by following a prescribed spline in the altitude command, and tracking and landing are achieved by relying on the commercially available PID control for the inner (attitude) and a sliding mode outer (position) loop on the Ascending Technologies Hummingbird platform, which is needed to combat difficulties that arise from the ground effect. A sequence of position commands are generated, and the landing sequence is constrained to have an exponential speed decay, and the results are demonstrated indoors with an indoor positioning system (IPS) state measurement, and were repeated outdoors as well. The effect of airflow disturbances has also been investigated by Esmailifar and Saghafi (2009), who presented a nonlinear controller design and simulation results for landing on a moving platform for which the effects of wind disturbances on tracking performance were evaluated. The method relies on solution of a state dependent Ricatti equation for control, as well as on accurate estimation of the wind magnitude and direction at each instant.

## 3 Coordinated controller design

In order to develop accurate controllers to ensure a successful rendezvous, suitable dynamic models of the vehicles must be used. First, a simple quadrotor dynamics model is presented, along with an inner/outer loop controller that feedback linearized the position control and leaves attitude control to proven PID control technique (Hoffmann et al. 2011). Then, a kinematic model for the UGV is presented, along with a second feedback linearizing controller. Finally, the joint decentralized controller is presented.

### 3.1 Quadrotor dynamics

Quadrotor UAVs have four rotors arranged in a cross configuration. The angular speed of each rotor can be independently controlled to produce different thrusts. Let \(\varOmega = (\varOmega _1, \varOmega _2, \varOmega _3, \varOmega _4)\) be the angular velocity of rotors as enumerated in Fig. 1a, the thrust generated by the \(i^{\mathrm{th}}\) rotor, \(f_i\), is given by \(f_i = b \varOmega _i^2\) and the reaction torque is obtained via \(t_i = d f_i\), where \(b, d \in \mathbb {R}\) are the aerodynamic constants of the rotors.

### 3.2 Skid-steered ground vehicle model

When working with UGVs, it is common to use two dimensional planar models. The modeling problem for general motion becomes quite difficult when the system is considered to move in three dimensions. Yu et al. (2009) present a three dimensional dynamic model of a skid-steered ground vehicle for the special case of straight-line motion, but do not present a general three dimensional model. Sharaf et al. (2008) develop a 6 DOF dynamic model of a 4 wheeled ground vehicle, but do not present a control strategy for the model.

Here we make use of a kinematic model of the skid-steered ground vehicle based on work in Pazderski et al. (2004). The UGV platform in use in the WAVELab at the University of Waterloo provides velocity inputs, so as a result a kinematic model is appropriate. Early experimental work has shown that with a kinematic model and the controller that will be presented below, very reasonable tracking performance can be obtained.

### 3.3 Joint decentralized control

We now present a control approach that has been developed to force the quadrotor and ground vehicle to rendezvous. This approach is not based on trajectory tracking, but instead is based on the exponential stabilization of a particular set of dynamics.

The goal of this control strategy is to drive the relative position error of the two vehicles to zero, along with the velocity of the vehicles with respect to an inertial frame. If only position error is stabilized, then the two vehicles may rendezvous, but continue to drive together at some velocity. As this controller is designed strictly to accomplish rendezvous and landing, it is necessary to ensure that the velocities of both vehicles are driven to zero. From there a tracking controller can be enabled on the ground vehicle to carry on with the rest of the mission while transporting the quadrotor.

The feedback linearizing controllers presented in Sect. 3.1 and Sect. 3.2 result in linear plants for both of the vehicles. The closed loop feedback linearized model for the quadrotor position plant are given as \([\ddot{X}_q, \ddot{Y}_q]^T = v_q\) and \([\dot{X}_g, \dot{Y}_g]^T = v_g\) for the UGV. The goal is to ensure that \(X_q - X_g = X_q - Y_g = 0\) and \(\dot{X}_q = \dot{Y}_q = 0\). To stabilize inertial velocities for both vehicles to zero, we only need to ensure that the quadrotor velocity and the relative position of the vehicles converges to the equilibrium. In developing the controller, since the plants for X and Y are decoupled and symmetric, we design a control law for \(X\) and apply the same control to \(Y\). It is possible to extend this controller to the \(Z\) state as well. However, it is much safer to command the quadrotor in \(Z\) only once one is certain that the \(X\) and \(Y\) positions of the vehicles are close to each other.

The joint decentralized controller presented in this work builds upon our previous coordinated landing work Daly et al. (2011). The original work employs a complete feedback linearization of the quadrotor model, which results in quadruple integrators in the \(X\), \(Y\) and \(Z\) directions (Daly et al. 2011). This leads to difficulties in practical implementation of the controller due to the requirement of the 4th order time derivative of the states, which is not measurable and noisy to estimate. Our current approach, which involves decoupling the attitude and position portions of the quadrotor controller, results in double integrator dynamics for the closed loop position degrees of freedom. This removes the need for higher order derivatives of the state and simplifies the implementation of the joint decentralized controller.

The controller given in (22) consists of the control signals for both plants. The signal \(v_{g,1}\) as computed in (22) is applied to the UGV, and likewise the term \(v_{q,1}\) is applied to the quadrotor. Therefore, each plant requires knowledge of the state of the other in order to stabilize this system. Intuitively this is quite reasonable, as the goal is for each vehicle to drive toward the other. An additional inherent complication that arises from this setup is that of time delays. Depending on the communications network used and the distance between the vehicles, the delay could be significant. The next section will examine the stability of this closed loop system in the presence of time delays.

## 4 Time delay stability analysis

Given that the control signal applied to each plant requires knowledge of the state of the other plant, and the fact that the two plants are physically separated, there will be inherent time delays in this system. It is well known that time delays can destabilize a closed loop system, but it is important to analyze the magnitude of the delay that could be tolerated by such a system. In this section, using the Retarded Functional Differential Equation (RFDE) formulation of the problem, the question of stability in the presence of time delays for this system will be examined.

In this work the state of the quadrotor is transmitted across a communications link to the ground vehicle, and the state of the ground vehicle is transmitted across the communications link to the quadrotor. Since both plants make use of their own state and the state of the other vehicle, the closed loop system expressed in RFDE form will contain both the state of the system at the current time and the state of the system delayed by the time delay in the communications.

Delays in a system are *commensurate* if each delay is an integer multiple of a base delay. Here it is assumed that the time delay between vehicles is the same in each direction. Since a private network is used, and the only signals transmitted on the network are between the vehicles, this is reasonable. We make the additional assumption, for the purpose of analysis, that the time delay is also constant. It is always possible to ensure that this assumption is held in practice by putting buffers into the system to deliver the information at a constant rate.

The difficulty with the formulation of this controller when delays are present in the system comes in with the first state in the joint system (21). In the presence of time delays, only one term or the other that makes up \(e_1\) will be delayed. As a result, there is no clear way to express the dynamics (21) with control law (22) in RFDE form.

**Theorem 1**

This theorem requires a frequency sweeping test to evaluate the generalized eigenvalues continuously between \(0\) and \(\infty \) rad/sec. In practice, a numerical approach is used Gu et al. (2003). The frequency axis is broken up into a grid, and at each grid point the generalized eigenvalues of \(j\omega _k^i I - A_0\) and \(A_1\) are computed. If \(\underline{\rho }(j\omega I - A_0,A_1) > 1\) for all \(\omega \), the system has a delay margin of \(\infty \). If not, the computation results in pairs \((\omega _k^i,\theta _k^i)\) that provide estimates of the delay margin \(\bar{\tau }_i\). The smallest \(\bar{\tau }_i\) will be the delay margin for the system. The pairs are found in the cases where the generalized eigenvalues have magnitude one. At these points, the phase \(\theta _k^i\) is found, since the generalized eigenvalues are complex in general.

For the application of Theorem 1 the RFDE system must be stable for no delays. From the design of the state feedback controller (22), this is assured. In order to determine the delay margin for the closed loop quadrotor-ground vehicle system, one must design the state feedback controller, and then numerically apply the results of Theorem 1. That is, for a given choice of gains for the joint decentralized controller, the maximum delay for which the system is stable may be found. With this result, the designer may determine if the particular parameters chosen will maintain stability for the delay considered in a particular case.

## 5 Simulation results

Simulations are performed to verify the controller described in Sect. 3.3 and the time delay stability analysis on the closed loop system in Sect. 4.

In the UGV model, \(x_0\) is set to \(3.7\) cm, and the same value is used in the UGV controller. The initial state is \([X_g, Y_g, \psi _g]^T = [0, 1, 45]^T\), where the linear units are in metres and the angular units in degrees. For the quadrotor, the full nonlinear dynamic model in (10) is used to test the robustness of this controller against remaining nonlinearities. The mass, \(m\), was set to 1 kg, \(I_r\) is set to 0.01, and \(I_x = I_y = I_z = 1\). Since this work is not focused on system identification of quadrotor parameters, values used for the system parameters are not necessarily realistic, and the re-tuning of the controller is expected when testing on real platforms.

A PD controller is used for attitude inner loop control, and the proportional gain is chosen as \(k_{p} = 10\) and derivative gain as \(k_d = 30\) for \(\phi _q\), \(\theta _q\) and \(\psi _q\). The gains for the joint controller (22) were chosen as \(K_1 = 0.04\), \(K_2 = 0.2\). Tracking in \(Z_q\) is also achieved using a PD controller to control the double integrator altitude subplant (11) as a result of feedback linearization in (12), with the proportional gain \(k_{z,p} = 0.04\) and derivative gain as \(k_{z,d} = 0.2\). To ensure that the reference trajectory for \(Z_q\) is a gradual descent for safe landing operation, the reference signal for \(Z_q\) was passed through a first order low-pass filter with poles at \(s = -2\). The initial pose of the quadrotor was set to \([X_q, Y_q, Z_q, \phi _q, \theta _q, \psi _q]^T = [5, 4, 5, 10, 10, 10]^T\), where the linear units are in meters and the angular units in degrees. The initial linear and angular velocities are set to zero for both vehicles. The simulations were implemented using a first order Runge–Kutta solver with a fixed sample period of \(0.01\) s.

## 6 Experimental results

The autonomous docking experiments are performed using an Aeryon Scout quadrotor and a Clearpath Robotics A200 Husky skid-steered UGV.

The Aeryon Scout is equipped with a U-Blox GPS unit capable of outputting raw satellite information for Real-Time Kinematic (RTK) GPS fix acquisition. It also carries an on-board Inertial Measurement Unit (IMU) that includes a 3-axis gyroscope and accelerometer, as well as a magnetometer. The measurements from these sensors are fused with a complementary filter to estimate its roll, pitch and yaw for attitude and position regulation at 100Hz. The quadrotor is designed to have the capability of maintaining position in 70km/h winds, which is a desirable feature for our outdoor experiments. Modelling the quadrotor position subplant as a linear double integrator, we designed a Kalman filter to estimate the position vehicle states, including inertial frame quadrotor position and velocity required by the joint state feedback rendezvous controller in Sect. 3.3. Figure 8a is a picture of the Aeryon quadrotor platform.

Indoor landing experiments are performed within a OptiTrack positioning system. IR reflectors are mounted on both the vehicles, and six IR cameras are positioned around the test environment to capture the reflectors and triangulate their 3-D positions. The system provides 50 Hz position and yaw measurements with sub-centimetre, sub-degree accuracy.

For outdoor relative position feedback, an RTK GPS computation engine (Waslander 2014) is also implemented to provide accurate relative position error between the quadrotor and the UGV. C/C++ software is written to interface with the U-Blox GPS to extract raw satellite information. A User Datagram Protocol (UDP) communication socket is established between the vehicles over WiFi, and raw satellite packets are sent from the UGV to the quadrotor, where the RTK fix computation takes place. The relative position error \([e_1, e_2]\) computed from the RTK fix along with inertial quadrotor velocities \([\dot{X}_q, \dot{Y}_q, \dot{Z}_q]\) are subsequently relayed back to the Husky as required by the UGV portion of the decentralized rendezvous controller.

We propose to control the height of the quadrotor UAV using the relative altitude error from the RTK GPS. Conventional systems use a SOund Navigation And Ranging (SONAR) sensor to measure the distance from the UAV to the closest surface within the SONAR measurement volume. This leads to discrete jumps in height measurements as the quadrotor flies over the landing platform of the UGV, resulting in a sudden increase in thrust as the height controller tries to overcome the change in altitude measurement that results. Such behaviors cause disturbances in position control during the critical landing stage when the UAV is within the proximity of the landing platform. The RTK relative altitude information, on the other hand, provides much more consistent height measurements, and is deemed more suitable for this application.

We have successfully demonstrated autonomous coordinated landing of a small UAV on a ground vehicle, in the presence of wind and despite difficulty with ground effect. This paves the way for multi-vehicle teams to be applied to persistent surveillance problems, and allows short lived UAVs to operate indefinitely with recharge or swap on moving support platforms.

## 7 Conclusion

This work has presented a new approach for the autonomous landing of a quadrotor on a UGV. By designing local nonlinear controllers for each vehicle that render each vehicle linear through feedback, it is possible to design a joint decentralized controller that draws the two vehicles together. In this work, only the \(X\) and \(Y\) positions of the vehicles are drawn together. Once the vehicles are close enough to each other, an automated landing of the quadrotor is performed using a tracking controller on the quadrotor altitude state. For this strategy each vehicle must have access to the other vehicle’s state. Due to the communications involved in a system like this, there will be time delays inherent in the transmission of the state. To address this, the problem was formulated using RFDEs in such a way that the closed loop stability in the presence of time delays could be analyzed. Simulation results were presented to confirm the feasibility of the approach. The addition of sensor noise and wind disturbances to the simulations has shown that the approach is robust to noise and modeling error, even in the presence of significant time delays.

Preliminary experimental results showing the successful outdoor landing of a quadrotor on a UGV in the presence of time delays and disturbances have been presented. Initial experiments made use of RTK GPS for state measurements. Future work will examine the use of more complex plant models for each vehicle, the effects of using estimators, and the impact of bounded but time varying communication delays. Additionally, a more in depth study of the effects of modeling error and noise on the delay margin for closed loop stability will be carried out.