# On the Dynamics of the Furuta Pendulum

Authors: Benjamin Seth Cazzolato; Zebb Prime
Journal: Journal of Control Science and Engineering
 (2011)

---

## Abstract

The Furuta pendulum, or rotational inverted pendulum, is a system found in many control labs.  It provides a compact yet impressive platform for control demonstrations and draws the attention of the control community as a platform for the development of nonlinear control laws. Despite the popularity of the platform, there are very few papers which employ the correct dynamics and only one that derives the full system dynamics.   In this paper, the full dynamics of the Furuta pendulum are derived using two methods: a Lagrangian formulation and an iterative Newton-Euler formulation.   Approximations are made to the full dynamics which converge to the more commonly presented expressions.  The system dynamics are then linearised using a Jacobian. To illustrate the influence the commonly neglected inertia terms have on the system dynamics, a brief example is offered.


---

## Body

## 1. Introduction

The Furuta pendulum consists of a driven arm which rotates in the horizontal plane and a pendulum attached to that arm which is free to rotate in the vertical plane (Figure1).  The system is underactuated and extremely nonlinear due to the gravitational forces and the coupling arising from the Coriolis and centripetal forces.Figure 1
Schematic of the single rotary inverted pendulum system.The pendulum was first developed at the Tokyo Institute of Technology by Furuta and his colleagues [1–4].  Since then, dozens, possibly hundreds of papers and theses have used the system to demonstrate linear and nonlinear control laws [5, 6].  The system has also been the subject of two texts [7, 8].  Despite the great deal of attention the system has received, very few publications successfully derive (or use) the full dynamics.  Many authors [3, 7] have only considered the rotational inertia of the pendulum for a single principal axis (or neglected it altogether [8]).  In other words, the inertia tensor only has a single nonzero element (or none), and the remaining two diagonal terms are zero. It is possible to find a pendulum system where the moment of inertia in one of the three principal axes is approximately zero, but not two.A few authors [2, 4, 5, 9–11] have considered slender symmetric pendulums where the moments of inertia for two of the principal axes are equal and the remaining moment of inertia is zero.  Of the dozens of publications surveyed for this paper, only a single conference paper [12] and journal paper [13] were found to include all three principal inertial terms of the pendulum.  Both papers used a Lagrangian formulation, but each contained minor errors (presumably typographical).In a hope of ensuring that future papers on the Furuta pendulum use the correct dynamics, this paper presents a definitive study of the system.  The system dynamics for a pendulum with a full inertia tensor using a Lagrangian formulation are presented, and then an alternative derivation using an iterative Newton-Euler approach is presented, which to the authors’ knowledge is the first correct derivation using either of these techniques.  Following on from this, approximations are made to the governing equations for long slender pendulums which lead to a more compact form (which are commonly incorrectly presented in the literature).  Finally, the linearised state equations for the mechanical system and the coupled electromechanical system are presented.It should be noted that in the derivations that follow, the Symbolic Toolbox in Matlab was used.  The final expressions were also independently validated using kinematical models using the SimMechanics Toolbox (in Simulink).


## 2. Fundamentals

### 2.1. Definitions

Consider the rotational inverted pendulum mounted to a DC motor as shown in Figure1.  The DC motor is used to apply a torque τ1  to Arm 1.  The link between Arm 1 and Arm 2 is not actuated but free to rotate.  The two arms have lengths L1  and L2.  The arms have masses m1 and m2 which are located at l1 and l2, respectively, which are the lengths from the point of rotation of the arm to its center of mass.  The arms have inertia tensors J1 and J2 (about the centre of mass of the arm).  Each rotational joint is viscously damped with damping coefficients b1 and b2, where b1 is the damping provided by the motor bearings, and b2 is the damping arising from the pin coupling between Arm 1 and Arm 2.A right hand coordinate system has been used to define the inputs, states, and the Cartesian coordinate systems 1 and 2.  The coordinate axes of Arm 1 and Arm 2 are the principal axes, such that the inertia tensors are diagonal of the form(1)J1=[J1xx000J1yy000J1zz],J2=[J2xx000J2yy000J2zz].
The angular rotation of Arm 1, θ1, is measured in the horizontal plane where a counterclockwise direction (when viewed from above) is positive.  The angular rotation of Arm 2, θ2, is measured in the vertical plane where a counterclockwise direction (when viewed from the front) is positive, when Arm 2 is hanging down in the stable equilibrium position θ2=0.The torque the servomotor applies to Arm 1,τ1, is positive in a counterclockwise direction (when viewed from above).  A disturbance torque, τ2, is experienced by Arm 2, where a counterclockwise direction (when viewed from the front) is positive.


### 2.2. Assumptions

Before deriving the dynamics of the system, a number of assumptions must be made.  These are(i)
the motor shaft and Arm 1 are assumed to be rigidly coupled and infinitely stiff;(ii)
Arm 2 is assumed to be infinitely stiff;(iii)
the coordinate axes of Arm 1 and Arm 2 are the principal axes such that the inertia tensors are diagonal;(iv)
the motor rotor inertia is assumed to be negligible.  However, this term may be easily added to the moment of inertia of Arm 1;(v)
only viscous damping is considered.  All other forms of damping (such as Coulomb) have been neglected; however, it is a simple exercise to add this to the final governing DE;


## 2.1. Definitions

