Top Banner
Anil Maurya Electrical & Electronics Engineer 1 A REPORT ON ROBOTIC CONTROL USING FUZZY LOGICS BY ANIL MAURYA ELECTRICAL & ELECTRONICS ENGINEER
36
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 1

A

REPORT

ON

ROBOTIC CONTROL

USING

FUZZY LOGICS

BY

ANIL MAURYA ELECTRICAL & ELECTRONICS ENGINEER

Page 2: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 2

CONTENTS

Contents vi

List of Figures x

List of Tables xii

Abstract xiv

Chapter 1: Introduction 2

Chapter 2: Fuzzy logics 3

2.1 Fuzzy Set 4

2.2 Fuzzy Inference System 5

Chapter 3: Operation of Fuzzy Logic 11

3.1 Example of Fuzzy Logic 11

3.2 Fuzzy regions 12

3.3 Fuzzy rules 15

3.4 Fuzzification 16

3.5 Defuzzification 16

Chapter 4: Robot Control with Fuzzy Logics 19

4.1 Reactive behaviors using Fuzzy logics 24

4.1.1 Obstacle avoidance 25

4.1.2 Following edge 25

4.1.3 Target steer 26

4.2 Multiple behaviors fusion by fuzzy reasoning

27

Chapter 5: Application of fuzzy logics 30

Page 3: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 3

Chapter 6: Conclusion 33

Reference

LIST OF FIGURES

Chapter 2

Fig. 2.1 Crisp membership function 5

Fig. 2.2 Fuzzy membership function 8

Fig. 2.3 Trapezoidal membership function 10

Fig. 2.4 Gaussian membership function 10

Fig. 2.5 fuzzy logic control 11

Fig. 2.6 fuzzy inference system 12

Chapter 3

Fig. 3.1 Sectional View of fuzzy room cooler 13

Fig. 3.2 Defuzzification condition 17

Chapter 4

Fig. 4.1 Robot motion to reach a target 21

Fig. 4.2 Robot action behavior control 25

Fig. 4.3 Rule for robot behavior 28

List of Tables

Chapter 3

Table 3.1 Fuzzy Rules 15

Table 3.2 Fuzzification 16

Chapter 4

Table 4.1 FLC rule table 18

Page 4: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 4

ABSTRACT

Fuzzy set theory, originally developed by Lotfi Zadeh in the 1960’s, has become a

popular tool for control applications in recent years (Zadeh, 1965).

Fuzzy control has been used extensively in applications such as servomotor and

process control. One of its main benefits is that it can incorporate a human being’s

expert knowledge about how to control a system, without that a person need to have a

mathematical description of the problem.

Many robots in the literature have used fuzzy logic (Song & Tay, 1992), (Khatib,

1986), (Yanetal, 1994) etc. Computer simulations by Ishikawa feature a mobile robot

that navigates using a planned path and fuzzy logic. Fuzzy logic is used to keep the

robot on the path, except when the danger of collision arises. In this case, a fuzzy

controller for obstacle avoidance takes over.

Konolige, et al. use fuzzy control in conjunction with modeling and planning

techniques to provide reactive guidance of their robot. Sonar is used by robot to

construct a cellular map of its environment.

Sugeno developed a fuzzy control system for a model car capable of driving inside a

fenced-in track. Ultrasonic sensors mounted on a pivoting frame measured the car’s

orientation and distance to the fences. Fuzzy rules were used to guide the car parallel

to the fence and turn corners (Sugeno et al., 1989). The most known fuzzy models in

the literature are Mamdani fuzzy model and Takagi- Sugeno-Kang (TSK) fuzzy

model. The control strategy based on Mamdani model has the linguistic expression

(Mamdani, 1981).

Page 5: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 5

Chapter 1

INTRODUCTION

Fuzzy logic was initiated in 1965 by Lotfi A. Zadeh, professor for computer science at

the university of California in Berkeley, Fuzzy Logic (FL) is a multivalued logic, that

allows intermediate to be defined between conventional evaluations like true/ false,

yes /no, high/low etc. notions like rather tall or very fast can be formulated

mathematically and processed by computers, in order to apply a more human like way

of thinking of the programming of computers. A fuzzy system is an alternative to

traditional notions of set membership and logic that has its origins in ancient Greek

philosophy.

The precision of mathematics owes its success in large part to the efforts of Aristotle

and the philosophers who preceded him. In their efforts to devise a concise theory of

logic, and later mathematics, the so – called “Laws of thought” were posited. One of

these the Law of the Excluded Middle states that every proposition must either is true

or false.

Even when Parmenides proposed the first version of this law (around 400 B.C) there

were strong and immediate objections: for example, Heraclitus proposed that things

could be simultaneously True and Not True. It was Plato who laid the foundation for

