021 Kinematics Inverse Kinematics Manipulation

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 107

Movement of

robots and
introduction to
kinematics of robots
• Kinematics: constraints on
getting around the environment

kinematics

The effect of a robot’s


geometry on its motion.

wheeled
platforms

from sort of simple to manipulator


sort of difficult modeling
Effectors and Actuators
• An effector is any device that affects the environment.
• A robot's effector is under the control of the robot.
• Effectors:
– legs,
– wheels,
– arms,
– fingers.
• The role of the controller is to get the effectors to produce
the desired effect on the environment,
– this is based on the robot's task.
Effectors and Actuators
• An actuator is the actual mechanism that enables the
effector to execute an action.
• Actuators typically include:
include
– electric motors,
– hydraulic cylinders,
– pneumatic cylinders,
– etc.
• The terms effector and actuator are often used
interchangeably to mean "whatever makes the robot take an
action."
• This is not really proper use:
– Actuators and effectors are not the same thing.
– And we'll try to be more precise.
Review: degrees of freedom
• Most simple actuators control a single degree of freedom,
• i.e., a single motion (e.g., up-down, left-right, in-out, etc.).

– A motor shaft controls one rotational degree of freedom, for example.


– A sliding part on a plotter controls one translational degree of freedom.
• How many degrees of freedom (DOF) a robot has is very important in
determining how it can affect its world,
– and therefore how well, if at all, it can accomplish its task.
• 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.

When you design a robot your first task is decide the


number of DOF and the geometry.
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).
• You need to know, for a given effector (and actuator/s):
– how many DOF are available to the robot,
– how many total DOF any given robot has.
• If there is an actuator for every DOF, then all of the DOF
are controllable.
• Usually not all DOF are controllable, which makes robot
control harder.
To demonstrate, use a pen
in your hand…..
DOF and controllable DOFs
• A car has 3 DOF:
– position (x,y) and
– orientation (theta).
• But only 2 DOF are controllable:
– driving: through the gas pedal and the forward-reverse gear;
– steering: through the steering wheel.
• Since there are more DOF than are controllable, there
are motions that cannot be done.
• Example of such motions is moving sideways (that's
why parallel parking is hard).
One Minute Test
• How many
degrees of
freedom does
your hand have,
with your
forearm fixed in
position?
• (Hint: It’s not 6)

Answer
on next
slide
Degrees of Freedom in Hand
Part DoF Comment
Wrist 2 1. Side-to-side
2. Up-down
Palm 1 1. Open-close a little
Fingers 4*4 1. 2 @ base (Up-down & side-to-side)
2. 1 @ each of two joints
Thumb 4 1. 2 @ base (attached to wrist)
2. 2 @ visible joints
Total 23
Total and Controllable DOFs
y
• Kinematics: wheeled platforms vs. robot arms (or legs)
x

VL

VR

• We need to make a distinction between what an actuator does


(e.g., pushing the gas pedal) and what the robot does as a result
(moving forward).
• A car can get to any 2D position but it may have to follow a very
complicated trajectory.
• Parallel parking requires a discontinuous trajectory with respect
to the velocity.
• It means that the car has to stop and go.
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 <= > Controllable DOF = total DOF


DOF versus types of robots
Non-Holonomic <= > Controllable DOF < total DOF

• If the number of controllable DOF is smaller


than total DOF, the robot is non-holonomic.
• If the number of controllable DOF is larger
than the total DOF, the robot is redundant.
(like a human hand, we did not build such
robot yet)
Redundant <= > Controllable DOF > total DOF
DOF for animals
• A human arm has 7 DOF:
– 3 in the shoulder,
– 1 in the elbow,
– 3 in the wrist
• All of which can be controlled.
• A free object in 3D space (e.g., the hand, the finger tip) can
have at most 6 DOF!
• So there are redundant ways of putting the hand at a
particular position in 3D space.
• This is the core of why robot manipulation is very hard!

One minute test!


JAPAN HONDA AND
SONY ROBOTS

• Pino, a 70-centimeter (2-foot)-tall and 4.5-kilogram (9-pound)