Consider the rotational inverted pendulum mounted to a DC motor as shown in Figure1.  The DC motor is used to apply a torque τ1  to Arm 1.  The link between Arm 1 and Arm 2 is not actuated but free to rotate.  The two arms have lengths L1  and L2.  The arms have masses m1 and m2 which are located at l1 and l2, respectively, which are the lengths from the point of rotation of the arm to its center of mass.  The arms have inertia tensors J1 and J2 (about the centre of mass of the arm).  Each rotational joint is viscously damped with damping coefficients b1 and b2, where b1 is the damping provided by the motor bearings, and b2 is the damping arising from the pin coupling between Arm 1 and Arm 2.A right hand coordinate system has been used to define the inputs, states, and the Cartesian coordinate systems 1 and 2.  The coordinate axes of Arm 1 and Arm 2 are the principal axes, such that the inertia tensors are diagonal of the form(1)J1=[J1xx000J1yy000J1zz],J2=[J2xx000J2yy000J2zz].
The angular rotation of Arm 1, θ1, is measured in the horizontal plane where a counterclockwise direction (when viewed from above) is positive.  The angular rotation of Arm 2, θ2, is measured in the vertical plane where a counterclockwise direction (when viewed from the front) is positive, when Arm 2 is hanging down in the stable equilibrium position θ2=0.The torque the servomotor applies to Arm 1,τ1, is positive in a counterclockwise direction (when viewed from above).  A disturbance torque, τ2, is experienced by Arm 2, where a counterclockwise direction (when viewed from the front) is positive.


## 2.2. Assumptions

Before deriving the dynamics of the system, a number of assumptions must be made.  These are(i)
the motor shaft and Arm 1 are assumed to be rigidly coupled and infinitely stiff;(ii)
Arm 2 is assumed to be infinitely stiff;(iii)
the coordinate axes of Arm 1 and Arm 2 are the principal axes such that the inertia tensors are diagonal;(iv)
the motor rotor inertia is assumed to be negligible.  However, this term may be easily added to the moment of inertia of Arm 1;(v)
only viscous damping is considered.  All other forms of damping (such as Coulomb) have been neglected; however, it is a simple exercise to add this to the final governing DE;


## 3. Lagrangian Formulation Using Tensors

A Lagrangian formulation of the system dynamics of the mechanical system is now presented using a tensor notation, which makes for an elegant and compact solution.


### 3.1. Rotation Matrices

First, define two rotation matrices which are used in both the Lagrange and Newton-Euler formulations.  The rotation matrix from the base to Arm 1 is(2)R1=[cos⁡(θ1)sin(θ1)0-sin(θ1)cos⁡(θ1)0001].
The rotation matrix from Arm 1 to Arm 2 is derived by initially applying a (diagonal) matrix to that maps the frame 1 to frame 2, followed by a rotation matrix  for θ2,  given by(3)R2=[cos⁡(θ2)sin(θ2)0-sin(θ2)cos⁡(θ2)0001][00-1010100]=[0sin(θ2)-cos⁡(θ2)0cos⁡(θ2)sin(θ2)100].


### 3.2. Velocities

The angular velocity of Arm 1 is given by(4)ω1=[00θ̇1]T.
Let the velocity of the base frame be at rest, such that the joint between the frame and Arm 1 is also at rest, that is, (5)v1=[000]T.
The total linear velocity of the centre of mass of Arm 1 is given by(6)v1c=v1+ω1×[l100]T=[0θ̇1l10]T.
The angular velocity of Arm 2 is given by(7)ω2=R2ω1+[00θ̇2]T=[-cos⁡⁡(θ2)θ̇1sin⁡(θ2)θ̇1θ̇2]T.
The velocity of the joint between Arm 1 and Arm 2 in reference frame 1 is(8)ω1×[L100]T,
which in reference frame 2 (that of Arm 2) gives (9)v2=R2(ω1×[L100]T)=[θ̇1L1sin⁡(θ2)θ̇1L1cos⁡⁡(θ2)0].
The total linear velocity of the centre of mass of Arm 2 is given by(10)v2c=v2+ω2×[l200]T=[θ̇1L1sin(θ2)θ̇1L1cos⁡(θ2)+θ̇2l2-θ̇1l2sin(θ2)].


### 3.3. Energies

The potential energy of Arm 1 is(11)Ep1=0,
and the kinetic energy is (12)Ek1=12(v1cTm1v1c+ω1TJ1ω1)=12θ̇12(m1l12+J1zz).
The potential energy of Arm 2 is(13)Ep2=gm2l2(1-cos⁡⁡(θ2)),
and the kinetic energy is (14)Ek2=12(v2cTm2v2c+ω2TJ2ω2)=12θ̇12(m2L22+(m2l22+J2yy)sin2(θ2)+J2xxcos⁡2⁡(θ2))+12θ̇22(J2zz+m2l22)+m2L1l2cos⁡(θ2)θ̇1θ̇2.
The total potential and kinetic energies are given, respectively, by(15)Ep=Ep1+Ep2,Ek=Ek1+Ek2.


### 3.4. Lagrangian

The Lagrangian is the difference in kinetic and potential energies,(16)L=Ek-Ep.
From this, we obtain the Euler-Lagrange equation(17)ddt(∂L∂q̇i)+biq̇i-∂L∂qi=Qi,
where  qi=[θ1,θ2]T is the generalised coordinate, bi=[b1,b2]T is a generalised viscous damping coefficient, and Qi=[τ1,τ2]T is the generalised force (torque).Evaluating the terms of the Euler-Lagrange equation for bothqi=θ1 and θ2 gives(18)ddt(∂L∂θ̇1)=θ̈1((m2l22J2y)J1zz+m1l12+m2L12+(m2l22+J2yy)sin2⁡(θ2)+J2xxcos⁡2⁡(θ2))+m2L1l2cos⁡(θ2)θ̈2-m2L1l2sin(θ2)θ̇22+θ̇1θ̇2sin(2θ2)(m2l22+J2yy-J2xx),ddt(∂L∂θ̇2)=θ̈1m2L1l2cos⁡(θ2)+θ̈2(J2zz+m2l22)-θ̇1θ̇2m2L1l2sin(θ2),-∂L∂θ1=0,-∂L∂θ2=-12θ̇12sin(2θ2)(m2l22+J2yy-J2xx)+θ̇1θ̇2m2L1l2sin(θ2)+gm2l2sin(θ2).