that would become fuzzy logic, indicating that there was a third region (beyond True

and False) where these opposites “tumbled about”. Other, more modern philosophers

echoed his sentiments, notably Hegel, Marx, and Engels. But it was Lukasiewicz who

first proposed a systematic alternative to the bi-valued logic of Aristotle.

Even in the present time some Greeks are still outstanding examples for fussiness.

Fuzzy logic has emerged as a profitable tool for the controlling and steering of

systems and complex industrial processes, as well as for household and entertainment

electronics, as well as for the other expert systems and applications like the

classification of SAR data.

Page 6: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 6

Chapter 2

FUZZY LOGICS

FUZZY – “ not clear , distinct , or precise ; blurred ”

[Elian Rich]

Fuzzy logic is a useful method of learning when mathematical methods are not

available and large number of input data is parent. Fuzzy logic is a problem solving

control system methodology that lends itself to implementation in systems ranging

from simple, small embedded micro-controllers to large, networked, multichannel PC

or workstation – based data acquisition and control systems. It can be implemented in

hardware, software or a combination of both. Fuzzy Logic provides a simple way to

arrive at a definite conclusion based upon vague, ambiguous, imprecise, noisy or

missing input information Fuzzy Logic’s approach to control problems mimics how a

person would make decisions, only much faster.

Fuzzy logic techniques have been used in image-understanding applications such as

detection of edges, feature extraction, classification, and clustering. Fuzzy logic poses

the ability to mimic the human mind to effectively employ modes of reasoning that

are approximate rather than exact. In traditional hard computing, decisions or actions

are based on precision, certainty, and vigor. Precision and certainty carry a cost. In

soft computing, tolerance and impression are explored in decision making. The

exploration of the tolerance for imprecision and uncertainty underlies the remarkable

human ability to understand distorted speech, decipher sloppy handwriting,

comprehend nuances of natural language, summarize text, and recognize and classify

images. With FL, we can specify mapping rules in terms of words rather than

numbers.

Computing with the words explores imprecision and tolerance. Another basic concept

in Fuzzy logic is the fuzzy if–then rule. Although rule-based systems have a long

history of use in artificial intelligence, what is missing in such systems is machinery

for dealing with fuzzy consequents or fuzzy antecedents. In most applications, a

Fuzzy logic solution is a translation of a human solution. Thirdly, Fuzzy logic can

model nonlinear functions of arbitrary complexity to a desired degree of accuracy.

Page 7: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 7

Fuzzy logic is a convenient way to map an input space to an output space. Fuzzy logic

is one of the tools used to model a multi-input, multi-output system.

Soft computing includes Fuzzy logic, neural networks, probabilistic reasoning, and

genetic algorithms. Today, techniques or a combination of techniques from all these

areas are used to design an intelligence system. Neural networks provide algorithms

for learning, classification, and optimization, whereas fuzzy logic deals with issues

such as forming impressions and reasoning on a semantic or linguistic level.

Probabilistic reasoning deals with uncertainty. Although there are substantial areas of

overlap between neural networks, Fuzzy logic, and probabilistic reasoning, in general

they are complementary rather than competitive. Recently, many intelligent systems

called neuro fuzzy systems have been used. There are many ways to combine neural

networks and Fuzzy logic techniques. Before doing so, however, it is necessary to

understand basic ideas in the design of Fuzzy logic techniques. In this chapter, we will

introduce Fuzzy logic concepts such as fuzzy sets and their properties, Fuzzy logic

operators, hedges, fuzzy proposition and rule-based systems, fuzzy maps and

inference engine, defuzzification methods, and the design of an Fuzzy logic decision

system.

2.1 Fuzzy sets and membership functions

Fuzzy sets introduce a certain amount of vagueness to reduce complexity of

comprehension. This set consists of elements that signify the degree or grade of

membership to a fuzzy aspect. Membership values usually use closed intervals and

denote the sense of belonging of a member of a crisp set a fuzzy set. Fuzzy Logics

provides the opportunity for modeling conditions that inherently imprecisely defined.

Fuzzy techniques in the form of approximate reasoning provide decision support and

expert systems with powerful reasoning capabilities. The permissiveness of fuzziness

in the human thought process suggests that much of the logic behind thought

processing is not traditional two valued logic or even multivalued logic, but logic with

fuzzy truths, fuzzy connectiveness, and fuzzy rules of inference. A fuzzy set is an

extension of a crisp set. Crisp sets allow only full membership or no membership at

all, whereas fuzzy sets allow partial membership. In a crisp set, membership or non-

membership of element x in set A is described by a characteristic function µA (x),

where µA (x) = 1 if x € A and µA (x) = 0 if x € A. Fuzzy set theory extends this

Page 8: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 8

