## 1. Introduction

In practice, many control problems involve the “underactuated” behavior of mechanical systems. In underactuated systems, the number of equipped actuators is less than that of the controlled variables. That is, actuators do not directly control several degrees of freedom. For example, we consider a tracking control problem for a marine vessel (**Figure 1**). In many cases, ships are equipped with either two independent aft thrusters or one main aft thruster and one rudder, without any bow or side thruster. Therefore, no sway control force acting on the ship is assumed. From the aforementioned condition, Lefeber et al. [1] investigated tracking control for underactuated ships in which three state variables, namely, surge, sway, and yaw, are driven by only two inputs: surge force and yaw torque. We can find many underactuated systems in engineering, such as mobile robots, aircraft, and gantry cranes, among others.

According to the study of Tedrake [2], a mechanical system that can be described mathematically by

is regarded an underactuated system if the rank of matrix **B**(**q**) is less than the dimension of vector **q**, that is,

Otherwise, system (1) has a “fully actuated” property in configuration **q**.

Unlike modern control techniques, such as fuzzy logic and neural networks, traditional control methods require knowing the physical properties of a system, which are generally governed by its mathematical model. For dynamical systems, a mathematical model is constructed based on mechanics principles, such as Newton’s law, Lagrange equation, Lagrange multiplier method, Euler-Lagrange methodology, and so on. In mechanical systems with multiple degrees of freedom, system dynamics will comprise a set of second-order differential equations (1) in terms of displacements **q**, velocities *t*. From this point of view, dynamical systems can be classified according to the type of mathematical model. *Partial differential equations* are used to describe *distributed systems* mathematically, whereas *ordinary differential equations* govern the motions of *discrete systems*.

Most realistic systems exhibit nonlinear behavior. A nonlinear system is generally described by nonlinear differential equations. Nonlinearities appear in a mathematical model because of its nonlinear components or geometric relationship. For example, a system that consists of an inverted pendulum mounted on a cart, as shown in **Figure 2**, has the following equations of motion:

The nonlinearities of the aforementioned dynamics originate from geometric constraint.

The other example is a spring-damper system, which is illustrated in **Figure 3**. The force of nonlinear spring

leads to the nonlinear modeling of the system, as follows:

The nonlinear feedback technique, also called feedback linearization, is a representative method for controlling nonlinear systems. The main concept of feedback linearization is to transfer the original nonlinear system algebraically into the linear system by inserting equivalent inputs to suppress the nonlinearities of the former. The feedback linearization control of fully actuated systems has been discussed in several well-known textbooks [4, 5] in which this theory has been completely developed. Previous studies have pointed out that fully actuated systems are feedback linearizable through nonlinear feedback [6, 7]. In this chapter, we introduce the feedback linearization control for a class of multiple-input and multiple-output (MIMO) underactuated systems. The analysis process is conducted using an algebra foundation in which the mathematical model is simplified through matrix equations.

First, the mathematical model of underactuated mechanical systems is separated into two subsystems: actuated states and unactuated states. Then, we design a controller in which nonlinear feedback is partly applied to both actuated and unactuated dynamics. Subsequently, actuated submodel is “linearized” using a nonlinear feedback method; thus, the unactuated dynamics is regarded as internal model. Seeing actuated states as system outputs, a nonlinear control law is designed to drive state trajectories to the references. However, this controller does not promise the stability of unactuated states. Therefore, its structure should be adjusted to guarantee the stability of both actuated and unactuated states based on the nonlinear feedback of all system states. The control scheme now exhibits the linear combination of two components that are distinctly acquired from the nonlinear feedback of both the actuated and unactuated submodels.

In comparison with traditional controllers, such as the proportional-integral-derivative (PID) controller, partial feedback linearization (PFL) exhibits several advantages. In the PID controller design, most of the nonlinear factors of a system are not mentioned. By contrast, in the design of PFL, all the nonlinearities of a system considered in the system dynamics are entirely vanished by the PFL controller. However, the PFL approach requires a precise model to achieve good control action. Additionally, the approach is not convenient in systems with uncertain parameters.

