mobile robot kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/mobile robot...

84
Mobile Robot Kinematics Dr. Kurtuluş Erinç Akdoğan [email protected]

Upload: vokhue

Post on 11-Sep-2018

226 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Mobile Robot Kinematics

Dr. Kurtuluş Erinç Akdoğan

[email protected]

Page 2: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

INTRODUCTION

Kinematics is the most basic study of how mechanical systems behave required

to design

to control

Manipulator robot’s workspace possible positions of its end effector.

Mobile robot’s workspace defines the range of possible poses in its environment.

A robot arm is controlled to move from pose to pose

A mobile robot is controlled to move in a path and trajectory

Page 3: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Position estimation is different between a mobile robot and a manipulator arm.

Manipulator’s position is always computable by looking at current sensor data since it is fixed.

There is no direct way to measure a mobile robot’s position instantaneously.

Instead, one must integrate the motion of the robot over time.

Add to this the inaccuracies of motion estimation due to slippage and it is clear that measuring a mobile robot’s position precisely is an extremely challenging task.

How the robot as a whole moves as a function of its geometry and individual wheel behavior.

Evaluate the paths and trajectories that define the robot’s maneuverability.

Page 4: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Kinematic Models and Constraints:Representing Robot Position

Position of the robot is establishedaccording to a relationshipbetween

the global reference frame (XI,YI) of the plane

the local reference frame (XR,YR) of the robot.

P is on the chassis of robot and in

the global reference frame is specified by coordinates x and y,

θ specifies the angular difference

between the global and local reference frames

Pose of the robot as a vector

Page 5: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Kinematic Models and Constraints:Representing Robot Position

Using an orthogonal rotation matrix, motion in the global reference frame (XI,YI) is mapped

to motion in local reference frame(XR,YR)

Page 6: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

For instantaneous rotation matrix R

Velocity ( ሶ𝑥, ሶ𝑦, ሶθ)

motion along XR is equal to ሶ𝑦, and motion along YR is - ሶ𝑥

Page 7: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematic Models

How does the robot move, given its geometry and the speeds of its wheels?

This differential drive robot has two wheels, each with diameter r.

Given a point P centered between the two drive wheels, each wheel is a distance l from P.

Given the spinning speed of each wheel, ሶφ1 and ሶφ2

Page 8: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

robot’s motion in the global reference frame computed from motion in its local reference frame

first compute the contribution of each of the two wheels in the local reference frame

P: point between two wheelsr: wheel diameterl: wheel distance from P

ሶφ1: spinning speed of first wheelሶφ2: spinning speed of second wheel

robot’s overall speed in the global reference frame

Page 9: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Suppose robot moves forward along +XR

Consider the contribution of each wheel’s spinning speed to the translation speed at P in the direction of +XR

If one wheel spins while the other wheel contributes nothing and is stationary, since P is halfway between the two wheels, it will move instantaneously with half the speed

Then,

P: point between two wheelsr: wheel diameterl: wheel distance from P

ሶφ1: spinning speed of first wheelሶφ2: spinning speed of second wheel

robot’s overall speed in the global reference frame

Page 10: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Neither wheel can contribute to sideways motion in the robot’s reference so speed along +YR is ሶ𝑦𝑅 = 0

Rotational component ሶθ𝑅 of ሶ𝜉𝑅 frame can be derived by addingcontributions of each wheel can be computed independently.

Forward spin of right wheel results in counterclockwise rotation at point P. The rotation velocity along the arc of a circle of radius 2l

The same calculation applies to the left wheel, with the exception that forward spin results in clockwise rotation at point

P: point between two wheelsr: wheel diameterl: wheel distance from P

ሶφ1: spinning speed of first wheelሶφ2: spinning speed of second wheel

robot’s overall speed in the global reference frame

Page 11: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Combining these individual formulas yields a kinematic model for the differential-drive

P: point between two wheelsr: wheel diameterl: wheel distance from P

ሶφ1: spinning speed of first wheelሶφ2: spinning speed of second wheel

robot’s overall speed in the global reference frame

Page 12: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Suppose that the robot is positioned such that

If the robot engages its wheels unevenly, with speeds

Its velocity in the global reference frame

So this robot will move instantaneously along the y-axis of the global reference frame with speed 3 while rotating with speed 1.