concept by defining partial membership. A fuzzy set A on a universe of discourse U is

characterized by a membership function µA (x) that takes values in the interval [0.1].

Fuzzy sets represent commonsense linguistic labels like slow, fast, small, large,

heavy, low, medium, high, tall, etc. A given element can be a member of more than

one fuzzy set at a time. A fuzzy set A in U may be represented as a set of ordered

pairs. Each pair consists of a generic element x and its grade of membership function;

that is, A = {(x, µA (x)) | x € U}, x is called a support value if µA (x) > 0. A linguistic

variable x in the universe of discourse U is characterized by T (x) = {Tx1, Tx

2…Txk}

and µA (x) = { µx1, µx

2 ,…. µxk}, where T(x) is the term set of x that is, the set of

names of linguistic value of x, with each Txi being a fuzzy number with membership

function µxi defined on U.

For example, if x indicates height, then T(x) may refer to sets such as short, medium,

or tall. A membership function is essentially a curve that defines how each point in

the input space is mapped to a membership value (or degree of membership) between

0 and 1. As an example, consider a fuzzy set tall. Let the universe of discourse be

heights from 40 inches to 90 inches. With a crisp set, all people with height 72 or

more inches are considered tall, and all people with height of less than 72 inches are

considered not tall. The crisp set membership function for set tall is shown in figure.

The corresponding fuzzy set with a smooth membership function is shown in figure.

The curve defines the transition from not tall and shows the degree of membership for

a given height. We can extend this concept to multiple sets. If we consider a universe

of discourse from 40 inches to 90 inches, then, to describe height, we can use three

term values such as short, average, and tall. In practice, the terms short, medium, and

tall are not used in the strict sense. Instead, they imply a smooth transition. Fuzzy

membership functions representing these sets are shown in figure. The Figure shows

that a person with height 65 inches will have membership value 1 for set medium,

whereas a person with height 60 inches may be a member of the set short and also a

member of the set medium; only the degree of membership varies with these sets.

Various types of membership functions are used, including triangular, trapezoidal,

generalized bell shaped, Gaussian curves, polynomial curves, and sigmoid functions.

figure shows trapezoidal membership functions. Triangular curves depend on three

parameters a, b, and c and are given by

Page 9: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 9

Fig. 2.1 Crisp Membership Function Fig.2.2 Fuzzy

Membership Function

Fig. 2.3 Trapezoidal Membership Function

Page 10: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 10

Trepezoidal Curves dependes on four parameters

2.1

The ∏- shaped membership functions

2.2

Where S(x; a, b, c) represents a membership function defined as

2.3

a, b, and c are the parameters that are adjusted to fit the desired membership data. The

parameter b? Is the half width of the curve at the crossover point? The Gaussian and

π- shaped membership functions are shown in figures, respectively. Gaussian curves

depend on two parameters σ and c and are represented by

2.4

Page 11: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 11

Fig. 2.4 Gaussian Membership Function Fig.2.5 π- shaped membership

functions

2.2 Fuzzy Inference System

The theory of fuzzy logic based system could remain fuzzy till one discovers how to apply it to a problem. Fuzzy Logic has been used in a broad spectrum of applications ranging from domestic like washing machines and cameras, to more sophisticated ones that include turbine control, tracking, data classifiers, etc. Fuzzy Logic by itself does not exhibit intelligence. Invariable systems that use Fuzzy Logic are augmented with techniques that facilitate learning and adaptation to the environment in question.

Fig. 2.6 Block diagram of Fuzzy Logic Control

A fuzzy inference system (FIS) essentially defines a nonlinear mapping of the input

data vector into a scalar output, using fuzzy rules. The mapping process involves

input/output membership functions, Fuzzy Logic operators, fuzzy if–then rules,

aggregation of output sets, and defuzzification. An FIS with multiple outputs can be

considered as a collection of independent multi-input, single-output systems. A

general model of a fuzzy inference system (FIS) is shown in Figure. The Fuzzy Logic

Page 12: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 12

System maps crisp inputs into crisp outputs. It can be seen from the figure that the

Fuzzy Inference System contains four components: the fuzzifier, inference engine,

rule base, and defuzzifier. The rule base contains linguistic rules that are provided by

experts. It is also possible to extract rules from numeric data. Once the rules have

been established, the Fuzzy Inference System can be viewed as a system that maps an

input vector to an output vector. The fuzzifier maps input numbers into corresponding

fuzzy memberships. This is required in order to activate rules that are in terms of

linguistic variables. The fuzzifier takes input values and determines the degree to

which they belong to each of the fuzzy sets via membership functions. The inference

engine defines mapping from input fuzzy sets into output fuzzy sets. It determines the

degree to which the antecedent is satisfied for each rule. If the antecedent of a given

