Lecture 3 Kinematics

51
Lecture 3 Robot Kinematics Prof. Yan Meng Department of Electrical and Computer Engineering Stevens Institute of Technology CPE 521A: Introduction to Autonomous Mobile Robots

Transcript of Lecture 3 Kinematics

Page 1: Lecture 3 Kinematics

Lecture 3 Robot Kinematics

Prof. Yan MengDepartment of Electrical and Computer Engineering

Stevens Institute of Technology

CPE 521A: Introduction to Autonomous Mobile Robots

Page 2: Lecture 3 Kinematics

Outline

IntroductionCoordinate SystemsKinematic Models and ConstraintsMobile Robot ManeuverabilityMobile Robot WorkspaceBeyond Basic KiematicsKinematic ControlWrap up

Page 3: Lecture 3 Kinematics

Introduction: Mobile Robot Kinematics

AimDescription of mechanical behavior of the robot for design and controlSimilar to robot manipulator kinematics However, mobile robots can move unbound with respect to its environment

o there is no direct way to measure the robot’s positiono Position must be integrated over timeo Leads to inaccuracies of the position (motion) estimate

-> the number 1 challenge in mobile robotics

Understanding mobile robot motion starts with understanding wheel constraints placed on the robots mobility

Page 4: Lecture 3 Kinematics

Motion Control

RequirementsKinematic / Dynamic model of the robotModel of ground / wheel interactionDefinition of required motion -> velocity / position controlDesign of control law to satisfy constraints

Page 5: Lecture 3 Kinematics

Kinematic Models and Constraints

Mobile robot model -> bottom up process

Wheels contributes to the robot motion and impose constraints on robot motion too

Wheels are tired together based on robot chassis geometry

The forces and constraints of each wheel must be expressed with respect to a clear and consistent reference frame. In other words, a clear mapping between the global and local robot frames of reference is required

Page 6: Lecture 3 Kinematics

Coordinate Systems

Points in space can be described by their position P

For structures the orientation is also of interest Coordinate transformations are essential to modeling of robotsThe basis for the coordinate system decides on the simplicity of the model and control

⎥⎥⎥

⎢⎢⎢

⎡=

zyx

P

),,( θφα

Page 7: Lecture 3 Kinematics

Transformations

Translation is easyRotation can be modeled through a rotation matrix

Rotation around X axis

and similarly for Y and Z rotationsRotations are commutative

tr ppp += 0

01 Rpp =

⎥⎥⎥

⎢⎢⎢

⎡−=

ααααα

cossin0sincos0001

,xRα

yxxy RRR =

Page 8: Lecture 3 Kinematics

Homogeneous Coordinates

It would be useful to integrate scaling, translation, and rotation into a single representation.Use of format

Now

⎥⎥⎥⎥

⎢⎢⎢⎢

=

wwZwYwX

p

, ,x wX y wY z wZ= = =

Page 9: Lecture 3 Kinematics

Transformation

Now a transformation is a 4 X 4 matrix with a structure of

Example:

3 3 3 1

1 3 1 1

1 3

0

0

s

rotation matrix translation vectorscale factor

× ×

× ×

×

⎡ ⎤= ⎢ ⎥

⎣ ⎦− −⎡ ⎤

= ⎢ ⎥−⎣ ⎦

R pT

00

11 PTP =

⎥⎥⎥⎥

⎢⎢⎢⎢

=

⎥⎥⎥⎥

⎢⎢⎢⎢

110

0

0

1

1

1

zyx

zyx

T

Page 10: Lecture 3 Kinematics

Homogenous Transformation

Rotation around X

And translation

Offer a unified model frequently used

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡−

=

10000cossin00sincos00001

, αααα

αxT

⎥⎥⎥⎥

⎢⎢⎢⎢

=

1000100010001

dzdydx

Ttrans

Page 11: Lecture 3 Kinematics

Representing the robot within an arbitrary initial frameInitial frame:Robot frame:

Robot position:

Mapping between the two frames

Representing Robot Position

[ ]TI yx θξ =

{ }II YX ,

{ }RR YX ,

( )⎥⎥⎥

⎢⎢⎢

⎡−=

1000cossin0sincos

θθθθ

θR

( ) ( ) [ ]TIR yxRR θθξθξ &&&&& ⋅==

Page 12: Lecture 3 Kinematics

Rotation Example

Example: Robot aligned with YI

Page 13: Lecture 3 Kinematics

Kinematic Modeling

Determine the robot speed as a function of wheel speed , steering angle , steering speed and the geometric parameters of the robot.Forward kinematics

Inverse kinematics

Why not

the relationship is not straight forward.

[ ]Tyx θζ &&&& =ϕ& β β&

),....,,,...,,,...,( 111 mmnfyx

ββββϕϕθ

ζ &&&&

&

&

&

& =⎥⎥⎥

⎢⎢⎢

⎡=

),,(],....,,,...,,,...,[ 111 θββββϕϕ &&&&&&& yxfTmmn =

),...,,,...,( 11 mnfyx

ββϕϕθ

ζ =⎥⎥⎥

⎢⎢⎢

⎡=

Page 14: Lecture 3 Kinematics

Forward Kinematric Model: Differential Drive

Page 15: Lecture 3 Kinematics

Differential Drive Model

Page 16: Lecture 3 Kinematics

Differential Drive Model

Page 17: Lecture 3 Kinematics

Differential Motion

Page 18: Lecture 3 Kinematics

Wheel Kinematic Constraints: Assumptions

Movement on a horizontal planePoint contact of the wheelsWheels not deformablePure rolling

v = 0 at contact pointNo slipping, skidding or sliding No friction for rotation around contact pointSteering axes orthogonal to the surface Wheels connected by rigid frame (chassis)

r⋅ϕ&

v

Page 19: Lecture 3 Kinematics

Wheel Kinematic Constraints:

Fixed Standard Wheel

Page 20: Lecture 3 Kinematics

Fixed Standard Wheels

Page 21: Lecture 3 Kinematics

Rolling and sliding constraints are identical to fixed standard wheel, except the orientation of the wheel to the robot chassis is not fixed.

Wheel Kinematic Constraints:

Steered Standard Wheel

)(tβ

Page 22: Lecture 3 Kinematics

Wheel Kinematic Constraints:

Castor Wheel

Any motion orthogonal to the wheel plane must be balanced by an equivalent and opposite amount of castor steering motion .β&d

OmnidirectionalMove with any velocity in the space of possible robot motions

Page 23: Lecture 3 Kinematics

Wheel Kinematic Constraints:

Swedish Wheel

represents the angle between the main wheel plane and the axis of rotation of the small circumferential rollersγ

omnidirectional

Page 24: Lecture 3 Kinematics

Wheel Kinematic Constraints:

Spherical Wheel

No direct constraints on motion such a mechanism has no principal axis of rotation, and therefore no appropriate rolling or sliding constraints exist).

