# Sliding Mode Control (SMC), Robust control algorithm for nonlinear system

Sliding Mode Control algorithm is a robust controller for nonlinear systems.

Robust control means that even though the system model has a certain error, if the controller can control the system, we say that the controller is robust.

SMC has two fundamental ideas.

1. To attract the system states to the surface.

2. To make the state slide on the surface toward the origin.

To explain the above two ideas more easily, let’s assume a typical control problem.

$\dot&space;x&space;=&space;f_1&space;(x,\dot&space;x)$   — (1)

$\ddot&space;x&space;=&space;f_2&space;(x,&space;\dot&space;x)&space;+&space;u$

$y=Cx$ — (2) if it is nonlinear, you need to know Lie Derivatives.

To achieve the first idea, we need to define a surface like the below. (Let’s assume that $y$ is a scalar and differentiable.)

$s(x)=a_0&space;e&space;+&space;a_1&space;\dot{e}$  where  $e=y-y_d$ — (3)

Here we need to select a_0 and a_1 to make y->0 as t-> inf,s=0. You will see the reason after more several lines.

Let’s take the derivative of s(x) w.r.t. x. Then we can get the below equation.

$\dot{s}(x)=a_0&space;\dot&space;e&space;+&space;a_1&space;\ddot&space;e$  — (4)

In addition, if we add the additional term -$\eta&space;\text{sign}(s)$ we can obtain the below equation,

$\dot{s}(x)=a_0&space;\dot&space;e&space;+&space;a_1&space;\ddot&space;e=-\eta&space;\text{sign}(s)$ — (5)

Through a simple Lyapunov theorem, we can easily prove s-> 0 at t->inf .

if s=0, e-> 0 and \dot(e)-> 0, because we selected a_0 and a_1 to be like this.

Let’s look at (5),

$a_0&space;\frac{d}{dt}(y-y_d)+a_1&space;\frac{d^2}{dt^2}(y-y_d)=-\eta&space;\text{sign}(s)$

=> $C(a_0&space;\dot&space;x&space;+a_1&space;\ddot&space;x)=-\eta&space;\text{sign}(s)$

=>$C(a_0&space;f_1&space;+a_1&space;(f_2+u)))=-\eta&space;\text{sign}(s)$

=>$u=((-\eta&space;\text{sign}&space;(s))/C&space;-&space;a_0&space;f_1)/a_1&space;-f_2$

With this control input, we can control a nonlinear system with SMC.

it is difficult to explain quickly within short explanations…., if you need more explanation or questions, please leave me a reply.

# Feedback linearization control (FBL) for nonlinear system control proof, practical implementation, and easy example part 2

This article explains about Feedback linearization control (FBL) method for control of a nonlinear system. By demonstrating a control strategy of the inverted pendulum problem, I am going to explain how to implement its algorithm into a real system. The basic idea is that we can cancel control input by manipulating control input. The below is its practical implementation method and example.

If you want to know the proof of feedback linearization control method. refer this.

—————————————————————————————————————————–

I am Youngmok Yun, and writing about robotics theories and my research.

My main site is http://youngmok.com, and Korean ver. is  http://yunyoungmok.tistory.com.

—————————————————————————————————————————–