### 3.5. Equations of Motion

Substituting the previous terms into the Euler-Lagrange equation, the following simultaneous differential equations are obtained:(19)[(θ̈1(J1zz+m1l12+m2L12+(J2yy+m2l22)×sin2⁡(θ2)+J2xxcos⁡2(θ2))+θ̈2m2L1l2cos⁡(θ2)-m2L1l2sin(θ2)θ̇22+θ̇1θ̇2sin(2θ2)×(m2l22+J2yy-J2xx)+b1θ̇1)(θ̈1m2L1l2cos⁡(θ2)+θ̈2(m2l22+J2zz)+12θ̇12sin(2θ2)(-m2l22-J2yy+J2xx)+b2θ̇2+gm2l2sin(θ2))]=[τ1τ2],
which is very similar to the expressions derived by Atwar et al. [12, 13], once the different reference frame for Arm 2 is accounted for.  The only obvious difference is that in (11) and (12) in [13] the signs of the terms  θ̈2m2L1l2cos(θ2)-m2L1l2sin(θ2)θ̇22 and θ̈1m2L1l2cos(θ2)+gm2l2sin(θ2) are opposite to those presented here.  Their subsequent expression (14) in terms of α is also incorrect with a minus sign instead of a multiplication sign.  Their expression (15) is correct.


## 3.1. Rotation Matrices

First, define two rotation matrices which are used in both the Lagrange and Newton-Euler formulations.  The rotation matrix from the base to Arm 1 is(2)R1=[cos⁡(θ1)sin(θ1)0-sin(θ1)cos⁡(θ1)0001].
The rotation matrix from Arm 1 to Arm 2 is derived by initially applying a (diagonal) matrix to that maps the frame 1 to frame 2, followed by a rotation matrix  for θ2,  given by(3)R2=[cos⁡(θ2)sin(θ2)0-sin(θ2)cos⁡(θ2)0001][00-1010100]=[0sin(θ2)-cos⁡(θ2)0cos⁡(θ2)sin(θ2)100].


## 3.2. Velocities

The angular velocity of Arm 1 is given by(4)ω1=[00θ̇1]T.
Let the velocity of the base frame be at rest, such that the joint between the frame and Arm 1 is also at rest, that is, (5)v1=[000]T.
The total linear velocity of the centre of mass of Arm 1 is given by(6)v1c=v1+ω1×[l100]T=[0θ̇1l10]T.
The angular velocity of Arm 2 is given by(7)ω2=R2ω1+[00θ̇2]T=[-cos⁡⁡(θ2)θ̇1sin⁡(θ2)θ̇1θ̇2]T.
The velocity of the joint between Arm 1 and Arm 2 in reference frame 1 is(8)ω1×[L100]T,
which in reference frame 2 (that of Arm 2) gives (9)v2=R2(ω1×[L100]T)=[θ̇1L1sin⁡(θ2)θ̇1L1cos⁡⁡(θ2)0].
The total linear velocity of the centre of mass of Arm 2 is given by(10)v2c=v2+ω2×[l200]T=[θ̇1L1sin(θ2)θ̇1L1cos⁡(θ2)+θ̇2l2-θ̇1l2sin(θ2)].


## 3.3. Energies

The potential energy of Arm 1 is(11)Ep1=0,
and the kinetic energy is (12)Ek1=12(v1cTm1v1c+ω1TJ1ω1)=12θ̇12(m1l12+J1zz).
The potential energy of Arm 2 is(13)Ep2=gm2l2(1-cos⁡⁡(θ2)),
and the kinetic energy is (14)Ek2=12(v2cTm2v2c+ω2TJ2ω2)=12θ̇12(m2L22+(m2l22+J2yy)sin2(θ2)+J2xxcos⁡2⁡(θ2))+12θ̇22(J2zz+m2l22)+m2L1l2cos⁡(θ2)θ̇1θ̇2.
The total potential and kinetic energies are given, respectively, by(15)Ep=Ep1+Ep2,Ek=Ek1+Ek2.


## 3.4. Lagrangian

The Lagrangian is the difference in kinetic and potential energies,(16)L=Ek-Ep.
From this, we obtain the Euler-Lagrange equation(17)ddt(∂L∂q̇i)+biq̇i-∂L∂qi=Qi,
where  qi=[θ1,θ2]T is the generalised coordinate, bi=[b1,b2]T is a generalised viscous damping coefficient, and Qi=[τ1,τ2]T is the generalised force (torque).Evaluating the terms of the Euler-Lagrange equation for bothqi=θ1 and θ2 gives(18)ddt(∂L∂θ̇1)=θ̈1((m2l22J2y)J1zz+m1l12+m2L12+(m2l22+J2yy)sin2⁡(θ2)+J2xxcos⁡2⁡(θ2))+m2L1l2cos⁡(θ2)θ̈2-m2L1l2sin(θ2)θ̇22+θ̇1θ̇2sin(2θ2)(m2l22+J2yy-J2xx),ddt(∂L∂θ̇2)=θ̈1m2L1l2cos⁡(θ2)+θ̈2(J2zz+m2l22)-θ̇1θ̇2m2L1l2sin(θ2),-∂L∂θ1=0,-∂L∂θ2=-12θ̇12sin(2θ2)(m2l22+J2yy-J2xx)+θ̇1θ̇2m2L1l2sin(θ2)+gm2l2sin(θ2).