omnidirectional

Page 25: Lecture 3 Kinematics

Robot Kinematic Constraints

Given a robot with M wheelseach wheel imposes zero or more constraints on the robot motiononly fixed and steerable standard wheels impose constraints

Suppose we have a total of N=Nf + Ns standard wheelsWe can develop the equations for the constraints in matrix forms:Rolling

Lateral movement( ) 1

)()(

)(

×+

⎥⎦

⎤⎢⎣

⎡=

sf NNs

f

tt

tϕϕ

ϕ1 2( ) ( ) 0s IJ R Jβ θ ξ ϕ− =& &

( ) 31

11 )(

)(

×+

⎥⎦

⎤⎢⎣

⎡=

sf NNss

fs J

JJ

ββ )( 12 NrrdiagJ L=

0)()(1 =Is RC ξθβ &

( ) 31

11 )(

)(

×+

⎥⎦

⎤⎢⎣

⎡=

sf NNss

fs C

CC

ββ

Page 26: Lecture 3 Kinematics

Example: Differential Drive

Assume robot axis along +XR. Then for right wheel, and for left wheel.

Resulting in

Inverting the equation results in

2

1 0 11 0 1 ( )

00 1 0

I

JR

ϕθ ξ

⎡ ⎤⎡ ⎤⎢ ⎥− = ⎢ ⎥⎢ ⎥ ⎣ ⎦⎢ ⎥⎣ ⎦

&

πβπα =−= ,2/0,2/ == βπα

1

2 21 1

1 0 1 1 1 01( ) 1 0 1 ( ) 0 0 2

0 020 1 0 1 1 0

I

J JR R

ϕ ϕξ θ θ

− −

⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥= − =⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦⎢ ⎥ ⎢ ⎥−⎣ ⎦ ⎣ ⎦

&

1 2

1

( )( )

( ) 0s

Is

J JR

Cβ ϕ

θ ξβ

⎡ ⎤ ⎡ ⎤=⎢ ⎥ ⎢ ⎥

⎣ ⎦⎣ ⎦&

[sin( ) cos( ) cos ] ( ) 0

[cos( ) sin( ) sin ] ( ) 0

l R r

l R

α β α β β θ ξ ϕ

α β α β β θ ξ

+ − + − − =

+ + =

& &

&

Page 27: Lecture 3 Kinematics

Mobile Robot Maneuverability

The maneuverability of a mobile robot is the combinationof the mobility available based on the sliding constraintsplus additional freedom contributed by the steering

Three wheels are sufficient for the static stabilityadditional wheels need to be synchronizedthis is also the case for some arrangements with three wheels

It can be derived using the equation seen beforeDegree of mobilityDegree of steerabilityRobots maneuverability

smM δδδ +=

Page 28: Lecture 3 Kinematics

Mobile Robot Maneuverability: Degree of Mobility

To avoid any lateral slip, the motion vector has to satisfy the following constraints:

Mathematically:must belong to the null space of the projection matrix

Null space of is the space N such that for any vector n in N

Geometrically this can be shown by the Instantaneous Center of Rotation(ICR)

0)(1 =If RC ξθ &

⎥⎦

⎤⎢⎣

⎡=

)()(

1

11

ss

fs C

CC

ββ

0)()(1 =Iss RC ξθβ &

IR ξθ &)(

IR ξθ &)( )(1 sC β

)(1 sC β

0)(1 =⋅ nC sβ

Page 29: Lecture 3 Kinematics

Mobile Robot Maneuverability: Instantaneous Center of Rotation (ICR)

At any given instant, wheel motion along the zero motion line must be zero

The wheel must be moving instantaneously along some circle of radius R such that the center of that circle is located on the zero motion line

Ackermann Steering Bicycle

Page 30: Lecture 3 Kinematics

Mobile Robot Maneuverability: More on Degree of Mobility

Robot chassis kinematics is a function of the set of independent constraints

the greater the rank of , the more constrained is the mobility

Mathematically

o no standard wheelso all direction constrained

Examples:Unicycle: One single fixed standard wheelDifferential drive: Two fixed standard wheels

[ ])(1 sCrank β)(1 sC β

[ ] [ ])(3)(dim 11 ssm CrankCN ββδ −== [ ] 3)(0 1 ≤≤ sCrank β

[ ] 0)(1 =sCrank β[ ] 3)(1 =sCrank β

Page 31: Lecture 3 Kinematics

Mobile Robot Maneuverability: Degree of Steerability

Indirect degree of motion

The particular orientation at any instant imposes a kinematic constraintHowever, the ability to change that orientation can lead additional degree of maneuverability

Range of :

Examples:one steered wheel: Tricycletwo steered wheels: No fixed standard wheelcar (Ackermann steering): Nf = 2, Ns=2 -> common axle

[ ])(1 sss Crank βδ =

20 ≤≤ sδsδ

Page 32: Lecture 3 Kinematics

Mobile Robot Maneuverability: Robot Maneuverability

Degree of Maneuverability

Two robots with same are not necessary equalExample: Differential drive and Tricycle (next slide)

For any robot with the ICR is always constrained to lie on a lineFor any robot with the ICR is not constrained. ICR can be set to any point on the plane

The Synchro Drive example:

smM δδδ +=

2=Mδ

3=Mδ

211 =+=+= smM δδδ

Page 33: Lecture 3 Kinematics

Mobile Robot Maneuverability: Wheel Configurations

Differential Drive Tricycle

Page 34: Lecture 3 Kinematics

Five Basic Types of Three-Wheel Configurations

Page 35: Lecture 3 Kinematics

Synchro Drive

211 =+=+= smM δδδ

Page 36: Lecture 3 Kinematics

Mobile Robot Workspace: Degrees of Freedom

Maneuverability is equivalent to the vehicle’s degree of freedom (DOF)But what is the degree of vehicle’s freedom in its environment?

Car exampleWorkspace

how the vehicle is able to move between different configuration in its workspace?

The robot’s independently achievable velocities= differentiable degrees of freedom (DDOF) =Bicycle: DDOF = 1; DOF=2Omni Drive: DDOF=3; DOF=3

11+=+= smM δδδ03 +=+= smM δδδ

Page 37: Lecture 3 Kinematics

Mobile Robot Workspace: Degrees of Freedom, Holonomy

DOF degrees of freedom:Robots ability to achieve various poses

DDOF differentiable degrees of freedom: Robots ability to achieve various path

Holonomic RobotsA holonomic kinematic constraint can be expressed as an explicit function of position variables onlyA non-holonomic constraint requires a different relationship, such as the derivative of a position variableFixed and steered standard wheels impose non-holonomic constraints

DOFDDOF M ≤≤ δ

Page 38: Lecture 3 Kinematics

Path / Trajectory Considerations: Omnidirectional Drive

A trajectory is like a path, except it occupies an additional dimension: time.

Page 39: Lecture 3 Kinematics

Path / Trajectory Considerations: Two-Steer

The two-steer requires changes to internal DOF and because these changes take time, arbitrary trajectories are not attainable.

Page 40: Lecture 3 Kinematics

Beyond Basic Kinematics

For the high-speed mobile robots, dynamic constraints must be expressed in addition to kinematic constraintsThe friction model for interaction between surface and wheel must be consideredDynamics is separate field of research in robotics. Beyond the scope of this course.Motorization

Appropriate actuation of the robot’s DOFControllability

Under what condition can a mobile robot travel from the initial pose to the goal pose in bounded time?

Page 41: Lecture 3 Kinematics

Motion Control (kinematic control)

The objective of a kinematic controller is to follow a trajectory described by its position and/or velocity profiles as function of time.

Motion control is not straight forward because mobile robots are non-holonomic systems.

However, it has been studied by various research groups and some adequate solutions for (kinematic) motion control of a mobile robot system are available.

Most controllers are not considering the dynamics of the system

Page 42: Lecture 3 Kinematics

Motion Control: Open Loop Controltrajectory (path) divided in motion segments of clearly defined shape:

straight lines and segments of a circle. control problem:

pre-compute a smooth trajectory based on line and circle segments

Disadvantages:It is not at all an easy task to pre-compute a feasible trajectory limitations and constraints of the robots velocities and accelerationsdoes not adapt or correct the trajectory if dynamical changes of the environment occur.The resulting trajectories are usually not smooth

Page 43: Lecture 3 Kinematics

Motion Control: Feedback Control, Problem Statement

Find a control matrix K, if exists

with kij=k(t,e)such that the control of v(t)and ω(t)

drives the error e to zero.

⎥⎦

⎤⎢⎣

⎡=

232221

131211

kkkkkk

K

⎥⎥⎥

⎢⎢⎢

⎡⋅=⋅=⎥

⎤⎢⎣

θω

yx

KeKttv

R

)()(

0)(lim =∞→

tet

Page 44: Lecture 3 Kinematics

Motion Control:

Kinematic Position ControlThe kinematic of a differential drive mobile robot described in the initial frame {xI, yI, θ} is given by,

where and are the linear velocities in the direction of the xI and yI of the initial frame.Let α denote the angle between the xR axis of the robots reference frame and the vector connecting the center of the axle of the wheels with the final position.

⎥⎦

⎤⎢⎣

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

ωθθ

θ

vyxI

100sin0cos

&&

&

Δy

Page 45: Lecture 3 Kinematics

Kinematic Position Control: Coordinates TransformationCoordinates transformation into polar coordinates with its origin at goal position:

System description, in the new polar coordinates

Δy

for for

Page 46: Lecture 3 Kinematics

Kinematic Position Control: Remarks

The coordinates transformation is not defined at x = y = 0; as in such a point the determinant of the Jacobian matrix of the transformation is not defined, i.e. it is unbounded

For the forward direction of the robot points toward the goal, for it is the backward direction.

By properly defining the forward direction of the robot at its initial configuration, it is always possible to have at t=0. However this does not mean that α remains in I1 for all time t.

Page 47: Lecture 3 Kinematics

Kinematic Position Control: The Control LawIt can be shown, that with

the feedback controlled system

will drive the robot to The control signal v has always constant sign,

the direction of movement is kept positive or negative during movement parking maneuver is performed always in the most natural way and without ever inverting its motion.

( ) ( )000 ,,,, =βαρ

Page 48: Lecture 3 Kinematics

Kinematic Position Control: Resulting Path

Page 49: Lecture 3 Kinematics

Kinematic Position Control: Stability IssueIt can further be shown, that the closed loop control system is locally exponentially stable if

Proof: for small x −> cosx = 1, sinx = x

and the characteristic polynomial of the matrix A of all roots

have negative real parts.

0 ; 0 ; 0 >−<> ραβρ kkkk

Page 50: Lecture 3 Kinematics

Mobile Robot Kinematics: Non-Holonomic Systems

Non-holonomic systemsdifferential equations are not integrable to the final position. the measure of the traveled distance of each wheel is not sufficient to calculate the final position of the robot. One has also to know how this movement was executed as a function of time.

s1=s2 ; s1R=s2R ; s1L=s2L

but: x1 = x2 ; y1 = y2

Page 51: Lecture 3 Kinematics

Homework 2 (Due on next class)

Calculate the mobility, steerability, and maneuverability of the robot configurations in Table 2.1 (2.1, 3.1, 3.3, 3.4, 4.1, 4.3, 4.6)