rule has more than one clause, fuzzy operators are applied to obtain one number that

represents the result of the antecedent for that rule. It is possible that one or more

rules may fire at the same time. Outputs for all rules are then aggregated. During

aggregation, fuzzy sets that represent the output of each rule are combined into a

single fuzzy set. Fuzzy rules are fired in parallel, which is one of the important

aspects of an Fuzzy Inference System. In an Fuzzy Inference System, the order in

which rules are fired does not affect the output. The defuzzifier maps output fuzzy

sets into a crisp number. Given a fuzzy set that encompasses a range of output values,

the defuzzifier returns one number, thereby moving from a fuzzy set to a crisp

number. Several methods for defuzzification are used in practice, including the

centroid, maximum, mean of maxima, height, and modified height defuzzifier. The

most popular defuzzification method is the centroid, which calculates and returns the

center of gravity of the aggregated fuzzy set. FISs employ rules. However, unlike

rules in conventional expert systems, a fuzzy rule localizes a region of space along the

function surface instead of isolating a point on the surface. For a given input, more

than one rule may fire. Also, in an FIS, multiple regions are combined in the output

space to produce a composite region. A general schematic of an Fuzzy Inference

System is shown in Figure.

Page 13: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 13

Fig. 2.7 Schematic diagram of Fuzzy Inference System

Page 14: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 14

Chapter 3

OPERATION OF FUZZY LOGIC

We discuss a traditional problem of controlling the speed of a motor based on two

parameters temperature and humidity. Such a model fits snug into room coolers that

use a tank of water and a fan to increase humidity to bring down temperature. Coolers

like these are widely used in tropical high temperature and dry environments. The

same could be extended for a wide range of applications. The following description

explains how fuzzy logic works and how we model a system to use the concept. The

logic explained herein is said to use the Mamdani style of fuzzy inference processing.

We assume conventional room cooler implemented using a fan encased in a box with

wool or hay that is continuously moistened by a tickle of water. A motorized pump

controls the rate of flow of water required for moistening. Two sensors mounted

inside the cooler or in the room at strategic locations measure the fan motor speed and

the temperature within the room. The fan speed could be varied either by a knob by

the user or could be designed to change based on an appropriate parameter sensed

(humidity, for instance). The basic aim here is to achieve a smooth control and also

save on water, a precious resource.

3.1 Example of Fuzzy Logic

The conventional room cooler implemented using a fan encased in a box with wool or

hay that is continuously moistened by a tickle of water. A motorized pump controls

the rate of flow of water required for moistening. Two sensors mounted inside the

cooler or in the room at strategic locations measure the fan motor speed and the

temperature within the room. The fan speed could be varied either by a knob by the

user or could be designed to change based on an appropriate parameter sensed

(humidity, for instance). The basic aim here is to achieve a smooth control and also

save on water, a precious resource.

For simplicity we assume that to maintain the temperature of the room, only the rate

of flow of water needs to be controlled based on the speed of the fan and the

temperature.

Page 15: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 15

Fig.3 .1 Sectional view of fuzzy room cooler

3.2 Fuzzy regions

Two parameters temperature and pressure decide the water flow rate. We define fuzzy

terms for temperature as Cold, Cool, Moderate, Warm and Hot, while those for fan

speed (measured in rotation per minute) as Slack, Low, Medium, Brisk, fast.

Thus temperature in the room could be defined as Cold or Cool or by any of the

corresponding fuzzy linguistic variables. Likewise, the fan speed too could be defined

by any of the latter variables.

The output of the system, which is the water controlled by the motorized pump, could

also be defined accordingly by yet another set of fuzzy terms Strong Negative (SN),

Negative (N), Low -Negative (LN), Medium (M), Low - Positive (LP), Positive (P)

and High – Positive (HP).

With real data available we now define profiles for each of these parameters

temperature, fan motor speed and flow rate by assigning memberships to their

respective values. The shown in the figure depict this relationship for the inputs

temperature and fan speed reveals this for the output flow rate.

Page 16: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 16

Observe that the regions for each of the sets for both the input parameters,

temperature and fan motor speed, as also the output have a common intersection area.

For example, we say that when the temperature is 25 degrees, its membership to the

fuzzy set moderate is 1 (100%). But as we drift away to 30 degrees, its membership to

this set decreases while the same to the set warm starts to increase. Thus when the

temperature is 30 degrees it is neither fully moderate nor warm. These profiles have to

be carefully designed after studying the nature and desired behavior of the system.

(a) Temprature

(b) Fan motor speed

Page 17: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 17

Water Flow Rate

3.3 Fuzzy rules

The fuzzy rules form the triggers of the fuzzy engine. After a study of the system we

could write linguistic rules such as –

