You are on page 1of 29

AN

OW
DE
ED
Course: ROB 401
Course Title: : Robotics Systems Design

HM
Course sub-title: Engineering Tools to Design Robots
Department of Robotics and Mechatronics Engineering
A (RME)

IM
University of Dhaka

AM Dr. Shamim Ahmed Deowan


E-mail: sadeowan@gmail.com

SH
r.
D
Mobile Robot Design
A N
Driving Robots
O W
Using two DC motors and two wheels is theEeasiest way to build a
D
mobile robot.
E D
Single Wheel Drive M
Hboth driven and
Having a single wheel thatAis
steered is the simplest M
mobile robot. ThisM
I conceptual design for a
design also requires two
A
H always required.
passive caster wheels in the back, since three
contact pointsSare
r.
D
Mobile Robot Design
A N
Driving Robots
O W
E
Linear velocity and angular velocity of D
Single Wheel Drive

decoupled. So for driving straight, E


D the robot are completely
the front wheel is positioned in
H M
the middle position and driven at the desired speed. For driving in
A at an angle matching the desired
a curve, the wheel is positioned
curve. IM
AM
H
.r S
D
Fig.1: Driving and rotation of single wheel drive
Mobile Robot Design
AN
Driving Robots
OW
Single Wheel Drive
DE
ED
Fig.1 shows the driving action for different steering settings. Curve
M
driving is following the arc of a circle; however, this robot design
H
cannot turn on the spot.
A
IM
M
With the front wheel set to 90° the robot will rotate about the
midpoint betweenAthe two caster wheels (see Fig.1, right).
SH
r.
So the minimum turning radius is the distance between the front
D midpoint of the back wheels.
wheel and
Mobile Robot Design
A N
Driving Robots
O W
Differential Drive E
D motors
The differential drive design has two
mounted in fixed positions on the E Dleft and right
side of the robot, independentlyMdriving one wheel
each. A H
Since three groundM IM
contact points are necessary,
A
Hsliders, depending on the location
this design requires one or two additional passive
caster wheelsSor
r. wheels.
D
of the driven

Differential drive is mechanically simpler than the


single wheel drive, because it does not require
rotation of a driven axis.
Mobile Robot Design
A N
Driving Robots
O W
Differential Drive E
D drive is
more complex than for single wheel E D
However, driving control for differential
drive, because

H M
it requires the coordination of two driven wheels.
A
IMdrive design with only a single passive
wheel cannot have A M
The minimal differential
the driving wheels in the middle of the robot,
H
.r S
for stability reasons.

So whenDturning on the spot, the robot will rotate about the off-
center midpoint between the two driven wheels.
Mobile Robot Design
A N
Driving Robots
O W
Differential Drive
D E
The design with two passive wheels D or sliders, one
each in the front and at the back ofE
rotation about the center of theH M the robot, allows
robot.
A
However, this design can IMintroduce surface contact
problems, because itM
H A is using four contact points.

.r S
D
Mobile Robot Design
A N
Driving Robots
O W
Differential Drive E
Fig.2 demonstrates the driving actions ofDa differential drive robot.
D
E the robot drives straight
If both motors run at the same speed,
M
H along the arc of a circle, and if
forward or backward, if one motor is running faster than the
other, the robot drives in aAcurve
M same speed in opposite directions, the
both motors are run atIthe
M
robot turns on the spot.
A
H
.r S
D
Fig.2: Driving and
rotation of differential
drive
Mobile Robot Design
AN
Driving Robots
OW
Differential Drive
DE
ED
HM
A
IM
Example:
A M
A number S ofHrobots using a differential drive have been
r. EyeBot Vehicle, or Eve (in short) is one of the
D of this kind of robot.
developed.
examples
It carried an EyeBot controller (Fig.3) and had a custom shaped
I/O board to match the robot outline – a design approach that
was later dropped in favor of a standard versatile controller.
Mobile Robot Design
AN
Driving Robots
OW
Differential Drive
DE
Example: D
E actuator design, using two
The robot has a differential M drive
H
A with a number of sensors, some
Faulhaber motors with encapsulated gearboxes and encapsulated