## 3.5. Equations of Motion

Substituting the previous terms into the Euler-Lagrange equation, the following simultaneous differential equations are obtained:(19)[(θ̈1(J1zz+m1l12+m2L12+(J2yy+m2l22)×sin2⁡(θ2)+J2xxcos⁡2(θ2))+θ̈2m2L1l2cos⁡(θ2)-m2L1l2sin(θ2)θ̇22+θ̇1θ̇2sin(2θ2)×(m2l22+J2yy-J2xx)+b1θ̇1)(θ̈1m2L1l2cos⁡(θ2)+θ̈2(m2l22+J2zz)+12θ̇12sin(2θ2)(-m2l22-J2yy+J2xx)+b2θ̇2+gm2l2sin(θ2))]=[τ1τ2],
which is very similar to the expressions derived by Atwar et al. [12, 13], once the different reference frame for Arm 2 is accounted for.  The only obvious difference is that in (11) and (12) in [13] the signs of the terms  θ̈2m2L1l2cos(θ2)-m2L1l2sin(θ2)θ̇22 and θ̈1m2L1l2cos(θ2)+gm2l2sin(θ2) are opposite to those presented here.  Their subsequent expression (14) in terms of α is also incorrect with a minus sign instead of a multiplication sign.  Their expression (15) is correct.


## 4. Iterative Newton-Euler Formulation to the System Dynamics

In this section, an iterative Newton-Euler approach is used to derive the plant dynamics.  There are many texts that describe this method.  The formulation presented in Craig [14] has been adopted here.


### 4.1. Outward Iteration

First, the position, velocity, and acceleration of the centre of mass of Arm 1 and Arm 2 are calculated.  From this, the forces and moments acting at the centre of the masses may be calculated.


#### 4.1.1. Outward Iteration for Arm 1

The angular velocity and acceleration of Arm 1 are given byω1=[00θ̇1]T and ω̇1=[00θ̈1]T, respectively.The effect of the gravity on the arms is simply included by setting the acceleration of the base frame tog in the opposite direction as the gravity vector.  In other words, the base is accelerating upwards at exactly 1 g which has the same effect as gravity. The linear acceleration due to gravity acting on the joint of Arm 1 is given by(20)v̇1=R1[00g]T=[00g]T,
where g is the gravitational acceleration.The total linear acceleration of the centre of mass of Arm 1 is given by(21)v̇1c=ω̇1×[l100]T+ω1×(ω1×[l100]T)+v̇1=[-l1θ̇12l1θ̈1g]T,
where the first term is a centripetal acceleration, the second is simply due to the rotational acceleration of the arm, and the third term is due to gravity.Therefore, the force vector acting on the centre of mass of Arm 1 is given by(22)F1=m1v̇1c=m1[-l1θ̇12l1θ̈1g]T.
The moment vector is given by(23)N1=J1ω̇1+ω1×J1×ω1=[00θ̈1I1zz]T.


#### 4.1.2. Outward Iteration for Arm 2

The process is now repeated for Arm 2.  The angular velocity of Arm 2 is given by(24)ω2=R2ω1+[00θ̇2]T=[-cos⁡⁡(θ2)θ̇1sin⁡(θ2)θ̇1θ̇2]T.
The angular acceleration of Arm 2 is given by (25)ω̇2=R2ω̇1+R2ω1×[00θ̇2]T+[00θ̈2]T=[-cos⁡(θ2)θ̈1+sin(θ2)θ̇1θ̇2sin(θ2)θ̈1+cos⁡(θ2)θ̇1θ̇2θ̈2].
The linear acceleration at the joint of Arm 2 is given by (26)v̇2=R2(ω̇1×[L100]T+ω1×(ω1×[L100]T)+v̇1)=[sin(θ2)θ̈1L1-cos⁡(θ2)gcos⁡(θ2)θ̈1L1+sin(θ2)gθ̇12L1].
The total linear acceleration of the centre of mass of Arm 2 is given by(27)v̇2c=ω̇2×[l200]T+ω2×(ω2×[l200]T)+v̇2=[-θ̇12sin2(θ2)l2-θ̇22l2+θ̈1sin(θ2)L1-cos⁡(θ2)gθ̈2l2-12θ̇12l2sin(2θ2)+cos⁡(θ2)θ̈1L1+sin(θ2)g-l2sin(θ2)θ̈1-2θ̇1θ̇2l2cos⁡(θ2)-θ̇12L1].
The expressions become considerably more complicated from this point and are no longer expanded.The force vector acting on the centre of mass of Arm 2 is given byF2=m2v̇2c.  The moment vector on Arm 2 is given by N2=J2ω̇2+ω2×J2×ω2.


### 4.2. Inward Iteration

Now, that all the forces and moments acting on the centres of masses of the two arms have been calculated, the forces and moments that the arms exert on each other may be derived.


#### 4.2.1. Inward Iteration for Arm 2

The force and moment that Arm 2 exerts on Arm 1 is given byf2=F2 and n2=N2+[l200]T×F2, respectively, where the first term is the direct moment on Arm 2, and the second term is the moment on Arm 1 due to the coupling force exerted by Arm 2.


#### 4.2.2. Inward Iteration for Arm 1

The force that Arm 1 exerts on the base is given byf1=R2Tf2+F1 where the first term is the force applied by Arm 2 onto Arm 1, and then rotated to the based frame coordinate system.  The second term is the force experienced by the mass of Arm 1. The moment that Arm 1 exerts on the base is given by(28)n1=N1+R2Tn2+[l100]T×F1+[L100]T×R2Tf2,
where the first term is the moment experienced by the mass of Arm 1, the second term is the moment of Arm 2 transferred to Arm 1 rotated in to the appropriate frame, the third term is the moment arising from the force experienced at the centre of mass of Arm 1, and the fourth term is the moment acting from the coupling force between Arm 1 and Arm 2.


