0% found this document useful (0 votes)
185 views5 pages

Fuzzy Route Control of Dynamic Model of Four-Wheeled Mobile Robot

This document describes a fuzzy route controller for a four-wheeled mobile robot. The controller uses a dynamic model that calculates forces and electric activities during robot movement. A kinematic model of the robot is expanded with a minimal dynamic model. The fuzzy route controller is compared to a PID controller for reaching a target point while meeting specific requirements. The controller uses distance and angular deviation as inputs and outputs velocity and steering angle.

Uploaded by

István Kecskés
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
185 views5 pages

Fuzzy Route Control of Dynamic Model of Four-Wheeled Mobile Robot

This document describes a fuzzy route controller for a four-wheeled mobile robot. The controller uses a dynamic model that calculates forces and electric activities during robot movement. A kinematic model of the robot is expanded with a minimal dynamic model. The fuzzy route controller is compared to a PID controller for reaching a target point while meeting specific requirements. The controller uses distance and angular deviation as inputs and outputs velocity and steering angle.

Uploaded by

István Kecskés
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Fuzzy route control of dynamic model of four-

wheeled mobile robot


István Kecskés*, Péter Odry**
*Appl-DSP, Palić, Serbia
** Subotica Tech, Subotica, Serbia
[email protected], [email protected]

Abstract — The dynamic model calculates the forces and model that were used for comparison can be found in
electric activities that appear during the movement of the Table I.
robot. The article [1] demonstrates a full kinematic model of
a four-wheeled robot car which we have expanded with a
minimal dynamic model in this work. Fuzzy route control
was applied, because it was more customizable than the
simple PID control. In the foreseen task, the robot must
reach a target point by some predefined specific
requirements. We performed a comparison between the P
route controller solution in article [2] and our Fuzzy
controller for a case. Fuzzy logic, one of the most suitable
soft computing methods which can represent the knowledge
base of the routing requirement [3]. We developed fitness
function evaluation of driving, for which the kinematic and
dynamic characteristics are required.

I. INTRODUCTION
The kinematic and dynamic modeling is essential for
effective development of robots, especially if controllers
are under research. The kinematic model describes the
movement while the dynamic model shows the forces,
torque effects on the robot body and engine and electrical
activity of the motor. These characteristics are important
for the development of suitable controllers [4, 5, 6, 7].
Any robot structure may be in focus, one of the most
important tasks is the appropriate moves of robot in the Figure 1. Theoretical scheme of bicycle/car [1]
space. For this it is always important to consider the
number of degrees of freedom, in which the object can The scheme of theoretical kinematic model of a bicycle
move. The number of drives that can be assigned to a can be seen in Fig. 1.
robot will determine its degrees of freedom. If we equip a
robot with as many drives, as its number of degrees of TABLE I. EXAMPLE PARAMETERS OF KINEMATIC MODEL
freedom, then it can achieve all the possible directions for Parameter Symbol Example value
movement. In many cases there is no need to assign each wheelbase (shaft distance) L[m] 0.2
drive for every freedom, because the robot works equally
well with less drives. For example, it is the case with this Limits of steering angles γ MIN , γ MAX [rad ] -0.5, +0.5
car which we are studying in this paper. This vehicle has
three degrees of freedom, but is only equipped with two B. Dynamic Model
drives. In many cases gravity is counted as an additional Besides the kinematic model we developed a minimal
drive. dynamic model of the bicycle which is described in this
Once the robot has been built it can achieve a number paper. The whole control loop system can be seen in Fig.
of regulation options. The goal can be to reach a certain 2, which also includes the main subject of research: route
point, trajectory tracking, tracking a moving target, controller. The minimal dynamic model means for us that
tracking a line, turning into a predetermined direction it can neglect the inertial and friction effect of the wheels,
(angle), etc. In addition, you can choose one from the furthermore the dynamic reaction of steering and turning.
number of controllers. Thus the following main part in the dynamic model
remains:
II. BICYCLE MODEL OF CAR-LIKE ROBOT 1. DC motor, which drives the rear wheel or wheels of
the robot-car. The gear with its losses is installed in the
A. Kinematic Model motor model. This modeling was published in [4, 5].
The theoretical description and Simulink
implementation of the kinematic model has been given in
[1] in more details. The example, parameters of kinematic
Figure 2. Block Diagram of Full Kinematics and Dynamics model with Route Controllers

2. The inertial load of robot body ( J R ) which are


TABLE II. EXAMPLE PARAMETERS OF DYNAMIC MODEL
transformed to inertial load on axis of motor (1). The
Parameter Symbol Example value
friction between robot wheels and ground ( BR ) are robot weight m[kg ] 1,2
neglected. radius of drive (rear) wheel r[m ] 0,07


