Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 25

Lyapunov Based Control of a

Robot and Mass-Spring System


Undergoing
An
Impact Collision
CONTROL OBJECTIVE:

To design a nonlinear controller which regulate the spring


mass to a desired compressed state after it has undergone a
collision with a two link manipulator.

DIFFICULTY?
The equations of motion are different when the system status
changes suddenly from a non-contact state to a contact state.
DYNAMIC MODEL

• 2-Link manipulator :

• Mass spring system:

Property of euler-lagrange dynamics:

1. M is symmetric and

2. Skew symmetric property:


Definations:
1.Manipulator end position:
2.Relation between Xdot and qdot:
3.Contact Force:

4. Contact Torque:
Model of system after collision:

Converting to X-Y Co-ordinates:


Control Development:
Goal here is to regulate the states of a dynamic system (i.e., a two-link
planar robot) that has an impact collision with another dynamic system
(i.e., a mass-spring).
A regulation error, denoted by is defined to quantify this
objective as :
FILTER TRACKING ERROR

(To facilitate the subsequent control design and stability analysis)


CLOSE LOOP ERROR SYSTEM:
BACKSTEPPING TECHNIQUE:
Virtual control law is defined as 𝑥𝑟𝑑1 :

Objective is to control the dynamics of mass-spring system by virtual


control law and dynamics of two-link manipulator can be controlled by
actual control law defined for torque/force.
LYAPUNOV FUNCTION AND DEFINING
CONTROL LAWS:
Let denote the following continuously differentiable,
nonnegative, radially unbounded function (i.e. a Lyapunov function
candidate):

Which can be upper and lower bounded i.e.:


CONTROL LAWS:
Virtual control law:

Close loop Dynamics of mass-spring system obtained now:


CONTROL FORCE ON LINKS:

Close loop Dynamics of two-link manipulator system obtained now:


STABILITY ANALYSIS IN DIFFERENT
SITUATIONS:
Taking the time derivative of LYAPUNOV CANDIDATE FUNCTION defined
before and substituting for close-loop dynamics we will get the
following expression for Vdot:
CASE-I:
Before the initial contact, the mass-spring system is at rest and the spring is
not compressed. Hence,

Barbalat’s Lemma can be applied to


conclude that:
CASE-II:
After an impact, the robot may loose contact with the spring-mass.
In this case:

NOW:
Now:
CASE-III:
When the robot and mass-spring systems are in contact, Vdot can be
upper bounded as :

After completing the squares on the bracketed terms, the following


expression is obtained:
Now if

Global exponential stability result is obtained.


and exponentially converge to zero as the time
increases.
Simulation code:
function Xdot=MSR(t,x)
m=1;m1=1;m2=1;l1=1;l2=1;ko=1;k=100;alpha=1;k1=1;k2=1;
k3=[10 0;
0 2];
xmd=1.5;xo=1.2;xr2d=.5;
xr1d=((alpha*m*x(6)+ko*(xmd-x(5)-xo)+(k1+k2)*(x(6)+alpha*x(5)))/k)+(xmd-x(5));
xr1=xr1d-x(1);
xr2=xr2d-x(2);
xm=xmd-x(5);
if xr1>=xm
v=1;
elseif xr1<xm
v=0;
else
v=1;
End
q2=acos(((xr1^2+xr2^2)-(l1^2+l2^2))/(2*l1*l2));
q1=atan(((l1+l2*cos(q2)*x(2))-(l2*sin(q2)))/((l2*sin(q2)*x(2))+(l1+l2*cos(q2))*xr1));
j11=-l1*sin(q1)-l2*sin(q1+q2);
j12=-l2*sin(q1+q2);
j21=l1*cos(q1)+l2*cos(q1+q2);
j22=l2*cos(q1+q2);
J=[j11 j12;
j21 j22];
M11= (m1+m2)*l1^2+ m2*l2^2 + 2*m2*l1*l2*cos(q2);
M12= m2*l2^2+ m2*l1*l2*cos(q2);
M21= M12;
M22= m2*l2^2;
M=[M11 M12;
M21 M22];
Mbar=J'^-1*M*J^-1;
emdd=((1-v)*(ko*(xmd-x(5)-xo)+alpha*m*x(6))+k*v*x(1)-v*(k1+k2)*(x(6)+alpha*x(5))-alpha*m*x(6));
erd=[x(3);x(4)];
er=[x(1);x(2)];
erdd=Mbar^-1*(-alpha.*Mbar*erd-k3*(erd+alpha.*er)-er);
Xdot=[x(3);x(4);erdd(1);erdd(2);x(6);emdd];
end
function [t,x]=MSR_plot(x1i,x2i,x3i,x4i,x5i,x6i,n)
f=[x1i,x2i,x3i,x4i,x5i,x6i];
g=[0,n];
[t,x]=ode45(@MSR,g,f);
figure(1)
plot(t,x(:,1),'r');
hold on
plot(t,x(:,2),'g');
legend('er1','er2');
figure(2)
plot(t,x(:,3),'r');
hold on
plot(t,x(:,4),'g');
legend('er1dot','er2dot');
figure(3)
plot(t,x(:,5),'b');
hold on;
plot(t,x(:,6),'c');
legend('em','emdot');
end
Simulation Results:
• Two-link manipulator position errors:
Mass Spring system Position error:
Variation of 𝑥𝑚 , 𝑥𝑟1 , 𝑥𝑟1𝑑 with contact and non contact position:

You might also like