Copyright © IFAC Mechatronic Systems, Sydney, Australia, 2004
ELSEVIER
IFAC PUBLICATIONS www.elsevier.comllocatelifac
IlESIGN, MODELlNG AND EXPRIMENTAL ANALYSIS OF WHEELED MOBILE ROBOTS
M. H. Korayem, T. Bani Rostam
Robotic Research Laboratory, College of Mechanical Engineering, Iran University of Science and Technology, Tehran, Iran
Abstract: This paper presents the mech an ical design process of two wheeled mobile robots. Each step of the final design process in two cases is described . Case I is related to the omni-directional mobile robot and case II is a differential drive robot. In addition , the kinematics equations of the final design are derived and their inverse .Iacobian matrix for the designs are presented. The dynamic equations of motion for the final design are derived in a symbolic form, assuming that no slip occurs on the wheels in the spin direction. In order to validate the kinematics and dynamic equations, consequences of s imulation in Maple and Visual Nastran softwa res are carried out. Finally, by using kinematics equations and UMBmark test errors of an omni-directional robot and differential drive robot are determined and corrected by applying correction factors. Copyright © 2004 IFAC
Keywords: Omni-Directional, Differential Drive, Odometry Test, Systematic Error.
directional Sweden- wheeled vehicles that includes wheel slip detection and compensation (Dickerson and Lapin, 1(91). Nomad, is a mobile robot designed for planetary exploration. It was using two primary interfaces: the Virtual Dashboard and the Telepresence Interface. The Virtual Dashboard provided a real-time visualization of Nomad's state including position on aerial images . The Telepresence Interface used panospheric camera images to create an immersive forward-looking display (Marchler, 1(97). CLAPPER, consisted of two TRC LabMates connected by a compliant linkage, uses two rotary encoders to measure the rotation of the LabMates relative to the compliant linkage has the unique ability to measure and correct non-sy stematic dead reckoning errors during motion Borenstein and Feng, 1(96). Another drive configuration for mobile robots uses tracks instead of wheels. This very special implementation of a differential drive is known as skid steering and is routinely implemented in track form on bulldozers and armored vehicles [Borenstein, Everett, and Feng, 19(6). This paper presents a kinematics and dynamic models for two differe nt mobile robots include an omni-directionalmobile robot and a differential drive robot. This article presents the robots design, followed by kinematics and dynamic modeling, simulation, and experimental results to demonstrate
I. INTRODUCTION One of the major tasks of autonomous robot navigation is localization. For two wheel robot, odometry remain s to be one of the most important means of achieving this task. Odometry is the measurement of wheel rotation as a function of time. Odometric localization accumulates errors in an unbounded fashion due to systematic and nonsys tematic errors. A lot of research works have been lIndergone for improving the reliability of odometry errors (Chong and Kleeman, 1(98). For autonomous robots, navigating and interacting with their environment are fundamental skill. Depending on their task, robots need different tec hniques to work and survive in their environment. Va rious navigati o n systems can provide robot with its absolute position, like laser range finder (Wit. 1(98). Choi and Sreenivasan ( 1999) have designed articulated wheeled vehicles with variable-length axles to eliminate kinematics wheel surface slipping. Hamdy and Badreddin (1999) developed a tenthorde r nonlinear dynamic model for a wheeled mobile robot that includes slip between the driven wheels and the ground. Scheding et al. (1999) present experimental evaluation of a navigation system that han dles autonomous vehicle wheel slip. Dickerson and Lapin (190 I) present a controller for omni-
629
the accuracy of the data obtained ti'om experimental test of robots.
1.1. Case 11. DijiCrential Dril'e Robut The construction of differential drive robot is consist of some components such as two light wheels. two pulley-belt systems. two shafts that connect the wheels to pulleys. a micro controller and a processo r for data processing transmitted to the robot as shown in Fig. 3. Two empowered castor wheels provide the equilibrium of system at the ends of the robot. The castors cause slipping during direction changes. The drive has the advantages of simplicity and a very tight turning radius. The motors are coupled to the wheel shafts through a 50.1: I gear ratio. Two stepping 1110tors are controlled by a Penti um III computer. The data are sent as pulses through LPT I port for each motor. These parts are shown in manufactured model of robot in Fig. 3.
2. DESING OF MOBILE ROBOTS There were several factors influencing the design of mobi le robot such as : weight of robot, type and material of wheels and rollers and control devices. The mechanical design process starts by knowing the robot parts and environment. :!. I. Cuse I: OIl//1I-Directi onal Robot
A computer controller consists of three drivers with its own DC motor is used as shown in Fig. I. Three DC motors with built-in reduction gears and incremental encoders drive three wheels constituting the front axle of the vehicle. The mechanical mechani sm consists of three gear boxes, three beltpulley system s and six shafts for transmitting the angular velocities of gear boxes to the wheel s. The angle between the motor shaft and the wheel shaft is <)() degrees. No change in angular velocity is observed in the belt-pulley system and torque is tran smitted to the wheel. The gearbox is located between the upper shaft and motor shaft.
t..Y ''______ Fi g. 3. Manufa ctured differential cirive robot 3. KINEMATICS MODELl NG In this modelling redundancy condition are delivered. In thi s conciition we must create some additional constraints for so lving the kinematics and dynamic equations. Some of these constrains are obtained from non-slipping assumption and others are created by considering the logical and sufficient constraint in robot motion. The angular and linear velocities are calculated from Equation (I) and (:2). respectively.
Fig. I. Manufactured Omni-dircctional robot The robot consists of three drive wheels with its own controlled DC motors and encoders. The resolution of encoders is 0.98 mm/pulse. This robot uses a rentium Ill , 1.2 GHz for path detection and vision algorithm. One ivlicrocontroller (89C51) control the wheels speed ..1\ webcam provides images connected tll system. Sensors obtain environm ent data and send it to inference engine and processor. Control block diagram of robot is shown in Fig. 2.
;+'W H1 =R;+' Cw,+ ' Q ,+,)
( I)
'+'v,+ , =R;+'( v;+ 'w; x~ ~ ,+ ' v,+,)
(2)
3.1. Case I: Omni-Direclional Rohot The mobile frame [X,' I' Y.'I is located at the centre of gravity of the robot as shown in Fig. 4. The velocity vectors generated by each wheel are offset
t
from the
(0,
XII
+~)for
axis by same angles, These angles are: I, (0 ,
+~)for
2. and (0 ,
+~)for
3.
Given that the velocity vector for wheel i is given by
Re ,. it
is simple to compute the necessary wheel speed for a desired Cartesian velocity as can be see n in Equation (3), It can be calculated from transformation matrixes that obtained from DenavitHartenberg notations (Meier, Fong. Thorpe, and Bauer, 1998). The inverse kinematics equation is as foll ows:
R8 cosy
Fig. 2. Block Diagram of robot
- _>;,\/ cos( +a, +y)-
,v,,, sin( +a, +y) - 1',8, cosy 630
= 0
(3 )
Where R refers to the distance from the centre of gravity of the robot to the centre of the wheels along a radial path . [X" )~,] is the fixed world frame, ~ is
I'
the orientation of the robot with respect to the fixed world frame, r l is the radiu s of the wheel s, and e is the angular position of each wheel. The
/. /.-----~~"
"(~".., ..,
'Y""
1
iy/
'" , om \
/
'-. ">'\
'"
1 !.--Xj-'"'
(,, -\
\
\ (,-"~
\
\ \S1
,
'\
... f\
I
)
,)
dl
COS(O , +4>+y)
sill(o: + ~+y) cos(o , +~+y)
Ij COSY] Ij COSY
s lIl (8 , + ~+y)
cos(8 , +~+y)
I',COSY
.
-I. I. Cose
(4)
1f
./ /.~/
T=
~,.",, \-;,,:;1~
A,
from equation of moti on.
I
is the torque exerted on the robot by
•.
i'
2
2
~r (M + 3111 )eo,S + -':' 1'(,1/ + 3111 )sinS
(10)
(I.. 'I
'~-' ~.
Er ~+ .'111 +-II1 I (".,r· +h'' )) ± -r 2 I 61
Ir-r---->.,;,'-/--:/~Z!f
i
be obtained frOI11 constraint
positive is relative to't I and negative expressed 1:' 2 . The torques of actuator is cal cul ated by solving the dynamic equations. As shown in equations (10) the torque of right \-"heel has a small di fference with the torque of right wheel.
-'/i) + ysin(8 -'/i) +/0) = 0 (6) .-I-cos(8 +~) + ) ' sin(e + '/i) = 0 (7)
I
the constraint
right wheel. l' 2 is the torque exerted on the robot by the left wheel and I is the distance frolll the centre of mass to the wheels and is equal to -T I that the
- .i'cos(S
•
Ii is
A, is the
r Oll/l7i- Directiol7al Robot
Figure 3. 't
-\-cos(8 +~ )+ j'sin(8 +~ )+/o) =0 (5)
".
qi are the
Consider the differential drive mobile robot shown in
axis is given bye . (i) /( and (i) I. that are related to the angular velocity of robot wheels. To get the robot position and orientation, the velocity constraints should sati sfY the following non-holonomic con straint :
.r
I
f'f
-1.2. Case //.. Differential Drive Mobile Robot
coordinates of the robot are given by (x, y{. The angle that the velocity vector makes with the inel1ial
t:i
(8)
Substituting the kinetic and potential term s into equations (9) derives the equations of motion in the standard format. The torques are influenced from the effect of potential and energy terllls and calculated either so lving these equations using Maple software (Korayelll, Maddahi, Bani Rostam, 2004).
Figure 5 shows the inertial coordinate system for a differential drive mobile robot. The inertial
y
,=1
equations (5) to (7) and
3. I. DifFerential f)rive Robots
,.0)/1
I, can
coefficient.
Where y angle for thi s design is taken zero and shows the structure of wheel s.
1'0) ,
-,
Lagrange coefficient and the
e quation (3) allows us to form the inverse Jacobian matrix of the system as follows:
[
aq,
forces or torques act on each wheel,
Fig. 4. Kinematics diagram of mobile robot
Ncos y
ail,
yn•
S ill(IiI+ ~+Y)
-I] - I
general coordinates and velocities, Q, is the external
~'<~.. (/:::':-~:'/' r\" ~:/
.r' = _ 1-
-'1i)
Where I is the Lagrangian functi on, q i and
I
I , \ / ; . "" /
b-
- sin(8+'1i) - sin(8
Mobile robot dynamics refer to the relationship between forces, torques and acceleration. Although there was an exi stin g derivati on for a similar model, the lack of sy mmetry in this wheel design introduced complications. The derivation began using the Lagrangian approach as follows : al \ - 1" '-11 N d al (9) - ( - ) - - = ( ) + 2). ;: 1- ,~ , ... ,
respect to the mobi le robot frame.
//
-'1i)
COS(s
4. DYNAMI C MODE LING OF MOBILE ROBOTS
co nstant 8 i refers to the wheel orientation with
/
.J=~[COS(8+~)
5. SIrvlULATION STUDY OF WHEELED ROBOTS
I I
It is possible to simulate the system kinematics and dynamic using Working Model software for a given equations of moti on.
x
.,.
Fig. 5. Coordinate system for a differential drive mobile robot
5. 1. Case /. Umni-Direcfional Robot
The responses of the system to a simple step-input for orientation with maintaining a fixed position of
The robot kinematics associated with the lacobian matrix is defined by:
631
bJse (0") are presented. Thi s simulation deals only with mechani ca l factors and ignores any electrical components and slippage.
5.2. Case II. Differential Drive robot
The responses of the robot to the same input with difference direction for orientation with maintaining a fi xed position of base are presented. The additional objects such as motors are not shown in this mode l. Fig. 10 presents the schemat ic mode l of analyzed vehicle. The overshoot is approx imatel y 4.52% for the X position and 0.8% for the Y position as can be seen from Fig. I L In Fig. 12 the to rques of motor I are shown. As show n the predicted torques in Working Model has some difference with theatri ca l condit ion. The source of these errors is that in theoretical models the friction is negligible but in Working Model and manufactured plans the fri cti on plays an essential role. In thi s model the coefficient of friction is considered too large therefore the Fig. 1'2 have jumps with high amplitude.
-M_
Fig. 6. Compari son between the positions in two si lllul ati ons ---Map le
- - - -. - -
" .... 1
..
u
Fig. 10. The schematic model of differentiJI drive robot
Fig. 7. Co mpar ison of torque in Illotor I
.-- 1 ., r
.1 ·''' .. ·· 1..-·1
Fig. 11 . Comparison between the positi ons in two si mulati ons
Fig. 8. Compari son of torque in motor '2
-I
,,,I
,I
-----.
_.. _ - - - - --
--_._--Fig. 12. Compariso n of to rque in motor I
Fig. 9. Comparison of torque in motor 3
6. EXPR IMENTAL TEST
~'Iathelll a tical
analysis of trajecto ry simulati on shows rhJt the overshoot is approximately 2.1 % for the X position and LS% for the Y pos iti on (F ig. 6). In the Figs. 7-9. the to rques of Illotor I" 2. and 3 flu ctuate hriefly while the robot moves to th e desired position .
Odo metl), is based on simpl e equation s that are eas ily impl emented and that utili zed datJ from inexpensive incrementa l wheel encoder. However. odometry is based on the ass umpti on that wheel revo luti ons can be trans lated into linear disp lacement relative to the floor. If the three wheels of the robot
632
are joined to a common axle, the posItIon and orientation of the centre of the axle relative to the previolls position and orientation can be determined from odometry measurements on all of wheels. In practice. incremental encoders are mounted onto three drive wheels.
nominal wheelbase of the vehicle (Borenstein, Everett, and Feng, 1998). 6.2.2. !v/easlIrement and correction o(systematic odomet,y One of the methods for measuring odometry errors is UMBmark test. In this test robot is programmed to traverse the four legs of a square path in C. W. and W. directions but because of some errors not precisely return to the starting position (Borenstein, and Feng, 1996). Simulation of a differential drive robot with effect of two different odometry errors in motion of robot is shown in Figs. 14 and 15.
61 . C({se I: Oml1i-directional Mobile Robot
c.c.
III this paper a simple method was selected to test an ollllli-directional mobile robot. The robot is moved in special trajectories such as straight or self-rotational paths. In this Section the results of test are shown in Figure 13. The test was carried out ten times for every trajectory. In Figure 13 the robot is rotated around its central axis in C.W. direction. The points show the final location of robot's centre of gravity in work plane.
7: " . ~ ,·!l ,:. ' ;
,, ~.
I~:1;
err~:~
I he UMHmark
Two O(Jop\€>lry
,E bano l con<'ee' , fo!:ilChFd otner
:.
Sqll ,H~
l' ,,'
~
Palh
":}
') 10 2ll 30
10
m
60 ! 0 !Il 90 100 110 120 1
Fig. 14 Simulation of UMBmark in C.C. W direction -10
x(Cml
Fig. 13 . The robot rotates along its central axis (C.W.)
6]
The UM 3 matk l e'sl Two o doffl€:fry Nrors 1[ b a nd £: d) ampl i ~y e.] ch oUwr
Square P,,)lh
LJifjerential Drive
r:.',
'V
6]
I. Il1l'esti{!ati()11 of error/actors in mobile robot 1""') '1'"
Systematic errors are usually caused by imperfections In the design and mechanical implementation of a mobile robot and caused by resources that some of them are listed in below. a. Unequal wheel diameters b. Average of both wheel diameters differs from nominal diameter c. Misalignment of wheels d. Uncertainty about the effective wheelbase (due to non-point wheel contact with the floor) e. Limited encoder resolution f. Limited encoder sampling rate Lac k of exact method for measurement amount of odometry errors cause mobile robot calibration doesn ' t have enough accuracy. Error categorizations are used for measurement odometry systematic error. • Unequal wheel diameters.
E
"
=~
Upon completion of the square path in each direction absolute position of the vehicle is measured. These absolute measurements are then compared to the position and orientation of the vehicle as computed from odometry data. The amount of erroneous rotation in each nominal 90 turn is denoted as a in radian. Because of the ratio between wheel diameters robot moved on curved path instead of straight path. The robot will have gained an incremental orientation error p ,at the end of each straight leg in curved motion cases. a. and p can be
(11)
D,
( 12)
diameters and
from
(Xc,g-,cw-Xc,g-,ccw)
simple
geometric
( 13)
-4L IT p = (Yc,g,cw+ Yc,g.ccw) x 180
( 14)
'.
,
-4L
h ll" llIrnal
Du, D,
found
180 x--
a =
r ·. = ~
\Vhere
", ..)
relations.
• Uncertainty about the wheel base. h ~.,
~7
Fig. 15. Simulation ofUMBmark in C.W direction
Where XC , {!,cw / CCH' and Yc,g,cw / cclI' are tow
are the actual right and left wheel
bu c lllu " b'''''"ill ,,/
IT
centre of gravity and L is straight leg of the square path.
are the actual and
633
Using simple geometric relations, the radius of curvature R can be found as:
V_ 1(= _-_2_ sin(p / 2)
Chong. S.K and Kleeman, L. (1998). Accurate Odometry and Error Modeling for a Mobile Robot. Wit, C. C. (1998). Trends in mobile robot and vehicle control. Control Problems in Robotics andAutomation,pp.ISI - 17S . Choi , B. J. and Sreenivasan, S. V. (1999). Gross motion characteristics of articulated mobile robots with pure rolling capability on smooth uneven surfaces. IEEE Trans. Robot. Automat.. vol. IS , pp. 340-343. Hamdy , A. and Badreddin, E. (1999). Dynamic modeling of a wheeled mobile robot for identification, navigation and control. in Proc . IMACS Conf. Modeling and Control of Technol. Sy st.. pp . 119-128 . Scheding, S. Dissanayake, G. Nebot, E. M. and Durrant-Whyte, H. (1999) . Experiment in autonomous navigation of an underground mining vehicle. IEEE Trans . Robot. Automat., vo!. 15 , pp. 8S-9S. Dickerson, S. L. and Lapin, B. D (1991 ). Control of an omni-directional robotic vehicle with mecanum wheels. in Proc . Nat. Telesystems Conf., Vol. I, pp. 323- 328 . Marchler, Ph (1997). Robot Odometry Correction Using Grid Lines on the Floor. MCPA97 Pisa. Italy. Borenstein . .I. , Everett. H. R., and Feng. L (1996) . am I? Sensors and Where Methods for Mobile Robot Positioning, University of Michigan For the Oak Ridge National Lab (ORNL) D&D Program . Roger Meier, Terrence Fong, Charles Thorpe, and Charles Bauer, ( 1(98). A Sensor Fusion Based User Interface for Vehicle Teleoperation. Korayem, M. H. Maddahi, Y. Bani Rostam, T. (2004). Mechanical Design and Modeling of an Omni-directional Mobile Robot. 8th International and 12th Annual Mechanical Engineering Conference . ./. Borenstein, H. R. Everett, and L. Feng, ( 19(8). Mobile robot positIOning : Sensors and techniques. J. Robot. Syst., vo!. 14, pp. 23 1-249. Borenstein, J. and Feng, L (1996). UMBmark - A method for Measuring, Comparing and Correcting Dead-reckoning Errors in Mobile Robots, Technical Report UMMEAM , University of Michigan, pp. 22-94. Borerstion, J and Feng, L (1996) . Measurement and Correction of systematic odometry Errors in Mobile Robots. IEEE Transactions 011 Robotics and Automation . Vol 12. NO.5.
(I)')
Then . we have.
>i
D 'I R+ Ed = -
(16)
D, R - ~~
Similarly. we can compute the wheel base error Eh' h
, 1,"/1 1111
90 " =- -a -h 90()
( 17) /lflf1l1J wl
So that two correction factors defined as (Borerstion and Feng, 1(96): 2 ( 18) CI E" +1
er
2
( 19)
I
-- +1 E
"
Fig. 16 shows experimental results of this method in C. W. and c.c. W. directions before and after calibration.
....
.- ...... -•.... -... -_ .. -................
~-.
_ONEIot..,.c.lI'*'"
\ .\
• COVIW.,C.... IItIoII .
.
REFRENCES
'IJJNA""~
.........
•
Fig. I G. Typical results from running UMBmark in C.W . and c.C.W. direction before and after calibration 7. CONCLUSION This paper presents design, modeling, and simulation of two mobile robots. The kinematics and dynamics equations are derived, then the simulation and experimental test of robots are carried out. There were some errors in these mechanisms which were modelled in Maple and Visual Nastran. These errors are sourced from several cases. such as : 1- The omni-directional wheels don't have a steady condition during the motion. 2- The difference of the center alignment in wheels and shafts can introduce some errors. :l- The mechanical, hardware and control device errors create errors in system. 4- In theoretical models the friction is negligible but in Working Model and manufactured plans the friction plays an essential role. After determining the amount of systematic errors in experimental tests, correction factors are calculated and applied .
634