humanoid robot designed by Japan Science and Technology Corporation in
Tokyo which can walk on its legs and respond to stimulation through a sensor,
shakes hand with Malaysia's Prime Minister Mahathir Mohamad during the
opening of the Expo Science & Technology 2001 in Kuala Lumpur, Malaysia,
Monday, July 2, 2001. (AP Photo/Andy Wong)
Question: how many DOF?
98 degrees (of freedom)
• This is in any case simplified
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.
• So imagine having to touch a specific point in 3D
space with the tip of your index finger;
– that's what a typical manipulator has to do.
Issues in Manipulation
• In addition: manipulators need to:
– grasp objects,
– move objects.
– But those tasks are extensions of the basic reaching discussed
above.
• The challenge is to get there efficiently and safely.
• Because the end effector is attached to the whole arm, we
have to worry about the whole arm:
– the arm must move so that it does not try to violate its own joint
limits,
– it must not hit itself or the rest of the robot, or any other obstacles
in the environment.
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
Manipulation and Teleoperation: Human
Interface

• One alternative today is to put the human arm


into an exo-skeleton, in order to make the
control more direct.
• Using joy-sticks, for example, is much harder
for high DOF.
Exo-skeletons used in “Hollywood Robotics”
Why is using joysticks so hard?
• Because even as we saw with locomotion, there is typically
no direct and obvious link between:
– what the effector needs to do in physical space
– and what the actuator does to move it.
• In general, the correspondence between actuator motion
and the resulting effector motion is called kinematics.
• In order to control a manipulator, we have to know its
kinematics:
– 1. what is attached to what,
– 2. how many joints there are,
– 3. how many DOF for each joint,
– etc.
Basic Problems for Manipulation
• Kinematics
 Given all the joint angles - where is the tip ?
• 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 ?
Kinematics versus Inverse Kinematics
• We can formalize all of this mathematically.
– To get an equation which will tell us how to convert
from, say, angles in each of the joints, to the
Cartesian positions of the end effector/point is called:
• computing the manipulator kinematics
– The process of converting the Cartesian (x,y,z)
position into a set of joint angles for the arm (thetas)
is called:
• inverse kinematics.
Something for lovers of math and
programming! Publishable! LISP
Links and Joints

Links

Joints:

End Effector

2 DOF’s

Robot Basis
Joints.
• Joints connect parts of manipulators.
• The most common joint types are:
– revolute link (rotation around a fixed axis)
– prismatic link (linear movement)

• These joints provide the DOF for an effector.

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  
 Perspect. Trans. Scaling Factor 
a11 a12 a13 b1
a21 a22 a23 b2
It is presented in more
a31 a32 a33 b3 detail on the WWW!
c1 c2 c3 sf
Terms for manipulation
• Links and joints
• End effector, tool
• Accuracy vs. Repeatability
• Workspace
• Reachability
• Manipulability
• Redundancy
• Configuration Space
Direct Kinematics
Where is my hand?

Direct Kinematics:
HERE!
Direct Kinematics
• Position of tip in (x,y) coordinates
Direct Kinematics Algorithm
1) Draw sketch
2) Number links. Base=0, Last link = n
3) Identify and number robot joints
4) Draw axis Zi for joint i
5) Determine joint length ai-1 between Zi-1 and Zi
6) Draw axis Xi-1
7) Determine joint twist i-1 measured around Xi-1
8) Determine the joint offset di
9) Determine joint angle i around Zi
10+11) Write link transformation and concatenate
Kinematic Problems for
Manipulation
• Reliably position the tip - go from one position to
another position
• Don’t hit anything, avoid obstacles
• Make smooth motions
– at reasonable speeds and
– at reasonable accelerations
• 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?

IK: Choose these angles!


Why is using inverse kinematics so hard?
• Inverse kinematics is computationally intense.
 functions are nonlinear and complex , especially for higher dimensions than 2
• Difficult to visualize
• Large number of inverse kinematics solutions due to redundancy
• Large computational burden

• And the problem is even harder if the manipulator (the arm)


is redundant.
• Manipulation involves:
 trajectory planning (over time)
 inverse kinematics
 inverse dynamics
 dealing with redundancy
Direct versus Inverse
Kinematics
• Direct Kinematics
 x = L1*cos(t1) + L2*cos(t1+t2)
 y = L1* sin(t1) + L2*sin(t1+t2)
 Given the joint angles t1 and t2 we can compute the position of the tip
(x,y)

• 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
One of many problems:
There may be multiple solutions

 Elbow down - Elbow up


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 !!
Other mini machines
Pocketbot

55mm dia. base

radio unit

linear vision
Khepera
gripper

“Cricket”
video
Accessorize!
Kinematics of
Differential
drive
Kinematics of Differential drive
Differential Drive is the most
common kinematic choice - difference in wheels’ speeds
All of the miniature robots… determines its turning angle
Pioneer, Rug warrior

Questions (forward kinematics)


