Sie sind auf Seite 1von 178

Fuzzy Logic

Tool for Getting Accurate Solution


Edited by Elmer P. Dadios

Fuzzy Logic: Tool for Getting Accurate Solutions


Edited by Elmer P. Dadios

Stole src from http://avxhome.se/blogs/exLib/


Published by AvE4EvA
Copyright 2015

All chapters are Open Access distributed under the Creative Commons Attribution 3.0
license, which allows users to download, copy and build upon published articles even for
commercial purposes, as long as the author and publisher are properly credited, which
ensures maximum dissemination and a wider impact of our publications. After this work
has been published, authors have the right to republish it, in whole or part, in
any publication of which they are the author, and to make other personal use of the
work. Any republication, referencing or personal use of the work must explicitly identify
the original source.
As for readers, this license allows users to download, copy and build upon published
chapters even for commercial purposes, as long as the author and publisher are properly
credited, which ensures maximum dissemination and a wider impact of our publications.
Notice
Statements and opinions expressed in the chapters are these of the individual contributors
and not necessarily those of the editors or publisher. No responsibility is accepted for the
accuracy of information contained in the published chapters. The publisher assumes no
responsibility for any damage or injury to persons or property arising out of the use of any
materials, instructions, methods or ideas contained in the book.
Publishing Process Manager
Technical Editor
AvE4EvA MuViMix Records
Cover Designer

Published: 02 September, 2015


ISBN-10: 953-51-2153-7
ISBN-13: 978-953-51-2153-4

ExLib: avxhome.se/blogs/exLib

Contents

Preface

Chapter 1 A Simple Fuzzy System Applied to Predict Default Rate


by Fbio M. Soares, Olavo S. Rocha Neto and Hevertton H. K.
Barbosa
Chapter 2 Applying Fuzzy Logic to Understanding Driving Modes in
Real Road Environments
by Toshihisa Sato and Motoyuki Akamatsu
Chapter 3 Application of Fuzzy Logic Control for Grid-Connected
Wind Energy Conversion System
by Jianzhong Zhang and Shuai Xu
Chapter 4 Fuzzy Cognitive Maps for Identifying Fault Activation
Patterns in Automation Systems
by Salman Mohagheghi
Chapter 5 Modelling and Implementation of a Series DC Motor Drive
System
by Angelo Jos Junqueira Rezek, Carlos Alberto Murari
Pinheiro, Tony Youssif Teixeira Darido, Valberto Ferreira da Silva,
Otvio Henrique Salvi Vicentini, Wanderson de Oliveira Assis and
Rafael Di Lorenzo Corra
Chapter 6 Self-Tuning Fuzzy PI Controller (STFPIC)
by Salman Hameed

Preface

This book is a collection of chapters, concerning


developments within the Fuzzy Logic field of study.

the

The book includes scholarly contributions by various authors


pertinent to Fuzzy Logic.
Each contribution comes as a separate chapter complete in itself
but directly related to the books topics and objectives.
The target audience comprises scholars and specialists in the
field.

Chapter 1

A Simple Fuzzy System Applied to Predict Default Rate


Fbio M. Soares, Olavo S. Rocha Neto and
Hevertton H. K. Barbosa
Additional information is available at the end of the chapter
http://dx.doi.org/10.5772/60079

1. Introduction
Fuzzy systems have been applied in a variety of problems with great success. One key factor is
that the fuzzy rules database can be easily designed, in order to emulate a human rational
decision making process just as experts usually do while facing hard jobs. Thus, in essence any
process that requires human judgment can be translated into simple rules in a fuzzy system,
provided that variables can be used in fuzzy sets or linguistic terms. One example is the
prediction of a customers default delay in payment, which seems to be a very simplistic and
intuitive process and can be indeed modeled into a set of rules based on an experts knowl
edge. In addition, the facility of implementing a fuzzy system can speed up the analysis of huge
customer databases, since the usual manual process of analyzing each customer can be
automated by a system which in theory has the same ability to infer as the human mind does.
This chapter shows the whole design of the fuzzy system to predict the customers default rate
in small and medium-sized businesses, and how this information can be used to provide a
better cash flow estimate. The chapter is structured as follows: in section 2 we present the
current economy scenario and why the default is a big problem; in section 3 we analyze some
tools that are used to mitigate the risks; in section 4 we explain in details how the fuzzy
approach can be exploited in this case; in section 5 we show the design of the fuzzy system; in
section 6 we show some results from the simulations of this system; and finally in section 7 we
discuss the results and conclude this chapter.

2. The default in the microeconomics


The default in the retail sector is a concerning problem in the modern world [1]. According to
the formal definition, the default is a broader term. Technically it means any failure of some

Fuzzy Logic - Tool for Getting Accurate Solutions

entity, natural or legal, to meet its legal obligations by not paying invoices of loan, services,
bonds or wholesales [2]. The term default also applies to the failure of a government to repay
its national debt; in that case it is national or sovereign default. In the case of customer default,
the concerns are on rent, mortgage, consumer credits, utility payments or funding. While in
the first case, the debt is related to the macroeconomic scenario, that means financial crisis over
a whole country or continent, the latter is more related to customers profiles and microeco
nomics. That led to the development of risk and credit analysis [3].
The default has a strong effect in developing companies, as well as in small and medium sized
business. Mortgage and interest rates could be strongly affected by the customer default rate.
Since the whole economy is tightly linked, the default represents a break in this chain, leading,
in large scale, to a national level crisis.

Distributor

Manufactured
Goods
Production

Retail

Banks

Primary Goods
Production

Customers

Services

Figure 1. Economic Chain

When the default happens, it starts a shortcoming in a companys finance, and that means a
loss for the provider. Some tools such as financial protection insurance and risk scores may
remedy to a certain point, but in most cases they are insufficient to recover from the main
problem [4]. However, if one could forecast or predict how many customers would delay
payment or how much would be default, the companies would have the chance to prepare
itself against a possible low cash flow.
Analysing per sector, it is known that service based industries are usually more affected by
defaults.

Fig. 1 Economic Chain


When the default happens, a gap has been already open in a companys finance, and that
means a loss for the provider. Some tools such as financial protection insurance and risk
scores may remedy to a certain point, but in most cases they are insufficient to recover from
Simpleforecast
Fuzzy System
Applied
Predict Default Rate
the main problem (CNC, 2013). However, if oneA could
or predict
how to
many
http://dx.doi.org/10.5772/60079
customers would delay payment or how much would be default, the companies
would have
the chance to prepare itself against a possible low cash flow.
Analysing per sector, it is known that service based industries are usually more affected by
defaults.

Default per Industry


Banking
23%

36%

Telecommunicatio
ns

13%
9%

Education

11%

8%

Health

Fig.2. Defaults per Industry. Source: Serasa, 2013

Figure 2. Defaults2.1
perReasons
Industry.for
Source:
Serasa, 2013 [5]
Default

2.1. Reasons for default


In order to better understand this problem, we should take into account the reasons for
consumer default. The recent economic growing and integration speeded up the development
of many enterprises, and much of this has been accomplished by the mechanisms of credit and
financial leasing [6]. The credit offers expanded to small businesses and so have been to
ordinary workers, thus increasing the economic activity [7]. In developing countries such as
order to better
thismiddle
problem, classes
we should
take into
the reasons
for
Brazil, manyInfamilies
fromunderstand
lower and
turned
outaccount
to actively
participate
in the
consumer default. The recent economic growing and integration speeded up the
economy asdevelopment
voracious of
consumers
[4].
Consequently
the
debt
of
Brazilian
families
many enterprises, and much of this has been accomplished by the rose from
of credit
and [5].
financial
leasing (Katchova,
2005). The
credit
offers expanded
to
15% in 1992 mechanisms
to over 40%
in 2012
Moreover,
by analysing
the
reasons
for the debt,
it can be
small businesses and so have been to ordinary workers, thus increasing the economic
easily perceived
that this index is not likely to be lowered, but limiting credit seems also not
activity (Camargos et al, 2004). In developing countries such as Brazil, many families from
to be a goodlower
option
However,
the consumer
default
is correlated
to some
behaviours that
and [7].
middle
classes turned
out to actively
participate
in the economy
as voracious
consumers
2013).systems
Consequently
debt of Brazilian
families rose from
15%
in 1992 for default,
can be detected
in risk(CNC,
analysis
[8].the
Therefore
by understanding
the
reasons
to over 40% in 2012 (Serasa, 2013). Moreover, by analysing the reasons for the debt, it can be
this problemeasily
canperceived
be morethat
controllable.
this index is least likely to be lowered (Camargos, 2004), but limiting
credit seems also not to be a good option. However, the consumer default is correlated to

Upon a report
issued
by Central
Bank
of Brazil
[9], thesystems
causes
for consumer
default
some
behaviours
that can be
detected
in risk analysis
(Zirakja
& Samizadeh,
2011), vary from
therefore
by understanding
the reasons
for default,
this problem
be more controllable.
bad financial
habits
(compulsivity,
expenses
greater
than can
revenue)
to financial problems
Upon a report issued by Central Bank of Brazil (Annibal, 2009), the causes for consumer
(unemployment,
wages,
from their expenses
clients).greater than revenue) to
default little
vary from
bad crises,
financialdefault
habits (compulsivity,
financial problems (unemployment, little wages, crises, default from their clients).

Causes of Default in
Medium Sized Companies
3%

2%

15%

7%
7%
9%

Delayed
Wage/Income
25%

No invoice receipt
12%

10%

Health Problems

10%

Fig. 3. Causes for Defaults. Source: Annibal, 2009

Figure 3. Causes
for Analysis
Defaults.tools
Source:
2009 as much information as possible from clients in order
Risk
takeAnnibal,
into account
to evaluate the risk score of a given client. It is known that when a customer faces problems,
he or she is more likely to overdue the bills or even not to pay at all. Likewise when
customers always pay their bills without delay, it is a good sign they are less likely to delay.

2.2 The Effects of Default in the Economy


The customer default prediction remains a concern for many enterprises, owners, investors
and business men all over the world. Every default implies that some party is losing money,
since a good or a service has been offered for free without any compensation. In large scale
this leads to economy shrinking and inflation (Engelmann & Rauhmeier, 2006). For small
companies the effects may be even more drastic due to its small budget. Every small

Fuzzy Logic - Tool for Getting Accurate Solutions

Risk Analysis tools take into account as much information as possible from clients in order to
evaluate the risk score of a given client. It is known that when a customer faces problems, he
or she is more likely to overdue the bills or even not to pay at all. Likewise when customers
always pay their bills without delay, it is a good sign they are less likely to delay.
2.2. The effects of default in the economy
The customer default prediction remains a concern for many enterprises, owners, investors
and business men all over the world. Every default implies that some party is losing money,
since a good or a service has been offered for free without any compensation. In large scale
this leads to economy shrinking and inflation [10]. For small companies the effects may be even
more drastic due to its small budget. Every small business is oriented to observe its cash flow,
but in fact when a customer fails to pay its debt to the company, the cash flow accuracy is
severely affected. So there is a need to estimate a percentage of default from its clients. The
first and main consequence for small business is that it may not be able to meet its obligations,
although it has a quite good financial planning. A second consequence is that the billing
department will be overloaded since many bills remain unpaid and the company itself may
fail to operate.

3. Existing tools for mitigating the risks


The defaults cannot be prevented, but can be forecasted. Whenever a lender wants to issue
credits to a borrower, he may perform an analysis on the financial statements of the borrower
in order to assess its capability to comply with its debts [11]. However many aspects may be
not considered in traditional risk and credit analysis, since many risk analysis are conducted
by means of likelihood and probabilities [2]. On the other hand, there is a call for simpler and
quicker risk analysis [12, 13].
Although most of these tools address the credit analysis in the form of a loan, the same
procedure applies to any customer that is buying goods/services from a supplier [14], espe
cially if it is in the form of leasing or even contracting. Since we are dealing here with the
problem of predicting default, our goal is to forecast when a customer will not pay his/debt
causing a default. To that end, the methodologies fall particularly on risk and credit analysis,
bankruptcy prediction and probability of default.
3.1. Risk and credit analysis
In recent decades, a number of objective, quantitative systems for scoring credits have been
developed. The risk of credit is assessed by comparison of accounting ratios of potential
borrowers with industry or trends in the financial variables. The banks are provided with many
of these ratios, since they are the main credit providers, but that information is not always
available to enterprises. Traditional credit risk analyses are implemented in expensive expert
systems whose development is very time-consuming. On the other hand simpler forms to grant

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

credit may be achieved by the use of reduced models, such as Balanced Scorecard, JarrowTurnbull, among others [15].
Balanced Scorecard, also known as BSC, is actually a management technique aimed at assess
ing an enterprises performance from four perspectives: financial, customer, internal process
es, and learning. A balanced score of these indicators makes a system that helps the enterprise
to select and focus strategies to achieve goals in the near future. The customer and financial
perspective of this analysis composes a good index to evaluate the risk of servicing a given client
[12]. But unfortunately this is not always enough to define strategy, and there should be also
other performance indicators to determine the risk in a more accurate way.
A reduced form of risk model was published by [16] which is an extension of the Merton model
[17] to a random interest rates framework. In this model, risk is modeled as a statistical process.
The value of risk is evaluated using a continuous probability of default, estimated in two
approaches: Deriving Point in Time (PIT) or Through the Cycle (TTC). The main difference
between these approaches regards to internal and external factors. The term PIT applies to
probabilities of default that are dependent of general credit conditions or external factors, while
TTC applies to probabilities of default that are not subjected to external factors [18].
PIT Factors

TTC Factors

GDP Growth Rates

Revenue Growth

House Price Indices

Number of Default Cases

Unemployment

Load to Value Ratio

Table 1. Factors Analyzed in PIT and TTC Probabilities

3.2. Bankruptcy prediction


One benefit of risk analysis is that it allows the prediction of bankruptcy for a given entity.
One of the oldest methods for bankruptcy prediction was published in 1968 by Altman. His
formula is used to predict the probability of bankruptcy within 2 years by using Z-scores. The
Z-score is a linear combination of four or five coefficient-weighted common business ratios.
Z = 1.2T1 + 1.4T2 + 3.3T3 + 0.6T4 + 0.99T5
where:
T1 is the Working Capital / Total Assets
T2 is the Retained Earnings / Total Assets
T3 is the Earnings Before Interest and Taxes / Total Assets
T4 is the Market Value of Equity / Book Value of Liabilities
T5 is the Sales or Revenue / Total Assets

(1)

Fuzzy Logic - Tool for Getting Accurate Solutions

Z is the score which denotes where an entity will face bankruptcy or not. The Bankruptcy
threshold varies on the entitys activity, but in general it is defined as follows
Z > 2.99 - Non Bankrupt
1.81 < Z < 2.99 - Gray Zone
Z < 1.81 - Bankrupt

(2)

Altman Z-Score [19] model was found to be 72% accurate in predicting bankruptcy two years
before the event with only 6% of false negatives. It is still well accepted by auditors, manage
ment accountants and financial directors for load evaluation. However, this model is not
recommended for use with financial companies such as banks or factoring, because the balance
sheets of companies are usually opaque and the model does not address off-balance sheet
items. For prediction of default for financial companies, the Merton Model is used.
Although additional methods for bankruptcy prediction have been developed by taking into
account more data, their practicability turned out to be expensive, since it depends on a lot of
data to be collected [20].
3.3. Probability of default
Given that many methods of risk and credit analysis, and bankruptcy prediction are based on
stochastic models, we are now focusing on the measures for evaluating the probability of
default. Most of methods exploit logistic regression functions as well as inversed probability
distribution formulas.
The Probability of Default may be used in two ways: to address the causes of default; to predict
and prevent new cases of default. Camargos et al [7] performed a survey to find conditioning
The Probability
Default
may betoused
inastwo
ways:
to address
the causes of default; to
factors thatoflead
small business
default,
depicted
in figure
4.

predict and prevent new cases of default. Camargos (2007) performed a survey to find
conditioning factors that lead small business to default, as depicted in figure 2.
Financial and
Economic Variables

Funding
Variables

Default

Socioeconomic
Variables

Fig.4 Variables that influence the default according to Camargos (2007)


Figure 4. Variables that influence the default according to [7]

This survey has been conducted in an important Brazilian Program for encouragement of
entrepreneurship among small-sized businesses. The method used to assess the risk of
default was the logistic regression:
(3)

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

This survey has been conducted in an important Brazilian Program for encouragement of
entrepreneurship among small-sized businesses. The method used to assess the risk of default
was the logistic regression:
P( X1 ) =

1
1 + e - X1

(3)

The equation has only one dependent variable X1, as the variable influencing on defaut. A
threshold value of 0.5 is selected to determine whether a case is to be classified as compliant
or default. Considering the probability as an input for the binary logistic regression variable
Y, and then rearranging the coefficients, we obtain a linear logarithmic model:
Y ( X1 ) =

P ( X1 )

1 - P ( X1 )

Y ( X1 ) = e b0 +b1 X1

ln Y ( X1 ) = b0 + b1X1

(4)

P(X)
ln
= b0 + bi Xi
1 - P(X)

where:
P(X) is the probability of default according to the set of variables X
0 is a model bias constant
i is coefficient for the variable Xi
Xi variable taken into account in the model
Other models include bivariate probit model by Jacobson and Roszbach [21], to estimate
default probabilities and the effects of default-risk-based acceptance rule changes on a banks
portfolio. Katchova and Barry [6] used the distance-to-default approach to determine the Value
at Risk (VaR). All these models use logistic regression functions on multiple variables. By
investigating these models amongst others, Odeh et al [22] applied a conceptual model for
predicting default in agricultural loans, assuming the expected loss is expressed as a result of
three components.
EL = PD*LGD*EAD
where
EL is the expected loss in monetary units
PD is the probability of default in percentages

(5)

Fuzzy Logic - Tool for Getting Accurate Solutions

LGD is the percentage of loss from the loan volume suffered by the granting institution
EAD is the loan amount plus accrued fees
Usually the Probability of Default is expressed in terms of N customers, so the equation 5 can
be rearranged in the form:

EL

N
i

PDi

*LGD*EAD

(6)

where now
ELP is the expected loss on a specific portfolio
PDi is the probability of default for a specific loan
N is the total of granted loans
Combining the logistic regression (eq. 4) with the conceptual model (eq. 6), we can express the
maximum likelihood estimation as in the equation:

PDi
'
ln
= B X + e
1 - PDi

(7)

where
PDi is the probability of default as stated in the equation 6
B is a vector of coefficients
X is a vector of explanatory variables and is a stochastic error
The coefficients may be determined empirically and vary from many aspects taken from the
enterprises assets. Odeh et al [22] evaluated these methods by using data from Farm Credit
System, and found that credit default predictions are really sensitive on data.
3.4. Recent approaches
One of the recent technologies that has evolved and been used are the expert systems. Not only
they have been used considerably since the 1980s in financial institutions for decision making
tasks, the prediction of default has also been an issue the experts systems have been used for
[23]. In addition, computing intelligence techniques, such as Genetic Algorithms, Fuzzy CMeans, and Mars, have also been exploited [24] due to its capability of learning from an expert.
The use of neural networks, neuro-fuzzy and fuzzy logic has also grown in recent decades,

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

because they better handle on imprecise information and there is no pure analytical model of
the market [25].
Furthermore, the database containing hundreds of financial operations represent an implicit
knowledge that is available for modeling and prediction. By means of data mining [14], many
customer behaviors can be analyzed based on past values. Thus, more reliable and developed
models can be accomplished by the use of artificial intelligence.

4. A fuzzy approach
Fuzzy Systems have already been used in a variety of problems, not only regarding risk and
credit analysis, but also bankruptcy and default prediction. A Fuzzy approach combines an
easy design fully based both on an experts opinion and on data history. Zirakja and Samizadeh
[8] performed a risk analysis in e-commerce (EC) activities in a more broad vision, including
the projects risk, by relying on experts opinions to build a fuzzy decision support system
(FDSS). Martin et al [24] implemented a fuzzy system to predict bankruptcy by using expert
knowledge applied in fuzzy rules with a classification rate of 88% in a single model. In a hybrid
model, by using neuro-fuzzy and genetic algorithm, the classification rate was 73,6% but with
more input variables.
Fuzzy logic arises as a good tool to emulate expert rules since they dont require too much
effort for modeling as other traditional methods do. A fuzzy system can emulate rules of type:
IF {condition}THEN {consequence}

(8)

where conditions and consequences are fuzzy propositions built by linguistic expressions:
1.

x is Low

2.

y is NOT Tall

3.

x is Low AND y is Tall

4.

x is Low OR y is Tall

The expressions 1 and 2 define immediate propositions, and the expressions 3 and 4 define
combined propositions. Since they operate over fuzzy variables, they need to be defined in
linguistic terms or fuzzy sets. Fuzzy sets usually take the form of membership functions.
0 if x doesnot belong to set A

m A ( x ) = y if x partially belongsto set A


1 if x fully belongsto set A

(9)

10

Fuzzy Logic - Tool for Getting Accurate Solutions

1.2
1
0.8
0.6
0.4
0.2
0
Fig 5. Example of a membership function plot.
Figure 5. Example of a membership function plot.

Fuzzy expressions are built using operators such as NOT, OR and AND. These expressions
are combined
to form
R. Aboolean
fuzzy relation
is defined
against
two
U and
V,
Fuzzy
expressions
are relations
built using
operators
such as
NOT,
ORuniverses
and AND.
These
as
U
x
V
being
a
subset
of
the
Cartesian
product
of
those,
so
that
R:
UxV

{0,1}.
That
expressions are combined to form relations R. A fuzzy relation is defined against two universes
means, given A a fuzzy relation and x and y crisp values, if x U and y V then R(x,y)=1,
U and V, as U x V being a subset of the Cartesian product of those, so that R: UxV {0,1}. That
otherwise R(x,y)=0.
means, given A a fuzzy relation and x and y crisp values, if x
Therefore, Fuzzy rules can be defined in fuzzy operations as in the equation.
U and y
(10)
V then R(x,y)=1, otherwise R(x,y)=0.
where Fuzzy rules can be defined in fuzzy operations as in the equation.
Therefore,
R(l) is a Fuzzy rule of index l
xi is an input fuzzy variable of index i
l
Ail is an input fuzzy
in a rule
l x is Al THEN y is Bl
R( )set
is A1l iAND
: Ifofx1index
... AND
n
n
y is an output fuzzy variable
Bl is an output fuzzy set in a rule l
where
which in turn can be represented by membership functions
R(l) is a Fuzzy rule of index l

xi is an input fuzzy variable of index i

[ set of index
( i in a rule l )]
Ail is an input fuzzy

(10)

(11)
(12)

y where
is an output fuzzy variable
R(l)(X) is the membership function of the rule
BlisA1an
fuzzy set in afunction
rule l of the input variable of index i on fuzzy set Ail
l(xi)output
is the membership
B(y) is the resulting membership function of the output variable y on fuzzy set B in rule l
which
in turn can be represented by membership functions
min is the minimum operator
max is the maximum operator
sup is the supremum operator
m ( X ) = min m x ,..., m x
l
R( )

A1l

( 1)

Anl

( n ))

4.1 Fuzzy System Structure


A Fuzzy System usually has:
m
m B ( y )(with
= maxtheir
m (l) ( Xdatasets);
supXU min Fuzzy
), m Bl ( y )
l = 1 respective

Input Variables
R

(11)

(12)

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

where
R(l)(X) is the membership function of the rule
A1l(xi) is the membership function of the input variable of index i on fuzzy set Ail
B(y) is the resulting membership function of the output variable y on fuzzy set B in rule l
min is the minimum operator
max is the maximum operator
sup is the supremum operator
4.1. Fuzzy system structure
A Fuzzy System usually has:
Input Variables (with their respective Fuzzy datasets);
Output Variables (the diagnostics values);
Rule Base: determines outputs for each combination of input fuzzy values;
Inference Machine: applies fuzzy operations;
Fuzzy Sets: Linguistic Terms for each Variable;
Crisp Values: Numeric values taken from real world.

Inference Machine /
Decision Making Unit

Fuzzy
Values

Fuzzy
Rules

Input Crisp
Values

Fuzzificator

Fuzzy
Values

Fuzzy
Sets

Rule Database

Fuzzy
Sets

Defuzzificator

Figure 6 shows the structure of a basic model of fuzzy system, consisting of four components:
Input Fuzzification, Rule Database, Inference Machine and Defuzzification.

Output Crisp
Values

Figure 6. Fuzzy System Structure

A Fuzzy system can be defined in the following operations:


Input Fuzzyfication: transform the real world crisp values into fuzzy values.
Fuzzy Operation: Applies Fuzzy Operators Min or Max in input Variables according to
available rules if they should be inclusive (AND) or exclusive (OR).

11

12

Fuzzy Logic - Tool for Getting Accurate Solutions

Aggregation: These operators can group several found output values provided that several
rules may have triggered.
Defuzzification: transform the output found fuzzy values into real world crisp values.
In this chapter we are dealing with the application of a fuzzy system in predicting the default,
so the details on these operations are beyond the scope, and for further information the reader
is suggested with the references [26, 27].
4.2. Reasons to apply fuzzy logic
Fuzzy systems are relatively simple to create and deploy, and it is fully based on human
experts evaluation. Fuzzy has been applied in many fields involving decision processes which
require some sort of judgment. The human mind abstracts real world variables in an imprecise
manner forming semantic networks [28]. These semantic networks define relations that can be
expressed with linguistic terms just as experts do. Therefore any activity requiring an expert
opinion or judgment can be modeled in fuzzy logic rules without the need of an existing
theoretic model to lie upon.
In small and medium-sized companies, the financial/collect department usually takes deci
sions regarding granting credit or not. Without any supporting tool, the decision is taken
purely by an experts experience or opinion. The same applies for predicting cash flow based
on clients past financial transactions. Based on a given customers history, it can be inferred
whether this customer will pay on time or default. This kind of analysis can be performed by
an expert, but as a companys portfolio grows, the task of analyzing becomes more timeconsuming and then needs to be automated, and fuzzy systems emerge as a good option to
automate this type of analysis [29].
taken purely by an experts experience or opinion. The same applies for predicting cash flow
based on clients past financial transactions. Based on a given customers history, it can be
inferred whether this customer will pay on time or default. This kind of analysis can be
performed by an expert, but as a companys portfolio grows, the task of analyzing becomes
more time-consuming and then needs to be automated, and fuzzy systems emerge as a good
option to automate this type of analysis [Shang & Hossen, 2013].

5. Fuzzy system development

5. Fuzzy System Development

By taking into account all the previous information, we designed a system capable of predicting
By taking into account all the previous information, we designed a system capable of
the default ratepredicting
based on
historical records of customers. The methodology used in this design
the default rate based on historical records of customers. The methodology used
in this in
design
the of
same
used
in the work
of Pereira
(2012),
which consisted
of the
was the same used
the was
work
[27],
which
consisted
of the
following
procedure.
following procedure.

Definition of
Variables

Definition of
Rules

Sets Definition
Membership
Functions

Operational
Research
Database formation

Definition of
Inference
Machine Settings
Aggregation
Defuzzification

Fig. 7 Fuzzy Modelling Procedure

Figure 7. Fuzzy Modelling Procedure

According to literature, the default is influenced by many aspects of the customers, but
many of them are unknown to the provider, unless they are declared. However, simple
models of probability of default can be able to yield good results using statistical measures.
So, to make this system more applicable, we took into account only the minimum amount of
information a collection or billing department would have regarding customers
transactions. Thus in this work, we considered the database consisting only of customer
records in the form of table.
Id
23129
23137

Client
Incs. Co.
Sol. Llc.

Description
Maintenance apr/12
Development apr/12

Value
99.00
1342.00

Due Date
20/04/12
25/04/12

Payment
24/04/12
23/04/12

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

According to literature, the default is influenced by many aspects of the customers, but many
of them are unknown to the provider, unless they are declared. However, simple models of
probability of default can be able to yield good results using statistical measures. So, to make
this system more applicable, we took into account only the minimum amount of information
a collection or billing department would have regarding customers transactions. Thus in this
work, we considered the database consisting only of customer invoices in the form of table.
Id

Client

Description

Value

Due Date

Payment

23129

Incs. Co.

Maintenance apr/12

99.00

20/04/12

24/04/12

23137

Sol. Llc.

Development apr/12

1342.00

25/04/12

23/04/12

23144

White Ss.

Fin. SSAS fee apr/12

49.90

11/04/12

09/06/12

...

...

...

...

...

...

Table 2. Accounting Records Database

5.1. Fuzzy variables


According to the database depicted in table 2, we defined the following input variables for the
fuzzy system.
Average Payment Delay (APD)
Amount Owed (AO)
Maximum Payment Delay (MPD)
Maximum Amount Owed (MAO)
Time as a Client (TC)
Number of Default Cases (NDC)
A formal definition of each variable is outlined in the following equations:
APDi = E PDij - DDij

(13)

MPDi = max PDij - DDij

(14)

AOi = AOij " PDij is null and DDij < t

(15)

MAOi = max AOi "PDij > DDij

(16)

13

14

Fuzzy Logic - Tool for Getting Accurate Solutions

TCi = t - min Dij

(17)

NDC = 1 "PDij > DDij and DDij < t


j

(18)

where
PDij is the Payment Date of the Invoice j of the Client i
DDij is the Due Date of the Invoice j of the Client i
N is the number of issued Invoices
t is the current Date
For specific purposes of this work, a default is considered to be when an invoice is not paid
before the due date.
Upon consultation with experts in the collect department, we found the following terms for
each of the input variables.
Input Variables

Linguistic terms

APD

Average Payment Delay

Short, Middle, Long

AO

Amount Owed

Low, Middle, High

MPD

Maximum Payment Delay

Short, Middle, Long

MAO

Maximum Amount Owed

Low, Middle, High

TC

Time as a Client

New, Known, Old Known

NDC

Number of Default Cases

Low, Middle, High

Table 3. Fuzzy Input Variables and their Linguistic Terms

The output variables are the values we want to predict, namely when and how much is
customer going to pay. That can be express in two ways: Expected Amount/Date of receipt;
Probability of Receiving a certain amount within a period of time. Since here we are considering
only internal factors, this kind of prediction is through the cycle (TTC). According to Basel II
Parameters [10], the simplest approach to estimate the probability of default is logistic
regression, taking historical database as a basis for estimation.
Thus, given a date, the probability distribution of payment can be expressed by the following
equation:
PDR = A*e( B*EDR ) -(C/ NDC) -( D*EAR ) -1

(19)

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

where
PDR is the Probability of Receipt or Payment
EDR is the Expected Date of Receipt (in days)
EAR is the Expected Amount to Receive (in monetary units)
NDC is the Number of Default Cases
A, B, C and D are coefficients
Upon experiments and linear regression we found the coefficients to be.
A = 13.338
B = 1.6231
C = 0.875
D = 22.81

(20)

It can be seen that there is a relation between the next payment date and the probability. So
the output variables were chosen to be the next payment and expected amount to be paid.
Output Variables

Linguistic terms

EAR

Expected Amount to Receive

None, Little, Enough, Integral

EDR

Expected Date of Receipt

Near, Reasonably Near, Far, Never

Table 4. Expected Output Variables

However, from these outputs the probability of receiving over time t can also be derived,
according to the equation.
t

PP(t ) = PDR dEDR =


0

+E
t
e EDR
EDR

(21)

where
PP(t) is the probability of payment over time t
PDR is the probability distribution function
EDR is the expected Date of Receipt
E is the remaining part of the probability distribution function PDR, independent of EDR
Thus, we can state the variables PPW and PPM with parameter values for t of 7 and 30,
respectively. The probabilities can also be defined in fuzzy sets.

15

16

Fuzzy Logic - Tool for Getting Accurate Solutions

Output Variables

Linguistic terms

PPW

Probability of Payment in a Week

Null, Very Low, Low, Medium, High, Very High

PPM

Probability of Payment in a Month

Null, Very Low, Low, Medium, High, Very High

Table 5. Probability Output Variables

Likewise, the expected date of payment can be derived from the quantile equation, which is
the inverted probability density function.

ER PP ( t ) =

-ln 1 - PP ( t )

(22)

1
+E
1 + EDR

where ER is the Expected date of payment resulted from the probability distribution PP(t).
5.2. Fuzzy set limits
We defined the fuzzy set limits upon querying against a huge database containing over 5 years
of financial records, in such way that each set should have the same number of clients belonging
to it. To that end, we had to rearrange the database to group the results per client.
Maximum

Maximum

Number of

Owed

Cases

0.00

150.00

24

235

12

230.00

15500.00

346

18.5426

128

57.50

6500.50

16

1448

...

...

...

...

...

...

Client

Average Delay

Incs. Co.

5.666

18

Sol. Llc.

0.2222

White Ss.
...

Delay

Amount Owed

Time as Client

Table 6. Accounting Database records grouped by each client

We defined the Gaussian function as a membership function for each set, on input and output.
After querying the dataset, we defined the sets limits as can be show in the table and figures.

m A ( x; c ; s ) = e

1 x-c
-

2 s

(23)

where c is the center of the function, and is the variance. Then, we defined as the sets
limits c.

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

Low/Short/New

Variable

Middle/Known

High/Long/Old Known

Inf.Lim.

Sup.Lim.

Inf.Lim.

Sup.Lim.

Inf.Lim.

Sup.Lim.

APD

13.91

13.91

34.91

34.91

222

AO

272.66

272.66

3723.53

3723.53

50084

MPD

100.45

100.45

200.45

200.45

1009

MAO

845.00

845.00

5593.75

5593.75

50084

TC

234

234

1304

1304

2233

NDC

10

10

38

Table 7. Sets limits defined upon database querying

1.2
1
0.8
Short

0.6

Middle
Long

0.4
0.2

1
13
25
37
49
61
73
85
97
109
121
133
145
157
169
181
193
205
217
229
241

0
Fig. 8 Fuzzy Sets Plots of Variable Average Payment Date
Figure 8. Fuzzy Sets Plots of Variable Average Payment Date
5.3 Fuzzy Rules
As performed in the work of Pereira (2012), we have built the fuzzy rules upon querying the
database shown in table 6 for each combination of the input sets. That would give 729 rules.
5.3. FuzzyBut
rules
before querying a database, we cut some combinations that would never happen in
practice or could be intuitively disposed. Some examples are the following rules:

As performed in the work of [27], we have built the fuzzy rules upon querying the database
If APD is long and MPD is short and
shown in table 6 for each combination
of the input sets. That would give 729 rules. But before
If AO is high and MAO is short and
querying a database, we cut someIfcombinations
that
would
TC is new and NDC
is high
and never happen in practice or could
be intuitively disposed. Some examples are the following rules:
If
If
If

By cutting infeasible rules, the rules database has been reduced to 288 rules. The outputs for
each rule, both for expected date and amount of receipt, have been determined upon
APD is long
and MPD is short and...
querying the history database. Nevertheless, some situations never happened, so we had to
decide the output by asking the experts. That procedure trimmed down the rule database to
AO is high
and MAO is short and...
53 rules.
For a given rule, we found and average difference between the due date and the payment
TC is new
and NDC is high and...
date.
[
*(

) +

(24)
(25)

where
APDi is the average payment date for the client i;
STDi is the standard deviation for the difference between due dates and payment dates of
the client i.

17

18

Fuzzy Logic - Tool for Getting Accurate Solutions

By cutting infeasible rules, the rules database has been reduced to 288 rules. The outputs for
each rule, both for expected date and amount of receipt, have been determined upon querying
the history database. Nevertheless, some situations never happened, so we had to decide the
output for these rules by asking the experts. That procedure trimmed down the rule database
to only 53 rules
For a given rule, we found an average difference between the due date and the payment date.
APDi = E PDij - DDij "DDij > t

(24)

2
STDi = E PDij - DDij - APDi 2

(25)

where
APDi is the average payment date for the client i;
STDi is the standard deviation for the difference between due dates and payment dates of the
client i.
After querying the database for any given rule, we built out a histogram of each fuzzy output
variable corresponding to that rule. Table 8 shows a histogram found for the following rule:
if APD is Middle and AO is Low and MPD is Long and MAO is Low and TC is Old Known and
NDC is Low

Expected Date of

None/Near

Little/Reasonably Near Enough/Far

Integral/Never

Receipt
Expected Amount of
Receipt
Table 8. Histogram for a given rule

The output set was chosen as the one that the rule result better fits into, which is Near for
Expected Date of Receipt and Integral for Expected Amount of Receipt.
5.4. Database preparation
In order to have a separation between the rules database development and the validation, we
defined distinct periods for querying and for validation. The database in the form shown in
table 6 has been cut into these two periods, 2 years and a half each, forming a new database
grouped by period. This database is shown in table 9.

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

Client

Period

Incs. Co.

Incs. Co.

Sol. Llc.

Sol. Llc.

Average

Maximum

Delay

Delay

5.666

18

0.00

7.183

18

0.2222

12

0.3333
...

...

Maximum

Number of

Time as

Owed

Cases

Client

150.00

24

235

120.00

250.00

33

622

230.00

15500.00

346

12

230.00

15500.50

733

...

...

...

...

...

Amount Owed

Table 9. Database split into 2 periods

The validation period was replicated multiple times in order to perform a continuous valida
tion from first until the last date of the period. For each date, a snapshot of the database of
table 6 was taken in order to simulate the Fuzzy Prediction.

Snapshot taken on date 1

Snapshot taken on date 2

.....

Snapshot taken on date N

Database
Database S
Server
erver

Figure 9. Schema of database snapshots taken for every date in the periods for simulation

Current Date Id

Client

Description

Value

Due Date

Payment

...

...

...

...

...

...

...

23/04/12

23129

Incs. Co.

Maintenance apr/12

99.00

20/04/12

23/04/12

23137

Sol. Llc.

Development apr/12

1342.00

25/04/12

23/04/12

23144

White Ss.

Fin. SSAS fee apr/12

49.90

11/04/12

...

...

...

...

...

...

...

24/04/12

23129

Incs. Co.

Maintenance apr/12

99.00

20/04/12

24/04/12

24/04/12

23137

Sol. Llc.

Development apr/12

1342.00

25/04/12

23/04/12

24/04/12

23144

White Ss.

Fin. SSAS fee apr/12

49.90

11/04/12

...

...

...

...

...

...

Table 10. Database with time dimension

23/04/12

...

19

20

Fuzzy Logic - Tool for Getting Accurate Solutions

5.5. Further fuzzy settings


The fuzzy system was implemented using Mamdani [26] as the inference machine, because of
its simplicity in processing the rules and values and ease to be implemented in this case. Then
it was deployed on an important Brazilian Financial Accounting System whose aim was to
infer how much of the accounts receivable could be received within a week or a month, and
what would be the default rate. The fuzzy system was set up as follows.
Input Fuzzy Sets

Gaussian

Output Fuzzy Sets

Triangle

Implication Method

AND/OR

Aggregation Method

Product

Defuzzification Method

Centre of gravity

Table 11. Fuzzy Settings

6. Results and simulation


After defining and validating the rules database, we performed a simulation of prediction the
default rate in a period of 2 years and a half. Since we have a probability as an output, we had
to apply the Monte Carlo method to generate random numbers and get real results from the
simulations and confront them against the real values [30].
6.1. Simulation procedure
We used the database shown in table 10 to perform simulations on any record for every invoice
which was supposed to be paid. The fuzzy system would give an expected date and amount
to be received. So we applied for a given record some calculations using equations 19, 21 and
22 to get probabilities of payment within a day, a week and a month. With the Monte Carlo
method, we have gotten a number of random values to be applied in the probability distribu
tion as shown in the equations 21 and 22. If that random number would be greater less than
the corresponding probability value, calculated in the equations 21 and 22, it means the debt
has been paid.
The algorithm for the simulation was defined as follows.
Then, we performed simulations to predict:
the default rate of customers
the future revenue within a short period (a month)
the revenue within a long term (a year)

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

For every accounting record not yet


written off, evaluate using the fuzzy
system the probability density for
payment

Update the
simulation date

No

No

Yes

Every accounting record is assigned


a random number by the Monte
Carlo Simulation

Did we get to the final simulation


date

Did we run all of the


records

Yes

No

Does the random number indicate a


write off of the record?

Write off the corresponding


accounting record

Yes

Figure 10. Flowchart of the simulation

6.2. Prediction of the default rate


The default rate is assumed to be the percentage of invoices that are delayed or paid after the
due date:
DR ( t ) =

AO

"PDi > DDi and DDi < t

AO

(26)

"DDi < t

where DR(t) is the default rate at the date t.


Then we applied the Fuzzy system to give an expected percentage of invoices that were about
to be paid after due date, and compared to what happened in fact. We repeated the experiments
100 times, in order to have more accurate values. The results are outlined in table 12.
Amount

Estimated Payment

Estimated

Date

...

...

...

03/12/12

03/12/12

190.015.0

4640 days after

314.25

20/12/12

01/02/13

330.020.0

124 days after

Houth

160.00

11/10/12

10/10/12

150.010.0

21 days after

19041

York S.

195.00

19/09/12

03/12/12

190.015.0

4640 days after

19045

N. Shots

149.00

06/09/12

13/09/12

180.020.0

75 days after

19048

Net Sol.

1081.22

11/11/12

12/11/12

1050.0100

61 days after

19062

Yamada

225.00

09/12/12

05/04/13

200.020.0

6843 days after

...

...

...

...

...

...

...

Id

Client

...

...

19027

Amount

Due Date

Payment Date

...

...

York S.

195.85

19028

Bennetts

19033

Received

Table 12. Some results from predictions. Correct estimations are bolded.

21

prediction after simulating a 100 times.

50%
45%
40%
35%
30%
25%
20%
15%
10%
5%
0%

Dec-12

Nov-12

Oct-12

Sep-12

Aug-12

Jul-12

Jun-12

May-12

Apr-12

Mar-12

Feb-12

Actual
Default

Jan-12

22

19033 Houth
160.00
11/10/12
10/10/12 150.010.0
21 days after
4640 days after
19041 York S.
195.00
19/09/12
03/12/12 190.015.0
75 days after
19045 N. Shots
149.00
06/09/12
13/09/12 180.020.0
1050.0100 61 days after
19048
Net
Sol.
1081.22
11/11/12
12/11/12
Fuzzy Logic - Tool for Getting Accurate Solutions
19062 Yamada
225.00
09/12/12
05/04/13 200.020.0
6843 days after

Table 12. Some results from predictions. Correct estimations are bolded.
The following plots show how the default rate is predicted from the Fuzzy system over time.
One
series is
the show
actualhow
default
per month,
and the other
theFuzzy
average
prediction
Thedata
following
plots
the rate
default
rate is predicted
fromisthe
system
over
after
simulating
a
100
times.
time. One data series is the actual default rate per month, and the other is the average

Fig. 11. Prediction of the Default Rate


Figure 11. Prediction of the Default Rate

By applying this procedure, one can infer the revenue over a period, using the expected
amount
to this
be paid
as the one
output
valuethe
in revenue
additionover
to the
expected
date
payment.
The
By
applying
procedure,
can infer
a period,
using
the of
expected
amount
is then value
set to be:
toexpected
be paidrevenue
as the output
in addition to the expected date of payment. The expected

revenue is then set to be:

PERi = PEPRi + DRi *ERi


where
PERi is the Predicted revenue for the period i
PEPRi is the Predicted revenue from past periods of period i
where
DRi is the default rate for period i
ERi is
expected
period
PERi
is the
the original
Predicted
revenuerevenue
for the for
period
i i

(27)

(27)

6.3 Forecasting
Revenue
PEPRi
is the Predicted
revenue from past periods of period i

DRi is the default rate for period i


ERi is the original expected revenue for period i
6.3. Forecasting revenue
We processed the results from the default rate prediction and built several snapshots out of
the simulations to forecast the revenue over each period by taking into account recent real
records up to the current period.
The results are outlined in the plots shown in figure 12.

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079
We processed the results from the default rate prediction and built several
snapshots out of
the simulations to forecast the revenue over each period by taking into account recent real
records
upsimulations
to the current period.
6.4. Long
term
The results are outlined in the plots shown in figure 12.

To calculate how much the enterprise expects to receive in the long term, we performed
6.4 Long Term Simulations
random simulations on the probabilities given by the fuzzy system for the whole period. By
checking
the history
for each
client until
the present
in term,
the simulation,
and an
To calculate
how much
the enterprise
expects
to receivemoment
in the long
we performed
random
on the will
probabilities
given by the
system we
for the
whole period.
By
estimative
of simulations
when this client
pay is obtained.
Forfuzzy
validation
compared
the predicted
checking
the history
fordefault
each client
untilhappened
the presentinmoment
in the
simulation,
andvalidated
an
default
rate against
the real
rate that
the period.
The
system was
estimative of when this client will pay is obtained. For validation we compared the
with a 12 month period simulation using past values for 100 times. This strategy was able to
predicted default rate against the real default rate that happened in the period. The system
give awas
prediction
ofwith
the default
rate with
80% accuracy.
validated
a 12 month
periodansimulation
using past values for 100 times. This
strategy was able to give a prediction of the default rate with an 80% accuracy.

50000
45000
40000
35000
30000
25000
20000
15000
10000
5000
0

Expected Revenue
Real Revenue

January
February
March
April
May
June
July
August
September
October
November
December

Predicted Revenue

Fig. 12. Bar charts comparing the expected, real and predicted revenue for one year
Figure 12. Bar charts comparing the expected, real and predicted revenue for one year

As can be seen, the fuzzy system has learned the experts knowledge, therefore acting as a
process expert and releasing them from the task of analysing, judging, and change the
As canchosen
be seen,
the fuzzy system has learned the experts knowledge, therefore acting as a
values, then becoming able to do other activities.

process expert and releasing them from the task of analysing, judging, and change the chosen
values, then becoming able to do other activities.
7. Discussions and Conclusion
The results product by this initiative show how the default issue can be addressed by the
use of Fuzzy Systems. The default in the economy is serious problem, and although this
7. Discussions
and
conclusion
problem cannot
be solved
easily, the facility to predict it can prevent bad clients to buy
services for which it is not able to pay. Moreover, the Fuzzy System can be used to infer and
forecast a more accurate cash flow, instead of traditional approaches.
The results produced by this initiative show how the default issue can be addressed by the use
One important advantage of this fuzzy system to forecast defaults is that it needed just a
of Fuzzy
The defaulttoinpredict
the economy
a serious
problem,
although
thisand
problem
littleSystems.
piece of information
when a is
given
customer
would and
default
a payment

cannot be solved easily, the facility to predict it can prevent bad clients to buy services for
which it is not able to pay. Moreover, the Fuzzy System can be used to infer and forecast a
more accurate cash flow, instead of traditional approaches.

One important advantage of this fuzzy system to forecast defaults is that it needed just a little
piece of information to predict when a given customer would default a payment and under
which probability. The simulation using quantitative techniques such as Monte Carlo method
turned out a good estimation because of the stochastic nature of this process. Many models of

23

24

Fuzzy Logic - Tool for Getting Accurate Solutions

the probability of default rely on statistical methods to infer the probabilities. This is an
interesting option when there is little data available on the customers to forecast default or
bankruptcy by taking into account TTC probabilities.
The system has been applied in an Accounting System having aided financial analysts with
predictions on cash flow and liquidity. One drawback of this system though is the lack of good
predictions on new clients transactions, but even in these cases the predictions are within the
margin established by the fuzzy sets. However these results can be improved by performing
risk and credit analysis or taking into account more information from the clients in the fuzzy
system.

Author details
Fbio M. Soares*, Olavo S. Rocha Neto and Hevertton H. K. Barbosa
*Address all correspondence to: fabio@exodus.eti.br
Exodus Sistemas, Brazil

References
[1] Fonseca, R.A., Francisco, J.R. de S., Amaral, H.F., Bertucci, L.A., (2013) Impact of De
faults in Commercial Sector, Revista da Faculdade de Administrao e Economia, v.
4, n.2, pp.39-60.
[2] de Severigny, A., Renault, O, (2004) The Standard & Poors Guide to Measuring and
Managing Credit Risk, McGraw-Hill, New York, US ISBN 0-07-141755-9.
[3] Duffie, D., Singleton, K.J., (2003), Credit Risk: Pricing, Measurement, and Manage
ment. Princeton University Press. Princeton, US, ISBN 0-691-09046-7.
[4] CNC (2013) Pesquisa Nacional de Inteno de Consumo das Famlias, http://
www.cnc.org.br/central-do-conhecimento/pesquisas/pesquisa-nacional-de-intencaode-consumo-das-familias-icf-janeir-0 , accessed in June 2014.
[5] Serasa Experian (2013), Economic Indicators and Default in Brazil, http://noti
cias.serasaexperian.com.br/indicadores-economicos/inadimplencia-das-empresas (ac
cessed in June 2014).
[6] Katchova, A.L., Barry, P.J., (2005) Credit Risk Models and Agricultural Lending,
American Journal of Agricultural Economics 87, no 1 2005, pp 194-205.
[7] Camargos, M.A., Camargos, M.A.S., Silva, F.W., Santos, F.S., Rodrigues, P.J., (2004)
Determining factors of the default in processes of credit concession to micro and
small businesses in the State of Minas Gerais (in Portuguese), Revista de Administra

A Simple Fuzzy System Applied to Predict Default Rate


http://dx.doi.org/10.5772/60079

o Contempornea vol 14. no.2, ISSN 1982-7849, online version: http://www.scie


lo.br/scielo.php?pid=S1415-65552010000200009&script=sci_arttext accessed in June
2014.
[8] Zirakja, M.H., Samizadeh, R., (2011) Risk Analysis in E-commerce via Fuzzy Logic,
Int. Journal Management Business, Summer 2011, pp 99-112.
[9] Annibal, C.A. (2009), Default in the Brazilian Banking Sector: an assessment of its
measures (In Portuguese), Central Bank of Brazil Working Papers n. 192, ISSN
1519-1028
[10] Engelmann, B., Rauhmeier, R., (2006) The Basel II Risk Parameters, Springer Berlin
Heidelberg New York, ISBN-10 3540-33085-2, June 2006.
[11] Simkovic M., Kaminetzky, B., (2010) Leveraged Buyout Bankruptcies, the Problem of
Hindsight Bias, and the Credit Default Swap Solution (http://ssrn.com/
abstract=1632084). Columbia Business Law Review, Vol. 2011, No.11, pp. 118, 2011.
[12] Herzog, A.L., (2001) Blow-by-blow (In Portuguese), Revista Exame, 7 mar. 2001.
[13] Kaplan, R.S., Norton, D.P., (1997) Why does business need a balanced scorecard?,
Journal of Cost Management, May/June 1997, pp 5-10.
[14] Hsih, N.C., Chu, K.C. (2009) Enhancing Consumer Behavior Analysis by Data Min
ing Techniques. Int. J. of Information and Mangement Sciences, vol 10, N. 1, pp 39-53,
March 2009.
[15] Preisler, A.M., (2003) Risk and Credit Analysis for Micro and Small Businesses An
guiding proposal (in Portuguese), Master Degree Dissertation in Production Engineer
ing, Postgraduate program in Production Engineering, Federal University of Santa
Catarina, Florianopolis, 180f, 2003.
[16] Jarrow, R.A., Turnbull, S., (1995) Pricing Derivatives on Financial Securities Subject
to Credit Risk, Journal of Finance, vol 50, March 1995.
[17] Merton, R., (1976) Option Pricing when Underlying Stock Returns are Discontinuous,
Journal of Financial Economics, 3, Jan-Mar 1976, pp. 125-144.
[18] Aguais, S.D., et. al, (2004) Point-in-Time versus Through-the-Cycle Ratings, in
M.Ong (ed), The Basel Handbook: A Guide for Financial Practitioners (London:Risk
Books).
[19] Altman, E. I., (1968) Financial Ratios, Discriminant Analysis and the Prediction of
Corporate Bankruptcy, Journal of Finance, 23: pp 589-609. doi: 10.1111/j.
1540-6261.1968.tb00843.x.
[20] Basel II, (2003) Overview of the New Basel Capital Accord, Consultative Document
of Bank for International Settlements, Issued for comment by 31 July 2003
[21] Jacobson, T., Roszbach, K., (2003) Bank Lending Policy, Credit Scoring and Value-atRisk, Journal of Banking and Finance, 27 (2003), pp 615-633.

25

26

Fuzzy Logic - Tool for Getting Accurate Solutions

[22] Odeh, O.O., Featherstone, A.M., Sanjoy, D., (2006) Predicting Credit Default in an
Agricultural Bank: Methods and Issues, Southern Agricultural Economics Associa
tion Annual Meeting, Orlando,FL, Feb 5-8, 2006.
[23] Kuan, C.M., Liu, T., (1995) Forecasting exchange rates using feedforward and recur
rent neural networks, vol 10 issue 4 Oct-Dec 1995, pp 347-364.
[24] Martin, A., Gayathri, V., Saranya, G., Gayathri, P., Venkatesan, P., (2011) A hybrid
model for bankruptcy prediction using genetic algorithm, fuzzy C-means and mars,
International Journal on Soft Computing (IJSC), Vol 2 No 1, Feb. 2011. DOI: 10.5121/
ijsc.2011.2102.
[25] Kastens, T.L., Featherstone, A.M., (1996) Feedforward Backpropagation Neural Net
works in prediction of Farmer Risk Preferences, American Journal of Agricultural
Economics 78 (May 1996), pp 400-415.
[26] Mamdani, E. H., Assilian, S. (1975) An experiment in linguistic synthesis with a fuz
zy logic controller. Int. J. Man-Machine Studies, vol. 7, p. 1-13.
[27] Pereira, V.G.,De Oliveira, R.C.L.,Soares F.M. (2012) Fuzzy Control Applied to Alumi
num Smelting. Fuzzy Logic Concepts Theories and Applications, ch. 13, Intech Open,
Rijeka, Croatia, pp. 253-278.
[28] Zadeh, L.A., (1978) Fuzzy sets as a basis for a theory of possibility, Fuzzy Sets and
Systems, Vol. 1, pp 3-28.
[29] Shang, K., Hossen, Z. (2013), Applying Fuzzy Logic to Risk Assessment and Decision
Making, Research Report sponsored by Casualty Actuarial Society, Canadian Insti
tute of Actuaries. Available at: https://www.soa.org/Files/Research/Projects/
research-2013-fuzzy-logic.pdf (accessed in June, 2014)
[30] White, D., (1995) Application of Systems Thinking to Risk Management: A Review of
the Literature, Management Decision, vol. 3 (10), pp 35-45.

Chapter 2

Applying Fuzzy Logic to Understanding Driving Modes


in Real Road Environments
Toshihisa Sato and Motoyuki Akamatsu
Additional information is available at the end of the chapter
http://dx.doi.org/10.5772/59438

1. Introduction
Driving a vehicle is a task in which the environment and the situation are changing in real
time. The driver controls the vehicle on the road and manages spatial distance to a preceding
vehicle, pedestrians, or other stationary or moving obstacles, while travelling from an origin
to a destination. The driver must pay attention to objects around the vehicle in addition to the
road environment (e.g. road alignment, traffic signals, and traffic signs). The result may be a
high workload for the driver.
Advanced driver-assistance systems have been developed over a long period of time in order
to enhance road safety and decrease driver workload. Some systems present information that
helps the driver recognize a route to the destination and traffic conditions near the drivers
vehicle. Other systems provide the driver with warnings regarding possible collision with a
lead vehicle or a stationary vehicle, and lane departure warnings. Automatic control systems
to avoid collisions (e.g., automatic braking just before a rear-end collision when a lead vehicle
suddenly slows down) have been installed in several passenger cars. Recently, autonomous
vehicle controls have been developed, and field operational tests using such systems have been
planned or have already begun [1].
A key issue for implementation and popularization of advanced driver-assistance systems is
human-centered design for information and warning presentations and self-control systems
[2,3]. Human-centered design is expected to enhance drivers acceptance of the information
provided and system-paced operations. The presentation and control algorithm, which adapt
to a drivers typical driving behavior, might contribute to realizing human-centered design for
driver-assistance systems. However, driver acceptance is not ensured when the system
presents assistance information at the same timing as the drivers usual maneuver or when
the system controls the vehicle in the same manner as the drivers usual time-course stabili

28

Fuzzy Logic - Tool for Getting Accurate Solutions

zation. Most drivers do not objectively understand their own behavior, and they might not
understand that the control methods of the assistance systems are similar to their own control.
Greater margins for the drivers operational timing and input (e.g., the drivers onset of braking
and the drivers maneuvers to avoid collisions) will be necessary when driver-assistance
systems are developed based on a drivers usual behavior.
1.1. Task difficulty while driving
The difficulty of a driving task is determined by the interaction between driver capability and
task demand. The driver adjusts the task difficulty, which is calculated by subtracting the
capability from the task demand. The task-capability interface model suggests the concept of
task difficulty controls in driving [4]. When task demand exceeds driver capability, task
difficulty is so high that the driver cannot complete the driving task. This condition may lead
to a collision or a loss of control. When capability exceeds demand, the task is easy and the
driver successfully accomplishes it. Figure 1 presents the concept of task difficulty adjustment.
The drivers capability is maintained and the task demand is decreased in order to maintain
the drivers capability above the task demand.

D>C Higher task difficulty


Failure of task completion

C>D Lower task difficulty


Success of task completion

Task Demand(D)

Drivers Capability(C)

Influencing factors

Influencing factors

Operational

Aptitude for driving


Driving style

features of vehicle (control


characteristics, size of vehicle body,
information display, etc.)
Road environments (visibility, road
surfaces, curve radii, road signs and
signals, etc. )
Traffic conditions (solo-driving, carfollowing, congestion, etc.)
Interaction with other road users
(slowing down of a lead vehicle,
crossing of pedestrians, etc.)
Driving behaviors (choice of driving
speeds, choice of headway distances,
control of acceleration, etc.)

Driving skill
Physical characteristics
Cognitive characteristics
Resource allocation
Physical and mental states

Figure 1. Interaction between task demand and driver capability

The task demand and the drivers capability are influenced by several factors. The task demand
is determined by the operational features of the vehicle, environmental factors including the

Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments


http://dx.doi.org/10.5772/59438

road environment and traffic conditions, and interactions with other road users. Different
passenger cars have different operational features. The road environment includes visibility
and road surfaces changed by the weather, curve radii, and road signs and signals. Traffic
conditions differ with the number of vehicles, pedestrians, and bicycles near the drivers
vehicle; and the movements of other road users influence task demand. Task demand is also
influenced by driving behavior, including control of driving speed, headway distance, and
acceleration. For example, shorter headway distance leads to higher task demand and requires
higher driver capability of paying attention to the movement of the lead vehicle. In contrast,
greater headway distance leads to lower task demand; thus, the possibility of rear-end collision
is lower even when the driver does not allocate many resources to the driving task. The
important point in the task-capability interface model is that the driving task demand can be
controlled by the drivers own driving behavior.
The drivers capability is constrained by aptitude for driving, driving style, driving skill, and
physical and cognitive characteristics (e.g., physical reach, reaction time, and information
processing capacity). It is also constrained by resource allocation. More concentration on the
driving task enhances the drivers capability, and distracted driving decreases the drivers
capability. The drivers physical and mental states, including fatigue and drowsiness, also
impact the drivers capability and can vary at different times while driving.
1.2. New concept of driver-assistance systems: Reduction of usual task demand
Figure 2(a) presents a typical driving area in the two-dimensional space of task demand and
driver capability. The typical driving area has some range because both the task demand and
the drivers temporary capability change according to driving conditions. For example, task
demand increases when a lead vehicle suddenly decelerates and the headway distance
decreases while following the lead vehicle. However, task demand decreases when driving
with no other vehicles around the drivers vehicle on a straight road with wide traffic lanes.
A driver allocates more resources when changing traffic lanes or overtaking a vehicle, leading
to higher driver capability. When a driver glances at objects irrelevant to the driving task, the
drivers temporary capability decreases.
Conventional driver-assistance systems that are now installed in passenger cars assist drivers
when the task demand suddenly increases and/or the drivers capability decreases. The vertical
dashed arrow and the horizontal dashed arrow in Figure 2(b) suggest these situations. The
sensors installed in the vehicle detect situations in which task demand suddenly increases due
to an immediate change in traffic conditions (e.g., sudden deceleration of a lead vehicle or a
traffic jam after a sharp curve) [5]. The vertical dashed arrow shows the change of the task
demand in such situations.The camera monitoring the drivers face detects situations in which
the drivers capability decreases temporarily due to a glance off the road or a decrease in the
drivers awareness level [6]. The horizontal dashed arrow shows the change of the drivers
capability in these situation. The assistance systems support safe driving by providing the
driver with warnings or by operating the vehicle automatically.

29

30

Fuzzy Logic - Tool for Getting Accurate Solutions

1
D>C
Possibility of collision

2
3

Task Demand (D)


CD
Success of task completion

4
5
Typical
driving

6
7

No vehicles around the drivers


vehicle on a straight road
Lane
Slightly
distraction changing

8
9

Drivers Capability (C)

10

(a) Typical driving areas

11
12

Deceleration of a leading
vehicle

D>C
Task Demand (D)
CD

13
14
15
16

Detection of sudden changes


of the task demand or the
drivers capability

Typical
driving

17
18
19

Drivers Capability (C)

(b) Conventional driver assistance systems

20
21
22

D>C
Task Demand (D)
CD

23
24
25
26
27
28
29
30

Reduce the base of


the task demand
Drivers Capability (C)

(c) Proposed driver assistance systems


Fig. 2. Concept of conventional and proposed driver-assistance systems in the task demand
and driver capability space

Figure 2. Concept of conventional and proposed driver-assistance systems in the task demand and driver capability
space

When the base of the driving task demand is lower during usual driving, sudden changes in
traffic conditions may not increase task difficulty because the drivers capability remains
higher than the temporal task demand. In addition, the driver can maintain driving safety by
reducing the base of the task demand even when the driver is tired or sleepy and the drivers
capability decreases temporarily. Figure 2(c) presents the concept of new driver-assistance
systems that promote driving with lower task demand. This new system may contribute to
reducing driving risk: the possibility of entering the area where task demand is above driver

Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments


http://dx.doi.org/10.5772/59438

capability, which potentially underlies normal drives. It is essential to clarify how drivers
control task demand while driving and to apply the control method of task demand in order
to develop the proposed driver-assistance systems. We need mathematical modeling techni
ques to understand driving behaviors based on the behavioral data.
1.3. Applying fuzzy logic to detecting and understanding of driver behavior
Several research studies have conducted to investigate differences in the driving behavior
within and between drivers. Driver states, including a fatigue, a vigilance, and a frustration,
are one aspect of the dynamic changes of the individual drivers behavior in a wide sense.
These conditions were measured by physiological signals [7-9]. Pattern recognition techniques
(e.g., Neural Network Model, Hidden Markov Model, ARX (AutoRegressive with eXogenous)
Model) have been applied to driving behavior data, contributing to recognizing and identify
ing characteristics of the drivers behaviors [10-12].
In this chapter, we use fuzzy logic to clarify typical driving behavior and behavior with low
task demand. A driver recognizes the physical conditions around the vehicle. Human
cognition and recognition are subjective and ambiguous. Drivers feel as if they are traveling
fast or are late according to road traffic conditions, even at the same speed. For example, drivers
feel as if they are driving faster when they accelerate to 40km/h after driving very slowly due
to a traffic jam. However, they feel as if they are traveling slowly when they drive on an urban
street at 40km/h after driving at 100km/h on a highway. Therefore, traditional controls using
a deterministic equation (e.g., PID controller) cannot tell the difference between usual driving
and driving with low task demand. Deterministic controls operate pedals or the steering wheel
in order to adjust the relationship between the current value and the desired value in a physical
space. The drivers perception of driving states in a physical space (e.g., feelings of speed and
of relative distance) change according to road conditions and traffic situations. The control
algorithm should be changed based on the conditions around the drivers vehicle, in order to
adjust the task demand so as to maintain a low level.
The fuzzy logic model constructs if-then rules in divided regional spaces and combines several
rules to the representation of input-output relationships [13]. Enabling appropriate control
rules according to road traffic conditions contributes to determining the drivers perceived
demand while driving. Additionally, fuzzy logic controls correspond to linguistic controls.
This model describes driving operations using linguistic terms. Model construction using
ordinary language is suitable for estimating the driving mode in real road-traffic environ
ments.
We introduce a case study using fuzzy logic to clarify driving modes, focussing on carfollowing behavior. Fuzzy logic car-following models were developed by the Transportation
Research Group at the University of Southampton [14,15]. These models were applied to
behavior data collected on a real bypass in Japan. The input-output relationship estimated by
the fuzzy logic model was used to understand differences among car-following behaviors in
different driving modes. We compared car-following behavior in a drivers usual manner with
the behavior observed in low task-demand conditions.

31

Fuzzy Logic - Tool for Getting Accurate Solutions

2. Case study: Applying the fuzzy logic car-following model to clarify carfollowing behavior with low task demand
Drivers adjust headway distances according to the relative speed of a lead vehicle. Figure 3
presents an example of typical car-following behavior. The data were obtained from field
experiments using an instrumented vehicle. The horizontal axis denotes the headway distance
between the drivers vehicle and the lead vehicle, and the vertical axis denotes the relative
speed of the lead vehicle (the positive relative speed means that the lead vehicle drives faster
than the drivers vehicle). Drivers attempt to maintain a preferable following headway. When
the speed of the lead vehicle increases and the relative distance to the lead vehicle increases
(Figure 3 (1)), the driver accelerates in order to maintain the desired following distance. The
speed of the drivers vehicle increases (i.e., the relative speed becomes negative) and the
headway distance decreases (Figure 3 (2)); the responses of headway distance occur a few
minutes later, due to the drivers response time. When the headway distance decreases to less
than the desired distance, the driver decelerates and the relative speed increases. The distance
between the two vehicles again opens (Figure 3 (3)). These cycles continue in a car-following
situation, and car-following behavior is depicted by several spirals in a plot of headway
distance and relative speed.

The lead vehicle drives faster


4

Relative speed (m/s)

32

( 1)

( 3)

-2

( 2)
The drivers vehicle drives faster

-4
10

15

20

25

30

35

40

Headway distance (m)


Figure 3. Typical car-following behavior in the plot of headway distance and relative speed

2.1. Fuzzy Logic car-following model


The concept of the fuzzy logic car-following model includes a description of the drivers
acceleration in the divided headway distance and relative speed spaces. The relationship
among acceleration, headway distance, and relative speed is depicted in a natural manner

Proof Corrections Form


Author(s) Name(s): Toshihisa Sato
Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments

Chapter Title: Applying Fuzzy Logic to Understanding Driving Modes inhttp://dx.doi.org/10.5772/59438


Real Road
Enironments

using verbal terms and associated rules, instead of deterministic mathematical functions.
Various car-following models have been proposed for more than sixty years (e.g., General
Motors Model [16,17], PROOF
Stopping-Distance
Model FORM
[18], and Action-Point Model [19]. See
CORRECTIONS
reference [20] for the historical review). The output is drivers acceleration in almost all of the
Page Linecar-following models, and several functions have been proposed to map input spaces to the
Delete
Replace with
No.
No.
output space. The fuzzy logic car-following model uses a theory of fuzzy logic to quantify the
3
37 sensory
The horizontal
dashed
arrow shows the
change The horizontal dashed arrow shows the change
inputs and
the input-output
map.
f the drivers

6
7

of the drivers

The fuzzy logic car-following model can evaluate car-following behavior that results from
followinigand
behavior
with low
task demand
following
behavior
with
low taskthe
demand
2
incomplete
imprecise
sensory
data by human
modalities.
Figure
4 depicts
concept of
the fuzzy logic car-following model. If-then rules are developed in each categorized area in
4 Replace with
12 theFigure
two-dimensional
spaces.

If headway distance is B
and relative speed is X,
then acceleration of the driver is

Relative speed (m/s)

W
2

X
0

Y
-2

Z
-4
10

15

25

30

35

C
D
E
Headway distance (m)

40

Figure 4. Concept of the fuzzy logic car-following model

Figure 9 Replace with

Frequency
rate of the fuzzy logic car-following model. This model uses two
Figure 5 presents
the structure
inputs: distance 40%
divergence and relative speed. Distance divergence is the ratio of headway
Typical driving
distance to desired headway distance. The desired headway is calculated using the average of
Driving with low task demands
headway distances when relative speeds between vehicles are close to zero. Relative speed is
30% vehicle minus the speed of the drivers vehicle: a positive value indicates
the speed of the lead
that the lead vehicle drives faster. There are three partitions of distance divergence (close,
good, and far) and five partitions of relative speed (closing+, closing, zero, opening, and
20%
opening+).

10%

4.5

3.5

2.5

0%

1.5

12

20

33

34

Fuzzy Logic - Tool for Getting Accurate Solutions

Fuzzy Inference System

Inputs

Distance
divergence

Fuzzification
Interface

Rule-base

Output

Defuzzification
Interface

Acceleration

Relative
speed
Output membership function
[constant]
Input membership function
close

good

far

Distance divergence

closing+ closing

zero

opening opening+

Relative speed (m/sec2)

Distance divergence=Headway distance / desired headway distance


(The desired headway is estimated as an average of the headway
distance which was observed when the relative speed was zero.)

Relative speed=Speed of leading vehicle speed of drivers vehicle)

Figure 5. Structure of the fuzzy logic car-following model

The input-output relationship is estimated using fuzzy sets that are described by membership
functions. This study uses a Sugeno inference system [21], a Gaussian membership function,
and a constant output membership function. The initial fuzzy inference system uses the grid
partition method. The membership functions of each input are evenly assigned in the range
of the training data. The parameters of the fuzzy-inference system are then estimated using a
combination of back-propagation and least-square methods. The parameters of input mem
bership functions are estimated using back propagation in each iteration, in which the
differences between training data and model output are propagated backward and the
parameters are updated by gradient descent. The parameters of output membership functions
are updated in a forward pass using the least-square method. Parameter optimization is
repeated until a given number of iterations or an error reduction threshold is reached. The
defuzzification method is a weighted average. See reference [22] for details of the fuzzy logic
car-following model, including input variable validation and model validation.
2.2. Data collection in real road traffic environments
Two methods are used to collect driving behavior data in a real road environment: using a
private car and field experiments using an instrumented vehicle. A simple driving recorder
system is installed in the private car that the participant owns and uses in daily living. This
recorder system collects the driving behavior data of the owner. This method contributes to
recording naturalistic behavior data. A famous research project is the 100-Car Naturalistic
Driving Study by the Virginia Tech Transportation Institute (VTTI) [23]. This study suggested
the actual conditions of Heinrichs law in the real road traffic environment and the actual
occurrence rate of distracted driving of ordinary drivers. One shortcoming is that most drivers
do not always drive on the same road, so this research concept is not suitable for investigating

Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments


http://dx.doi.org/10.5772/59438

the influence of road traffic environments on the individual drivers maneuvering and
controlling.
An instrumented vehicle is equipped with various sensors to record the vehicles driving status
and the drivers operations of the pedals and steering wheel. Instrumented vehicles were
developed in the 1960s and 1970s, mainly in the USA and in Sweden [24-26]. In Japan, a driving
behavior database was constructed using four instrumented vehicles, 92 drivers (33 females)
of various ages, and measurement drives for 10 to 40 days per driver [27]. The advantage of
using an instrumented vehicle is an easy analysis of driving behavior data collected on the
same road, contributing to an evaluation of the impact of traffic conditions on the individual
drivers behavior under the same road conditions.

Laptop PC
Driving
recorder
system

CCD camera for


recording rear scene

CCD camera for


recording front scene
CCD camera for
recording a traffic lane

D-GPS sensor

Laser radar for


detecting a
following vehicle

Laser radar for


detecting a leading
vehicle

Speed sensor
Steering and lever sensors
G-sensor and gyro sensor
Potentiometers for measuring
accelerator and brake pedals
applications

Laser radar to record relative distance and


speed to a leading vehicle

Driving recorder system


inside the trunk

CCD camera for


recording drivers face

Laser radar to record relative distance and


speed to a following vehicle

Laser sensors to detect the position of drivers


right foot (cover of the accelerator or brake pedal
without pressing)

Figure 6. Sensors and driving recorder system of the AIST instrumented vehicle.

Figure 6 presents an overview of the AIST instrumented vehicle used to construct the driving
behavior database [28]. Sensors installed in the vehicle include a speed sensor, G-sensor and
gyro sensor, a D-GPS sensor, steering and lever sensors and laser radars. Five CCD cameras
are used to record visual images outside and inside the instrumented vehicle. The recorder
system is fixed in the trunk of the vehicle in order to encourage natural driving behavior in
measurement drives. The car-following behavior data introduced in this chapter was also
collected using the same vehicle.

35

36

Fuzzy Logic - Tool for Getting Accurate Solutions

2.3. Data collection of driving behavior with low task demand


The experiment drive was made once a day for a total of 15 drives. The participants were
instructed to drive in their usual manner (typical driving) for seven trials, and to drive to
prevent accumulated fatigue and in a more relaxed manner (driving with low task demand)
for the other eight trials. The drives with high task demand would require higher resource
allocation to the driving task, and higher concentration on driving would lead to an accumu
lation of fatigue. Therefore, preventing fatigue while driving corresponds to a condition in
which drivers should control task demand by performing driving operations that do not
exceed their capability, where their capability is temporarily low due to the instructions.
Eight drivers (four females and four males) participated in the field experiments. The average
age was 37.6 years (25 to 51 years), the average driving experience was 15 years (5 to 33 years),
and the average annual mileage was 16,000km (8,000 to 30,000km).
Figure 7 depicts a road section used for analysis of car-following behavior with different
driving modes. The target road was a one-lane bypass and two different directions. There were
several oncoming vehicles, including buses or trucks in the opposite lane. The length was
1.8km (about 2 min drive). We focused on only drives with a lead vehicle, excluding the data
during drives without a lead vehicle on the target section.

To goal of driving route

From start of driving route


Figure 7. Photo and maps of the road in the analysis of car-following behavior.

Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments


http://dx.doi.org/10.5772/59438

2.4. Results
Table 1 presents the number of traces and the data length of the data collection, which were
inputted into the fuzzy logic model specification. One trace was defined as a situation in which
a driver followed a lead vehicle for more than 20sec. There is a total of 24 traces in the typical
driving and 30 traces in the driving with low task demand. The two driving modes have similar
data length (typical driving: 20.03min, driving with low task demand: 19.11min).
Performance of fuzzy logic model estimation is usually evaluated using the root mean square
error (RMSE) of the model prediction:

RMSE =

N ^
(Yi - Yi)2

i=1

(1)

where i is a predicted value using the fuzzy logic model at time increment i, Yi is raw data at
time increment i, and N is the number of data. Table 1 shows the results of the RMSEs calculated
in the typical drive and in the drive with low task demand, respectively. The RMSEs between
the predicted acceleration and the measured data in the estimated fuzzy logic car-following
model were 0.24m/sec2 in the typical driving and 0.23 m/sec2 in the driving with low task
demand. These indicate a satisfactory model-to-data fit compared to other real-world data [14].
Additionally, the results are similar to the errors calculated in the other car-following data on
the same road section [22].

Results of data collection

Results of fuzzy logic


model estimation

Driving mode

Traces

Data length (min)

RMSEs (m/sec2)

Typical driving

24

20.03

0.24

Driving with low task demand

30

19.11

0.23

Table 1. Data volume in the fuzzy logic model specification and the results of the RMSE

Figure 8 presents relative speed-acceleration mapping resulting from the fuzzy logic model
estimation. We focus on the relationship between relative speed and acceleration in order to
analyze the dynamic aspects of car-following behavior. When the distance between vehicles
is increasing, acceleration in drives with low task demand is lower than that in typical drives.
When the drivers vehicle approaches the lead vehicle, deceleration of driving with low task
demand is less than that of typical driving.

37

Enironments

PROOF
CORRECTIONS FORM
Fuzzy Logic - Tool for Getting Accurate
Solutions
Page
No.

Line
No.

Delete

Replace with
The horizontal dashed arrow shows the change
of the drivers

37

The horizontal dashed arrow shows the change


f the Acceleration
drivers

followinig behavior with low task demand

12

Figure 4 Replace with

Typical driving

0.4

Driving with low task demands

following behavior with low task demand

Acceleration (m/s2)

0.3

If headway distance is B
and relative speed is X,
then acceleration of the driver is

0.2
0.1 4
0
W

Relative speed (m/s)

-0.1

-0.2
0

-0.3

-0.4 -2
-2

Deceleration
Z

-1.5

-1

-0.5

0.5

1.5

Relative speed (m/s)

Closing

Opening

-4
10

15

20

25

30

35

40

A
B
C
D
E
F
Figure 8. Results of fuzzy logic car-following model specifications in relative speed and acceleration mapping
Headway distance (m)
12

Figure 9 Replace with

Frequency rate
40%

Typical driving
Driving with low task demands

30%

20%

10%

4.55

44.5

3.54

33.5

2.53

22.5

1.52

11.5

0%

0.51

38

THW (s)
Figure 9. Result of THW distribution between two driving modes

Figure 9 presents the distribution of time headway (THW) (relative distance between the lead
vehicle and the drivers vehicle divided by the driving speed of the drivers vehicle). Although
the distribution of THW is not a result estimated from the fuzzy logic, this suggests the static
aspects of the car-following behavior [29]. Distribution is defined as proportions of the time
when drivers take the relevant THW to the total time while driving on the target road section.
The graph shows the longer headway distance to the lead vehicle in drives with low task
demand. Here, 15% of the data are located in the category of more than 5sec.

Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments


http://dx.doi.org/10.5772/59438

2.5. Discussion
2.5.1. Understanding of driving modes
Drivers acceleration and deceleration were lower when they were conscious of preventing
fatigue while driving than when driving in the usual manner. Drivers are not sensitive to
movement of the lead vehicle under low task demand conditions, and they do not control the
vehicle tightly according to the acceleration or deceleration of the lead vehicle. Comparison of
THW distributions suggested that drivers allowed greater headway distances when driving
with low task demand. Greater headway distance permits the drivers moderate controls
observed in the relative speed and acceleration mapping.
This finding is supported by the control methods of task demands while approaching an
intersection with a traffic light [30]. We compared behavioral data when driving in the drivers
typical manner and when driving under instructions to prevent fatigue by driving with low
task demands. The target situation was approaching and stopping at intersections with red
traffic lights. The differences between the two driving modes were found in driving speed,
headway distance, accelerator pedal operation, or brake pedal operation. Drivers behaved so
as to maintain a margin for the movements of a lead vehicle, in order to reduce the task
demands. Our findings in the data analysis of the behaviors approaching the intersections
support the results described in this chapter. Our findings suggest that longer spatial distance
to a preceding vehicle contributes to reducing the task demands.
THWs of more than 5sec suggest that drivers maintain their desired driving speed and do not
follow the driving speed of the lead vehicle. This finding indicates that the driving situation
changes from car-following to solo-driving. Drivers often change the driving situation and
choose an easy driving task in order to reduce driving task demand.
2.5.2. Advantage of fuzzy logic car-following model
The fuzzy logic can develop smooth relations between the input and output spaces. We
calculated averages of the drivers acceleration in the following categories: when the relative
speed between the lead vehicle and the drivers vehicle was from -2 to -1.5 m/sec2, from -1.5
to -1 m/sec2, from -1 to -0.5 m/sec2, from -0.5 to 0 m/sec2, from 0 to 0.5 m/sec2, from 0.5 to 1 m/
sec2, from 1 to 1.5 m/sec2, and from 1,5 to 2 m/sec2. Figure 10 presents the results of our
calculations.
The deceleration of typical driving in the category of -1.5 ~-1 m/sec2 exceeded that of driving
with low task demand. The acceleration of typical driving in the category of 1.5 ~2 m/
sec2 exceeded that of driving with low task demand. These results were similar to those
obtained from the estimation of the fuzzy logic car-following model (Figure 8). However, the
deceleration when the relative speeds were -2 ~-1.5 m/sec2and -1 ~-0.5 m/sec2and the
acceleration when the relative speeds were 1~1.5 m/sec2 were almost the same between the
two driving modes. We cannot understand the driving behavior when the drivers reduce the
task demand based on Figure 10, because the averaged accelerations in some ranges of the
relative speeds does not indicate definite differences between when driving in the drivers typ

39

Fuzzy Logic - Tool for Getting Accurate Solutions

ical manner and when driving with low task demand. Linear approximation of the averages
suggests the tendencies similar to the fuzzy logic model estimation, while the details of the
differences in the relative speed and acceleration mapping between the two driving modes are
not described; e.g., the gradient of the acceleration in the range of 1~2 m/sec2was almost the
same between the two driving modes, although the values of the driving with low task demand
were lower than those of the typical driving.
Multivalued logic of the fuzzy membership function, contrast to the concept of two-valued
logic, contributes to formulating smooth mapping from inputs to output values. If-then
statements in the fuzzy logic are described using natural language, leading to not so large of
the partition numbers of the inputs (e.g. closing+, closing, zero, opening, and
opening+ in the relative speed in this study). The fuzzy operation based on the moderate
partition numbers of the Gaussian membership functions could avoid an overfitting to the
data collected on a real road.
14

14

Figure 10 Replace with

0.5

Typical driving

Driving with low task demand

0.4
0.3

Acceleration (m/s2)

40

0.2
0.1
0
-0.1
-0.2
-0.3
-0.4

-2-1.5

-1.5-1

-1-0.5

-0.50

00.5

0.51

11.5

1.52

Relative speed (m/s)


Figure 10. Averages of the acceleration in each categorized relative speed

3. Comparison of factors influencing a drivers acceleration under carfollowing conditions


In the development of fuzzy logic car-following model, several candidates of behavioral data
indices were applied to the fuzzy inference system estimation [15]: headway distance to the
leading vehicle, THW, inverse of time to collision (time to collision (TTC) is calculated by the
headway distance divided by the relative speed between the lead vehicle and the drivers
vehicle), etc. Model estimation tests using a single variable, a combination of two variables,
and a combination of three variables were tried. The trials had many numbers because of the
large number of all possible combinations. The results confirmed that drivers employed a

Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments


http://dx.doi.org/10.5772/59438

combination of headway and relative speed for their control strategy in a car-following
situation. Distance divergence and relative speed were selected as the inputs of the carfollowing model. Car-following behavior for typical drives and drives with low task demand
were compared assuming that drivers control the vehicle acceleration based on the same
information regarding speed matching and headway matching.
The Bayesian network model would be useful in investigating the behavioral index automat
ically and comprehensively, when we hypothesize that drivers change information for vehicle
control in order to manage task demand. The Bayesian network model is a stochastic model
that focuses on causal networks between multiple parameters using a set of variables and a
set of direct links between variables [31]. The connection in the Bayesian model presents a
conditional probability between objective and explanatory variables, indicating a quantitative
relationship between variables. The direct link between A and B suggests that the two variables
are strongly related: data distribution of variable A changes according to variable B, and
vice versa.
We constructed Bayesian network models using the same data sets as when constructing the
fuzzy logic car-following model. The Bayesian models were applied to the data for each driving
mode (typical drives and drives with low task demand). The following indices were candidates
that have influences on drivers acceleration while following a leading vehicle.
Speed of drivers vehicle
Speed of the leading vehicle
Headway distance
Relative speed
THW
Inverse of TTC
Distance divergence
Angular velocity: Calculated using the approximate formula of width*Relative speed/
Headway distance2, where the width of the lead vehicle is assumed to be 2.5m.
Figure 11 and 12 present the results of the Bayesian network model estimation. AIC (Akaike
Information Criterion) was applied as the criteria when assessing the relations between
variables [32]. The two estimated Bayesian models suggest that drivers use the same behavioral
indices for acceleration control between in typical driving and in driving with low task
demand. Distance divergence, Relative speed, and Speed of the drivers vehicle influ
ence the drivers acceleration. Distance divergence and Relative speed were the same as
the input variables of the fuzzy logic car-following model. Thus, Bayesian network model
estimation contributes to searching for the behavioral index influencing the drivers operations
within all data sets collected in real road traffic environments.

41

42

Fuzzy Logic - Tool for Getting Accurate Solutions

Acceleration

Speed of the
drivers vehicle
Speed of the
leading vehicle

Relative
speed

Headway
distance

Distance
divergence

Angular
velocity

THW (Time
Headway)
1/TTC (Time to
Collision)

Figure 11. Bayesian network model estimated using the behavior data in typical driving

Speed of the
drivers vehicle

Acceleration

Distance
divergence

Relative
speed

Angular
velocity

Speed of the
leading vehicle

Headway
distance

1/TTC (Time to
Collision)

THW (Time
Headway)

Figure 12. Bayesian network model estimated using the behavior data in driving with low task demand

Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments


http://dx.doi.org/10.5772/59438

Differences between in the two driving modes were found in the relationships between the
candidates other than the factors influencing the acceleration. Inverse of TTC has no parents
in the Bayesian network model of the typical driving. This item influences Angular velocity,
Relative Speed, and THW, however, no factors have an influence on Inverse of TTC.
The drivers might determine the speed and manage the headway distance based on the inverse
of TTC which indicates the possibility of collision while following the leading vehicle [33]. On
the other hand, Speed of the drivers vehicle has no parents in the Bayesian network model
when driving with low task demand. The speed of the drivers vehicle influences the most
factors: Acceleration, Distance divergence, THW, Headway distance, and Speed of
the leading vehicle. This item might be a determinant when judging how to follow a lead
vehicle in order to reduce the task demand. This result supports the change of the driving
situation from car-following to solo-driving. Drivers focused on keeping their preferred
driving speed when they reduced the task demand, leading to changing the driving situation
by themselves.
The Bayesian network model would not be appropriate for clarifying the drivers dynamic
operations such as acceleration response according to the movements of the lead vehicle. The
relationship between input and output variables is determined using conditional probability,
indicating that data were categorized in the model estimation. The category number and range
of one category in the data categorization are key factors in the model development. The data
volume in the categorized area directly affects the models estimation performance. Sufficient
data volume cannot be necessarily collected in all of the categories when behavior data are
recorded in real road traffic environments. In the fuzzy logic model, if-then rules are also
developed in the categorized area. The fuzzy relationship in the total spaces combined for each
categorization shows a robust estimation ability.

4. Conclusion
This chapter introduces a concept of task demand controlling and describes the application of
fuzzy logic to understanding the difference of the driving behaviors between in usual drives
and in drives with low task demand. Conventional driver-assistance systems provide a driver
with assistance information and warnings or automatically control the vehicle when the
systems detect a sudden change of the task demand. We proposed a new concept of driver
assistance systems that reduce the base of the usual task demand.
The fuzzy logic, non-linear and linguistic rule-based modelling technique, is suitable to
describe the difference of the time-series behavior between in the different driving modes. The
fuzzy logic car-following model was applied to clarify the car-following behavior with low
task demand. The fuzzy logic model evaluates the degree to which a driver accelerates
according to the relation between the preceding vehicle and the drivers vehicle. The driver
controls longitudinal acceleration moderately under low task demand conditions, both when
the relations between the two vehicles are opening and closing. Taking long headway distances
and moderate controlling of the vehicle, which is not sensitive to movement of the lead vehicle,
are essential to develop the assistance systems for keeping lower task demands in usual drives.

43

44

Fuzzy Logic - Tool for Getting Accurate Solutions

Bayesian network model, representing causality between variables using conditional proba
bilities, was used to select factors influencing a drivers acceleration control while following a
lead vehicle. The Bayesian model estimated that the drivers control the vehicle based on a
combination of speed matching and headway distance matching strategy, corresponding with
the findings obtained from the development of the fuzzy logic car-following model. The
detailed insight about the Bayesian model structures implied that the decision-making factors
for how to follow a lead vehicle are different between in typical driving and in driving with
low task demand. The fuzzy logic model would contribute to evaluating a dynamic aspect of
human controls and the Bayesian network model would contribute to understanding the
human decision-making process.
We will investigate the driving behaviors on the other driving scenes in further study. Turning
at intersections will be a next issue. Behaviors with low task demand should be clarified when
drivers prepare for making a turn while approaching an intersection as well as when they
make left or right turns at the target intersection.

Acknowledgements
The authors are grateful to Prof. Mike McDonald of the University of Southampton and Prof.
Pengjun Zheng of Ningbo University for introduction and useful discussions about the fuzzy
logic car-following model.

Author details
Toshihisa Sato* and Motoyuki Akamatsu
*Address all correspondence to: toshihisa-sato@aist.go.jp
Human Technology Research Institute, National Institute of Advanced Industrial Science
and Technology (AIST), Tsukuba, Japan

References
[1] AdaptIVe (Automated Driving Applications & Technologies for Intelligent Vehicles).
http://www.adaptive-ip.eu/ (accessed 30 August 2014).
[2] ISO 9241-210:2010. Ergonomics of human-system interaction Part210: Human-cen
tred design for interactive systems: ISO/TC 159/SC4; 2010.
[3] Humanist VCE (HUMAN centred design for Information Society Technologies Vir
tual Centre of Excellence). www.humanist-vce.eu (accessed 30 August 2014).

Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments


http://dx.doi.org/10.5772/59438

[4] Fuller R. Towards a a general theory of driver behaviour. Accident Analysis and Pre
vention 2005;37 461-472.
[5] Lee S. Poon L. Ng A. Vision-Sensor Fusion in Collision Avoidance and Lane Change
Assist System. In: FISITA 2010 Proceedings, FISITA2010, 30 May-4 June, Budapest,
Hungary. 2010.
[6] Toriyama M. Itou M. Kozuka K. Nakano T. Yamamoto S. Detection of Driver Gaze
Direction and Considerations on its Application to Glance Away Detection using Im
age Processing. Review of Automotive Engineering 2006; 27 295-300.
[7] Hartley L. Horberry T. Mabbott N. Krueger G. Review of fatigue detection and pre
diction technologies. National Road Transport Commission. 2000. http://
www.ecse.rpi.edu/~qji/Papers/fdpt.pdf (accessed 6 October 2014).
[8] Polychronopoulas A. Amditis A. Bekiaris E. Information data flow in AWAKE multisensor driver monitoring system. In: Proceedings of 2004 IEEE Intelligent Vehicles
Symposium, pp.902-906, Parma, Italy. 2004.
[9] Malta L. Miyajima C. Kitaoka N. Takeda K. Analysis of Real-World Drivers Frustra
tion. IEEE Transactions of Intelligent Transportation Systems 2011; 12(1) 109-118.
[10] Miyajima C. Nishiwaki Y. Ozawa K. Wakita T. Itou K. Takeda K. Itakura F. Driver
Modeling Based on Driving Behavior and Its Evaluation in Driver Identification. In
Proceedings of the IEEE 2007; 95(2) 427-437.
[11] Okuda H. Ikami N. Suzuki T. Tazaki Y. Takeda K. Modeling and Analysis of Driving
Behavior Based on a Probability-Weighted ARX Model. IEEE Transactions of Intelli
gent Transportation Systems 2013; 14(1) 98-112.
[12] Lin N. Zong C. Tomizuka M. Song P. Zhang Z. Li G. An Overview on Study of Iden
tification of Driver Behavior Characteristics for Automotive Control. Mathematical
Problems in Engineering 2014 http://dx.doi.org/10.1155/2014/569109 (accessed 6 Oc
tober 2014).
[13] Wu J. Brackstone M. McDonald M. Fuzzy sets and systems for a motorway micro
scopic simulation model. Fuzzy Sets and Systems 2000; 116(1) 65-76.
[14] Wu J. Brackstone M. McDonald M. The validation of a microscopic simulation mod
el: a methodological case study. Transportation Research Part C 2003; 11(6) 463-479.
[15] Zheng P. A microscopic simulation model of merging operation at motorway onramps. PhD thesis. University of Southampton; 2003.
[16] Chandler R.E. Herman R. Montroll E.W. Traffic dynamics: Studies in car following.
Operations Research 1958; 6(2) 165-184.
[17] Helly W. Simulation of Bottlenecks in Single Lane Traffic Flow. In: Proceedings of the
Symposium of Theory of Traffic Flow, pp.207-238, New York, USA. 1959.

45

46

Fuzzy Logic - Tool for Getting Accurate Solutions

[18] Kometani E. Sasaki T. Dynamic behavior of traffic with a nonlinear spacing-speed re


lationship. In: Proceedings of the Symposium of Theory of Traffic Flow, pp.105-119,
New York, USA. 1959.
[19] Michaels R.M. Perceptual factors in car following. In: Proceedings of the Second In
ternational Symposium on the Theory of Road Traffic Flow, pp. 44-59, Paris, France,
1963.
[20] Brackstone M. McDonald M. Car-following: a historical review. Transportation Re
search Part F. 1999; 2(4) 181-196.
[21] Sugeno M. Industrial Applications of Fuzzy Control. New York: Elsevier Science Inc.;
1985
[22] Sato T. Akamatsu M. Understanding Driver Car-Following Behavior Using a Fuzzy
Logic Car-Following Model. In: Dadios E. (ed.) Fuzzy Logic Algorithms, Techniques
and Implementations. Rijeka: InTech; 2012. DOI: 10.5772/36126.
[23] Dingus T.A. et al. The 100-Car Naturalistic Driving Study, Phase II Results of the
100-Car Field Experiment. Report DOT HS 810 593. 2006. http://
www.nhtsa.gov/DOT/NHTSA/NRD/Multimedia/PDFs/Crash%20Avoidance/Driver
%20Distraction/100CarMain.pdf (accessed 30 August 2014).
[24] Michon J.A. Koutstaal G.A. An Instrumented car for the study of driver behavior.
American Psychologist. 1969; 24(3) 297-300.
[25] McRuer D.T. Peters R.A. Ringland R.F. Allen R.W. Blauvelt A.A. Driver Performance
Measurement and Analysis System (DPMAS) Task 1: Requirements and Plans for
Prototype Equipment. Report DOT HS 359 3 733. 1974.
[26] Helander M. Hagvall B. An instrumented vehicle for studies of driver behaviour. Ac
cident Analysis & Prevention. 1976; 8(4) 271-277.
[27] Akamatsu M. Sakaguchi Y. Okuwa M. Kurahashi T. Takiguchi K. Database of driv
ing behaviour measured with equipped vehicles in the real road environment. In:
Proceedings of the XVth Triennial Congress of the International Ergonomics Associa
tion, IEA2003, 24-29 August, Seoul, Korea. 2003.
[28] Sato T. Akamatsu M. Influence of traffic conditions on driver behaviour before mak
ing a right turn at an intersection: Analysis of driver behaviour based on measured
data on an actual road. Transportation Research Part F. 2007; 10(5) 397-413.
[29] Sato T. Akamatsu M. Zheng P. McDonald M. Comparison of Car-Following Behavior
between Four Countries from the Viewpoint of Static and Dynamic Aspects. In: Pro
ceedings of 17th World Congress on Ergonomics, IEA2009, 9-14 August, Beijing, Chi
na. 2009.
[30] Sato T. Akamatsu M. Miyazaki Y. Nakamura N. Hiramatsu K. Fukuzumi S. Control
ling Task Demands while Approaching Intersections. In: Proceedings of European

Applying Fuzzy Logic to Understanding Driving Modes in Real Road Environments


http://dx.doi.org/10.5772/59438

Conference on Human Centred Design for Intelligent Transport Systems, 29-30 April,
Berlin, Germany. 2010.
[31] Jensen F.V. Nielsen T.D. Bayesian Networks and Cecision Graphs. New York:
Springer; 2007.
[32] Akaike H. A New Look at the Statistical Model Identification. IEEE Transactions on
Automatic Control. 1974; 19 716-723.
[33] Vogel K. A comparison of headway and time to collision as safety indicators. Acci
dent Analysis and Prevention 2003;35 427-433.

47

Chapter 3

Application of Fuzzy Logic Control for Grid-Connected


Wind Energy Conversion System
Jianzhong Zhang and Shuai Xu
Additional information is available at the end of the chapter
http://dx.doi.org/10.5772/59923

1. Introduction
Recent years have seen rapid development in wind energy across the world due to rising
pollution levels and worrying changes in the global climate [1]. China is the worlds largest
investor in wind energy and has set ambitious targets for renewable energy. At the end of 2012,
the installed capacity of wind farms in the world had reached 282.5 GW, an increase of 19%
compared with 2011. Wind power may become Chinas third most important power resource
by 2020, with an expected installed capacity of 200 GW [2].
In the variable-speed wind-energy conversion system (WECS), wind turbines can operate as
close as possible to optimal speed to realize maximum power point tracking (MPPT) for
various wind-speeds [3-6]. To take advantage of the higher energy capture and increased
system compliance available from variable speed operation, power electronics interfaces must
be provided between the machine terminals and the grid. The back-to-back pulse width
modulation (PWM) converter-based power electronic interface is a suitable option for the
generator in wind-power applications, where the permanent magnet (PM) generator can offer
high efficiency and high power density. These advantages make it very attractive for variable
speed WECS, as shown in Figure 1 [7-10].
Two power electronic converters have to be co-operatively controlled to keep a constant
direct current-link (DC-link) voltage. The voltage source of the DC link enables both PWM
converters to operate at high efficiency. The generator-side converter keeps the wind
turbine-generator system operating at an overall optimal level by controlling the genera
tor torque and adjusting the reactive power exchanged between the rectifier and the
generator. The grid-side converter plays an important role in the control of power transfor
mation and power quality [7].

50

Fuzzy Logic - Tool for Getting Accurate Solutions

Figure 1. Variable-speed wind-energy conversion system

This book chapter presents the significance and effectiveness of the fuzzy-logic-based control
strategies for grid-connected WECS in solving the fluctuation of DC-link voltage. The chapter
is organized as follows. Firstly, the model of the grid-connected PWM converter is presented,
and the DC-link voltage fluctuation is analysed. Secondly, three fuzzy-logic-control (FLC)based control strategies are proposed for the DC-link voltage control. Finally, a simulation
model of WECS is constructed by using the MATLAB/Simulink tool, where the steady- and
transient-state performances of the proposed fuzzy-logic-based controllers are simulated and
compared.

2. Model of grid-connected PWM converter


The simplified three-phase PWM converter is shown in Figure 2. Because the inductance
parameters have better ability in current harmonic suppression than the L filter in the same
case, the LCL filter is adopted in the WECS [5].

DC link

idcg

Inverter bridge

AC-side
LCL filter

Power grid

i dc

udc
Cdc

uia
uib
u ic

LI

LG

ua
ub
uc

CF
RD

Figure 2. The simplified three-phase PWM converter

The three-phase symmetrical system can be expressed by the single-phase equivalent circuit,
as shown in Figure 3.

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

uL

uR

ui

Figure 3. Single-phase equivalent circuit of PWM converter

The voltage balance equation, according to the single-phase equivalent circuit shown in Figure
3, can be written as follows:
ua
ia
ia uia
d


ub = L dt ib + R ib + uib
uc
ic
ic uic


(1)

Under the synchronous rotating coordinate system, ignoring the resistance voltage drop and
assuming that dg/dt=const, we can obtain the following model:
ud
d id R -wg L id uid
+
=L +
u
R iq uiq
dt
q
iq wg L

(2)

The converter system can be expressed as an ideal switch model, and the AC-side phase to
ground voltage of converter is given as

udc
(2SA - SB - SC )
uia =
3

udc

( -SA + 2SB - SC )
uib =
3

udc

uic = 3 ( -SA - SB + 2SC )

(3)

where Sk = 1 (the upper bridge turns on, the lower bridge turns off); Sk = 0 (the upper bridge
turns on, the lower bridge turns off), k = A, B, C. The DC-link voltage and the current of
converter is expressed as

51

52

Fuzzy Logic - Tool for Getting Accurate Solutions

dudc
= idcg - idc
Cdc
dt

i = S i + S i + S i
A a
B b
C c
dc

(4)

3. Wind-energy extraction and DC-link voltage fluctuations


The mechanical power of the wind turbine extracted from the wind is
Pw = 0.5C p ( b , l ) r Au 3

(5)

where is density of air, A is area swept by blades, is wind-speed, Cp is the power coefficient
of the wind turbine, is the blade pitch angle and is the tip speed ratio.

Generatorside
converter

idcg
icp

Cdc

idc
Grid-side

udc converter

Figure 4. Diagram of DC-link capacitor

The back-to-back PWM converter is composed of a grid-side converter, a generator-side


converter and a DC-link capacitor. The mechanical power is transferred into electrical power
by the PM generator and output to the generator-side converter. From the diagram of the DClink capacitor shown in Figure 4, the relationship between the DC-link voltage of the capacitor
and the current can be obtained as
icp = Cdc

dudc
= idcg - idc
dt

(6)

where Cdc is the capacitance of the DC-link capacitor, udc is the DC-link voltage of the capacitor,
idcg is the current of the generator-side converter output to the DC link, and idc is the current
output to the grid.
At low wind-speed below the rated condition, the PM generator is supposed to work in MPPT
strategy. Then, for a well-designed generator-side control system, a simple model for the
generator-side converter may be used where the electrical power injected to the DC link is
proportional to the cube of the wind-speed, as follows:

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

Prc = udc idcg = ku 3

(7)

where k is the factor related to the wind turbine system. The injection current idcg can be
expressed as
idcg =

ku 3
udc

(8)

where the current idcg inputs to the DC link and affects the DC-link voltage variations.
In the back-to-back PWM converter of the WECS, the power is transferred between the
generator-side and the grid-side converter. Ignoring the power losses of the power electronic
devices and supposing the DC-link voltage constant, the input power from the generator-side
converter should be equal to the output power of the grid-side converter:
Prc = Pgc

(9)

where Pgc, Prc are the instantaneous power of the grid-side converter and generator-side
converter.
Due to the stochastic wind-speed in the natural condition, the power absorbed by the wind
turbine is dynamically varied and transferred from the generator-side converter to the gridside converter. Then, the DC-link capacitor is used as energy buffer and the instantaneous
power of the DC-link capacitor is given as
Pc = udc icp = Cudc

dudc
dt

(10)

where icp is the current of the DC-link capacitor. The variation of the instantaneous power will
generate the current of the DC-link capacitor, according to equation (10). As a consequence,
the DC-link voltage is fluctuated, where the voltage fluctuation is proportional to the imbal
anced power flow between the generator-side converter and grid-side converter during the
dynamic regulation of the WECS. Here, the current balance equation is as follows:
idc = idcg - icp =

du
kv 3
- Cdc dc
udc
dt

(11)

By combining (4) and (11), the relationship between the AC-side current and DC-link voltage
of converter can be expressed as
iaSA + ibSB + icSC =

du
kv 3
- C dc
udc
dt

(12)

53

54

Fuzzy Logic - Tool for Getting Accurate Solutions

It can be seen in (12) that the DC-link voltage ripples will inevitably influence the waveforms
of the grid-side current. In the actual operation of the WECS, the turbulence of the wind will
generate dynamic power variations and increase the DC-link voltage ripples. This will result
in deterioration of power quality on the grid side, and the DC-link voltage control strategy
thus becomes an important issue for the WECS. Recently, several DC-link voltage control
strategies have been proposed and applied in the WECS [11-13]. In the following parts, fuzzylogic-based as well as traditional PI-based DC-link voltage control strategies are described and
simulated in the MATLAB/Simulink environment. Simulation results are discussed and
compared to verify the effectiveness of the proposed control strategies.

4. Traditional PI-based control strategy


The mathematical model of continuous-time linear PID controller in position form is described
as
u(t ) = K( e(t ) +

1
Ti

e(t )dt + T

de(t )
)
dt

(13)

where e(t) is the error input signal, K is a gain, Ti is integral time, and Td is derivative time. In
some application fields, full PID control is sometimes not desired, to some extent. This is
because the derivative term tends to amplify noise, which should be avoided when applied
for the voltage source inverter (VSI). When Td is set to zero, the PID controller becomes a PI
controller. Hence, the incremental form of the PI controller is described as
u(t ) = K( e(t ) +

1
Ti

e(t )dt )
0

(14)

The corresponding discrete-time position form is described as


u(n) = K( e(n) +

n
T n
e(i )) = K p e(n) + Ki e(i )

Ti i = 0
i =0

(15)

where T is the sampling period. Kp, Ki are the proportional gain and integral gain of the PI
controller, respectively.
The PI controller is often used in the incremental form, which calculates change of the controller
output. Note that at time n-1,
u(n - 1) = K( e(n - 1) +

n -1
T n -1
e(i )) = K p e(n - 1) + Ki e(i )

Ti i = 0
i =0

(16)

The PI controller has the advantages of simple structure, good stability, and high reliability,
and is especially suitable for the established accurate mathematical model of the control

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

system. The PI controller has been widely applied to the control system of the WECS. The
control block diagram of a traditional PI-based vector control strategy for the grid-side
converter is shown in Figure 5. The grid-side converter is controlled with a vector decoupling
control strategy and the grid voltage orientation. The active power and reactive power can be
independently controlled with the double closed-loop strategy, where the outer loop is the
DC-link voltage controller and the inner loop is the current controller [13].

u dc
-

u dc

u dcref
Q

PI

*
+

PI

id*

iq*

PI

PI

u d*

u q*

d-q

a-b

id

d-q

iq

iabc

a-b-c

1
ud
Active and reactive
power calculation

Grid -side
converter

SVPWM

uq

PLL
d -q

u abc

a-b-c

Figure 5. Traditional PI-based vector control strategy

5. Fuzzy logic control strategies of grid-connected converter


Since the PI control depends on the precise mathematical model, the PI control performance
becomes poor when there is disturbance of the system parameters or stochastic variations of
wind-speed. Moreover, the setting of parameters for the controller is difficult since an accurate
mathematical model is usually hard to obtain. It should be noted that a complex system is often
composed with characteristics of non-linear, large time lag, uncertainty and time-variance. In
this case it is impossible to obtain a precise mathematical model. An important branch of
intelligent control, fuzzy logic control is an intelligent control method which uses fuzzy rule
sets and linguistic representation of a humans knowledge to control a plant. The fuzzy logic
technology has been widely applied in many control fields, and positive control effects have
been obtained [14-20].
The essence of FLC is in converting expert knowledge of the related fields and the experience
of skilled operators into language rules, implementing the complex system control by using
fuzzy reasoning and fuzzy decision-making.

55

56

Fuzzy Logic - Tool for Getting Accurate Solutions

u dcref

-+

d ( Du d c )
Q

u dc

Du d c

u dc

Fuzzy

i qref

*
+

idref

PI

PI

PI

u dref

d-q

u qref
+

id

d-q

iq

iabc

a-b-c

1
ud
Active and reactive
Power calculation

Grid-side
converter

SVPWM

a-b

uq

PLL
d-q

u abc

a-b-c

Figure 6. Direct fuzzy logic control strategy

In this part, three FLC-based control strategies are proposed for the DC-link voltage control
to reduce the DC-link voltage ripples, where the PI controller is kept for the current inner loop
and the controller of the outer loop is substituted by FLC in the double-closed loop control
system of the WECS.
5.1. Direct FLC
Rule-based FLC is useful when the system dynamics are not well known or when they contain
significant non-linearities, such as with wind containing large turbulence. FLC applies
reasoning similarly to the way in which human beings make decisions; the controller rules
thus contain expert knowledge of the system. The structure diagram of the direct FLC-based
control strategy is shown in Figure 6.
The design process for a FLC consists of (i) determining the inputs, (ii) setting up the rules,
and (iii) designing a method to convert the fuzzy result of the rules into output signal, known
as defuzzification. The input and output membership functions are shown in Figure 7 and
Figure 8, respectively. Triangular symmetrical membership functions are suitable for the input
and output, which give more sensitivity especially as variables approach zero value. The width
of variation can be adjusted according to the system parameters [15].
The proposed FLC method is based on the DC-link voltage deviation from the reference value
udc and the variation (udc) during a sampled time; it is given as follows:

Dudc = udc - udcref

d ( Dudc ) = Dudc (n) - Dudc (n - 1)

(17)

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

where udcref is the referenced DC-link voltage.

(a)

(b)

Figure 7. Membership functions of FLC: (a) input signal error of the DC-link voltage; (b) input signal variation of DClink voltage

NB

NMB

NM NS ZE PS

PM

PMB

PB

0 .5

0
-5

-4

-3

-2

-1

5A

Figure 8. Membership function of output signal variation of reference d-axis current

In the proposed FLC system, nine fuzzy sets have been considered for variables: negative big
(NB), negative medium big (NMB), negative medium (NM), negative small (NS), zero (ZE),
positive small (PS), positive medium (PM), positive medium big (PMB), and positive big (PB).
The rules of the FLC are shown in Table 1.

udc

udc
NB

NM

NS

ZE

PS

PM

PB

NB

NB

NMB

NM

NM

NS

NS

ZE

NM

NMB

NM

NM

NS

NS

ZE

PS

NS

NM

NM

NS

NS

ZE

PS

PS

ZE

NM

NS

NS

ZE

PS

PS

PM

PS

NS

NS

ZE

PS

PS

PS

PM

PM

NS

ZE

PS

PS

PM

PM

PMB

PB

ZE

PS

PS

PM

PM

PMB

PB

Table 1. Rules of the FLC

57

58

Fuzzy Logic - Tool for Getting Accurate Solutions

d ( Du d c )
de/dt

Du d c

ud c
u d c re f

-+

u dc

Fuzzy
Kp

Ki

PI

idref
i qref

*
+

PI

PI

u dref

u qref

PI

d-q

a-b

id

d-q

iq

iabc

a-b-c

1
ud
Active and reactive
Power calculation

Grid-side
converter

SVPWM
+

uq

PLL
d-q

u abc

a-b-c

Figure 9. Fuzzy-adaptive-PI-based vector control strategy

5.2. Fuzzy adaptive PI control


Based on new theory and new technology, fuzzy adaptive control is an effective method to
solve the problem of PI parameters online self-tuning. The idea of fuzzy adaptive PI control
is combines a conventional PI controller with FLC. On the one hand, it has adaptive ability,
which enables it to automatically identify the controlled process parameters, set control
parameters, and adapt to the changes of process parameters. On the other hand, it also has the
advantages of the PI controller, such as simple structure, high reliability and familiarity to
practical engineering-design personnel [21-26].
The block diagram of fuzzy adaptive PI control is shown in Figure 9. The DC-link voltage
control loop consists of one conventional PI controller and one online fuzzy inference calcu
lation. The calculation part is actually a FLC. The PI parameters are modified online by using
the fuzzy rules, and then the fuzzy adaptive PI controller is constructed.
The design process for a fuzzy adaptive PI controller consists of four parts: (i) determining of
inputs and outputs, (ii) reasoning of fuzzification and fuzzy logic, (iii) defuzzification, (iv)
parameters online self-tuning of PI controller.
a.

Inputs and outputs determining

The inputs of the FLC are the deviation e (e=Udcref-udc) and the rate of the deviation ec. The inputs
are continuously checked and calculated by the FLC, and then the parameters of the PI
controller are adjusted online by using the fuzzy logic rules in order to achieve optimal
parameters. As the inputs of FLC in fuzzy adaptive PI controller, error e and error change rate
ec can satisfy the requirements of PI parameters self-tuning at different times.
The input signals have seven membership functions, while the outputs each have seven
membership functions. The design of the input membership functions of variables is shown

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

(a)

(b)

Figure 10. Input membership functions of fuzzy language variables (a) e (b) ec

(a)

(b)

Figure 11. Output membership functions of language variables (a) KP (b) Ki

in Figure 10. The membership functions of the proportional gain Kp and the integral gain Ki
are designed as shown in Figure 11.
The fuzzy set domain ranges of input and output variables are obtained by simple calculation
of normalization. The fuzzy set domain of input variables are set as
e, ec = { 3, 2, 1, 0, 1, 2, 3} and the fuzzy set domain of outputs KP, Ki are set as (-0.6, 0.6)
and (-0.06, 0.06) respectively.
The corresponding fuzzy sets of input and output variables are set as
e , ec , DK P , DKi = {NB , NM , NS , Z , PS , PM , PB}

(18)

where negative big (NB), negative medium (NM), negative small (NS), zero (Z), positive small
(PS), positive medium (PM), positive big (PB) refer to the fuzzy sets means.

59

60

Fuzzy Logic - Tool for Getting Accurate Solutions

b.

Fuzzification and fuzzy reasoning

All the fuzzy variables obey the normal distribution. The fuzzy inference system uses Mam
dani type, as follows:
If e is A and ec is B , then u is c
The fuzzy logic rules of the output variables are shown in Table 2 and Table 3, respectively.

ec
NB

NM

NS

PS

PM

PB

NB

PB

PB

PM

PM

PS

NM

PB

PB

PM

PS

PS

NS

NS

PM

PM

PM

PS

NS

NS

PM

PM

PS

NS

NM

NM

PS

PS

PS

NS

NS

NM

NM

PM

PS

NS

NM

NM

NM

NB

PB

NM

NM

NM

NB

NB

Table 2. Fuzzy logic rules of KP

ec
NB

NM

NS

PS

PM

PB

NB

NB

NB

NM

NM

NS

NM

NB

NB

NM

NS

NS

NS

NB

PM

NS

NS

PS

PS

NM

NM

NS

PS

PM

PM

PS

NM

NM

PS

PS

PM

PB

PM

PS

PS

PM

PB

PB

PB

PS

PM

PM

PB

PB

Table 3. Fuzzy logic rules of Ki

c.

Defuzzification

Defuzzification involves designing a method to convert the fuzzy results of the rules into
output signals. The weighted average method is adopted to obtain accurate FLC output. The
weighted average method is described as follows:

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

u0 =

u m (u )
i =1
n

(19)

m (u )
i =1

d.

Parameters online self-tuning of PI controller

The proposed PI parameters self-tuning seeks to find out the fuzzy relationship between two
parameters of PI and the inputs of FLC. In order to implement the FLC algorithm of the grid
connected in a closed loop, the DC-link voltage udc is sensed and then compared with the
reference DC-link voltage Udcref. In order to meet the control parameters of different require
ments for different e and ec, the deviations e and ec are continuously checked and calculated by
the FLC, and then the parameters of the PI controller are adjusted online by using the fuzzy
rules in order to achieve an excellent dynamic and static performance of the WECS. Parameters
self-tuning is based on fuzzification results processing, fuzzy reasoning and defuzzification.
In order to achieve the purpose of online regulation, the work flowchart of parameters online
regulation is given in Figure 12.
The parameter regulation formula of the PI controller is
K p = K p* + DK p

*
Ki = Ki + DKi

entrance

(20)

u dc (k) du dc (k)/dt
fuzzification

sampling

K p

ki Revise

u dc =u dcref-u dc

Kp

K i caculation

du dc (k)/dt=u dc (k)-u dc (k-1)


PI controller output

u dc (k-1)=u dc(k)

return

Figure 12. The flow chart of parameters online regulation

61

62

Fuzzy Logic - Tool for Getting Accurate Solutions

5.3. Double-loop FLC


The block diagram of the double-loop fuzzy logic control strategy is shown in Figure 13. As
with the previous FLC control strategies, the outer control loop of the DC-link voltage is
substituted. The structure of the double-loop control scheme is shown in Figure 14.
udc
idref

Double loop
FLC

PI

Q*

PI

iqref

PI

udref

uqref

d-q

Grid-side
converter

SVPWM

a-b

id

d-q

iq

1
ud
Active and reactive
Power calculation

iabc

a-b-c

uq

PLL

uabc

d-q
a-b-c

Figure 13. Double-loop fuzzy logic control strategy

ud c r e f

u dc

Low
frequency
component

High
frequency
component

u dc

Low frequency loop


(steady state)

PI
+
+

High frequency loop


(dynamic state)

D u dc (t )

idref

Fuzzy

d
dt

d ( D u dc )

Figure 14. Double-loop control scheme for variable-speed WECS

It can be seen that the control system is divided into low-frequency and high-frequency loops.
The low-frequency loop typically incorporates the slow variation of the wind energy, and its

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

task is to track the optimal operating point. The high-frequency loop utilizes small-signal
perturbations about the operating point, determined by the low-frequency loop. The highfrequency loop captures the transient behaviour excited by the high-frequency and turbulent
component of the wind.
The FLC is applied in the high-frequency loop to eliminate or reduce the dynamic error of the
DC-link voltage due to the dynamic characteristics of the WECS. The inputs of the FLC are the
deviation of DC-link voltage (udc) and the rate of the deviation (udc). Meanwhile, the PI
controller is used to eliminate static error between the average DC-link voltage and the
reference DC-link voltage. Then, the steady-state characteristics of the system can be improved.
The double-loop FLC can reduce the ripples of the DC-link voltage significantly and improve
the performances of the WECS. In this case a smaller capacitor may be used for the DC link
and a more compact WECS may be achieved.

6. Simulations
In order to verify the effectiveness of the proposed control strategies and evaluate the per
formance of the control system, a simulation model of WECS is constructed by using the
MATLAB/Simulink tool. The simulation model of the WECS is shown in Figure 15.

Figure 15. Simulation model of the WECS

The wind model is essential to obtain realistic simulations of the power fluctuations in the
power production of the wind turbines. Hence, to investigate the steady-state and transient
performance of the controller under different circumstances, different wind models are
studied, namely a step wind model and a stochastic wind model.
At low wind-speed below the rated condition, the PM generator is supposed to work in an
MPPT strategy. For a well designed generator-side control system, a simple model for the

63

64

Fuzzy Logic - Tool for Getting Accurate Solutions

Figure 16. Simulation model of direct FLC with PI controller

generator-side converter may be used where the electrical power injected to the DC link is
proportional to the cube of the wind-speed. The parameters of the proposed PM generation
system are shown in Table 4.

Parameters

Values

Rated power

3000 W

Rated line to line voltage

380 V/50 Hz

LCL filer

Lg=3.4 mH, Li=6.9 mH, Cf=2.04 F, Rd=11

DC-link capacitor

390 F

Outer-loop PI controller

kp=40, ki=150

Inner-loop PI controller

kp=0.2, ki=250

Table 4. Parameters of the proposed PM generation system

6.1. Simulation results of direct FLC


The model of FLC is shown in Figure 16, where the PI controller is also included for compar
ison. By changing the value of the switch, one of the FLC and PI controllers may be selected.
a.

Step wind model

The injected current idcg of the step wind model is shown in Figure 17, where the initial current
is 2.14 A and the final current is 4.28 A. The simulation results are shown in Figure 18 and
Figure 19.
Figure 18 shows the results of the PI controller, where much large DC-link voltage fluctuation
can be seen. The dynamic adjust time of the PI controller is much longer than that of the direct
FLC. The results in Figure 19 reveal nearly no voltage fluctuation, and that the voltage ripple
is reduced significantly.

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

4.5

idcg (A)

4
3.5
3
2.5
2
0.8

1.2

1.4
Time (s)

1.6

1.8

725

1.5

720

715

0.5

ia,ib,ic (A)

udc (V)

Figure 17. Step wind injection model

710
705

0
-0.5
-1

700
695
0.8

1.2

1.4
Time (s)

1.6

1.8

-1.5
0.8

0.9

1
Time (s)

1.1

1.2

(b)

(a)

708

1.5

706

704

0.5

ia,ib,ic (A)

udc (V)

Figure 18. Simulation results of step wind model for PI controller: (a) DC-link voltage variations; (b) grid-side currents.

702
700
698

0
-0.5
-1

696
0.8

1.2

1.4
Time (s)

(a)

1.6

1.8

-1.5
0.8

0.85

0.9

0.95

1
1.05
Time (s)

1.1

1.15

1.2

(b)

Figure 19. Simulation results of step wind model for direct FLC: (a) DC-link voltage variations; (b) grid-side currents.

65

Fuzzy Logic - Tool for Getting Accurate Solutions

b.

Stochastic wind model

The stochastic wind model is shown in Figure 20(a) and the injected current is shown in Figure
20(b). In order to observe the DC-link voltage fluctuations, the simulation time is set to only
two seconds. The simulation results of the PI controller and FLC are shown in Figure 21 and
Figure 22, respectively, where larger voltage variations are shown for the PI controller than

for the FLC.


5
4.5

15

4
14

idcg(A)

wind speed(m/s)

16

13

3.5
3
2.5

12

11
0

0.5

1
Time(s)

1.5

1.5
0

0.5

(a)

1
Time(s)

1.5

(b)

Figure 20. Stochastic wind model: (a) wind-speed; (b) injected current to DC-link
710

1.5
1
ia,ib,ic (A)

udc (V)

705

700

0.5
0
-0.5

695

-1
690
0.8

1.2

1.4
Time (s)

1.6

1.8

-1.5
0.8

0.85

0.9

0.95

(a)

1
1.05
Time (s)

1.1

1.15

1.2

(b)

Figure 21. Simulation results of stochastic wind model for PI controller: (a) DC-link voltage variations; (b) grid-side

currents.
1.5

708
706

704

0.5

ia,ib,ic (A)

udc (V)

66

702
700
698

0
-0.5
-1

696
0.8

1.2

1.4
Time (s)

(a)

1.6

1.8

-1.5
0.8

0.85

0.9

0.95

1
1.05
Time (s)

1.1

1.15

1.2

(b)

Figure 22. Simulation results of stochastic wind model for direct FLC: (a) DC-link voltage variations; (b) grid-side cur
rents.

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

The comparisons of the DC-link voltage ripples are shown in Table 5, where the DC-link
voltage ripple is expressed as udc/udc.

Wind model

DC-link voltage ripples udc/udc(%)


PI controller

Direct FLC

Step wind

2.86

0.17

Stochastic wind

2.0

0.16

Table 5. Comparisons of the DC-link voltage ripples

According to the injected wind model simulation, it is shown that the FLC has less voltage
fluctuation and ripples than the PI controller. This will improve the dynamic performance of
the WECS. Considering all the stochastic natural wind, the FLC seems much more suitable for
the DC-link voltage control in the wind power generation system than the traditional PI
controller. It should be noted that the simulation time is limited to two seconds for stochastic
wind model. However, according to the van der Hoven wind spectrum, wind turbulence can
occur on the level of tenths of seconds to several minutes. So, the DC-link voltage ripples may
be increased a little both for the PI controller and the FLC, if the longer simulation time is used.
6.2. Simulation results of fuzzy adaptive PI controller
The simulation model of fuzzy adaptive PI controller is shown in Figure 23. Firstly, the fuzzy
adaptive PI controller and PI controller are compared under the same wind model conditions
as are shown in Figure 20.

Figure 23. Simulation model of fuzzy adaptive PI controller

The DC-link voltage variations under the PI control and the fuzzy adaptive PI control are
shown in Figures 24(a) and 24(b), respectively. It can be seen that the DC-link voltage is
fluctuated with the same tendency according to the stochastic wind, and the voltage ripples

67

Fuzzy Logic - Tool for Getting Accurate Solutions

are very large. The fuzzy adaptive PI controller can restrain the fluctuation and reduce the
voltage ripples effectively.
In order to investigate the transient performance and robustness of the fuzzy adaptive PI

710

710

705

705
Udc(V)

Udc(V)

controllers,
simulations with dynamically injected wind energy are carried out.

700

690
0.8

700

695

695

1.2

1.4
Time(s)

1.6

1.8

690
0.8

1.2

1.4
Time(s)

1.6

1.8

1.8

(b)

(a)

Figure 24. DC-link voltage variations: (a) with PI controller; (b) with the fuzzy adaptive PI controller

4.5

idcg(A)

4
3.5
3
2.5
2
0.8

1.2

1.4
Time(s)

1.6

1.8

Figure 25. The current injected into the DC link


710

710

705

705
udc(V)

udc(V)

68

700
695
690
0.8

700
695

1.2

1.4
1.6
Time(s)

(a)

690
0.8

1.8

1.2

1.4
Time(s)

1.6

(b)

Figure 26. DC-link voltage variations: (a) with PI controller; (b) with fuzzy adaptive PI controller

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

Figure 25 shows a current suddenly injected into the DC-link at 0.8 to 0.9 seconds. In this case
a sudden jump of DC-link voltage occurs in the PI control system, as shown in Figure 26(a).
However, only very small fluctuation is seen in this period for the fuzzy adaptive PI controller,
as shown in Figure 26(b). The DC-link voltage under fuzzy adaptive PI control has very little
ripples and the adjust time is very fast, meaning the WECS has quick dynamic response and
good transient performance. Figure 27 shows the three-phase grid-side current with PI
controller and fuzzy adaptive PI controller, respectively.

1.5

0.5

0.5

ia,ib,ic(A)

ia,ib,ic(A)

1.5

0
-0.5

0
-0.5

-1

-1

-1.5
0.8

-1.5
0.8

0.9

1
Time(s)

1.1

1.2

(a)

0.9

1
Time(s)

1.1

1.2

(b)

Figure 27. Three-phase grid-side current: (a) with PI controller; (b) with fuzzy adaptive PI controller

It can be seen in the simulation results that the fuzzy adaptive PI controller shows better
performance than the PI controller. The performance might be improved by adjusting the
parameters of the PI controller. However, it is hard to balance the overshoot and dynamic
response at the same time. By incorporating the PI with the FLC, namely the fuzzy adaptive
PI, the transient adjustment time is decreased significantly and the overshoot is greatly reduced
through online self-tuning of the parameters of the PI controller.
6.3. Simulation results of double-loop FLC
The simulation model of the double-loop FLC is shown in Figure 28. Here a mean block is
designed to obtain the component of the low-frequency loop.
Firstly, the double-loop FLC and the PI controller are compared under the conditions of the
stochastic wind model. The injected current of the stochastic wind model is shown in Figure
20. The DC-link voltage variations under certain wind models are simulated and the results
show that large DC-link voltage ripples are obtained with the PI controller, while the DC-link
voltage hardly fluctuates in double-loop FLC, as shown in Figure 29.
In order to investigate the transient performance of the proposed double-loop FLC, the
stochastic wind model with step mean wind-speed at 1.0 seconds is simulated, as shown in
Figure 30. The mean wind-speed is 13 m/s during the period 0~1 seconds and 7 m/s during the
period 1~2 seconds. Figure 31 shows the simulation results under the stochastic wind model.
The DC-link voltage shows a negative jump at 1.0 seconds in the case of the PI controller, while
in the case of double-loop FLC, DC-link voltage fluctuation is hardly observed.

69

Fuzzy Logic - Tool for Getting Accurate Solutions

Figure 28. Simulation model of double-loop FLC

710

710

705

705
udc(V)

udc(V)

700
695

700
695

690
0.8

1.2

1.4
1.6
Time(s)

690
0.8

1.8

1.2

1.4
1.6
Time(s)

(a)

1.8

(b)

Figure 29. DC-link voltage variations: (a) with PI controller; (b) with double-loop FLC

16

14

12

idcg(A)

wind speed(m/s)

70

10
8
6
0

3
2
1

0.5

1
Time(s)

(a)

1.5

0
0

0.5

1
Time(s)

(b)

Figure 30. Stochastic wind model of double-loop FLC: (a) wind-speed; (b) injected current

1.5

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

710

710

705

705

700

700
udc(V)

udc(V)

695

695

690

690

685

685

680
0.8

1.2

1.4
Time(s)

1.6

1.8

680
0.8

(a)

0.9

1
Time(s)

1.1

1.2

(b)

Figure 31. DC-link voltage variations: (a) with PI controller; (b) with double-loop FLC

6.4. Comparisons of fuzzy based control strategies


Three FLC-based control strategies are simulated and compared with the traditional PI
controller. Simulation results reveal that the FLC-based controllers have a better dynamic
response. In this part, three fuzzy-based control strategies are simulated and compared with
each other under different wind models.
a.

Step wind model

The same step wind injection model as shown in Figure 17 is used for FLC-based controllers.
The simulation results are given in Figure 32. It is shown in Figure 32(b) that the fuzzy adaptive
PI has the largest voltage overshoot. This is because the adaptive PI controller is essentially a
PI regulator. Similar characteristics of the PI controller are seen in the fuzzy adaptive PI
controller. However, the dynamic-response performance is greatly improved by the FLC loop,
which is shown in Figure 32. The dynamic regulation time is short in all the fuzzy-based control
strategies. It should be noted that steady error exists for direct FLC, as shown in Figure
32(a), where the voltage in infinite time is not the same as in the time before disturbance
occurring.
Compared with the direct FLC, the double-loop FLC has the least voltage overshoot, as shown
in Figure 32(c), which makes it the most ideal control strategy for the WECS. However, the
double-loop FLC also has a more complicated structure and more complicated algorithms than
the direct FLC.
b.

Sudden injected energy

The performances of the FLC-based control strategies are compared under sudden injected
energy. Figure 33 shows the injected current to the DC-link due to supposed sudden wind
changes, where two cases, namely sudden positive and sudden negative injected current, are
considered. The simulation results are presented in Figure 34 to Figure 36. It is shown that both
the injected energy disturbances at 0.9 to 1.0 seconds lead to a dynamic process for the three
FLC-based control strategies, where the direct FLC has the poorest performance. The latter

71

Fuzzy Logic - Tool for Getting Accurate Solutions

710

710
udc
udcref

700

700
695

695
690

udcref
udc

705
udc(V)

udc(V)

705

0.02

0.04
0.06
Time(s)

0.08

690

0.1

0.02

(a)

0.04
0.06
Time(s)

0.08

0.1

(b)
710
udcref
udc

udc(V)

705
700
695
690

0.02

0.04
0.06
Time(s)

0.08

0.1

(c)

Figure 32. Simulation results of step wind model: (a) with direct FLC; (b) with fuzzy adaptive PI controller; (c) with
double-loop
FLC

4.5

4.5

3.5

3.5

idcg(A)

idcg(A)

72

2.5

2.5
2
0.8

1.2

1.4
Time(s)

1.6

1.8

2
0

(a)

0.5

1
Time(s)

1.5

(b)

Figure 33. The injected current to the DC-link; (a) positive;(c)


(b) negative

control strategies, namely fuzzy adaptive PI and double-loop FLC, have nearly the same DClink voltage ripples during the simulation; however, the double-loop FLC has smaller steady
voltage error in the disturbance period.
c.

Stochastic wind model

Figure 37 shows the injected current of a stochastic wind model with mean wind-speed 7
m/s. The simulation results are presented in Figure 38. Similar results may be obtained where
the dynamic DC-link voltage fluctuation is large for the direct FLC. Furthermore, the direct

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

FLC has the largest steady voltage errors during the whole simulation period. Considering the
voltage fluctuations between the fuzzy adaptive PI and the double-loop FLC, the latter shows
slightly better performances.

700.8

700.8

700.6

700.6

700.4

700.4

udc(V)

udc(V)

700.2

700.2

700

700

699.8

699.8

699.6
0.8

0.9

1
Time(s)

1.1

1.2

699.6
0.8

0.9

(a)

1
Time(s)

1.1

1.2

(b)

(c)

Figure 34. DC-link voltage variations with direct FLC: (a) positive; (b) negative

700.8

700.8

700.6

700.6

700.4

700.4

udc(V)

udc(V)

700.2

700.2

700

700

699.8

699.8

699.6
0.8

0.9

1
Time(s)

1.1

699.6
0.8

1.2

0.9

1
Time(s)

1.1

1.2

1.1

1.2

(b)

(a)

(c)

Figure 35. DC-link voltage variations with fuzzy adaptive PI controller: (a) positive; (b) negative

700.8

700.8

700.6

700.6

700.4

700.4

udc(V)

udc(V)

700.2

700.2

700

700

699.8

699.8

699.6
0.8

0.9

1
Time(s)

1.1

1.2

699.6
0.8

0.9

(a)

(c)
Figure 36. DC-link voltage variations with double-loop FLC (a) positive; (b) negative

1
Time(s)

(b)

73

Fuzzy Logic - Tool for Getting Accurate Solutions

idcg(A)

4
3
2
1
0

4
6
Time(s)

10

Figure 37. Injected current of stochastic wind model

701

701

700.5

700.5
udc(V)

udc(V)

700

699
0

700
699.5

699.5

4
6
Time(s)

699
0

10

4
6
Time(s)

(a)

10

(b)
701
700.5

udc(V)

74

700
699.5
699
0

4
6
Time(s)

10

(c)

Figure 38. Simulation results of (a) direct FLC; (b) fuzzy adaptive PI controller; (c) double-loop FLC

7. Conclusions
The turbulence of the wind model will result in dynamic power variations and increase the
DC-link voltage ripples, which will deteriorate the grid-side power quality. The traditional PI
control strategy is discussed and three fuzzy-based control strategies for DC-link voltage

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

control are proposed in this chapter. The simulation models are constructed in a MATLAB/
Simulink surrounding and simulations and comparisons between the different control
strategies are carried out, where different wind models are used.
The simulation results show that the three fuzzy-based control strategies have better dynamicand steady-state performances than the traditional PI controller when the stochastic wind
model is considered. Due to the good dynamic and robustness of fuzzy logic control, the fuzzylogic-based control strategies may be much more suitable for DC-link voltage control in the
WECS than the traditional PI controller. Considering only the fuzzy-based controller, the fuzzy
adaptive PI controller has the largest voltage overshoot during the disturbance, while the
dynamic adjustment time is as short as other FLC. The direct FLC has small steady error under
disturbance while the fuzzy adaptive PI and double-loop FLC have none. Since the doubleloop FLC has fast dynamic response, limited voltage overshoot, and small DC-link voltage
ripples in the stochastic wind model, it is supposed as the best choice for the DC-link voltage
control of the WECS. However, the double-loop FLC has more complicated structure and
algorithms than the direct FLC.

Acknowledgements
This work was supported by a grant of the National Nature Science Foundation of China
(51137001, 51320105002) and a grant of the Prospective Joint Research Project of Jiangsu
Province under Project No. BY2013073-05.

Author details
Jianzhong Zhang* and Shuai Xu
*Address all correspondence to: jiz@seu.edu.cn
School of Electrical Engineering, Southeast University, Nanjing, China

References
[1] Heier S. Grid integration of wind energy conversion systems. 2nd Edition, translated
by Rachel Waddington, John Wiley & Sons, Ltd., Chichester UK, 2006.
[2] Li J, Cai F, Qiao L, et al. Annual review and outlook on China wind power. CWEA,
Beijing, China, 2013.

75

76

Fuzzy Logic - Tool for Getting Accurate Solutions

[3] Zhang J, Cheng M, Chen Z. Nonlinear control for variable-speed wind turbines with
permanent magnet generators. Proceedings of International Conference on Electrical
Machines and Systems, Seoul, Korea, 2007, pp. 24-329.
[4] Chinchilla M, Arnaltes S, Burgos J. C. Control of permanent-magnet generators ap
plied to variable-speed wind-energy systems connected to the grid. IEEE Transac
tions on Energy Conversion 2006; 21(1): 130-135.
[5] Abo-Khalil A. G, Lee D, Seok J. Variable speed wind power generation system based
on fuzzy logic control for maximum output power tracking. 35th Annual IEEE Power
Electronics Specialists Conference, Achen, Germany, 2004.
[6] Muljadi E, Pierce K, Migliore P. Control strategy for variable-speed stall-regulated
wind turbines. American Controls Conference, Philadelphia, USA, 1998, pp. 1-5.
[7] Zhang J, Cheng M. DC Link Voltage Control Strategy of Grid-connected Wind Power
Generation System. 2nd IEEE International Symposium on Power Electronics for Dis
tributed Generation Systems, Hefei, China, 2010, pp. 970-975.
[8] Silva N, Martins A, Carvalho A. Design and evaluation of a PWM rectifier control
system for testing renewable DC sources connected to the grid. Inter. SPEEDAM
2006, Taormina, Italy, 2006, pp. 32-37.
[9] Sastry J, Ojo O, Wu Z. High-performance control of a boost AC-DC PWM rectifier/
induction generation system. IEEE Trans. on Ind. Appli. 2006; 42(5): 1146-1154.
[10] Skretas S. B, Papadopoulos D. P. Enhance design and performance of WECS with
PMSG connected to MV grid using intelligent control methods. Proc. of the 2008 In
ternational Conference on Electrical Machines, Vilamoura, Portugal, 2008.
[11] Chen Y. M, Cheng C. S, Wu H. C. Grid-connected hybrid PV/wind power generation
system with improved DC bus voltage regulation strategy. APEC 2006, Dallas Texas,
2006, pp. 1088-1094.
[12] Liu Z, Liu B, Duan S, and Kang Y. A novel DC capacitor voltage balance control
method for cascade multilevel STATCOM. IEEE Trans. Power Electron, Jan. 2012;
27(1): 14-26.
[13] Yao J, Li H, Liao Y, Chen Z. An improved control strategy of limiting the DC-link
voltage fluctuation for a doubly fed induction wind generator. IEEE Trans. on Power
Electronics 2008; 23(3): 1205-1213.
[14] Passino K. M, Yurkovich Y. Fuzzy Control, Addison-Wesley, Longman, Menlo Park,
CA, 1997, p. 10.
[15] Zeng G. Q, Hu J. A, Wang D, Liu C. L. Fuzzy control theory and engineering applica
tion. Huazhong University of Science and Technology Press, Wuhan, China, 2006,
pp. 86.

Application of Fuzzy Logic Control for Grid-Connected Wind Energy Conversion System
http://dx.doi.org/10.5772/59923

[16] Takagi T, Sugeno M. Fuzzy identification of systems and its application to modeling
and control. IEEE Transactions on Systems, Man and Cybernetics 1985; 15(1):
116-132.
[17] Dianguro X, Na H, Wei W. Study on fuzzy controller with a self-adjustable factor of
active power filter. Annual Conference of the IEEE Industrial Electronics Society,
Paris, France, November 2006.
[18] Chen Z, Gomez S. A, McCormick M. A fuzzy logic controlled power electronic sys
tem for variable speed wind energy conversion systems. Eighth International Confer
ence on Power Electronics and Variable Speed Drives, London, UK, 2000, pp.
114-119.
[19] Akbiyik B, Eksin I, Guzelkaya M. Evaluation of the performance of various fuzzy
PID controller structures on benchmark systems. 4th International Conf. on Electrical
and Electronics Engineering, Bursa, Turkey, 2005, pp. 388-393.
[20] Xia H, Song J. C. Development of fuzzy PID controller. Survey of Chemical Industry
2003; 11(7): 1-5.
[21] Reznik L, Ghanayem O, Bourmistrov A. PID plus fuzzy controller structures as a de
sign base for industrial application. Engineering Application of Artificial Intelligence,
2000, pp. 419-430.
[22] Cheng M, Sun Q, Zhou E. New self-tuning fuzzy PI control of a novel doubly salient
permanent-magnet motor drive. IEEE Transactions on Industrial Electronics, June,
2006; 53(3): 814-821.
[23] Li W. Design of hybrid fuzzy logic proportional plus conventional integral-deriva
tive controller. IEEE Trans. Fuzzy Systems 1998; 6(4): 449-463.
[24] Kim Y. T, Bien, Z. Robust self-learning fuzzy controller design for a class of nonlinear
MIMO system. Fuzzy Sets and Systems 2000; 111, 117-135.
[25] Aissaoui A. G, Tahour A, Essenbouli N, Nollet F, Abid M. & Chergui M. I. A FuzzyPI control to extract an optimal power from wind turbine. Global Conference on Re
newables and Energy Efficiency for Desert Regions and Exhibition, GCREEDER
2011, Amman-Jordan, 26-28 April 2011.
[26] Labiod S, Boucherit M. S. Direct stable fuzzy adaptive control of a class of SISO non
linear systems. Arch. Control Sci. 13(1): 95-110.

77

Chapter 4

Fuzzy Cognitive Maps for Identifying Fault Activation


Patterns in Automation Systems
Salman Mohagheghi
Additional information is available at the end of the chapter
http://dx.doi.org/10.5772/59611

1. Introduction
Modern automation systems are equipped with multitude of intelligent electronic devices
(IEDs) sensors and actuators that can be remotely accessed, monitored or controlled. These
various components within the system form an interrelated network of elements. From a
layered architecture standpoint, every device/application/module/sub-system (hereafter
referred to as component) provides some services to a certain group of components, while
receiving services from some others. These components are all prone to incidents (hereafter
referred to as failure), either internally due to natural faults and malfunctions, or externally
due to natural causes or cyber intrusions. Clearly, in a web of interconnected components,
failure or degradation of each one can affect the performance of those receiving its services,
and ultimately impact the availability and integrity of the underlying automation system.
Therefore, for efficient operation of such a system, the operator has to ensure that the impact
of a components degradation or failure on the rest of the system is determined as quickly as
possible, so that he/she knows what part(s) of the system can continue operating as is, what
parts are conditionally operational, and what others cannot continue operating reliably and
should be terminated or disconnected from the rest of the system. This indicates a measure of
trustworthiness for the overall system and its components. In small systems, with few interde
pendent components, this task is rather trivial. However, an increase in the number of system
components or the dimensionality of interdependencies among them can exponentially
complicate matters. Although experienced operators and/or automated mechanisms exist in
automation systems that can handle individual applications, a uniform solution that can
analyze the aftermath and range of impact of a failure does not exist.
The objective of this article is to devise a solution for system-wide situational awareness. Our
goal is to identify how the impact of a failure is spread across the automation system, and what

80

Fuzzy Logic - Tool for Getting Accurate Solutions

components have been affected by it and to what extent. This capability should be a crucial
aspect of modern automation systems, since system complexity often prevents the operators
from visual and/or heuristic inspection.
We propose a scheme based on graph-theoretic fuzzy cognitive maps (FCM) that, in the event
of internal or external failures in one or more components in the system, is able to identify the
range of fault activation, and indicate what other components have been (or will be) affected
by it most. This provides additional situational awareness for the system operator and allows
him/her to isolate untrustworthy functions and applications as soon as possible. To make the
solution less dependent on usually subjective human knowledge, the map of interdependen
cies is developed in two phases:
a.

Building one-step-ahead local relationships based on expert knowledge and qualitative


data

b.

Graph-theoretic importance analysis for global impact assessment

The rest of this article is organized as follows: Section 2 provides a review of the literature on
situational awareness in automation systems. The basic concepts behind FCM and design
challenges are discussed in section 3. The proposed methodology and proof-of-concept
simulation results are presented in sections 4 and 5 respectively. Section 6 discusses some
practical considerations of the proposed methodology, while its adaptability aspect is briefly
discussed in section 7. Finally, conclusions appear in section 8.

2. Situational awareness State of the art


Situational awareness in a system may relate to various aspects such as spatial, mission,
resource or crew awareness [1]. Whenever the system needs to process and interpret a large
number of data points, situational awareness becomes more vital. In large-scale automation
systems, the size and complexity of the network poses its own unique challenges. While during
normal conditions, operators may show relatively high situational awareness, their awareness
level drops following disturbance onset [2], which is when responsiveness and effective
decision making is needed most. This has been attributed to elements such as attention
narrowing, memory trap, workload fatigue, data overload and complexity creep [3].
Traditionally, the notion of situational awareness in automation systems has tied in closely
with the concept of state estimation (SE). Using the measurements available from across the
system, SE algorithm tries to find the set of system states (for example, voltages at various
nodes in a power system) that statistically fits this set of measurements best [4]. In order to
complete the picture of the system operating condition, extensive research was conducted on
estimating the network topology through identification of topology errors [5, 6], which led to
the introduction of the concept of generalized state estimation [7] that presented a unified
solution for SE using both network measurements and system topology data. To efficiently
deal with the large size of the problem, research has been conducted on developing distributed
state estimation solutions for large multi-area systems [8-10].

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

In conjunction with SE techniques, situational awareness solutions have also been developed
making use of alarms and signals. However, even the simplest failures in an automation
systems could lead to tens to hundreds of alarms brought to the attention of the system operator
[11], which echoed the need to convert this raw data to easily-interpretable information for the
human operator. The early approaches for this purpose were in the form of organizing and
prioritizing alarm messages [12]. Some authors suggested techniques for priority and grouping
schemes [13], which were later improved by using Boolean algorithmic and rule-based expert
system techniques [14, 15]. However, these modified approaches were still difficult to imple
ment for large systems, and lacked adaptability and flexibility. The trend therefore took a turn
towards more powerful intelligent techniques such as artificial neural networks [14, 16], fuzzy
systems [17-20], neuro-fuzzy systems [21], genetic algorithm [22] and Tabu search [23] among
others.
In parallel to these efforts, many researchers have focused on developing awareness solutions
by improving system observability. For instance, in power system automation schemes this
has been achieved by adopting additional system-wide dynamic measurements through
Phasor Measurement Units (PMU) [24, 25], which can then be used for disturbance event
detection and analysis [26, 27]. Also, data visualization tools have been proposed to assist
system operators with emergency situations [28-30].
With the advent and large-scale deployment of advanced sensors, the focal point of some
researchers shifted towards developing methodologies for sensor data fusion, sensor data
interpretation and knowledge extraction, and linking them to operator situational awareness
[31, 32].
Although many of the solutions proposed in the literature succeed in providing situational
awareness and vigilance for the system operator, some aspects are missing and require more
research:
Many of these techniques assist the operator in narrowing down and interpreting events,
but are unable to provide information on the breadth (range of impact) and depth (how
severely other system components are affected) of the event,
Event detection and identification is the first step towards awareness, but post-event
mitigation requires a measure of trustworthiness of the rest of the system,
Many of the methodologies proposed in the literature are application-specific, and cannot
be readily applied to all systems,
Some of the situational awareness solutions proposed in the literature use the concepts of
supervised and unsupervised learning to build a logical model for the system under study,
where historical data on the past incidents are used to construct and train the model.
However, in most practical systems, training data related to past events are not available.
Even if they are, they are likely to be recorded in a qualitative and application-specific
format,
Finally, most approaches for sensor data integration and fusion treat the data points at the
same level of importance, whereas in large-scale systems different data from different

81

82

Fuzzy Logic - Tool for Getting Accurate Solutions

components may have dissimilar importance for the overall performance of the system or
the underlying application.

3. Graph-theoretic based approach


3.1. Basic idea
Cognitive maps were introduced in the 1970s to represent social scientific knowledge [33].
These were signed directional graphs (digraphs) where a positive link from vertex j to vertex
i would indicate that j causally increases i, whereas a negative link would mean the reverse is
true (Fig. 1). In this context, the indirect effect of vertex j on vertex i over a path Pq is negative if
the number of negative signs (of the edges of Pq) is odd, and is positive otherwise. The total
effect of j on i would then be negative if all the indirect effects (over all possible paths) are
negative, positive if all indirect effects are positive, and indeterminate otherwise. It is safe to
assume that in most real-world applications beyond a trivial level of complexity, the indeter
minate case happens more frequently.

Figure 1. Schematic diagram of FCM with generic vertices and edges.

To further improve the computational capabilities of cognitive maps, Kosko [34] introduced
fuzzy cognitive maps which assigned fuzzy weights to the edges connecting vertices. This
allowed for determining the impact of vertices on one another based on the concepts of general
fuzzy t-norm and t-conorm operators (minimum and maximum). Within this context, the
indirect effect of vertex j on vertex i over a path Pq is defined as the minimum edge weight
along that path, and the total effect of j on i would be the maximum of all indirect effects. In
other words, the indirect effect represents the weakest causal link in a path connecting two
vertices and the total-effect would be the strongest of the weakest links.
Later versions of FCM used algebraic equations to determine the value of each vertex based
on the influence of the interconnected vertices (Fig. 2) [35].
This way, the state (value) xi of vertex i at any point in time is defined as:

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

ui (t ) =

w x (t ) x (t + 1) = f (u (t ))

j =1, i

ij

(1)

where ui represents the excitation level of vertex i, wij is the weight of the edge connecting j to
i, and function f ( ) is the threshold function defined, common choices being sigmoid or
hyperbolic tangent. In matrix form, the state vector X of the FCM can be expressed as:

X ( t + 1) = f [WX ( t )],

(2)

where W is the weight matrix.

Figure 2. Schematic diagram of FCM with weighted edges.

3.2. Challenges with FCM


In a prior work, the author developed FCMs to model and analyze the interdependencies of
typical power substations and to assess the impact of non-idealities in data quality on the
overall performance of the system [36]. However, the maps were built manually based on
expert knowledge, and it was shown that even for a simple system, the resultant FCM could
become rather complex, which makes its manual derivation less feasible. One of the main
challenges in this regard is how to assign weights to different edges of the graph. Traditionally,
this has been done using expert knowledge. Some researchers have proposed modified
techniques to measure the agreement between weights proposed by different experts [35], or
assigning weights based on majority vote among experts [37]. To help automate the process
further, some have used the notions of in-degree and out-degree of a vertex [38], the centrality
(total degree) of the vertices [34], or concepts such as the key vertex [39] and the closeness
(similarity) of relations between the states of two vertices i and j [40]. Alternatively, others have
focused on methodologies for training the FCM and updating its weights [41].
While many of these techniques have proven effective in certain applications, they may fall
short when applied to automation system situational awareness. First and foremost, it is often
easy for human experts to identify and analyze local relations and interdependencies, but for
large systems, an objective global system-wide analysis is difficult to obtain, and is likely to

83

84

Fuzzy Logic - Tool for Getting Accurate Solutions

become subjective. Moreover, in practice, an expert might be very knowledgeable in certain


parts of the system, but not necessarily in all parts. Adopting training techniques to adjust the
weights can solve the problem; however, its success largely depends on the availability of
comprehensive sample data on system integrity related to past incidents, which is often not
the case. Even if this data is available, it is not necessarily quantified and is likely to be
qualitative, again subject to human interpretations.

4. Proposed methodology
4.1. Overview
Accordingly, the approach put forth in this article seeks a solution that takes advantage of the
expert knowledge on local interrelations, but then modifies it towards a global perspective
using the features of the abstract graph. The FCM is first formed based on the flow of data and
communication services that exist between different components. The weights are then
developed in a semi-automated fashion through three steps:
1.

Using an expert system to determine the initial weights of the edges based on the short
range (1-step ahead) dependencies of components,

2.

Initial weights are then adjusted using the abstract centrality of the vertices (with no
knowledge of the criticality/type of their services),

3.

Weights are further tuned based on the relative number of paths from each vertex to the
(user-defined) critical ones.

It should be noted that our proposed approach does not require conducting experiments on
the system. Instead, it relies on the existing structure of the interdependencies and relations
between different components as well as the expert knowledge (likely to be limited and local)
on the criticality of these relations. As such, this methodology takes advantage of the graphtheoretic concepts that govern the automation system.
4.2. Assumptions
In developing the proposed solution, several assumptions have been made: Both external and
internal faults have been considered; however, it is assumed that the faults are operational
type (and not development faults [42]). Moreover, failure in service content is considered only,
and not in its timing. Furthermore, dependability of components on one another has been
analyzed in terms of availability and integrity.
Without loss of generality, notion of quality has been attributed to the services provided by
different components in accordance with the quality attribute defined in IEC 61850 which is
developed for utility automation systems [43]. Here, validity is defined as the main identifier
of the quality attribute that determines the existence or lack of an abnormal condition of an
acquisition function or source of information. Validity may be marked as good, invalid or
questionable. An enumerated list detail quality further elaborates the reason for an invalid or

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

questionable value. This list of identifiers includes items such as overflow, out of range, bad
reference, old data, inconsistent, inaccurate, etc. [43].
While the quality attribute provides valuable information for the operator, in many cases
converting this information to useable data is not straightforward. For instance, the standard
considers the client to be responsible for determining whether or not values marked ques
tionable should be used. Moreover, the impact of each data value on the partial or overall
performance of the substation in part depends on the interconnection of the protection, control
and measurement functions within the system, which requires a methodology for measuring
the propagation of bad data within these functions.
4.3. Algorithm
4.3.1. Step 0 Initializing the FCM
To initialize the structure of the FCM, various components in the system are first modeled as
the vertices of the graph. Any physical or logical component can be replaced by a vertex. The
flow of data and services between these components determines the directional edges that
interconnect the vertices. Data may refer to metering data, alarm signals, setting data, and
suchlike. Services may refer to actuation signals, control commands, set-point adjustments,
and data retrieval commands, etc. The directions of the edges are determined based on the
notion of client and server. In other words, FCM edges connect servers (providers of data and
services) to clients (users of data and services).
4.3.2. Step 1 Local weight initialization
In the first step, an expert system is used to determine the initial weights. The weights derived
this way would be short-sighted, i.e., the impact of each component on the very next one can
be quantified relatively accurately, but the precision is expected to decline as the depth of
impact of the component increases. The rational adopted here is based on how a vertex B uses
the services from vertex A (see Table 1).
Criticality

Definition

Classification
Very critical

B only receives services from A

(very high)
Critical (high)

B receives services from multiple components (including A), where no component can fully
replace or replicate the services provided by A (i.e., no redundancy)

Semi-critical

B receives services from multiple components (including A), where services provided by A can

(medium)

be partially replaced or replicated by another component (i.e., partial redundancy)

Non-critical

B receives services from multiple components (including A), where services provided by A can

(low)

be fully replaced or replicated by another component (i.e., full redundancy), or when services
provided by A are not essential for B to function

Table 1. Classification of edge relations A B

85

86

Fuzzy Logic - Tool for Getting Accurate Solutions

Without loss of generality, weights 1.0, 0.7, 0.4 and 0.1 have been chosen to indicate very critical,
critical, semi-critical and non-critical edges respectively. The reader should note how the
definition proposed here is purely local, with no system-wide impact in mind.
4.3.3. Step 2 Weight update based on graph structure
Centrality of a vertex indicates how connected it is to the rest of the graph, and can be used as
a measure of importance, since it shows the number of vertices in the graph that are related to
this vertex. Centrality C of a vertex is defined based on the notions of its in-degree and outdegree. For a vertex i [38]:
n

j =1

j =1

od(i ) = | w ji |, id(i ) = | wij |

(3)

C(i ) = od(i ) + id(i )

(4)

However, in this article in order to decouple the expert system based weight derivation in step
1 (which can be subjective) from weight update in the current step, the notion of abstract
centrality is used instead as shown in [44]. Here, the importance (centrality) of vertices will be
derived based on abstract in-degree and out-degree as proposed in (5):

aod(i ) =

h( w

s , s i

si

), aid(i ) =

h( w

s , s i

0 u = 0
where h(u ) =
1 u 0
C* (i ) = aod(i ) + aid(i )

is

)
(5)

(6)

The previously derived weights will therefore be adjusted based on the abstract centrality
C*(i) of each vertex i, in such a way that outgoing edges from vertices with high centralities
will be further strengthened:

i ))
"j : w*ji = w ji (1 + b C(

(7)

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

where is a learning rate parameter (heuristically chosen here to be 0.20) and represents the
normalized abstract centrality based on the range of [C*min, C*max] values of all abstract centralities.
4.3.4. Step 3 Weight update based on relation to critical vertices
Here, the severity of the relationship between vertices and the ones identified as critical (by
the operator) are quantified. Definition of critical vertices is application specific. In automation
systems, for instance, critical vertices could be defined as those taking an action, e.g.,
protection relays, switch controllers, etc. In a graph with k critical vertices, the severity of the
relationship between vertex i and the set of critical nodes is defined as:

Si =
k

1
p
(i ,k )

(8)

where Lp(i,k) is the length of the pth path that connects vertex i to vertex k. To maintain decoupling
from step 1, calculation of the length of the paths should ignore the weights of the edges in
between. In this article, the length is defined as the number of intermediate vertices along the
path. Severity is then used to update the weights:

"j : w*ji = w ji (1 + h Si )

(9)

where is the learning rate parameter.


4.4. Discussion
It can be seen that relative independence is ensured between the three steps of the algorithm.
This is necessary, because part of the information that is obtained from the expert system is
subjective, and should not interfere with the other two steps that are graph-dependent.
Validation of the FCM output can be done using the historical data on past failures in the
system. Of course, if desired, part of the historical data can be used for updating the weights,
as shown in [44]. Here, the available data can be divided into independent training and testing
batches to evaluate the efficiency of the training algorithm. However, training using historical
data is not adopted here due to the fact that its availability in sufficiently large scale is often
unlikely.

5. Case study
The system studied in this article is a modified version of the IEEE 34-bus test distribution
system [45]. For the purpose of this study, the system has been expanded by adding fixed and
switched capacitors, reclosing switches, distributed generation (DG) units, on-load tap

87

88

Fuzzy Logic - Tool for Getting Accurate Solutions

changer (OLTC) with line drop compensation (LDC), and various metering IEDs across the
feeder and the laterals (Fig. 3).
It is assumed that the system is equipped with advanced distribution automation (DA) system
consisting of functions for conservation voltage reduction (CVR), voltage and var control
(VVC), electric service restoration (RES), and DG dispatch. These interrelated functions share
services from different devices:
CVR: receives voltages from end-of-lateral meters (V6 and V7 in this example) and based on
the current through the OLTC I1 and the substation voltage V1 regulates the LDC settings
so that no voltage across the system drops below ANSI low. It also receives relevant data
from VVC.
VVC: controls the settings of the tap changers T2, T3 and switched capacitors CS1, CS2 in order
to minimize the losses. The capacitor switches are equipped with Point-on-Wave switching
scheme. The function consults the network configuration, itself being updated based on the
statuses of the reclosing switches among other things.
RES: manages the reclosing switches R1, R2 and R3 across the system in the event of a
disturbance. For proper performance, the function is updated based on the output of the
DG units DG1 and DG2, and the power flow meters at certain locations of the feeder, i.e., I1,
I2, I3 and I4.
DG Dispatch: regulates and manages the power generated by the DG units DG1 and DG2
based on economic and environmental considerations, as well as requirements from the RES
function.
It can be seen that even this simple example portrays various levels of interdependencies
between different DA applications, to an extent that they make visual assessment of system
integrity very difficult, if not impractical. The initial structure of the FCM for the system in
Fig. 3 has been developed based on the presumed interrelations (flow of data and communi
cation services) between different components (Fig. 4).
The arrows shown in the diagram denote the direction of impact/dependence, i.e., A B
indicates that services of A have an impact on B. Each vertex in the FCM is assumed to have
a linguistic state space of {failed (not trustable), questionable, low confidence, not verified,
healthy}, which without loss of generality has been quantified as {1.0, 0.7, 0.4, 0.2, 0.0}. The
choice of numbers might sound counter-intuitive to the reader, but it is necessary here, since
the proposed FCM models the chain of failures in components. The weights of the FCM are
first initialized based on the logic in Table 1. They are then adjusted based on the abstract
centrality of the vertices according to (7). Finally, they are updated according to (9). For the
purpose of this algorithm, critical vertices have been assumed to be VVC, DG Dispatch and
RES.
A few examples have been provided to indicate the effectiveness of the proposed methodology.
For all use cases, matrix W is developed based on weights of the FCM (Fig. 4). Simulations
have been performed in MATLAB environment. The system starts from healthy state (all

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

Figure 3. Modified 34-bus test distribution system. Switches denoted as NC and NO represent normally closed and
normally open respectively. Measurement and status data are collected from the field and sent to the control center.
Commands are sent from the control center to the field devices.

zeroes) except for the vertices that are considered to experience a failure. The state update
equation (2) is repeated in a loop until the impact of the unhealthy vertices propagates across
the whole system, i.e., the loop is iterated as many number of times as the length of the longest
path originated from the unhealthy vertex.
5.1. Case study 1: Impact of failures on major functions
The following case studies have been analyzed:
Non-Verified Voltage Measurement V1: voltage meter V1 at the distribution substation
indicates a value that has not been updated (not verified).
Questionable Recloser Status R1: the status of recloser R1 is indicated to have a questionable
data quality as it has been oscillatory with relatively fast changes.
Outdated Tap Position T2: the tap position of T2 indicates that the upper threshold is reached,
which does not match the expected operation based on engineering judgment (low confi
dence).

89

90

Fuzzy Logic - Tool for Getting Accurate Solutions

Figure 4. FCM developed for system in Fig. 3. Vertices in blue represent DMS applications that reside at the control
center. Vertices in black represent devices and components out on the field. Those shown in green can be implemented
either on the field or at the control center. Abbreviations: TCC: tap changer controller, CF: fixed capacitor, CS: switch
ed capacitor, SW: capacitor switch, POV: point on voltage waveform. It is assumed that the DG sends all relevant in
formation (e.g., active/reactive power, terminal voltage, injected current, connection status) to control center.
Relationship between reclosers R and function RES is in the form of send recloser status and receive control com
mand. TCC ensures that the upper or lower tap positions for each tap changer are not violated.

Failed Switch SW1: switch responsible for controlling switched capacitor CS1 is failed with
stuck blades.
Table 2 shows the impact of each case study on some of the main applications within the
distribution automation system. The state of each application indicates where it lies in the
range of healthy (0) to failure (1). It should be noted that the interpretation of values between
0 and 1 would be subjective; nonetheless, it would provide a qualitative measure of integrity
for the application of interest. It can be seen that while some of the conclusions provided in
Table 2 are easy to draw based on expert knowledge (e.g., RES would fail if R1 is questionable),
others are not easy to infer from the local interrelations (e.g., the impact on DG dispatch and
VVC). This is the advantage of the proposed methodology that converts local interrelations to
global system-wide impacts.
VVC

DG Dispatch

RES

Model

CVR

V1 not verified

Case Study

0.26

0.07

0.07

0.12

0.17

R1 questionable

0.66

1.00

1.00

1.00

0.29

T2 low confidence

0.42

0.13

0.14

0.21

0.23

SW1 failed

0.70

0.12

0.07

0.16

0.25

Table 2. Impact of case studies on major DA applications

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

5.2. Case study 2: Range of impact of a failure


It is assumed in this case study that switch SW1 has failed. The goal is to provide an overall
view of the system dependability. Colored vertices in Fig. 5 show the range of impact of the
failure. It can be seen that the proposed FCM-based solution assists the human operator in
detecting what functions/components have been affected by the failure and to what extent.
For example, this case study indicates that as a result of failure in SW1, operation of VVC cannot
be trusted, which in turn causes the information provided at the HMI to have low confidence
or to be questionable. Such a visual overview of system trustworthiness can be extremely
beneficial to the operator for making fast decisions during contingencies in order to save the
rest of the system. For instance, in this failure scenario, the operator may decide to temporarily
deactivate the CVR function so as to avoid instances of non-optimal voltage profile across the
distribution system.

Figure 5. FCM developed for system in Fig. 3. The following color codes have been defined associated with case study
2: green (healthy to not verified), yellow (not verified to low confidence), orange (low confidence to questionable), and
red (questionable to not trustable).

6. Practical considerations
6.1. Scalability
One of the main features in the proposed methodology lies in its ability to model various
systems regardless of their size and number of components. In fact, any large system can be
modeled as a hierarchical FCM. The key is to decompose the overall system into sub-systems
and model each one as an FCM. This would represent the first layer of hierarchy. Each lower

91

92

Fuzzy Logic - Tool for Getting Accurate Solutions

layer FCM will then be modeled as an equivalent vertex for the FCM at the upper layer (Fig.
6). This allows for masking the dynamics and interrelations of lower layer sub-systems from
the upper layers. This way, the operator can first pinpoint which sub-system has been affected
by a failure and how this would impact the rest of the sub-systems. If desired, the operator can
then study the individual components within that particular sub-system. In theory, there are
no limits to the number of the layers defined.

Figure 6. Hierarchical FCM comprising multiple lower layer FCMs that represent sub-systems.

Zhang et al. [46] proposed one such solution based on the notion of equivalence relation. In
their approach, the set of vertices were first partitioned into blocks, where each block contained
a portion of the original FCM. The authors referred to the upper layer as the quotient FCM
which was responsible for providing global information about the original system. The
sectional FCMs would then provide local information on the interactions and interrelations
between vertices.
6.2. Reliability and accuracy of the results
The reliability and accuracy of the proposed FCM-based solution depends in part on the
accuracy of the initial graph created (initial structure and initial weights). This, in turn, depends
on the validity of the expert knowledge on local interrelations between components. Once the
correct initial graph is in place, the graph theory rules will modify the local solution to a
global one. However, in achieving that goal, learning rate parameters in equations (7) and
(9) play an important role, and if chosen incorrectly may lead to solutions that overestimate
or underestimate the impact of failures. These parameters should therefore be assigned
carefully, typically starting from low values and gradually increasing them until reasonable
outcomes are achieved. In the lack of historical data on the past failures in the system, heuristic
selection of these parameters would be the only option. However, if this data exists (even if it
is incomplete and partial) it can be used as training data to validate the output of the FCM and
modify the learning rate parameters as necessary.

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

7. FCM adaptation
7.1. Structural changes to the FCM
Many automation systems may undergo structural changes and modifications as time passes.
New components may be installed and/or current components may be upgraded with
extended sensing and actuation capabilities. In the context of the logical interconnections
mapped by the FCM, this indicates one or more additional vertices.
The following steps need to be undertaken to incorporate a new vertex into the FCM model:
Create the new edges connecting the new vertex to the existing vertices. The direction of
these edges will be determined based on the flow of data and services,
Initialize the weights for all edges according to the definition in Table 1. All edges connecting
the existing vertices to the new vertex will receive a new initial weight,
Recalculate the abstract centrality for all vertices according to (6),
Normalize the new abstract centrality values based on the new minimum and maximum
values,
Update the initial weights for all edges according to (7),
Recalculate the severity index Si for all vertices according to (8),
Finally, update all the weights according to (9).
When components (or their sensing/actuation functionalities) are removed from the system,
one can either remove the corresponding vertices from the graph and follow the steps above,
or simply remove the corresponding entries of state vector X and the rows/columns of
matrix W associated with that vertex.
7.2. Training the FCM
In this article, it was assumed that historical data on the past incidents in the system are
not available and therefore the weights were only created and adjusted based on heuris
tic and graph-theoretic rules. However, it is possible that partial data be available on some
past instances of failure in the system. This data may be obtained from post mortem analysis
following a disturbance, and may be in the form of when component x failed, compo
nents y and z, and applications a and b failed (completely or partially) as a result. In all
likelihood, this data will be qualitative. If sufficient expert knowledge is readily available
to quantify the level and severity of these past failures then the data can be used for
updating all or some of the weights of the edges. Two common scenarios are possible:
supervised learning and unsupervised learning. For an overview of these two ap
proaches, the reader is referred to [41].

93

94

Fuzzy Logic - Tool for Getting Accurate Solutions

7.2.1. Supervised learning


In this case, for the given input data, the actual values of the system states Xactual will be
compared with the desired values Xdesired. The difference between the two vectors will deter
mine the direction of update in the weights. One algorithm may be expressed as:

wij (t ) = wij (t - 1) + a Dx j (t - 1) [Dxi ,desired (t - 1) - Dxi ,actual (t - 1)]

(10)

where is a learning rate parameter, which can be customized for each individual edge. For
other variations of supervised learning, see [48-52].
7.2.2. Unsupervised learning
Unsupervised Learning methods adjust the weights of the FCM without any knowledge of the
desired target values of the vertices. As such, this approach would be more appropriate for
cases where desired system states are not known exactly (or at least not known in a quantified
fashion). Many unsupervised learning schemes are based on the Hebbs learning law, where
the change in the synaptic weight wij linking vertices j and i is expressed as a function of signal
flows before and after the link:

Dwij = a x j xi

(11)

In order to solve the instability issues, Oja modified the rule as [53]:

Dwij = a x j ( xi - wij x j )

(12)

In essence, this method tries to strengthen the link between two vertices whose state values
move in the same direction, and weaken the link should they move in opposite directions (e.g.
one increases while the other decreases). For other variants of unsupervised learning, see
[54-57].

8. Concluding remarks
Latest advances in sensor and actuator technology have made them attractive and, at the same
time, affordable for large scale deployment across automation systems. The benefits of
improved observability and controllability come at the price of having a more complex system
of interrelated components, where failure of one may cause many others to fail or become
degraded. System integrity assessment in this case requires a thorough analysis of the scope
of impact of component failures. However, the potentially large number of components may
prevent human operators from efficiently interpreting and identifying failure impact.

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

A solution was proposed in this article for providing situational awareness and dependability
assessment of components within an automation system that is exposed to partial failure. A
combination of expert rule-base and graph-theoretic approaches were used to develop a
cognitive map of global interdependencies in the system. Expert knowledge was first used to
create an initial directional and weighted graph model of the automation system based on the
interrelations between components and their local (one-step ahead) impacts on one another.
In this model, a component is modeled as a vertex of the graph, and an edge between two
vertices would indicate the existence and direction of flow of data/services between them. This
model was then modified based on the assessment of centrality and criticality of different
vertices in the graph. This way, the local solution that was developed by a human expert would
be converted into a global solution that considers the overall system performance.
By reproducing the fault activation pattern, the proposed solution can provide additional
situational awareness for the system operator during or in the aftermath of a fault, and can be
used for static as well as dynamic verification of system dependability. It was shown through
simulation results that the proposed solution allows the system operator to identify the range
of impact of a failure on the overall system and determine what parts of the system remain
trustworthy and dependable.

Author details
Salman Mohagheghi*
Electrical Engineering and Computer Science Department, Colorado School of Mines, Golden,
CO, USA

References
[1] R.W. Pew, The state of situation awareness measurement: circa 1995, in Proc. Intl.
Conf. Experimental Analysis and Measurement of Situation Awareness, Daytona Beach, FL,
USA, Nov. 1995, pp. 7-16.
[2] B.P. Hallbert, Situation awareness and operator performance: results from simulatorbased studies, in Proc. IEEE Annual Human Factors Meeting, Orlando, FL, USA, Jun.
1997.
[3] M.R. Endsley and E.S. Connors, Situation awareness: state of the art, in Proc. IEEE
PES, Pittsburgh, PA, USA, Jul. 2008.
[4] A. Monticelli, Electric power system state estimation, Proc. IEEE, vol. 88, no. 2, pp.
262-282, Feb. 2000.
[5] F.F. Wu and W.H.E. Liu, Detection of topology errors by state estimation, IEEE Trans.
Power Systems, vol. 4, no 1, pp. 176-183, Feb. 1989.

95

96

Fuzzy Logic - Tool for Getting Accurate Solutions

[6] I.S. Costa and J.A. Leao, Identification of topology errors in power system state
estimation, IEEE Trans. Power Systems, vol. 8, no 4, pp. 1531-1538, Nov. 1993.
[7] O. Alsac, N. Vempati, B. Stott and A. Monticelli, Generalized state estimation, IEEE
Trans. Power Systems, vol. 13, no 3, pp. 1069-1075, Aug. 1998.
[8] Z. Liang and A. Abur, Multi area state estimation using synchronized phasor
measurements, IEEE Trans. Power Systems, vol. 20, no 2, pp. 611-617, May 2005.
[9] Y. Li, X. Zhou and J. Zhou, A new algorithm for distributed power system state
estimation based on PMUs, in Proc. Intl. Conf. on Power System Technology, Oct. 2006.
[10] A.P. Sakis Meliopoulos, G.J. Cokkinides, F. Galvan, B. Fardanesh and P. Myrda,
Delivering accurate and timely data to all, IEEE Power & Energy Magazine, vol. 5, no.
3, pp. 74-86, May/Jun. 2007.
[11] D. Droucher, Langage: an expert system for alarm processing, presented at the 11th
Biennial IEEE Workshop on Power Systems Control Centers, Montral, BC, Canada,
Sept. 1990.
[12] D.S. Kirschen and B. Woolenberg, Intelligent alarm processing in power pystems,
Proc. IEEE, vol. 80, no. 5, pp. 663-672, May 1992.
[13] H. Amelink, A.M. Forte and R.P. Guberman, Dispatcher alarm and message
processing, IEEE Trans. Power Systems, vol. PWRS-1, pp. 188-194, Aug. 1986.
[14] E.H.P. Chan, Application of neural network computing in intelligent alarm
processing, in Proc. Power Industry Computer Application Conf., San Jose, CA, May 1989,
pp. 246-251.
[15] C.A. Protopepes, K.P. Psaltiras and A.V. Machias, An expert system for substation
fault diagnosis and alarm processing, IEEE Trans. Power Delivery, vol. 6, no. 2, pp.
648-655, Apr. 1991.
[16] R. Khosla and T. Dillon, Learning knowledge and strategy of a neuro-expert system
architecture in alarm processing, IEEE Trans. Power Systems, vol.12, no. 4, pp.
1610-1618, Nov. 1997.
[17] S.S. Choi, K.S. Kang, H.G. Kim and S.H. Chang, Development of an on-line fuzzy
expert system for integrated alarm processing in nuclear power plants, IEEE Trans.
Nuclear Science, vol. 42, no. 4, pp. 1406-1418, Aug. 1995.
[18] C.L. Nelson and D.S. Fitzgerald, Sensor fusion for intelligent alarm analysis, IEEE
AES Systems Magazine, pp 18-23, Sept. 1997.
[19] E.M. Meza, J.S.S. de Souza, M.T. Schilling and M.B.D.C. Filho, Exploring fuzzy
relations for alarm processing and fault location in electrical power systems, in Proc.
IEEE Power Tech, Sept. 2001.
[20] H.J. Cho and J.K. Park, An expert system for fault section diagnosis of power systems
using fuzzy relations, IEEE Trans. Power Systems, vol. 12, no. 1, pp. 342-348, Feb. 1997.

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

[21] E.M. Meza, J.S.S. de Souza, M.T. Schilling and M.B. Filho, Alarm processing in
electrical power systems through a neuro-fuzzy approach, IEEE Trans. Power Delivery,
vol. 19, no. 2, pp 537-544, Apr. 2004.
[22] F. Wen, C.S. Chang and D. Srinivasan, Alarm processing in power systems using a
genetic algorithm, in Proc. Intl. Conf. on Evolutionary Computation, Perth, WA, Nov./
Dec. 1996.
[23] F.S. Wen and C.S. Chang, Tabu search approach to alarm processing in power
systems, IEE Proceeding, vol. 144, no. 1, pp. 31-38, Jan. 1997.
[24] R.B. Bobba et al., Enhancing grid measurements, IEEE Power & Energy Magazine,
pp. 67-73, Jan./Feb. 2012.
[25] S.E. Widergren, Z. Huang and J.E. Dagle, Electric system-wide measurements: North
American directions, in Proc. 40th Hawaii Intl. Conf. on System Sciences, Waikoloa,
HI, USA, Jan. 2007.
[26] G. Zhang, K. Sun, H. Chen, R. Carroll and Y. Liu, Application of synchrophasor
measurements for improving operator situational awareness, in Proc. IEEE PES,
Detroit, MI, USA, Jul. 2011.
[27] H. Qi et al., Increasing the resolution of wide-area situational awareness of the power
grid through event unmixing, in Proc. 44th Hawaii Intl. Conf. on System Sciences,
Kauai, HI, USA, Jan. 2011.
[28] T.J. Overbye, Visualization enhancements for power system situational assessment,
in Proc. IEEE PES, Pittsburgh, PA, USA, Jul. 2008.
[29] J. Wang, Y. Hu, A. Johnson, H. Tram and R. Nasri, System requirements of
visualization platform for wide area situation awareness system, in Proc. IEEE PES,
Minneapolis, MN, USA, Jul. 2010.
[30] C. Zheng, Y. Dong. O. Gonen and M. Kezunovic, Data integration used in new
applications and control center visualization tools, in Proc. IEEE PES, Minneapolis,
MN, USA, Jul. 2010.
[31] R. Laughery et al., Decision-centered design as the basis of defining the human role
in systems, in Proc. IEEE Human Factors Meeting, Scottsdale, AZ, USA, Dec. 2002.
[32] Y. Liang, H.Q. Wang, H.B. Cai and Y.J. He, A Novel stochastic modeling method for
network security situational awareness, in Proc. IEEE Conf. Ind. Elec. Appl., Singapore,
Jun. 2008, pp. 2422-2426.
[33] R. Axelrod, Structure of Decision: the Cognitive Maps of Political Elites, Princeton, NJ:
Princeton University Press, 1976.
[34] B. Kosko, Fuzzy Cognitive Maps, International Journal Man-Machine Studies, vol. 4,
pp. 65-75, 1986.

97

98

Fuzzy Logic - Tool for Getting Accurate Solutions

[35] C.D. Stylios and P.P. Groumpos, Modeling complex systems using fuzzy cognitive
maps, IEEE Trans. Systems, Man and Cybernetics Part A, vol. 34, no. 1, pp. 155-162, Jan.
2004.
[36] S. Mohagheghi, A Fuzzy cognitive map for data integrity assessment in a IEC 61850
based substation, in Proc. IEEE PES, Jul. 2010.
[37] B. Lazzerini and L. Mkrtchyan, Analyzing risk impact factors using extended fuzzy
cognitive maps, IEEE Systems Journal, vol. 5, no. 2, pp. 288297, Jun. 2011.
[38] D.B. West, Introduction to Graph Theory, Prentice Hall, 2001.
[39] Y. Miao and Z.Q. Liu, On causal inference in fuzzy cognitive maps, IEEE Trans. Fuzzy
Systems, vol. 8. no. 1, pp. 107119, Jan. 2000.
[40] M. Schneider, E. Shnaider, A. Kandel and G. Chew, Automatic construction of FCMs,
Fuzzy Sets Syst., vol. 93, pp. 161172, Jan. 1998.
[41] E.I. Papageorgiou, Learning algorithms for fuzzy cognitive maps a review study,
IEEE Trans. Systems, Man and Cybernetics: Part C, vol. 42, no. 2, pp. 150163, Mar. 2012.
[42] A. Aviienis, J.C. Laprie, B. Randell and C. Landwehr, Basic concepts and taxonomy
of dependable and secure computing, IEEE Transactions on Dependable and Secure
Computing, vol. 1, no. 1, pp. 1133, Jan/Mar. 2004.
[43] Communication Networks and Systems in Substations, IEC Standard 61850 (parts 1-10),
2010.
[44] S. Mohagheghi, Integrity assessment scheme for situational awareness in utility
automation systems, IEEE Trans. Smart Grid, Vol. 5, No. 2, pp. 592601, March 2014.
[45] IEEE Dist. Planning Working Group, Radial distribution test feeders, IEEE Trans.
Power System, vol. 6, no. 3, pp. 975985, Aug. 1991.
[46] J. Y. Zhang, Z. Q. Liu, and S. Zhou, Quotient FCMsA decomposition theory for
fuzzy cognitive maps, IEEE Trans. Fuzzy Syst., vol. 11, no. 5, pp. 593604, Oct. 2003.
[47] Y. Boutalis, T.L. Kottas and M. Christodoulou, Adaptive Estimation of Fuzzy
Cognitive Maps with Proven Stability and Parameter Convergence, IEEE Transactions
on Fuzzy Systems, vol. 17, no. 4, pp. 874889, Aug. 2009.
[48] T.L. Kottas, Y.S. Boutalis and M.A. Christodoulou, Fuzzy Cognitive Network: A
General Framework, Intelligent Decision Technologies, vol. 1, pp. 183196, 2007.
[49] X. Luo, X. Wei and J. Zhang, Guided Game-Based Learning Using Fuzzy Cognitive
Maps, IEEE Transactions on Learning Technologies, vol. 3, no. 4, pp. 344357, Oct/Dec.
2010.
[50] H. Song, C. Miao, W. Roel, Z. Shen and F. Catthoor, Implementation of Fuzzy
Cognitive Maps Based on Fuzzy Neural Network and Application in Prediction of
Time Series, IEEE Transactions on Fuzzy Systems, vol. 18, no. 2, pp. 233250, Apr. 2010.

Fuzzy Cognitive Maps for Identifying Fault Activation Patterns in Automation Systems
http://dx.doi.org/10.5772/59611

[51] W. Stach, L. Kurgan,W. Pedrycz and M. Reformat, Genetic Learning of Fuzzy


Cognitive Maps, Fuzzy Sets and Systems, vol. 153, pp. 371401, 2005.
[52] W. Stach, L. Kurgan and W. Pedrycz, A Divide and Conquer Method for Learning
Large Fuzzy Cognitive Maps, Fuzzy Sets and Systems, vol. 161, pp. 25152532, 2010.
[53] E. Oja, Neural Networks, Principal Components and Subspaces, International Journal
of Neural Systems, vol. 1, no. 1, pp. 6168, 1989.
[54] A.V. Huerga, A Balanced Differential Learning Algorithm in Fuzzy Cognitive Maps,
in Proc. International Workshop on Quantitative Reasoning, Sitges, Spain, Jun. 2002.
[55] E.I. Papageorgiou, C.D. Stylios and P.P. Groumpos, Active Hebbian Learning
Algorithm to Train Fuzzy Cognitive Maps, International Journal of Approximate
Reasoning, vol. 37, pp. 219249, 2004.
[56] E.I. Papageorgiou and P.P. Groumpos, A Weight Adaptation Method for Fuzzy
Cognitive Map Learning, Soft Computing, vol. 9, no. 11, pp. 846857, 2005.
[57] W. Stach, L. Kurgan and W. Pedrycz, Data-Driven Nonlinear Hebbian Learning
Method for Fuzzy Cognitive Maps, in Proc. IEEE International Conference on Fuzzy
Systems, Hong Kong, Jun. 2008.

99

Chapter 5

Modelling and Implementation of a Series DC Motor


Drive System
Angelo Jos Junqueira Rezek, Carlos Alberto Murari Pinheiro,
Tony Youssif Teixeira Darido, Valberto Ferreira da Silva,
Otvio Henrique Salvi Vicentini, Wanderson de Oliveira Assis and
Rafael Di Lorenzo Corra
Additional information is available at the end of the chapter
http://dx.doi.org/10.5772/59814

1. Introduction
For the purpose, of controlling a DC motor in a mono quadrant, a totally controlled Graetz
converter bridge (a static converter) was used. For the implemented system, a microcomputer,
a data acquisition board, an electronic firing circuit, as well as a current and speed sensors
were used.
In this computer study, C++ language was used for the implementation of a controlled DC
drive using a DC series motor.
Through the computer, the system control was performed directly via software and a data
acquisition board containing A/D and D/A converters.
The board used was a PCL-711B PC-Multilab card from Advantech Co. (www.advan
tech.com), with A/D and D/A conversion, as well as digital inputs and outputs. The A/D
conversion had 12 bits resolution, with eight input channels programmable for input ranges
of 5 [V] and a conversion time of 25 [s]. The D/A conversion had the same resolution (12
bits) but with a single output channel that had an accommodation time of 30 [s] and output
ranges from 0 to +5 [V].
Two input channels were used for A/D conversion, corresponding to the speed and current
feedback signals; one output channel D/A was used for the control signal (VCC).
The control software was responsible for the acquisition of input data, for the A/D and D/A
conversions, implementation of the control algorithm for the speed and current grids, and for

102

Fuzzy Logic - Tool for Getting Accurate Solutions

generation of the control signal for the firing circuit. The program also included an on-line
parameters setting. An output DC signal of the card (0-10 [V]) was used as the input of the
generation
of the control signal for the firing circuit. The program include also, on-line
firing circuit in order to control the series DC motor and for this purpose, two regulators,
parameters
setting.
An output
DC in
signal
card
has
connected
in a cascading
fashion
termsof
of the
speed
and(0-10
current[V])
loops,
was projected. The load
been torque
used to
the
input
of
the
firing
circuit,
in
order
to
control
the series
DCsame
motor
was imposed using a three phase synchronous generator, connected
to the
shaftand for
this purpose,
two
connected
in cascade,
in thebank.
speed and current loops, will be
of the series
DCregulators,
motor and supplying
a three-phase
resistor

projected. The load torque was imposed by using a three phase synchronous generator,
connected to the same shaft of the series DC motor , supplying a three phase resistor bank.
2. Motor block diagram
2. Motor block diagram
2.1. Mechanical part equating

2.1 Mechanical part equating

Figure 1 shows the series DC motor armature circuit. The diagram of the drive system's
mechanical part is also presented.

Figure 1 shows the series DC motor armature circuit. The diagram of the drive system
mechanical part is also presented.

Counter electromotive force [V]


FigureU:
Motor
armature
circuit and diagram of the drive system mechanical part
E: 1.
Applied
voltage
[V]
R
,
L
:
Total
resistance
and
inductance
of the armature circuit
Being:
: Motor flux
U: Counter
electromotive force [V]
Ia: Armature current
M: Motor voltage
torque
E: Applied
[V]
: Load torque
Ra, LaTJ:: Moment
Totalofresistance
and inductance of the armature circuit
inertia (motor + load)
: Motor
flux
n: Speed
[rpm]
: Rotation [rad / s]
Ia: Armature
current
M: Motor
torque
Figure 1. Motor armature circuit and diagram for the drive system mechanical part, being:
Tc: Load torque
Also: of inertia (motor + load)
J: Moment
n: Speed [rpm]
M = K1FI a
: Rotation [rad / s]
a

Also:Being I a the armature current average value and also, K1 = KIa, therefore:
M = K1I a
Being I a the armature current average value and also, K1=KIa therefore:
 =  1
For the accelerating torque:
  =  (2)

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

M = KI a2

(1)

M - Tc = B

(2)

For the accelerating torque:

dw
dt

(3)

2p
n
n
60 0 n0

(4)

B
Mn

(5)

B= J

w=

Being:
n0: No load speed [rpm]
Mn : Rated torque.

B = Mn

(4) e (5) into (3) results:


2p
n
n
60 o no
B
=J d
Mn
Mn
dt
Mn
n=

2p no dn
B
=J
60 no dt
Mn

(6)

n0
1
B.dt
Mn 2p n0
J
60 Mn

By defining the acceleration time constant TH, as:


TH =

2p Jn0
60 Mn

(7)

103

 =

 

104

 .
6

By
defining
the
time
constant TH, as:
Fuzzy
Logic - Tool
foracceleration
Getting Accurate
Solutions
2 
(7)
60 

This time constant may be interpreted as the time


required
for the motor to reach no load speed

==

from a resting state, when it is accelerated by a resultant torque equal to the rated motor torque.

This time constant may be interpreted as the time required for the motor to reach no load
speed from rest, when it is accelerated by a resultant torque equal to the rated motor
n 1
torque.
n= 0
B.dt
(8)
Mn TH1
 .
(8)
 =

Figure 2 illustrates the block diagram related to the mechanical motor part.

Figure 2 illustrates the block diagram related to the motor mechanical part.

Figure 2. Block diagram of the drive mechanical part


Figure 2. Block diagram of the drive mechanical part.

Setting the magnitude values in pu, current, load torque, accelerating torque, speed and motor
torque results in:
Ia
= ia (pu)
IN

Tc
= tc (pu)
Mn
B
= b (pu)
Mn

n
= nu (pu)
no

M
= m (pu)
Mn

The block diagram in Figure 2 can be represented in pu as shown in Figure 3.


2.2. Armature circuit equating
E = Ra I a + La

dI a
+U
dt

n
= nu (pu)
no
M
= m (pu)
and Implementation of a Series DC Motor Drive System
MModelling
n
http://dx.doi.org/10.5772/59814
The block diagram of Figure 2, can be represented in pu as shown in Figure 3.

Figure 3. Representation of the motor mechanical part in pu.


Figure 3. Representation of the motor mechanical part in pu.

2.2 Armature circuit equating

Applying the Laplace transform results in:

E = Ra I a + La

dI a

+U

E(S) = Ra I a (S) + SLa Idta (S) + U (S)

Applying the Laplace transform,


E(Sresults:
) - U (S) = I a (S) Ra + SLa

E ( S ) = Ra I a ( S ) + SLa I a ( S ) + U ( S )

(S )
E ( S ) U (ES(S) )=-IU
a ( S ) [ Ra + SLa ]
I a (S ) =

() =

Defining:

Ra + SLa

(9)

 ()
(9)
 + 

Defining:

=


L
(10)
Ta = a

Ra

  =
I a (S ) =

(10)

 () 1
(11)
+U

E ( S1) (S) 1 
1 + STa

Ra

(11)

Regrouping:
Ia
E-U EN
1
I =

IN N
Ra EN 1 + STa
Ia
E-U EN
1
=

I N EN Ra I N 1 + STa

I a E-U EN
1
=

IN
EN Ra I N 1 + STa
The armature current Ia appears to be normalized by the nominal current IN. Voltages E and
U are also normalized by the nominal voltage EN, setting the normalized values as:

105

Regrouping:
106

Fuzzy Logic - Tool for Getting Accurate SolutionsI a

E-U E N
1
IN =

IN
Ra E N 1 + STa
Ia
E-U EN
1
=

I N IE
R
I
1
+
STa
ia = a N a N
I
I a E-U
EN
1
N
=

IN
EN Ra I N 1 + STa

(12)

e=
The armature current Ia seems normalized
by the nominal current IN .Voltages E and
U are
(13)
E
also normalized by the nominal voltageNEN.
Setting the normalized values as:

U = (12)

u=
(14)

EN


(13)


EN
Vi =

(15)
Ra I N =

(14)


 =
(15)
The block diagram of the armature circuit l is shown
in
Figure 4.
 =

The block diagram of the armature circuitl is shown in Figure 4.

Figure 4. Block diagram of the DC motor armature circuit.


Vi
The
factor
can
be considered
a delay element of 1 order. The determination of the
Figure 4.
Block
diagram of the DC
motor
armature circuit.
1 + STa
time constant
Ta can be done in two ways:
Vi
The factor
canand
be Ra;
considered a delay element of 1 order. Time constant Ta can be
a) Measuring
La
1 + ST
a

determined in two ways:


a.

Measuring La and Ra;

b.

Applying a reduced voltage step in the armature circuit when the rotor of the motor is
blocked.

Figure 5 shows the armature circuit.

Modelling and Implementation of a Series DC Motor Drive System

b) Applying a reduced voltage step in the armature circuit, when the


rotor of the motor is
http://dx.doi.org/10.5772/59814
blocked.
Figure 5 shows.
b) Applying a reduced voltage step in the armature circuit, when the rotor of the motor is
Ra
La
blocked.
Figure 5 shows.

Ia

La

Ra

Ia

RSH
RSH

STORAGE
OSCILLOSCOPE
STORAGE
OSCILLOSCOPE

Figure 5. Reduced voltage step applied to the armature circuit.

Figure 5. Reduced voltage step applied to the armature circuit.

through
an oscillograph
orcircuit.
storage oscilloscope(voltage drop in
The
current
Ia is captured
Figure
5. Reduced
voltage step
applied
to the armature
The current
Ia resistor
is captured
oscillograph
or storage
(voltage drop in the
the shunt
RSH).through
Figure 6 an
illustrates
the expected
time oscilloscope
transient response.
The current
through the
an oscillograph
or storage
oscilloscope(voltage
drop in clamp
a is captured
shunt resistor
RSH). IFigure
6 illustrates
expected time
transient
response. A current
RSHof
). Figure
6 illustrates
can alsothe
beshunt
used,resistor
instead
the resistor
RSH. the expected time transient response.

Figure 6. Current response for a voltage step applied to the armature circuit.
Figure 6. Current response for a voltage step applied to the armature circuit.

up to 63%
of the step
regime
and checking
Figure Marking
6. Current response
for a voltage
appliedvalue
to the armature
circuit.

the corresponding time on the


Markingaxis,
up to
the constant
regime value
and checking
the corresponding
time on the
horizontal
one63%
has of
a time
a. Results,
from Figure
4.
axis,
a timevalue
constant
. Results, from
Figure 4.
Markinghorizontal
up to 63%
of one
the has
regime
andachecking
the corresponding
time on the horizontal

axis, 
yields the time constant a, as shown
4.
inFigure
  (16)
=
 = 1 + +  (16)
1 + +

eV
-iu (equation 15). One has a motor with the rotor
Given an interpretation to the constant
ia =
Vi
Given an interpretation to the constant
Vi (equation
15). One has a motor with the rotor (16)
locked and with rated voltage applied
armature.
1to+the
+ST
a
locked and with rated voltage applied to the armature.



= V (17)
Considering
an interpretation of the constant
(equation 15) results in a motor with the rotor


=
i (17)

locked and with a rated


voltage
applied
to
the
armature.




=
(18)
 =

 (18)

E
I AK = N
(17)
Ra
E
I AK
= N
IN
Ra I N

(18)

107

108

Fuzzy Logic - Tool for Getting Accurate Solutions

Comparing (18) e (15), results in :


I AK = Vi I N

(19)

Comparing (18) e (15), results:


 =   (19)
.The Vi factor can be interpreted as the multiplying factor of the rated current for gaining a
current
with
rotor locked when nominal voltage is applied to the armature circuit (starting
Soon, the
Vthe
i factor can be interpreted as the multiplying factor of the rated current for
current
pu).(18)with
getting
aincurrent
theresults:
rotor locked, when nominal voltage is applied to the armature
Comparing
e (15),
circuit
(starting
current
in
pu).

= series
  (19)
Figure 7 shows a schematic diagram ofthe
DC motor with rated flow and considering
. normalized magnitudes (pu).
the

Soon,7the
Vi factor
can be interpreted
multiplying
of the
current
Figure
shows
the schematic
diagramasofthethe
series DCfactor
motor
withrated
rated
flow,forand
getting a current
with the magnitudes(pu).
rotor locked, when nominal voltage is applied to the armature
considering
the normalized
circuit (starting current in pu).
Figure 7 shows the schematic diagram of the series DC motor with rated flow, and
considering the normalized magnitudes(pu).

Figure 7. Schematic block diagram of the series DC motor.


Figure 7. Schematic block diagram of the series DC motor.

3. Complete block diagram with inclusion of regulators filters and transducers


Figure 7. Schematic block diagram of the series DC motor.

Figure 8 shows the controlled drive complete block diagram.

3. Complete block diagram including regulators, filters and transducers


3. Complete block diagram with inclusion of regulators filters and transducers

Figure 8 shows the controlled drive complete block diagram.

Figure 8 shows the controlled drive complete block diagram.

Figure 8. Controlled drive complete block diagram.


Where:
Figure
8. Controlled drive complete block diagram.
8. Controlled drive complete block diagram.
Figure
gs1: Filter time constant of the reference channel of the speed loop;
Where:
: Filter time constant of the reference channel of the current loop;
gs2Where:
VRN
: Gain
the constant
speed regulator;
gs1
: Filteroftime
of the reference channel of the speed loop;
: Filter
constantregulator;
of the reference channel of the current loop;
VRigs2
: Gain
of time
the current
of theof
speed
regulator;
n:VTime
constant
the speed
regulator;
RN: Gain
of the of
current
regulator;
Ri: Gain
i: VTime
constant
the current
regulator;
: Timetime
constant
of theofspeed
regulator;
gn:nFilter
constant
the speed
transducer;
i: Time constant of the current regulator;
gn: Filter time constant of the speed transducer;

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

gs1: Filter time constant of the reference channel of the speed loop
gs2: Filter time constant of the reference channel of the current loop
VRN: Gain of the speed regulator
VRi: Gain of the current regulator
n: Time constant of the speed regulator
i: Time constant of the current regulator
gn: Filter time constant of the speed transducer
gi: Filter time constant of the current transducer
ss: Time constant of the firing circuit
Vs: Gain of the static converter
The regulators in Figure 8 were considered as PI (proportional integral) type and its parameters
will be determined by the design procedure.

4. Design of the current regulator and filters of the current control loop
Figure 9 illustrates the current regulation loop.
Series DC motor data:
- Power: 1.7 [KW]
- Current: 7.72 [A]
- Speed: 1500 [rpm] (Rated)
- No load speed: 1770 [rpm]
- Voltage: 220 [V]
- Ra = 7.0 [] (Total resistance of the armature circuit)
- La = 490 [mH] (Total inductance of the armature circuit, including the smoothing reactor)
- H = 1.2 s - (Accelerating time constant)
The current transducer is a diode bridge that supplies resistors connected to the AC (alternat
ing current) side and feeds through the secondary current transformers (CTs), 30/5 [A]. Figure
10 shows the current transducer.
A current hall sensor can also be used as current transducer in DC side.
Where: Ld: Smoothing reactor inductance

109

110

- No load speed: 1770 [rpm]


- Voltage: 220 [V]
- Ra = 7.0 [] (Total resistance of the armature circuit)
- La
= -490
(Total
inductance
Fuzzy
Logic
Tool[mH]
for Getting
Accurate
Solutionsof the armature circuit, including the smoothing
reactor)
-  = 1.2 - (Accelerating time constant)

Figure 9. Current regulation loop.

Figure 9. Current regulation loop.

The current transducer is a diode bridge, supplying resistors, connected to the


AC(alternating current) side and feeding through the secondary of current transformers
(CTs), 30/5 [A]. Figure 10 shows.

Figure 10. Current transducer


Figure 10. Current transducer.

Where: Ld : Smoothing reactor inductance.


Ls: Series field inductance
Ls: Series
field inductance
The Vi signal (current transducer), has, as know, a (1/6 ) of cycle ripple wave. It should
The V
i signal (current transducer) has, as is known, a (1/6) cycle ripple wave. It should have:
have:
1 

2  

1 Period
t gi
2
N o ofpulses
For 60 [Hz], period of 16.7 [ms], and six pulse
bridge, it is adopted:
gi

= 1.5 [ms]

The firing circuit cannot instantly respond to the change in the firing angle . This time
constant can vary by the range of zero to one sixth of a cycle. The value ss= 2,5 [ms], will
be used. The time constant a, was obtained measuring La and Ra.
a =

La

= 70 [ms ]

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

For 60 [Hz], a period of 16.7 [ms] and six pulse bridges, the following is adopted:
gi = 1.5 ms
The firing circuit cannot instantly respond to the change in the firing angle . This time constant
can vary by a range of zero to one sixth of a cycle. The value ss = 2.5 [ms] will be used. The
time constant a was obtained measuring La and Ra.

ta =

La
= 70 [ms]
Ra

This constant has been calculated taking into account the total inductance La in the series with
the armature circuit, which corresponds to the inductances of machine (armature, interpoles
and series field) added to the inductance of the external smoothing reactor.
The Vi constant is equal to:
Vi =

En
= 4.07
Ra I a

The Vs gain of the converter is obtained, as follows:


E = 1.35U 2 sina
Being U2, the AC supply voltage of converter bridge is:
dE
= -1.35U 2 sina
da

Multiplying member by member by E , results:


N
E
d

EN = -1.35 U 2 p sina
EN
d (a / p )
The value of U2 is determined for the DC side-rated voltage as being equal to (220V), consid
ering the value of the firing angle at 30. This procedure results in U2 = 188 [V].

111

112

Fuzzy Logic - Tool for Getting Accurate Solutions

Also:
de
188
= -1.35
p sina
da 2
220

(20)

de
= -1.15p sina
da u

Being As the value in (pu) of the firing angle , is equal to u =

Results:

Vs =

de
= 1.15p sina
da 2

When = 90 the maximum gain is:


p / a = 90o = 1.15p
Vs1 =

de
da 2

For = 30, gain is given by:


p / a = 30o = 1.15 p 0.5
Vs2 =

de
da 2

The average gain, Vs, can be determined as:


Vs = 2.71

(21)

The current regulation system gain is then obtained as:


Vsia = Vs Vi = 2.71 4.07 = 11.03
The sum of the small time constants is:

s = t ss + t gi = 4 [ms]

(22)

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

The relationship

= 4.37 > 1

According to Table 6.3 (pp 339) in Introduction to Electronic Control (Spanish) [4] by Friedrich
Frhr and Fritz Orttenburguer, the regulator type PI should be used (designed by type cake
recipe).
According to Table 6.4 (pp 341) of the same text, the gain and the time constant of the regulator
can be obtained thus:
VRi =

t i = 4s

ta

2Vsias

= 0.8

ta
= 13.66 ms
t a + 3s

(23)

(24)

The time constant value of the reference channel filter in [ms] is:
t

- a
4s - 1
= 15.84 ms
t gs 2 = 4s 1 - e

(25)

Thus, in summary:
CURRENT REGULATOR
- Type: PI
- Gain: VRi = 0.8
- Time constant i = 13.66 [ms]
- Time constant value of the reference channel filter, gs2 = 15.84 [ms]
- Time constant value of the feedback channel filter, gi = 1.5 [ms]

5. Design of the regulator and filters of the speed control loop


5.1. Design of the speed regulator
The current loop will be replaced by a corresponding retarder block of the first order, whose
time constant, according to [4] is obtained thus:
1
t e = 2s + t gs 2 = 15 ms
2

(26)

113

114

Fuzzy Logic - Tool for Getting Accurate Solutions

This results in a block diagram for the speed control loop as shown in Figure 11.

Thus, results the block diagram of the speed control loop, as shown in Figure 11.

nREF

1
1+ ST gS1

MOTOR
MECHANICAL
BLOCK

CURRENT
LOOP

SPEED
REGULATOR

FILTER

ia
VR N

1
1+ STe

1+ STn
STn

nu
-

b
tC

1
STH

FILTER

1
1+ STgn

Figure 11. Speed loop regulation


Figure 11. Speed loop regulation.

A speed transducer filter will be needed, for which the time constant is adopted as:.

A speed transducer filter will be needed, for which the following time constant is adopted:

gn 100 [ms ]
In the speed regulation loop, there aretthe
=time
100 [constants:
ms]
gn
1.2
15
100

In the

The speed regulation loop contains the following time constants:

The small time constants e e gn, will


grouped
by an equivalent time constant .
s
= 1.2
t H be
t e = 15 ms
115
t gn = 100 ms

The relationship,

4.56

1 and in accordance with Table 6.3 [4], a PI

The
small
time constants
e gn,
will be grouped
by anrecipe).
equivalent time constant :
type
regulator
should beeused
(designed
by type cake

According to Table 6.4 [4] the gain


the
constant
ms of the regulator are:
s ' and
=t +
t time
= 115
e

gn

2
5.2 27
The
relationship,
and in accordance
with Table 6.3 [4], a PI type regulator should
> 1constant,
4 ' = 4.56
The
speed regulator
time
is:
4 cake 460
be used (designed by type
recipe). 28
H

According
Table
6.4 [4] refernce
the gain and
time constant
of the channels
regulator filters
are:
5.2 Designtoof
the speed
andthe
transducer
feedback

The speed transducer is a DC tachogenerator


t H coupled to the shaft of the DC motor. It has
=
= 5.2
(27)
been used a filter due to the rippleVwave
of the
tachogenerator output voltage. The adopted
RN
2s '
time constant is:

100
29

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

The speed regulator time constant, is:

t n = 4s ' = 460 ms

(28)

5.2. Design of the speed reference and transducer feedback channels filters
The speed transducer is a DC tachogenerator coupled to the shaft of the DC motor. A filter is
used due to the ripple wave of the tachogenerator output voltage. The adopted time constant
is:

t gn = 100 ms

(29)

The speed reference channel filter has the following time constant value [4]:

t gs1 = 4s ' = 460 ms


Thus, in summary, one has:
SPEED REGULATOR
- Type: PI
- Gain: VRN = 5.2
- n = 460 [ms]
- Time constant value of the reference channel filter, gs1 = 460 [ms]
- Time constant value of the feedback channel filter, gn = 100 [ms]

6. Ramp type firing circuit


The firing system used is a ramp type, implemented with the TCA 780 integrated circuit and
manufactured by Siemens, as shown in Figure 12.
The intersection of the DC level with a ramp, which is internally generated in the TCA 780
integrated circuit, produces the pulses. Voltage VCC is the output of the current regulator, as
shown in Figure 8. Three TCA 780 integrated circuits were used to produce six firing pulses
for the thyristorized GRAETZ converter bridge, which are P1 and P2 for thyristors 1 and 4, P3
and P6, for thyristors 3 and 6 and P5 and P2 for thyristors 5 and 2, respectively. This process
explains the firing circuit pulse generation stage. The other pulses include: enlargement of
pulses, galvanic isolation of pulses and pulse amplification, the circuit description and
explanation for which were not the objective of this work.

115

p type firing circuit

116 Fuzzy Logic - Tool for Getting Accurate Solutions


ing system
used is ramp type, implemented with the TCA 780 integrate
tured by Siemens. Figure 12 shows:

12 : RampFigure
type
firing circuit
12. Ramp type firing circuit.

7. Control using fuzzy logic


rsection of
the DC level with a ramp, which is internally generated in the
d circuit,This
produce
pulses.
Voltage
is the output of the current reg
procedure the
is based
on research
provided inVCC
[10].
n Figure 8.
Three TCA 780 integrated circuits should be used to produce
7.1. Fuzzy regulator
or the thyristorized GRAETZ converter bridge, which are P1 and P2
With the objective of understanding how this type of regulator works, it is helpful to under
s 1 and 4;stand
P3theand
P6, for the thyristors 3 and 6; and P5 and P2, for the thy
basics of fuzzy logic. Based on the theory of the fuzzy sets proposed by ZADEH in
1965This
[9], thisistype
has proven to of
be one
the most circuit
interesting pulse
technologies
for
spectively.
theof logic
explanation
theof firing
generation
st
application in sophisticated control systems, providing a simple approach to decreasing costs
es are: enlargement
of pulses, galvanic isolation of pulses and pulse ampl
and increasing the efficiency of such systems.
rcuit description
and explanation are not the objective of this work.
This chapter provides an introduction to this technology in the controlled drive of a DC
machine with series excitation aimed at speed control and current limitation. According to [8],
this type of system (a non-linear process) is better controlled with fuzzy controllers as opposed
to conventional compensators.

ol using fuzzy logic


rocedure is based according to reference [10].
7.2. Fuzzy control

The theory for control using fuzzy logic characterizes the variables of interest through
y regulator
linguistic expressions such as very large, large, small, hot, cold, etc. These linguistic
expressions are numerically represented by fuzzy sets, each set being characterized by a
pertinence function varying from 0 to 1. The fuzzy control algorithm performs control actions
written in terms of these imprecise ideas. The input variables of the fuzzy controller considered
of interest (current regulator) are obtained by:

e objective to understand how this kind of regulator works, it is conv


nd a little of the Fuzzy Logic. Based on the theory of the fuzzy sets pro
in 1965 [9], this logic has shown to be one of the most interesting technol
IE ( k ) = I ( k ) - I ( k )
on in sophisticated control systems,
providing a simple way to(30)decrease
the efficiency of such systems.
PE ( k ) = GEi IE ( k )
(31)
hapter proposes the introduction
of this technology in the controlled
drive
with series excitation aiming at the speed control and current li
real

ref

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

IIE ( k ) = IIE ( k - 1) + GVi IE T

(32)

Where IE(k) = Error of current; IIE(k) = Current error integral


PE(k) = Proportional error
GEi = Proportional gain; GVi = Integral gain (inverse of the regulator time constant)
Ireal(k) = Feedback current
Iref(k) = Reference current
u(k) (see program listing) = Vcc = Output control;
k = Sampling interval
T = Sample time
The pertinence functions are shown in Figure 13; variables are expressed in pu,. The universe
is adopted according to operational conditions.
Each control and action variable is decomposed into a set of fuzzy sets called labels. Generally,
each label or fuzzy subset has an asymmetric form, with a trend toward a larger concentration
close to the origin of cartesian axis. This allows for greater precision in the control close to the
steady operation point.
The number of labels associated with one given variable must be an odd number between 5
and 9. Additionally, the end of each label must overlap those of neighbouring labels. This
overlapping provides the fuzzy controller with continuous and steady action. The overlapping
must be between 10 and 50% of the neighbouring area and the sum of the vertical points of
the overlapping must preferably be less than 1.
The control does not require an accuracy modelling. The model can be unknown or badly
defined.
The components of a conventional and of a fuzzy control system are more or less similar. The
differences reside in the fact that in the fuzzy system, there is an element that converts the
inputs into their fuzzy representations, i.e., the fuzzifier and another that converts the fuzzy
outputs inferred into a solution, a numerical and precise value, i.e., the defuzzifier. In a fuzzy
system, the value of an input is converted by the fuzzifier. Afterwards, control rules that are
met are performed. This process produces a new fuzzy set representing each output or variable
solution. The defuzzifier creates a value for the variable output of this new fuzzy set. The
output value actuates the physical system. The change is picked up by a sensor and the control
is restarted.
The fuzzy variables are defined at a numerical interval commonly called the universe of
discourse. The fuzzy rules are typically of the conditional form IF-THEN, as follows:

117


118

"x" is A and "y" is B THEN "z" is C

Fuzzy Logic - Tool for Getting Accurate Solutions

nd y are fuzzy variables


and A, B, and C are fuzzy subsets
in
IF ( " x" is A and "y" is B ) THEN ( "z" is C )
(33)
Y, Z respectively. If the condition expressed in the rule is met,
Where x and y are fuzzy variables and A, B and C are fuzzy subsets in the universe of
erformed.
To X,design
a fuzzy
atheseries
discourse
Y and Z, respectively.
If the controller,
condition expressed in
rule is met,of
thenrules
the actionmust be
specified is performed. To design a fuzzy controller, a series of rules must be built.
e, the error
(IE), the error integral (IIE) and the control sig
In this case, the error (IE), the error integral (IIE) and the control signal (V ) are considered
zzy variables,
with
possible
values
given
by
pertinence
fuzzy variables,
with possible
values given
by pertinence
functions
() to
fuzzy sets such as functio
small positive, small negative, zero and so on.
mall positive, small negative, zero, and so on.
The pertinence functions for the error variable can be represented according to Figure 13.
nce functions for the error variable might be represented acco
CC

LN

SN

Lage
Negative

SP

Small
Small
Zero
Positive
Negative

LP

Lage
Positive
Universe

presentation of the typical pertinence functions for a fuzzy varia


Figure 13. Representation of the typical pertinence functions for a fuzzy variable.

7.3. Design of the fuzzy controller Current regulator

the fuzzy
controller Current regulator
Figure 14 shows a representation of the pertinence functions.
The elaboration of rules can be based on the intuition and experience of the designer. The
number of rules is related to the number of control variables. For the case under study, there
were two control variables, each divided into five fuzzy subsets, producing 25 possible input
Error
(IE)some care must be taken regarding the
combinations. Thus, 25 rules may be Current
necessary.
Here,
number of rules. As each rule represents a part of the knowledge presented, eliminating rules
implies
omitting information.
The fuzzy controller is designed with the
LN
SN
LP
SPhelp of a control
Z
algorithm that considers fuzzification and defuzzification, as well as and all the rules all other
rules pertaining to ****. Table 1 shows the base rules adopted for the current fuzzy control in
a matrix format.

ows representation of the pertinence functions.

-1.5

-1.0

1.0

1.5

Integral of the Current Error (IIE)


LN

SN

SP

LP

gure 13. Representation of the typical pertinence functions for a fuzzy variable.

3 Design of the fuzzy controller Current regulator

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

119

Figure 14 shows representation of the pertinence functions.


Current Error (IE)
LN

-1.5

SN

-1.0

LP

SP

1.0

1.5

Integral of the Current Error (IIE)


LN

-1.5

SN

-1.0

1.0

Control Signal (V
LN

-1.5

SN

CC

1.5

)
LP

SP

-1.0

LP

SP

1.0

1.5

Figure 14. Representation of the pertinence functions.

gure 14. Representation of the pertinence functions.


(IE)

(Vcc)

LN

SN

ZE

SP

LP

The elaboration of the rulesLNcan be based


on intuition
and
experience
ofZEthe designer. T
LN
LN
LN
SN
umber of rules is
related to the
of control
For ZE
the caseSPunder study, th
(IEE)
SN numberLN
LN variables.
SN
e two control variables, each
divided into
5 fuzzy
subsets,
producing
25 possi
ZE of them LN
SN
ZE
SP
LP
SP
SN
ZE
SP
LP
LP
put combinations. Thus, 25 rules can be necessary. Here, some care must be taken ab
LP
ZE
SP
LP
LP
LPeliminating ru
e number of rules. As each
rule represents
part of the
knowledge,
Where: LN = Large Negative; SN = Small Negative; ZE = Zero; SP = Small Positive; LP = Large Positive.
Table 1. Base rules for the current fuzzy control.

As illustrated in Figures 13 and 14, an input numerical value can be a member of more than
one fuzzy set. For this, it is sufficient for the value to be situated in an overlapping region. So
it means that, for a specific pair of values IE and IIE, more than one rule can be activated.
Therefore, the existence of a means for combining the control actions activated by each rule is
required so that a simple but significant action can be performed by combining all of these
rules. This is the function of the defuzzifier. There are several methods for transformation of
the output fuzzy set into a precise value, the latter representing the solution. The centroid
method is well-indicated for control systems. Using this method, we can calculate the gravity

120

Fuzzy Logic - Tool for Getting Accurate Solutions

centre of the activated fuzzy rules, producing a result that is sensitive to all rules and which
tends to dislocate itself smoothly through the control surface. The defuzzification by the
centroid method selects the output as a value corresponding to the gravity centre of the output
pertinence function as is given by (34) as:

xm ( x ) .m ( x ) dx =
m ( x ) .m ( x ) dx

X0 =

x m ( IEi ) .m ( IIEi )

i =1 i
n

m ( IEi ) .m ( IIEi )
i =1

(34)

Where:
Vcc = X0 = Gravity centre of the output pertinence function
xi = Gravity centre of the output pertinence function activated by each rule
(xi) = Pertinence function activated by each rule
7.4. Design of the fuzzy controller Speed regulator
Similar to the current regulator, a diffuse speed regulator can be selected. The variables are
the speed error, its integral and the regulator output information, which provides the input of
the current regulator. The error of this grid will be the difference between the speed reference
(nref) and the real speed (nreal). Corresponding pertinence functions are defined for the speed
grid variables. The rules table can be similar to the current grid (Table 1), as it is a standard for
several types of fuzzy controller applications. The scale factors (or gains) of a diffuse controller
for the speed grid can be termed as GEn and GVn, respectively.

8. Experimental results
The data input parameters for digital control fuzzy regulators were as follows.
Speed regulator
Gen = 5.2 (proportional gain The practice adjusted value was 4.0. GVn = 2.17 (integral gaininverse of the integral time constant n); digital filter of the reference value time constant =
Tgs1 = 460 [ms] (used only for digital control using conventional PI regulators).
Filter of the speed feedback transducer (analogical) time constant = Tgn = 100 [ms] (imple
mented with RC components for both controls as digital fuzzy regulators and conventional
ones).
Current regulator
GEi = 0.8 (proportional gain). The practice adjusted value was 0.1. GVi = 73.2 (integral gaininverse of the integral time constant i); digital filter of the reference value time constant =
Tgs2 = 15.84 [ms] (used only for digital control using conventional PI regulators).

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

Filter of the current feedback transducer (analogical) time constant = Tgi = 1.5 [ms] (imple
mented with RC components, for both controls, as digital fuzzy regulators and conventional
ones).
The dynamic behaviour of the controlled drive was verified. The current limiting was adjusted
to 1.20 [pu]. The graphs of illustrations were provided with scales and locations: current (top)1 division = 5.5 [A]; speed (bottom)- 1 division = 1000[rpm]; time/div.= 2.5[s].
The machine data were: 1.7[kW], 220[V], 7.72 [A], 1500[rpm].
Figure 15 shows the machine speed and current response during start-up and for a load
disturbance torque of 0.33 pu, negative and positive, respectively, using conventional digital
PI regulators. The perfect current limiting and speed regulation could then be observed.
Figure 16 shows the machine current and speed response when the negative and positive steps
of 0.33 pu in the speed reference set point occurred, respectively, using conventional digital
PI regulators.
Figure 17 shows the response of the machine speed and current during start-up and for a load
disturbance torque of 0.33 pu, negative and positive, respectively, using digital PI fuzzy
regulators. The perfect current limiting and speed regulation could then be observed.
Figure 18 shows the machine current and speed response when negative and positive steps of
0.33 pu in the speed reference set point occurred, respectively, using digital PI fuzzy regulators.

Figure 15. Machine current and speed during start-up and for a load disturbance torque of 0.33 pu, negative and posi
tive, respectively, using conventional digital PI regulators.

121

122

Fuzzy Logic - Tool for Getting Accurate Solutions

Figure 16. Machine current and speed when a negative and positive step of 0.33 pu in the speed reference set point
occurred, respectively, using conventional digital PI regulators.

Figure 17. Machine current and speed during start-up and for a load disturbance torque of 0.33 pu, negative and posi
tive, respectively, using digital PI fuzzy regulators.

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

Figure 18. Machine current and speed when a negative and positive step of 0.33 pu in the speed reference set point
occurred, respectively, using digital PI fuzzy regulators.

9. Conclusion
The experimental results obtained in the laboratory for the present study were satisfactory.
The control with fuzzy regulators for the driving of a DC machine with series excitation was
shown to be stable and efficient.
The most significant contribution of this work is the experimental implementation of fuzzy
regulators in the control application of a non-linear DC series-motor drive. The system is
simple to implement, for both DC motors and AC machines, replacing the traditional analogue
controllers and allowing for an inexpensive and simple design. A comparison of dynamic drive
performance showed that when conventional digital PI and fuzzy regulators were used, a
response to steps in load torque (load disturbance torque) and in the speed reference set point
was less oscillatory that when digital PI fuzzy regulators were employed, and comparatively
so when digital conventional PI regulators were used. In fact, fuzzy logic control was extremely
efficient for controlling non-linear systems [7].
Due to the wide flexibility offered by this type of control, the developed technique and the
used equipment outlined in this paper can also be used to control other types of general
systems.

123

124

Fuzzy Logic - Tool for Getting Accurate Solutions

Appendix
CONTROLED DC MOTOR DRIVE PROGRAM USING FUZZY LOGICS (PI-FUZZY) REGULATORS:
/*
*******************************************************************************
*************
* Program
: PI Fuzzy Controller
*
* Description
: Digital control actuator for a series DC motor using a *
* PCL-711B card
*
* Version
: 2
*
* Date
: 25/07/2014
*
*************************************************************************
*/
include <stdio.h>
#include <conio.h> /* Accept directives, including codes*/
#include <stdlib.h> /* of sources, of others */
#include <dos.h> /* programs and directories. */
#include <timer.h> /* program timer */
#include <math.h> /* math functions */
/* Global Variables Declaration */
extern "C" pcl711(int, unsigned int *); /* Includes Function "pcl711"
integer defined, unsigned in a separate module using "C" language*/
unsigned int param[60];
/* Definition of an array of data that make up the
table and unsigned integer parameters */
unsigned int datain[200], dataout[200]; /* 10 integer data Buffer +
for conversion*/
unsigned int far * datin, * datout;
/* Above data buffer address
- pointer type integer and long:
2 words with range of 1Mbyte */
int tecla,i, cont1, cont2=0;
/* Keyboard reading variables
and number of channels */
/* Variables and control floating points */
float nRef= 1.00, nReal=0.0, ne=nRef, iRef, iR,ie, iReal=0.0 , ilim=1.2;
float a1, a2, b1, b2, b3, b4;
float DataBuf[3];
float Vc1, e, v , Vi1=0.0, j, dd1 ,u1 , Gv1 = 5.2, Ge1=2.17, dt=0.003;
float
ceNL=-1.2, ceNS=-1.0, ceZE= 0.0, cePS= 1.0, cePL= 1.2,
beNL= 1.0, beNS= 1.0, beZE= 1.0, bePS= 1.0, bePL= 1.0,
cvNL=-1.2, cvNS=-1.0, cvZE= 0.0, cvPS= 1.0, cvPL= 1.2,
bvNL= 1.0, bvNS= 1.0, bvZE= 1.0, bvPS= 1.0, bvPL= 1.0,
caNL=-1.2, caNS=-1.0, caZE= 0.0, caPS= 1.0, caPL= 1.2,
ueNL, ueNS, ueZE, uePS, uePL,
uvNL, uvNS, uvZE, uvPS, uvPL;
float r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16,
r17, r18, r19, r20, r21, r22, r23, r24, r25;
float Vc2,e2,v2, Vi2=0.0, dd2, Gv2 = 0.8 , Ge2 = 73.2 , u2 ;
float
ceNL2=-1.5, ceNS2=-1.0, ceZE2= 0.0, cePS2= 1.0, cePL2= 1.5,
beNL2= 1.0, beNS2= 1.0, beZE2= 1.0, bePS2= 1.0, bePL2= 1.0,

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

cvNL2=-1.5, cvNS2=-1.0, cvZE2= 0.0, cvPS2= 1.0, cvPL2= 1.5,


bvNL2= 1.0, bvNS2= 1.0, bvZE2= 1.0, bvPS2= 1.0, bvPL2= 1.0,
caNL2=-1.5, caNS2=-1.0, caZE2= 0.0, caPS2= 1.0, caPL2= 1.5,
ueNL2, ueNS2, ueZE2, uePS2, uePL2,
uvNL2, uvNS2, uvZE2, uvPS2, uvPL2;
float r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39,
r40, r41,
r42, r43, r44, r45, r46, r47, r48, r49, r50;
/* Variable Declaration void means it does not return a value */
void conv_ad(void);
void conv_da(void);
void control1(void);
void control2(void);
void teclado(void);
/* Analog, Digital Conversion Subroutine */
void conv_ad()
{
unsigned int i;
/* Pointer Memory space Variable that contains an address, */
/* usually another variables address." */
datin = datain; /* Assigns the equivalent value to the datin pointer... datain variable */
param[0] = 0; /* Card number */
param[1] = 0x220; /* I/O Base Address */
/* sampling frequency = card base frequency /(C1 * C2) */
/* 2M / (10 * 10) = 20 kHz */
param[5] = 10; /* Constant divisor C1 */
param[6] = 10; /* Constant divisor C2 */
param[7] = 0; /* Mode Trigger, 0 : pacer trigger
Allows D/I functions
*/
/* Buffer Offset, memory address (Buffer) where data will be stored, Segment,
data Buffer length
*/
param[10] = FP_OFF(datin); /* A/D Buffer A Offset */
param[11] = FP_SEG(datin); /* A/D Buffer A Segment */
param[12] = 0; /* Buffer B Addresss (unused)*/
param[13] = 0; /* Segment- Unused, set to 0 */
/* The A/D conversion covers two input channels, channel 1 current, and channel 0 speed, with values in pu adjusted in +/- 5 V */
param[14] = 2; /* Number of A/D conversions */
param[15] = 0; /* Channel of the A/D conversion initiation*/
param[16] = 1; /* Stop A/D conversion channel*/
param[17] = 0; /* Channel gains, 0 : +/- 5V */
/* conversion A/D fault indication*/
pcl711(3, param); /* Function 3 : Hardware initialization */
if (param[45] != 0) { /* If parameter 45 is different from 0, do: */
clrscr(); /* Clear screen */
printf("\n DRIVER INITIALIZATION FAILED!"); /* Print */
getch(); /* Shows exit screen */
exit(1); /* Closes loop and exit with status 1 - Error */
}
pcl711(4, param); /* Function 4 : Conversor A/D initialization*/

125

126

Fuzzy Logic - Tool for Getting Accurate Solutions

if (param[45] != 0) {
clrscr();
printf("\n A/D INITIALIZATION FAILURE!");
getch();
exit(1);
}
pcl711(5, param); /* Function 5 : verification of the number of A/D conversions */
if (param[45] != 0) {
clrscr();
printf("\n A/D DATA TRANSFER SOFTWARE FAILURE!");
getch();
exit(1);
}
/* A/D Conversions */
for (i = 0; i < param[14]; i++) /* Sampled data channels 0 e 1 */
{
DataBuf[i] = datain[i] & 0xFFF;
/* Data collect for the buffer on the address 0xFFF
(the first three hexadecimal digits can be reset because the
remaining, are sufficient to support 4096 binary digits) */
DataBuf[i] =((5.0 - (-5)) * DataBuf[i] / 4096) + (-5);
/* conversion so that the voltage signal is available for the recursive
control equations
(5 - (-5)) : Input range A/D (-5V to 5V)
4096 : Scale range of the A/D - 12 bit
DataBuf : Input data of the A/D
(-5) : Beginning of the scale of the A/D "-5" V
*/
}
/* Feedback voltage reading for the speed and current loops, under nominal
load and speed.*/
/* speed signal conversion correction to pu*/
nReal=(DataBuf[0]/1.500);
/* current signal conversion - correction to pu */
iReal=(DataBuf[1]/1.493);
}
void control1()
{
ne = nRef - nReal ; /* Erro */
Vi1 = Vi1 + Gv1*ne*dt; /* Error integral */
if (Vi1 <cvNL) Vi1 = cvNL ; /* Limits */
if (Vi1 >cvPL) Vi1 = cvPL ;
e = Ge1 * ne ;
v = Vi1 ;
teclado(); /* Performs the subroutine that inspects the keystroke */
/* Fuzzification : Triangular Functions */
/* Analyzing with respect to "e" */
if ( ( ( ceNL - beNL ) <= e ) && ( e <= ( ceNL + beNL ) ) )
ueNL = 1.0 - ( fabs( ceNL - e) ) / beNL ;
elseueNL = 0.0 ;
if ( e <ceNL )

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

ueNL = 1.0 ;
if ( ( ( ceNS - beNS ) <=
ueNS = 1.0 - ( fabs( ceNS
elseueNS = 0.0 ;
if ( ( ( ceZE - beZE ) <=
ueZE = 1.0 - ( fabs( ceZE
elseueZE = 0.0 ;
if ( ( ( cePS - bePS ) <=
uePS = 1.0 - ( fabs( cePS
elseuePS = 0.0 ;
if ( ( ( cePL - bePL ) <=
uePL = 1.0 - ( fabs( cePL
elseuePL = 0.0 ;
if ( e >cePL)
uePL = 1.0 ;
/* Analyzing with respect
if ( ( ( cvNL - bvNL ) <=
uvNL = 1.0 - ( fabs( cvNL
elseuvNL = 0.0 ;
if ( v <cvNL)
uvNL = 1.0 ;
if ( ( ( cvNS - bvNS ) <=
uvNS = 1.0 - ( fabs( cvNS
elseuvNS = 0.0 ;
if ( ( ( cvZE - bvZE ) <=
uvZE = 1.0 - ( fabs( cvZE
elseuvZE = 0.0 ;
if ( ( ( cvPS - bvPS ) <=
uvPS = 1.0 - ( fabs( cvPS
elseuvPS = 0.0 ;
if ( ( ( cvPL - bvPL ) <=
uvPL = 1.0 - ( fabs( cvPL
elseuvPL = 0.0 ;
if ( v >cvPL )
uvPL = 1.0 ;
/* Logical Implications
r1 = ueNL * uvNL ;
r2 = ueNL * uvNS ;
r3 = ueNL * uvZE ;
r4 = ueNL * uvPS ;
r5 = ueNL * uvPL ;
r6 = ueNS * uvNL ;
r7 = ueNS * uvNS ;
r8 = ueNS * uvZE ;
r9 = ueNS * uvPS ;
r10 = ueNS * uvPL ;
r11 = ueZE * uvNL ;
r12 = ueZE * uvNS ;
r13 = ueZE * uvZE ;
r14 = ueZE * uvPS ;
r15 = ueZE * uvPL ;
r16 = uePS * uvNL ;

e ) && ( e <= ( ceNS + beNS ) ) )


- e ) ) / beNS ;
e ) && ( e <= ( ceZE + beZE ) ) )
- e ) ) / beZE ;
e ) && ( e <= ( cePS + bePS ) ) )
- e ) ) / bePS ;
e ) && ( e <= ( cePL + bePL ) ) )
- e ) ) / bePL ;

to "v" */
v ) && ( v <= ( cvNL + bvNL ) ) )
- v ) ) / bvNL ;

v ) && ( v <= ( cvNS + bvNS ) ) )


- v ) ) / bvNS ;
v ) && ( v <= ( cvZE + bvZE ) ) )
- v ) ) / bvZE ;
v ) && ( v <= ( cvPS + bvPS ) ) )
- v ) ) / bvPS ;
v ) && ( v <= ( cvPL + bvPL ) ) )
- v ) ) / bvPL ;

Product Operator*/

127

128

Fuzzy Logic - Tool for Getting Accurate Solutions

r17 = uePS * uvNS ;


r18 = uePS * uvZE ;
r19 = uePS * uvPS ;
r20 = uePS * uvPL ;
r21 = uePL * uvNL ;
r22 = uePL * uvNS ;
r23 = uePL * uvZE ;
r24 = uePL * uvPS ;
r25 = uePL * uvPL ;
/* Defuzzification */
dd1 =
caNL*r1+caNL*r2+caNL*r3+caNS*r4+caZE*r5+caNL*r6+caNL*r7+caNS*r8+
caZE*r9+caPS*r10+caNL*r11+caNS*r12+caZE*r13+caPS*r14+caPL*r15+
caNS*r16+caZE*r17+caPS*r18+caPL*r19+caPL*r20+caZE*r21+caPS*r22+
caPL*r23+caPL*r24+caPL*r25;
u1 = dd1 /
(r1+r2+r3+r4+r5+r6+r7+r8+r9+r10+r11+r12+r13+r14+r15+r16+r17+r18+r19+
r20+r21+r22+r23+r24+r25);
//u = u/10.0 ;
if (u1 < -1.0) u1 = -ilim;
if (u1 > 1.0 ) u1 = ilim;
}
void control2()
{
/* Current Loop */
if(iRef>ilim) iRef = ilim ;
if(iRef<-ilim) iRef =-ilim ;
ie = iReal - iRef ; /* Error */
Vi2 = Vi2 + Gv2*ie*dt; /* Integral Error */
if (Vi2 < cvNL2) Vi2 = cvNL2 ; /* Limits */
if (Vi2 > cvPL2) Vi2 = cvPL2 ;
e2 = Ge2 * ie ;
v2 = Vi2 ;
/*: Triangular Functions Fuzzification */
/* Analysis in Relation to "e2" */
if ( ( ( ceNL2 - beNL2 ) <= e2 ) && ( e2 <= ( ceNL2 + beNL2 ) ) )
ueNL2 = 1.0 - ( fabs( ceNL2 - e2) ) / beNL2 ;
else ueNL2 = 0.0 ;
if ( e2 < ceNL2 )
ueNL2 = 1.0 ;
if ( ( ( ceNS2 - beNS2 ) <= e2 ) && ( e2 <= ( ceNS2 + beNS2 ) ) )
ueNS2 = 1.0 - ( fabs( ceNS2 - e2 ) ) / beNS2 ;
else ueNS2 = 0.0 ;
if ( ( ( ceZE2 - beZE2 ) <= e2 ) && ( e2 <= ( ceZE2 + beZE2 ) ) )
ueZE2 = 1.0 - ( fabs( ceZE2 - e2 ) ) / beZE2 ;
else ueZE2 = 0.0 ;
if ( ( ( cePS2 - bePS2 ) <= e2 ) && ( e2 <= ( cePS2 + bePS2 ) ) )
uePS2 = 1.0 - ( fabs( cePS2 - e2 ) ) / bePS2 ;
else uePS2 = 0.0 ;
if ( ( ( cePL2 - bePL2 ) <= e2 ) && ( e2 <= ( cePL2 + bePL2 ) ) )
uePL2 = 1.0 - ( fabs( cePL2 - e2 ) ) / bePL2 ;
else uePL2 = 0.0 ;

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

if ( e2 > cePL2)
uePL2 = 1.0 ;
/* Analysis in Relation to "v2" */
if ( ( ( cvNL2 - bvNL2 ) <= v2 ) && ( v2 <= ( cvNL2 + bvNL2 ) ) )
uvNL2 = 1.0 - ( fabs( cvNL2 - v2 ) ) / bvNL2 ;
else uvNL2 = 0.0 ;
if ( v2 < cvNL2)
uvNL2 = 1.0 ;
if ( ( ( cvNS2 - bvNS2 ) <= v2 ) && ( v2 <= ( cvNS2 + bvNS2 ) ) )
uvNS2 = 1.0 - ( fabs( cvNS2 - v2 ) ) / bvNS2 ;
else uvNS2 = 0.0 ;
if ( ( ( cvZE2 - bvZE2 ) <= v2 ) && ( v2 <= ( cvZE2 + bvZE2 ) ) )
uvZE2 = 1.0 - ( fabs( cvZE2 - v2 ) ) / bvZE2 ;
else uvZE2 = 0.0 ;
if ( ( ( cvPS2 - bvPS2 ) <= v2 ) && ( v2 <= ( cvPS2 + bvPS2 ) ) )
uvPS2 = 1.0 - ( fabs( cvPS2 - v2 ) ) / bvPS2 ;
else uvPS2 = 0.0 ;
if ( ( ( cvPL2 - bvPL2 ) <= v2 ) && ( v2 <= ( cvPL2 + bvPL2 ) ) )
uvPL2 = 1.0 - ( fabs( cvPL2 - v2 ) ) / bvPL2 ;
else uvPL2 = 0.0 ;
if ( v2 > cvPL2 )
uvPL2 = 1.0 ;
/* Logical Implications Product Operator */
r26 = ueNL2 * uvNL2 ;
r27 = ueNL2 * uvNS2 ;
r28 = ueNL2 * uvZE2 ;
r29 = ueNL2 * uvPS2 ;
r30 = ueNL2 * uvPL2 ;
r31 = ueNS2 * uvNL2 ;
r32 = ueNS2 * uvNS2 ;
r33 = ueNS2 * uvZE2 ;
r34 = ueNS2 * uvPS2 ;
r35 = ueNS2 * uvPL2 ;
r36 = ueZE2 * uvNL2 ;
r37 = ueZE2 * uvNS2 ;
r38 = ueZE2 * uvZE2 ;
r39 = ueZE2 * uvPS2 ;
r40 = ueZE2 * uvPL2 ;
r41 = uePS2 * uvNL2 ;
r42 = uePS2 * uvNS2 ;
r43 = uePS2 * uvZE2 ;
r44 = uePS2 * uvPS2 ;
r45 = uePS2 * uvPL2 ;
r46 = uePL2 * uvNL2 ;
r47 = uePL2 * uvNS2 ;
r48 = uePL2 * uvZE2 ;
r49 = uePL2 * uvPS2 ;
r50 = uePL2 * uvPL2 ;
/* Defuzzification */
dd2 =
caNL2*r26+caNL2*r27+caNL2*r28+caNS2*r29+caZE2*r30+caNL2*r31+caNL2*r32+caNS2*r33
+

129

130

Fuzzy Logic - Tool for Getting Accurate Solutions

caZE2*r34+caPS2*r35+caNL2*r36+caNS2*r37+caZE2*r38+caPS2*r39+caPL2*r40+
caNS2*r41+caZE2*r42+caPS2*r43+caPL2*r44+caPL2*r45+caZE2*r46+caPS2*r47+
caPL2*r48+caPL2*r49+caPL2*r50;
u2 = dd2 /
(r26+r27+r28+r29+r30+r31+r32+r33+r34+r35+r36+r37+r38+r39+r40+r41+r42+r43+r44+
r45+r46+r47+r48+r49+r50);
if (u2 < 0.0) u2 = 0.0;
if (u2 > 1.0) u2 = 1.0;
}
voidteclado()
{
/* The activation of these subroutine keys, allows online adjustment
system parameters, where settings are displayed on the output */
/* Keys "k" and "l" operating in the value of the reference speed */
if (tecla==108 &&nRef<1.0) nRef=nRef+0.01; /* Limited adjustment to */
if (tecla==107 &&nRef>-1.0) nRef=nRef-0.01; /* range -1.0<nRef<1.0 */
/* Keys "o" and "p" operating in the value of the reference speed */
if (tecla==112 &&nRef<1.0) nRef=nRef+0.05; /* Limited adjustment to */
if (tecla==111 &&nRef>-1.0) nRef=nRef-0.05; /* range -1.0<nRef<1.0 */
/* Keys "q" e "w" operating on the gain Gv1 */
if (tecla==119 && Gv1<99.95) Gv1 = Gv1+0.05 ;
if (tecla==113 && Gv1>0.05) Gv1 = Gv1-0.05 ;
/* Keys "s" e "d" operating on the gain Ge1 */
if (tecla==100 && Ge1< 99.95) Ge1=Ge1+0.05;
if (tecla==115 && Ge1> 0.05) Ge1=Ge1-0.05;
/* Keys "g" e "h" operating on the gain Gv2 */
if (tecla==103 && Gv2< 9.95) Gv2=Gv2+0.05;
if (tecla==104 && Gv2< 0.05) Gv2=Gv2-0.05;
/* Keys "m" e "n" operating on the gain Ge2 */
if (tecla==109 && Ge2< 9.95) Ge2=Ge2+0.05;
if (tecla==110 && Ge2> 0.05) Ge2=Ge2-0.05;
}
/* Digital-Analogic Conversion Subroutine */
voidconv_da()
{
datout=dataout; /* Assigns the equivalent value to the datout pointer
... dataout variable */
param[0]=0; /* Card number */
param[1]=0x220; /* I/O base address */
/* Buffer Offset the memory address (Buffer) where data
will be stored. Segment the length of the data buffer */
param[20] = FP_OFF(datout); /* Buffer A Offset D/A output data */
param[21] = FP_SEG(datout); /* Buffer A segment D/A output data */
param[22] = 0; /* Buffer B output address(unused) */
param[23] = 0; /* Output segment- Unused, set 0 */
param[24] = 1; /* Number of D/A conversions*/
param[25] = 0; /* D/A conversion initialization channel */
param[26] = 0; /* D/A conversion stop channel */
/* D/A conversion fault indicator */
pcl711(3, param); /* Function 3 : Hardware initialization */
if (param[45] != 0) { /* If parameter 45 different from 0, do: */
clrscr(); /* Clear screen */

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

printf("\n DRIVER INITIALIZATION FAILURE!"); /* Print */


getch(); /* Output screen display */
exit(1); /* Close loop and exit with status 1 - Error */
}
pcl711(12, param); /* Function 12: D/A conversor initialization */
if (param[45] != 0) {
clrscr();
printf("\n D/A INITIALIZATION FAILURE !");
getch();
exit(1);
}
pcl711(13, param); /* Function 13: number of D/A conversions verification*/
if (param[45] != 0) {
clrscr();
printf("\n D/A DATA TRANSFER SOFTWARE FAILURE!");
getch();
exit(1);
}
/* conversion for the output voltage signal of the recursive control equations
in pu to occupy an address space of the output data buffer. */
dataout[0]=(4095*u2); /* Base pu = 4095 */
}
/* Main program */
void main(void)
{
Timer t; /* Timer"t" */
clrscr(); /* Clear screen */
delay(500);
textbackground(4); /* Defines Red Background (4) */
gotoxy(5,2);
cprintf("FUZZY CONTROLLER FOR A DC MOTOR SPEED CONTROL: );
gotoxy(5,4);
delay(500);
cprintf(" Student : Otavio Henrique Salvi Vicentini n 9025 ");
gotoxy(5,5);
cprintf(" Advisor : prof. Angelo J. J. Rezek Date : 25/09/2014 ");
delay(500);
textbackground(1); /* Defines a Blue Background (1) */
gotoxy(1,15); cprintf(" [O] - Decreases the Speed [0.05] ");
gotoxy(40,15); cprintf(" [P] - Increases the Speed [0.05] ");
gotoxy(1,16); cprintf(" [K] - Decreases the Speed [0.01] ");
gotoxy(40,16); cprintf(" [L] - Increases the Speed [0.01] ");
gotoxy(1,17); cprintf(" [Q] - Decreases the Gain Gv1 [0.05] ");
gotoxy(40,17); cprintf(" [W] - Increases the Gain Gv2 [0.05] ");
gotoxy(1,18); cprintf(" [S] - Decreases the Gain Ge1 [0.05] ");
gotoxy(40,18); cprintf(" [D] - Increases the Gain Ge1 [0.05] ");
gotoxy(1,19); cprintf(" [G] - Decreases the Gain Gv2 [0.05] ");
gotoxy(40,19); cprintf(" [H] - Increases the Gain Gv2 [0.05] ");
gotoxy(1,20); cprintf(" [M] - Decreases the Gain Ge2 [0.05] ");
gotoxy(40,20); cprintf(" [N] - Increases the Gain Ge2 [0.05] ");
textbackground(4); /* Defines Red Background (4) */
gotoxy(13,24); cprintf(" PRESS ESC TO END PROGRAM ");

131

132

Fuzzy Logic - Tool for Getting Accurate Solutions

do
{
tecla=0;
if (kbhit()) tecla=getch(); /* Control by keyboard */
j++; /* Increases the number of interactions by 1 */
t.reset(); /* Resets the timer "t" */
t.start(); /* Starts the timer */
asm cli;
conv_ad(); /* Performs A/D subroutine conversion */
asmsti;
ne = nRef-nReal;
control1();
if(iRef<ilim&&iRef>-ilim) control1();
if(iRef==ilim&& ne<0.0) control1();
if(iRef==-ilim&& ne>0.0) control1();
iRef = u1;
ie=iReal-iRef;
if(u2<0.9 && u2>.10) control2();
if(u2>=0.9 &&ie<0.0) control2();
if(u2<=.10 &&ie>0.0) control2();
asm cli;
conv_da(); /* Performs A/D subroutine conversion */
asmsti;
if (j>=100) /* Displays instant results each 100 interactions in the screen */
{
j=0;
gotoxy(7,8);
textbackground(1);
cprintf(" Time spent : %1.6f (s)", dt);
gotoxy(7,9);
cprintf(" Channel [0] - Speed : % 1.3f (pu) Gv1 %1.3f Ge1 %1.3f " ,
nReal,Gv1,Ge1);
gotoxy(7,10);
cprintf(" Channel [1] - Current : % 1.3f (pu) Gv2 %1.3f Ge2 %1.3f " , iReal,Gv2,Ge2);
gotoxy(7,11);
cprintf(" Reference Speed : %1.2f (pu) iRef : %1.2f (pu) " , nRef,iRef);
gotoxy(7,12);
cprintf(" ne : %1.2f ie : %1.2f Vcontr : %1.2f (pu) ", ne, ie, u2);
}
t.stop(); /* Stops timer */
dt = t.time(); /* Sampling time */
} while (tecla!=27); /* Program ends when the Esc key and is pressed.*/
}
CONTROLED DC MOTOR DRIVE PROGRAM USING PI (PROPORTIONAL-INTEGRAL) REGULATORS,
USING RECURSIVE EQUATIONS DERIVED FROM Z TRANSFORM:
/*
*******************************************************************************
*******************
*
Program
: MCC Control
*
*
Description
: Digital control for a series DC motor using conventional digital

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

* PI regulators
*
*
PCL-711B board
*
*
Version
: 2
*
*
Date
: 29/09/2014
*
*******************************************************************************
********************
*/
/* Incluso de Diretivas */
#include <stdio.h>
#include <conio.h>
/* Accept directives, including codes */
#include <stdlib.h>
/* from other sources */
#include <dos.h>
/* programs and folders */
#include <timer.h>
/* Declarao de Variveis Globais */
extern "C" pcl711(int, unsigned int *);
/*Includes function "pcl711" integer defined, unsigned in module separated using language "C"*/
unsigned int param[60];
/* Defining an data array which makes up an unsigned integer parameter table */
unsigned int datain[200], dataout[200];
/* 10 integer data buffer +
for conversion*/
unsigned int far * datin, * datout;
/* Buffer address of data above
- pointer long and integer type:
2 words with 1Mbyte range */
int tecla,i;
/* Keyboard reading variables
and number of channels*/
/* Control floating point variables */
float nRef=0.72, nReal=0.0, ne=nRef;
float ne_1=0.1, nReal_1=0.0;
float iRef=1.20, iR=1.20, ie=-1.20, iReal=0.0, Ilim=1.20, iRefer=1.20;
float iRef_1=1.20, iR_1=1.20, ie_1=-1.20, iReal_1=0.0, iRefer_1=1.20;
float Tn=0.460, Tgs2=0.01584, Ti=0.01366;
float VRn=5.20, VRi=0.8, Vcc=0.1, Vcc_1=0.1, Vcontr=0.1;
float a1, a2, b1, b2, b3, b4, T=0.003;
float DataBuf[3];
/* Variable declaration void means it does not return a value */
void conv_ad(void);
void conv_da(void);
void control(void);
void control1(void);
void control2(void);
void teclado(void);
/* AD conversion Parameters table */
void conv_ad()
{
unsigned int i;
/* Pointer Memory space Variable that contains an address,
usually another variables address */
datin = datain; /* Assigns to the datin pointer the
equivalent value of datain variable */
param[0] = 0; /* Board number */
param[1] = 0x220; /* I/O base address */
/* Sampling frequency = Board base frequency/(C1 * C2) */

133

134

Fuzzy Logic - Tool for Getting Accurate Solutions

/* 2M / (10 * 10) = 20 KHz */


param[5] = 10; /* Constant divisor pacer C1 */
param[6] = 10; /* Constant divisor pacer C2 */
param[7] = 0; /* Trigger Mode, 0 : pacer trigger
Allows D/I functions
*/
/* Buffer offset the memory address (buffer) where the data
will be stored. Segment the length of the data buffer */
param[10] = FP_OFF(datin);
/* A/D Buffer A offset */
param[11] = FP_SEG(datin);
/* A/D Buffer A segment */
param[12] = 0;
/* Buffer B address (unused)*/
param[13] = 0;
/* Segment - unused, set to 0 */
/* The A/D conversion covers two input channels, channel 1 current, and channel 0 speed, with values in pu adjusted in +/- 5 V */
param[14] = 2; /* Number of A/D conversions */
param[15] = 0; /* Channel of the A/D conversion initiation*/
param[16] = 1; /* Stop A/D conversion channel*/
param[17] = 0; /* Channel gains, 0 : +/- 5V */
/* Conversion A/D fault indication*/
pcl711(3, param); /* Function 3 : Hardware initialization */
if (param[45] != 0) { /* If parameter 45 is different from 0, do: */
clrscr(); /* Clear screen */
printf("\n DRIVER INITIALIZATION FAILED!"); /* Print */
getch(); /* Shows exit screen */
exit(1); /* Closes loop e exit with status 1 - Error */
}
pcl711(4, param);
/* Function 4 : Converter A/D initialization*/
if (param[45] != 0) {
clrscr();
printf("\n A/D INITIALIZATION FAILED!");
getch();
exit(1);
}
pcl711(5, param);
/* Function 5 : Number of conversions A/D verification*/
if (param[45] != 0) {
clrscr();
printf("\n A/D DATA TRANSFER SOFTWARE FAILURE!");
getch();
exit(1);
}
/* A/D conversions */
for (i = 0; i < param[14]; i++) /* Sampled data channels 0 e 1 */
{
DataBuf[i] = datain[i] & 0xFFF;
/* Data collect for the buffer on the address 0xFFF
(the first three hexadecimal digits can be reset because the
remaining, sufficient to support 4096 binary digits) */
DataBuf[i] =((5.0 - (-5)) * DataBuf[i] / 4096) + (-5);
/* conversion so that the voltage signal is available for the recursive
equations control
(5 - (-5)) : Input range A/D (-5V to 5V)
4096 : Scale range of the A/D - 12 bit
DataBuf : Input data of the A/D

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

(-5) : Beginning of the scale of the A/D "-5" V


*/
}
/* Feedback voltage reading for the speed and current loop mesh, under nominal
load and speed.*/
/* speed signal conversion correction to pu*/
nReal=(DataBuf[0]/1.500);
/* Current signal conversion - correction to pu */
iReal=(DataBuf[1]/1.493);
}
/* Control */
/* Recursive Equations to perform functions of control */
void control()
{
/* Sampling time considered T */
a1=T/((2*Tgs2)+T);
/*Tgs2= Filter time constant */
a2=((2*Tgs2)-T)/(T+(2*Tgs2));
b1=VRn+((VRn*T)/(2*Tn));
/* VRn= Speed regulator gain */
/* Tn= Speed regulator time constant */
b2=((VRn*T)/(2*Tn))-VRn;
b3=VRi+((VRi*T)/(2*Ti));
/* VRi= Current regulator gain */
/* Ti= Current regulator time constant */
b4=((VRi*T)/(2*Ti))-VRi;
}
/* Speed Regulator */
void control1()
{
iRef=(b1*ne)+(b2*ne_1)+iRef_1;
/* nreal= Speed feedback */
iRef_1=iRef;
/* nRef= Post filter reference speed */
ne_1=ne;
/* ne= Speed error */
/* iRef= Current reference - Output
speed regulator */
/* Reference Current Filter */
iRefer=iRef;
iR=a1*(iRefer+iRefer_1)+a2*iR_1;
/* Which:
*/
iR_1=iR;
/* iR= Post filter current reference/
iRefer_1=iRefer;
/* iRef= Reference current */
if(iR>=Ilim) iR=Ilim;
if(iR<=-Ilim) iR=-Ilim;
/* Current reference limit */
}
/* Current Regulator */
void control2()
{
/* Which:
*/
Vcc=(b3*ie)+(b4*ie_1)+Vcc_1;
/* ireal= feedback current */
Vcc_1=Vcc;
/* iR= Post filter reference current */
ie_1=ie;
/* ie= Current Error- In. regulator */
if(Vcc>0.95) Vcontr=0.95;
if(Vcc<.05) Vcontr=.05;
/* Control voltage limit */
if(Vcc<=0.95 && Vcc>=.05) Vcontr=Vcc;
}
/* System parameters alteration */
void teclado()

135

136

Fuzzy Logic - Tool for Getting Accurate Solutions

{
/* The activation of these subroutine keys, allows online adjustment of system
parameters, with the settings being shown in the output screen */
/* Keys "s" and "d" operating in the value of the reference speed */
if (tecla==115 && nRef<1.0) nRef=nRef+1.44; /* Adjustment limited to */
if (tecla==100 && nRef>-1.0) nRef=nRef-1.44; /* range -1.0<nRef<1.0 */
/* Keys "k" and "l" operating in value of the reference speed */
if (tecla==107 && nRef<1.0) nRef=nRef+0.01; /* Adjustment limited to */
if (tecla==108 && nRef>-1.0) nRef=nRef-0.01; /* range -1.0<nRef<1.0 */
/* Keys "o" and "p" operating in value of the reference speed */
if (tecla==111 && nRef<1.0) nRef=nRef+0.05; /* Adjustment limited to */
if (tecla==112 && nRef>-1.0) nRef=nRef-0.05; /* range -1.0<nRef<1.0 */
/* Keys "f and v" operating in VRn gain */
if (tecla==102 && VRn<40.0) VRn=VRn+0.05;
if (tecla==118 && VRn>0.02) VRn=VRn-0.05;
/* Keys "g and b" operating on time constant Tn */
if (tecla==103 && Tn<5.00) Tn=Tn+0.05;
if (tecla==98 && Tn>0.06) Tn=Tn-0.05;
/* Keys "h and n" operating in VRi gain */
if (tecla==104 && VRi<10.0) VRi=VRi+0.05;
if (tecla==110 && VRi>0.01) VRi=VRi-0.05;
/* Keys "j and m" operating on time constant Ti */
if (tecla==106 && Ti<1.000) Ti=Ti+0.005;
if (tecla==109 && Ti>0.006) Ti=Ti-0.005;
}
/* D/A conversion Parameter table */
void conv_da()
{
datout=dataout;
/* Assigns the equivalent value to the datout pointer */
param[0]=0; /* Card number */
param[1]=0x220; /* I/O base address */
/* Buffer Offset the memory address (Buffer) where data
will be stored. Segment the length of the data buffer */
param[20] = FP_OFF(datout); /* Buffer A Offset D/A output data */
param[21] = FP_SEG(datout); /* Buffer A segment D/A output data */
param[22] = 0; /* Buffer B output address(unused) */
param[23] = 0; /* Output segment- Unused, set 0 */
param[24] = 1; /* Number of D/A conversions*/
param[25] = 0; /* D/A conversion initialization channel */
param[26] = 0; /* D/A conversion stop channel */
/* D/A conversion fault indicator */
pcl711(3, param); /* Function 3 : Hardware initialization */
if (param[45] != 0) { /* If parameter 45 different from 0, do: */
clrscr(); /* Clear screen */
printf("\n DRIVER INITIALIZATION FAILURE!"); /* Print */
getch(); /* Output screen display */
exit(1); /* Close loop and exit with status 1 - Error */
}
pcl711(12, param); /* Function 12: D/A converter initialization */
if (param[45] != 0) {
clrscr();
printf("\n D/A INITIALIZATION FAILURE !");

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

getch();
exit(1);
}
pcl711(13, param); /* Function 13: number of D/A conversions verification*/
if (param[45] != 0) {
clrscr();
printf("\n D/A DATA TRANSFER SOFTWARE FAILURE!");
getch();
exit(1);
}
/* Conversion for the output voltage signal of the recursive control equations in pu to . occupy an address space of the output data buffer. */
dataout[0]=(4095*Vcontr);
}
/* Main program */
void main(void)
/* Ensures that global variables do not return values */
{
/* Variable declarations */
int xx=0;
/* Initializes the number of interactions in 0*/
Timer t;
/* Time counter t" */
clrscr();
/* Clear screen */
gotoxy(1,10); cprintf("[S] - Invert vel. [+]");
gotoxy(40,10); cprintf("[D] - Invert vel. [-]");
gotoxy(1,11); cprintf("[O] - Increments vel. [0.05]");
gotoxy(40,11); cprintf("[P] - Decrements vel. [0.05]");
gotoxy(1,12); cprintf("[K] - Increments vel. [0.01]");
gotoxy(40,12); cprintf("[L] - Decrements vel. [0.01]");
do{
tecla=0;
if (kbhit()) tecla=getch();
xx++;
/* Increments 1 to the number of interactions */
t.reset();
/* Resets timer "t" */
t.start();
/* Starts timing */
asm cli;
conv_ad();
/* Performs the A/ D conversion subroutine */
asm sti;
control();
teclado();
/* Performs the inspecting keystroke subroutine */
ne=nRef-nReal;
if(iR<Ilim && iR>-Ilim) control1();
if(iR==Ilim && ne<0.0) control1();
if(iR==-Ilim && ne>0.0) control1();
ie=iReal-iR;
if(Vcc<0.95 && Vcc>.05)control2();
if(Vcc>=0.95 && ie<0.0 ) control2();
if(Vcc<=.05 && ie>0.0 ) control2();
asm cli;
conv_da(); /* Performs the D/A conversion subroutine */
asm sti;
if (xx>=10) {/* Prints instant results on screen every 100 interactions */
xx=0;
gotoxy(1,1);
cprintf("VRn= %1.3f Tn= %1.4f VRi= %1.3f Ti= %1.4f ", VRn, Tn, VRi, Ti);

137

138

Fuzzy Logic - Tool for Getting Accurate Solutions

gotoxy(1,2);
cprintf("Time spent: %fs ", T);
gotoxy(1,3);
cprintf("canal[%3d] = % 1.3f (pu) canal[%3d] = % 1.3f (pu) ", 0, nReal, 1, iReal);
gotoxy(1,4);
cprintf("nRef= %1.2f Vcontr= %1.2f iR= %1.4f ie= %1.2f ", nRef, Vcontr, iR,
ie);
gotoxy(1,5);
cprintf("Said.R.Veloc= %1.3f Said.R.Corr= %1.3f ", iRef, Vcc);
/* %1.4f V, means, real, in 1 field, with 4 decimal digits, in "V".
%3d means, integer, in 3 fields. */
}
t.stop();
/* Ends timing */
T=t.time();
/* We consider the sampling time with initial value
T=0.003 s. If the running time of "t" greater than "T" program, must attempt
to reduce it. If "t" is smaller we do T=t.*/
}
while (tecla!=27);
}

Acknowledgements
The authors would like to thank UNIFEI electrical engineering undergraduate students
Ricardo Nogueira Brasil and Thiago Augusto de Mello Arajo, as well as designer Jos Vander
da Silva and English teacher Joo Castilhos at Speaking, Itajub/ MG, Brazil, for assistance in
the preparation of this work concerning the translation of the paper from Portuguese into
English.
The authors also wish to thank everyone who directly or indirectly contributed to the success
of this research study.

Author details
Angelo Jos Junqueira Rezek1*, Carlos Alberto Murari Pinheiro1,
Tony Youssif Teixeira Darido1, Valberto Ferreira da Silva1, Otvio Henrique Salvi Vicentini1,
Wanderson de Oliveira Assis2 and Rafael Di Lorenzo Corra2
*Address all correspondence to: rezek@unifei.edu.br
1 UNIFEI Federal University of Itajub, ItajubMG, Brazil
2 Mau School of Engineering, Mau Institute of Technology, Brazil

Modelling and Implementation of a Series DC Motor Drive System


http://dx.doi.org/10.5772/59814

References
[1] Knospe, C., PID Control, IEEE Control Systems, v. 26, n.1, p. 30-41, 2006.
[2] Ming-fu, Z., Yan, C., Zhi-yuan, Z., Chun, D., Yu, D., Research of Complex Fuzzy
Control on-off Magnetism Team Motor Speed-Adjusting System, 5th Conference in
Power Electronics and Motion Control Conference, 2006, IPEMC/CES/IEEE '06.
[3] Buxbaum, A., Schierau, K., Straughen, A. Design of control systems for DC drives,
Spring-Verlag Berlin Heidelberg, p.162-177, 1990.
[4] Frhr, F., Orttenburger, F., Introduction to the Electronic Control (Spanish), Sie
mens, Marcombo S.A., Barcelona, Espaa, 1986.
[5] Pinheiro, C. A. M., Gomide, F. A. C., Frequency response design of fuzzy control
lers, VII IFSA World Congress, v. 3, p. 434-439, 1997.
[6] Pinheiro, C. A. M., Gomide, F. A. C., On the equivalence between basic fuzzy and
classical controllers, VIII IFSA World Congress, v. 2, p. 594-597, 1999.
[7] Pinheiro, C. A. M., Gomide, F. A. C., Fuzzy control of nonlinear systems by learning
method and frequency response, FUZZ-IEEE Conference, v. 1, p. 444-448, 1999.
[8] Pinheiro, C.A.M., Analysis and Project of Fuzzy Control Systems: An Approach at
the Frequency Domain, Campinas, Unicamp, (PhD Thesis, Portuguese), 2000.
[9] Zadeh, L. A., Fuzzy Sets, Information and Control, v. 8, p. 338-353, 1965.
[10] Rezek, A. J. J., Pinheiro, Carlos Alberto Murari, Darido, T. Y. T.,Silva, Valberto Ferre
ira da, Vicentini, O. H. S., Assis, W. O., Comparative performance analysis for digi
tal regulators in series DC motor controlled drive, International Journal of Power
and Energy Systems, v. 30, p. 15-22, 2010.
[11] Thadiappan Krishnan,T., Bellamkonda Ramaswani,B., A Fast-Response DC Motor
Speed Control System, IEEE Transactions on Industry Applications, v. IA-10 N 5
pp. 643-651, September/October, 1974. Control System, IEEE Transactions on Indus
try Applications, v. IA-10 N 5 pp.643-651, September/October, 1974.
[12] Rezek, A. J. J.; Rodrigues, M. S.; Miranda,V. A. M., Oliveira, V. A.; Cassula, A. M.,
Costa Jr., R. A.,Torres, A. Z., Design and simulation of a controlled DC drive sys
tem (In Portuguese) - II SIMEAR, II International Seminar of Electrical Motors and
Drives, EPUSP, So Paulo - SP Brazil, proceedings II SIMEAR, p. 141-160, 1991.
[13] Gustavo G. Moraes; Daniel C. G. Ferreira; Geraldo S. F. Jnior, Speed control of a
DC machine (Portuguese), undergraduate course final end of course work (electri
cal engineering) - Federal University of Itajub, supervisor : prof. Dr. Angelo Jos
Junqueira Rezek, 2013.
[14] Tony Youssif Teixeira Darido,T.Y.T., Digital regulators performance comparative
analysis in series excited DC motor (In Portuguese), Electrical engineering MSc dis

139

140

Fuzzy Logic - Tool for Getting Accurate Solutions

sertation Federal University of Itajub (UNIFEI), supervisor: Angelo Jos Junqueira


Rezek, 2004.
[15] Silva,D.S; Gonalves F., Digital implementation of fuzzy controllers (In Portu
guese), undergraduate course, end of course work (electrical engineering) - Federal
University of Itajub, supervisor: prof. Dr. Carlos Alberto Murari Pinheiro, Decem
ber 1999.

Chapter 6

Self-Tuning Fuzzy PI Controller (STFPIC)


Salman Hameed
Additional information is available at the end of the chapter
http://dx.doi.org/10.5772/59810

1. Introduction
Traditionally, control systems are designed through mathematical analysis and synthesis
techniques. A wealth of control design techniques through mathematical approaches is
available in the literature. Now, the first step for control system design through mathematical
techniques is to obtain a proper model of the process to be controlled. However, for a highly
nonlinear system like power system, it is often quite difficult to obtain an accurate mathemat
ical model. Because of the inaccurate model, it is often quite an arduous task to design a control
system which would be effective over a wide range of operating conditions. Under these
conditions, Fuzzy Logic Controllers (FLCs) can be used quite effectively for controlling the
process. Fuzzy logic controllers are essentially model free controllers, which try to control
a process, based on the experience of a skilled human operator without requiring a detailed
model of the process to be controlled. In many cases, application of fuzzy logic approach makes
it possible to design a control system that is more robust, cost-effective, and easier to design
as compared to a controller developed based on mathematical techniques.
Motivated by the above features of FLC, an attempt has been made to design fuzzy logic TCSC
(Thyristor controlled series capacitor) controllers to improve power system stability. Gener
ally, fuzzy PI controllers (FPIC) have been used in which the inputs to the fuzzy controllers
are error (e) and charge in error (e), while the output of FPIC is the incremental change in the
control output (u). The error (e) is defined as e = Pref Pact, where Pref is the steady-state power
flowing through the line (in which TCSC is installed) and Pact is the actual power flowing
through that particular line following a disturbance. From these two inputs, the FPIC generates
the incremental change in TCSC reactance as its output (u = xTCSC).The main components of
any FLC are fuzzification unit, fuzzy inference unit, fuzzy rule base, and defuzzification unit.
The fuzzification unit maps the measured crisp inputs into the fuzzy linguistic values which
are subsequently used by the fuzzy inference mechanism. It is to be noted that the actual values
of the e and e are not submitted directly to the fuzzification unit. The quantities e and e are
first converted to normalized quantities eN and eN, respectively, by using scaling factors Ge

142

Fuzzy Logic - Tool for Getting Accurate Solutions

and Ge and subsequently these normalized quantities are passed to the fuzzification unit. The
fuzzy inference mechanism, utilizing the fuzzy rule base, performs fuzzy logic operations on
the fuzzified inputs to infer the control action. Finally, the defuzzification unit converts the
inferred fuzzy control action into crisp, normalized incremental change in control output
(uN), which, in turn, is converted into actual incremental change in control output (u) by
using the scaling factor Gu.
These three scaling factors (Ge, Ge, and Gu) are the main parameters for tuning the FPIC
because variation of scaling factors (SFs) changes the normalized universe of discourse for
input and output variables and their corresponding membership functions. These SFs play a
role similar to that of the gains of a conventional controller. Therefore, they are extremely
important for the controller stability and performance. Generally, there is no well-defined
method for computing the appropriate values of SFs for FLC and as a result, the values of these
SFs are sometimes decided by trial-and-error technique. To circumvent this trial-and-error
procedure, a genetic algorithm (GA)-based technique is proposed for finding the appropriate
values for Ge, Ge, and Gu. The proposed GA-based technique is described in details in [1]. The
scaling factors have been tuned such that the power system oscillations are minimized after
the occurrence of a disturbance. Specifically, the aim is to minimize the error between the
Pref and Pact following a disturbance. Various performance indices can be used to represent the
above goal mathematically. Here, the integral of squared error (ISE) index has been used as it
tends to place a greater penalty on large errors.
In many practical cases, even after a controller is established, there is a need to further tune
the controller on-line. The necessity of applying further on-line tuning arises in situations
where a controller must operate under uncertainty and/or when the available information is
so limited that it is impossible or impractical to design in advance a controller with fixed
properties. The main goal of the auto-tuning controller is to make the controller robust as far
as possible when subjected to a wide range of operating conditions.
In this chapter, a simple and effective fuzzy-logic-based method for on-line tuning of TCSC
FPIC is presented. The resulting controller is termed as self-tuning fuzzy PI controller
(STFPIC).The effectiveness of the developed STFPIC has been validated through detailed
nonlinear dynamic simulation studies on two different multimachine power systems. These
study systems are: (a) two-area 4-machine system and (b) 10-machine 39-bus system. The
simulation studies have been carried out on MATLAB/SIMULINK environment. A large
number of fault cases involving three-phase, 5-cycle, solid short-circuit faults have been
investigated on both these study systems for different loading conditions as well as different
fault locations. From the simulation results, it has been observed that the proposed STFPIC for
TCSC improves the system stability significantly. The detailed description of STFPIC is given
in the following sections.

2. Self-tuning scheme
Fuzzy logic controllers (FLCs) contain a number of sets of parameters that can be altered to
modify the controller performance. These are:

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

The scaling factors (SFs) for each variable


The fuzzy sets representing the meaning of linguistic values
The if-then rules
A nonadaptive FLC is one in which these parameters do not change once the controller goes
on-line. Adaptive FLCs have the capability of altering these parameters on-line. Further, the
adaptive fuzzy controllers that modify the fuzzy set definitions or the scaling factors are called
self-tuning or auto-tuning fuzzy logic controllers (FLCs) [2, 3]. Alteration of these parameters
essentially fine-tunes an already working controller. On the other hand, adaptive FLCs that
alter the rules are called self-organizing controllers [3]. These two types of fuzzy logic con
trollers have been developed [4-11] and implemented for various practical processes. Of the
various tunable parameters, SFs have the highest priority due to their global effect on the
control performance because changing the SFs changes the normalized universe of discourse,
the domains, and the membership functions of input/output variables of FLC [3].
2.1. Self-tuning fuzzy PI controller (STFPIC)
It has been experimentally observed that a conventional FLC with constant scaling factors
and a limited number of IFTHEN rules may have limited performance for a highly
nonlinear plant [12]. As a result, there has been significant research on tuning of FLCs
where either the input or output scaling factors or the definitions of the membership
functions (MFs) and sometimes the control rules are tuned to achieve the desired control
objectives [5, 8, 10]. Here, only the output scaling factor (SF) is tuned due to its strong
influence on the performance and stability of the system. In this scheme, the output SF of
the FLC is adjusted on-line according to the current states of the controlled processes.
Specifically, the tuning of the output SF is based on the value of instantaneous error and
change in error (e and e). The block diagram of the Self-tuning Fuzzy PI type Control
ler (STFPIC) is shown in Fig. 1 [13, 14]. From this figure, it is observed that by the use of
a self-tuning mechanism, the controllers output SF gets modified, as shown by the dotted
boundary. Thus, the output scaling factor gets modified at each sampling time and is
updated by the gain updating factor . This process depends on the trend followed by the
controlled process output and the value of is obtained using fuzzy rules [13, 19].
In contrast to FPIC (which has only one fuzzy logic block), there are two fuzzy logic blocks in
STFPIC as shown in Fig. The top fuzzy logic block in Fig. 1 computes the main control output
(u) of the FLC. The membership functions (MFs) for e, e, and u corresponding to this fuzzy
logic block are shown in Fig. 2. The rule base for computing u is shown in Table The second
fuzzy logic block (shown in dotted boundary) calculates the gain updating factor at each
sampling instant. For this second fuzzy block also, the MFs for e and e are same as shown in
Fig. 2. The membership functions used for the factor are defined in the domain [1] and are
shown in Fig. 3. As each of the two inputs has 7 fuzzified variables, the rule base has a total 49
rules for calculating as shown in Table 2. This rule base improves the control performance
under large disturbances such as sudden loss of a generating unit or a large load, three-phase
short circuit on the transmission lines, etc. [13, 20]. For example, immediately after a large

143

144

Fuzzy Logic - Tool for Getting Accurate Solutions

disturbance, e may be small but e will be sufficiently large (they will be of same sign) and,
for this case, should be large to increase the gain. Therefore, under these circumstances, the
appropriate rules are IF e is PS and e is PM, THEN is B or IF e is NS and e is NM,
THEN
is B.eOn
thebeother
forwill
steady-state
conditions
(i.e., will
e 0be
and
0),
controller
disturbance,
may
smallhand,
but e
be sufficiently
large (they
of e
same
sign)
and, for this case, sh
gain
should
be very
IF e isunder
ZE and
e circumstances,
is ZE, THEN the
is appropriate
ZE) to avoidrules
chattering
large
to increase
thesmall
gain. (e.g.,
Therefore,
these
are IF e is PS and
THEN around
is B orthe
IFset
e ispoint.
NS and
e is NM,
THEN for
is B.
On the
hand,inforTable
steady-state
problem
Further
justification
using
theother
rule base
2 can beconditions (i.e., e
e 0),
controller gain should be very small (e.g., IF e is ZE and e is ZE, THEN is ZE) to avoid chattering
found
in [13].
around the set point. Further justification for using the rule base in Table 1.2 can be found in [13].
Rule-base 1

Z 1

G e

Ge

e N
eN

u N
Fuzzification

Inference
Mechanism

Defuzzification

G u .

u +

+
Z 1

Fuzzification

Inference
Mechanism

Defuzzification

Rule-base 2

GAIN TUNING MECHANISM

Process

Figure
1. Block
diagram
ofSTFPIC
the STFPIC
Figure
1. Block
diagram
of the

Thefollowing
followingsteps
stepshave
have been
been used
used for
The
for tuning
tuningthe
theSTFPIC
STFPIC[13].
[13].

Step1:1:Tune
Tunethe
theSFs
SFs of
of the
the STFPIC
and
assuming
= 1 (i.e.,
Step
STFPIC without
withoutthe
thegain
gaintuning
tuningmechanism
mechanism
and
assuming
= 1 conventional
a given
process toFLC)
achieve
reasonably
good
control performance.
thecontrol
tuningperformance.
of the conventional FLC, GA
(i.e.,
conventional
for aa given
process
to achieve
a reasonably For
good
hasthe
been
used.
end of this FLC,
step, GA
a good
without
obtained
and this c
For
tuning
ofAt
thethe
conventional
[15, controller
20] has been
used.self-tuning
At the endfeature
of this isstep,
a
becomes
the
starting
point
(input)
for
the
self-tuning
controller
in
Step
2.
good controller without self-tuning feature is obtained and this controller becomes the starting

point (input) for the self-tuning controller in Step 2.


Step 2: Set the output SF (Gu) of the self-tuning FLC K times greater than that obtained in Step1, keeping the v
Step
SetGthe
output
SF (Guof
) of
the
self-tuning FLC.
FLC K
greater
than
thatis
obtained
Step1,
Ge 2:
and
e same
as those
the
conventional
Intimes
this step,
obtainedinfrom
the rule base in T

1 , and
This factor
K for the
STFPIC
(to
enhance
the value
ofconventional
Gu) is found empirically
keeping
the values
of G
as those
of the
FLC. In thiswith
step,an
objective
1, and to maintain t
e and G
e same
time asfrom
that the
of the
conventional
FLC
[13]. factor K for the STFPIC (to enhance the value of
isrise
obtained
rule
base in Table
2. This
Gu) is found empirically with an objective to maintain the same rise time as that of the
conventional FLC [13].

Figure 2. MFs for e, e, and u. N: Negative, P: Positive, ZE: Zero, B: Big, M: Medium, S: Small

e/e
NB

NB
NB

NM
NB

NS
NB

ZE
NM

PS
NS

PM
NS

PB
ZE

NB

NM

NS

ZE

PS

PM

PB

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

-1

0.66
1 - NB

NS 0

NM

PS 0.66

ZE

PM 1

145

PB

Fig. 1.2: MFs for e, e and u. N: Negative, P: Positive, ZE: Zero, B: Big, M: Medium,
S: Small

-1

Table 1.1
Rule Base
for u
0

- 0.66

0.66

Fig. 1.2: MFs for e, e and u. N: Negative, P: Positive, ZE: Zero, B: Big, M: Medium,
e/e

NB

NM

NS

ZE

PS

PM

PB

NB

NB

NB

NB

NM

NS

NS

ZE

NM

NM

NS

ZE

PS

PM

PB

PS

PM

ZE

NS PM

PB
ZE

S:B:Small
Figure 2. MFs for e, e, and u. N: Negative, P: Positive, ZE: Zero,
Big, M: Medium, S: Small
e/e

NB

NM

NB

NM

NB

NS
NB

NB

NB

NM

NB

NM

NBZE

NBNM

NM

NMNS

ZE
NM

PS

NBPS

e/e
NMNM

NSNB

NM
NSZE

NS
NS
PS

ZE ZE PM
PS
PS

PM
PS
PB

PBPM

ZE

NB

NB
NSNM

ZENB

NB
NS PS

NB
ZE
PM

NM PS PM
NS
PM

NS
PM
PB

ZEPB

PS

NM

NS
NM

NB
PS

ZE NM

PS
NM

PM
ZE

PSPB

PM

NS

ZE
NS

NB

ZE

PM
PS

PB
PM

PB

ZE

PS
ZE

NB

PS

PB
PM

PB
PB

PS
PM

NS

NM

PM

ZE

PB

Table 1. Rule Base for u

PB
ZE

VS

ZE
0.17

NS

NS

1.1 PS
NS
ZE
Rule
NMBase for u
NS

PS

PS

NM PS

PM

PB

NS
PB

PS

PB

PM
NS

NS

NM

PM
NS

ZE

NM

NS

ZE

PS

PS

PM

PB

NS

ZE

PS

PM

PM

PM

PB

ZE

PS

PM

PB

PS

PS
SB

0.5

PM

NS

NM

VS

ZE
Table

PB

MB

SB

PB
B

MB

PB
VB

0.83

VB

Fig. 1.3: MFs for gain updating factor (). ZE: Zero, V: Very, B: Big, M: Medium, S: Small
Figure 3. MFs for gain updating factor (). ZE: Zero, V: Very, B: Big, M: Medium, S: Small

0.17

0.5

0.83

Fig. 1.3: MFs for gain updating factor (). ZE: Zero, V: Very, B: Big, M: Medium, S: Smal

146

Fuzzy Logic - Tool for Getting Accurate Solutions

e/e

NB

NM

NS

ZE

PS

PM

PB

NB

VB

VB

VB

SB

ZE

NM

VB

VB

MB

VS

NS

VB

MB

VB

VS

VS

ZE

SB

MB

ZE

MB

SB

PS

VS

VS

VB

MB

VB

PM

VS

MB

VB

VB

PB

ZE

SB

VB

VB

VB

Table 2. Rule Base for

2.2. Scaling factors tuning using genetic algorithm (GA)


Here, the power system oscillations are minimized by tuning of the scaling factors using GA.
The aim is to minimize the error between the steady-state power (Pref ) flowing through the

line in which the TCSC is installed and the actual power flowing through that line (Pactual ) after

a disturbance [12, 19]. Several performance indices can be used to represent the above goal
mathematically. The integral of the squared error (ISE) [12] as shown in eqn. (1) has been
selected as it tends to place a greater penalty on large errors. This goal can be formulated as
the minimization of the objective function F where,

F=

tsim

(t ) dt

(1)

In eqn. (1), e(t) = Pref Pactual is the error in power flow in the line following a disturbance and

tsim is the total time period of simulation. As the objective function of eqn. (1) is nonconvex in

nature, GA has been used to minimize F. A basic introduction to GA is given in Section 2.


2.2.1. Genetic algorithm (GA)

Various conventional optimization techniques are available in the literature, which can be used
to optimize the controller parameters effectively. The conventional optimization approach,
based on gradient descent technique, sometimes gets stuck at local minima giving suboptimal
controllers.
Genetic Algorithms (GAs) offer promising potential for optimizing controller parameters and
it uses the concept of Darwins theory of evolution. As per this theory, the existence of all living
things is based on the rule of survival of the fittest [1]. GA makes use of three fundamental
operators, namely, reproduction, crossover, and mutation, which are explained later in this
section. The basic principle of GA is to initially form different possible solutions to a problem
and then test them for their performance. By using the rule of survival of the fittest, only a
fraction of the better solutions are selected, eliminating the remaining ones. Genetic operators
(reproduction, crossover, and mutation) are then applied to the selected solutions resulting in

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

147

a new generation of possible solutions (which are expected to perform better than the previous
generation). The above steps are repeated until a specific termination criterion is met (such as
maximum number of generations, negligible variation in performance or fitness value, etc.).
Search space of GA does not confine to a narrow expected region (as in the case of gradient
descent), but rather includes a broad spectrum of possible solutions. It is capable of obtaining
the global solution of a wide variety of functions such as differentiable or nondifferentiable,
linear or nonlinear, continuous or discrete, and analytical or procedural [1]. GA tries to perform
an intelligent search for a solution from a nearly infinite number of possible solutions.
2.2.2. Basic tuning procedure

The overall flowchart for optimization using GA is shown in Fig. 4. Initially, a number of
populations (N) have been generated for the scaling factors. Each of the populations consists
of the binary strings corresponding to the scaling factors Ge, Ge, and Gu. These strings are
created in a random fashion with the constrain that the values of Ge, Ge, and Gu should lie
within their specified ranges. The ranges chosen for each of these scaling factors are shown in
2.2.2. Basic tuning procedure
Table 3. For each of these N sets of values of Ge, Ge, and Gu, time domain nonlinear simulation
studies have been carried
out for
evaluating
the objective
function
(1). For
this, tsim
The overall
flowchart
for optimization
using GA
is shown F
in of
Fig.eqn.
1.4. Initially,
a number
of populations (N) ha

forthe
the scaling
of the populations
the binary
strings corresponding to the
has been taken as 80 s.generated
Based on
valuesfactors.
of theEach
objective
function,consists
out ofofthese
N possible
factors Ge, Ge, and Gu. These strings are created in a random fashion with the constrain that the values of Ge,
solutions, the good solutions
are retained and the others are eliminated (following the principle
Gu should lie within their specified ranges. The ranges chosen for each of these scaling factors are shown in T
of survival of the fittest)For[1,each
15,of19].
The
selected
solutions
processes
ofsimulation
reproduc
these
N sets
of values
of Ge, Ge, undergo
and Gu, timethe
domain
nonlinear
studies have been car
tion, crossover, and mutation
to create
a new
generation
of For
possible
solutions
(which
for evaluating
the objective
function
F of eqn. (1).
this, t sim
has been taken
as 80are
s. Based on the value
expected to perform better
than
the previous
generation).
This process
of solutions
production
of a new
objective
function,
out of these
N possible solutions,
the good
are retained
and the others are eli
(following
the principlerepetitively.
of survival of The
the algorithm
fittest) [1, 15,stops
19]. The
selected
solutions undergo the proc
generation and its evaluation
is performed
when
a predefined
reproduction, crossover, and mutation to create a new generation of possible solutions (which are expected to
maximum number of generations
is achieved [1, 15, 19]. The parameters used for GA are shown
better than the previous generation). This process of production of a new generation and its evaluation is pe
in Table 4.
repetitively. The algorithm stops when a predefined maximum number of generations is achieved [1, 15,
parameters used for GA are shown in Table 1.4.

Start

Generate Initial
Population
Gen.=0
Time Domain Simulation of
Pow er System Model

Gen.=Gen.+1

Objective Function Evaluation

GA Operators

Yes
Gen. > Max. Gen. ?

End

No

4. Flowchart of the GA optimization algorithm


Figure 4. Flowchart of the GAFigure
optimization
algorithm

Parameters
Minimum range
Maximum range

Ge
0
0.5

Ge
0
1

Table 3. Ranges for the different scaling factors

Parameter
Maximum generations
Population size
Mutation rate

Value/Type
50
25
0.1

Gu
0
1

148

Fuzzy Logic - Tool for Getting Accurate Solutions

Parameters

Ge

Ge

Gu

Minimum range

Maximum range

0.5

Table 3. Ranges for the different scaling factors

Parameter

Value/Type

Maximum generations

50

Population size

25

Mutation rate

0.1

Crossover operator

Scattered

Table 4. Parameters used in genetic algorithm

3. Case studies
The efficacy of the projected STFPIC has been validated on two different multimachine power
systems: (a) two-area 4-machine system [16] and (b) 10-machine 39-bus system [16, 19]. The
details of these two systems are presented in Section 3.
3.1. Study systems
3.1. Study systems
schematic of
diagram
of the two-area
4-machinesystem
system is is
shown
in Fig.
In this
system,
The schematicThediagram
the two-area
4-machine
shown
in1.5.
Fig.
5. In
this machines
system,1, 2 and 3, 4
form two different coherent groups. The three tie lines connect these two coherent areas. As shown in Fig. 1.5, a TCSC
machines 1, 2 and 3, 4 form two different coherent groups. The three tie lines connect these
has been installed in the middle of one of these tie lines [17, 19].
two coherent areas. As shown in Fig. 5, a TCSC has been installed in the middle of one of these
The one line diagram of the second study system of this work, i.e., the 10-machine 39-bus system is shown in Fig. 1.6.
tie lines [17, 19].
In this diagram, the generators are identified by their bus numbers to which they are connected. In this system, a TCSC
has been assumed to be installed in the middle of the tie line connecting buses #39 and #36.
9

11
1
3

G1

10

10

11

12

TCSC

G3

Area 2

Area 1
Load A

Load B

G2

G4

Figure 5. TCSC in a two-area 4-generator system

Figure 5. TCSC in a two-area 4-generator system

The one line diagram of the second


study system of this work, i.e., the 10-machine 39-bus
8
29
26
system is shown in Fig. 6. In this diagram,
the generators
are
identified by their bus numbers
28
10

25

38

27

37
36

11

13

35
34

14
2

24

12

32

21
39

22

G1

10

TCSC

G3

12

Self-Tuning Fuzzy PI Controller (STFPIC)


Area 2
http://dx.doi.org/10.5772/59810

Area 1
Load A

149

Load B

to which they are connected. In this system, a TCSC has been assumed to be installed in the
G4
middle of the tie line connectingG2
buses #39 and #36.

Figure 5. TCSC in a two-area 4-generator system

8
26
10

25
38

37

24

12

36

11

13

35
34

14

15

16

22

23

30

17
18

21
39

32

19

29

28

27

33

31

20

Figure 6. Schematic diagram of 10-machine, 39-bus system


Figure 6. Schematic diagram of 10-machine, 39-bus system

3.2. Simulation results

3.2. Simulation results


The effectiveness of the self-tuning fuzzy PI controller (STFPIC) has been studied through de
domain simulation
studiesfuzzy
for a three-phase,
on both the test s
The effectiveness
of the self-tuning
PI controller 5-cycle,
(STFPIC)solid
has short-circuit
been studiedfaults
through
The short-circuit
faults
have been
assumed
to occur at t5-cycle,
= 5 s. solid
The simulation
detailed nonlinear
time domain
simulation
studies
for a three-phase,
short-circuitstudies have be
environment
For illustrating
thehave
efficacy
the fuzzy
faults on MATLAB/SIMULINK
both the test systems shown
above. [18].
The short-circuit
faults
beenofassumed
to controllers de
pertaining
to two
different
situations
These situations are: (a) study
occur at tresults
= 5 s. The
simulation
studies
have been
carriedare
outpresented.
in the MATLAB/SIMULINK
environment [18]. For illustrating the efficacy of the fuzzy controllers developed in this work,
results pertaining to two different situations are presented. These situations are: (a) study
system with a TCSC controlled by FPIC and (b) study system with a TCSC controlled by
STFPIC. For following figures, the rotor angles of the machines have been measured with
respect to the Centre of Inertia (COI) reference [16].

150

Fuzzy Logic - Tool for Getting Accurate Solutions

3.2.1. Two-area 4-machine system


For this system, initially the short-circuit fault has been assumed to occur at bus 9. The
variations of the rotor angles of the two machines (machine 1 and machine 4) and active power
flow in line 1110 (P11-10) for the base case loading condition (the loading condition as described
in [16, 21]) are displayed in Figs. 7 and 8, and 9(a), corresponding to scenarios (a) and (b),
respectively. In Figs. 7 9, the dotted lines show the variation of rotor angle with TCSC FPIC,
whereas the variation of rotor angle with TCSC STFPIC is depicted with solid lines. For
implementing STFPIC, K has been set equal to 3. From Figs. 7 to 8, and 9(a), it is observed that
there is perceptible improvement in the performance of the system as the oscillations are
damped earlier by the STFPIC proposed for TCSC. The variations of the TCSC reactance
(XTCSC) are shown in Fig. 9(b) for situations (a) and (b).
To investigate the performance of the TCSC STFPIC controller at enhanced loading condition,
simulation studies were carried out by increasing the system loads by 10% from the base case
loading condition. The results are shown in Figs. 10 and 11, and 12, corresponding to scenarios
(a) and (b), respectively. From Figs. 10 to 11 and 12(a), it is evident that at 10% higher loading,
the TCSC STFPIC improves the system performance. Figure 12(b) shows the variation of the
TCSC reactance for this case with TCSC FPIC and TCSC STFPIC. It can be observed from Figs.
9(b) and 12(b) that STFPIC has been able to improve the damping with smaller variation in
XTCSC as compared to FPIC for the base case and 110% loading conditions respectively with
fault at bus 9.The variations of for fault at bus 9 are shown in Fig. 13, corresponding to both
base case and 10% increased loading conditions. From these figures it is observed that for
different loading conditions, the TCSC STFPIC always improves the system performance,
showing the robustness of the controller.
The performance of the TCSC STFPIC has also been studied with faults at different locations
for both base case and 10% increased loading conditions. The simulation results for faults at
bus 8 are shown in Figs. 14 19 with the variations of depicted in Fig. 20. Similarly, the results
corresponding to fault at bus 5 are shown in Figs. 21 26 with the variations of displayed in
Fig. 27. From these figures, it is observed that irrespective of the fault location, the TCSC
STFPIC always improves the system performance.
3.2.2. 10-machine 39-bus system
In this system, initially the short-circuit fault has been assumed to occur at bus 24. From the
fault simulation studies carried out at the base case loading condition (the loading condition
as described in [16, 19]), it has been observed that the proposed TCSC STFPIC improved the
system performance. Subsequently, a great number of fault studies have been carried out at
several increased system loading situations to inspect the effectiveness of the developed
STFPIC for improving the performance of the system. After all these studies, it has been found
that the TCSC STFPIC helps to further increase the damping for the system. Only a few
representative results are presented below to illustrate the effectiveness of the developed
STFPIC in further enhancing the performance of the system under study.

the robustness of the controller.

The performance of the TCSC STFPIC has also been studied with faults at different locations for both base ca
10% increased loading conditions. The simulation results for faults at bus 8 are shown in Figs. 1.141.19 wi
FuzzytoPIfault
Controller
151 in Figs. 1.2
variations of depicted in Fig. 1.20. Similarly, the results Self-Tuning
corresponding
at bus(STFPIC)
5 are shown
http://dx.doi.org/10.5772/59810
with the variations of displayed in Fig. 1.27. From these figures,
it is observed that irrespective of the fault lo
the TCSC STFPIC always improves the system performance.
1
with TCSC FPIC
with TCSC STFPIC

0.3

0.25

radian

0.2

0.15

0.1

0.05

10

15

20
Time (sec.)

25

30

35

40

Figure 7. Rotor angle of generator 1 with STFPIC for base case with fault at bus 9
Figure 7. Rotor angle of generator 1 with STFPIC for base case with fault at bus 9

4
with TCSC FPIC
with TCSC STFPIC

-0.1

radian

-0.15

-0.2

-0.25

-0.3

10

15

20
Time (sec.)

25

30

35

40

Figure 8. Rotor angle of generator 4 with STFPIC for base case with fault at bus 9

Figure 8. Rotor angle of generator 4 with STFPIC for base case with fault at bus 9
(a) Power flow in line 11-10
1.5

with TCSC STFPIC


with TCSC FPIC

p.u.

1
0.5
0
-0.5

10

15

20

25

30

35

40

-0.3
0
5
10
Fuzzy Logic - Tool for Getting Accurate Solutions

15

20
Time (sec.)

25

30

35

40

Figure 8. Rotor angle of generator 4 with STFPIC for base case with fault at bus 9

(a) Power flow in line 11-10


1.5
with TCSC STFPIC
with TCSC FPIC

p.u.

1
0.5
0
-0.5

10

15

20

25

30

35

40

(b) XTCSC
0.1
with TCSC FPIC
with TCSC STFPIC

p.u.

0.05
0
-0.05
-0.1

10

15

20
Time (sec.)

25

30

35

40

Figure 9. Active power flow in line 11-10 and TCSC capacitive reactance with STFPIC for base case with fault at bus 9

Figure 9. Active power flow in line 11-10 and TCSC capacitive reactance with STFPIC for base case with fault at bus 9

1
0.35

with TCSC FPIC


with TCSC STFPIC

0.3

0.25

0.2
radian

152

0.15

0.1

0.05

0
0

10

20
30
Time (sec.)

40

50

Figureof10.
Rotor angle
of STFPIC
generator
with STFPIC
110%
Figure 10. Rotor angle
generator
1 with
for1 110%
loading for
with
faultloading
at bus 9with fault at bus 9

4
-0.1

-0.15

with TCSC FPIC


with TCSC STFPIC

0
0

10

20
30
Time (sec.)

40
50
Self-Tuning Fuzzy PI Controller (STFPIC)
http://dx.doi.org/10.5772/59810

153

Figure 10. Rotor angle of generator 1 with STFPIC for 110% loading with fault at bus 9

4
with TCSC FPIC
with TCSC STFPIC

-0.1

-0.15

radian

-0.2

-0.25

-0.3

-0.35

10

15

20

25
30
Time (sec.)

35

40

45

50

Figure 11. Rotor angle of generator 4 with STFPIC for 110% loading with fault at bus 9
Figure 11. Rotor angle of generator 4 with STFPIC for 110% loading with fault at bus 9

(a) Power flow in line 11-10


1.5
with TCSC STFPIC
with TCSC FPIC

p.u.

1
0.5
0
-0.5

10

15

20

25

30

35

40

45

50

(b) XTCSC
0.1
with TCSC FPIC
with TCSC STFPIC

p.u.

0.05
0
-0.05
-0.1

10

15

20

25
30
Time (sec.)

35

40

45

50

Figure
12.flow
Active
power
flow
inTCSC
line 11-10
and TCSC
capacitive
reactance
STFPIC
forwith
110%fault
loading
Figure 12. Active
power
in line
11-10
and
capacitive
reactance
with STFPIC
forwith
110%
loading
at with fault at bu
bus 9
(a) Base case
1

0.5

10

20

30

40

50

60

-0.05
-0.1
0
5
10
15
Fuzzy Logic - Tool for Getting Accurate Solutions

20

25
30
Time (sec.)

35

40

45

50

Figure 12. Active power flow in line 11-10 and TCSC capacitive reactance with STFPIC for 110% loading with fault at b

(a) Base case

0.5

10

20

30

40

50

60

40

50

60

(b) 110% loading

0.5

10

20

30
Time (sec.)

Figure 13. Variation of for base case and 110% loading with fault at bus 9
Figure 13. Variation of for base case and 110% loading with fault at bus 9

1
0.24
with TCSC FPIC
with TCSC STFPIC

0.22
0.2
0.18

radian

154

0.16
0.14
0.12
0.1
0.08
0.06

10

15

20
Time (sec.)

25

30

35

40

Figure 14. Rotor Figure


angle of14.
generator
with STFPIC
for base1case
with
fault atfor
busbase
8
Rotor 1angle
of generator
with
STFPIC
case with fault at bus 8

4
-0.1
with TCSC FPIC
with TCSC STFPIC
-0.12

0.08
0.06

10

15

20
Time (sec.)

25

30

35

40

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

155

Figure 14. Rotor angle of generator 1 with STFPIC for base case with fault at bus 8

4
-0.1
with TCSC FPIC
with TCSC STFPIC
-0.12

radian

-0.14

-0.16

-0.18

-0.2

-0.22

10

15

20
Time (sec.)

25

30

35

40

Figure 15. Rotor angle of generator 4 with STFPIC for base case with fault at bus 8
Figure 15. Rotor angle of generator 4 with STFPIC for base case with fault at bus 8

(a) Power flow in line 11-10


with TCSC STFPIC
with TCSC FPIC

1
p.u.

0.8
0.6
0.4
0.2
0

10

15

20

25

30

35

40

(b) X

TCSC

0.1
with TCSC FPIC
with TCSC STFPIC

p.u.

0.05
0
-0.05
-0.1

10

15

20
Time (sec.)

25

30

35

40

Figure 16. Active power flow in line 11-10 and TCSC capacitive reactance with STFPIC for base case with fault at bus 8
Figure 16. Active power flow in line 11-10 and TCSC capacitive reactance with STFPIC for base case with fault at bus 8

1
0.3
with TCSC FPIC
with TCSC STFPIC
0.25

0.2

-0.05
-0.1
0
5
10
Fuzzy Logic - Tool for Getting Accurate Solutions

15

20
Time (sec.)

25

30

35

40

Figure 16. Active power flow in line 11-10 and TCSC capacitive reactance with STFPIC for base case with fault at bus 8

1
0.3
with TCSC FPIC
with TCSC STFPIC
0.25

radian

0.2

0.15

0.1

0.05

10

20

30
Time (sec.)

40

50

60

Rotor angle
of generator
1 with
110%
loading
fault at bus 8
Figure 17. Rotor Figure
angle of17.
generator
1 with
STFPIC for
110%STFPIC
loadingfor
with
fault
at bus with
8

4
-0.12
with TCSC FPIC
with TCSC STFPIC

-0.14

-0.16

radian

-0.18

-0.2

-0.22

-0.24

-0.26

10

20

30
Time (sec.)

40

50

60

Figure 18. Rotor Figure


angle of18.
generator
4 withofSTFPIC
for 110%
loading
with
atloading
bus 8 with fault at bus 8
Rotor angle
generator
4 with
STFPIC
forfault
110%

(a) Power flow in line 11-10


1.5

1
p.u.

156

0.5

with TCSC STFPIC


with TCSC FPIC

-0.26

10

20

30
Time (sec.)

40

50

60

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

157

Figure 18. Rotor angle of generator 4 with STFPIC for 110% loading with fault at bus 8

(a) Power flow in line 11-10


1.5
with TCSC STFPIC
with TCSC FPIC

p.u.

0.5

10

20

30

40

50

60

(b) XTCSC
0.1
with TCSC FPIC
with TCSC STFPIC

p.u.

0.05
0
-0.05
-0.1

10

20

30
Time (sec.)

40

50

60

Active
power
in linecapacitive
11-10 andreactance
TCSC capacitive
reactance
withloading
STFPICwith
for 110%
loading with fault a
Figure 19. ActiveFigure
power19.
flow
in line
11-10flow
and TCSC
with STFPIC
for 110%
fault at
bus 8

(a) Base case


0.8

0.6
0.4
0.2
0

10

20

30

40

50

60

40

50

60

(b) 110% loading


0.8

0.6
0.4
0.2
0

10

20

30
Time (sec.)

Figure
of 110%
for loading
base case
and
110%
loading
with fault at bus 8
Figure 20. Variation
of 20.
for Variation
base case and
with
fault
at bus
8

1
0.4

0.35

0.3

with TCSC FPIC


with TCSC STFPIC

0.2
0
0
10
20
30
Fuzzy Logic - Tool for Getting Accurate Solutions Time (sec.)

40

50

60

Figure 20. Variation of for base case and 110% loading with fault at bus 8

1
0.4
with TCSC FPIC
with TCSC STFPIC

0.35

0.3

radian

0.25

0.2

0.15

0.1

0.05
0

10

15

20
Time (sec.)

25

30

35

40

Figure 21. RotorFigure


angle of
1 with
STFPIC for
baseSTFPIC
case with
buswith
5 fault at bus 5
21.generator
Rotor angle
of generator
1 with
forfault
baseatcase

4
with TCSC FPIC
with TCSC STFPIC

-0.1

radian

-0.15

-0.2

-0.25

-0.3

10

15

20
Time (sec.)

25

30

35

22.generator
Rotor angle
of generator
4 with
for fault
base at
case
Figure 22. RotorFigure
angle of
4 with
STFPIC for
baseSTFPIC
case with
buswith
5 fault at bus 5
(a) Power flow in line 11-10
1.5
with TCSC STFPIC
1
p.u.

158

0.5

with TCSC FPIC

40

-0.3

10

15

20
Time (sec.)

25

30

35

40

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

159

Figure 22. Rotor angle of generator 4 with STFPIC for base case with fault at bus 5
(a) Power flow in line 11-10
1.5
with TCSC STFPIC
with TCSC FPIC

p.u.

0.5

10

15

20

25

30

35

40

(b) XTCSC
0.1
with TCSC FPIC

p.u.

0.05

with TCSC STFPIC

0
-0.05
-0.1

10

15

20
Time (sec.)

25

30

35

40

23. Active
flow
in line
11-10 and
TCSC with
capacitive
withwith
STFPIC
base
Figure 23. Active Figure
power flow
in line power
11-10 and
TCSC
capacitive
reactance
STFPICreactance
for base case
fault for
at bus
5 case with fault at
1
0.45
with TCSC FPIC
with TCSC STFPIC

0.4
0.35

radian

0.3
0.25
0.2
0.15
0.1
0.05

10

15

20

25
30
Time (sec.)

35

40

45

50

Figure 24. Rotor angle of generator 1 with STFPIC for 110% loading with fault at bus 5
Figure 24. Rotor angle of generator 1 with STFPIC for 110% loading with fault at bus 5

4
-0.1

-0.15

with TCSC FPIC


with TCSC STFPIC

0.05

0 Accurate
5
10
15
Fuzzy Logic - Tool for Getting
Solutions

20

25
30
Time (sec.)

35

40

45

50

Figure 24. Rotor angle of generator 1 with STFPIC for 110% loading with fault at bus 5

4
with TCSC FPIC
with TCSC STFPIC

-0.1

-0.15

radian

-0.2

-0.25

-0.3

-0.35

10

15

20

25
30
Time (sec.)

35

40

45

50

Figure 25. Rotor angle of generator 4 with STFPIC for 110% loading with fault at bus 5
Figure 25. Rotor angle of generator 4 with STFPIC for 110% loading with fault at bus 5

(a) Power flow in line 11-10


1.5
with TCSC STFPIC
with TCSC FPIC

p.u.

0.5

10

20

30

40

50

60

(b) X

TCSC

0.1
with TCSC FPIC
with TCSC STFPIC

p.u.

0.05
0
-0.05
-0.1

10

20

30
Time (sec.)

40

50

60

Active
power
in linecapacitive
11-10 and
TCSC capacitive
reactance
STFPIC
110%
Figure 26. ActiveFigure
power26.
flow
in line
11-10 flow
and TCSC
reactance
with STFPIC
for 110%with
loading
withfor
fault
at loading with fa
bus 5
(a) Base case
1

160

0.5

10

20

30

40

50

60

p.u.

with TCSC STFPIC


0
-0.05
-0.1

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

10

20

30
Time (sec.)

40

50

161

60

Figure 26. Active power flow in line 11-10 and TCSC capacitive reactance with STFPIC for 110% loading with
(a) Base case

0.5

10

20

30

40

50

60

40

50

60

(b) 110% loading

0.5

10

20

30
Time (sec.)

Figure 27. Variation of for base case and 110% loading with fault at bus 5

Figure 27. Variation of for base case and 110% loading with fault at bus 5

3.2.2.of10-machine
39-bus
system
The performance
the TCSC STFPIC
at 160%
loading condition (w.r.t. the base case loading
condition as described in [16]) is shown in Figs. 28 3 From these figures it is observed that at
this system,
initially the
short-circuit
has been
assumed toisoccur
at bus
160% loadingIncondition,
substantial
improvement
infault
the system
performance
achieved
by24. From the fa
out at theFor
base
case loading STFPIC,
conditionK(the
as described
the proposedcarried
TCSC STFPIC.
implementing
has loading
been setcondition
equal to 10.
When the in [16, 19]), it h
the level
proposed
TCSC increased
STFPIC improved
system
system loading
is further
to 175% the
of the
baseperformance.
case loadingSubsequently,
condition, thea great number
beenSTFPIC
carriedisout
atto
several
increased
system
loading situations
to inspect
the effectiveness of the
proposed TCSC
able
improve
the system
performance
significantly
as illustrated
improving
the 31(b)
system.
these
studies,
has been
found that the T
in Figs. 32 and
33. It canthe
be performance
noticed fromofFigs.
andAfter
33(b)allthat
STFPIC
hasitbeen
able to
further increase
the damping
forinthe
system.
Only a to
few
representative
results
improve the damping
with smaller
variation
XTCSC
as compared
FPIC
for 160% and
175%are presented b
effectiveness
of the developed
in The
further
enhancing
ofare
the system under
loading conditions,
respectively,
with fault STFPIC
at bus 24.
variations
of the
forperformance
fault at bus 24

shown in Fig. 34, corresponding to 160% and 175% loading conditions.


The performance of the TCSC STFPIC at 160% loading condition (w.r.t. the base case loading con
Additional fault simulation studies have also been carried out with faults at different locations,
[16]) is shown in Figs. 1.281.31. From these figures it is observed that at 160% loading
for various loading conditions, to investigate the robustness of the proposed control scheme.
improvement in the system performance is achieved by the proposed TCSC STFPIC. For implem
For all the simulation
studies
carried
this work,
thelevel
TCSC
STFPICincreased
has improved
theof the base case
been set equal
to 10.
Whenout
thein
system
loading
is further
to 175%
damping of the
system
(as
compared
to
the
damping
obtained
with
FPIC).
Some
representative
proposed TCSC STFPIC is able to improve the system performance significantly as illustrated in
results obtained at 175% loading condition are shown in Figs. 35 38. Figures 35 and 36 show
the results for fault at bus 38, while the results for fault at bus 23 are shown in Figs. 37 and
38. These results amply demonstrate that the TCSC STFPIC helps to enhance the damping
capability of the system quite significantly. The variations of for fault at bus 38 and 23
corresponding to 175% loading conditions are shown in Fig. 39. Variation of the rotor angle of
generator 3 only has been shown for 175% loading condition.

radian

radian

0.2

with TCSC FPIC


with TCSC STFPIC

(a) 1

with TCSC FPIC


with TCSC STFPIC

0.20

0
-0.2
-0.2

10
10

15
15

20

20

25

25

30

35

(b)302 35

40

(b) 2
radian
radian

40
45

45

50

50

with TCSC FPIC


with TCSC STFPIC

0.2

with TCSC FPIC


with TCSC STFPIC

0.2

0
0

-0.2

-0.2 0
0

10

10

15

15

20

20

25

30

35

25
30
35
Time (sec.)
Time (sec.)

40

45

40

50

45

50

Figure 28. RotorFigure


angles of
generator
1angles
and of
2 with
160%
loading
with STFPIC
fault160%
at bus
24 160%
Figure
28.
Rotor
of STFPIC
generator
12 with
and
2 with
for
loading
28.
Rotor
angles
generator
1for
and
STFPIC
for
loading
with
fault atwith
bus 24fault at
(a) 7 (a)

with TCSC FPIC


with TCSC FPIC
with TCSC STFPIC

0.5

radian
radian

bus 24

0.5

with TCSC STFPIC

0
-0.5

-0.5
0

10

15

10

20

15

25

30

20 8
(b)

25

35

30

(b) 8

0.2

radian radian

162

this work, the TCSC STFPIC has improved the damping of the system (as compared to the da
significantly. The variations of for fault at bus 38 and 23 corresponding to 175% lo
FPIC). Some representative results obtained at 175% loading condition are shown in Figs. 1.35
1.39. Variation of the rotor angle of generator 3 only has been shown for 175% loadi
1.36 show the results for fault at bus 38, while the results for fault at bus 23 are shown in Figs
results
amply
demonstrate
that the TCSC STFPIC helps to enhance the damping capability
Fuzzy Logic - Tool
for Getting
Accurate
Solutions
(a) 1
significantly. The variations of for fault at bus
38 and 23 corresponding to 175% loading condit
1.39. Variation of the rotor angle of generator 3 only has been shown for 175% loading condition.

40

45

35

50

40

45

50

with TCSC FPIC


with TCSC STFPIC

with TCSC FPIC


with TCSC STFPIC

0.2
-0.2

0
0

-0.2

10

15

20

25
30
Time (sec.)

35

40

45

50

Figure 29.
with
0 Rotor
5 angles
10 of generator
15
207 and258 with30STFPIC
35 for 160%
40 loading
45
50 fault at bus 24
Time (sec.)
Figure 29. Rotor angles of generator 7 and 8 with STFPIC for 160% loading with fault at bus 24

Figure 29. Rotor angles of generator 7 and 8 with STFPIC for 160% loading with fault at bus 24

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

163

(a) 9

(a) 9

0.6

with TCSC FPIC


with TCSC FPIC
with TCSC STFPIC

0.6

0.4
radian
radian

0.4

with TCSC STFPIC

0.2

0.2
0

-0.2

-0.2

-0.4

-0.40

10

15

10

20

15

25

20

30

25

35

40

30

35

45

40

50

45

50

(b) 10

(b) 10

-0.2

radian
radian

-0.2
-0.4

-0.4
-0.6

with TCSC FPIC


with TCSC STFPIC

-0.6
-0.8

-0.8

10

15

10

20

15

25
30
Time (sec.)

20

with TCSC FPIC


with
40 TCSC
45 STFPIC
50

35

25
30
Time (sec.)

35

40

45

50

angles
of generator
9 and 10
160%
loading
Figure 30. RotorFigure
angles30.
of Rotor
generator
9 and
10 with STFPIC
forwith
160%STFPIC
loadingfor
with
fault
at buswith
24 fault at bus 24
(a) Power flow in line 39-36
Figure8 30. Rotor angles of generator
9 and 10 with STFPIC for 160% loading with fault at bus 24

(a) Power flow in line 39-36

p.u.

p.u.

with TCSC FPIC


with TCSC STFPIC

6
2

4
0

2
-2

-2

0.02 0

10

10

15

20

p.u.

25

30

(b) XTCSC

15

20

25

35

30

40

35

45

40

50

45

50

with TCSC FPIC


with TCSC STFPIC

(b) XTCSC

0.01

0.02
0

with TCSC FPIC


with TCSC STFPIC

0.01
-0.01

p.u.

with TCSC FPIC


with TCSC STFPIC

-0.02

-0.01

10

15

20

25
30
Time (sec.)

35

40

45

50

-0.02

0 Active5power10flow in15line 39-36


20 and25
30
35 reactance
40 with
45 STFPIC
50 for 160% loading with fault at bus
Figure 31.
TCSC capacitive
Time (sec.)

Figure 31. Active


power31.
flow
in line
39-36flow
and in
TCSC
with STFPIC
for 160%
loading
with
atloading with faul
Figure
Active
power
linecapacitive
39-36 andreactance
TCSC capacitive
reactance
with
STFPIC
forfault
160%
bus 24

Fuzzy Logic - Tool for Getting Accurate Solutions

3
with TCSC FPIC
with TCSC STFPIC

0.1

with TCSC FPIC


with TCSC STFPIC

0.1

-0.1
radian

radian

-0.1

-0.2-0.2

-0.3

-0.3

-0.4

-0.4

10

10

20

30

20

40
Time (sec.)

30

50

60

40
Time (sec.)

70

50

80

60

70

80

Figure 32. Rotor angle of generator 3 for 175% loading with STFPIC for fault at bus 24
Figure 32. Rotor angle of generator 3 for 175% loading with STFPIC for fault at bus 24
(a) Power flow in line 39-36
Figure 32.10Rotor angle of generator
3 for 175% loading with STFPIC for fault at bus 24
with TCSC FPIC

(a) Power flow in line 39-36


with TCSC STFPIC

p.u.

10

with TCSC FPIC


with TCSC STFPIC

p.u.

5
-5

10

20

30

40

50

60

70

80

(b) XTCSC
0.02

-5

10

p.u.

0.01

20

30

40

with TCSC FPIC


60
with TCSC STFPIC

50

70

80

(b) XTCSC

0.02
-0.01
-0.02
0.01

p.u.

164

10

20

30

40
50
Time (sec.)

60

with TCSC FPIC


with
70 TCSC80STFPIC

Figure 33. Active power flow in line 39-36 and TCSC capacitive reactance with STFPIC for 175% loading with fault at bus 24

-0.01
-0.02

10

20

30

40
50
Time (sec.)

60

70

80

Figure 33. Active


power
flow in power
line 39-36
andin
TCSC
with STFPIC
for 175%with
loading
with fault
at
Figure
33. Active
flow
line capacitive
39-36 andreactance
TCSC capacitive
reactance
STFPIC
for 175%
loading with
bus 24

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

(a) 160% loading


0.8
(a) 160% loading

0.6

0.4

0.8

0.2
0.4

0.6

0.2
0
0

10

10

20

30

20

30

0.8

40
40

50
50

60

70

60

70

80

40 50 50 60
40
Time
(sec.)
Time (sec.)

6070

70
80

(b) 175% loading

80

(b) 175% loading

0.8

0.6

0.6

0.4
0.4

0.2
0.2

00
0

10

10

20

20

30

30

80

Figure 34. Variation


of 34.
for
160%
and 175%
with
fault
atloading
bus loading
24 with fault
Figure
34.Variation
Variation
loading
for
160%
175%
withatfault
at bus 24
Figure
ofof
for
160%
andand
175%
bus 24

3
with TCSC FPIC
with TCSC FPIC
with TCSC STFPIC

0.1

with TCSC STFPIC

0.1
0

radian
radian

0
-0.1

-0.1
-0.2

-0.2
-0.3

-0.3
-0.4

-0.4

10

10

20

20

30

40
Time (sec.)

30

40

50

60

50

70

60

80

70

Figure 35. Rotor angle


of 35.
generator
3 for 175%
loading 3
with
for fault
at bus
38 for fault at bus 38
Figure
Rotor angle
of generator
for STFPIC
175%
with
STFPIC
Timeloading
(sec.)

80

Figure 35. Rotor angle of generator 3 for 175% loading with STFPIC for fault at bus 38

165

Fuzzy Logic - Tool for Getting Accurate Solutions

(a) Power flow in line 39-36


10
with TCSC FPIC
with TCSC STFPIC

p.u.

(a) Power flow in line 39-36

10
with TCSC FPIC

05

10

20

30

p.u.

-5

0.02

p.u.

with TCSC60
STFPIC 70
50

40

80

(b) XTCSC

0.01-5 0

10

20

30

40

50

60

with TCSC FPIC


with
70 TCSC80STFPIC

(b) XTCSC

0.02

-0.01

with TCSC FPIC


with TCSC STFPIC

0.01
p.u.

-0.02

00

10

20

30

-0.01

40
Time (sec.)

50

60

70

80

Figure-0.02
36. Active power flow in line 39-36 and TCSC capacitive reactance with STFPIC for 175% loading with fau

0 in line
10 39-3620and TCSC
30 capacitive
40
50
60with STFPIC
70
80 175% loading with fault at
Figure 36. Active power flow
reactance
for
Time (sec.)
bus 38

Figure 36. Active power flow in line 39-36 and TCSC capacitive reactance with STFPIC for 175% loading with fault at bus 38

0.1

with TCSC FPIC


with TCSC STFPIC

0.05
0.1

with TCSC FPIC


with TCSC STFPIC

0.05
0

-0.05

-0.05

radian

-0.1
-0.1

-0.15

radian

166

-0.15

-0.2
-0.2
-0.25
-0.25
-0.3

-0.3

-0.35

-0.35
-0.4

-0.4

10

10

20

20

30

40

50

Time (sec.)
30
40
Time (sec.)

60

50

70

60

80

70

Figure
Rotor angle
generator
3 forwith
175%STFPIC
loadingfor
with
STFPIC
for23
fault at bus 23
Figure 37. Rotor angle
of 37.
generator
3 forof175%
loading
fault
at bus

Figure 37. Rotor angle of generator 3 for 175% loading with STFPIC for fault at bus 23

80

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

167

(a) Power flow in line 39-36


10

(a) Power flow in line 39-36

with TCSC FPIC


with TCSC STFPIC

10

with TCSC FPIC


with TCSC STFPIC

p.u. p.u.

5
0

-5

-5
0.02

10

20

10

30

40

50

(b) XTCSC

20

30

40

60

50

0.02

p.u.

60

80

70

80

with TCSC FPIC


with TCSC STFPIC

(b) XTCSC

0.01

70

with TCSC FPIC


with TCSC STFPIC

0.01

p.u.

-0.01

0
-0.02

10

-0.01

20

30

40
Time (sec.)

50

60

70

80

-0.02

Figure 38.0Active power


in line 39-36
10 flow 20
30and TCSC
40 capacitive
50 reactance
60 with STFPIC
70 for 175%
80 loading with fault at bus 23
Figure 38. Active power flow in line 39-36 and TCSC capacitive reactance with STFPIC for 175% loading with fault at
Time
(sec.)
(a) Fault at bus 38
bus 23
0.8

Figure 38. Active power flow in line 39-36 and TCSC capacitive reactance with STFPIC for 175% loading with fault

0.6

(a) Fault at bus 38

0.4
0.8

0.2
0.6
0

0.40

10

20

30

40

50

60

70

80

(b) Fault at bus 23

0.2

0.8

0.6 0

10

20

30

0.4

40

50

60

70

80

(b) Fault at bus 23

0.8
0.2

0.6

10

20

0.4

30

40
Time (sec.)

50

60

70

80

0.2 39. Variation of for 175% loading with fault at bus 38 and 23
Figure
0

0
10
4. Conclusion

20

30

40
Time (sec.)

50

60

70

80

In this chapter, a methodology has been discussed for designing an adaptive FPIC using self-tuning me

Figure
of with
for 175%
loading
with
fault at bus 38 and 23
Figure 39. Variation
of 39.
for Variation
175%
loading
fault at
bus 38
andcarried
23
(STFPIC).
The simulation
studies
have
been
out in MATLAB/SIMULINK environment. A large numbe

cases involving three-phase, 5-cycle, solid short-circuit faults have been investigated on both the study

discussed earlier, for different loading conditions as well as different fault locations. From the simulation resu
4.
Conclusion
been observed that the proposed STFPIC for TCSC improves the system stability significantly.

In
this chapter, a methodology has been discussed for designing an adaptive FPIC using self-tu
In this scheme, the output scaling factor of the FPIC is modulated on-line by a gain updating factor () whose
(STFPIC).
studies
been
carried
in MATLAB/SIMULINK
environment.
A larg
determinedThe
by asimulation
second fuzzy
logic have
scheme.
Hence,
theout
output
scaling factor of STFPIC
does not remain
fix
cases
involving
5-cycle,
solid short-circuit
faults
have
on.
both th
the controller
is in three-phase,
operation, rather
it is modified
at each sampling
instant
by been
a gain investigated
updating factor
discussed earlier, for different loading conditions as well as different fault locations. From the simula
been observed that the proposed STFPIC for TCSC improves the system stability significantly.

168

Fuzzy Logic - Tool for Getting Accurate Solutions

4. Conclusion
In this chapter, a methodology has been discussed for designing an adaptive FPIC using selftuning mechanism (STFPIC). The simulation studies have been carried out in MATLAB/
SIMULINK environment. A large number of fault cases involving three-phase, 5-cycle, solid
short-circuit faults have been investigated on both the study systems discussed earlier, for
different loading conditions as well as different fault locations. From the simulation results, it
has been observed that the proposed STFPIC for TCSC improves the system stability signifi
cantly.
In this scheme, the output scaling factor of the FPIC is modulated on-line by a gain updating
factor () whose value is determined by a second fuzzy logic scheme. Hence, the output scaling
factor of STFPIC does not remain fixed while the controller is in operation, rather it is modified
at each sampling instant by a gain updating factor .
The effectiveness of the developed STFPIC has been studied through detailed nonlinear fault
simulation studies on both the test systems. The same fault cases have also been studied with
FPIC and the performances obtained by STFPIC have been compared to those obtained by
FPIC. From the comparative simulation results, it can be observed that the proposed STFPIC
for TCSC improves the system damping further (as compared to the system damping obtained
by FPIC).
The STFPIC, which comprises of two fuzzy logic blocks, requires increased computational time
and memory for implementation. Therefore, it would be advantageous to reduce the size of
the rule base so that the requirement of computational time and memory for implementation
is reduced.
The performances of FPIC and STFPIC discussed in this chapter have been tested with
predesigned scaling factors. However, in real life, the operating point in the system may vary
continuously, thereby making it almost impossible to predesign the scaling factors. Thus, it is
necessary to determine the scaling factors on-line based on some suitable measurements. In
future, such a scheme for on-line determination of the scaling factors will be described.
The proposed self-tuning philosophy may possibly be applied for the tuning of input SFs or
for tuning of both input and output SFs simultaneously, which may lead to superior perform
ances of the FLCs.
The efficacy and suitability of the proposed techniques can be explored further by applying it
to larger power systems for different operating conditions.

Author details
Salman Hameed*
Address all correspondence to: hameeddee@gmail.com
Department of Electrical Engineering, Aligarh Muslim University, Aligarh, India

Self-Tuning Fuzzy PI Controller (STFPIC)


http://dx.doi.org/10.5772/59810

References
[1] D. E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning: Pear
son Education Asia, 200
[2] J. Yan, M. Ryan and J. Power, Using Fuzzy Logic Towards intelligent systems, Prentice
Hall International (UK) Ltd, 1994.
[3] D. Driankov, H. Hellendoorn and M. Reinfrank, An Introduction to Fuzzy Control,
Springer-Verlag, New York, 1993.
[4] S. Z. He, S. Tan, F. L. Xu and P. Z. Wang, Fuzzy self-tuning of PID controller, Fuz
zy Sets and Systems, vol. 56, no. 1, May 1993, pp. 3746.
[5] M. Maedo and S. Murakami, A self-tuning fuzzy controller, Fuzzy Sets and Sys
tems, vol. 51, no. 1, October 1992, pp. 29-40.
[6] S. Shao, Fuzzy self-organizing controller and its application for dynamic processes,
Fuzzy Sets and Systems, vol. 26, no. 2, May 1988, pp. 151164.
[7] Y. Park, U. Moon and K. Y. Lee, A self-organizing fuzzy logic controller for dynam
ic systems using a fuzzy auto-regressive moving average (FARMA) model, IEEE
Transactions on Fuzzy Systems, vol. 3, no. 1, February 1995, pp. 7582.
[8] R. K. Mudi and N. K. Pal, A self-tuning fuzzy PI controller, Fuzzy Sets and Sys
tems, vol. 115, no. 2, October 2000, pp. 327-338.
[9] C. T. Chao and C. C. Teng, A PD-like self-tuning fuzzy controller without steadystate error, Fuzzy Sets and Systems, vol. 87, no. 2, April 1997, pp. 141-154.
[10] Z. W. Woo, H. Y. Chung and J. J. Lin, A PID type fuzzy controller with self-tuning
scaling factors, Fuzzy Sets and Systems, vol. 115, no. 2, October 2000, pp. 321-326.
[11] Y. P. Singh, A modified self-organizing controller for real-time process control ap
plications, Fuzzy Sets and Systems, vol. 96, no. 2, June 1998, pp. 147-159.
[12] Y. Zhao and E. G. Collins, Jr., Fuzzy PI control design for an industrial weigh belt
feeder, IEEE Transactions on Fuzzy Systems, vol. 11, no. 3, June 2003, pp. 311-319.
[13] R. K. Mudi and N. R. Pal, A robust self-tuning scheme for PI- and PD-type fuzzy
controllers, IEEE Transactions on Fuzzy Systems, vol. 7, no. 1, February 1999, pp.
2-16.
[14] K. Pal, R. K. Mudi and N. R. Pal, A new scheme for fuzzy rule-based system identi
fication and its application to self-tuning fuzzy controllers, IEEE Transactions on
Systems, Man, and Cybernetics-Part B: Cybernetics, vol. 32, no. 4, August 2002, pp.
470-482.
[15] A. Popov, Genetic Algorithm for Optimization. web-site: http://automatics.hit.bg/

169

170

Fuzzy Logic - Tool for Getting Accurate Solutions

[16] K. R. Padiyar, Power System Dynamics - Stability and Control, Interline Publishing Ltd.,
Bangalore, India 1996.
[17] B. Chowdhury, R. Majumder and B. C. Pal, Application of multiple-model adaptive
control strategy for robust damping of interarea oscillations in power system, IEEE
Transactions on Control Systems Technology, vol. 12, no. 5, September 2004, pp.
727-736.
[18] MATLAB/SIMULINK Software, Version 7.0.1, Release 14, The Math Works Inc.
[19] S. Hameed, A self-tuning fuzzy PI controller for TCSC to improve power system
stability, Elect Power Sys Res, 10/2008
[20] S. Hameed, Power system stability enhancement using reduced rule base self-tun
ing fuzzy PI controller for TCSC, IEEE PES T&D, 2010, 04/2010
[21] S. Hameed, Reduced rule base self-tuning fuzzy PI controller for TCSC, Int J Elect
Power Energy Sys, 11/2010

Das könnte Ihnen auch gefallen