R1: if Temperature is Hot and Fan motor Speed is Slack then Flow – rate is HIGH –

POSITIVE.

R2: if Temperature is Hot and Fan motor Speed is Low then Flow – rate is HIGH –

POSITIVE.

R3: if Temperature is Hot and Fan motor Speed is Medium then Flow – rate is

POSITIVE.

R4: if Temperature is Hot and Fan motor Speed is Brisk then Flow – rate is HIGH –

POSITIVE.

R5: if Temperature is Warm and Fan motor Speed is Medium then Flow–rate is

LOW–POSITIVE.

R6: if Temperature is Warm and Fan motor Speed is Medium then Flow – rate is

POSITIVE.

R7: if Temperature is Cool and Fan motor Speed is Low then Flow – rate is

NEGATIVE.

Page 18: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 18

R8: if Temperature is Moderate and Fan motor Speed is Low then Flow – rate is

MEDIUM.

Table 3.1 Table of fuzzy rules

3.4 Fuzzification

The fuzzifier forms the heart of the fuzzy engine. Whenever the sensors report values

of temperature and fan speed, they are mapped based on their memberships to the

respective fuzzy regions they belong to. For instance if at some instance of time t the

temperature is 42 degrees and speed 31 rpm, the corresponding membership value and

the associated fuzzy regions are mentioned below.

Table 3.2 fuzzification

From the table, since both temperature and fan speed belong to two regions; it is clear

that the rules R3, R4, R5 and R6 are applicable. The rules indicate a conflict. While

two of them state the flow – rate should be POSITIVE, the other two states that it

should be LOW – POSITIVE and HIGH – POSITIVE respectively.

Page 19: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 19

3.5 Defuzzifier

The fuzzy outputs LOW – POSITIVE, HIGH – POSITIVE and POSITIVE are to be

converted to a single crisp value which can then be delivered to the final actuator of

the pump. This process is called defuzzification. Several methods are used to achieve

defuzzification, the most common ones being the Centre OF Gravity method and the

Composite Maxima method. In both these methods we need to compute the composite

region formed by the portions A, B, C and D on the output profile. In case of

parameters whose premises are connected by an AND, the minimum of their

memberships is first found. This value is used to cut through the profile of the output

fuzzy set (done by drawing a horizontal line). This results in a region (area) on the

output surface. For cases where an OR relates the premises the maximum membership

is taken to work out the output surface. All output surfaces are found to obtain the

composite output region.

Depending on the application, either the Centre of Gravity or the Composite Maxima

of the Region (area) is found and treated as the crisp output. The former method

works best for control applications such as the one described herein. The crisp output

is the desired flow rate (X – coordinate of the Centroid) and the motorized pump is

adjusted accordingly based on this value.

Fig. 3.2 Defuzzification condition

Page 20: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 20

Defuzzification condition

Fig. 3.3 Defuzzification

Page 21: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 21

Chapter 4

ROBOTIC CONTROL WITH FUZZY LOGIC

The main concept of the study is to coordinate conflicts and competitions among

multiple reactive behaviors efficiently by fuzzy sets and a rule base. To achieve this

objective, an array of ultrasonic sensors and a vision system are mounted on a robot.

The ultrasonic sensors provide distance information between the robot and obstacles

for behavior control of the mobile robot, while the vision system identifies some sub

goals for determining a good motion direction to avoid robot trap in local region.

If a mobile robot moves in unknown environments to reach a specified target without

collisions with obstacles, sensors must be used to acquire information about the real

world. Using such information, it is very difficult to build a precise world model in

real-time for preplanning a collision-free path. On the basis of situational reactive

behaviors, behavior based control has been proposed for robot navigation. Since this

method does not need building an entire world model and complex reasoning process,

it is suitable for robot control in dynamic environments. A key issue in behavior based

control is how to coordinate conflicts and competitions among multiple reactive

behaviors efficiently. The example in Fig.1 shows that the robot must efficiently

weight multiple reactive behaviors, such as avoiding obstacle, following edge, and

moving to target and so on, according to range information, when it reaches a target

inside a U-shaped object. The usual approach for implementing behavior control is

artificial potential fields.

A drawback to this approach is that during pre programming much effort must be

made to test and to adjust some thresholds regarding potential fields for avoiding

obstacle, wandering, and moving to target and so on. In particular, these thresholds

frequently depend on Environments. In, we present an approach for fuzzy logic based

behavior control of a mobile robot. Unlike behavior control based on artificial

potential fields, this method is to compute weights of multiple reactive behaviors in

dynamic environments by a fuzzy logic algorithm rather than simply to inhibit some

reactive behaviors with lower levels. In this paper, we further present a strategy for

fuzzy logic based behavior control of a mobile robot by multi sensor integration. To

