Stabilization of a Propeller – Driven Pendulum

DOI : 10.17577/IJERTV5IS010276

Download Full-Text PDF Cite this Publication

Text Only Version

Stabilization of a Propeller – Driven Pendulum

Myunggon Yoon

Department of Precision Mechanical Engineering Gangneung-Wonju National University,

South Korea

AbstractIn this paper we deal with a stabilization problem of a propeller-driven one-dimensional pendulum which is regarded as a simple model of a multi-rotor helicopter. A focus of this work is to experimentally check the validity of a linearized transfer function model of a dynamical thrust. From experiments, it was found that our simple thrust model is valid in principle. However electrical noises in an acceleration sensor was so large that a consistent closed loop behaviors could not be obtained.

Keywords Stabilization, Thrust Transfer Function, Multi- rotor Helicopter


    There are many commercial flight controllers available in markets including those in [1,2,3,4]. Those controllers are general purpose in the sense that they can stabilize and control virtually every multi-rotor helicopter after tuning a small set of

    sensor which is widely used for multi-rotor helicopters, in order to simulate a multi-rotor helicopter.

    Our control aim is to stabilize the pendulum angle but a key point of this work is to confirm the validity of a thrust model proposed in our previous work.


    1. Thrust Transfer Function Model

      We start with a short summary of the transfer function modeling approach proposed in [8,12]. Detailed explanations on this modeling procedure and several technical specifications of components used in our experiments can be found in [12].

      As the transfer function model of a dynamical thrust force can be described as a first-order transfer function

      parameters. The tuning processes in those controllers are



      mostly automatized and therefore users with little technical knowledge can use them with ease.

      Compared to this matured development in the hobbyist community and many commercial suppliers for them, rigorous analysis and theoretical developments for multi-rotor systems in academic community seem to be relatively slower, even though significant research-level work are already reported including [4,5,6,7].

      One key difficulty, in our view, for theoretical analysis and design of multi-rotor systems is to make a proper modeling of a thrust dynamics. This is because a typical thrust system composed a propeller, a blushless DC motor, a micro-process based ESC (electronic speed controller), cannot be easily modeled with a set of mathematical equations.

      In order to circumvent this difficulty, we have proposed an experimental identification method in [8] and [9]. The manual procedure in [8] was automatized later in [10]. The modeling method based on a step-response in time-domain in [8,10] was compared to a frequency response of a thrust force in [11].

      In this paper, we apply the thrust model proposed in our previous work [8-11], to a concrete control problem of

      () = + 1/

      where the parameter and are to be determined from experiments and () denotes the Laplace transforms of a perturbation of a thrust force neat an operating point . In addition, d(s) represents a perturbation of a duty ratio of a PWM (pulse width modulation) command for an ESC, at an operating point .

      Experimental data cited from [9,11] are shown in Fig. 1. From the thrust response for a given step duty command in the upper figure of Fig.1, one can estimate the rising time of 1.16 (sec), which gives

      = 0.16. (2)

      In addition, from the tangential slope 0.6 (/%) at the operating point (, ) = (38 (%), 9.7 ()) shown in the lower figure of Fig. 1, we obtain

      stabilizing a propeller-driven pendulum. We regard the one- dimensional pendulum as a simplest model of a multi-rotor system. The pendulum is equipped with a digital acceleration

      which gives

      (0) =

      (0) 1/0.16

      = 0.60, (3)

      Figure 2 Propeller-driven Pendulum System

      a = 4.0. (4)

      In summary, near (, ) = (38 (%), 9.7 ()), the linearized transfer function between duty ratio and thrust is given

      () = 4.0


      () + 6.67

    2. Dynamic Model

      Our one-dimensional pendulum system is shown in Fig. 2. Basically it consists of a thrust actuator (propeller, motor, ESC) along with a set of sensors for thrust, speed and angle measurements.

      The pendulum angle in the direction of Z-axis of Fig. 2 was measured with an acceleration sensor MPU6050 from InvenSens© [13]. This sensor has a 3-axis gyroscope and a 3- axis accelerometer but we did not use the gyroscope data in this experiment.

      Our pendulum system has only one degree of freedom and thus the dynamic model between duty command and pendulum angle is simply given as

      () = 4.0


      () 2( + 6.67)

      where is the Laplace transform of the perturbed angle near an operating point = 0 (rad) and the moment of inertia was calculated to be = 0.842 (kg 2) . Consequently, our

      pendulum system has a transfer function

      () = 4.75


      () 2( + 6.67)

      at an operating point

      Figure 1 Step Response (upper), Static Thrust (lower)

      (, , ) = (38 (%), 9.7 (), 0 (rad)). (8)

    3. Controller Design

      For the pendulum system (7) and a reference = 0 (rad), we have design a simple lead controller

      () = () = 6 + 3

      () 0.1 + 1

      where () denote the Laplace transform of the tracking error

      () . The actual duty ratio () which will be supplied to an ESC is given

      () = + ()

      The controller () was implemented as a digital controller in an Arduino Due© microcontroller [14] with a sampling rate

      = 100 (Hz) with a zero-order holder as below;

      () = () = 60.00 59.71


      () 0.9048

      For easy connections between the microprocessor, an ESC and an accelerometer sensor, a shield board was made for our Arduino board. More details on this shield can be found in [11].

    4. Angle Data Filtering

      As a first step, we have checked the accelerometer signal. While a propeller motor was freely running, the pendulum angle was measured by an accelerometer and the angle data was converted to an analog signal inside the microcontroller (Arduino Due has two 12 bits Digital-Analog converters). A typical experiment data was shown in Fig. 3.

      As is clear from Fig. 3, the raw angle data was very noisy and therefore it could not be used for a closed loop controller. In order to lessen sensor noises, we have implemented a 14th order FIR digital filter with a cutoff frequency 10 Hz and a sampling rate = 100 (Hz). A comparison of a raw angle data and a filtered one was given in Fig. 3.

      Figure 3 Angle data (raw and filtered)

      Figure 4 A Closed Loop Motion

    5. Closed Loop Control

    We have performed a closed loop control experiment of the pendulum system. Fig. 4 shows a case when a successful stabilization was achieved with little overshoot.

    However it should be emphasized here that, in our repeated experiments, the closed loop performance was far from being consistent even with the same filter and controller (9).

    In addition, in most cases, the closed loop system suffered from significant steady state tracking errors. For an example, Fig. 5 shows the tracking performance of our closed loop system for a square wave reference angle ±10 (deg) and frequency 0.1 (Hz). The reference analog signal was generated by an arbitrary signal generator and then the micrprocessor read it after an AD (analog-digital) conversion.

    Figure 5 Tracking Performance

    We have tried to tune the parameters of both controller and angle filter to achieve better performances but unfortunately we encountered a similar inconsistency.

    A possible source of this disappoint result is that a propeller generates a torque not only in Z-direction but also in Y- direction of Fig. 2. This Y-directional time-varying torque makes the pendulum body try to rotate in "Y"-direction which is mechanically constrained. This time-varying constraint force seems to result in unpredictable magnitude of frictions at the rotation pivot.

    It is also remarkable that the closed loop performance sensitively depended on a chosen propeller speed up process and a slight change of the nominal duty ratio. This is partly a fundamental limitation of our linear controller as the dynamics of our propeller driven pendulum has many nonlinearities.

    We strongly believe that, above all things, the noisy acceleration signal is the most critical cause of the poor closed loop performance. Hence it seems to be essential to somehow combine acceleration data with gyroscope sensor data for a more reliable estimation of angles.


