locomotion & kinematics
TRANSCRIPT
LOCOMOTION & KINEMATICS
Today
•We’ll start on the bottom right hand side.
cisc3415-fall2011-parsons-lect02 2
Motion
• Two aspects:
– Locomotion– Kinematics
• Locomotion: What kinds of motion are possible?
• Locomotion: What physical structures are there?
• Kinematics: Mathematical model of motion.
• Kinematics: Models make it possible to predict motion.
cisc3415-fall2011-parsons-lect02 3
Locomotion in nature
cisc3415-fall2011-parsons-lect02 4
Sliding
• Snakes have four gaits.
• Lateral undulation(most common)
• Concertina
• Sidewinding
• Rectilinear
• (S5, S3-slither-to-sidewind)
cisc3415-fall2011-parsons-lect02 5
Crawling
• Concertina and Rectilinear motion can be considered crawling.
• Not directly implemented.
• The Makro (left) and Omnitread (right) robots crawl, but notexactly like real snakes do.
cisc3415-fall2011-parsons-lect02 6
Characterisation of locomotion
• Locomotion:
– Physical interaction between the vehicle and its environment.
• Locomotion is concerned with interaction forces, and themechanisms and actuators that generate them.
• The most important issues in locomotion are:
– Stability– Characteristics of contact– Nature of environment
cisc3415-fall2011-parsons-lect02 7
Stability
• Number of contact points
• Center of gravity
• Static/dynamic stabilization
• Inclination of terrain
cisc3415-fall2011-parsons-lect02 8
Characteristics of contact
• Contact point or contact area
• Angle of contact
• Friction
cisc3415-fall2011-parsons-lect02 9
Nature of environment
• Structure
•Medium (water, air, soft or hard ground)
cisc3415-fall2011-parsons-lect02 10
Legged motion• The fewer legs the more complicated locomotion becomes
– at least three legs are required for static stability
• During walking some legs are lifted
• For static walking at least 6 legs are required
– Babies have to learn for quite a while until they are able tostand or walk on their two legs.
mammal (2 or 4) reptile insect
cisc3415-fall2011-parsons-lect02 11
Leg joints
• A minimum of two DOF is required to move a leg forward
– A lift and a swing motion.– Sliding free motion in more than one direction not possible
• Three DOF for each leg in most cases
• Fourth DOF for the ankle joint
– Might improve walking– However, additional joint (DOF) increase the complexity of
the design and especially of the locomotion control.
cisc3415-fall2011-parsons-lect02 12
Leg structure
• How many degrees of freedom does this leg have?
cisc3415-fall2011-parsons-lect02 13
Numbers of gaits
• Gait is characterized as the sequence of lift and release events ofthe individual legs.
– Depends on the number of legs.
• The number of possible events N for a walking machine with klegs is:
N = (2k − 1)!
• For a biped walker (k=2) the number of possible events N is:
N = (4− 1)! = 3! = 3× 2× 1 = 6
• The 6 different events are:lift right leg / lift left leg / release right leg / release left leg / liftboth legs together / release both legs together
cisc3415-fall2011-parsons-lect02 14
• For a robot with 6 legs (hexapod), such as:
• N is alreadyN = 11! = 39, 916, 800
cisc3415-fall2011-parsons-lect02 15
Obvious 6-legged gait
• Static stability— the robot is always stable.
(six-legged-crawl)
cisc3415-fall2011-parsons-lect02 16
Obvious 4-legged gaits
Changeover walk Gallop
cisc3415-fall2011-parsons-lect02 17
Titan VIII
• A family of 9 robots, developed from 1976, to explore gaits.
(Titan walk)
cisc3415-fall2011-parsons-lect02 18
Aibo
(Aibo)
cisc3415-fall2011-parsons-lect02 19
Big Dog, Little Dog
•Work grew out of the MIT Leg Lab.
(leg-lab-spring-flamingo)
cisc3415-fall2011-parsons-lect02 20
Humanoid Robots
• Two-legged gaits are difficult to achieve — human gait, forexample is very unstable.
cisc3415-fall2011-parsons-lect02 21
Nao
• Aldebaran.
(NAO-playtime)
cisc3415-fall2011-parsons-lect02 22
Walking or rolling?
• Number of actuators
• Structural complexity
• Control expense
• Energy efficient
• Terrain (flat ground,soft ground, climbing..)
cisc3415-fall2011-parsons-lect02 23
RHex• Somewhere in between walking and rolling.
(rhex)
cisc3415-fall2011-parsons-lect02 24
Wheeled robots
•Wheels are the most appropriate solution for many applications
– Avoid the complexity of controlling legs
• Basic wheel layouts limited to easy terrain
– Motivation for work on legged robots– Much work on adapting wheeled robots to hard terrain.
• Three wheels are sufficient to guarantee stability
– With more than three wheels a flexible suspension is required
• Selection of wheels depends on the application
cisc3415-fall2011-parsons-lect02 25
Four basic wheels
• Standard wheel: Two degreesof freedom; rotation around the(motorized) wheel axle and thecontact point
• Castor wheel: Three degrees offreedom; rotation around thewheel axle, the contact point andthe castor axle
cisc3415-fall2011-parsons-lect02 26
Four standard wheels (II)
• Swedish wheel: Three degreesof freedom; rotation around the(motorized) wheel axle, aroundthe rollers and around thecontact point.
• Ball (also called spherical) wheel:Omnidirectional. Suspension istechnically not solved.
cisc3415-fall2011-parsons-lect02 27
Swedish wheel
• Invented in 1973 by Bengt Ilon, who was working for theSwedish company Mecanum AB.
• Also called a Mecanum or Ilon wheel.
cisc3415-fall2011-parsons-lect02 28
Characteristics of wheeled vehicles• Stability of a vehicle is be guaranteed with 3 wheels.
– Center of gravity is within the triangle with is formed by theground contact point of the wheels.
• Stability is improved by 4 and more wheel.
– However, such arrangements are hyperstatic and require aflexible suspension system.
• Bigger wheels allow robot to overcome higher obstacles.
– But they require higher torque or reductions in the gear box.
•Most wheel arrangements are non-holonomic (see later)
– Require high control effort
• Combining actuation and steering on one wheel makes thedesign complex and adds additional errors for odometry.
cisc3415-fall2011-parsons-lect02 29
Two wheels
• Steering wheel at front, drive wheel atback.
• Differential drive. Center of massabove or below axle.
cisc3415-fall2011-parsons-lect02 30
• The two wheel differential drive pattern was used in Cye.
• Cye was an early attempt at a robot for home use.
cisc3415-fall2011-parsons-lect02 31
• The Segway RMP has its center of mass above the wheels
cisc3415-fall2011-parsons-lect02 32
Three wheels
• Differential drive plus caster oromnidirectional wheel.
• Connected drive wheels at rear, steeredwheel at front.
• Two free wheels in rear, steered drivewheel in front.
cisc3415-fall2011-parsons-lect02 33
Differential drive plus caster
• Highly maneuverable, but limited to movingforwards/backwards and rotating.
cisc3415-fall2011-parsons-lect02 34
Neptune
• Neptune: an early experimental robot from CMU.
cisc3415-fall2011-parsons-lect02 35
Other three wheel drives
• Omnidirectional
• Three drive wheels.
• Swedish or spherical.
• Synchro drive
• Three drive wheels.
• Can’t control orientation.
cisc3415-fall2011-parsons-lect02 36
Omnidirectional
• The Palm Pilot Robot Kit (left) and the Tribolo (right) (Tribolo)
cisc3415-fall2011-parsons-lect02 37
Synchro• All wheels are actuated synchronously by one motor
– Defines the speed of the vehicle
• All wheels steered synchronously by a second motor
– Sets the heading of the vehicle
(Borenstein)
• The orientation in space of the robot frame will always remainthe same
cisc3415-fall2011-parsons-lect02 38
Four wheels
• Various combinations of steered, driven wheels andomnidirectional wheels.
cisc3415-fall2011-parsons-lect02 39
Four steering wheels
• Highly maneuverable, hard to control.
cisc3415-fall2011-parsons-lect02 40
Nomad
• The Nomad series of robots from Nomadic Teachnologies hadfour casters, driven and steered.
cisc3415-fall2011-parsons-lect02 41
Uranus
• Four omnidirectional driven wheels.
• Not a minimal arrangement, since only three degrees of freedom.
• Four wheels for stability.
cisc3415-fall2011-parsons-lect02 42
Tracked robots
• Large contact area means good traction.
• Use slip/skid steering.
cisc3415-fall2011-parsons-lect02 43
Slip/skid steering
• Also used on ATV versions of differential drive platforms.
cisc3415-fall2011-parsons-lect02 44
Aerial robots
• Lots of interest in the last few years
• Aim is to use them for search and surveillance tasks.
• Starmac (left) and YARB (right)
cisc3415-fall2011-parsons-lect02 45
Fish robots
• Incorporating verison kinds of motion.
cisc3415-fall2011-parsons-lect02 46
Kinematics
• So far we have looked at different kinds of motion in aqualitative way.
• One way to program robots to move is trial and error.
• A somewhat better way is to establish mathematcially how therobot should move, this is kinematics.
• Rather kinematics is the business of figuring how a robot willmove if its motors work in a given way.
• Inverse-kinematics then tells us how to move the motors to getthe robot to do what we want.
•We’ll look at two tiny bits of the kinematics world.
cisc3415-fall2011-parsons-lect02 47
A formal model
•We will assume, as people usualy do, that the robot’s location isfixed in terms of three coordinates:
(xI, yI, θ)
• Given that the robot needs to navigate to a location (xG, yG, θG), itcan determine how x, y and θ need to change.
– BUT it can’t control these directly.
cisc3415-fall2011-parsons-lect02 48
• All it has access to are the speeds of its wheels:
ϕ1, . . . ϕn
The steering angle of the steerable wheels:
β1, . . . βm
and the speed with which those steering angles are changing.
β1, . . . βm
• Together these determine the motion of the robot:
f (ϕ1, . . . ϕn, β1, . . . βm, β1, . . . βm) =
xI
yI
θ
• Forward kinematics
cisc3415-fall2011-parsons-lect02 49
• This is not what we want.
• But we can get what we want from it:
ϕ1...ϕn
β1...βm
β1...βm
= f (xI, yI, θ)
• Reverse kinematics
cisc3415-fall2011-parsons-lect02 50
Representing robot position
• The robot knows how it moves relative to its center of rotation.
• This is not the same as knowing how it moves relative to theworld.
Two systems of coordinates:
– Initial Frame: {XI,YI}– Robot Frame: {XR,YR}
cisc3415-fall2011-parsons-lect02 51
• Robot position:
ξI = [xI, yI, θI]T
•Mapping between frames:
ξR = R(θ)ξI
= R(θ)[xI, yI, θI
]T
where
R(θ) =
cos(θ) sin(θ) 0− sin(θ) cos(θ) 0
0 0 1
cisc3415-fall2011-parsons-lect02 52
• In other wordsxR
yR
θR
= R(θ) =
cos(θ) sin(θ) 0− sin(θ) cos(θ) 0
0 0 1
xI
yI
θI
meaning that:
xR = xI cos(θ) + yI sin(θ) + θI.0
yR = −xI sin(θ) + yI cos(θ) + θI.0
θR = xI.0 + yI.0 + θI.1
cisc3415-fall2011-parsons-lect02 53
• This is the forward kinmatic model, but this still isn’t what wewant — we want the reverse kinematic model:
xI
yI
θI
= R(θ)−1
xR
yR
θR
where R(θ)−1 is the inverse of R(θ).
• Often R(θ)−1 is hard to compute, but luckily for us in this case itisn’t.
•We have:
R(θ)−1 =
cos(θ) − sin(θ) 0sin(θ) cos(θ) 00 0 1
which we can use to establish xI, yI, θI
cisc3415-fall2011-parsons-lect02 54
• In other wordsxI
yI
θI
= R(θ)−1 =
cos(θ) − sin(θ) 0sin(θ) cos(θ) 00 0 1
xR
yR
θR
meaning that:
xI = xR cos(θ)− yR sin(θ) + θR.0
yI = xR sin(θ) + yR cos(θ) + θR.0
θI = xR.0 + yR.0 + θR.1
cisc3415-fall2011-parsons-lect02 55
Down to the structure of the robot
•We can now identify the motion of the robot, in the global frame,if we know:
xR, yR, θ
but how do we tell what these are?
cisc3415-fall2011-parsons-lect02 56
•We compute it from what we can measure like the speed of thewheels:
• Some assumptions — constraints on the motion of the robot:
– Movement on a horizontal plane– Point contact of the wheels; wheels not deformable– Pure rolling, so v = 0 at contact point; no slipping, skidding or
sliding– No friction for rotation around contact point– Steering axes orthogonal to the surface– Wheels connected by rigid frame (chassis)
cisc3415-fall2011-parsons-lect02 57
• Consider differential drive.
•Wheels rotate at ϕ
• Each wheel contributes:rϕ2
to motion of center of rotation.
• Total speed is the sum of twocontributions.
• Rotation due to right wheel is
ωr =rϕ2l
counterclockwise about the leftwheel.l is the distance between wheels.
cisc3415-fall2011-parsons-lect02 58
• Rotation due to the left wheel is:
ωl =−rϕ2l
counterclockwise about the rightwheel.
• Combining these componentswe have:
xR
yR
θR
=
rϕr2 + rϕl
20
rϕr2l −
rϕl2l
• And we can combine these withR(θ)−1 to find motion in theglobal frame.
cisc3415-fall2011-parsons-lect02 59
Wheel geometry
•Making sure the assumptions hold imposes constraints.
• For example, ensuring that the wheel doesn’t slip sayssomething about motion in the direction of the wheel.
cisc3415-fall2011-parsons-lect02 60
More complex scenarios
Steered standard wheel Caster
•More parameters.
• Only fixed and steerable standard wheels impose constraints.
cisc3415-fall2011-parsons-lect02 61
Robot mobility• The sliding constraint means that a standard wheel has no lateral
motion.
– Zero motion line through the axis.
Instantaneouscenter of rotation
• Has to move along a circle whose center is on the zero motionline.
cisc3415-fall2011-parsons-lect02 62
• A differential drive robot has just one line of zero motion.
• Thus its rotation is not constrained
– It can move in any circle it wants.
•Makes it very easy to move around.
• This depends on the number of independent kinematicconstraints.
cisc3415-fall2011-parsons-lect02 63
• Formally we have the notion of a degree of mobility
δm = 3− number of independent kinematic constraints
• This number is also the number of independent fixed or steerablestandard wheels.
• The independence is important.
• Differential drive has two standard wheels, but they are on thesame axis.
– So not independent.
• So δm = 2 for a differential drive robot
– Can alter x and θ just through wheel velocity.
• A bicycle has two independent wheels, so δm = 1
– Can only alter x using wheel velocity.
cisc3415-fall2011-parsons-lect02 64
Steerability and Maneuverability
• Steering has an impact on how the robot moves.
• The degree of steerability δs is then the number of independentsteerable wheels.
• Note that a steerable standard wheel will both reduce the degreeof mobility and increase the degree of steerability.
• The degree of maneuverability is:
δM = δm + δs
• δM tells us how many degrees of freedom a robot can manipulate.
• Two robots with the same δM aren’t necessarily equivalent (seeon).
cisc3415-fall2011-parsons-lect02 65
Common configurations
cisc3415-fall2011-parsons-lect02 66
Holonomy
• Consider a bicycle, it has a δM = 2 yet can position itselfanywhere in the plane.
– Workspace is the set of possible configurations.– Workspace DOF is 3 in the general case.
• A bicycle only has one DOF that it can control directly.
– Differential DOF– DDOF is always equal to δm
• A general inequality:
DDOF ≤ δM ≤ DOF
• A robot with DDOF = DOF is called holonomic
cisc3415-fall2011-parsons-lect02 67
If we were interested
•We could compute forward and reverse kinematics for robotarms, and use these to decide how to rotate motors to move thehand.
cisc3415-fall2011-parsons-lect02 68
Legged robots
• Of course, this is how we get robot legs to do what we want also.
cisc3415-fall2011-parsons-lect02 69
Summary
• This lecture started by looking at locomotion.
• It discussed many of the kinds of motion that robots use, givingexamples.
•We then looked a bit at kinematics
– The business of relating what robots do in the world to whattheir motors need to be told to do.
•We did a little math, but most of the discussion was qualitative.
• The book goes more into the mathematical detail of establishingkinematic constraints.
cisc3415-fall2011-parsons-lect02 70