You are on page 1of 10

CONTROLE FUZZY EM UM PNDULO INVERTIDO

ANNA RAFAELA SILVA FERREIRA


Instituto Militar de Engenharia
Praia Vermelha, 80, Urca, CEP 22290-270. Rio de Janeiro RJ, Brasil
10 Folhas, 11 Figuras, 1 Tabela
Avenida Augusto Severo 156, 505, Glria, Rio de Janeiro, RJ, Brasil.
rafaela.anna@gmail.com
(+5521)98046-5402
Resumo O comportamento de sistemas no lineares rege vrios modelos mecnicos. Um deles o
pndulo invertido, que serve de referncia para sistemas reais, como o controle da posio de veculos
espaciais. O presente trabalho tem a proposta de controlar o movimento do pndulo invertido com a
utilizao da lgica fuzzy, que tenta modelar matematicamente o processo de reconhecimento de padro do
pensamento humano. O modelo fuzzy otimizado com o mtodo dos mnimos quadrados, chegando, ento,
a obter uma resposta satisfatria para o controle do pndulo.
Palavras-chaves Pndulo invertido, controle fuzzy, mtodo dos mnimos quadrados.

1. INTRODUO
O controle do pndulo invertido se configura como um modelo para vrias aplicaes na engenharia,
como o equilbrio no lanamento de foguetes, o controle da postura ereta de seres bpedes, por exemplo.
Por conta desta sua representatividade e da sua simplicidade, o pndulo bastante usado como exemplo
quando se trabalha com desenvolvimento de sistemas de controle. J este de muita importncia, j que a
base para tomadas de decises em um sistema. O presente trabalho realiza o desenvolvimento de um
controle baseado em lgica fuzzy com o sistema de inferncia TSK.
2. METODOLOGIA
2.1.

Formulao matemtica para o pndulo invertido

Para estudos em laboratrios, o sistema consiste em um pndulo invertido preso a um carrinho


impulsionado por uma fora e que corre por um trilho. Assim, o objetivo manter o pndulo equilibrado na
vertical dando impulsos no carro. Um desenho esquemtico do pndulo invertido pode ser observado na
Fig. 1.

Fig. 1 Pndulo invertido (Silva, 2013)

Para o equacionamento do pndulo invertido, tem se a massa m do pndulo, massa M do carro, tamanho
l para o centro de massa do pndulo, I para o momento de inercia do pndulo. Usando as coordenadas do
centro de massa do pndulo:
= + sin
(1)
= cos
(2)
Aplicando a 2 Lei de Newton na direo horizontal (no existe movimento na direo vertical):
+

(3)

Derivando a equao (1) e aplicando na equao (3):


+

cos

cos

!"#

$ #%&

'

sin =

sin =

(4)
(5)
(6)

A equao (6) resulta na acelerao linear do carro. Aplicando a lei de Euler no ponto de contato entre o
carro e o pndulo:
cos

sin

