Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

Using Matlab in Robotic Kinematics

Assoc. Prof, Nguyen Truong Thinh


Department of Mechatronics - HCMUTE
Workspace of 2 dof planar manipulator
P
Px  l1 cos q1   l2 cos(q1  q 2 )
Py  l1 sin q1   l2 sin(q1  q 2 )

q2 l2

l1

q1
Workspace of 2 dof planar manipulator
0  q1  2 -  q1  

0  q2  2 -/2  q2  /2
Px   sin q1  l2 cos q 2   l3 cos(q 2  q3 ) 
l3 Py  cos q1  l2 cos q 2   l3 cos(q 2  q3 ) 
Pz  l1  l2 sin q 2   l2 sin(q 2  q3 )
q3

q2
z0 l2
l1

x0
x1
q1 y1
y0
Inverse Kinematics of 2 dof planar manipulator
P Px  l1 cos q1   l2 cos(q1  q 2 )
Py  l1 sin q1   l2 sin(q1  q 2 )

q2 l2 Px2  Py2  l12  l22


cos q 2 
2l1l2
l1
sin q 2  1  cos 2 q 2
q1 q 2  a tan 2  sin q 2 , cos q 2 
Inverse Kinematics of 2 dof planar manipulator
P Px  l1 cos q1  l2 cos q1 cos q 2  l2 sin q1 sin q 2
Py  l1 sin q1  l2 sin q1 cos q 2  l2 sin q 2 cos q1
Px  cos q1  l1  l2 cos q 2   sin q1  l2 sin q 2 
Py  cos q1  l2 sin q 2   sin q1  l1  l2 cos q 2 
q2 l2
 Px  l1  l2 cos q 2 l2 sin q 2  cos q1 
P  
l1  y   l2 sin q 2 l1  l2 cos q 2   sin q1 
 Px l2 sin q 2 
 P l  l cos q 
 y 1 2 2 Px  l1  l2 cos q 2   Py l2 sin q 2
q1 cos q1  
l1  l2 cos q 2 l2 sin q 2   l1  l2 cos q 2 2   l2 sin q 2 2
 l sin q  q 
 2 2 l1 l 2 cos 2

l1  l2 cos q 2 Px 
 l sin q 
 P  Py  l1  l2 cos q 2   Pxl2 sin q 2
sin q1  
2 2 y

q1  a tan 2  sin q1 , cos q1  l 


1 2 l cos q 2  l 2 sin q 2   l1  l2 cos q 2    l2 sin q 2 
2 2

 l sin q l1  l2 cos q 2 
 2 2
x=30;

y=30;

c2=(x^2+y^2-l1^2-l2^2)/(2*l1*l2);

s2=sqrt(abs(1-c2^2));

t2=atan2(s2,c2);

c1=(x*(l1+l2*c2)+y*l2*s2)/((l1+l2*c2)^2+(l2*s2)^2);

s1=(y.*(l1+l2*c2)-x.*l2*s2)/((l1+l2*c2)^2+(l2*s2)^2);

t1=atan2(s1,c1);

px=l1*cos(t1)+l2*cos(t1+t2);

py=l1*sin(t1)+l2*sin(t1+t2);

plot(px,py,'*');
Painting Robot
Forward kinematics Inverse kinematics

Px  l2 sin q1 q1  a tan 2( Px , Py )


l2
Py  l2 cos q1 l2  Px2  Py2
Pz  l1 l1  Pz
l1

q1 R

y1
y0

x0 x1

Geometric parameters that define a helix


Representation of 3 variables

[x,y]=meshgrid(-pi/2:0.03:pi/2, [x,y]=meshgrid(40:1:100,
-pi/2:0.03:pi/2); 30:1:100);
t1=atan2(-x,y); l2=sqrt(x.^2+y.^2);
surfl(x,y,t1); surfl(x,y,l2);
xlabel('Axis X (cm)'); xlabel('Axis X (cm)');
ylabel('Axis Y (cm)'); ylabel('Axis Y (cm)');
zlabel('Axis z (Rad)'); zlabel('Axis z (cm)');
SCARA Robot
(Selective Compliance Assembly Robotic Arm)
SCARA Robot
(Selective Compliance Assembly Robotic Arm)

Tray

l2
l3
P
q2
l1 l3

Conveyor
z0
l4 q2
q1 q1
x0 y0

l2
y0
x0
SCARA Robot
(Selective Compliance Assembly Robotic Arm)
Forward kinematics

Px  l2 sin q1  l3 sin q1  q 2 


Tray

Py  l2 cos q1  l3 cos q1  q 2 


P Pz  l1  l4
l3
Parametric Equation of line
Conveyor

q2 X  x0  at
q1
y0
Y  y0  bt
l2
Z  z0  ct
x0
Thanks for Hydraulics – Pneumatics
watching

Find out more at the PowerPoint Getting Started Center

You might also like