Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
LOCOMOTION & KINEMATICS
Today
• We’ll start on the bottom right hand side.
cisc3415-fall2013-ozgelen-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-fall2013-ozgelen-lect02 3
Locomotion in nature
cisc3415-fall2013-ozgelen-lect02 4
Sliding
• Snakes have four gaits.
• Lateral undulation
(most common)
• Concertina
• Sidewinding
• Rectilinear
• (S5, S3-slither-to-sidewind)
cisc3415-fall2013-ozgelen-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-fall2013-ozgelen-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-fall2013-ozgelen-lect02 7
Stability
• Number of contact points
• Center of gravity
• Static/dynamic stabilization
• Inclination of terrain
cisc3415-fall2013-ozgelen-lect02 8
Characteristics of contact
• Contact point or contact area
• Angle of contact
• Friction
cisc3415-fall2013-ozgelen-lect02 9
Nature of environment
• Structure
• Medium (water, air, soft or hard ground)
cisc3415-fall2013-ozgelen-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 4 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-fall2013-ozgelen-lect02 11
Leg joints
• A minimum of two DOF is required to move a leg forward
– A lift and a swing motion.
• 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 thedesign and especially of the locomotion control.
cisc3415-fall2013-ozgelen-lect02 12
Leg structure
• How many degrees of freedom does this leg have?
cisc3415-fall2013-ozgelen-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 k
legs 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-fall2013-ozgelen-lect02 14
• For a robot with 6 legs (hexapod), such as:
• N is alreadyN = 11! = 39, 916, 800
cisc3415-fall2013-ozgelen-lect02 15
Obvious 6-legged gait
• Static stability— the robot is always stable.
(six-legged-crawl)
cisc3415-fall2013-ozgelen-lect02 16
Obvious 4-legged gaits
Changeover walk Gallop
cisc3415-fall2013-ozgelen-lect02 17
Titan VIII
• A family of 9 robots, developed from 1976, to explore gaits.
(Titan walk)
cisc3415-fall2013-ozgelen-lect02 18
Aibo
(Aibo)
cisc3415-fall2013-ozgelen-lect02 19
Big Dog, Little Dog
• Work grew out of the MIT Leg Lab.
(leg-lab-spring-flamingo)
cisc3415-fall2013-ozgelen-lect02 20
Humanoid Robots
• Two-legged gaits are difficult to achieve — human gait, forexample is very unstable.
cisc3415-fall2013-ozgelen-lect02 21
Nao
• Aldebaran.
(NAO-playtime)
cisc3415-fall2013-ozgelen-lect02 22
Walking or rolling?
• Number of actuators
• Structural complexity
• Control expense
• Energy efficient
• Terrain (flat ground,soft ground, climbing..)
cisc3415-fall2013-ozgelen-lect02 23
RHex
• Somewhere in between walking and rolling.
(rhex)
cisc3415-fall2013-ozgelen-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-fall2013-ozgelen-lect02 25
Four basic wheels
• Standard wheel: Two degreesof freedom; rotation around the(motorized) wheel axle and thecontact point
• Castor wheel: Two degrees offreedom; rotation around thewheel axle and an offset steeringjoint
cisc3415-fall2013-ozgelen-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-fall2013-ozgelen-lect02 27
Swedish wheel
• Invented in 1973 by Bengt Ilon, who was working for the Swedishcompany Mecanum AB.
• Also called a Mecanum or Ilon wheel.
cisc3415-fall2013-ozgelen-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 the designcomplex and adds additional errors for odometry.
cisc3415-fall2013-ozgelen-lect02 29
Two wheels
• Steering wheel at front, drive wheel atback.
• Differential drive. Center of massabove or below axle.
cisc3415-fall2013-ozgelen-lect02 30
• The two wheel differential drive pattern was used in Cye.
• Cye was an early attempt at a robot for home use.
cisc3415-fall2013-ozgelen-lect02 31
• The Segway RMP has its center of mass above the wheels
cisc3415-fall2013-ozgelen-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-fall2013-ozgelen-lect02 33
Differential drive plus caster
• Highly maneuverable, but limited to movingforwards/backwards and rotating.
cisc3415-fall2013-ozgelen-lect02 34
Neptune
• Neptune: an early experimental robot from CMU.
cisc3415-fall2013-ozgelen-lect02 35
Other three wheel drives
• Omnidirectional
• Three drive wheels.
• Swedish or spherical.
• Synchro drive
• Three drive wheels.
• Can’t control orientation.
cisc3415-fall2013-ozgelen-lect02 36
Omnidirectional
• The Palm Pilot Robot Kit (left) and the Tribolo (right) (Tribolo)
cisc3415-fall2013-ozgelen-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
• The orientation in space of the robot frame will always remain thesame
cisc3415-fall2013-ozgelen-lect02 38
Four wheels
• Various combinations of steered, driven wheels andomnidirectional wheels.
cisc3415-fall2013-ozgelen-lect02 39
Four steering wheels
• Highly maneuverable, hard to control.
cisc3415-fall2013-ozgelen-lect02 40
Nomad
• The Nomad series of robots from Nomadic Teachnologies hadfour casters, driven and steered.
cisc3415-fall2013-ozgelen-lect02 41
Uranus
• Four omnidirectional driven wheels.
• Not a minimal arrangement, since only three degrees of freedom.
• Four wheels for stability.
cisc3415-fall2013-ozgelen-lect02 42
Tracked robots
• Large contact area means good traction.
• Use slip/skid steering.
cisc3415-fall2013-ozgelen-lect02 43
Slip/skid steering
• Also used on ATV versions of differential drive platforms.
cisc3415-fall2013-ozgelen-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-fall2013-ozgelen-lect02 45
Fish robots
• Incorporating verison kinds of motion.
cisc3415-fall2013-ozgelen-lect02 46
Kinematics
• So far we have looked at different kinds of motion in a qualitativeway.
• One way to program robots to move is trial and error.
• A somewhat better way is to establish mathematically how therobot shouldmove, 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 get therobot to do what we want.
• We’ll look at two tiny bits of the kinematics world.
cisc3415-fall2013-ozgelen-lect02 47
A formal model
• We will assume that the robot’s location is fixed in terms of threecoordinates:
(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-fall2013-ozgelen-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) =
xIyIθ
• Forward kinematics
cisc3415-fall2013-ozgelen-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 , θ)
• Inverse kinematics
cisc3415-fall2013-ozgelen-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:
– Inertial (Global) Frame:{XI, YI}
– Robot (Local) Frame:{XR, YR}
cisc3415-fall2013-ozgelen-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-fall2013-ozgelen-lect02 52
• In other words
xRyRθR
= R(θ) =
cos(θ) sin(θ) 0− sin(θ) cos(θ) 0
0 0 1
xIyIθ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-fall2013-ozgelen-lect02 53
• This maps position or motion represented in inertial (global)frame to robot (local) frame. To compute the reverse mapping:
xIyIθI
= R(θ)−1
xRyRθ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-fall2013-ozgelen-lect02 54
• To do this we compute:
xIyIθI
= R(θ)−1 =
cos(θ) − sin(θ) 0sin(θ) cos(θ) 00 0 1
xRyRθ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-fall2013-ozgelen-lect02 55
Down to the structure of the robot
• We can now identify the motion of the robot, in the global frame, ifwe know:
xR, yR, θ
but how do we tell what these are?
cisc3415-fall2013-ozgelen-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 orsliding
– No friction for rotation around contact point
– Steering axes orthogonal to the surface
– Wheels connected by rigid frame (chassis)
cisc3415-fall2013-ozgelen-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 betweenthe wheels and P .
cisc3415-fall2013-ozgelen-lect02 58
• Rotation due to the left wheel is:
ωl =−rϕ
2l
counterclockwise about the rightwheel.
• Combining these componentswe have:
xRyRθR
=
rϕr2+ rϕl
2
0rϕr2l
− rϕl2l
• And we can combine these withR(θ)−1 to find motion in theglobal frame.
cisc3415-fall2013-ozgelen-lect02 59
Wheel geometry
• Making sure the assumptions hold imposes constraints.
• For example, ensuring that the wheel doesn’t slip says somethingabout motion in the direction of the wheel.
cisc3415-fall2013-ozgelen-lect02 60
More complex scenarios
Steered standard wheel Caster
• More parameters.
• Only fixed and steerable standard wheels impose constraints.
cisc3415-fall2013-ozgelen-lect02 61
Robot mobility
• The sliding constraint means that a standard wheel has no lateralmotion.
– Zero motion line through the axis.
Instantaneouscenter of rotation
• Has to move along a circle whose center is on the zero motion line.
cisc3415-fall2013-ozgelen-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-fall2013-ozgelen-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-fall2013-ozgelen-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 (see on).
cisc3415-fall2013-ozgelen-lect02 65
Common configurations
cisc3415-fall2013-ozgelen-lect02 66
Holonomy
• Consider a bicycle, it has a δM = 2 yet can position itself anywherein 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-fall2013-ozgelen-lect02 67
If we were interested
• We could compute forward and reverse kinematics for robot arms,and use these to decide how to rotate motors to move the hand.
cisc3415-fall2013-ozgelen-lect02 68
Legged robots
• Of course, this is how we get robot legs to do what we want also.
cisc3415-fall2013-ozgelen-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-fall2013-ozgelen-lect02 70