Robotics
Robotics
Forward Kinematics
Inverse Kinematics
VelocityAnalysis (Jacobian)
Modeling and Control of
Manipulators
Euler
Lagrange Method
Newton’s Equations
1 11/22/2024
Kinematics
The study of motion that ignores the forces that
cause the motion
“geometry of motion”
Interested in position, velocity, acceleration,
etc. of the various links of the manipulator
e.g., where is the gripper relative to the base of the
manipulator? what direction is it pointing in?
described using rigid transformations of the links
2 11/22/2024
Cont.
Forward kinematics
given the link lengths and joint angles compute the
position and orientation of the end
effector(gripper or tool) relative to the base
frame
for a serial manipulator there is only one solution
Inverse kinematics
given the position and orientation of the end
effector determine the links geometry and joint
variables
for a serial manipulator there is often more than one
mathematical solution
Transform Equations
T 12 {2}
{1}
T 10
2
T 4
{0}
T 30
T 34
{4}
{3}
4
Links and Joints
joint n
joint 3 joint 4 joint n-1
link 3 .................
joint 1
link 2
link n-1
link 1 link n
joint 2
link 0
i revolute joint
qi
n joints, n + 1 links d i prismatic joint
link 0 is fixed (the base)
joint i connects link i – 1 to link i
link i moves when joint i is actuated
5
Forward Kinematics
Given the joint variables and dimensions of
the links what is the position and orientation
of the end effector
The hand frame of the robot relativep0 ? to the
base reference frame
If all robot joint variables are known,a2
one can calculate where the robot handq
2
y0 instant
is at any
a1
q1 i revolute joint
qi
x0
d i prismatic joint
6
Cont.
Because the base frame and frame 1 have the
same orientation, we can sum the coordinates
to find the position of the end effector
(a1 cos q1 in
+ a2the
cos (qbase
1 + q2),
y1
a2
( a2 cos (q1 + q2),
q2 a2 sin (q1 + q2) )
y0
q1
a1 x1
q1
( a1 cos q1 , a1 sin q1 )
x0
7
Cont.
Using transformation matrices
0
T Rz ,1 Dx , a1
1
1
T R z , 2 D x , a 2
2
0 0 1
T T2 1 T 2
8
Frames
Joint frames
y2 x2
y1
a2
q2
y0 x1
a1
q1
x0
9
Forward Kinematics
Attach a frame {i} to link i
if joint i is actuated then frame {i} moves relative to
frame {i - 1}
motion is described by the rigid
i 1 transformation
T i
10
Cont.
More generally
i 1 j 1
T i
i 1 T j 2 T j if i j
i
T j I if i j
T i 1
j if i j
11
Inverse Kinematics
Given the position and orientation of the end effector
determine the dimensions of the links and joint
variables y2 x2
(x, y)
a2
q2 ?
y0
a1
q1 ?
x0
Cont.
Harder than forward kinematics because
there is often more than one possible
solution
(x, y)
a2
y0
a1 There are three
approaches for the
solution
Analytical Approach
x0 Geometric Approach
Hybrid Approach
Velocity Analysis
• Needed to relate the joint velocities to the tool(end
effector)velocities
1 X=FK(θ) x
y
2
z
3 X
4
5 θ
6 =IK(X)
Joint Task
Space Space
1 J ( )
X x
y
2
3 z
4 x
y
5 J 1 ( ) X
6 z
Joint Task
Space Space
Jacobian
• Suppose a position and orientation vector of a
manipulator is a function of 6 joint
variables: (from forward kinematics)
X = h(q)
x q1 h1 ( q1 , q2 , , q6 )
y q h (q , q ,, q )
2
2 1 2 6
z q3 h3 ( q1 , q2 , , q6 )
X h ( )
61
q
4 h4 ( q1 , q2 , , q6 )
q5 h5 ( q1 , q2 , , q6 )
q
6 h6 ( q1 , q2 , , q6 ) 61
Jacobean Matrix
Forward
kinematics
X 61 h(qn1 )
d dh( q ) dq dh( q )
X 61 h( qn1 ) q
dt dq dt dq
x
q 1
y
1
X 1 J 6n q n
q
z dh( q ) 2 6
x dq 6n
y dh(q )
q n n1 J
z dq
Cont.
x q 1
y
dh(q ) q
z 2
Jacobian is a function
dq 6n of q, it is not a
x constant!
y q n n1
z h1 h1 h1
q
q2 qn
1
dh( q ) h2 h2
h2
J q1 q2 qn
dq 6n
h h6 h6
6
q1 q2 qn 6n
Cont.
x
y Linear
velocity Angular q 1
velocity
z V x q
X x
q n1 2
x
y
V y y
z
z
z q n n1
The Jacobian
Equation
X J q
6n n1
Example
• 2-DOF planar robot arm (x , y)
h1 h1
2 l1 sin 1 l2 sin(1 2 ) l2 sin(1 2 )
J 1
h2 h2 l1 cos 1 l2 cos(1 2 ) l2 cos(1 2 )
1 2
Singularities
• The inverse of the Jacobian matrix cannot be
calculated when
det [J(θ)] = 0
x
Singularity
at Singularities
Singularities represent configurations from which
certain directions of motion may be unattainable
The manipulator end effector cannot move in
certain directions
Singularities usually (but not always) correspond
to points on the boundary of the manipulator
workspace(that is, to points of maximum reach of
the manipulator)
Bounded End-Effector velocities may correspond to
unbounded joint velocities
Bounded joint torques may correspond to
unbounded End-Effector forces and torques
Inverse Velocity
– The relation between the joint and end-
X J (q )q
effector velocities:
q J (q) X
where j (m×n). If J is a square
1 matrix (m=n), the joint
velocities:
q
– If m<n, let (q ) X
J Pseudoinverse J
T
J J [ JJ ]
+ T 1
where
Acceleration
The relation between the joint and end-effector
velocities: X J (q )q
d
Differentiating this equation yields an expression for the
acceleration X J (q )q [ J (q)]q
dt
X
q
d
Given
J (q )q X [ J (q )]q
of the end-effector acceleration, the joint
acceleration
dt
1 d
q J (q )[ X J (q )]q ]
dt
Modeling and Control of Manipulators
• Forward Kinematics
Problem
Given: Joint angles and links geometry
Compute: Position and orientation of the
end effector relative to the base frame
Solution
Kinematic Equations - Linear Transformation
(4x4 matrix) which is a function of the joint
positions (angles & displacements) and
specifies the end effector configuration
in the base frame
Cont.
• Inverse Kinematics
Problem
Given: Position and orientation of the end
effector relative to the base frame
Compute: All possible sets of joint angles and
links geometry which could be
used to attain the given position and
orientation of the end effector
Solution
There are three approaches for the solution
• Analytical Approach
• Geometric Approach
• Hybrid Approach
Cont.
• Velocity Transformation
Problem
Given: Joint angles and velocities and links geometry along
with the transformation matrixes between the joints
Compute: The Jacobian matrix that maps between the joint
velocities in the joint space to the end effector
velocities in the Cartesian space or the end effector
space
J () J 1 ()
Solution – There are two approaches to the solution:
• Time derivative of the end effector position and ordinations
• Velocity Propagation - A velocity propagation approach is taken in which velocities
are propagated stating form the stationary base all the way to the end effector. The
Jacobian is then extracted from the velocities of the end effector as a function of the
joint velocities.
• Singularities
Cont.
• Force Transformation
Given: Joint angles, links geometry, transformation matrixes between the
joints, along with the external loads (forces and moments) typically
applied on the end effector
Compute: The transpose Jacobian matrix that maps between the external loads
(forces and moments) typically applied at the end effector space joint
torques at the joint space
τ
Solution τ J T f
Force/Moment Propagation - A force/moment propagation approach is taken
in which forces and moments are propagated stating form the end effector
Where they can be measured by a F/T sensor attached between the gripper
and the arm all the way to the base of the arm. The Jacobian transposed is
then extracted from the joint torques as a function of the force/moment applied
on the end effector
Cont.
• Forward Dynamics
Problem
Given: Joint torques and links
geometry, mass, inertia,
friction
Compute: Angular acceleration
of the links
(solve differential equations)
Solution
Dynamic Equations Newton-Euler method
τ M () V ( ,
) G ( ) F ( ,
)
or Lagrangian Dynamics
Cont.
• Inverse Dynamics
Problem
Given: Angular acceleration, velocity and
angels of the links in addition to the
links geometry, mass, inertia, friction
Compute: Joint torques
Solution
Dynamic Equations - Newton-Euler method
or Lagrangian Dynamics
V ( ,
τ M ( ) ) G ( ) F ( ,
)
Cont.
• Trajectory Generation
Problem
Given: Manipulator geometry
Compute: The trajectory of each joint such that
the end effector move in space
from point A to Point B
Solution
Third order (or higher) polynomial spline
L K P
• L is a scalar function of q and dq/dt
• L requires only first derivatives in time
where
L = Lagrangian L L
K = Kinetic Energy of the system
Fi
t x x i
P = Potential Energy of the system i
F = the summation of all external forces
for a linear motion
L L
T = the summation of all torques in a T i
rotational motion t
i
i
X = System variables
Cont.
The general Dynamics
Where
is joint angle acceleration
is the control signal (specifying torque)
a function describing the centrifugal effects (Non-linear terms:
sin(θ), cos(θ), (dθ/dt)2, (dθ/dt)*θ)
the effect of gravity in joint space
M the mass matrix of the system in joint space
Newton-Euler method
Newton’s Law second law of motion
F m a
d
mv F
dt
Linear Momentum Rate of change of the linear
mv momentum is equal to the
applied force
Cont.
• The dynamics, related with accelerations, loads, masses and inertias
__ __ __ __
F m a T I
The actuator can be accelerate a robot’s links for exerting enough
forces and torques at a desired acceleration and velocity.
By the dynamic relationships that govern the motions of the robot,
considering the external loads, the designer can calculate the neces-
sary forces and torques
Example
Derive the force-acceleration relationship for the one-degree of freedom system