DYNAMIC CONTROL OF WHEELED MOBILE ROBOT USING SLIDING MODE
P. RUAUX, G. BOURDON, S. DELAPLACE Laboratoire de Robotique de Paris Universite Pierre et Marie Curie-CNRS-Universite St Quentin en Yvelines 10, 12 avenue de l'Europe 78140 VELIZY FRANCE E-mail : ruaux@robot.uvsq.fr
ROMANSY 1996 Udine, Italie. (pages 205-212)
mechanical, hardware and software architecture. This open structure is realized with a serial high speed bus : CAN. We develop the contraint and dynamic equations and we explain the state system. To control this robot, we use a variable structure control to track desired trajectories. However, this control method is too constraining to DC motor. We adjust this controller to implement it in the view to delete the chaterring. Di erent simulations are performed to show the e ciency of this controller.
Abstract : In this paper, we present a new robot ROMAIN. We describe the used
1 Introduction
After some kinematic studies and experimentations on our old robot ROMEO (classical control, neural network control, fuzzy control, multi-agent control), we focuse the dynamic e ects on this type of structure. We have built a new robot ROMAIN ( gure 1) (french acronymous of instrumented autonomous mobile robot). In a rst part, we present the hardware, software and mechanical structure. To control this robot, we implement the variable structure control method. This control allows to converge to the desired orders to processing switching laws imposing the change between two states when the trajectory meet the selected surface in the state space 6]. We show di erent simulations which allow to set futur experimentations.
2 Robot description 2.1 Structure characteristics
To design this new robot, we choose the same con guration as the last robot of our laboratory ROMEO 1]. The locomotion is realized with four wheels; two rear driving
Figure 1: ROMAIN Mobile Robot wheels and two front free wheels. The robot turns easily with a lot of dexterity and stability nevertheless in a constraint environment. Each driving wheel is made up a DC motor (500 W), a reducer (1/16) and an optic incremental encoder (2000 pts). The available power is 60 V with automobile batteries. Two DC-DC converters pilot the motors by a control voltage with a current mode.
2.2 Hardware architecture
To realize the hardware part, we opt for a multi layer system. This conception allows to decentralize di erent tasks and relieve the principal system. The computation time is improved with this parallel structure. Furthermore it's easy to add or delete layer without remake all hardware architecture. The high level is supported by an industrial 486-DX2-66 PC. It's dedicated to tracking trajectory algorithm. It generates orders to the low layer. At present, only two layers exist. The second level (low level) manages di erent small tasks. Many cards compose this layer, each of them controls a physical system as motors, encoders, ultrasonic sensors, communication protocol, accelerometers, etc... These cards are made around microcontroller (80C31 or 80C592). They have RAM, ROM, interface communication. Annex cards are realized to motor axis control, to manage ultrasonic sensors, etc... The sampling time to control motors is 2 ms with these cards. The middle layer is in realization
progress. It will be composed of 16 bit microcontroller dedicated to many computations. It will support di erent algorithms as odometer for instance. At present, this layer is enclosed in the high level. It's necessary to communicate between this layers. We choose to take the local network : CAN (Control Area Network). This serial bus was developed during the last decade by BOSCH and INTEL corporation to manage the ABS car system. This high speed bus ( 1Mbits/s), has a protocol allowing to add or delete nodes without modify the hardware, a non destructive collision detection by bitwise arbitration, a predictable maximum latency time message. Each level has a communication interface.the nal structure is represented in the gure 2 (a). All cards have been developed in our laboratory.
2.3 Software architecture
An OS9000 operating system is installed on the board industrial PC. This real time system of Microwave corporation is the Intel target of OS9. Tasks have been developed allowing to manage several actions as : - CAN reading task - keyboard capture task - initialisation task - odometer task - CAN writing task - putting screen task - end task - control task
The task schedulling permits to send the orders at the low level every 10 ms.
3 Dynamics of wheeled mobile robot
To determinate the dynamic model of our robot ROMAIN, we choose the Lagrangian method to easely take into account the nonholonomic constraints.
3.1 Constraint equation and inertia Matrix
We only consider the dynamic of the driving wheels (free wheels are passives).
High L ev el
In dus tri al PC
Low Level 80C31
80C31
CAN 1
80 C3 1 80C31
8 0 C 59 2
Axis C ar d
Axis Ca r d
US s ens o rs
US sensors
accelero. sens ors
(a)
(b)
Figure 2: Coordinate of mobile robot (a) and Hardware structure (b) Description of parameters gure 2(a): Lf : length of the plateform front (x0,y0 ): the world coordinate system part (x1,y1 ): the coordinate system xed to l : the angular position of the left the robot rear driving wheel G: the center of mass with its cor : the angular position of the ordinates (xG ,yG) right rear driving wheel L: length of the robot : the angle between the two col: width of the robot ordinate systems b: the distance between either r: the radius of each driving driving wheels and the axis of wheel symmetry c: de ned by 2rb Lr : the distance between the cenMf : front part mass of the ter of mass and the axle of the plateform rear driving wheels Mr : rear part mass of the plateform Lrr : length of the plateform rear Mt : total mass of the plateform part Mw : wheel driving mass We consider the following generalized coordinates vector q :
q = (xG ; yG; l;
r)
t
(1)
The contact between the wheels and the ground satis es the condition of rolling without slipping. We obtain this holonomic equation : r(_ ? _) _= (2) r l 2b
And two nonholonomic equations who de ned the D matrix : 2 3 rL ?sin( ) cos( ) rLbr ?2b r 7 2 D(q) = 6 4 ?r ?r 5 cos( ) sin( ) 2 2
(3)
To compute the inertia matrix, we neglect the inertia expression due to the orientation. We concider the plateform as two parallelepipeds with di erent lengths and mass. The front part corresponds to the batteries and the rear part to electronic cards and PC. We explain the inertia matrix on the mass center : 2 2 2 Mt 0 0 6 (l + H ) 12 6 Mf L2 +Mr L2 2 rr f L Mt 2 3 3 Ip = 6 0 + 4M 2 (Mf + Mr ) 0 6 12 H + 12 t 4 Mf L2 +Mr L2 rr Mt 2 f L2 3 3 0 0 + 4M 2 (Mf + Mr ) 12 l + 12 t (4) We must take into account the turn part of this robot which corresponds to rotor motors, reducers and wheels. Let N the reducer ratio equal to 16 and Jrr the inertia of reducermotor set. Wheels are considered as cylenders. We obtain : 2 (5) It = mw r + N 2 Jrr
2
3 7 7 7 7 5
3.2 Dynamic equations
The total kinetic energy of this robot is :
1 1 K = 2 mt (x_G 2 + y_G2) + Ip3 3 _2 + 2 It ( _l 2 + _ ) r
2
(6) (7) (8)
We explain the motion equation on the form :
2 0 6 Mt 0 6 6 0 Mt 0 6 A(q) = 6 6 0 0 Ip 3 c2 + It 6 3 4
0 0
3
A(q)q + B (q; q_) + C (q) = ? Dt
0
B (q; q_) = 0 : Coriolis matrix, : Torque matrix, : Lagrange multipliers matrix We choose the state vector as :
2 3 q x = 6 7 with 4 5 2 6 =4
_ _
l r
?Ip 3 c2 Ip 3c2 + It
3
3 7 7 7 0 7 : Inertial matrix 7 2 7 ?Ip3 3 c 7 5
3 7 5
(9)
We can explain the state equation 3] as : 2 r rLr 6 ? 2b sin ( _ r ? _ l ) + 2 cos ( _ l + _ l ) 6 rLr r 6 2b cos ( _ r ? _ l ) + 2 sin ( _ l + _ l ) 6 6 6 _ 6 l x = f (x) + gu f (x) = 6 _ 6 _ 6 r 6 6 6 0 6 4
0
3 2 7 6 7 6 7 6 7 6 7 6 7 6 7 7 g=6 6 7 6 7 6 7 6 7 6 7 6 7 6 5 4
0 0 0 0 1 0
0 0 0 0 0 1
3 7 7 7 7 7 7 7 7 7 7 7 7 7 7 5
(10)
4 Sliding Mode Control
The ROMAIN mobile robot is a nonholonomic system. We can't control all of position and orientation components. We choose to control the following position in the world frame : 3 2 xG + La cos 7 (11) Z=6 5 4 yG + La sin La is the distance between the mass center and the control point on the x1 axis. To control this robot, we take the sliding mode method. The variable structure control allows to take into account uncertain parameters 4] 5]. It corresponds to inaccuracies on the terms actually in the model. This typical structure of a robust controller is composed of a nominal part, similar to a feedback linearizing and of additional terms aimed to deal with model uncertainty 5]. We have a nonlinear system described by the (10) equation. We write our system in the following canonical form 2] :
x = f (x) + gu and z(x) = c(x) _
(12)
The state vector x is partitioned into x1 and x2 where dim-x2 = dim u = m and dim-x1 = n-m. The reduced form of the system model takes the form
x1 _ x2 _
= =
f1 (x) f1 (x) + g u
where
f2 (x) = 0
(13)
We determine two switching surfaces as : 8 > sx = z 1 + 1 z1 < _ z =z ?z ~ ~ ~ where _ i i d i = 1; 2 > sy = z 2 + 2 z2 _ : z i = z_i ? z_d ~ ~ ~
(14)
We use the reaching law approach 2] to specify the dynamic of the switching function. Let the dynamic of the switching function be specifed by the di erential equation
s = ?Qsgn(s) ? Kf (s) _
Using the reaching law (15) in the system (13) yields the VSC signal ! ! @s g ?1 Qsgn(s) + Kf (s) + @s f (x) u(x) = ? @x @x 1
2 1
(15) (16)
@s This relation exists only if La 6= ?Lr (Inversion condition of the @x2 g matrix) So, with this law, the control can be switched from one value to another at will, in nitely fast. In practical systems, it is impossible to achieve the high switching control that is necessary to most VSC design (presence of nite time delay for control computation, limitations of physical actuators,...). To eliminate the chattering, we replace the sign function by a saturation function. The behaviour controller is linear when j s j < L.
5 Simulations
To illustrate this control law, we determine two trajectories. In fact, the ROMAIN robot (RR) tracks a virtual robot (VR). On the gure 3 (a) the initial VR position is (xd ; yd) = (5; 0) and its orientation is d = 45 . Its velocity increases during 3 seconds, remains constant during 9 seconds and decreases during 3 seconds. The RR position is (0,0) and its orientation is 0. This robot catches up VR with real characteristic respect (maximum torque value : 100 Nm). The maximum velocity is 2.5 m/s. We have simulated with di erent values. If values are too great, the system can't correctely react, the system is too much solicited and quits the sliding surfaces. On the contrary, if values is too small, the system has a great response time and it converges slowly. In the other simulation ( gure 3 (b)), we nd the same characteristics. It exists a tracking error arround one millimeter. At the end of the straight trajectory, the VR stops, and the tracking error decreases to evolve nil. With the substitution of sign function by saturation function, the chattering is erased and the experimentation is possible (torques are compatible with motors).
6 Conclusion
In this paper, we have presented a new fast robot. It's based on an open structure to have a great exibility. We determine dynamic equation and we establish a sliding mode
m 25
m 10 desired 5 0.5 1 0
20
15
10 -5 5 0.5 0 0 1.5 5 2.6 10 15 20 25 m -10 -10 -5 0 5 10 m
(a)
(b)
Figure 3: Straight trajectory (a) curve trajectory (b) control to track a trajectory. In simulations, we emphased good results. We have shown the importance of values which permit to give dynamics of our system keeping physical values. At present, experimentations are in progress.
References
1] Stephane Delaplace. Navigation a cout minimal d'un robot mobile dans un environement partiellement connu. These de doctorat de l'Universite Pierre et Marie Curie, 1991. 2] John Y. Hung, Weibing Gao, and James C. Hung. Variable structure control: A survey. IEEE Transactions on Industrial Electronics, 40(1):2 22, february 1993. 3] Pascal Ruaux, Gerard Bourdon, Stephane Delaplace, Nathalie Pons, and Jacques Rabit. A rapid mobile robot synthesis. IEEE International Conference on Systems, Man and Cybernetics, 5:4073 4078, 1995. 4] Hyun-Sik Shim, Jong-Hwan kim, and Kwangill koh. Variable structure control of nonholonomic wheeled mobile robot. IEEE International Conference on Robotics and Automation, pages 1694 1699, 1995. 5] J. Slotine and W. Li. Applied Nonlinear Control. Englewood Cli s, NJ:Prentice Hall. 6] Vadim I. Utkin. Variable structure systems with sliding modes. IEEE Transactions on Automatic Control, AC-22(2):212 231, April 1977.