achieve this objective, an array of ultrasonic sensors and a vision system are mounted

on a mobile robot. The ultrasonic sensors provide distance information between the

Page 22: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 22

robot and obstacles for robot navigation by reactive behaviors, such as avoiding

obstacles and following edges, while the vision system identifies some sub goals for

determining a good motion direction to avoid robot trap in local region. This method

differs from the fuzzy control approaches for obstacle avoidance in. Since perception

and decision units in this method are integrated in one module by the use of the idea

of reactive behaviors and are directly oriented to a dynamic environment, this strategy

has the better real-time response and reliability. To demonstrate the effectiveness and

the robustness of the proposed strategy, we report a lot of simulation results on robot

navigation in uncertain environments, such as avoiding obstacle in real-time,

decelerating at curved and narrow roads, escaping from a U shaped object and moving

to target and so on.

Fig.49.1 Robot motion to reach a target

Page 23: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 23

Fig. 4.2 Robot motion inside a U – shaped object

Fig. 4.3 this graph shows the membership grades for the Fuzzy sets distance and

direction

In order to acquire information about dynamic environments, 15 ultrasonic sensors are

mounted on the THMR-I1 mobile robot [12], as shown in Fig.2. The sonar reflection

from a sensor i represents the distance di, measured by the sensor i, between the robot

and obstacles in the real world.

These ultrasonic sensors are divided into three groups to detect obstacles to the right

Page 24: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 24

(sensor i = 1, ..., 6 ), front ( sensor i = 7, ..., 9 ), and left locations ( sensor i = 10, ...,

15 ). Using such information, obviously, it is difficult to build a precise and entire

world model in real-time for preplanning a collision-free path. Here, we use the sonar

data di (i = 1, ..., 15) to build a simple model for representation of the distances

between the robot and obstacles in the real world as follows:

Right- obs = Min {di} i = 1, ..., 6 (1)

Front- obs = Min {di} i = 7, ..., 9 (2)

Left-obs = Min {di) i = 10,…., 15 (3)

Where the minimum values, right-obs, front-obs, and left-obs, derived from the sensor

data

di (i = 1, ..., 15), express the distances between the robot and obstacles to the right,

front, and left locations, respectively. The mobile robot is equipped with two wheel

encode units to determine its current coordinates.

At a start position, a counter is reset to zero. When the robot moves, its current

coordinates can be roughly computed by counting the numbers of pulses from the

wheel encodes that are attached on driving motors.

The THMR-I1 mobile robot with 1.0m length and 0.8m width is equipped with two

driving wheels and one driven wheel. The velocities of the driving wheels are

controlled by a motor drive unit.

(a)

Page 25: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 25

(b)

Fig. 4.4 Fuzzy logic scheme for perception-action behavior control

The input signals to fuzzy logic scheme are the distances between the robot and

obstacles to the left, front, and right locations as well as the heading angle between

the robot and a specified target, denoted by left-obs, front-obs, right-obs and head-

ang, respectively, as shown in Figure. When the target is located to the left side of the

mobile robot, a heading angle head-ang is defined as negative; while the target is

located to the right side of the mobile robot, a heading angle head-ang is defined as

positive, as shown in figure. According to acquired range information, reactive

behaviors are weighted by the fuzzy logic algorithm to control the velocities of the

two driving wheels of the robot, denoted by left-v and right-v, respectively. The

linguistic variables far, med (medium) and near are chosen to fuzzify left-obs, Front-

obs and right-obs. The linguistic variables P (positive), 2 (zero) and N (negative) are

used to fuzzify head-ang; the linguistic variables fast, med, and slow are used to fuzzy

the velocities of the driving wheels left-v and right-v. In analogy to artificial potential

fields, the distances between the robot and obstacles serve as a repulsive force for

avoiding obstacle, while the heading angle serves as an attractive force for moving to

target.

Page 26: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 26

Fig. 4.5 describing the various behaviors for robot

4.1 Reactive Behaviors using Fuzzy Logic

In order to reach a specified target in a complex environment, the mobile robot at least

needs the following reactive behaviors:

1. Obstacle avoidance and decelerating at curved and narrow roads;

2. Following edges;

3. Target steer.

Because the real world is a complex, using sensors it is very difficult to acquire

precise information about dynamic environments. In this case, a set of fuzzy logic

rules is used to describe the reactive behaviors. Now, we only list parts of fuzzy rules

from the rule base to explain, in principle, how these reactive behaviors are realized.

(In fact, much more fuzzy rules have been used in our navigation algorithms)

4.1.1 Obstacle Avoidance and Decelerating at Curved and Narrow Roads

When the acquired information from the ultrasonic sensors shows that there exist

obstacles nearby robot or the robot moves at curved and narrow roads, it must reduce