2
mv 2 2
v gear ratio rG 50
Ek = = ⇒ J = m   = mr 2
2 2 ω  DC motor parameters Faulhaber 2232012SR [8]
(1) gear parameters Faulhaber 26A [9]
2
mr PID motor controller (P, I, D) (10,100,0)
JR =
rG supply voltage U MAX [V ] 12

3. A motor and gear possess internal inertia and viscous


C. Driving Of Robot Model
friction ( J M . , BM , J G , BG ). These can be calculated
We chose the example drive where the robot has to
from the datasheet of the used motor and gear. reach a target point while studying the P and Fuzzy route
From all these loads the resultant total load acting on controller. Fig. 2 shows these route controllers and their
the motor axis can be calculated (2). connection in the system. This is a feedback system to
ensure that the vehicle is heading for the specified target,
J = JM + JG + JR according to the conditions specified in the fuzzy
(2)
B = B M + BG + B R controller. It compares x and y outputs of the bicycle’s
kinematic model with the xD and yD (desired) target
4. The task of the PID controller (motor controller) is to coordinates. The results of subtraction are xE and yE (error)
control the motor in such a way that the robot’s real which shows how far away the robot is from the goal (3)
velocity reaches the instantaneous desired velocity. The
desired velocity was determined by the mentioned route xE = xD − x, yE = yD − y (3)
controller. In this paper we are not dealing with the
description and parameterization of this motor controller. The controller needs to know what the distance is
In the example case PID is configured for good working. between the currently located vehicle and the target,
Earlier we were dealing with motor controllers in [4, 5]. therefore the distance in (4), should be calculated. We also
Table II summarizes all the parameters of the dynamic need to know the deviation between the angle of the
model for the example case. robot’s direction and the proper angle which leads to the
goal. Formulae (5) and (6) can be written with the help of
diagram in Fig. 3. These formulae are also used for P
controller in the [2].
Figure 3. Presentation of angular deviation ( ϕ)

d= xE + y E
2 2 (4)

 yE 
α = tan−1   (5)
 xE  Figure 5. Distance input (d) of Fuzzy controller

ϕ = θ −α (6) The second input is the phi angle with the following
value domain [-π, +π] radian. This is the angle, which
shows how much the deviation is between the target and
III. BUILDING FUZZY ROUTE CONTROLLER the orientation of the car. There are three values: right,
The Fuzzy controller includes two inputs as can be left, or straight. Relative to the target car thus indicating
seen in Fig. 4: d as distance and phi as the angle of whether it is in the right, left or straight. The following
direction error. Outputs are v as velocity and gamma as rules are set up which also can be seen in Fig. 7:
angle of steering wheel, with which the model is • If the robot-car stands in left direction, the speed is
controlled. These outputs will be the inputs of the reduced and it turns to the right.
dynamic and kinematic model. We chose trimf as a • If the robot-car stands in right direction, the speed is
membership function for easy use and implementation. reduced and it turns to the left
Other parameters were left as default values, because
there was no purpose to study and optimize them in more • If the robot-car stands in the target’s direction, then it
detail. moves forward with high-speed.
Two Membership Functions were created for the two The output speed (v) can be slow or fast (Fig. 6). Based
types of ratings determined for the distance (Fig. 5): close on the rules laid down the car's speed will take values in
to the goal (small), or away from the goal (big). The two the given [-0.2 1] m/s range.
membership functions are set up in form as shown, so
that the small value can influence the output activated for
1 meter distance. This is necessary to have a more
gradual decrease of speed during approaching the target.
We determined with rules that if the distance is small,
then the speed is reduced.

Figure 6. Velocity output (v) of Fuzzy Controller

The second output is the gamma, which is adjusted to


the second input phi described with three membership
Figure 4. Structure of Fuzzy controller in Matlab’s FIS editor functions: go left (goleft), go straight (straight) or go right
(goright). Its limit is consistent with the boundaries of the
steering wheel defined in model with variables γ MIN , γ MAX . are not derived from the book; the author probably set
In this example it is [-0.5 +0.5] radian. them empirically.
Fig. 7 shows the rules set up for the Fuzzy controller. The simulations are performed with both route
controllers with the same environment. Table III contains
the simulation parameters.

TABLE III. EXAMPLE PARAMETERS OF SIMULATION


Parameter Symbol Example value
Figure 7. Rules of Fuzzy controller Start position x START , y START [m] 0, 0
Target position x DES , y DES [m] -4, 2
Fig. 8, 9 shows the Fuzzy’s surface of the output in Running time t[sec] 13
terms of speed (Fig. 8) and in terms of steering (Fig. 9). In
the three-dimensional coordinate system the surface
displays all the possible values of output which depend on In Fig. 10 and Fig. 11 the behaviors and results of both
two inputs: phi and d. The speed in phi angle point of studied controllers can be compared.
view is the maximum value, when the car is moving
towards the goal line. The speed is less when the vehicle
turns more to the left or right from the goal. The rule of
speed in terms of distance: greater distance results in
higher speed.

