locomotion and locomotion locomotion and...
TRANSCRIPT
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Locomotion and Manipulation Locomotion
Amir Degani
Intro to Robotics – CS - Technion Winter 2012
1 Parts of slides taken from Howie Choset and Matt Mason
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Today’s outline
• Locomotion and Manipulation Duality
• Locomotion Classification
• Wheeled machines Diff drive
Skid Steering
Omni wheels
Tricycle
Ackerman
• Non-holonomic constraints
• Legged Robots Static vs. Dynamic
Passive Dynamics
• Climbing Robots
2
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Locomotion and Manipulation - Duality
3
Manipulation Locomotion
Moving “yourself” from place to place
Moving an object from place to place
Is a person walking on a globe or person is manipulating the globe with his feet
The two objects are moving relative to each other
Loaned in part from Mark Yim: http://ai.stanford.edu/users/mark/loco-loco.html
cars, trains, horses walking, a baby crawling, earthworms digging
Hand manipulation Robotics manipulators Juggling
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Locomotion and Manipulation - Duality
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Robotic Locomotion Classification
5
Ground Air Water
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Robotic Locomotion Classification
6
Wheeled Legged
Ground
What about Rhex? or ModSnake?
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Robotic Locomotion Classification
7
Ground
S.Roland, Introduction to autonomous mobile robots, , pp. 12-45, 2004
Legged
Wheeled on hard ground
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Wheeled machines
Airtrax – omnidirectional forklift
Crusher - Carnegie Mellon University
8
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Differential Drive
9
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Differential Drive
10 Planning Algorithms, Steven M. LaValle, 2006 Great online book!
𝑢 = 𝑢𝑟 , 𝑢𝑙 Angular wheel velocities of right and left wheels
𝑢𝑟 = 𝑢𝑙 > 0 𝑢𝑙 = −𝑢𝑟 ≠ 0
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Differential Drive
11 Planning Algorithms, Steven M. LaValle, 2006 Great online book!
𝑢𝑟 = 𝑢𝑙 > 0 𝑢𝑙 = −𝑢𝑟 ≠ 0
𝑥 =𝑟
2𝑢𝑙 + 𝑢𝑟 cos 𝜃
𝑦 =𝑟
2𝑢𝑙 + 𝑢𝑟 𝑠𝑖𝑛 𝜃
𝜃 =𝑟
𝐿𝑢𝑟 − 𝑢𝑙 .
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Differential Drive (continued)
Advantages:
• Cheap to build
• Easy to implement
• Simple design
Disadvantages:
• Difficult straight line motion
12
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Problem with Differential Drive: Knobbie Tires
Changing diameter makes for uncertainty in dead-reckoning error
Pictures from “Navigating Mobile Robots: Systems and Techniques” Borenstein, J.
13
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Skid Steering
Advantages: •Simple drive system Disadvantages: •Slippage and poor odometry results •Requires a large amount of power to turn
MachineLAbs MMP-15 14
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Omni Wheels
Advantages: •Allows complicated motions
Disadvantages: •No mechanical constraints to require straight-line motion •Complicated implementation
Pictures from “Navigating Mobile Robots: Systems and Techniques” Borenstein, J.
Morevac
Moravac
Airtrax 15
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Tricycle
Advantages: •No sliding
Disadvantages: •Non-holonomic planning required
Pictures from “Navigating Mobile Robots: Systems and Techniques” Borenstein, J.
16
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Ackerman Steering
Advantages: Simple to implement •Simple 4 bar linkage controls front wheels
Disadvantages: •Non-holonomic planning required
17
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Non-holonomic constraint
So what does that mean? Your robot can move in some directions (forwards and backwards), but not others (side to side).
The robot can instantly move forward and back, but can not move to the right or left without the wheels slipping.
To go to the right, the robot must first turn, and then drive forward
Taken from Principles of Robot Motion – Choset et al. MIT press 2005 And Matt Mason’s Mechanics of Manipulation
18
Definition: A non-holonomic constraint is a limitation on the allowable velocities of an object
This is most easily seen in wheeled robots.
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Holonomic constraints
• Holonomic means the constraints can be written as equations independent of
• A mobile robot with no constraints is holonomic. • A mobile robot capable of arbitrary planar
velocities is holonomic. • A mobile robot capable of only translations is
holonomic.
q( , ) 0f q t
Holonomic does not mean unconstrained!!!
Definition (Holonomic constraint) A kinematic constraint is a holonomic constraint if it can be expressed in the form
( , ) 0f q t
19
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Holonomic constraints
Definition (Holonomic constraint) A kinematic constraint is a holonomic constraint if it can be expressed in the form
( , ) 0f q t
• Suppose we have a constraint of the form:
Is it non-holonomic?
• Perhaps it can be expressed as
• in which case we say the constraint is integrable. It’s a holonomic constraint, disguised as a nonholonomic constraint.
20
𝑓 𝑞, 𝑡 = 0
𝑓 𝑞, 𝑞 , 𝑡 = 0
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Non-holonomic constraint: The Unicycle
,
x x
q y q y
sin cos 0x y
( ) (sin , cos , 0 )w q
( ) 0w q q
nonholonomic constraint:
[sin cos 0 ] sin cos 0x x y
Non-integrable constraint
The unicycle cannot move sideways.
21
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
1
cos
sin
0
g
0
2 0
1
g
Rolling forward at unit speed Spinning counterclockwise at unit speed
1 2u u 1 2
q g g
Non-holonomic constraint: The Unicycle
The robot has two controls. How Many freedoms?
are the controls 1 2,u u R
x y
x y
22
,
x x
q y q y
The unicycle can move in two directions:
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Lie Bracket
Definition (Lie Bracket) Let g1,g2 be two vector fields on C. Define the Lie bracket [g1,g2] to be the vector field
2 11 2 1 2[ , ]
g gg g g g
q q
23
What are 𝜕𝑔1
𝜕𝑞 and
𝜕𝑔2
𝜕𝑞?
Matrices! Each column is partial of velocity w.r.t. configuration variable.
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
x y
x y
Non-holonomic constraint: The Unicycle
1
cos
sin
0
g
0
2 0
1
g
Rolling forward at unit speed Spinning counterclockwise at unit speed
2 11 2 1 2Lie Bracket: [ , ]
g gg g g g
q q
1 2
0 0 0 cos 0 0 sin 0
[ , ] 0 0 0 sin 0 0 cos 0
0 0 0 0 0 0 0 1
g g
1
0 0 sin
0 0 cos
0 0 0
g
q
2
0 0 0
0 0 0
0 0 0
g
q
sin
cos
0
24
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
x y
x y
Non-holonomic constraint: The Unicycle
• Physically, this new lie bracket moves sideways.
• It is linearly independent of 𝑔1and 𝑔2 and it violates the constraint 𝑤.
• Physical significance and why is it important in robotics?
25
0
2 0
1
g
Rolling forward at unit speed Spinning counterclockwise at unit speed
2 11 2 1 2Lie Bracket: [ , ]
g gg g g g
q q
1
cos
sin
0
g
sin
cos
0
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
x y
x y
Non-holonomic constraint: The Unicycle 0
2 0
1
g
Rolling forward at unit speed Spinning counterclockwise at unit speed
2 11 2 1 2Lie Bracket: [ , ]
g gg g g g
q q
1
cos
sin
0
g
y
x
sin
cos
0
y
x
26
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
x y
x y
Non-holonomic constraint: The Unicycle 0
2 0
1
g
Rolling forward at unit speed Spinning counterclockwise at unit speed
The Lie Brackets tells us if infinitesimal motions along these vector fields can be used to locally generate motion in a direction not contained in “original field”
2 11 2 1 2Lie Bracket: [ , ]
g gg g g g
q q
1
cos
sin
0
g
y
x
y
x
sin
cos
0
27
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Wheeled machines
• Problems with wheeled machines:
Maneuverability
Stability
Controllability
28
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Legged Robots: Stability – Static vs. Dynamic
29
Leg Lab – Marc Raibert Honda Asimo
Dynamic Quasi-static
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Walking/running machines
30
1 legged hoppers
From: Sayyad Single-legged hopping robotics research—A review Robotica 2007
Raibert’s 3D experimental prototype of one-legged hopping robot (Raibert, Brown)
Uniroo—Zeglin
ARL Monopod-I.
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Walking/running machines
Boston Dynamics – Big Dog
31
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Walking/running machines
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Walking/running machines
Boston Dynamics LS3 400lbs, 20Miles, quiet…
4,700,000 Youtube hits!
33
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Legged wheels
Rhex
Whegs 34
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Passive Dynamic Walkers
35
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Passive Dynamic Walkers
36
Collins, S. H., Wisse, M., Ruina, A., Cornell, 2001
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Adhesive: Suction/Magnet/
”Electro-adhesion”, “Dry–adhesion”…
Spines “Grasping”/ ”Bracing”
“Brute force” grippers
Climbing Locomotion
37
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Dynamics? Why? Maneuverability/Agility
38
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Dynamics? Why Not?
39
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Dynamics? Why? Minimalism
40
Vs.
g
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Mechanism overview
41
Simulation – WorkingModel 2DTM
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Experimental setup
42
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Proof-of-concept Experiments
43
High friction/damping Low friction/damping
Low friction/damping
High friction/damping
Period-1 Period-2
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Extensions – Miniature Tube Climber
44
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Part Feeding
45
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Part Feeding
46
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
ParkourBot
47
Guest Lecture. Locomotion and
Manipulation
• Locomotion and Manipulation Duality • Locomotion Classification • Wheeled machines • Diff drive • Skid Steering • Omni wheels • Tricycle • Ackerman
• Non-holonomic constraints • Legged Robots • Static vs. Dynamic • Passive Dynamics
• Climbing Robots
Difference between manipulation and locomotion
48
Aperiodic Periodic gaits Stable fixed point Stability?
Manipulation Locomotion