Quadrotor Obstacle Avoidance Based on Integral Backstepping

Corresponding Author: Kil To Chong Department of Electronics Engineering, Chonbuk National University, Jeonju, South Korea Email: kitchong@jbnu.ac.kr Abstract: This paper addressed obstacle avoidance problem of a quadrotor in outdoor environment. Path planning was finished by employing classical Dijkstra algorithm and the controller of the quadrotor adopted integral backstepping method. In order to get a smooth trajectory with time optimal and acceleration constraints properties, quantic polynomials were utilized to generate trajectory file. The scheme is particularly practical and useful because of its small computation burden and feasibility. Simulations have been done to verify the performance of the whole system. As a result, the quadrotor successfully tracked the path without any collision with obstacles except that there are some small error in the final part of position tracking performance (±1m) and some small delay in the attitude tracking about 0.3 ms. In conclusion, the proposed method showed acceptable performance for quadrotor obstacle avoidance.


Introduction
Quadrotors, as a kind of Unmanned Aerial Vehicles (UAVs), have being an attractive research area in recent years. In terms of dynamics modeling and controller design, many fantastic works have been published and demonstrate robust control performance (Geng et al., 2013). Since fixed wing UAVs payload is large enough, it is possible for them to install kinds of equipment such as powerful communication facilities and high resolution stereo vision system, which give them an advantage over communicating with military satellites to successfully avoiding collision with other UAVs or aircrafts. Comparing to fixed wing UAVs, obstacle avoidance control of small UAVs such as quadrotors has been a very challenging problem because of its limited payload, which make it unrealistic to choose high powerful processor with more relative weight to implement complicated algorithms and to mount accurate sensors such stereo vision equipment. However, no matter where quadrotors are applied in indoor or outdoor environment, collision avoidance with obstacles is one of basic functions to finish complicated tasks. Hence it needs to pay attention to obstacle avoidance controller design and choosing hardware.
Recent approaches for path planning has many different directions. In terms of usage of sensors for obstacle avoidance, one main trend is based on stereo vision system by using image processing technics, which obtained impressive and robust performance especially in indoor environment. However, its main drawback is that image processing implementation is offline, which means that it is not feasible for long distance surveillance in outdoor environment. Another research direction is based on some other different kind sensors instead of camera such as a laser range finder. Although such sensor can give online and real time information to microprocessor and they also can be applied into both indoor and outdoor environment, its experimental performance is not as good as such systems based on stereo vision system. When it comes to the algorithm processing raw map information sent by sensors, it has two main directions: Extending classical method successfully applied on ground mobile robots and proposing some other new approaches. Simultaneously Localization and Mapping (SLAM) is one of representatives of classical method of ground mobile robots obstacle avoidance (Grzonka et al., 2012) and some other methods also obtain good results such as combining D* lite and Probabilistic Roadmap (Hrabar, 2008), Mixed Integer Linear Program (MILP) (Richards et al., 2002), dynamically feasible interpolation (Dever et al., 2006) and using motion primitives (Bottasso et al., 2008). This paper firstly derived the dynamics model for quadrotors based on Newton-Euler equations. In terms of control of the quadrotor, integral backstepping controller was adopted. The main part of this paper is path planning based on Dijkstra algorithm. By using this simple method, it can substantially alleviate the computation burden problem, which make it possible to run on off shelf products. A discrete original path consisting of hundreds of points was firstly generated by using Dijkstra algorithm. However, it is not optimal. Hence, this paper proposed one measure to improve this original path: Condensing the original path by checking if it can directly reach the next point without collision, which can abridge the original path to make it time optimal. In order to taking velocity and acceleration constraints into account and meet desired velocity inputs for integral backstepping controller, quantic polynomials were chosen to generate smooth 3D trajectory. Similar forest environment was created under Simulink environment to evaluate the performance of the path planning method and integral backstepping controller. Simulation results showed that this new method exhibit nice performance for quadrotor obstacle avoidance. In comparison with other methods, the main contribution of this paper is incorporating Dijkstra algorithm and integral backstepping controller to generate a relatively time optimal 3D trajectory with substantially decreasing computation burden of microprocessors and considering dynamics constraints.
The dynamics modeling is described in section II. Section III gives an overview about integral backstepping controller. Simulation is presented in section IV. The results and discussion, presented in section V, is a clear illustration of performance of the whole system.