Given the wheel’s velocities or positions,
VL what is the robot’s velocity/position ?
Are there any inherent system constraints?
VR
1) Specify system measurements
2) Determine the point (the radius) around
which the robot is turning.
3) Determine the speed at which the robot is
turning to obtain the robot velocity.
4) Integrate to find position.
Kinematics of Differential drive
1) Specify system measurements
y - consider possible coordinate systems

VL
x

2d
VR

(assume a wheel radius of 1)


Kinematics of Differential drive
1) Specify system measurements
y - consider possible coordinate systems
2) Determine the point (the radius) around
which the robot is turning.

VL
x

2d
VR

(assume a wheel radius of 1)


Kinematics of Differential drive
1) Specify system measurements
y - consider possible coordinate systems
2) Determine the point (the radius) around
which the robot is turning.
- to minimize wheel slippage, this point
(the ICC) must lie at the intersection of the
wheels’ axles
VL
x - each wheel must be traveling at the same
 angular velocity
2d
VR
ICC “instantaneous center of curvature”

 = angular velocity
(assume a wheel radius of 1)
Kinematics of Differential drive
1) Specify system measurements
y - consider possible coordinate systems
2) Determine the point (the radius) around
 which the robot is turning.
- to minimize wheel slippage, this point
(the ICC) must lie at the intersection of the
wheels’ axles
VL
x - each wheel must be traveling at the same
 angular velocity around the ICC
2d
VR
ICC “instantaneous center of curvature”

(assume a wheel radius of 1)


Kinematics of Differential drive
1) Specify system measurements
y - consider possible coordinate systems
2) Determine the point (the radius) around
 which the robot is turning.
- each wheel must be traveling at the same
angular velocity around the ICC
VL 3) Determine the robot’s speed around the
x
ICC and its linear velocity
2d
VR
ICC
R+d) = VL
R
robot’s turning radius R-d) = VR

(assume a wheel radius of 1)


Kinematics of Differential drive
1) Specify system measurements
y - consider possible coordinate systems
2) Determine the point (the radius) around
 which the robot is turning.
- each wheel must be traveling at the same
angular velocity around the ICC
VL 3) Determine the robot’s speed around the
x
ICC and then linear velocity
2d
VR ICC “instantaneous center of curvature”

ICC
R+d) = VL
R
robot’s turning radius R-d) = VR

Thus,
 = ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )
(assume a wheel radius of 1)
Kinematics of Differential drive
1) Specify system measurements
y - consider possible coordinate systems
2) Determine the point (the radius) around
 which the robot is turning.
- each wheel must be traveling at the same
angular velocity around the ICC
VL 3) Determine the robot’s speed around the
x
ICC and then linear velocity
2d
VR
ICC
R+d) = VL
R
robot’s turning radius R-d) = VR

Thus,
 = ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )
So, the robot’s velocity is V = R = ( VR + VL ) / 2
Kinematics of Differential drive
4) Integrate to obtain position
y
Vx = V(t) cos((t))
(t) Vy = V(t) sin((t)) V(t)

(t)
VL Vx
x
2d
VR ICC “instantaneous center of curvature”
ICC
R(t)
robot’s turning radius
with
 = ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )

What has to happen to change the ICC ? V = R = ( VR + VL ) / 2


Kinematics of Differential drive
4) Integrate to obtain position
y
Vx = V(t) cos((t))
(t) Vy = V(t) sin((t))
Thus,

VL
x(t) = ∫ V(t) cos((t)) dt
x y(t) = ∫ V(t) sin((t)) dt
2d (t) = ∫ (t) dt
VR
ICC
R(t)
robot’s turning radius
with
 = ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )
V = R = ( VR + VL ) / 2
Kinematics of Differential drive
Velocity Components
y speed
Vx = V(t) cos((t))

(t) Vy = V(t) sin((t))


Thus,

x(t) =  V(t) cos((t)) dt


VL
x y(t) =  V(t) sin((t)) dt
2d
VR (t) =  (t) dt
ICC
R(t) Kinematics
robot’s turning radius
with
 = ( VR - VL ) / 2d
R = 2d ( VR + VL ) / ( VR - VL )

What has to happen to change the ICC ? V = R = ( VR + VL ) / 2


Kinematics of
Synchro
drive
Kinematics of Synchro drive
Nomad 200 wheels rotate in tandem and remain parallel

all of the wheels are driven at the same speed

Where is the ICC ?


Kinematics of Synchro drive
wheels rotate in tandem and remain parallel
Nomad 200 all of the wheels are driven at the same speed
ICC at  y
Vrobot = Vwheels
velocity
  robot = wheels
x
Vwheels (t) =  (t) dt
x(t) =  Vwheels(t) cos((t)) dt position