its speed to avoid obstacles. In this case, its main reactive behavior is decelerating for

obstacle avoidance. We give the first and second of fuzzy rules for realizing this

behavior as follows:

Page 27: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 27

If (left-obs is near and front-obs is near and

right-obs is near and head-ang is any)

Then (left-v is fast and right-v is slow).

If (left-obs is med and front-obs is near and

right-obs is near and head-ang is any)

Then (left-v is slow and right-v is fast).

Such fuzzy rules represent that the robot only pays attention to obstacle avoidance and

moves slowly when it is very close to obstacles or at curved and narrow roads.

4.1.2 Following Edge

When the robot is moving to a specified target inside a room, it must reflect following

Edge behavior. The first and second rules for describing this behavior are listed as

follows:

I f (left-obs is far and front-obs is far and

right-obs is near and head-ang is P)

Then (left-v is med and right-v is med).

I f (left-obs is near and front-obs is far and

right-obs is far and head-ang is N)

Then (left-v is med and right-v is med).

These fuzzy rules show that the robot shall follow an edge of an obstacle when the

obstacle is very close to the left (or the right) of the robot, and also the target is

located to the left (or the right).

4.1.3 Target Steer

When the acquired information from the ultrasonic sensors shows that there are no

obstacles around robot, its main reactive behavior is target steer. Here, we list the first

and second of fuzzy rules for realizing this behavior as follows:

I f (left-obs is far and front-obs is far and

right-obs is far and head-ang is Z)

Then (left-v is fast and right-v is fast).

I f (left-obs is far and front-obs is far and

right-obs is far and head-ang is N)

Then (left-v is slow and right-v is fast).

Page 28: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 28

These fuzzy logic rules show that the robot mainly adjusts its motion direction and

quickly moves to the target if there are no obstacles around the robot.

Table9.1 shows variation in speed with distance

Page 29: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 29

Fig.4.6 Graph representing the membership grade of distance as measured by sensor

4.2 Multiple Behaviors Fusion by Fuzzy Reasoning

A key issue of behavior-based control is how to efficiently coordinate conflicts and

competitions among different reactive behaviors to achieve a good performance. In a

priority strategy is used to activate a reactive behavior according to its urgency level.

This strategy is highly contentious for robot navigation in complex environments.

For example, it is difficult to determine exactly which one of the reactive behaviors,

obstacle avoidance, or following edges, or target steer, should be fired when the robot

moves through the entrance of the U-shaped object to a target, as shown in Fig. To

reach the given target, in fact, all the three reactive behaviors must be efficiently

integrated. The following are some deficiencies of the priority strategy noted in our

experiments:

1. Much effort must be made to test and to adjust some thresholds or firing reactive

behaviors during pre-programming.

2. These thresholds depend heavily on environments, i.e., a set of thresholds,

determined in a given environment, and may not be suitable for other environments.

3. Robot motion with unstable oscillations between different behaviors may occur in

some cases. This is because just only one behavior could be activated at a given

instant and two behaviors with neighbouring priority, e.g., obstacle avoidance and

target steer, are fired in turn.

In the proposed control strategy, reactive behaviors are formulated by fuzzy sets and

fuzzy rules, and these fuzzy rules are integrated in one rule base. The coordination of

Page 30: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 30

different reactive behaviors can thus be easily performed by fuzzy reasoning. The

following is an illustration of how this problem is dealt with by the Min-Max

inference algorithm and the centroid defuzzification method in Eq.

For instance, the inputs, left-obs=d1, front-obs=d2, right-obs=d3, head-ang=ſ1, are

fuzzified by their membership functions to fire fuzzy rules associated with them

simultaneously. Assume that Rule i (see below), formulating the obstacle avoidance

behavior, and Rule j, formulating the following edge behavior, is fired according to

the fuzzified inputs (in fact, much more fuzzy rules may be activated):

Rule i:

I f (left-obs is near and front-obs is near

and right-obs is near and head-ang is N)

Then (left-v is fast and right-v is slow).

Rule j:

I f (left-obs is near and front-obs is med

and right-obs is med and head-ang is N)

Then (left-v is med and right-v is med).

By fuzzy reasoning and the centroid defuzzification method, both Rule i and Rule j,

related to the obstacle avoidance and following edge behaviors respectively, are

weighted to determine an appropriate control action, i.e., the velocities, left-v and

right-v, of the robot's rear wheels.

Page 31: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 31

Fig. 4.7 Behavior fusion by fuzzy reasoning

Page 32: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 32

Chapter 5

APPLICATION OF FUZZY LOGICS

Product Company Fuzzy logic

Air conditioner Hitachi, Matsushita, sharp Prevents overshoot-

undershoot temperature

oscillation and consumers