P: point between two wheelsr: wheel diameterl: wheel distance from P

ሶφ1: spinning speed of first wheelሶφ2: spinning speed of second wheel

Page 13: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Wheel Kinematic Constraints

We assume that

the plane of the wheel always remains vertical

there is in all cases one single point of contact between the wheel and the ground plane

there is no sliding at this single point of contact (wheel undergoes motion only under conditions of pure rolling and rotation about the vertical axis through the contact point.)

Movement on a horizontal plane

Wheels not deformable

Pure rolling (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)

Constraints

The wheel must roll when motion takes place in the appropriate direction

The wheel must not slide orthogonal to the wheel plane

Page 14: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Fixed Standard Wheel

No steering. Its angle to the chassis is fixed (only motion back and forth)

A is wheel’s position relative to

robot’s local reference frame (XR,YR)

Polar coordinates of A is l and α

β is the angle of the wheel plane

relative to the chassis.

r is radius of wheel

φ(t) is the rotational position of

wheel around its horizontal axle.

There is pure rolling at the contact point of wheel

Page 15: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Rolling Constraint

Motion along the wheel plane v, must be equal to motion produced by wheel.

α

90-α-β

β

Motion along the wheel plane: v Motion produced by wheel

α

ሶ𝑋𝑅

ሶ𝑌𝑅ሶθ𝑅

v

ሶ𝜉𝑅 =

ሶ𝑋𝑅ሶ𝑌𝑅ሶ𝜃𝑅

= 𝑅(𝜃) ሶ𝜉𝐼

𝑣=sin 𝛼 + 𝛽 ሶ𝑋𝑅 − cos 𝛼 + 𝛽 ሶ𝑌𝑅 − 𝑙 cos(𝛽) ሶ𝜃𝑅

Motion along the wheel plane v, must be

equal to motion produced by wheel.

Sum of the contributions of three

elements of the vector ሶ𝜉𝑅 on v, is shown

in above equation.

Page 16: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Sliding Constraint

Wheel must not slide. Sm, Sliding motion vertical to v must be equal to 0

α

90-α-β

β

Sm: Sliding motion vertical to v

α

ሶ𝑋𝑅

ሶ𝑌𝑅ሶθ𝑅

v

ሶ𝜉𝑅 =

ሶ𝑋𝑅ሶ𝑌𝑅ሶ𝜃𝑅

= 𝑅(𝜃) ሶ𝜉𝐼

𝑆𝑚=cos 𝛼 + 𝛽 ሶ𝑋𝑅 + sin 𝛼 + 𝛽 ሶ𝑌𝑅 + 𝑙 sin(𝛽) ሶ𝜃𝑅

Sum of the contributions of three

elements of the vector ሶ𝜉𝑅 on Sm, is

shown in above equation.

Sm

Page 17: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Steered standard wheel The Rolling and sliding constraints

The steered standard wheel differs from the fixed standard wheel only in that there is an additional degree of freedom: the wheel may rotate around a vertical axis passing through the center of the wheel and the ground contact point.

The equations of position for thesteered standard wheel are identical to that of the fixed standard wheel shown with one exception.

The orientation of the wheel to the robot chassis is no longer a single fixed value, but instead varies as a

function of time: β(t)

α

90-α-β

βα

ሶ𝑋𝑅

ሶ𝑌𝑅ሶθ𝑅

v

Sm

Page 18: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Castor Wheel Castor wheels are able to steer around a vertical axis.

Unlike the steered standard wheel, the vertical axis of rotation in a castor wheel does not pass through the ground contact point.

B is the wheel contact point

B is connected by a rigid rod of

AB of fixed length d to point A

A fixes the location of the vertical

axis about which B steers

We assume that the plane of the

wheel is aligned with AB at all

times.

Castor wheel has two parameters that vary as a function of time.

φ(t) represents the wheel spin

over time as before.

β(t) denotes the steering angle

and orientation of over time.

Page 19: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Rolling Constraint The rolling constraint is identical to equation for standard wheel because the offset

axis plays no role during motion that is aligned with the wheel plane

Motion along the wheel plane v, must be equal to motion produced by wheel.

αβ(t)-90

α

ሶ𝑋𝑅

ሶ𝑌𝑅ሶθ𝑅

ሶ𝜉𝑅 =

ሶ𝑋𝑅ሶ𝑌𝑅ሶ𝜃𝑅

