Design of an Autonomous Hover Control System for a Small Quadrotor
- Author: Raharja Gilar B., Kim Gyu Beom, Yoon K. J.
- Organization: Raharja Gilar B.; Kim Gyu Beom; Yoon K. J.
- Publish: International Journal Aeronautical and Space Sciences Volume 11, Issue4, p338~344, 15 Dec 2010
This paper discusses the development of the control system of a mini quadrotor in Konkuk University for indoor applications. The attitude control system consists of a stability augmentation system, which acts as the inner loop control, and a modern control approach based on modeling will be implemented as the outer loop. The inner loop control was experimentally satisfied by a proportional-derivative controller; this was used to support the flight test in order to validate the modeling. This paper introduces the mathematical model for the simulation and design of the optimal control on the outer loop control. To perform the experimental tests, basic electronic hardware was developed using simple configurations; a microcontroller used as the embedded controller, a low-cost 100 Hz inertial sensors used for the inertial sensing, infra-red sensors were employed for horizontal ranging, an ultrasonic sensor was used for ground ranging and a high performance propeller system built on an quadrotor airframe was also employed. The results acquired from this compilation of hardware produced an automatic hovering ability of the system with ground control system support for the monitoring and fail-safe system.
Quadrotor , Autonomous
Quadrotor development has gained popularity among academic researchers. Developments in research led to the proposals of several techniques and methods of modeling for the simulation and control design of quadrotor (Altug et al., 2002; Bouabdallah et al., 2004; Hoffmann et al., 2007a; Jenie and Budiyono, 2006; Mian and Wang, 2008). Quadrotor structure and dynamics are simpler than conventional helicopter rotors or coaxial-rotors, allowing quadrotor to have less control complexity (Canetta et al., 2007; Coelho et al., 2007). However, the quadrotor is an unstable system. Consequently, the first design issue that must be addressed for an autonomous system is developing and implementing an attitude stabilization control.
Progress has been achieved during the preparation stage in regards to quadrotor development over the course of one year. Since the quadrotor contains four powerful rotors running at very high revolutions, many obstacles have been met and must be overcome. A most pressing obstacle is developing an attitude sensing quality. The vehicle experiences a high magnetic field produced by the brushless motors. Additionally, the vehicle experiences a very high vibration from the propulsion system. Only an adequate sensor can measure correct values in both circumstances. Consequently, we must develop a light-weight device that is to be attached on the frame. The challenge finding a low-cost inertial sensor performs well.
The propulsion system comprises 20cm diameter double blade propellers and brushless motors assembled on a very stiff design of the mainly carbon-fiber airframe. The flight control system is driven by an NXP LPC1768, an ARM-7 microcontroller that operates in 100 MHz of system clock, and consists of data acquisition system for acquiring six degree of freedom inertial sensor data from XA3300 at maximum 100 Hz of frequency and a flight controller that processes the control algorithm. The microcontroller directly drives the four channels for four electronic speed controllers through an i2c protocol; thus, we feel confident in achieving a fast response propulsion system rather than using a pulse-width modulation speed controller.
Figure 1 illustrates the quadrotor system’s ability to be controlled autonomously by the ground control system through the 900 MHz of radio modem; otherwise, the pilot can take over manually using radio control. The flight control system also has ability to auto lock the command input in the standby mode as a safety system, and then receives some special command input as a password to unlock.
A 1,200 mAh 11.1V Li-Po battery was used to drive all the electronics and the four 2,500 rpm/V brushless motors. The battery health system in the flight controller prevents an uncontrolled situation such as the power going down or controls the exhausts during the flight, making the quad-rotor land automatically.
Figure 2 shows the three elements required during the flight test; the quadrotor itself, the radio controller for manual piloting and ground control software on a personal computer for monitoring and autopilot. In Table 1 we provide the detail of weight of the quadrotor.
We introduce our quadrotor model based on the dynamics involved in the quadrotor as shown in Fig. 3. The main motion factor is the four cross configuration rotor’s speed; the motion can be varied by changing this speed (Bresciani, 2010; Leishman, 2002).
The thrust (T1, T2, T3, T4) of each rotor are generated from rotation speed of the motors (Ω1, Ω2, Ω3, Ω4) and the aerodynamics of the propeller blade. The thrust generation represented as following equation:
Cris thrust coefficient, ρ is air density, Ais blade area and Rradis the blade radius. Quadrotor motion is described by the Eqs. (2-7) (Altug et al., 2002). Collectively increasing all of the rotors’ speed may add more lift forces in all motors and vertical dynamics translation (¨ z. In other words, this increase may generate the same thrust from all propellers.
Two rotors (Ω1 and Ω3) are rotated clockwise while the remaining two (Ω2 and Ω4) rotate counter-clockwise. Based on this configuration, the yawing motion (
r, ψ) can be produced by making all the counter-clockwise rotors greater than the clockwise. With the assumption that the each of the four thrust values are equal, the yawing motion can be assumed to be stable even though the dynamics of quadrotor produces an unstable system.
Generating a variation in the thrust
T1 and T3 oppositely process according to the real system. In general it takes into by varying Ω1 and Ω3 produces a pitching motion ( q, θ). The consideration the rotor dynamics and quadrotor dynamics. same method is applicable for horizontal translation (x¨ ).
The rolling motion (p, φ) can be created by generating a variation in thrust
T2 and T4 oppositely by varying Ω2 and Ω4. This is also applicable for horizontal translation (y¨ ).
where m is the total mass,
Lis distance of propeller to the center of interconnection, Iu¨is the moment of inertia and ki drag coefficient which are assumed to be zero in this project due to low speed condition.
We built the model on MATLAB/Simulink software for simulation and as basic reference for designing the control system. As shown in Fig. 4, the model was divided into several blocks. Each block required its own validation process according to the real system. In general it takes into consideration the rotor dynamics and quadrotor dynamics. we used to rotor transfer function from a previous modeling project(Putro, 2010) with an additional response time delay due to the communication exchange between microcontroller and speed controller.
For validation purposes, we implemented a proportional-derivative controller on the quadrotor in order to acquire flight data to compare to the simulation. (Gurdan et al., 2007; Hoffmann et al., 2007b)
A control input using a standard helicopter joystick raido control was employed in which at least four control parameters exist: the vertical control (δ
col, longitudinal cyclic(δ long, lateral cyclic(δ tatand directional control (δ ped. The input sensitivity regulated by: K δcol, K δped, K δlongand K δtatare nessaray for satisfying certain maneuverability.
where ψk; ψk; θk are the outputs of attitude control loop.
The first control algorithm that we implemented is shown in the Fig. 5. The system consists of a damper and an attitude holding for the roll, pitch and yaw. The control linkage is represented by the rotor dynamics of the devices that link the control output to the dynamics of the vehicle in certain constants (Jenie and Budiyono, 2006). The base controller uses a reference of zero, also known as the equilibrium, due to the hovering mode of the quadrotor. Experiments were conducted to determine the control parameters one by one for the all members of the SISO from the inner loop to the outer.
Firstly we implemented the proportional control described by Eq. (11) for the damper, utilizing the rate gyro sensor data to stabilize the angular rate in each axis.
The proportional control was implemented for each angular rate (p, q, r), examining the maneuverability of the vehicle. The low damping ratio maintains the vehicle in a frisky unstable system otherwise the vehicle will be sluggish.
In the next step, we implemented the PD controller for attitude holding described by Eq. (12), for the roll, pitch and yaw.
Simply taking the sum of Eqs. (12) and (13) produces the total inner-loop control Eq. (14).
CD(s) : rate damping controller
gT : rate gyro
kp : proportional gain for rate damping
CAH(S) : attitude holding controller
θtcf(s) : input reference
θ(s) : current position
kD+kds: PD gain for attitude holding
C(s) : total control output
Satisfying the all gain condition (roll/pitch: P = 1.05, D = 0.275 and yaw: P = 1.15, D = 0.35) through experimental direct tuning on the test bed results in ‘able to fly’ performance as shown in the Fig. 6.
We used the flight data based on this result to validate the model. In Fig. 7, our model includes the feedback control as a stability augmentation system containing the same gain adapted in the radian unit.
The pilot should correct the throttle input due to the voltage drop in order to maintain the vehicle in a hovering flight state during the flight test. When the battery goes down after several time of flight, the throttle input should be increase to generate a constant thrust. We implement a compensator block in the simulation to compensate a variable value from the joystick of the radio control that was recorded in the flight data. The compensator adjusts the throttle coefficient factor due to the battery voltage drop during flight.
With noise added to the signal feedback the model runs the PD control on simulation. Figure 8 shows the results of the control response necessary for achieving the hover flight mode in which the oscillation frequencies are slower than the oscillation frequencies of a real vehicle.
In order to achieve the hover flight mode, we assumed that the acceleration in the vertical axis was null, drag was equal to zero and the vehicle weight was 0.582 kg.
Obtaining the total thrust required for a hovering flight is described by:
The validation result shown in Fig. 9 under the simulation.
Finally, we generated flight data from the simulation in order to build a comparison to the real flight data. The model generated results that were similar to the real flight data.
As shown in Fig. 10, a comparison result of real flight data and simulation according to the same input excitation from radio control. The attitude was stabilized, and we confidently plan to design and implement an optimal control based on this result.
The validated model was a non-linear model; thus, the model needed to be linearized around its operating point. We decided to linearize the validated model through the Simulink/MATLAB utilities of the control design and analysis with some defined trim conditions. We considered the trim conditions from the stable condition of the quadrotor during the hover mode. The trim condition of each control inputs and attitude angles are shown in Table 2.
We presented the linear model form in a state-space form, x˙=
Ax+Bx, which is a representation of the following system: State variable:
The A and B matrices with the exception of very small values are represented as follows:
We considered performing a controllability check for our state-space model, and then it was satisfactory to implement the linear-quadratic controller in the simulation. This control law is composed of a cost function:
This, in turn, will be minimized by the feedback defined as:
where C is a 6x6 identity matrix and D is zero. By substituting Eqs. (16) into (15), the system and the controller are now represented as follows:
By changing Q and R we obtained the result shown in Fig. 11 with the gain matrix as:
This gain control results a control response as we had expected; the feedback attempts to stabilize the angle in the equilibrium point. Figure 11 shows the simulation results. The roll and pitch response was slower than that of the yaw; thus, we conclude that the roll and pitch attitude was sluggish and also slightly deviated from the zero point, which is known as steady-state error.
In order to validate the results acquired from the simulation, we intend to implement the linear-quadratic in a real time system for future studies. Our future work will entail improving the K matrix, since the value obtained from K matrix appears to be too high in comparison to the control gain in the real system.
The quadrotor has already been built has exhibited the ability to fly with an inner-loop control. The model has already been established, with the inclusion of the same feedback control as that of an actual system, such as the stability augmentation system. Validation in the hover mode was satisfactorily satisfied for designing an optimal control based on modeling, such as an linear-quadratic controller that has already been implemented during simulation. Since the simulated system showed slight differences in comparison to an actual system, future improvements are necessary. The gain parameter obtained from the simulation can be easily added to the embedded controller in order to improve the performance of the quadrotor attitude control.
Continuing research for this project is necessary in order to establish an autonomous control system using modern approaches for real vehicles. We plan to implement the linear-quadratic controller as well as other modern control techniques in future work. Showing comparative results of real flight test data using several modern control methods are part of our plans for improvement. An altitude holding system will be added to perform a fully autonomous hover control system. The quadrotor will then be ready to use in flying robot applications.
[Fig. 1.] Block diagram of hardware on quadrotor.
[Fig. 2.] Ground control software radio controller and quadrotor vehicle with frame protector.
[Table 1.] Detail of weight
[Fig. 3.] Dynamics involved in the quadrotor.
[Fig. 4.] The quadrotor model on MATLAB/Simulink.
[Fig. 5.] Control system as the inner-loop
[Fig. 6.] The inner-loop controller of roll pitch and yaw angle stabilization in real system.
[Fig. 7.] Quadrotor model with inner-loop control in validation and flight simulation.
[Fig. 8.] Control system as the inner-loop of roll pitch and yaw angle stabilization on simulation.
[Fig. 9.] Validation of thrust at 5.709 N from joystick throttle input during hover flight z=0..
[Fig. 10.] Validation of Euler angle in roll pitch and yaw according to input excitation from joystick as delta longitudinal lateral and pedal.
[Table 2.] Trim condition during hover
[Fig. 11.] Control responses to stabilize the attitude by linear-quadratic controller in simulation.