### 4.3. The Equations of Motion

The equations of motion of coupled system are therefore given by the moment balance acting on the two arms, that is,[n1•ẑ1n2•ẑ2]+[b1θ̇1b2θ̇2]=[τ1τ2], where ẑi is the unit vector in the direction of the z-axis for each coordinate frame. When evaluated the above expression gives(29)[(θ̈1(J1zz+m1l12+m2L12+(J2yy+m2l22)×sin2(θ2)+J2xxcos⁡2⁡(θ2))+θ̈2m2L1l2cos⁡(θ2)-m2L1l2sin(θ2)θ̇22+θ̇1θ̇2sin(2θ2)(m2l22+J2yy-J2xx)+b1θ̇1)(θ̈1m2L1l2cos⁡(θ2)+θ̈2(m2l22+J2zz)+12θ̇12sin(2θ2)(-m2l22-J2yy+J2xx)+b2θ̇2+gm2l2sin(θ2))]=[τ1τ2],
which is the same as that derived previously.


## 4.1. Outward Iteration

First, the position, velocity, and acceleration of the centre of mass of Arm 1 and Arm 2 are calculated.  From this, the forces and moments acting at the centre of the masses may be calculated.


### 4.1.1. Outward Iteration for Arm 1

The angular velocity and acceleration of Arm 1 are given byω1=[00θ̇1]T and ω̇1=[00θ̈1]T, respectively.The effect of the gravity on the arms is simply included by setting the acceleration of the base frame tog in the opposite direction as the gravity vector.  In other words, the base is accelerating upwards at exactly 1 g which has the same effect as gravity. The linear acceleration due to gravity acting on the joint of Arm 1 is given by(20)v̇1=R1[00g]T=[00g]T,
where g is the gravitational acceleration.The total linear acceleration of the centre of mass of Arm 1 is given by(21)v̇1c=ω̇1×[l100]T+ω1×(ω1×[l100]T)+v̇1=[-l1θ̇12l1θ̈1g]T,
where the first term is a centripetal acceleration, the second is simply due to the rotational acceleration of the arm, and the third term is due to gravity.Therefore, the force vector acting on the centre of mass of Arm 1 is given by(22)F1=m1v̇1c=m1[-l1θ̇12l1θ̈1g]T.
The moment vector is given by(23)N1=J1ω̇1+ω1×J1×ω1=[00θ̈1I1zz]T.


### 4.1.2. Outward Iteration for Arm 2

The process is now repeated for Arm 2.  The angular velocity of Arm 2 is given by(24)ω2=R2ω1+[00θ̇2]T=[-cos⁡⁡(θ2)θ̇1sin⁡(θ2)θ̇1θ̇2]T.
The angular acceleration of Arm 2 is given by (25)ω̇2=R2ω̇1+R2ω1×[00θ̇2]T+[00θ̈2]T=[-cos⁡(θ2)θ̈1+sin(θ2)θ̇1θ̇2sin(θ2)θ̈1+cos⁡(θ2)θ̇1θ̇2θ̈2].
The linear acceleration at the joint of Arm 2 is given by (26)v̇2=R2(ω̇1×[L100]T+ω1×(ω1×[L100]T)+v̇1)=[sin(θ2)θ̈1L1-cos⁡(θ2)gcos⁡(θ2)θ̈1L1+sin(θ2)gθ̇12L1].
The total linear acceleration of the centre of mass of Arm 2 is given by(27)v̇2c=ω̇2×[l200]T+ω2×(ω2×[l200]T)+v̇2=[-θ̇12sin2(θ2)l2-θ̇22l2+θ̈1sin(θ2)L1-cos⁡(θ2)gθ̈2l2-12θ̇12l2sin(2θ2)+cos⁡(θ2)θ̈1L1+sin(θ2)g-l2sin(θ2)θ̈1-2θ̇1θ̇2l2cos⁡(θ2)-θ̇12L1].
The expressions become considerably more complicated from this point and are no longer expanded.The force vector acting on the centre of mass of Arm 2 is given byF2=m2v̇2c.  The moment vector on Arm 2 is given by N2=J2ω̇2+ω2×J2×ω2.


## 4.1.1. Outward Iteration for Arm 1

The angular velocity and acceleration of Arm 1 are given byω1=[00θ̇1]T and ω̇1=[00θ̈1]T, respectively.The effect of the gravity on the arms is simply included by setting the acceleration of the base frame tog in the opposite direction as the gravity vector.  In other words, the base is accelerating upwards at exactly 1 g which has the same effect as gravity. The linear acceleration due to gravity acting on the joint of Arm 1 is given by(20)v̇1=R1[00g]T=[00g]T,
where g is the gravitational acceleration.The total linear acceleration of the centre of mass of Arm 1 is given by(21)v̇1c=ω̇1×[l100]T+ω1×(ω1×[l100]T)+v̇1=[-l1θ̇12l1θ̈1g]T,
where the first term is a centripetal acceleration, the second is simply due to the rotational acceleration of the arm, and the third term is due to gravity.Therefore, the force vector acting on the centre of mass of Arm 1 is given by(22)F1=m1v̇1c=m1[-l1θ̇12l1θ̈1g]T.
The moment vector is given by(23)N1=J1ω̇1+ω1×J1×ω1=[00θ̈1I1zz]T.


## 4.1.2. Outward Iteration for Arm 2