y(t) =  Vwheels(t) sin((t)) dt

simpler to control, but ...


Kinematics of Synchro drive
wheels rotate in tandem and remain parallel
Nomad 200 all of the wheels are driven at the same speed

Question (forward kinematics)


Given the wheel’s velocities or positions,
what is the robot’s velocity/position ?
Are there any inherent system constraints?

1) Choose a robot coordinate system


2) Determine the point (the radius) around
which the robot is turning.
3) Determine the speed at which the robot is
turning to obtain the robot velocity.
4) Integrate to find position.
Lego Synchro

this light sensor follows the direction of


the wheels, but the RCX is stationary

also, four bump sensors and two motor


encoders are included

more difficult to build.


But how do we get somewhere?
Inverse Kinematics
Given a desired position or velocity,
Key question: what can we do to achieve it?

VL (t) x

VR(t)

starting position final position


Inverse Kinematics
Given a desired position or velocity,
Key question: what can we do to achieve it?

VL (t) x

VR(t)

starting position final position


Inverse Kinematics
Given a desired position or velocity,
Key question: what can we do to achieve it?

VL (t) x

VR(t)

starting position final position


Inverse Kinematics
Given a desired position or velocity,
Key question: what can we do to achieve it?

y Need to solve these equations:


x =  V(t) cos((t)) dt
y =  V(t) sin((t)) dt
VL (t) x
 =  (t) dt
VR(t)  = ( VR - VL ) / 2d
V = R = ( VR + VL ) / 2
starting position final position
for VL (t) and VR(t) .

There are lots of solutions...


Inverse Kinematics
Given a desired position or velocity,
Key question: what can we do to achieve it?

y Finding some solution is not


hard, but finding the “best”
solution is very difficult...
VL (t) x • quickest time
• most energy efficient
VR(t) • smoothest velocity
starting position profiles
final position

VL (t)

VL (t) t

It all depends on who gets to define “best”...


Inverse Kinematics
Usual approach: decompose the problem and control
only a few DOF at a time
Differential Drive

VL (t) x

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
y position of the robot origin.
-VL (t) = VR (t) = Vmax

VL (t) x

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
y position of the robot origin.
-VL (t) = VR (t) = Vmax
(2) drive straight until the robot’s origin
coincides with the destination
VL (t) x
VL (t) = VR (t) = Vmax
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
y position of the robot origin.
-VL (t) = VR (t) = Vmax
(2) drive straight until the robot’s origin
coincides with the destination
VL (t) x
VL (t) = VR (t) = Vmax
VR(t) (3) rotate again in order to achieve the
desired final orientation
starting position final position -VL (t) = VR (t) = Vmax
VL (t)
VR (t) t
Inverse Kinematics of Synchro Drive
Usual approach: decompose the problem and control
only a few DOF at a time
Synchro Drive
(1) turn so that the wheels are parallel to
the line between the original and final
position of the robot origin.
y V(t)
(t) = max
(2) drive straight until the robot’s origin
coincides with the destination
x
V(t) = Vmax
(t) (3) rotate again in order to achieve the
desired final orientation
final position
(t) = max
starting position

sometimes it’s not so easy to isolate one or two DOF...


Other wheeled robots
tricycle drive

Ackerman drive

Doubly-steered bicycle

one more -- that roaming desk

one more -- that roaming tatami mat


(holonomic) & the XR4000
Kinematics of Tricycle drive
• back wheels tag along... • front wheel is powered and steerable

Mecos tricycle-drive robot


Four-wheel
Steering
The kinematic challenges of parallel parking:
• wheels have limited turning angles
VFL
• no in-place rotation
• small space for parking and maneuvers
VFR

VBL

VBR
Ackerman Steering
L • Similar to a tricycle-drive robot
R
g
VFL y r = +d
tan(R)
g
VFR sin(R) = VFR
determines 
g

VBL d
d
VBR

r ICC
Ackerman Steering
L • Similar to a tricycle-drive robot
R
g
VFL y r = +d
tan(R)
g
VFR sin(R) = VFR
determines 
g
The other wheel velocities are now fixed!

VBL d g
d sin(L) = VFL
VBR
L = tan-1(g / (r + d))
x (r - d) = VBR
(r + d) = VBL
r ICC

But this is just the cab...


The Big Rigs
Applications

5 link trailer
2 controlled angles

Parking two trailers


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
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

By definition, a robot is nonholonomic if it can not move to


change its pose instantaneously in all available directions.

i.e., the robot’s differential motion is constrained.

