• No se han encontrado resultados

RECOMENDACIONES

In document FACULTAD DE INGENIERIA Y ARQUITECTURA (página 67-148)

In this section, tracking control of the developed mobile robot is discussed. The kinematics of the nonholonomic robot model is introduced. Then a simple fuzzy controller for real-time navigation of the nonholonomic mobile robot is presented.

2.3.1 Kinematic Model of the Nonholonomic Mobile Robot

The path-tracking problem of the developed mobile robot with kinematic constraints in the two-dimensional (2-D) workspace is presented now. A nonholonomic constraint for a mobile robot is a nonintegrable equation involving the configuration parameters and their derivatives. Such a constraint does not reduce the dimension of the space of configurations attainable by the robot but reduces the dimension of the space of possible differential motions at any given configuration. Consider the mobile robot in Figure 2.5 where the rear wheels are aligned with the vehicle while the front wheels are allowed to pivot about the vertical axes. The constraints on the system arise by allowing the wheels to roll and pivot. In a sufficiently large empty space, a mobile robot can be driven to any position with any orientation; hence, the configuration space of the robot has four dimensions: two for translation, one for rotation, and one for the steering angle. Let (x, y, θ, Φ) denote the configuration of the robot, parameterized by the location of the front wheels. The kinematic model of the mobile robot may be represented as

(2.1)

(2.2)

(2.3)

FIGURE 2.5 Model of the four-wheeled mobile robot.

&x u= 3cosθ

&y u= 3sinθ

&θ=u φ l

3tan

qd

q

Target (xt, yt)

φ φ φd

u2

u3

S2

SI Sm

u1

C R

P

w l Y

y

O x X

0775_C002.fm Page 6 Tuesday, September 4, 2007 2:11 PM

Robotic Application of Mechatronics 2-7

where u3 denotes the forward velocity of the vehicle; θ is the angle of the vehicle body with respect to the horizontal line; Φ is the steering angle with respect to the vehicle body; (x, y) is the location of the center point of the front wheels, and l is the distance between the front and the rear wheels.

The steering angle of the front wheels is adjusted by using a method resembling the differential steering method, as mentioned before. If both front wheels turn in tandem, the robot moves in a straight line. If one front wheel turns faster than the other, the robot follows a curved path. Accordingly, steering the robot is just a matter of varying the speeds of the front wheels. Because the turn radius of the robot is quite large compared with the radius of the wheels, referring to Figure 2.5, we have the following relationships:

(2.4)

(2.5)

(2.6)

where S1 and S2 denote the displacement (distance traveled) of the front left and front right wheels, respectively;

R is the turn radius of the center point of the front wheels; w is the distance between wheels (from center-to-center along the length between the two front wheels or two back wheels); Φ is the angle of turn in radians;

and Sm is the displacement at the center point of the front wheels. Once the geometry of the differential steering system is established, it is easy to develop algorithms for controlling the steering angle Φof the robot. Because the robot is treated as a rigid body, to develop a forward kinematic equation for the differential steering system, a frame of reference is specified. In this frame, an arbitrarily chosen point is treated as the stationary reference, and all other points in the system are treated as moving relative to the reference point. Here we consider the center point of the front wheels as the origin of the frame of reference of the robot.

By differentiating equations 2.4–2.6, we obtain the velocity of the two front wheels as

(2.7)

(2.8)

so that

(2.9) where u1 and u2 correspond to the forward velocity of the front left wheel and the front right wheel, respectively. Then we have

(2.10)

2.3.2 Fuzzy Controller for the Differential Steering System

A block diagram of the fuzzy controller is given in Figure 2.6. The desired Φd is determined by calculating the position of the target in the image representing the environment detected by the color closed-circuit Charge Coupled Device (CCD) camera. The actual turn angle Φ is obtained from the potentiometers mounted on the front wheels of the mobile robot. The command signal Φd is transmitted from the vision board through

S R w

0775_C002.fm Page 7 Tuesday, September 4, 2007 2:11 PM

2-8 Mechatronic Systems: Devices, Design, Control, Operation and Monitoring

the serial port to the chip on which the fuzzy controller resides. The actual angle Φ is injected into the chip through the analog port of the chip. The error between the command signal and the actual position, as well as the change in error of the signal, are calculated and fed into the fuzzy controller embedded in the chip.

From equation 2.10, it can be seen that the difference between the velocities of the front wheels determines the turn speed. The fuzzy controller [2] is designed to generate PWM signals corresponding to u1 and u2 for the front left motor and the front right motor, respectively, to make the turn angle Φ of the front wheels reach the desired angle Φd.

The fuzzification procedure maps the crisp input values to the linguistic fuzzy terms with membership values between 0 and 1. In the present work, five membership functions are used for both error

and change in error .

The rule base stores the rules governing the input–output relationship of the fuzzy controller. The inference mechanism is responsible for decision making in the control system using approximate rea-soning. The operation involved is “AND” because two inputs e and are involved.

The control rules are designed based on expert knowledge and testing. Furthermore, the control rules meet the stability requirements as derived using Lyapunov’s direct method. For example, if is “poslarge”

and is increasing rapidly ( is poslarge), then the left motor should be much faster than the right motor;

i.e., u2u1 should be “NL.” Based on this knowledge, we obtain 25 fuzzy rules. Table 2.1 presents abstract knowledge of the expert related to controlling the turn angle, given the error and its derivative as inputs.

The input and output linguistic variables are summarized in the table.

The defuzzification procedure maps the fuzzy output from the inference mechanism to a crisp signal.

We use the center of gravity (COG) defuzzification method [2] for combining the recommendations represented by the implied fuzzy sets from all the rules. Let bi denote the center of the membership function of the consequent of rule (i), and ∫μ(i) is the area under the membership function μ(i). The COG method computes the crisp value μc to be

(2.11) FIGURE 2.6 The fuzzy logic controller.

TABLE 2.1 Rule Table for the Steering System

u2u1 Pos Large Pos Small Zero Neg Small Neg Large

Poslarge NL NL NL NS ZO

Possmall NL NL NS ZO PS

Zero NL NS ZO PS PL

Negsmall NS ZO PS PL PL

Neglarge ZO PS PL PL PL

Mobile

0775_C002.fm Page 8 Tuesday, September 4, 2007 2:11 PM

Robotic Application of Mechatronics 2-9

Here ∫μ(i) can be easily computed because symmetric triangular output membership functions are used that peak at the value 1 and have a base width of w. From geometry, it can be easily shown that the area under a triangle “truncated” at a height of h is equal to .

Because the output membership functions are symmetric, the center of the implied fuzzy set will be the same as the center of the consequent fuzzy set from which it is computed. If the output membership functions are not symmetric, then their centers, which are needed in the computation of the COG, will change depending on the membership value of the premise. This will require recomputation of the center at each time instant.

In document FACULTAD DE INGENIERIA Y ARQUITECTURA (página 67-148)

Documento similar