The process is now repeated for Arm 2.  The angular velocity of Arm 2 is given by(24)ω2=R2ω1+[00θ̇2]T=[-cos⁡⁡(θ2)θ̇1sin⁡(θ2)θ̇1θ̇2]T.
The angular acceleration of Arm 2 is given by (25)ω̇2=R2ω̇1+R2ω1×[00θ̇2]T+[00θ̈2]T=[-cos⁡(θ2)θ̈1+sin(θ2)θ̇1θ̇2sin(θ2)θ̈1+cos⁡(θ2)θ̇1θ̇2θ̈2].
The linear acceleration at the joint of Arm 2 is given by (26)v̇2=R2(ω̇1×[L100]T+ω1×(ω1×[L100]T)+v̇1)=[sin(θ2)θ̈1L1-cos⁡(θ2)gcos⁡(θ2)θ̈1L1+sin(θ2)gθ̇12L1].
The total linear acceleration of the centre of mass of Arm 2 is given by(27)v̇2c=ω̇2×[l200]T+ω2×(ω2×[l200]T)+v̇2=[-θ̇12sin2(θ2)l2-θ̇22l2+θ̈1sin(θ2)L1-cos⁡(θ2)gθ̈2l2-12θ̇12l2sin(2θ2)+cos⁡(θ2)θ̈1L1+sin(θ2)g-l2sin(θ2)θ̈1-2θ̇1θ̇2l2cos⁡(θ2)-θ̇12L1].
The expressions become considerably more complicated from this point and are no longer expanded.The force vector acting on the centre of mass of Arm 2 is given byF2=m2v̇2c.  The moment vector on Arm 2 is given by N2=J2ω̇2+ω2×J2×ω2.


## 4.2. Inward Iteration

Now, that all the forces and moments acting on the centres of masses of the two arms have been calculated, the forces and moments that the arms exert on each other may be derived.


### 4.2.1. Inward Iteration for Arm 2

The force and moment that Arm 2 exerts on Arm 1 is given byf2=F2 and n2=N2+[l200]T×F2, respectively, where the first term is the direct moment on Arm 2, and the second term is the moment on Arm 1 due to the coupling force exerted by Arm 2.


### 4.2.2. Inward Iteration for Arm 1

The force that Arm 1 exerts on the base is given byf1=R2Tf2+F1 where the first term is the force applied by Arm 2 onto Arm 1, and then rotated to the based frame coordinate system.  The second term is the force experienced by the mass of Arm 1. The moment that Arm 1 exerts on the base is given by(28)n1=N1+R2Tn2+[l100]T×F1+[L100]T×R2Tf2,
where the first term is the moment experienced by the mass of Arm 1, the second term is the moment of Arm 2 transferred to Arm 1 rotated in to the appropriate frame, the third term is the moment arising from the force experienced at the centre of mass of Arm 1, and the fourth term is the moment acting from the coupling force between Arm 1 and Arm 2.


## 4.2.1. Inward Iteration for Arm 2

The force and moment that Arm 2 exerts on Arm 1 is given byf2=F2 and n2=N2+[l200]T×F2, respectively, where the first term is the direct moment on Arm 2, and the second term is the moment on Arm 1 due to the coupling force exerted by Arm 2.


## 4.2.2. Inward Iteration for Arm 1

The force that Arm 1 exerts on the base is given byf1=R2Tf2+F1 where the first term is the force applied by Arm 2 onto Arm 1, and then rotated to the based frame coordinate system.  The second term is the force experienced by the mass of Arm 1. The moment that Arm 1 exerts on the base is given by(28)n1=N1+R2Tn2+[l100]T×F1+[L100]T×R2Tf2,
where the first term is the moment experienced by the mass of Arm 1, the second term is the moment of Arm 2 transferred to Arm 1 rotated in to the appropriate frame, the third term is the moment arising from the force experienced at the centre of mass of Arm 1, and the fourth term is the moment acting from the coupling force between Arm 1 and Arm 2.


## 4.3. The Equations of Motion

The equations of motion of coupled system are therefore given by the moment balance acting on the two arms, that is,[n1•ẑ1n2•ẑ2]+[b1θ̇1b2θ̇2]=[τ1τ2], where ẑi is the unit vector in the direction of the z-axis for each coordinate frame. When evaluated the above expression gives(29)[(θ̈1(J1zz+m1l12+m2L12+(J2yy+m2l22)×sin2(θ2)+J2xxcos⁡2⁡(θ2))+θ̈2m2L1l2cos⁡(θ2)-m2L1l2sin(θ2)θ̇22+θ̇1θ̇2sin(2θ2)(m2l22+J2yy-J2xx)+b1θ̇1)(θ̈1m2L1l2cos⁡(θ2)+θ̈2(m2l22+J2zz)+12θ̇12sin(2θ2)(-m2l22-J2yy+J2xx)+b2θ̇2+gm2l2sin(θ2))]=[τ1τ2],
which is the same as that derived previously.


## 5. Simplifications