Quadrotor Dynamics Modeling
Quadrotor dynamics model is usually obtained by two different approaches: Euler-Lagrange and Newton-Euler equations and these two approaches can get same motion equations. There are many nonlinear factors of complete dynamics of a quadrotor such as free-stream velocity, blade flapping and gyroscopic effect. It would be very complicated even not feasible for the purpose of control if one dynamics model considers all nonlinear effect factors (Habib et al., 2014). Therefore, this chapter builds a simplified dynamics model which retains main features and ignores some nonlinear effect factors such as free-stream velocity and blade flapping, which are easily observed in aggressive motions of large quadrotors (Garcia et al., 2006;Kendoul et al., 2009;2010). In this chapter, the dynamics model will be derived based on Newton-Euler equations under the following assumptions: • The quadrotor structure is supposed be symmetrical and rigid • The center of geometry and the body fixed frame origin are assumed to coincide • The propellers are supposed rigid • Thrust and drug are proportional to the square of propeller's speed In this study, the dynamics model will be derived based on Newton-Euler equations. Based on Newton-Euler formalism, the dynamics of a rigid body in body frame can be described as: where, I is the identity matrix; V = (u, v, w) and Ω = (p, q, r) are, respectively, the linear and angular velocities in the body-fixed frame; F ext and τ are the total external force and torque, respectively; and J is the moment of inertia which is given by: Based on Euler angles parameterization, one can use a rotation matrix R to express translational dynamics in inertial frame, where R is defined as follows: where η = (φ, θ, ψ) denotes three Euler angles roll, pitch and yaw, respectively and s and c are abbreviations for sin and cos function. By considering this transformation, the translational dynamics of inertial frame are computed as follows: x y z = ɺ ɺ ɺ the rotorcraft velocity in inertial frame and g is the gravitational acceleration and F B is the total force excluding the gravity force. The original Newton-Euler equations are derived based on rigid body which does not consider internal dynamics. Since electric motor's gyroscopic effect is obvious, this paper adds gyroscopic effect term to Newton-Euler equations. The new dynamics equations for rotational motion can be expressed as: where J r is motor's moment of inertia and Ω r is residual angular speed of four motors (w 1 , w 2 , w 3 , w 4 ), which can be expressed as: To transform attitude dynamics in body-fixed fame into inertia frame, we need the kinematic relation between Ω andηɺ : where the Euler matrix R r is given by: We can make assumption around hover state and small angles where ψ≈0, θ≈0. Based on that assumption, this transformation matrix can be simplified to an identity matrix, which means that actually no changes are made on rotational dynamics. Depending on this approximation, the rotational dynamics of inertial frame can be calculated as follows: A quadrotor is an under-actuated system with 6 degree of freedom and four control inputs, which are the total thrust U 1 and the torques (U 2 , U 3 , U 4 ). Hence the force and torque vectors in Equation 4 and 5 can be respectively. Under the assumption that thrusts are proportional to the square of propeller's speed, the relationship between control inputs (U 1 , U 2 , U 3 , U 4 ) and rotors' speed (w 1 , w 2 , w 3 , w 4 )can be given by: where K f and K m are the aerodynamic force and moment constants respectively. Recalling Equation 4 and 8, the nonlinear model of a quadrotor can be expressed in the following form, where l denotes the distance between rotors' center and the center of mass: The dynamics model derived by this section is suitable for mini-quadrotor with small propellers and low flying speed. For a more accurate dynamics for large quadrotors model which considers blade flapping, big angles of attack, one can refer to (Hoffmann et al., 2007) and paper (Bouabdallah, 2007).

Integral Backstepping Controller Design
Backstepping is a novel and practical approach that provides a recursive method for stabilizing the origin of a system in strict-feedback form. By constructing Lyapunov function for the closed-loop systems, backstepping controller guarantees system stability. However, integral backstepping has more robustness to some disturbances owing to integral action, which cancels steady error. In other words, integral backstepping is the combination between PID and backstepping. Integral backstepping controller was derived in Samir Bouabdallah's thesis (Bouabdallah, 2007). According to its results, integral backstepping controller is robust to external disturbances and can stabilize the quadrotor. The following equations are rotational (Equation 12) and translational (Equation 14) control laws of integral backstepping controller:

Solving Under-Actuated Problem
Quadrotor is an under-actuated system which can produce 6 outputs (φ,θ, ψ, x, y, z) with 4 inputs (U 1 , With Equation 17, the under-actuated problem is solved and then the control system advocated for the overall system is schematized in Fig. 1. As the Fig. 1 shown, the two controllers, position controller and rotation controller, are connected by nonlinear Equation 17.

Obstacles Avoidance Scheme
Obstacle avoidance involves detecting obstacle, avoiding them and finally getting optimal path. In this part, Dijkstra algorithm was applied to finish path planning. Because it has following advantages: Simple, fast and low computation burden. Based on Dijkstra algorithm, path planning was finished in several steps: • Getting obstacle and map boundary information to finish mapping, as Fig. 2 shown • Utilizing Dijkstra algorithm to get original discrete path, as Fig. 2 shown • Exploiting quantic polynomials to generate trajectory file with acceleration and average velocity constraints In terms of Dijkstra algorithm, it firstly obtains original discrete path consisting of points. After mapping, the whole procedure can be divided into three steps: • Picking the unvisited vertex with the lowest-distance • Calculating the distance through it to each unvisited neighbor and updating neighbor's distance if smaller • Marking visited when done with neighbors This original discrete path consisted of hundreds of points. However, it is not optimal. In order to make it more time optimal, this chapter condensed the discrete path through checking if the quadrotor can directly arrive the next point without collision with obstacle. After finishing this step, it obtained a condensed path composed of much less points, which were marked by five blue stars, as shown in Fig. 3. Comparing to the original Dijkstra path's length (56.00 m), this condensed path's length is 38.46 m, which is shorter about 31% than the original one. This condensed path are also treated as the reference path for simulation experiments. Another advantage of this condensed path is that it is convenient to generate smooth trajectory, because sometimes it can fail to directly generate smooth trajectory if the distance between two adjacent points is too small.
Since integral backstepping controller needs desired velocity inputs, quantic polynomials were chosen to generate smooth 3D trajectory with acceleration constraints. Formulating the desired trajectory as a 5 order polynomial offers two advantages. Firstly, constraints on velocities and accelerations are easily incorporated into the reference path. Secondly, providing boundary conditions to ensure the continuity of the first four derivatives of the reference path, which means that those inputs to quadrotor will be smooth. The reference trajectory between two points can be defined as:

( ) r t a t a t a t a t a t
It is obvious that initial and final velocities and accelerations are zero. So the following equation can be obtained: Thus the desired trajectory between two points is given by: After getting Equation 22, it is easy to get parameters for the desired trajectory if traveling time between two points is known.
Here is the method that how we use the above equation with acceleration constraints to generate smooth desired trajectory: • Defining average speed V avg and maximum acceleration a max • Calculating traveling time t f by using average speed and distance between two points • Using Equation 22 to get parameters of the desired trajectory • Checking maximum acceleration to see if it exceeds a max . If not, those parameters are acceptable; if it does, it reduces the average speed to 80% of the former one and iterates until parameters of desired trajectory are acceptable By taking constraints on actuators of a quadrotor into account, this chapter added acceleration and average speed constraints to trajectory generation. Finally, a 3D trajectory was generated by exploiting quantic polynomials to guarantee the trajectory staying on the reference path.

Simulation and Results
In order to evaluate the performance of path planning algorithm and integral backstepping controller, this paper, based on Simulink environment, built outdoor simulate forest environment for quadrotor simulation tests, as shown in Fig. 2. Firstly, Dijkstra algorithm finished path planning tasks and then trajectory was generated by using Equation 18 to 22. The generated trajectory could give desired position and velocity inputs to integral backstepping controller. By exploiting Simulink Response Optimization toolbox, this paper obtained all the parameters for integral backstepping controller.
As Fig. 4 shown, the quadrotor was command to fly from starting point (0, 0, 0) to final points (25,18,10) with no collision with trees and it succeeded to finish this task, which the desire yaw angle was given by the pilot. Figure 5 and 6 presented responses of position and attitude, respectively. In terms of position response, it tracked the reference trajectory successfully in most of the time except that there are some small error (±1m) in the end. In comparison, attitude response has some obvious time delays about 0.3 ms but the yaw repose showed nice tracking performance. In conclusion, the whole system including path planning and integral backstepping controller works well and finishes the task successfully.

Conclusion
This paper presented one obstacle avoidance method for a quadrotor. A nonlinear dynamics model was studied firstly. Integral backstepping controller was proposed to tackle the stable problem of the quadrotor. Dijkstra algorithm was applied to obtain discrete path. In order to make the path optimal and feasible, this paper condensed original discrete path into several points and added accelerations and velocities constrains to the smooth trajectory, which was generated using quantic polynomials. Simulation results show that the quadrotor successfully complete the task with very little tacking error.
Many breakthroughs of path planning about quadrotors has been made, especially some algorithm shows impressive performance with stereo vision system. Under supervision of video system, one quadrotor can finish very complicated and difficult tasks such as holding one cup of wine or several quadrotors cooperate with each other to do some big and sophisticated tasks such as building something. With the advances of technology, there functions can be achieved in cluttered and long range environments.