The error dynamics describes the combined dynamics of the robot and the controller in

response to a reference input.

As we saw in the last video, an error response could look something like this.

Here the error response has zero steady-state error and lots of overshoot and oscillation.

This plot also happens to be the position response of a mass-spring-damper, where the

position of the mass is theta_e.

As we will see soon, designing a controller is much like choosing the spring constant

k and the damping constant b.

If we choose the stiffness k to be large, the spring pulls the error toward zero faster,

and if we choose the damping constant b to be large, we can get rid of overshoot and

oscillation.

The motion of the mass, and the error dynamics, is described by this linear ordinary differential

equation: the mass times acceleration plus the damping times the velocity plus the stiffness

times the position is equal to zero.

This is called a second-order differential equation, since the second derivative of theta_e

appears.

More generally, in this chapter we will consider error dynamics that look like this p-th order

differential equation, depending on p derivatives of theta_e.

The right-hand side of this equation is a nonzero constant c, and such a differential

equation is called nonhomogeneous.

If c is equal to zero, as it was for our mass-spring-damper example, then the differential equation is

homogeneous.

We can divide both sides by the coefficient a_p to get our preferred form of a homogeneous

differential equation, with coefficients a^prime.

We could also write this equation in this equivalent form.

This single p-th order differential equation can be expressed as p first-order differential

equations.

Let's define the state vector x, consisting of variables x_1 to x_p. x_1 is theta_e, x_2

is theta_e-dot, etc.

The rate of change of x_p-dot is given by this equation, which is equivalent to the

single p-th order differential equation we saw earlier.

With our definition of the state vector x, we can write the p-th-order differential equation

as a first-order vector differential equation x-dot equals A-x, where A is a p-by-p matrix.

The solution to this vector differential equation is given by the matrix exponential e to the

A-t, as we saw in Chapter 3.

Since A is not an element of little so(3) or little se(3), the analytic solutions that

we saw in Chapter 3 do not apply.

Instead, to understand the character of the error response, we will study the eigenvalues

of the A matrix.

These eigenvalues determine whether an initial error, x at time 0, grows or shrinks with

time.

If x and A are both scalars, then the error shrinks as a decaying exponential if A is

negative, and it grows exponentially if A is positive.

The generalization of this observation to the case where x is a vector and A is a matrix,

whose eigenvalues are complex numbers in the general case, is that the error is only guaranteed

to decay to zero if the real components of all the eigenvalues are negative.

In other words, if the real components of all the eigenvalues of the matrix A are negative,

then the error dynamics are stable.

The eigenvalues s of A are given by the roots of the characteristic equation of A, the determinant

of s times the identity matrix minus A equals zero.

Therefore we often refer to the eigenvalues as roots.

The form of this characteristic equation comes directly from the original p-th-order differential

equation, replacing the i-th derivative of theta_e with s-to-the-i.

A necessary condition for all the roots to have a negative real component is that all

the coefficients a^prime are positive.

This condition is also sufficient for stability for first- and second-order error differential

equations, but not for third-order or higher.

In the coming videos, we will return to the second-order error dynamics we saw at the

beginning of this video, as it is the simplest error differential equation that exhibits

overshoot and oscillation, which are common behaviors in controlled systems.