= 𝑅(𝜃) ሶ𝜉𝐼

𝑣=sin 𝛼 + 𝛽 ሶ𝑋𝑅 − cos 𝛼 + 𝛽 ሶ𝑌𝑅 − 𝑙 cos(𝛽) ሶ𝜃𝑅

Motion along the wheel plane v, must be

equal to motion produced by wheel.

Sum of the contributions of three

elements of the vector ሶ𝜉𝑅 on v, is shown

in above equation.

Motion along the wheel plane: v Motion produced by wheel

Page 20: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Sliding Constraint Lateral force on the wheel occurs at point A

Because of the offset ground contact point relative to A, there will be a

lateral movement Sm=d ሶβ equal to the opposite of robot motion v.

αβ(t)-90

α

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

In a steered standard wheel, the steering action does not by itself cause a movement of the robot chassis.

But in a castor wheel, the steering action itself moves the robotchassis because of the offset between the ground contact point and the vertical axis of rotation.

Sm

Sm: Sliding motionv: robot motion

vሶ𝑋𝑅

ሶ𝑌𝑅ሶθ𝑅

Page 21: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

For a castor wheeled robot, given any robot chassis

motion ሶξ𝐼, there exists some value for spin speed

ሶφ𝐼and steering speed ሶβ𝐼 such that the constraints are met.

Therefore, a robot with only castor wheels can move with any velocity in the space of possible robot motions. We term such systems omnidirectional.

A real-world example of such a system is the five-castor wheel office chair Assuming that all joints are able to move freely, select any motion vector on the plane for the chair and push it by hand.

Its castor wheels will spin and steer as needed to achieve that motion without contact point sliding.

If each of the chair’s castor wheels housed two motors, one for spinning and one for steering, thena control system would be able to move the chair along any trajectory in the plane.

Although the kinematics of castor wheels is complex, such wheels do not impose any real constraints on the kinematics of a robot chassis.

Page 22: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Swedish Wheel

Swedish wheels have no vertical axis of rotation, yet are able to move omnidirectionally like the castor wheel.

This is possible by adding a degree of freedom to the fixed standard wheel. Swedish wheels consist of a fixed standard wheel with rollers attached to the Wheel.

The exact angle γ between the roller

axes and the wheel plane can vary.

These two axes are not necessarily independent (except in the case of the Swedish90-degree wheel);

However, it is visually clear that any desired direction of motion isachievable by choosing the appropriate two vectors.

Page 23: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Swedish Wheel

Swedish wheels have no vertical axis of rotation, yet are able to move omnidirectionally like the castor wheel.

This is possible by adding a degree of freedom to the fixed standard wheel. Swedish wheels consist of a fixed standard wheel with rollers attached to the Wheel.

The exact angle γ between the roller axes

and the wheel plane can vary.

These two axes are not necessarily independent (except in the case of the Swedish90-degree wheel);

However, it is visually clear that any desired direction of motion isachievable by choosing the appropriate two vectors.

Page 24: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Robot Kinematic Constraints

Given a mobile robot with M wheels we can now compute the kinematic constraints of the robot chassis.

Only fixed standard wheels and steerable standard wheels require consideration when computing the robot’s kinematic constraints.

Page 25: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Kinematic Constraints: Complete Robot

Page 26: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Stacking the rolling and no-sliding constraints gives an expression for the differential kinematics

Solving this equation for ሶ𝜉𝐼 yields the forward

differential kinematics equation needed for computing wheel odometry (Odometry is the use of data from motion sensors to estimate change in position over time.)

Solving this equation for 𝜑 yields the inverse

differential kinematics equation needed for control

Page 27: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Example

We presented a forward kinematic solution for in the case of a simple differential-drive robot by combining each wheel’s contribution to robot motion.

We can now use the tools presented above to construct the same kinematic expression by direct application of the rolling constraints for every wheel type.

P: point between two wheelsr: wheel diameterl: wheel distance from P

ሶφ1: spinning speed of first wheelሶφ2: spinning speed of second wheel

robot’s overall speed in the global reference frame

Page 28: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

The castor is unpowered and is free to move in any direction, so we ignore this third point of contact altogether.

The two remaining drive wheels are not steerable

Page 29: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and
Page 30: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Example

Page 31: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Combining these individual formulas yields a kinematic model for the differential-drive