Most Furuta pendulums tend to have long slender arms, such that the moment of inertia along the axis of the arms is negligible.  In addition, most arms have rotational symmetry, such that the moments of inertia in two of the principal axes are equal.   Thus, the inertia tensors may be approximated as follows:(30)J1=[J1xx000J1yy000J1zz]≈[0000J1000J1],J2=[J2xx000J2yy000J2zz]≈[0000J2000J2].
Further simplifications are obtained by making the following substitutions.  The total moment of inertia of Arm 1 about the pivot point (using the parallel axis theorem) is Ĵ1=J1+m1l12.  The total moment of inertia of Arm 2 about its pivot point is Ĵ2=J2+m2l22.  Finally, define the total moment of inertia the motor rotor experiences when the pendulum (Arm 2) is in its equilibrium position (hanging vertically down), Ĵ0=Ĵ1+m2L12=J1+m1l12+m2L12.Substituting the previous definitions into the governing DEs gives the more compact form(31)[(θ̈1(Ĵ0+Ĵ2sin2(θ2))+θ̈2m2L1l2cos⁡(θ2)-m2L1l2sin(θ2)θ̇22+θ̇1θ̇2Ĵ2sin(2θ2)+b1θ̇1)(θ̈1m2L1l2cos⁡(θ2)+θ̈2Ĵ2-12θ̇12Ĵ2sin(2θ2)+b2θ̇2+gm2l2sin(θ2))]=[τ1τ2].
This expression is the same as that derived by Iwase et al. [4] and almost identical to Åkesson and Åström [5], with the exception of the damping terms and the disturbance torque (which is neglected in their analysis).  It should be noted that in [4] the term Ja′ is defined as the moment of inertia of Arm 1 with respect to the centre of gravity but this is incorrect and should be with respect to its pivot. In [5], it is not clear how the moments of inertia J and Jp are defined, but these need to be with respect to the pivot points to be correct.  The simplified expression is also similar to that derived by Baba et al. [11] (after accounting for the different reference frame), with the exception of the sign of the term m2L1l2sin(θ2)θ̇22 which is opposite (and incorrect).  The simplified derivations of [9, 10] differ because of an erroneous 1/2 term in the off-diagonal elements of the mass matrix.It should be noted that the above differential equation differs slightly with that derived by almost all others including Furuta et al., as well as the texts by Fantoni and Lozano [7] and by Egeland and Gravdahl [8], because of the full inertia tensor employed here. The upper equation has the additional terms J2(θ̇1θ̇2sin(2θ2)+θ̈1sin2(θ2)).  The second equation has the extra term-(1/2)θ̇12J2sin2(θ2).  Fortunately, the form of the equations is still the same, and consequently the nonlinear control laws derived by previous authors are still valid, although their simulated results may not be.These two simultaneous equations can be solved in terms of the angular acceleration of Arm 1 and Arm 2, as given by(32)[θ̈1θ̈2]=[Ĵ0+Ĵ2sin2(θ2)m2L1l2cos⁡(θ2)m2L1l2cos⁡(θ2)Ĵ2]-1×([b1+12θ̇2Ĵ2sin(2θ2)12θ̇2Ĵ2sin(2θ2)-m2L1l2sin(θ2)θ̇2-12θ̇1Ĵ2sin(2θ2)b2]×[θ̇1θ̇2]-[0gm2l2sin(θ2)]+[τ1τ2][b1+12θ̇2Ĵ2sin(2θ2)12θ̇2Ĵ2sin(2θ2)-m2L1l2sin(θ2)θ̇2-12θ̇1Ĵ2sin(2θ2)b2]).
With some manipulation, the final expressions for the two angular accelerations are(33)θ̈1=([-Ĵ2b1m2L1l2cos⁡(θ2)b2-Ĵ22sin(2θ2)-(1/2)Ĵ2m2L1l2cos⁡(θ2)sin(2θ2)Ĵ2m2L1l2sin(θ2)]T[θ̇1θ̇2θ̇1θ̇2θ̇12θ̇22]+[Ĵ2-m2L1l2cos⁡(θ2)(1/2)m22l22L1sin(2θ2)]T[τ1τ2g])(Ĵ0Ĵ2+Ĵ22sin2(θ2)-m22L12l22cos⁡2⁡(θ2)),(34)θ̈2=([m2L1l2cos⁡(θ2)b1-b2(Ĵ0+Ĵ2sin2(θ2))m2L1l2Ĵ2cos⁡(θ2)sin(2θ2)-(1/2)sin(2θ2)[Ĵ0Ĵ2+Ĵ22sin2(θ2)]-(1/2)m22L12l22sin(2θ2)]T[θ̇1θ̇2θ̇1θ̇2θ̇12θ̇22]+[-m2L1l2cos⁡(θ2)Ĵ0+Ĵ2sin2(θ2)-m2l2sin(θ2)(Ĵ0+Ĵ2sin2(θ2))]T[τ1τ2g])(Ĵ0Ĵ2+Ĵ22sin2(θ2)-m22L12l22cos⁡2⁡(θ2)).


## 6. Linearised State Equations for Simplified System

The linearised equations of motion for the simplified system are now derived for the two equilibrium positions: upright and downward.


### 6.1. Upright Position

Linearising the simplified expressions about the upright equilibrium position(35)θ1e=0,θ2e=π,θ̇1e=0,θ̇2e=0,
using a Jacobian linearisation, the following linearised state equations about the upright position are obtained:(36)[θ̇1θ̇2θ̈1θ̈2]=[00100001A31A32A33A34A41A42A43A44][θ1θ2θ̇1θ̇2]+[0000B31B32B41B42][τ1τ2],
where(37)A31=0,A32=gm22l22L1(Ĵ0Ĵ2-m22L12l22),A33=-b1Ĵ2(Ĵ0Ĵ2-m22L12l22),A34=-b2m2l2L1(Ĵ0Ĵ2-m22L12l22),A41=0,A42=gm2l2Ĵ0(Ĵ0Ĵ2-m22L12l22),A43=-b1m2l2L1(Ĵ0Ĵ2-m22L12l22),A44=-b2Ĵ0(Ĵ0Ĵ2-m22L12l22),B31=Ĵ2(Ĵ0Ĵ2-m22L12l22),B41=m2L1l2(Ĵ0Ĵ2-m22L12l22),B32=m2L1l2(Ĵ0Ĵ2-m22L12l22),B41=Ĵ0(Ĵ0Ĵ2-m22L12l22).