Figure 10. XY graph of path (P and FZZ). Starting point in [0,0], target
point in [-4,2]

Figure 8. Fuzzy surface of speed control

Figure 11. Kinematic and dynamic curves during simulation (P and


FZZ): above the used electrical power; middle the desired (dashed) and
real (solid) velocity; below the distance from target point
Figure 9. Fuzzy surface of steer angle control
As Fig. 11 shows the P controller defines proportionally
IV. CONCLUSION the large desired velocity with the distance. Therefore the
robot has high velocity in the beginning, and then as it
For comparison we built P controller in given [2]. The approaches the goal it slows down. Nearing the target the
values of P controller (0.5 for speed and 4 for the angle) robot will be very slow, if there was no inertia, it would
need infinite time to reach its target. The P controller has desired velocity is slower, later in a straight direction of
another deficiency that does not take into account the movement, the velocity increases, and close to the target
turning of the robot when it specifies velocity. It is well- the speed is slowing down.
known from theory that if a vehicle is turning, then a The evaluation of efficiency of both studied controllers
slower speed is needed to keep the robot on the ground. was performed by defining a specific fitness function.
Therefore this P controller is not appropriate to be the Table IV shows the details of this fitness evaluation.
controller of a real robot-car. Fuzzy got ten times higher fitness value than the P
Furthermore it can be seen that in the beginning the controller for this example.
desired speed (specified by this controller) reached 1.4 This assessment is not primarily appropriate for proving
m/s value. The robot can’t reach this value with its current that the Fuzzy controller is better than the simple P, since
equipment; the maximum achievable speed is 1 m/s. If the it becomes obvious from the simulation results. Rather it
P value is reduced then this problem disappears of course, can be useful for a possible system optimization, where
but more time is needed on the road. It follows that in case the measure of fitness is essential. The current model and
of a further target or closer target the best P gain value current fitness function could optimize the mechanical and
should be calculated again if we wish the behavior of the electrical parameters of the robot, the route controller
driving to remain the same. (parameters of Fuzzy controller) and the motor controller,
We have taken into account these deficiencies when too.
building our Fuzzy route controller. In Fig. 11 it can also
be seen that in the beginning during the turning phase the

TABLE IV. FITNESS EVALUATION OF P AND FUZZY DRIVING EXAMPLE


P Fuzzy
Property of driving Description Formula
controller controller
completion time
Driving is better if completion time is
shorter
t C = t | d ≤ 0.1m 11.87 9.27

∫ v(t )dt
1 tC
average speed
Magnitude of speed normalizes the other v= 0.442 0.577
properties tC t =0

1  dv(t ) 
2
Driving is better if acceleration is smaller
t ∫  dt 
mean square of acceleration
and without peaks ac =   dt 0.879 0.103

∫ i (t )u (t )dt
1 tC
electric energy consumption Driving is better if electric energy p= 1.649 1.283
(average power) consumption is smaller tC t =0

1
fitness function
The value which indicates effectiveness F= 0.131 1.421
of driving or controlling tC ⋅ v ⋅ ac ⋅ p
[5] István Kecskés, Péter Odry: Full kinematic and dynamic modeling
REFERENCES of “Szabad(ka)-Duna” Hexapod, SISY 2009, pp:215-219, ISBN:
[1] István Kecskés, Zsuzsanna Balogh, Péter Odry: Modeling and 978-1-4244-5348-1
fuzzy control of a four-wheeled mobile robot, SISY 2012, in press. [6] Eric N Moret: Dynamic Modeling and Control of a Car-Like
[2] Peter Corke: Robotics, Vision and Control; Fundamental Robot, Virginia Polytechnic Institute and State University, 2003
Algorithms in MATLAB, ISBN 978-3-642-20143-1, Springer- [7] M. Egerstedt, X. Hu and A. Stotsky: Control of Car-like Robot
Verlag Berlin Heidelberg, 2011 Using a Dynamic Model, Optimization and Systems Theory,
[3] Imre J. Rudas, János Fodor: Intelligent Systems, Int. J. of Royal Instritute of Technology, SE - 100 44 Stockholm, Sweden
Computers, Communications & Control,Vol. III (2008), pp. 132- [8] http://www.faulhaber.com/uploadpk/EN_2232_SR_DFF.pdf
138, E-ISSN 1841-9844 [9] http://www.faulhaber.com/uploadpk/EN_26A_DFF.pdf
[4] István Kecskés, Péter Odry: Fuzzy Controlling of Hexapod Robot
Arm with Coreless DC Micromotor, XXIII. MicroCAD, Miskolc,
2009 march 19-20

You might also like