As an enhancement of Tuan et al.’s [8] paper, where PFL was applied for three-dimensional (3D) overhead crane, we introduce the PFL theory in the generalized form for a class of nonlinear underactuated mechanical systems. The outline of this chapter is as follows. Section 1 introduces the chapter. Section 2 presents the general form of the mathematical modeling of an underactuated mechanical system. Section 3 constructs a nonlinear controller based on the partial nonlinear feedback technique. Section 4 discusses system stability. Section 5 provides an example to illustrate the proposed theory. Finally, Section 6 provides the conclusion of the chapter.

## 2. Mathematical model

In general, the physical behavior of a MIMO mechanical system is governed by a set of differential equations of motion. Consider an underactuated system with *n* degrees of freedom driven by *m* actuators (*m*<*n*). The mathematical model, which is composed of *n* ordinary differential equations, is simplified in matrix form as follows:

where *R*^{n} is the vector of the generalized coordinates, and **F** ∈ *R*^{n} denotes the vector of the control inputs. Given that the system has more control signals than actuators, **F** has only *m* nonzero components as *R*^{m} being a vector of nonzero input forces. **M**(**q**) = **M**^{T}(**q**) = [*m*_{ij}]_{n × n} ∈ *R*^{n × n} is the symmetric mass matrix,

As an underactuated system, its *n* output signals are driven by *m* actuators. Meanwhile, its mathematical model is divided into two auxiliary dynamics, namely, actuated and unactuated systems. Correspondingly, *R*^{m} for actuated states and *R*^{n−m} for unactuated states are defined. The matrix differential equation (9) can then be divided into two equations as follows:

where **M**_{11}(**q**), **M**_{12}(**q**), **M**_{21}(**q**), **M**_{22}(**q**) are the submatrices of **M**(**q**); and **M**(**q**), **G**(**q**) of Equation (9) exhibit the following form:

Notably, matrix **M**(**q**) is symmetric positive definite, **q**_{a} and the actuators **U**. By contrast, the unactuated equation (11) does not display the constraint between the unactuated states **q**_{u} and the inputs **U**. Physically, input signals **U** drive the actuated states **q**_{a} directly and the unactuated states **q**_{u} indirectly.

## 3. Nonlinear feedback control

System dynamics, which is composed of Equations (10) and (11), is transformed into a simpler model with an equivalent linear form based on the nonlinear feedback method [7]. Note that **M**_{22}(**q**) is a positive definite matrix. The unactuated states **q**_{u} can be determined from Equation (11) as

In underactuated mechanical systems, the unactuated state **q**_{u} has a geometric relationship with the actuated state **q**_{a}. Therefore, control input **U** indirectly acts on **q**_{u} through **q**_{a}. Substituting Equation (12) into Equation (10) and simplifying the equation yield the following:

where

*R*^{n}. Equation (13) is transformed into

By inserting Equation (14) into Equation (12), we obtain

where

and

Therefore, the dynamic behavior of a mechanical underactuated system can be described by actuated dynamics (14) and unactuated dynamics (15) in which the mathematical relationships among **q**_{a}, **q**_{u}, and **U** can be observed clearly.

Considering the actuated states **q**_{a} as the system outputs, actuated dynamics (14) can be “linearized” by defining

with **V**_{a} ∈ *R*^{m} as the equivalent control inputs. Then, the control signals **U** become

Controller **U** is designed to drive the actuated states **q**_{a} to the desired values **q**_{ad}. To track the given state trajectories, the following equivalent control inputs are selected:

Given that **q**_{ad} = **const**, Equation (18) can be reduced into

with **K**_{ad} = diag(*K*_{ad1}, *K*_{ad2}, …, *K*_{adm}) ∈ *R*^{m × m}, **K**_{ap} = diag(*K*_{ap1}, *K*_{ap2}, …, *K*_{apm}) ∈ *R*^{m × m} as positive diagonal matrices.