IM setups:
encoders. The robot is equipped
M
of which are experimental
A
S H
• Shaft encoders (2 units)
. (1-3 units)
• InfraredrPSD
D proximity sensors (7 units)
• Infrared
• Acoustic bump sensors (2 units)
• QuickCam digital grayscale or color
camera (1 unit)
Fig.3: Eve
Mobile Robot Design
A N
Driving Robots
O W
Synchro-Drive
D E
Synchro-drive is an extension to theDrobot design with a single
E
driven and steered wheel. Here, however,
H M
that are all driven and all being
we have three wheels
steered. The three wheels are
A point in the same driving direction
rotated together so they always
(see Fig.4). IM
A M
H
.r S
D
Fig.4: Xenia, University of Kaiserslautern,
with schematic diagrams
Mobile Robot Design
A N
Driving Robots
O W
Synchro-Drive
D E
This can be accomplished, for example,
and a chain for steering and a single
D by using a single motor
E motor for driving all three
H M
wheels. Therefore, overall a synchro-drive robot still has only two
degrees of freedom. A
IM
A
A synchro-drive robot M is almost a holonomous vehicle, in the
H
.r Sa cylindrical body shape). However, the robot has
sense that it can drive in any desired direction (for this reason
it usually has
D realign its wheels when going from driving forward
to stop and
to driving sideways. Nor can it drive and rotate at the same
time.
Mobile Robot Design
A N
Driving Robots
O W
Ackermann Steering
The standard drive and steering system D
E
of an automobile are two
combined driven rear wheels and D
E two combined steered front

H M
wheels. This is known as Ackermann steering and has a number of
A
advantages and disadvantages when compared to differential
drive.
IM
A M
Advantage:
S H
• Driving straight
r. a common axis.
is not a problem, since the rear wheels are
D
driven via
Disadvantage:
• Vehicle cannot turn on the spot, but requires a certain
minimum radius.
• Rear driving wheels experience slippage in curves.
Mobile Robot Design
A N
Driving Robots
O W
Ackermann Steering
Obviously, a different driving interface is
E
Drequired for Ackermann
steering.
E D
M
Linear velocity and angular H
A velocity are completely decoupled
since they are generated M
I the problem of driving straight.
by independent motors. This makes
M
control a lot easier, especially
A
The driving S H contains two independent velocity/position
controllers,r.one for the rear driving wheels and one for the front
library

steering D
wheels.
Mobile Robot Design
A N
Driving Robots
O W
Ackermann Steering
D E
The steering wheels require a position controller, since they need
E D
to be set to a particular angle as opposed to the velocity controller
of the driving wheels, in order M to maintain a constant rotational
speed.
A H
I M
An additional sensor
A M is required to indicate the zero steering

H
position for the front wheels.

.r S
D
Mobile Robot Design
A N
Driving Robots
O W
Ackermann Steering
Fig.5 shows the “Four Stooges” robot soccer D
E
team from The University of
D
E an EyeBot controller and a digital
Auckland, which competed in the RoboCup Robot Soccer Worldcup. Each robot

camera as its only sensor.


H M
has a model car base and is equipped with

A
IM
A M
S H
Fig.5: TheD
r
Four
.
Stooges
Mobile Robot Design
A N
Driving Robots
O W
Drive Kinematics
In order to obtain the vehicle’s current
E
D trajectory, we need to
constantly monitor both shaft encoders
E D (for example for a vehicle
with differential drive).
H M
Fig.6 shows the distanceM
A
I traveled by a robot with differential drive.

A M
H
.r S
D

Fig.6: Trajectory calculation for differential drive


Mobile Robot Design
AN
Driving Robots
OW
Drive Kinematics
DE
We know:
•r: wheel radiusED
•d:
HM
distance between driven wheels
A
• ticks_per_rev: number of encoder ticks for one full wheel
IM
revolution
• ticksL :
AMnumber of ticks during measurement in left
encoder
SH
r
• ticksR:. number of ticks during measurement in
D
right encoder
Mobile Robot Design
A N
Driving Robots
O W
Drive Kinematics
D E
L D
First we determine the values of s and s in meters, which are the
E right wheel, respectively.
R

M
distances traveled by the left and
H
A revolutions. Multiplying this by the
Dividing the measured ticks by the number of ticks per revolution

IM the traveled distance in meters:


gives us the number of wheel

M
wheel circumference gives
A
SH
r. (1)
D (2)
Mobile Robot Design
A N
Driving Robots
O W
Drive Kinematics
D E
D
So we already know the distance the vehicle has traveled, i.e.:
E (3)
M
H driving forward, backward, or
This formula works for aArobot
I
turning on the spot. WeMstill need to know the vehicle’s rotation
ϕ over the distanceMtraveled.
H A
r.
Assuming theS vehicle follows a circular segment, we can define s L

Dthe traveled part of a full circle ( ϕ in radians) multiplied


and s as
R
by each wheel’s turning radius. If the turning radius of the
vehicle’s center is c, then during a left turn the turning radius of
the right wheel is c + d/2, while the turning radius of the left
wheel is c – d/2. Both circles have the same center.
Mobile Robot Design
AN
Driving Robots
OW
Drive Kinematics
DE
(4)
E D
(5)
H M
Subtracting eqn. 5 fromM
A
I(6)
eqn.4, we get

A M
H
.r S
And finally solving for ϕ, we get

D (7)
Mobile Robot Design
A N
Driving Robots
O W
Drive Kinematics
D E
Using wheel velocities v instead of D driving distances s and
using as wheel rotations per secondEwith radius r for left and right
L,R L,R

wheel, we get: HM
A (8)
IM
A M (9)

S H
Kinematics .differential
r drive:
D specifying the velocities of a differential drive
The formula
vehicle can now be expressed as a matrix.
Mobile Robot Design
AN
Driving Robots
OW
Kinematics differential drive:
DE
D
This is called the forward kinematics:
E
HM
A
IM
AM
where:
SH
r.
V is the vehicle’s linear speed (equals ds/dt or s`),
D
ω is the vehicle’s rotational speed (equals or ϕ`),
θ`L,R are the individual wheel speeds in revolutions per second,
r is the wheel radius,
d is the distance between the two wheels.
Mobile Robot Design
A N
Driving Robots
O W
Inverse Kinematics
D E
D
The inverse kinematics is derived from the previous formula,
E It tells us the required
solving for the individual wheel speeds.
wheel speeds for a desired M
rotational speed). A H vehicle motion (linear and

IM
A M
We can find the inverse kinematics by inverting the 2 × 2
H
matrix of the forward kinematics:
.r S
D
Mobile Robot Design
A N
Driving Robots
O W
Kinematics Ackermann drive
D E
D
If we consider the motion in a vehicle with Ackermann
E is identical with the
steering, then its front wheel motion
H M
vehicle’s forward motion s in the direction of the wheels. It is
Athe vehicle’s overall forward and
also easy to see (Fig.7) that
IM in its rotation) is given by:
downward motion (resulting
A M
H
.r S
D
Fig.7: Motion of vehicle
with Ackermann steering
Mobile Robot Design
A N
Driving Robots
O W
Kinematics Ackermann drive E
If e denotes the distance between frontDand back wheels, then
D
the overall vehicle rotation angle isEϕ = down / e since the front
wheels follow the arc of a circle M
A H when turning.

IM
A M
H
.r S
D
Mobile Robot Design
A N
Driving Robots
Kinematics Ackermann drive O W
D E
The calculation for the traveled distance and angle of a vehicle
with Ackermann drive vehicle is shown
E D in Fig.8,

H M
A
IM
A M
H
.r S
D

Fig.8: Trajectory calculation for Ackermann steering


Mobile Robot Design
AN
Driving Robots
Kinematics Ackermann drive OW
with: DE
α : steering angle,
ED
e M
: distance between front and back wheels,
H
sfront
A
: distance driven, measured at front wheels,
θ`
IM
: driving wheel speed in revolutions per second,
s
M
: total driven distance along arc,
A
ϕ
H
: total vehicle rotation angle
S
r.
The trigonometric relationship between the vehicle’s steering
D
angle and overall movement is:
(10)
(11)
Mobile Robot Design
AN
Driving Robots
Kinematics Ackermann drive O W
E
Expressing this relationship as velocities,D
D we get:
(12)E
H M
A (13)
IMformula becomes relatively simple:
Therefore, the kinematics
A M
H
.r S
D
Note that this formula changes if the vehicle is rear-wheel driven
and the wheel velocity is measured there. In this case the sin
function has to be replaced by the tan function.

You might also like