Professional Documents
Culture Documents
robots and
introduction to
kinematics of robots
Kinematics: constraints on
getting around the environment
kinematics
The effect of a robots
geometry on its motion.
wheeled
platform
s
manipulator
modeling
electric motors,
hydraulic cylinders,
pneumatic cylinders,
etc.
We said many times before that sensors must be matched to the robot's
task.
Similarly, effectors must be well matched to the robot's task also.
DOF
In general, a free body in space as 6 DOF:
three for translation (x,y,z),
three for orientation/rotation (roll, pitch, and yaw).
Answer
on next
slide
DoF Comment
2 1. Side-to-side
2. Up-down
1 1. Open-close a little
4*4 1.
2.
4 1.
2.
23
VL
VR
Definition of a
HOLONOMIC robot
When the number of controllable DOF is equal
to the total number of DOF on a robot, the robot
is called holonomic. (i.e. the hand built by
Uland Wong).
Holonomic
<= >
<= >
<= >
Manipulation
In locomotion (mobile robot), the body of the robot
is moved to get to a particular position and
orientation.
In contrast - a manipulator moves itself
typically to get the end effector (e.g., the hand, the
finger, the fingertip)
to the desired 3D position and orientation.
Issues in Manipulation
In addition: manipulators need to:
grasp objects,
move objects.
But those tasks are extensions of the basic reaching discussed
above.
Manipulation - Teleoperation
Thus, doing autonomous manipulation is very
challenging.
Manipulation was first used in tele-operation,
where human operators would move artificial arms
to handle hazardous materials.
Complicated duplicates of human arms, with 7 DOF
were built.
It turned out that it was quite difficult for human
operators to learn how to tele-operate such arms
Inverse Kinematics
Given a tip position - what are the possible joint angles ?
Dynamics
To accelerate the tip by a given amount how
much torque should a particular joint motor put
out ?
Joints:
End Effector
2 DOFs
Robot Basis
Joints.
Prismatic Link
Joints.
Revolute Link
Homogeneous Coordinates
Homogeneous coordinates: embed 3D
vectors into 4D by adding a 1
More generally, the transformation matrix T
has the form:
Rot. Matrix
Trans. Vector
T
sf
It is presented in more
detail on the WWW!
Direct Kinematics
Where is my hand?
Direct Kinematics:
HERE!
Direct Kinematics
Position of tip in (x,y) coordinates
Adjust to changing conditions i.e. when something is picked up respond to the change
in weight
Inverse
Kinematics
How do I put my
hand here?
Difficult to visualize
Inverse Kinematics
Given x and y we can compute t1 and t2
t2 = acos[(x^2 + y^2 - L1^2 - L2^2)/(2*L1*L2)]
This gives us two values for t2, now one can compute the two
corresponding values of t1.
See next slide
Inverse Kinematics
A Dynamic Simulator
= kinematics + force modeling
Building blocks
of
masses
springs
muscles
www.sodaconstructor.com
Wheeled Robots
~ 1.5 cm to a side
temperature sensor & two motors
travels 1 inch in 3 seconds
untethered !!
Khepera
linear vision
gripper
Cricket
Accessorize!
video
Kinematics of
Differential
drive
VL
VR
VL
2d
VR
VL
2d
VR
VL
2d
VR
ICC instantaneous center of
curvature
= angular velocity
VL
2d
VR
VL
x
2d
VR
ICC
R+d) = VL
R-d) = VR
VL
x
2d
VR
ICC
ICC
R+d) = VL
R-d) = VR
Thus,
= ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )
VL
x
2d
VR
ICC
R+d) = VL
R-d) = VR
Thus,
= ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )
V = R = ( VR + VL ) / 2
Vx = V(t) cos((t))
(t)
V(t)
Vy = V(t) sin((t))
(t)
VL
x
2d
VR
ICC
Vx
ICC
R(t)
with
= ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )
V = R = ( VR + VL ) / 2
Vx = V(t) cos((t))
(t)
Vy = V(t) sin((t))
Thus,
VL
x(t) =
x
2d
y(t) =
(t) =
VR
V(t) cos((t)) dt
V(t) sin((t)) dt
(t) dt
ICC
R(t)
with
= ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )
V = R = ( VR + VL ) / 2
Vx = V(t) cos((t))
speed
Vy = V(t) sin((t))
(t)
Thus,
VL
x
2d
VR
(t) dt
ICC
Kinematics
R(t)
with
= ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )
V = R = ( VR + VL ) / 2
Kinematics of
Synchro
drive
Vrobot = Vwheels
robot = wheels
velocity
x
Vwheels
(t) = (t) dt
position
Lego Synchro
Inverse Kinematics
Key question:
y
VL (t)
VR(t)
starting position
final position
Inverse Kinematics
Key question:
y
VL (t)
VR(t)
starting position
final position
Inverse Kinematics
Key question:
y
VL (t)
VR(t)
starting position
final position
Inverse Kinematics
Key question:
y
VL (t)
= (t) dt
= ( VR - VL ) / 2d
V = R = ( VR + VL ) / 2
VR(t)
starting position
final position
Inverse Kinematics
Key question:
VL (t)
VR(t)
starting position
final position
quickest time
most energy
efficient
smoothest velocity
profiles
VL (t)
VL (t)
Inverse Kinematics
Usual approach: decompose the problem and control
only a few DOF at a time
Differential Drive
VL (t)
VR(t)
starting position
final position
Inverse Kinematics
Usual approach: decompose the problem and control
only a few DOF at a time
Differential Drive
(1) turn so that the wheels are
parallel to the line between the
original and final position of the
robot-Vorigin.
(t) = V (t) = V
VL (t)
VR(t)
starting position
final position
max
Inverse Kinematics
Usual approach: decompose the problem and control
only a few DOF at a time
Differential Drive
(1) turn so that the wheels are
parallel to the line between the
original and final position of the
robot-Vorigin.
(t) = V (t) = V
VR(t)
starting position
max
VL (t)
final position
Inverse Kinematics
Usual approach: decompose the problem and control
only a few DOF at a time
Differential Drive
(1) turn so that the wheels are
parallel to the line between the
original and final position of the
robot-Vorigin.
(t) = V (t) = V
VR(t)
starting position
max
VL (t)
final position
VL (t)
VR (t)
V(t)
max
V(t) = Vmax
(t)
final position
starting position
(t) = max
Mecos tricycle-drive
Four-wheel
Steering
The kinematic challenges of parallel parking:
wheels have limited turning angles
VFL
no in-place rotation
VFR
VBL
VBR
Ackerman Steering
L
VFL
VFR
g
VBL
d
VBR
x
r
IC
C
g
+d
tan(R)
g
sin(R)
VFR
determines
Ackerman Steering
L
VFL
VFR
g
VBL
g
+d
tan(R)
g
sin(R)
VFR
determines
g
sin(L)
d
VBR
VFL
L = tan-1(g / (r + d))
x
r
(r - d) =
VBR
(r + d) =
VBL
IC
C
5 link trailer
2 controlled angles
nonholonomicity
All of the robots mentioned share an important
(if frustrating) property: they are
nonholonomic .
- makes it difficult to navigate between two arbitrary points
- need to resort to techniques like parallel parking
nonholonomicity
Holonomic Robots
Navigation is simplified considerably if a robot can move
instantaneously in any direction, i.e., is holonomic.
Omniwheels
Mecanum wheels
Holonomic Robots
Nomad XR4000
Killoughs Platform
synchro drive with offsets
from the axis of rotation
Holonomic hype
Holonomic
Hype
Holonomic Hype
Robot Manipulators
Is this robot holonomic ?
A robot holonomic if it
can move instantaneously in any direction.
Robot Manipulators
Is this robot holonomic ?
No - it cant move at all
Yes - its end effector (a point) can translate
instantaneously in the x or y directions
Maybe - actually, in some cases the
end effector is constrained...
Robot
Manipulators
Robot
Manipulators
Is this robot holonomic ?
No - it cant move at all
Yes - its end effector (a point) can translate
instantaneously in the x or y directions
Maybe - actually, in some cases the
end effector is constrained...
Joint
Angles
Kinematics
Useful
Tasks
Robot Manipulators
Forward kinematics -- finding Cartesian coordinates from joint angles
start by finding the position relationships, then velocity
Inverse Kinematics
Inverse kinematics -- finding joint angles from Cartesian coordinates
Types of Manipulators
Basic distinction: what kinds of joints extend from base to end.
RR or 2R
PR arm
Prismatic Joints
Ninja
Ambler
tomato
harvester
Challenges
1. Modeling many degrees of freedom
2. No closed-form solution guaranteed for the inverse
kinematics.
3. Trajectory generation under nonholonomic constraints
4. Navigating with obstacles
obstacle
go
al
Challenges
Multiple solutions (or no solutions) for a task.
Challenges
Multiple solutions (or no solutions) for a task.
Opportunities
Direct kinematic/ inverse kinematic
modeling - is the basis for
control of the vast majority of industrial
robots.
Accurate (inverse) kinematic models are
required in order to create believable
character animations
Configuration Space
To get from place A to place B, we need a
standardized notion of place :
Configuration Space is a space representing robot pose.
The dimensionality of C.S. is equal to the robots degrees of freedom.
Examples:
The Nomad robot (discounting orientation) has a planar
configuration space representing the (x,y) coordinates of the robots
center.
The Nomad robot including orientation
The 2R manipulator depicted earlier ...
topological
properties
To be discussed:
Impinging on robots space:
Perspective
If your robot doesnt do what you want ...
Dynamics
of a one link arm
Control Techniques
P, PD, PID
We will illustrate
Impedance control
force and position
PD Control of a One-Link
Arm
solution
c1
c2
c1
c2
Advanced Manipulation
Other types of manipulation researched:
carefully controlling force, as in grasping fragile objects
and maintaining contact with a surface (so-called
compliant motion).
Problems to solve.
1. Draw kinematics models of various animals and calculate
the total DOFs.
2. Give examples (drawings) of holonomic, non-holonomic
and redundant mobile robots that you can build using
standard components that you can find in the lab.
3. Compare the kinematics of differential drive, the synchro
drive and the four wheel steering.
4. Give examples (drawings) of holonomic, non-holonomic
and redundant robot arms that you can build using standard
components that you can find in the lab.
Next Time(s)
Inverse kinematics: what we would really like to know ...
Sources