On the basis of Equation (18) and active dynamics (16), the differential equation of the tracking error is obtained as described by

where **K**_{ad} > **0** and **K**_{ap} > **0**. That is, the tracking errors of the actuated states **q**_{a} converges to **q**_{ad}) as *t* becomes infinite. In particular, the equivalent control **V**_{a} forces the actuated states **q**_{a} to reach the references **q**_{ad} asymptotically.

The control scheme (17), which corresponds to the equivalent input **V**_{a}, is used only to stabilize the actuated states **q**_{a} asymptotically. To stabilize the unactuated states **q**_{u}, the nonlinear feedback technique can be applied to subdynamics (15) as follows:

where **V**_{u} ∈ *R*^{n − m} refers to the equivalent inputs of the unactuated states.

**K**_{ud} = diag (*K*_{ud1}, *K*_{ud2}, …, *K*_{ud(n − m)}) ∈ *R*^{(n − m) × (n − m)} and **K**_{up} = diag (*K*_{up1}, *K*_{up2}, …, *K*_{up(n − m)}) ∈ *R*^{(n − m) × (n − m)} are positive matrices.

The control input **U** received from Equations (15) and (21) ensures the stability of the unactuated states **q**_{u} because the tracking error dynamics, that is,

is stable for every **K**_{ud} > **0** and **K**_{up} > **0**. Hence, if **K**_{ud} and **K**_{up} are selected appropriately, then the equivalent inputs **V**_{u} can drive cargo swings **q**_{u} toward zero.

To stabilize the unactuated and actuated states, overall equivalent inputs are proposed by linearly combining **V**_{a} and **V**_{u} as follows:

with **α** ∈ *R*^{m × (n − m)} being the weighting matrix and
**V** ∈ *R*^{m}.

Hence, considering **q**_{a} as the primary output, the total control scheme is determined by replacing **V**_{a} with **V** in Equation (17). By substituting Equation (23) into Equation (17), the nonlinear feedback control structure is obtained as

The nonlinear controller (23) asymptotically stabilizes all system state trajectories, as illustrated in an example presented in Section 5.

## 4. Analysis of system stability

The control law **U** is obtained from the actuated dynamics (14). The stability of the remaining part (the unactuated dynamics) of the closed-loop system, called the internal dynamics, is analyzed. If the internal dynamics is stable, then the tracking control problem is solved. Substituting the control scheme (24) into the unactuated subsystem (15) yields the internal dynamics:

The local stability of the internal dynamics is guaranteed if the zero dynamics is exponentially stable. Setting **q**_{a} = **q**_{ad} in the internal dynamics (25), the zero dynamics of the system is obtained as

The zero dynamics is expanded into a set of (*n*–*m*) second-order nonlinear differential equations in which the (*n*–*m*) components of vector **q**_{u} are considered as variables. The stability of the zero dynamics (26) is analyzed using Lyapunov’s linearization theorem [4]. By defining 2(*n*–*m*) state variables **z** ∈ *R*^{2 × (n − m)}, the zero dynamics (26) is converted into state-space form as follows:

where **f**(**z**) is a vector of nonlinear functions, and **z** ∈ *R*^{2 × (n − m)} is a state vector. System dynamics (27) is composed of 2(*n*–*m*) first-order nonlinear differential equations. This nonlinear zero dynamics is asymptotically stable around the equilibrium point **z** = **0** (**z** = **0** yields a linearized system in the following form:

with

as a 2(*n*–*m*)×2(*n*–*m*) Jacobian matrix of components
∂*f*_{i}/∂*x*_{j}. The stability of the linear system (28) can be analyzed by considering the positions of the eigenvalues of **A** or using several traditional techniques, such as the Routh-Hurwitz criterion [3], the root locus method, and so on. Thus, by investigating the stability of the linear system (28), we can understand the dynamic behavior of the nonlinear system (27), or equivalently, zero dynamics (26), according to Lyapunov’s linearization theorem [4].

*The nonlinear system* (26) *is asymptotically stable around the equilibrium point* (*if the linearized system* (28) *is strictly stable*.

*The equilibrium point* (*of the nonlinear system* (26) *is unstable if the linearized system* (28) *is unstable*.

*We cannot conclude the stability of the nonlinear system* (26) *if the linearized system* (28) *is marginally stable*.

As we will see in the examples provided in Section 5, the analysis of system stability using the aforementioned theorem yields the constraint equations of the controller parameters.

## 5. An application example

We apply the aforementioned theory to a 3D crane system to understand the proposed methodology comprehensively.

### 5.1. Problem statement

An overhead crane is a symbol of underactuated mechanical systems. Overhead cranes are typically used to transport cargo over short distances or to small areas, such as automotive factories and shipyards. We have investigated the nonlinear feedback control problem for a 3D overhead crane [8] with three actuators used to stabilize five outputs. The crane system, which is composed of four masses, is physically modeled in **Figure 4**. The distributed masses of the bridge are converted into a concentrated mass *m*_{b}, which is placed at the center of the bridge. *m*_{l} denotes the equivalent mass of the hoist mechanism, whereas *m*_{t} and *m*_{c} are the masses of the trolley and cargo, respectively. The system includes five degrees of freedom, which correspond to five generalized coordinates. *x*(*t*) is the trolley motion, *z*(*t*) is the bridge movement, and cargo position is characterized by three generalized coordinates (*l*, *θ*, and *φ*). Therefore, the generalized coordinates of the system are described by *b*_{r}, *b*_{t}, and *b*_{b}, respectively. The control signals *u*_{b}, *u*_{t} and *u*_{l} correspondingly demonstrate the driving forces of trolley motion, bridge movement, and cargo lifting translation.

The main objective of this example is to design a controller for simultaneously conducting five tasks: (1) tracking the bridge, (2) moving the trolley to its destinations, (3) lifting/lowering the payload to the desired length of the cable, (4) keeping the cargo swing angles small during transportation, and (5) completely suppressing these swings at payload destinations.

By using Lagrange’s equation to constitute the mathematical model, overhead crane dynamics can be represented by matrix equation (9) in which the component matrices are determined by the following formulas:

The coefficients of the **M**(**q**) matrix are given by

and

The coefficients of the

The nonzero coefficients of the **G**(**q**) vector are given by

### 5.2. Controller design

The overhead crane is an underactuated system in which five output signals are driven by three actuators. Using the nonlinear feedback methodology, we construct a control law

with

Applying the theory proposed in Sections 1−4, we determine the structure of the controller in Equation (24), where **K**_{ad} = diag(*K*_{ad1}, *K*_{ad2}, *K*_{ad3}), **K**_{ap} = diag(*K*_{ap1}, *K*_{ap2}, *K*_{ap3}), **K**_{ud} = diag(*K*_{ud1}, *K*_{ud2}), and **K**_{up} = diag(*K*_{up1}, *K*_{up2}) are the positive matrices of control gains, and

### 5.3. System stability

As presented in Section 4, we analyze the local stability of the internal dynamics (25), or equivalently, the zero dynamics (26). Applying Equation (26) to a 3D overhead crane, the zero dynamics of the system is expanded as

The stability of the zero dynamics, which comprises Equations (31) and (32), is analyzed using Lyapunov’s linearization theorem. First, we represent the zero dynamics in the first-order form by setting the four state variables as

Then, the zero dynamics exhibits the following state-space forms:

(36) |

Using **z** = **0** (**z** = **0** leads to a linear system as follows:

where

(38) |

is a Jacobian matrix in which the characteristic polynomial exhibits the following form:

(39) |

The linearized system (37) is stable around the equilibrium point **z** = **0** if **A** is a Hurwitz matrix. On the basis of the Hurwitz’s criterion and the results of the calculations, the constraint condition of the controller parameters is determined as

Therefore, if Equations (40)−(43) among the control parameters are maintained, then the zero dynamics is stable around the equilibrium point **z** = **0**, which leads to the local stability of the internal dynamics (25).

#### 5.4. Simulation and experiment

The overhead crane dynamics (9) driven by the control inputs (30) is numerically simulated in the case of a crane system that involves complicated operations. Accordingly, the trolley is forced to move from its initial position to the desired displacement at 0.4 m. The bridge is driven from its starting point to the desired location at 0.3 m, and the cargo is lifted with a cable length of 1–0.7 m of cable reference. These processes (lifting the cargo, moving the trolley, and driving the bridge) must be initiated simultaneously, with the cargo suspension cable initially perpendicular to the ground. The parameters used for the simulation are listed in **Table 1**.

Additionally, an experimental study is conducted to verify the simulation results. **Figure 5** shows a laboratory crane system used for the experiment. In this system, three DC motors for the bridge motion, trolley movement, and cargo hoisting motion are used. Five incremental encoders are applied for measuring bridge and trolley motions, the movement of the cargo along the cable, and the two swing angles of the cargo.

Three-dimensional overhead crane is controlled by a target PC in which a control structure is built based on MATLAB/SIMULINK with an xPC target foundation. A host PC is linked to the target PC, and the crane system is connected to the target PC by two interface cards. The 6602 card sends PWM signals to the motor amplifiers and obtains feedback pulses from the encoders. The 6025E multifunction card is utilized for sending direction control signals to the motor amplifiers.

**Figures 6**–**18** describe both the simulation and the experiment results. **Figures 6**–**8** show the paths of the bridge motion, trolley movement, and payload lifting translation, respectively. All the responses approach asymptotically to the destinations. However, the simulation paths are smoother and achieve steady states earlier than the experiment ones. The bridge moves and stops accurately at the load endpoint after 4 s in the simulation and 6 s in the experiment. The trolley reaches its destination after 4.1 s in the simulation and 6.2 s in the experiment. The crane lifts the payload from an initial length (1 m) of cable to the desired length (0.7 m) of cable after 4.2 s.

**Figures 9** and **10** indicate the responses of the cargo swings. The payload swing angles are in a small boundary during the payload transportation: *φ*_{max} = 2.2° and *θ*_{max} = 2.9° for the simulation and *φ*_{max} = 2.3° and *θ*_{max} = 2.4° for the experiment. The simulated cargo swings are completely vanished after short settling periods, *t*_{s} = 4 s for *φ* and *t*_{s} = 4.5 s for *θ*, within one vibration period. Slight steady-state errors remain in the experimental responses, which achieve the approximate steady state after over two oscillation periods.

The velocity components depicted in **Figures 11**–**15** asymptotically approach to zero. The movements of the bridge and the trolley, as well as the lifting movement of the payload at transient states, composed of two phases, namely, the increasing and decreasing velocity periods. As indicated clearly in the simulated curves, the trolley speeds up within the first 1.7 s and slows down within the last 2.4 s. The cargo is then lifted with increasing speed within the first 0.7 s and with decreasing speed within the remaining 3.5 s.

The nonlinear control forces are illustrated in **Figures 16**–**18**. The simulation responses achieve steady states after 4, 4.1, and 4.2 s for the bridge moving, trolley moving, and cargo lifting forces, respectively.

At steady states,

Evidently, differences in responses still exist between the simulation and the experiment responses because the dynamic model and the realistic overhead crane do not match completely. Several nonlinearities that exist in practice, such as the cable flexibility, the backlash of the gear motors, and nonlinear frictions, are not considered in the system dynamics. If the mathematical model is close to a realistic system, then the results will certainly be accurate.

## 6. Conclusions

The feedback linearization method provides an effective design tool for controlling nonlinear systems. We improved this technique for application to a class of underactuated mechanical systems. We provided two examples to illustrate the proposed method in which PFL was successfully applied to construct nonlinear controllers for a moving inverted double pendulum and a 3D overhead crane. In general, a nonlinear feedback controller for an underactuated mechanical system consists of two components. The first is for canceling the nonlinearities in the system and the second is for stabilizing state variables.