Synchro Drive
two DOF are freely
controllable; the third is
inaccessible
Holonomic Robots
Navigation is simplified considerably if a robot can move
instantaneously in any direction, i.e., is holonomic.

Omniwheels Mecanum wheels

tradeoffs in locomotion/wheel design if it can be done at all ...


Holonomic Robots

Nomad XR4000
Killough’s Platform
synchro drive with offsets
from the axis of rotation
Holonomic Hype
Holonomic hype

“The PeopleBot is a highly holonomic


platform, able to navigate in the
tightest of spaces…”
Holonomic Hype

Discover ‘97 -- Top 10 Innovation

Sage -- a museum tour guide


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 can’t 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 can’t 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...

Holonomic or not, the kinematics are vital to using a robot limb...

Joint Useful
Kinematics
Angles 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

All manipulators can be represented as chains of P


(prismatic) and R (rotational) joints.
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

goal
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

how would these


things bike?
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 robot’s degrees of freedom.

Examples:
• The Nomad robot (discounting orientation) has a planar
configuration space representing the (x,y) coordinates of the robot’s
center.
• The Nomad robot including orientation …
topological
• The 2R manipulator depicted earlier ... properties
To be discussed:
Impinging on robots’ space: the next (but not final) frontier

Getting from point A to point B


robot navigation via path planning
full-knowledge techniques

insect-inspired algorithms
Perspective
If your robot doesn’t do what you want ...

… you can always change what you’re looking for.


Dynamics
of a one link arm

• This differential equation can be solved to figure out


what acceleration results from a particular given torque.
Control Techniques
We will illustrate
• P, PD, PID
 simple, easy to implement
• Impedance control
 force and position
• Advanced control techniques
 robust,
 sliding mode,
 nonlinear etc.,
 neural network based,
 fuzzy logic based
 etc.
PD Control of a One-Link Arm
PD Control of a One-Link
Arm

solution
Research Issues in Manipulators
• Manipulators are well studied
• Lots of hard problems (we’ve barely
scratched the surface)
• Modern techniques involve trying to use:
– some of the kinematics
– some of the dynamics of manipulators
– sophisticated control theory
– some learning
Navigation and Motion
Planning 1 very little
freedom

c1

c2

c1 c2
• There is a similarity of planning movement of a hand and of a mobile robot
Vertical Strip Cell Decomposition
Manipulation - Challenge for
roboticists!
• This is a challenging area of robotics.
– We will cover it briefly in several lectures next quarter
• Manipulators are effectors.
• Joints connect parts of manipulators.
• The most common joint types are:
– rotary (rotation around a fixed axis)
– prismatic (linear movement)
• These joints provide the DOF for an effector, so they are
planned carefully - kicking a ball in hexapod soccer?
More Challenges for roboticists!
• Robot manipulators can have one or more of each of
those joints.
• Now recall that any free body has 6 DOF;
– that means in order to get the robot's end effector to an
arbitrary position and orientation,
– the robot requires a minimum of 6 joints.
• As it turns out, the human arm (not counting the
hand!) has 7 DOF.
– That is sufficient for reaching any point with the hand,
– It is also redundant, meaning that there are multiple ways
in which any point can be reached.
More Challenges for roboticists!
• This is good news and bad news;
– the fact that there are multiple solutions means that there is a
larger space to search through to find the best solution.
• Now consider end effectors.
• They can be:
– simple pointers (i.e., a stick),
– simple 2D grippers,
– screwdrivers for attaching tools (like welding guns, sprayer, etc.),
– or can be as complex as the human hand,
hand with variable numbers
of fingers and joints in the fingers.
Reaching and Grasping
• Food for thought: how many DOF are there in the
human hand?
• Problems like reaching and grasping in manipulation
constitute entire subareas of robotics and AI.
• Issues include:
– finding grasp-points (centers of gravity - COG, friction, etc.);
– force/strength of grasp;
– compliance (e.g., in sliding, maintaining contact with a surface);
– dynamic tasks (e.g., juggling, catching).
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).
• Dynamic manipulation tasks:
– juggling,
– throwing,
– catching, etc.,
are already being demonstrated on robot arms.
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 ...

Examining robots’ space: the next (but not final) frontier

Getting from point A to point B


robot navigation via path planning

full-knowledge techniques and insect-inspired algorithms


Sources
• Prof. Maja Mataric
• Dr. Fred Martin
• Bryce Tucker and former PSU students
• A. Ferworn,
• Prof. Gaurav Sukhatme, USC Robotics Research Laboratory
• Paul Hannah
• Reuven Granot, Technion
• Dodds, Harvey Mudd College

You might also like