ELSEVIER
Copyright © IFAC Intelligent Assembly and Disassembly, Bucharest, Romania, 2003
IFAC PUBLICATIONS www .elsevier.comllocatelifac
USING MOBILE ROBOTS IN INTELLIGENT ASSEMBLY OR DISASSEMBLY PROCESS Mircea Nitulescu University of Craiova, Romania Faculty ofAutomation, Computers and Electronics, 5 Lapus, Craiova, Romania
Abstract: The intelligent assembly or disassembly concept integrates the control and the planning of an automated material handling system based on a set of mobile robots. This work presents and analyses some results in path tracking control on complex plane trajectories for a differential wheeled mobile robot with memorized trajectories. For the same model of the robot, the control uses altematively two different algorithms. The first one is a bang-bang algorithm and the second is a classical solution in path tracking control. Copyright © 2003 IFAC Keywords: Robotics, Modelling, Trajectory planning, Control algorithms, Tests.
However, for full flexibility, mobile robots with memorized trajectories perhaps provide the most attractive option for the future. These vehicles require no hidden underfloor cables or tracks, but instead are able to use their own on-board guidance systems to make their way through the factory. There are a variety of methods whereby mobile robots can do this, and a combination is frequently used for design : guidance, position reference beacons, imagining and vision, internal sensors monitoring. The last method is the simplest to implement but is not absolute in the sense that errors can occur due to wheels slipping or skidding. Method based on vision is the most attractive for true autonomy but no commercial system of this type exists at present for factory use. Mobile robots with memorized trajectories are still uncommon even in highly automated factories, but they will have certainly an important role in the factory of the future. The CIM concept will integrate the control and the planning of an automated material handling system based on a set of mobile robots with memorized trajectories. The decreasing costs for hardware and software and new technologies for sensing and actuators are now a very important support for an extensive use ofthis type of mobile robots.
I. INTRODUCTION Automatic guided vehicles are often used in Flexible Manufacturing Systems for servicing CNC machine tools or other auxiliary devices (Mair, 1988; Biekert, 1993). Generally speaking, an automatic guided vehicle system is a material handling system that uses independently operated self-propelled robots that are guided along predefined pathways (Fig. I). They can be programmed for automatic routing and positioning, and many are now designed to operate under the control of a supervisory computer system. In most of current industrial applications, including intelligent assembly or disassembly process, they are essentially mobile pallets carrying platfonns. The definition of the pathways in industrial medium is generally accomplished now using wires embedded in the floor or reflective paint on the floor surface (Fig. 2). Guidance is achieved by sensors on the vehicles that can follow the guide wires or paint. The vehicles are powered by means of on-board batteries that allow operation between recharging. There are a number of different types, all off which operate according to the preceding description.
49
~-
:
- - - -- --- - - - -, PATH PLANNING
, I
Global Path Planner (off-line)
\
...
(xpypq\ , ~,:t) ~
,,-
I
- - - :..- (:c~y:~~, vc,wJ ""
PATH TRACKING Path Tracking Control Algorithm
+v;
w;
+
Inverse Cinematic Transformation
Fig. 1. Copeland's automatic guided vehicle system in assembly line.
I'
wRd
WHEEL CONTROL
"\
w1
I Right Wheel Controller I Left Wheel Controller I UR
."
I
1------------------~
:; i ,- -----.
------- ---
~
+
+
uL
Right DC Motor
MOBILE ROBOT
Left DC Motor
\.
~
..:. 1,-
"\
POSITION ESTIMA TION
I, ~", .
I Fig. 2. Copeland's predefined routes and zones.
I
"Right Encoder
w~
+ +
I
Left Encoder
+ +
I
w1
Direct Cinematic Transformation
Vc
2. MOBILE ROBOT STRUCTURE A differential mobile robot has usually three or four wheels. Two driving wheels are fixed at each side of the robot and one or two castor wheels support the robot at the front and eventually at the rear sides. The robot can move back and forth and change heading angle through velocity control of the driving wheels (Fig.3). It has two degrees of freedom of linear and rotational motions. Because wheeled mobile robots have non - linear cinematic characteristics, path plan-
Fig. 4. Diagram of the path tracking control system. ning and path control become very difficult to design from the viewpoints of optimality and stability. To avoid possible slippage between wheels and floor or mechanical shocks arising from abrupt changes in motion, stable and smooth motions are very important (Andrea, 1991; Bicchi, 1995; De Santis, 1995). There exists inevitable path error between the current position of the robot and the desired path due to the imperfect tracking control of driving wheel velocities or environmental disturbances. This path deviation should be corrected by on-line adjustment of the desired linear and rotational velocities of the robot in the execution level called path-tracking control.
y Ve
Ye
.~.. o
Wc
Odometer Estimation
The hardware environment implementing the control system was designed based on a personal computer. To investigate the performance of the control system in the same priory conditions, a series of path tracking experiments was conducted using a time optimal bang-bang algorithm and a classical algorithm in path tracking control. So, it was possible to evaluate the performances using only minimal software changes.
x
Fig. 3, Parameters for the mobile robot.
50
Y
Target Mobile Robot
v,
Y, Reference trajectory
,/
/
."
-
~
-- --
--
." A
Y,
/ Real Mobile Robot
x, Yc
x
o Fig. 5. Path errors expressed in a local co-ordinate.
determining the rotational velocities in the execution level. The inverse cinematic transformations give the desired velocities and finally the reference wheel velocities through the transformations:
3. GENERAL ROBOT CONTROL SYSTEM
(v; ,m;)
As shown in Fig. 4, the control system contains four subparts: path planner, path-tracking controller, wheel servo controller and position estimation. The path planner makes a plan for a reference path trajectory in two modes: off-line and on-line. In the offline mode the global path is a sequence of prescribed status starting from an initial point and ending at a goal point. The local path (based on the global path) is specifically planned in the on-line mode. During the navigation, the robot usually makes typical motions as straight lines, circular arcs, quick turning motions or lane change motions. A complex plane trajectory can include different combinations between these elementary situations. So, multiple path segments corresponding to such motions in local path planning mode approximate the global path. The motion of the robot can be described (Fig. 3) by linear and rotational velocity which are calculated from the direct cinematic transformations:
m% =R- 1 • k + lA · m; /2) mt=R-1 ·k-1A·m;/2)
(4)
Given the reference wheel velocities ~~,mt), the wheel servo controller, independently designed for each wheel, controls the driving wheel to follow the reference velocities. To accurately navigate along the desired path, the robot has to know its actual position and orientation. They are estimated by an odometric method (Nitulescu, 1995) using wheel encoders. For rotational motion (mc "" 0), finally we obtain:
Xc Yc
= x{ + vc · (sintPc -sintP! Ymc
vc· (costPc -costP! Ymc tPc = tP! + mc . Ts
= y{ -
(5)
For linear motion ( mc = 0) the equations are:
The posture of the mobile robot is defined in operational space by two positioned variables (xc,Yc) and
Xc =x{ + vc· T. .costP! Yc = y{ + vc · T. ·sintP! tPc = tP!
a direction variable (tPc) :
where
and the non-holonomic constraint can be derived:
(6)
(Ts) is the sampling period and the superscript
(P) denotes the value at the last sampling time. The path can be represented by a sequence of target positions. Similar, the current motion of the mobile robot is described by its position and its linear and rotational velocities. As shows in Fig. 5, the path errors are defined in the local co-ordinates fixed on the target vehicle and can be calculated using the equations:
(3)
This means that the robot cannot change position and direction independently and therefore makes it difficult to design the path-tracking controller. This control consists of two independent algorithms, the first determining the desired linear and the second
51
ex =(xl-xJ'COSIPI +(YIe y = (xc -
~
yJ.sin IPI
u y
XI)' sinlPl + (YI - Ye)' coslPl
I
e, =IPI -lPc
(7)
U
where (ex), (e y ) and (e,) are respectively the tan-
u
• Method A
gential, lateral and orientation errors. In long range navigation, it is necessary to periodically correct the accumulated error caused by the estimation. So, in the real case, the mobile differential robot introduces some dynamic restrictions:
Q,J
0
.cu
• 1.1
X
....
-1
Q,J
0
Fig. 6. Complex trajectory based on circular arcs. ur-----~--~----~----~----~----~
y
4. ALGORITHMS FOR ROBOT CONTROL
•
The problem of finding an acceleration control law that enables the vehicle to reach the target position and velocity in minimum time while satisfying the limit conditions can by solved by a typical time optimal bang-bang control method described in Koh and Cho (1994). Summary, it consists in two different algorithms, for linear velocity control and for rotational velocity control. The desired linear velocity is determined to reduce the tangential error, while the desired rotational velocity is determined to reduce simultaneously the lateral and the orientation errors. Due to the non-holonomic restriction (3), the rotational velocity control algorithm is designed by combining the bang-bang control with an on-line curve design scheme. This landing curve, passing the center of the real mobile robot and contacting an asymptotic tangent line of the target vehicle imposed by the global path planner, is a minimal order polynomial curve satisfying the continuity conditions for position, orientation and curvature at the contact point on the tangential line:
.Y"
X ~~----O~----~~----~----~l.I~--~.----~&5
Fig. 7. Complex trajectory based on straight lines o and 90 quick turning motions. y
·4/__ rq L"
max
"[IMethOdB
~
•
M"hod A
)
. ' - .
The stability of the mobile robot in the tracking motion depends on the coefficient (ex) of the landing curve. A method of determining the coefficient is developed in Koh and Cho (1994) through curvature analysis of the landing curve. The dynamic constraints of the robot, such as the acceleration limits or the curvature constraints have been considered for smooth motions. The final conditions for (ex) are: l
M"hodB
o
(9)
!ex!:::; {3 . (wrnax /v Y, where lex! :::;a /6 . v;
Method A
",
.l.
"
/
•••
0' "
••
~ ." X
.•
o~--------~----------------------~ oS 6
Fig. 8. Complex trajectory including all fundamental situations. To compare the performances of the two tracking algorithms, various combinations of the gain set (Kx, Ky' K,) were selected through trial in the same
{3 = 18 . 5- 5 12
constraints on the velocities and accelerations. This second method is namely here Method B.
(10)
For the experimental simulations discussed below, this method is namely here Method A. The classical method (Kriegman and Triendl, 1987) is a linear path tracking control algorithm given by:
5. EXPERIMENTS AND CONCLUSIONS A program was developed to compare the two algorithms, where the mobile robot is described by its parameters: R = 5cm, lA = O.4m, Ts = 20ms, Vrnax =
(11)
0.2m / s,
52
Qrnax
= 0.2m / s2
,
VI
= O.lm / s
,
arnax
=
I
I
Metbod A
Iml ~E:::;\'''''~ I t Fig. 9. Cartesian evolution y{x). -2
0
4
6
~l~f:::=~ I
[m]
_2
Il:E;27i to
Fig. 11. X-time evolution
[m]
~
40
IiO
to
40
Fig. 13. Y -time evolution
Is]
.50
50
Fig. 12. X-time evolution
60
00
I 100
4
~i:b/?
x(t).
~IL?S;/ o
100
t
0
100
[sl
D
y(t).
lOO
iD
Fig. 14. Y -time evolution
Is]
I 150
Is]
w(t) .
Fig. 18. Angular velocity
CiO
80
100
I
.1 ' - - - - - 5 0 - - - - 1 0 0 - - - - - - ' 1 5 0 0
[sl
1
.~'----------'=-----'
[sl
o
Fig. 19. Direction variable ~(t) .
50
Fig. 20. Direction variable ~(t) .
53
[s]
w(t) .
~~l:~l ~~I:rs;:JJ 040
150
Fig. 16. Linear velocity v(t) .
.I'-----------....J o to 40 60 IiO 100
m
I
y(t) .
~OO/'~~1 ~~/'~GlL:
-20
[m]
x(t) .
Iml~[C?S/
Fig. 15. Linear velocity v(t) .
Fig. 17. Angular velocity
6
Fig. 10. Cartesian evolution y(x) .
m
.50
I
Metbod B
100
150
L] ~
0.2mls , amax=0.2mls2,
REFERENCES
v,=O.lmls, a max =
and Wmax =1r 14rad Is. In (Nitulescu, I 999a,b) was reported different experiments with these two algorithms. The experiments were performed for the four typical types of path (straight lines, quick turning motions, circular arcs and lane change motions) and for various combinations of the gain set implied by the Method B. Now, the path tracking experiments were performed for different complex global trajectories as shown Fig. 6-8. Fig. 6 resume the results in the case of the plane trajectory planned by circular arcs like an eight number. Fig. 7 resume the results in the case of the plane trajectory planned o by a combination of four straight lines and 90 quick turning motions, like a rectangle. Fig. 8 resumes the results in the case of the real complex plane trajectory that involve all the basic situations presented above. For this case, Fig. 9-20 offer many possibilities to compare the two method's algorithm in different aspects concerning: cartesian evolution y{x) in 1r
14rad I s2
Fig. 9-10, x-time evolution
Andrea, B. and G. Bastin (1991). Modeling and control of non-holonomic wheeled mobile robots. In: Proceedings of IEEE International Conference on Robotics and Automation, Sacramento, SUA, pp. 1130-1135. Bicchi A., C. Casalino and C. Santilli (1995). Planning shortest bounded curvature paths for a class of nonholonomic vehicles among obstacles. In: Proceedings of IEEE International Conference on Robotics and Automation, Nagoya, Japan, 1995, pp. 1349-1354. Biekert R. (1993), ClM technology: Fundamentals and applications, The Goodheart-Willcox Company Inc., USA. De Santis R. (1995). Modelling and path tracking control of a mobile wheeled robot with a differential drive. Robotica, 13, Part 4, pp. 401-410. Groover M. (1987). Automation, production systems and computer integrated manufacturing, Part V, Prentice Hall International Inc., USA. Hong S. and S. Kim (1996). Local motion planner for non-holonomic mobile robot in the presence of unknown obstacles. In: Proceedings of IEEE International Conference on Robotics and Automation, Minneapolis, SUA, pp. 1212-1217. Koh K. and H. Cho. (1994). A path tracking control system for autonomous mobile robots. Mechatronies, 4, pp. 799-820. Kriegman D. and E. Triendl (1987). A mobile robot: sensing, planning and locomotion. In: IEEE Transaction on Robotics and Automation, Detroit, USA, pp. 402-408. Krogh B. and C. Thorpe (1986). Integrated path planning and dynamic steering control for autonomous vehicles, In: Proceedings of IEEE International Conference on Robotics and Automation, San Francisco, USA, pp. 1664-1669. Mair M. (1988). Industrial robotics, Prentice Hall International Inc., USA. Nishizawa T. and A. Ohia (1995). An implementation of on board position estimation for a mobile robot, In: Proceedings of IEEE International Conference on Robotics and Automation, Nagoya, Japan, pp. 395-400. Nitulescu M. (1995). Odometric measurements and navigation following of the reference trajectory. In: Proceedings of 10th International Conference on Control Systems, Bucharest, Romania, pp. 215-220. Nitulescu M. (1999a). Modelling and path-tracking control of a differential wheeled mobile robot, In: Proceedings of 18th lASTED International Conference on Modelling, Identification and Control, Innsbruck, Austria, pp. 394-397. Nitulescu M. (1999b). Comparative experiments in tracking motion for a mobile robot, In: Proceedings of 8th International Workshop on Robotics in Alpe-Adria-Danube Region, RAAD' 99, Technische Universitat Munchen, Germany, pp. 183188.
x{t) in Fig. 11-12, y-time
evolution y{t) in Fig. 13-14, linear velocity v{t) in Fig. 15-16, angular velocity
w{t) in 17-18, direction
variable ~(t) in Fig. 19-20. Figures were put in appropriate to simplifier the comparison between these two methods in the particular aspects involved. The Method A described so far and the experimental results have the following features. First, it considers the dynamic constraints for robot motion (v max ,a max ,wmax ,a max ) and employs the bang-bang control scheme to make the tracking motion as smooth as possible in minimum time under the constraints. Secondly, by introducing the concept of the landing curve, the non-holonomic problem associated with steering of wheeled mobile robot can be solved. From the figures it can be observed that Method A possesses robust tracking performance and a little faster convergence for various turning angles and different complex trajectories. The path tracking error occurs at the beginning and sometime at the end of the path due to the curvature discontinuity. The results confirm the capability of this tracking method, that guarantee smoothly and fast converging tracking motion for such roughly designed path trajectories, to be practically efficient for general path tracking of a wheeled differential mobile robot. Free ranging mobile robots are still uncommon even in highly automated factories, but they will have probably an important role in the factory of the future and CIM aspects. In this paper, a general path tracking control system for wheeled differential mobile robot has been tested using two different algorithms. The control strategy is adopted in such a way that the local paths are as simply designed as possible and a path tracking control algorithm guarantees smooth and stable motions.
54