less on-off power

Anti-lock brakes Nissan Controls brakes in

hazardous cases based on

car speed and acceleration

and on wheel speed and

acceleration

Auto engine NOK/Nissan Controls fuels injection

and ignition based on

throttle setting, oxygen

content, cooling water

temperature, RPM

Auto transmission Honda, Nissan, Subaru Selects gear ratio based on

engine load, driving style,

and road conditions

Chemical mixer Fuji Electric Mixes chemicals based on

plant conditions

Copy machine Canon Adjust drum voltage based

on picture density,

temperature, humidity

Cruise control Isuzu, Nissan, Mitsubishi Adjusts throttle setting to

set speed based on car

speed and acceleration

Dryer Matsushita Converts load size, fabric

type, and flow of hot air to

drying times

Page 33: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 33

Elevator control Toshiba Reduces waiting time

based on passenger traffic

Health management Omron Over 500 fuzzy rules track

and evaluate an

employee’s health and

fitness

Microwave Sanyo, sharp, Toshiba Sets and tunes power and

cooking strategy

Palmtop computer Sony Recognizes handwritten

kanji character

Paper industry Cellulose do caima,

Portugal

Pulp production

Plasma etching Mitsubhishi electric Sets etch time

Refrigerator Sharp Sets defrosting and cooling

times based on usage

Still camera Canon, Minolta Finds subject anywhere in

frame, adjust autofocus

Subway control LIFE institute, yokohama Controls the subway

during peak hours

Television Goldstar (Korea), hitachi,

samsug (Korea), sony

Adjusts screen color and

texture for each frame and

stabilizes volume based on

viewer’s room location

Translator Epson Recognizes, translates

word in pencil size unit

Toaster Sony Sets toasting time and heat

strategy for each bread

type

Vaccum cleaner Hitachi, matsushita,

Toshiba

Sets motor-suction

strategy based on dust

quantity and floor type

Video camcorder Canon, Sanyo Adjusts autofocus and

lighting

Page 34: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 34

Washing machine Goldstar (Korea), hitachi,

samsug (Korea), sony

Adjusts washing strategy

based on sensed dirt level,

fabrics type, load size, and

water level

Page 35: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 35

Chapter 6

CONCLUSION

In this project, we use fuzzy logic to realize the reactive behaviors for robot

navigation. The method can effectively coordinate conflicts and competitions among

multiple reactive behaviors by weighting them and this coordination ability is nearly

independent of a dynamic environment due to it robustness.

The navigation algorithm has better reliability and real-time response since perception

and decision units in the algorithm are integrated in one module and are directly

oriented to a dynamic environment. The simulation results show that the proposed

method for robot navigation by multi sensor integration can automatically perform

avoiding obstacles, decelerating at curved and narrow roads, escaping from a U-

shaped object, and moving to target and so on in complex and uncertain

environments.

Page 36: Report on robotic control

Anil Maurya Electrical & Electronics Engineer 36

Reference

1. McGraw Hill Education Book “Fuzzy Logic System” by Elaine Rich, Kevin Knight,

Shivshankar B Nair

2. Zadeh, L. D. (1965). Fuzzy Sets, Information and Control, No 8, pp. 338-365.

3. Gupta, M.M.; Ragade, R. K. & Yager, R.R. (1979). Advances in Fuzzy Set Theory

and Applications, North Holland, New York.

4. Dubois, D. & Prade, M. (1979). Fuzzy Sets and Systems: Theory and Applications,

Academic Press, New York.

5. Jamshidi, M.; Vadiee, N. & Ross, T. J. (1993). Fuzzy Logic and Control. Software

and Hardware Applications, PTR, Prentice Hall, New Jersey, USA.

6. Wei Li: "Fuzzy logic based 'perception action' behavior control of an mobile robot in

uncertain environments" IEEE World Congress on Computational Intelligence, in

press, 1994.

7. Ivanescu, M., Stoian, V. (1995). Variable Structure Controller for a Tentacle

Manipulator. Proceedings of the 1995 IEEE International Conference on Robotics

and Automation, Nagoya, Japan, May 21-27, vol. 3, pp. 3155-3160, ISBN: 0-7803-

1967-2.

8. R.A. Brooks, "A robust layered control system for a mobile robot", IEEE J. of

Robotics and Automation, RA 2, pp. 14-23, April 1986.

9. Ronald C. Arkin, and Robin R. Murphy, "Autonomous navigation in a manufacturing

environment", IEEE Tran. On Robotics and Automation, vo1.6, no.4, pp.445-454,

1990.

10. Wei Li and Kezhong He: "Sensor-based robot navigation in uncertain environments

using fuzzy controller" The 1994 ASME International Computers in Engineering

Conference, in press, 1994.