### 6.2. Downward Position

Linearising the expressions about the downward position,(38)θ̂1e=0,θ̂2e=0,θ̂̇1e=0,θ̂̇2e=0,thenÂ34=-A34,Â42=-A42,Â43=-A43,B̂32=-B32,B̂41=-B41,
where the hat symbol indicates the downward position. All other terms of the state equation are the same as for the upright position.


## 6.1. Upright Position

Linearising the simplified expressions about the upright equilibrium position(35)θ1e=0,θ2e=π,θ̇1e=0,θ̇2e=0,
using a Jacobian linearisation, the following linearised state equations about the upright position are obtained:(36)[θ̇1θ̇2θ̈1θ̈2]=[00100001A31A32A33A34A41A42A43A44][θ1θ2θ̇1θ̇2]+[0000B31B32B41B42][τ1τ2],
where(37)A31=0,A32=gm22l22L1(Ĵ0Ĵ2-m22L12l22),A33=-b1Ĵ2(Ĵ0Ĵ2-m22L12l22),A34=-b2m2l2L1(Ĵ0Ĵ2-m22L12l22),A41=0,A42=gm2l2Ĵ0(Ĵ0Ĵ2-m22L12l22),A43=-b1m2l2L1(Ĵ0Ĵ2-m22L12l22),A44=-b2Ĵ0(Ĵ0Ĵ2-m22L12l22),B31=Ĵ2(Ĵ0Ĵ2-m22L12l22),B41=m2L1l2(Ĵ0Ĵ2-m22L12l22),B32=m2L1l2(Ĵ0Ĵ2-m22L12l22),B41=Ĵ0(Ĵ0Ĵ2-m22L12l22).


## 6.2. Downward Position

Linearising the expressions about the downward position,(38)θ̂1e=0,θ̂2e=0,θ̂̇1e=0,θ̂̇2e=0,thenÂ34=-A34,Â42=-A42,Â43=-A43,B̂32=-B32,B̂41=-B41,
where the hat symbol indicates the downward position. All other terms of the state equation are the same as for the upright position.


## 7. Linearised State Equations for Coupled Mechanical and Electrical System

The Furuta pendulum is almost always driven via a DC servomotor.  The coupled linear differential equation for the mechanical pendulum system and the DC motor will now be derived.  LetV be the voltage applied to the servomotor and i the current flowing through the servomotor, Rm the electrical resistance of the servomotor, Km the electromotive torque constant of the servomotor (and is equal to the back emf constant for SI units), and Lm the electrical inductance of the servomotor.The differential equation describing the electrical subsystem for a DC motor may be found using Kirchhoff’s law(39)Lmi̇+Rmi+Kmθ̇1=V,
which may be arranged in terms of the derivative of the current i̇=(V-Rmi-Kmθ̇1)/Lm.The torque produced by the DC motor is(40)τ=Kmi.
Merging the previous linear state equations for the upright position and the above differential equation governing the DC motor gives the coupled electromechanical linear state equation(41)[θ̇1θ̇2θ̈1θ̈2i̇]=[0010000010A31A32A33A34B31KmA41A42A43A44B41Km00-KmLm0-RmLm][θ1θ2θ̇1θ̇2i]+[00001Lm]V+[00B32B420]τ2.


## 8. Numerical Example

Consider the parameters of a Furuta pendulum within the School of Mechanical Engineering at The University of Adelaide, given byL1=0.278 m, L2=0.300 m, l1=0.150 m, l2=0.148 m, m1=0.300 kg, m2=0.075 kg, J1=2.48×10-2 kg·m2, J2=3.86×10-3 kg·m2, b1=1.00×10-4 Nms, b2=2.80×10-4 Nms, L=0.005 H, R=7.80Ω, and Km=0.090 Nm/A.  Figure 2 provides a comparison between the nonlinear response of the system when including the full inertia tensor (J2yy=J2zz=J2) and when neglecting the moment of inertia about the y-axis (J2zz=J2andJ2yy=0) such as that found in [7, 8].  Both systems are driven by an input of 10 V to the motor.  As expected, the model in which the additional inertia is neglected exhibits a slightly faster horizontal rotation rate (θ̇1).  What is surprising is the influence the additional inertia has on the pendulum itself.  With J2yy=J2zz=J2, the centrifugal acceleration on the pendulum arm drives the arm horizontal (θ2=1.57 rad) very quickly as soon as the angular velocity of Arm 1 (θ̇1) becomes nonzero.  The other noticeable difference between the results from the two models is that the natural frequency of Arm 2 is considerably higher with the additional inertial term.  Although at first counterintuitive (as typically an increase in inertia results in a decrease in natural frequency), in this case, the additional inertia creates significant (centrifugal) radial forces on Arm 2, which act to drive the arm horizontal.  This strong restorative force increases the natural frequency (with increasing θ̇1). This simple example illustrates the importance the additional inertia term has, in particular, on aggressive swing-up controllers.Response of the single rotary inverted pendulum system to a 10 V step input.  Solid line represents the plant with the full inertia tensorJ2yy=J2zz=J2; the dashed line represents the plant only considering J2zz (J2yy=0).
(a)(b)(c)(d)(e)


## 9. Conclusion

In this paper, the full nonlinear dynamics of the Furuta pendulum have been derived using two alternative methods: the Euler-Lagrange and iterative Newton-Euler.  It is shown that although the derived dynamics differ from all previous works, they all have the same general form which implies that previously published nonlinear control laws are still valid for this system.  However, caution is needed when neglecting certain inertial terms when employing aggressive controllers.   Linearised expressions for both the upright and downward positions have been presented, as well as the coupled motor-pendulum equations.



---

*Source: 528341-2011-04-13.xml*