P: point between two wheelsr: wheel diameterl: wheel distance from P

ሶφ1: spinning speed of first wheelሶφ2: spinning speed of second wheel

robot’s overall speed in the global reference frame

Page 32: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Suppose that the robot is positioned such that

If the robot engages its wheels unevenly, with speeds

Its velocity in the global reference frame

P: point between two wheelsr: wheel diameterl: wheel distance from P

ሶφ1: spinning speed of first wheelሶφ2: spinning speed of second wheel

Page 33: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Mobile Robot Maneuverability:Degree of Mobility

Slip constraint can also be demonstrated geometrically using the concept of a robot’s instantaneous center of rotation (ICR).

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

Zero motion line is the horizontal axis, perpendicular to the wheel plane.

Wheel must move instantaneously along some circle of radius R such that the center of that circle is located on the zero motion line. This center point, called the instantaneous center of rotation, may lie anywhere along the zero motion line.

When R is at infinity, the wheel moves in a straight line.

Page 34: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Mobile Robot Maneuverability:Degree of Mobility

A robot such as the Ackerman vehicle in figure can have several wheels, but it must always have a single ICR.

Because all of its zero motion lines meet at a single point, there is a single solution for robot motion, placing the ICR at this meet point.

Geometric construction demonstrates how robot mobility is a function of the number of constraints on the robot’s motion, not the number of wheels.

The bicycle shown has two wheels, w1 and w2.

Each wheel contributes a constraint, or a zeromotion line.

Taken together, the two constraints result in a single point as the only remaining solution for the ICR.

Page 35: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

In the case of the differential drive robot the two wheels have the samezero motion line aligned along the same horizontal axis.

Therefore, the ICR is constrained to lie along a line, not at a specific point.

Thus, although the bicycle and differential-drive chassis have the same number of nonomnidirectionalwheels, the former has two independent kinematic constraints while the latter has only one.

Page 36: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Instantaneous Center of Rotation (ICR)

The ICR has a zero motion line drawn through the horizontal axis perpendicular to the wheel plane

The wheel moves along a radius R with center on the zero motion line, the center of the circle is the ICR

ICR is the point around which each wheel of the robot makes a circular course

The ICR changes over time as a function of the individual wheel velocities

Page 37: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Instantaneous Center of Rotation (ICR)

When R is infinity, wheel velocities are equivalent and the robot moves in a straight line

When R is zero, wheel velocities are the negatives of each other and the robot spins in place

All other cases, R is finite and non-zero and the robot follows a curved trajectory about a point which is a distance R from the robot’s center

Note that differential drive robot’s are very sensitive to the velocity differences between the two wheels making it hard to move in a perfectly straight line

Page 38: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Robot chassis kinematics is therefore a function of the set of independent constraints arising from all standard wheels.

The mathematical interpretation of independence is related to the rank of a matrix.

Recall that the rank of a matrix is the largest number of linearly independent rows or columns.

is the number of independent constraints.

represents all sliding constraints imposed by the wheels of the mobile robot.

The greater the number of independent constraints, and therefore the greater the rank of

Page 39: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Consider a robot with a single fixed standard wheel whichis at a position specified by parameters

Since there are no steerable standard wheels

A differential-drive robot wheel 1 with and wheel 2 with holds the geometry

is one

Alternatively consider two wheels postioned like a bicyclesuch that then

is two

Page 40: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

The possible range of rank values for any robot

if there are zero independent kinematic constraints

In this case there are neither fixed nor steerable standard wheels attached to the robot frame:

If the robot is completely constrained in all directions,

This robot is degenerate, since motion in the plane is totally impossible

A robot’s degree of mobility

Differential drive robot has

Bicycle has

Any robot consisting only of omnidirectional wheels such as Swedish or spherical wheels will have the maximum mobility

Page 41: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Degree of Steerability The degree of steerability, δs , of a mobile robot is defined by the

number of independently controllable steering parameters, δs=rank[C1s(βs)]

An increase in the rank of C1s(βs) implies more kinematic constraints and less mobility

Conversely, an increase in the rank of C1s(βs) implies more degrees of steering freedom and greater eventual maneuverability

Since C1(βs) includes C1s(βs), a steered standard wheel can increase steerability and decrease mobility

The particular orientation of a steered standard wheel at any instant imposes a kinematic constraint.