( sin

(7)

Aplicando a equao (1) na equao (7) e organizando, tem-se:


+

( cos

(8)

Considerando o momento de inercia I:


)+
Sendo o momento de inercia como

( cos

(9)

e aplicando a equao (6):


=

#%&

,-./0$ 123 0
5
4-.
./ 891 0$

!"# +

6/
7

4-.

( 10 )

A equao (10) calcula a acelerao angular do pndulo. Para resolv-la, pode-se usar algum mtodo de
integrao.
2.2.

Controle fuzzy

A lgica fuzzy, diferente da lgica booleana que trata de um elemento pertencer ou no a um conjunto,
determina um grau de pertinncia que um elemento tem quele conjunto. O grau de pertinncia diz o quanto
o elemento vem de encontro com o predicado estudado.
Um exemplo mais didtico o conjunto de altura de indivduos. Num primeiro momento, as pessoas
podem ser divididas pela sua altura em baixas, mdias e altas. Se uma pessoa tem 1,90 de altura ela com
certeza considerada alta e em nenhum momento pode se referir a ela como baixa ou mdia. J uma pessoa
com 1,70 de altura j pode ser dita tanto alta como de estatura mdia. Quem vai determinar a maior
predominncia do predicado (alta, mdia ou baixa) para o elemento o grau de pertinncia.
Grau de pertinncia no pode ser confundido como probabilidade de um elemento estar ou no a um
determinado conjunto. Ele esta relacionado com a possibilidade de encontrar o elemento em um
determinado conjunto.
Em um controlador fuzzy, encontram-se vrias etapas: a fuzzificao das entradas reais e a imposio de
regras de inferncias s entradas fuzzificadas.

Na fuzzificao, entradas reais so agrupadas aos seus graus de pertinncias aos predicados. As regras
de inferncia so compostas por regras SE-ENTO. Diferente da lgica booleana, estas regras na lgica
fuzzy vem para criar uma relao entre as entradas. Essas relaes so ditadas pelas chamadas T-normas,
onde a mais conhecida e trivial a funo mnimo, que calcula o mnimo entre os graus de pertinncias das
entradas.
Dependendo do sistema de controle adotado, inmeras regras podem ser criadas. Ento tem-se a
agregao dos resultados das regras. A sada pode ser um valor real ou um valor fuzzy. Se for o ltimo,
ocorre a etapa de desfuzzyficao.
Para a sada com valor real, usa-se o sistema de inferncia conhecido como TSK (proposto por Takagi,
Sugeno e Kang). Uma tpica regra TSK tem a seguinte forma:
se

Ae

B ento : = ; ,

onde e so chamados de antecedentes, A e B so os conjuntos dos antecedentes (ou predicados) e : a


sada real. Usualmente ; , um polinomial com dependncia nos antecedentes. Mas isso no regra.
Essa funo pode se adequar a melhor sada para o sistema proposto.
Tendo vrias sadas reais, a sada final pode ser calculada por uma mdia ponderada, onde os pesos so
determinados pelo grau de ativao, mnimo entre os graus de pertinncias dos antecedentes de cada regra,
ou por outra T-norma. A Fig. 2 mostra um esquema de como seria o sistema de inferncia TSK para duas
entradas e duas regras.

Fig. 2 Modelo de inferncia TSK (Jang et al, 1997, [4])

2.3. Mtodo dos mnimos quadrados

Segundo Jang et al. (1997) [4], o problema para determinar um modelo matemtico para um sistema
desconhecido pela observao das entradas e sadas deste sistema geralmente referido como identificao
de sistema. No geral, a maioria dos sistemas de engenharia e processos industriais j possui um modelo a
ser seguido, restando apenas o problema de identificar os parmetros usados no modelo.
Vrios mtodos so usados para a identificao de parmetros, assim como sua otimizao. Um deles
o mtodo dos mnimos quadrados, que uma poderosa e bem desenvolvida ferramenta matemtica. Ele
usado tanto para modelos lineares como para no lineares.

Seja uma sada

de um modelo linear, a sua relao com as entradas

seguinte forma:

= ;

=,

,,

+ @

=,

,,

pode ser da

( 11 )

onde @ representa o erro do modelo, erro de medio ou qualquer outra variao. ; um polinmio de

primeira ou segunda ordem. Geralmente de primeira ordem da forma:


; = AB + A=

+ + A?

( 12 )

Os termos A so chamados de coeficientes de regresso, que so os parmetros desconhecidos a serem

estimados pelo mtodo dos mnimos quadrados. Reescrevendo, ento, a equao (13) tem-se:

onde

DE

+A

F = HDI= @D = HDI=

= AB + A=

denota o i-simo nvel da varivel

D=

+ + A?

D?

+ @D

( 13 )

a sada. O mtodo dos mnimos quadrados escolhe

os parmetros A de modo que a soma dos quadrados dos erros, @, seja minimizada. A funo dos mnimos

quadrados :

AJ ?EI= AE

DE

( 14 )

A equao (16) tem que ser minimizada com respeito aos parmetros, produzindo K + 1 equaes

normais de mnimos quadrados para cada coeficiente de regresso desconhecido. Tendo cada termo em sua
notao matricial:
M = N

1
1
Q = R

==

H=

AJ
A
A = R =S

A?
@J
@
@ = N =P

@?

( 15 )

=?
?
S


H?
H
=

( 16 )

( 17 )

( 18 )

Na forma matricial, a equao (16) fica da seguinte forma:

F = M QA M QA

( 19 )

Para minimizar, faz-se a derivao da equao (21) em relao aos parmetros e iguala a zero. Assim:
UV
UW

= 2Q Y M + 2Q Y QAZ = 0

AZ = QQ

QM

M\ = QAZ

Assim, o modelo para as sadas ajustadas d-se por:

( 20 )
( 21 )

( 22 )

Entretanto, na prtica, tem-se sempre a aquisio de novos dados. Assim, tendo um novo par de entradas
;

^
, este seria ento o K + 1 -simo par. Ento, ao invs de calcular A
? = com todos os K + 1 dados,

_? anteriormente calculado na equao (23). A esse mtodo, despera-se encontrar uma maneira de usar o A
se o nome de identificao com mnimos quadrados recursivos. Com essa ideia, a equao (23) pode ser
reescrita como:
Q Y Q
^
A
? = = +` a ` a5

Q Y M
` a b c

Para simplificar a notao, introduzem-se duas novas matrizes d d f? e f?


f?

f?
As duas matrizes se relacionam por:
Usando f? e f?
Para colocar A?

=:

f?

f? = Q Y Q

Q Y Q
= +` Y a ` Y a5

= ghQ

= QYQ +

A?

definidas por:

i ` Q aj

f? = = f? ==
k

( 23 )

( 24 )
( 25 )

( 26 )
( 27 )

( 28 )

A? = f? QM
= f? = Q Y M + lM

( 29 )

em termos de A? , isola o termo Q Y M na primeira equao da equao (31). Assim:


Q Y M = f?

Aplicando na segunda equao de equao (31):


A?

A?

= A? + f?

( 30 )

M A?

( 31 )

O novo estimador baseado no velho estimador e em um termo de correo baseado nos novos dados;
este termo de correo baseado em um vetor de ganho de adaptao multiplicado por um erro preditor
produzido pelo velho estimador.

Entretanto, para calcular f?

necessrio o calculo de uma inversa, sendo muito caro

computacionalmente. Aplicando a formula de inverso de matriz na equao (29), obtm-se:


f?

m ooYmn
no

= f? = n oYm

( 32 )

Finalmente tomos as equaes para calcular um novo estimador baseado no estimador passado, no
querendo uma carga de clculos muito grande. Assim:
p

A?

f?

m ooYmn
no

= f? = n oYm

= A? + f?

M A?

3. SISTEMA DE INFERNCIA
Como valores de entradas, foram usados:

( 33 )


M = 1.5 kg

m = 0.5 kg

b = 0 Ns/m

l = 0.8 m

I = 0.4267 kgm

g = 9.81 m/s
Como entradas do sistema de controle foram usados o ngulo que o pndulo faz com o eixo na vertical e
sua velocidade angular, dada pela derivao da Eq. (11) em reao frequncia (s). Como sada, tem-se a
fora.
A Fig. 4 mostra esquematicamente o controle usado nas simulaes.

Fig. 3 Diagrama de blocos do controlador fuzzy

Os dois sistemas de inferncias basearam-se pelo mesmo conjunto de regras. Os predicados usados para
o ngulo e velocidade angular foram: muito negativo, pouco negativo, zero, pouco positivo e muito
positivo. Os grficos com as funes de pertinncias so mostrados nas Fig. 5 e Fig. 6.
1
Muito Negativo
Pouco Negativo
Zero
Pouco Negativo
Muito Positivo

0.9

0.8

funo de pertinencia

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
-4

-3

-2

-1

0
teta (rad)

Fig. 4 Funo de pertinncia para o ngulo

1
Muito Negativo
Pouco Negativo
Zero
Pouco Negativo
Muito Positivo

0.9

0.8

funo de pertinencia

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
-2

-1.5

-1

-0.5

0
velocidade angular (rad/s)

0.5

1.5

Fig. 5 Funo de pertinncia para a velocidade angular

As regras usadas so mostradas na Tabela 1. Nela mostrado como o teta e sua velocidade angular
podem variar, como dito anteriormente: muito negativo (MN), pouco negativo (PN), zero (Z), pouco
positivo (PP) e muito positivo (MP). A forma como eles se relacionam definem a grandeza da fora. Por
exemplo: se o teta negativo e sua velocidade tambm, a fora tem que ser positiva. Se o teta for negativo e
a velocidade positiva, a fora continua tendo que ser positiva, s que com uma intensidade menor.

Tabela 1. Regras de inferncia para as entradas

TETA

MN
PN
Z
PP
MP

MN
MP
MP
MP
PP
Z

VELOCIDADE ANGULAR
PN
Z
PP
MP
MP
PP
MP
PP
Z
PP
Z
PN
Z
PN
MN
PN
MN
MN

MP
Z
PN
MN
MN
MN

Para o sistema TKS, as funes das regras foram otimizadas com o mtodo dos mnimos quadrados
recursivos. Para que este seja treinado, teta e fora so inicializados com valores j conhecidos. Os valores
de teta so: qrs2 , rs3 , rs4 , rs8 , 0, rs8 , rs4 , rs3 , rs2w. Para a fora, tem-se um vetor base,
h30, 20, 0, 20, 30i. Calculam-se os graus de pertinncia para cada ngulo em cada predicado, aqueles
que forem diferentes de zero so multiplicados pela fora correspondente no vetor base de fora e somados,
sendo alocados no espao da fora correspondente quele ngulo.
A matriz de projeto produzida sendo cada linha correspondente a um ngulo e cada coluna
correspondente a um predicado. Assim, multiplica-se o ngulo pelo grau de pertinncia daquele predicado.
E por fim, resolvem-se as equaes (26), (23) e (35), nesta ordem.
4. RESULTADOS
Sem os mnimos quadrados, os grficos de teta, mega e fora em funo do tempo so apresentados nas
Fig. 7, 8 e 9.

teta
omega

Fig. 6 Teta versus tempo

Fora

Fig. 7 mega versus tempo

Fig. 8 Fora versus tempo

teta

J com a introduo dos mnimos quadrados, observam-se as Fig. 10, 11 e 12.

omega

Fig. 9 Teta versus tempo (domnio do tempo, com mnimos quadrados)

Fig. 10 mega versus tempo (domnio do tempo, com mnimos quadrados)

Fora

Fig. 11 Fora versus tempo (domnio do tempo, com mnimos quadrados)

Com isto, observa-se que sem mtodo dos mnimos quadrados o ngulo do pndulo se estabiliza apenas
depois de dez segundos, enquanto que com a utilizao do mtodo dos mnimos quadrados, em menos de
cinco segundos ocorre a sua estabilizao. Isso mostra que a equao que rege a fora foi otimizada
satisfatoriamente.
5. CONCLUSO
O presente trabalho construiu um modelo de controle fuzzy simples para o pndulo invertido. O sistema
de inferncia usado foi o TSK. O TSK tem como sada um nmero real. As funes de sada para o TSK
foram otimizadas com o auxlio do mtodo dos mnimos quadrados recursivos. Observou-se uma
diminuio do tempo de estabilizao do ngulo, confirmando a otimizao.
Uma observao pode ser feita em relao dimenso do grau de estabilizao do ngulo, que no foi o
zero com a horizontal, mas prximo. Um exemplo prtico disso se mostra no diciclo, meio de transporte de
duas rodas lado a lado. Nele, o corpo do piloto no fica estabilizado na vertical.
REFERNCIAS
[1]

BERISTAIN, L. J. Algunas Aplicaciones de Logica Difusa a Teoria del Control. Dissertao de


Mestrado, Instituto Politcnico Nacional (2000)

[2]

COSTA, A. P. da, LIRA, V. V., SILVA, S. A. da. Simulaes de Pndulo Simples e Invertido. VII
CONNEPI (2012)

[3]

FARZANEH, Y., TOOTOONCHI, A. A. A novel data reduction method for Takagi_-Sugeno fuzzy
system design based on statistical design of experiment. Elsevier, Applied Soft Computing (2009)

[4]

JANG, J.-S.R., SUN, C.-T., MIZUTANI, E. Neuro-fuzzy and soft computing: a computational
approach to learning and machine intelligence. USA: Prentice-Hall (1997)

[5]

JI, C. W., LEI, F., KIN, L. K. Fuzzy logic controller for an inverted pendulum system. IEEE,
International Conference on INtelligente Processing Systems (1997)

[6]

SILVA, E. A. da. Construo, Modelagem e Controle de um Pndulo Invertido com CLP e Sofware
SCADA. Dissertao de Mestrado, Universidade Estadual Paulista (2013)