We have developed and tested a linear controller for a propeller-driven pendulum system which is a simple model of a multi-rotor helicopter. From experimental results, we could conclude that a propeller thrust can be modeled as a first-order transfer function.


  1. ArduPilot available at Accessed 9 January 2016. .

  2. DJI available at Accessed 9 January 2016.

  3. OpenPilot available at Accessed 9 January 2016.

  4. Fixhawk available at Accessed 9 January 2016.

  5. G. M. Hoffmann, H. Huang, S. L. Waslander, C. J. Tomlin, Precision flight control for a multi-vehicle quadrotor helicopter testbed, Control Engineering Practice, 19(9), pp. 1023-1036, 2011

  6. S. Bouabdallah, P. Murrieri, R. Siegwart, Design and control of an indoor micro quadrotor, Proceedings of the 2004 IEEE International Conference on Robotics and Automation, New Orleans, LA, 26 April-1 May 2004.

  7. G. M. Hoffmann, H. Huang, S. L. Waslander, C. J. Tomlin, Quadrotor Helicopter Flight Dynamics and Control: Theory and Experiment, In Proceedings of the AIAA Guidance, Navigation and Control Conference and Exhibit, South Carolina, 20-23 Aug. 2007

  8. C. V. Junior Jose, Paula Julio C. De, Leandro Gideon V. and Bonfim Marlio C., Stability Control of a Quad-Rotor Using a PID Controller, Brazilian Journal of Instrumentation and Control, Control 1.1,pp. 15-20, 2013.

  9. M. Yoon, Experimental Identification of Thrust Dynamics for a Multi- rotor Helicopter, International Journal of Engineering Research and Technology, 4 (11), pp. 206-209, 2015

  10. M. Yoon, On Driving Signal of Electronic Speed Controller for Small Multi-Rotor Helicopter, International Journal of Engineering Research and Technology, 4 (11), pp. 456-459, 2015

  11. M. Yoon, An Automatic Thrust Measurement System for Multi-rotor Helicopters, International Journal of Engineering Research and Technology, 4 (12), pp. 346-350, 2015

  12. M. Yoon, A Transfer Function Model of Thrust Dynamics for Multi- Rotor Helicopters, International Journal of Engineering Research and Technology, 5 (1), pp. 15-18, 2016

  13. InvenSense Available at: Accessed 14 December 2015].

  14. Arduino Due Available at: Accessed 9 January 2016.

Leave a Reply