However, the ability to change that orientation can lead to an additional degree of maneuverability

Range of δs : 0 ≤ δs ≤ 2

The case δs=1 is most common when a robot configuration includes one or more

steerable standard wheels.

No steerable standard wheels means δs = 0

No fixed standard wheels, two steerable standard wheels δs = 2. Like a pseudobicycle,

orienting one wheel constrains the ICR to a line, while the second wheel can constrain the ICR to any point along that line. robot can place its ICR anywhere on the ground plane.

Page 42: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Example

For example, consider an ordinary automobile. In this case Nf=2 and Ns=2.

But the fixed wheels share a common axle and so rank[C1f]=1.

The fixed wheels and any one of the steerable wheels constrain the ICR to be a point along the line extending from the rear axle.

Therefore, the second steerable wheel cannot impose any independent kinematic constraint and so δs=rank[C1s(βs)]=1.

In this case δm=3-rank[C1(βs)]=1

Page 43: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Degree of Maneuverability The robot’s overall degrees of freedom (DOF) or degree of

maneuverability is defined in terms of mobility and steerability:

δM = δm + δs

Includes degrees of freedom that a robot manipulates through wheel velocity and degrees of freedom that it indirectly manipulates through steering configuration and moving

Two robots with same δM are not necessarily equal (i.e. tricycle and differential drive robot)

For any robot with δM=2, the ICR is always constrained to lie on a line

For any robot with δM=3, the ICR is not constrained and can be set to any

point on the plane

Page 44: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

EXAMPLE

In a three-wheeled synchro drive robot Nf=0 and Ns=3.

δm=3-rank[C1(βs)]=1

The three wheels do not share a common axle; therefore, two of the three contribute independent sliding constraints. The third must be dependent on these two constraints for motion to be possible.

A synchro drive robot with the steering frozen manipulates only one degree of freedom, consisting of traveling back and forth on a straight line.

Based on equation δs=rank[C1s(βs)]=2, if the wheels were independently steerable

In reality δs=1 since a single motor steers all three wheels using a belt drive.

Maneuverability of a synchro drive robot

δM=δs+δm=2

This result implies that a synchro drive robot can only manipulate, in total, two

degrees of freedom. Only the x-y position of the chassis can be manipulated

Page 45: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Mobile Robot Workspace

For a robot, maneuverability is equivalent to its control degrees of freedom.

Robot can use its control degrees of freedom in different ways to position itself in the environment.

For instance, consider the Ackerman vehicle, or automobile. The total number of control degrees of freedom for such a vehicle is δM=2, one for steering and the

second for actuation of the drive wheels.

But what are the total degrees of freedom of the vehicle in its environment?

In fact, it is three: the car can position itself on the plane at any point x-y and with any angle θ.

Thus, identifying a robot’s space of possible configurations is important because, surprisingly, it can exceed δM.

In addition to workspace, we care about How the robot is able to move between various configurations?

What are the types of paths that it can follow?

What are its possible trajectories through this configuration space?

We move away from inner kinematic details such as wheels and focus instead on the robot chassis pose and the chassis degrees of freedom.

Page 46: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Degrees of Freedom

In defining the workspace of a robot, it is useful to first examine its admissible velocity space.

Given the kinematic constraints of the robot, its velocity space describes the independent components of robot motion that the robot can control.

For example, the velocity space of a unicycle can be represented with two axes, one representing the instantaneous forward speed of the unicycle and the second representing the instantaneous change in orientation of the unicycle.

The number of dimensions in the velocity space of a robot is the number of independently achievable velocities. This is also called the differential degrees of freedom (DDOF).

A robot’s DDOF is always equal to its degree of mobility δm.

For example, a bicycle has the following degree of maneuverability:

δM=δs+δm=1+1=2

The DDOF of a bicycle is indeed 1.

Page 47: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Degrees of Freedom

An omnibot, a robot with three Swedish wheels can set all ሶ𝑥, ሶ𝑦 and ሶθ

δM=δm+δs=3+0=3=DDOF

DOF=3

A bicycle has

δM=δm+δs=1+1=2=DDOF

DOF=3

A bicycle and omnibot can achieve any pose (x, y, θ) such as ‘movelaterally 1m’

But a biycycle can do this motion like parallel parking of automobileswhile omnibot can do it directly.

DDOF≤δM≤DOF

DOF governs the robot’s ability to achieve various poses, so the robot’s DDOF governs its ability to achieve various paths.

Page 48: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Holonomic Robots

A holonomic robot is a robot that has zero nonholonomic kinematic constraints

A nonholonomic kinematic constraint requires a differential relationship, such as the derivative of a position variable.

The fixed standard wheel sliding constraint is nonintegrable, depending explicitly on robot motion. Therefore, the sliding constraint is a nonholonomicconstraint.

Due to fixed wheel sliding constraint will be in force for such a robot, we can conclude that the bicycle is a nonholonomic robot

Page 49: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Suppose that one locks the bicycle steering system

δM =1

Assume bicycle is directed in direction of XR alignedwith XI. Then rotation matrix is unit matrix Rθ=I and

Sliding constraints

Becomes x=0, y=0 and θ=0.

Rolling constraints

can be replaced this with one that directly relates position on the line, x, with wheel rotation angle φ

Locked bicycle is an example of the first type of holonomic robot—where constraints do exist but are all holonomic kinematic constraints.

This is the case for all holonomic robots with

δM ≤3

Page 50: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

The second type of holonomic robot exists when there are no kinematic constraints

This is the case for all holonomic robots with

δM =3

An alternative way to describe a holonomic robot isthat a robot is holonomic if and only if DDOF=DOF

This is because it is only through nonholonomicconstraints (imposed by steerable or fixed standard wheels) resulting DDOF<DOF

The particular form of holonomy most relevant to mobile robotics is that of DDOF=DOF=3

An omnidirectional robot is a holonomic robot withDDOF=3

This type of robot is preffered since its chassis is usefulachieving poses in a workspace with dimensionality 3.

Page 51: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Path and Trajectory Considerations

An omnidirectional robot can trace any path through its workspace ofposes because it is holonomic in a three dimensional workspace.

Although powerful from a path space point of view, they are thus much less common than fixed and steerable standard wheels, mainly because their design and fabrication are somewhat complex and expensive.

Nonholonomic constraints might drastically improve stability of movements.

While an omnidirectional vehicle driving at high speed on a curve with constant diameter, vehicle will be exposed to a non-negligible centripetalforce.

This lateral force pushing the vehicle out of the curve has to be counteracted by the motor torque of the omnidirectional wheels. In case of motor or control failure, the vehicle will be thrown out of the curve.

However, for a carlike robot with kinematic constraints, the lateral forces are passively counteracted through the sliding constraints, mitigating thedemands on motor torque.

Page 52: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

There is a difference between a degree of freedom granted by steering versus by direct control of wheel velocity in the context of trajectories rather than paths.

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

Therefore, for an omnidirectional robot on the ground plane, a path generally denotes a trace through a 3D space of pose; for the same robot, a trajectory denotes a trace through the 4D space of pose plus time.

Consider a goal trajectory in which the robot moves along axis XI at a constant speed of 1 m/s for 1 second, then changes orientation counterclockwise 90 degrees also in 1 second, then moves parallel to axis YI for 1 final second.

Page 53: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Two-steer has δM =3 can follow the

path described for omnidirectionalrobot.

However, it cannot follow 4Dtrajectory for omnidirectional robot.

Even if steering velocity is finite and arbitrary, although the two-steer would be able to change steering speed instantly, it would have to wait for the angle of the steerablewheels to change to the desired position before initiating a change in the robot chassis orientation.

In short, the two-steer requires changes to internal degrees of freedom and because these changes take time, arbitrary trajectories are not attainable.

Achievable trajectory for a two-steeris depicted in the figure

In contrast to the desired three phases of motion, this trajectory has five phases.

Page 54: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Beyond Basic Kinematics

Mobile robot kinematics is only an introduction.

For high speed mobile robots, dynamic constraints alsomust be expressed either.

Many mobile robots such as tank-type chassis and four-wheel slip/skid systems violate the preceding kinematic models and dynamics of viscous friction between the robot and the ground plane must be modelled.

Appropriate actuation of robot’s degrees of freedom called motorization, requires further analysis of the forces that must be actively supplied to realize the kinematic range of motion available to the robot.

A real-world control algorithm must be designed that can drive the robot from pose to pose using the trajectories demanded for the application.

Page 55: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Motion Control (Kinematic Control)

Motion control might not be an easy task for nonholonomic systems.

Open loop control (trajectory-following)

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

This is often done by dividing the trajectory (path) in motion segments of clearly defined shape, for example, straight lines and segments of a circle.

Page 56: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

The control problem is thus to precompute a smooth trajectory based on line and circle segments that drives the robot from the initial position to the final position.

This approach can be regarded as open-loop motion control, because the measured robot position is not fed back for velocity or position control.

Page 57: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

It has several disadvantages:

It is not at all an easy task to precompute a feasible trajectory if all limitations and constraints of the robot’s velocities and accelerations have to be considered.

The robot will not automatically adapt or correct the trajectory if dynamic changes of the environment occur.

The resulting trajectories are usually not smooth, because the transitions from one trajectorysegment to another are, for most of the commonly used segments (e.g., lines and part of circles), not smooth. This means there is a discontinuity in the robot’s acceleration.

Page 58: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Feedback control A more appropriate approach in motion control of a mobile robot is to use

a real-state feedback controller.

With such a controller the robot’s path-planning task is reduced to settingintermediate positions (subgoals) lying on the requested path.

Example: Feedback control of differential-drive mobile robot with an arbitrary position and orientation of therobot and a predefined goal position and orientation.

Page 59: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Given a robot with an arbitrary position and orientation and a predefined goal position and orientation.

Design a control matrix K for a real state feedback controller to drive the pose error to zero.

The task of the controller layout is to find a control matrix K, if it exists

e=Pose-error =current position– goal position

Page 60: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Kinematic model

Assume that the goal is at the origin of the inertial frame.

The kinematics for the differential drive mobile robot with respect to the global (inertial) reference frame are:

Page 61: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

P: point between two wheelsr: wheel diameterl: wheel distance from P

ሶφ1: spinning speed of first wheelሶφ2: spinning speed of second wheel

Page 62: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Kinematic model Consider the coordinate transformation into polar coordinates with its

origin at the goal position.

Page 63: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Kinematic model Consider the coordinate transformation into polar coordinates with its

origin at the goal position.

Robot is facingthe goal point

Robot’s back is tothe goal point

Page 64: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Kinematic Position Control: The Control Law The control signals v and w must now be designed to drive the robot from

its actual configuration, (ρ0, α0, β0) to the goal position.

Consider the control law, v = kρρ and w = kαα +kββ then

Robot will be driven to

(ρ0, α0, β0)=(0, 0, 0))

Page 65: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

The goal is in the center and the initial position on the circle.

Page 66: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics

Page 67: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics: Instantaneous Pose

At time t + Δ, the robot pose with respect to the ICR is

Since ICR(t) = (x(t) – R sinθ, y(t) + R cosθ)

Page 68: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics: Linear Displacement

Page 69: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics Example:Linear Displacement

Page 70: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics Example:Linear Displacement

Page 71: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics Example:Counterclockwise Turn

Page 72: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics Example:Counterclockwise Turn

Page 73: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics:Counterclockwise Spin

Page 74: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics:Counterclockwise Spin

Page 75: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics:Clockwise Turn

Page 76: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics:Clockwise Turn

Page 77: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics:Clockwise Spin

Page 78: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Forward Kinematics:Clockwise Spin

Page 79: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Inverse Kinematics

Inverse Kinematics is determining the control parameters(wheel velocities) that will make the robot move to a new pose from its current pose

This is a very difficult problem

Too many unknowns, not enough equations and multiple solutions

The easy solution is to

Spin the robot to the desired angle

Move forward to the desired location

Page 80: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Inverse Kinematics

Approximate a desired path with arcs based upon computing ICR values

Result is a set of straight-line paths and ICR arc potions

Either set the robot drive time and compute velocities for each portion of the path

Or set velocities and compute drive time for each portion of the path

Page 81: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Inverse Kinematics:Spin Time And Velocities

Page 82: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Inverse Kinematics:Forward Time

Page 83: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

Inverse Kinematics:Forward Velocities

Page 84: Mobile Robot Kinematics - mece494.cankaya.edu.trmece494.cankaya.edu.tr/uploads/files/Mobile Robot Kinematics(1).pdf · Position estimation is different between a mobile robot and

why use polar coordinates feedback control of a differential drive robot