Você está na página 1de 82

Ministério da Educação

Universidade Federal de Santa Maria


Programa de Pós-Graduação em Engenharia Elétrica

Apostila didática:
Teoria Básica de Controle Adaptativo com Exercícios Resolvidos
Versão 1.0

Prof. Rodrigo Varella Tambara, Dr. Eng.


Santa Maria, RS, Brasil
2018

1
Esta apostila didática tem o objetivo de ajudar alunos de graduação, pós-graduação
e profissionais de engenharia a desenvolverem habilidades no projeto e implementação
de técnicas adaptativas em sistemas de controle de tempo contínuo e de tempo discreto.
Técnicas de estimação de parâmetros e de ganhos adaptativos são apresentadas, utilizando
tanto a abordagem por espaço de estados, como a abordagem entrada-saída.
Diversos problemas são propostos e resolvidos utilizando a linguagem Matlab de
modo que, através destes programas, o leitor poderá compreender melhor a implementação
dos algoritmos adaptativos.
Salienta-se que o objetivo desta apostila é apresentar um conteúdo introdutório
sobre controle adaptativo. Assim, uma revisão bibliográfica é apresentada com o objetivo
de dar um suporte teórico ao leitor acerca de artigos e livros que tratam de controle
adaptativo.

Críticas, sugestões e correções podem ser enviadas para o contato: rodvarella10@gmail.com

Todos os direitos autorais reservados a Rodrigo Varella Tambara. A reprodução de partes ou


do todo deste trabalho só poderá ser feita com autorização por escrito do autor. Endereço: Rua
Ernesto Alves, No 199, Bairro Passo D’Areia, Santa Maria, RS, Brasil, CEP: 97020-270.
SUMÁRIO

1 Introdução ........................................................................... 5
1.1 Definições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1 Controle adaptativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.2 Robustez . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.3 Modelagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.4 Controle Direto e Indireto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1.5 Discretização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Revisão bibliográfica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.1 Robustez de controladores adaptativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.2 Algoritmos de identificação de parâmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.2.1 Algoritmos de identificação paramétrica do tipo gradiente . . . . . . . . . . . . . . . . . . . . 11
1.2.2.2 Algoritmos de identificação paramétrica do tipo LS . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.3 Aplicações de controladores adaptativos em Eletrônica de Potência . . . . . . . . . . . 13
2 Revisão Matemática e Modelagem de Sistemas Contínuos
e Discretos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1 Transformada de Laplace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 Transformada Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3 Modelagem em espaço de estados: contínuo e discreto . . . . . . . . . . . . . . . . . . 16
2.3.1 Aproximação de Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4 Modelagem por função de transferência: contínuo e discreto . . . . . . . . . . 17
2.5 Aproximações discretas de funções de transferência contínuas . . . . . . . . 17
2.6 Relação entre os modelos em espaço de estados e por função de trans-
ferência: contínuo e discreto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.7 Exercício . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3 Controlador Adaptativo por Modelo de Referência ........... 19
3.1 Controle adaptativo por modelo de referência: entrada-saída . . . . . . . . . 19
3.1.1 Planta de primeira ordem com parâmetros conhecidos . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.2 Um primeiro mecanismo de adaptação de parâmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1.3 Planta de primeira ordem com parâmetros desconhecidos . . . . . . . . . . . . . . . . . . . . . . 21
3.1.3.1 Exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.4 Planta de ordem np com parâmetros desconhecidos: grau relativo n∗ = 1 . . . . 25
3.1.5 Planta de ordem np com parâmetros desconhecidos: grau relativo arbitrário . 27
3.2 Normalização de leis adaptativas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3 Função σ-modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4 Rejeição de distúrbios periódicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
SUMÁRIO

3.5 Controle adaptativo por modelo de referência: realimentação de es-


tados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.6 Exercícios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.6.1 Planta de primeira ordem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.6.2 Planta de segunda ordem: grau relativo n = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.6.3 Planta de segunda ordem: grau relativo n∗ = 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4 Estimação de Parâmetros em Tempo Real ......................... 31
4.1 Estimação de um parâmetro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2 Estimação de dois parâmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.3 Estimação de vários parâmetros: caso vetorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.4 Exercícios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.4.1 Estimação de um parâmetro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.4.2 Estimação de dois parâmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.4.3 Estimação dos parâmetros de um circuito LCR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5 Algoritmos do tipo Gradiente e LS .................................... 39
5.1 Exercício . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6 Análise de Estabilidade de Controladores Adaptativos ..... 41
6.1 Revisão de álgebra linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6.2 Análise de estabilidade de um controlador adaptativo por modelo de
referência: lei adaptativa do tipo gradiente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6.3 Análise de estabilidade de um controlador adaptativo por modelo de
referência: lei adaptativa do tipo LS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
7 Incertezas ............................................................................ 45
7.1 Incertezas estruturadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.2 Incertezas não-estruturadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
8 Aspectos de Implementação Digital ................................... 47
8.1 Usar ou não Usar um Controlador Adaptativo: Eis a Questão! . . . . . . 47
8.2 A Necessidade de Sinais Ricos em Frequência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
8.3 Entrada-Saída ou Realimentação de Estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2
8.4 O Normalizador m ................................................................ 48
8.5 Lei de Adaptação Gradiente e LS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
8.6 Ordem de Atualização das Variáveis do Controlador Adaptativo . . . . . 49
8.7 Discretização das Equações Diferenciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
8.8 Projeto do Mecanismo de Adaptação de Parâmetros θ̇ . . . . . . . . . . . . . . . . . . 49
8.9 Frequência de amostragem 1/T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
9 Resolução dos Exercícios Propostos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
APÊNDICES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
1 Introdução

1.1 Definições

1.1.1 Controle adaptativo

Na linguagem atual, o termo adaptar significa modificar o comportamento de


acordo com as novas circunstâncias. Então, controle adaptativo pode ser definido como
uma técnica de controle que possui a capacidade de mudar seu comportamento de acordo
com as modificações da dinâmica de um processo ou por distúrbios que afetam este sis-
tema (ASTRÖM, 1987). Deste modo, pode-se notar que um controlador de ganhos fixos
não é um sistema adaptativo. Um controlador adaptativo deve ter a capacidade de mudar
seus ganhos (ou parâmetros) em tempo real, como é ilustrado na Figura 1.1.

Figura 1.1 – Controlador Adaptativo (Fonte: (IOANNOU; SUN, 1996)).

É importante salientar que a técnica de mapeamento de ganhos, ou Gain Schedu-


ling, não é classificada como controle adaptativo. Na técnica de mapeamento, os ganhos
são pré-definidos e tabelados considerando um número finito de possíveis situações de
operação. No controle adaptativo, os parâmetros do controlador são modificados conti-
nuamente a partir de uma lei de adaptação paramétrica.

1.1.2 Robustez

Tratando-se de possíveis aplicações, controladores adaptativos robustos são reco-


mendados para o controle de sistemas que apresentam incertezas estruturadas e/ou in-
certezas não-estruturadas (MILLER, 2003). Incerteza estruturada é definida como o não
conhecimento exato da localização dos polos e zeros da planta. Incerteza não-estruturada
é definida como o não conhecimento do comportamento da fase e do ganho da planta em
6 1 INTRODUÇÃO

frequências de determinada faixa de operação, que por sua vez é causada por polos e zeros
não modelados.
É sabido que as técnicas de controle com ganhos fixos, largamente utilizadas na
indústria, tais como PI (Proporcional-Integral) e PID (Proporcional-Integral-Derivativo)
podem não garantir bom desempenho em certas aplicações, tal como controle de sis-
temas que apresentam variações paramétricas (incertezas estruturadas) e/ou dinâmicas
não-modeladas (incertezas não-estruturadas) (FLORA; GRÜNDLING, 2008), ou seja, sis-
temas que apresentam pontos de operação variáveis. Deste modo, o uso de uma técnica
de controle adaptativa robusta é uma interessante escolha para tais aplicações.
A Figura 1.2 ilustra a operação de um controlador adaptativo típico. Na Figura
1.2.a, a mudança dos parâmetros da planta ocorre em t = 150 ms e o controlador usado tem
ganhos constantes. Pode-se notar um desempenho pobre a partir da mudança paramétrica
da planta. Na Figura 1.2.b, um controlador adaptativo é usado. Pode-se notar que após
a adaptação o desempenho transitório nominal é recuperado.

Figura 1.2 – Comparação de um controlador adaptativo com um controlador convencional


de ganhos fixos. (a) Controlador de ganhos fixos; (b) Controlador Adaptativo. (Fonte:
LANDAU; LOZANO; M’SAAD; KARIMI, 2011)
1 INTRODUÇÃO 7

1.1.3 Modelagem

Um passo muito importante para o projeto de qualquer controlador é a modelagem


da planta a qual se deseja controlar. Neste documento são utilizadas duas abordagens de
modelagem: a abordagem por espaço de estados e abordagem entrada-saída. Na aborda-
gem por espaço de estados, as variáveis de estados do sistema são medidas totalmente ou
parcialmente. No caso de serem medidas parcialmente, as variáveis restantes devem ser
estimadas. Já a abordagem entrada-saída permite controlar a planta através do acesso
da entrada e da saída da planta. Como se tem acesso apenas a estas duas variáveis,
observadores internos são necessários para a estimação dos estados internos do sistema.
A Figura 1.3 apresenta, graficamente, os passos entre a modelagem, o projeto e a
implementação de um controlador.

Figura 1.3 – Passos para o projeto de um controlador (Fonte: (IOANNOU; SUN, 1996)).
8 1 INTRODUÇÃO

1.1.4 Controle Direto e Indireto

Os controladores adaptativos ainda podem ser divididos em dois tipos gerais: os


diretos ((IOANNOU; TSAKALIS, 1986a) e (IOANNOU; SUN, 1996)) (Figura 1.4) e os
indiretos ((GIRI et al., 1989) e (IOANNOU; SUN, 1996)) (Figura 1.5). No método indi-
reto, a lei de adaptação paramétrica é utilizado para identificar os parâmetros da parte
modelada da planta e com base nesta estimação, os ganhos do controlador são calculador
e, então, a lei de controle é calculada. Alguns métodos indiretos podem ser encontrados
em (ASTRÖM, 1988) e (QINGZHENG; FEI; CHANGMAO, 2011). No método direto, os
ganhos do controlador são estimados diretamente a partir de um modelo de referência pré-
estabelecido (IOANNOU; TSAKALIS, 1986a), (LOZANO-LEAL; COLLADO; MONDIÉ,
1990), ou seja, não há a necessidade da identificação dos parâmetros da planta. Ainda,
na literatura podem ser encontrados trabalhos que utilizam o método de controle direto
e indireto concomitantemente (DUARTE; NARENDRA, 1989).

Figura 1.4 – Controlador Adaptativo Direto (Fonte: (IOANNOU; SUN, 1996)).

Figura 1.5 – Controlador Adaptativo Indireto (Fonte: (IOANNOU; SUN, 1996)).


1 INTRODUÇÃO 9

1.1.5 Discretização

Outra questão muito importante para a implementação dos controladores adap-


tativos é a discretização da planta e do controlador, já que este tipo de controlador é
usualmente implementado em tempo discreto. Na literatura, encontram-se diferentes téc-
nicas de discretização tais como: a transformada Z (OGATA, 1995) e a transformada δ
(MIDDLETON; GOODWIN, 1990). A transformada Z é a técnica mais popular e di-
fundida na literatura. No entanto, em certas aplicações em que precisão numérica pode
ser um problema de implementação (tais como aplicações em aritmética de ponto-fixo), a
transformada δ é uma boa opção, pois esta técnica minimiza os erros numéricos causados
por arredondamento e/ou truncamento (LI; GEVERS, 1993), (RIBEIRO; JACOBINA;
LIMA, 1997), (NEWMAN; HOLMES, 2003), (KHOO; REDDY, 2008), (PADGETT; AN-
DERSON, 2009) e (SÁEZ et al., 2010).
Através desta reflexão, nota-se que sistemas de controle adaptativos são projetados
para estabilizar plantas sujeitas a parâmetros incertos e/ou dinâmicas não-modeladas,
além de manter um bom desempenho, já que seus ganhos são adaptados em tempo real.
Aliado as novas tecnologias, a sua implementação digital permite, facilmente, o ajuste dos
vários parâmetros de projeto.

1.2 Revisão bibliográfica

É desejável que qualquer controlador tenha a habilidade de manter a estabilidade


e bom desempenho do sistema, mesmo na presença de incertezas no modelo da planta,
como dinâmicas não-modeladas, variações paramétricas e distúrbios, por exemplo. Esta
propriedade é usualmente denominada robustez.

1.2.1 Robustez de controladores adaptativos

Desde a década de 80, várias modificações têm sido propostas em controlado-


res adaptativos para melhorar algumas características importantes, tais como robustez
e desempenho (em transitórios e em regime permanente) do sistema de controle. Estas
modificações são baseadas, por exemplo, na inclusão de funções do tipo: σ-modification,
normalização robusta e zona-morta (IOANNOU; TSAKALIS, 1986a). Assim, muitas es-
truturas de controle adaptativo foram desenvolvidas com extensas análises de estabilidade
para resolver problemas de plantas com incertezas estruturadas e/ou não-estruturadas.
Vários trabalhos na literatura abordam a questão de estabilidade de controla-
dores adaptativos, tais como (NARENDRA; LIN; VALAVANI, 1980), (ROHRS et al.,
10 1 INTRODUÇÃO

1982), (MORSE, 1985), (LOZANO-LEAL; GOODWIN, 1985), (IOANNOU; TSAKA-


LIS, 1986a), (NARENDRA; ANNASWAMY, 1987), (IOANNOU; TSAKALIS, 1988),
(LOZANO-LEAL; COLLADO; MONDIÉ, 1990), (IOANNOU; DATTA, 1991), (DATTA,
1993), (ANDERSON; LANDAU, 1994), (GRÜNDLING, 1995), (RICHTER, 2003) e (STE-
FANELLO, 2010). No entanto, é muito comum encontrar na literatura trabalhos sobre
estabilidade robusta de controladores adaptativos em tempo contínuo (IOANNOU; TSA-
KALIS, 1986a), (NARENDRA; ANNASWAMY, 1987), (LOZANO-LEAL; COLLADO;
MONDIÉ, 1990), (GRÜNDLING, 1995), (RICHTER, 2003) e (STEFANELLO; GRÜN-
DLING, 2010). Apesar destes trabalhos apresentarem extensivas análises de estabilidade,
controladores adaptativos são, usualmente, implementados em tempo discreto. Deste
modo, o projeto de controladores adaptativos em tempo contínuo não leva em conside-
ração as características intrínsecas da implementação digital, tais como: atraso de trans-
porte e retenção de amostras. Portanto, estas análises de estabilidade em tempo contínuo
podem perder a validade em uma aplicação de tempo discreto. Por isso, é importante o
desenvolvimento das provas de estabilidade de controladores adaptativos diretamente em
tempo-discreto.
As provas de estabilidade dos controladores adaptativos são extremamente impor-
tantes devido aos seguintes motivos: i) A prova de convergência dos ganhos do controla-
dor, mesmo que sob hipóteses idealizadas, dão credibilidade para as aplicações práticas
de controladores adaptativos; ii) A prova de estabilidade ajuda a caracterizar o grau de
robustez de controladores adaptativos; e iii) A prova de estabilidade sugere meios para
melhorar os controladores tanto no que diz respeito à estabilidade quanto ao desempenho
(GOODWIN; HILL; PALANISWAMI, 1984).
Tratando-se de análises de estabilidade de controladores adaptativos, estas podem
envolver: variações paramétricas, dinâmicas não-modeladas e distúrbios. No caso da
prova de estabilidade de sistemas sem o efeito de dinâmicas não-modeladas e de distúrbios,
pode-se utilizar a teoria de Lyapunov (IOANNOU; SUN, 1996) para provar que o erro
de adaptação de parâmetros tende a zero quando t → ∞ e, por consequência, o erro
de rastreamento ou regulação também tende a zero. No caso de a análise ser realizada
para sistemas com a presença de dinâmicas não-modeladas e distúrbios, deve-se provar
que a candidata à função de Lyapunov é limitada em módulo, que os sinais internos da
malha fechada são limitados e que o módulo do erro de rastreamento é pequeno na média.
Portanto, quando o sistema de controle adaptativo é estável na presença de dinâmicas
não-modeladas e distúrbios, é dito que este controlador adaptativo é robusto a incertezas
estruturadas e não-estruturadas.
Devido às questões comentadas, alguns trabalhos apresentam a análise de estabi-
lidade diretamente em tempo discreto (SALGADO; GOODWIN; MIDDLETON, 1988),
(IOANNOU; TSAKALIS, 1986b) e (DATTA, 1993). O trabalho de (IOANNOU; TSA-
KALIS, 1986b) apresenta um desenvolvimento completo de um controlador RMRAC em
1 INTRODUÇÃO 11

tempo discreto com base num algoritmo do tipo gradiente. A análise é desenvolvida consi-
derando a presença de dinâmicas não-modeladas do tipo aditiva e multiplicativa. Outros
trabalhos utilizam algoritmos baseado no método dos mínimos quadrados, ou LS (Least
Squares) que apresentam uma maior taxa de convergência dos ganhos do controlador,
quando comparados aos algoritmos do tipo gradiente. Devido à boa característica tran-
sitória do algoritmo LS, o trabalho de (SALGADO; GOODWIN; MIDDLETON, 1988)
apresenta uma análise da estabilidade no controlador em tempo discreto com base num
algoritmo de LS modificado, onde bons resultados são obtidos com esta técnica de con-
trole.

1.2.2 Algoritmos de identificação de parâmetros

Visando controlar uma planta que apresente variações paramétricas e/ou dinâ-
micas não-modeladas, o sistema de controle adaptativo deve possuir um mecanismo ou
algoritmo de adaptação paramétrica. Este algoritmo de adaptação deve ter a capacidade
de modificar os ganhos do controlador de modo a manter a estabilidade e bom desempenho
do sistema de controle.

1.2.2.1 Algoritmos de identificação paramétrica do tipo gradiente

Os algoritmos do tipo gradiente são caracterizados por possuírem uma taxa de


adaptação paramétrica fixa, definida pela matriz Γ. Estes algoritmos são mais simples
de serem projetados e implementados, quando comparados aos algoritmos do tipo LS. No
entanto, os algoritmos LS possuem uma maior taxa de convergência no período transitório,
que implica em menor tempo de convergência dos ganhos a serem adaptados. A seguir é
apresentado um exemplo de equação recursiva para um algoritmo do tipo gradiente (em
tempo discreto), baseado no algoritmo apresentado em (IOANNOU; TSAKALIS, 1986a)

Γζ(k)1 (k)
θ(k + 1) = (I − σ(k)ΓTs ) θ(k) − T , (1.1)
m2 (k)

onde θ é o vetor de ganhos (também denominado vetor de parâmetros) do controlador,


σ é uma função auxiliar (definida no Capítulo 3), Γ é uma matriz que dita a velocidade
de adaptação dos parâmetros θ, T é o período de amostragem, ζ é um vetor auxiliar,
1 é o erro aumentado (que é função do erro de rastreamento e do erro de adaptação
de parâmetros) e m2 é um sinal de normalização para o sistema. Uma versão deste
algoritmo de identificação, em tempo contínuo, foi utilizado no trabalho de (IOANNOU;
TSAKALIS, 1986a), no qual este propõe um controlador RMRAC.
Alguns trabalhos, tais como (HSU, 1988), (STEFANELLO; GRÜNDLING, 2010)
12 1 INTRODUÇÃO

e (STEFANELLO, 2010) tratam de controladores adaptativos por modelo de referência


juntamente com controladores por estrutura variável. A junção destes dois tipos de con-
troladores cria uma estrutura adaptativa capaz de ter boa resposta transitória e de regime
permanente. A resposta transitória é melhorada devido à parcela de estrutura variável que
atua apenas nos transitórios. Em termos de desempenho transitório e resposta de regime
permanente, os algoritmos do tipo LS e os algoritmos de estrutura variável apresentam
resultados satisfatórios.

1.2.2.2 Algoritmos de identificação paramétrica do tipo LS

Os algoritmos de adaptação de parâmetros do tipo LS são caracterizados por pos-


suir uma matriz de covariância P que dita a velocidade de adaptação de parâmetros.
Normalmente, esta matriz é iniciada com um valor elevado para acelerar o processo de
adaptação no transitório de partida do sistema de controle.
Um exemplo de algoritmo recursivo baseado no método LS é apresentado a seguir

P(k)ζ(k)1 (k)
θ(k + 1) = [I − T σ(k)P(k)] θ(k) − T . (1.2)
m2 (k)

A matriz de covariância P(k) é expressa pela seguinte equação

P(k − 1)ζ(k)ζ T (k)P(k − 1)


P(k) = P(k − 1) − T . (1.3)
m2 (k)

A equação (1.3), apesar de possibilitar o aumento da taxa de convergência do


algoritmo adaptativo em transitórios, possui o incoveniente de levar a matriz P a uma
matriz nula em regime permanente. Algumas soluções propostas na literatura evitam este
problema, tal como (SALGADO; GOODWIN; MIDDLETON, 1988), que propuseram um
algoritmo de adaptação de parâmetros do tipo LS, em tempo discreto em que a matriz
de covariância P não tende a uma matriz nula, em regime permanente.
O algorimo de adaptação proposto por (SALGADO; GOODWIN; MIDDLETON,
1988) é expresso pela seguinte equação

P(k)ζ(k)1 (k)
θ(k + 1) = θ(k) − α (1.4)
m2 (k)

e a matriz de covariância P(k) pode ser calculada pela seguinte equação

1 P(k − 1)ζ(k)ζ T (k)P(k − 1)


P(k) = P(k − 1) − α 2
− δP2 (k − 1) + βI (1.5)
λ m (k)

Os autores (LOZANO-LEAL; COLLADO; MONDIÉ, 1990) propuseram um al-


goritmo de adaptação robusto do tipo LS modificado, em que se evita que a matriz P
1 INTRODUÇÃO 13

tenda a uma matriz nula em regime permanente. O algoritmo inicia com uma alta taxa
de adaptação e em regime permanente o algoritmo se comporta como um gradiente (ma-
triz P fixa). O algorimo de adaptação de parâmetros proposto por (LOZANO-LEAL;
COLLADO; MONDIÉ, 1990) é expresso pela seguinte equação
. P(t)ζ(t)1 (t)
θ(t) = −σ(t)P(t)θ(t) − (1.6)
m2 (t)

e a matriz de covariância P pode ser calculada pela seguinte equação


. P(t)ζ(t)ζ T (t)P(t) P(t)2 2
P(t) = − + ( λ̄P(t) − )µ̄ (1.7)
m2 (t) R2

Em (LOZANO-LEAL; COLLADO; MONDIÉ, 1990), as provas de estabilidade


foram realizada para o caso de a planta apresentar dinâmicas não-modeladas.

1.2.3 Aplicações de controladores adaptativos em Eletrônica de Potência

Com o advento dos microcontroladores e DSCs (Digital Signal Controllers), tornou-


se possível a implementação de algoritmos adaptativos avançados, onde a implementação
é realizada com baixo custo e com frequência de amostragem de vários kHz (ASTRÖM;
KANNIAH, 1993). Em (ASTRÖM; WITTENMARK, 1995) é apresentado um conjunto
de aplicações típicas de controladores adaptativos onde são descritos exemplos de contro-
ladores adaptativos industriais. Em muitas aplicações, controladores PIDs são preferidos
devido à sua simplicidade de projeto e de ajuste e por não necessitar de um grande apa-
rato computacional para a sua implementação. No entanto, em várias aplicações, devido
à complexidade da planta a ser controlada, controladores adaptativos são interessantes
soluções quando comparados a controladores de ganhos fixos, tais como PID, LQR (Linear
Quadratic Regulator), repetitivos e outros.
O controlador RMRAC direto tem apresentado um bom desempenho em várias
aplicações em Eletrônica de Potência, tais como (GRÜNDLING; CARATI; PINHEIRO,
1997), (CARATI; RICHTER; GRÜNDLING, 2000), (CARATI; MONTAGNER; GRÜN-
DLING, 2000), (STEFANELLO, 2006), (FLORA; GRÜNDLING, 2008),(STEFANELLO
et al., 2008), (STEFANELLO, 2010), (MASSING et al., 2012), (TAMBARA, 2010),
(TAMBARA et al., 2010), (TAMBARA et al., 2011a), (TAMBARA et al., 2011b) e
(TAMBARA et al., 2013).
Os autores (CARATI; MONTAGNER; GRÜNDLING, 2000) e (STEFANELLO,
2006) desenvolveram controladores em tempo discreto implementados em plataforma DSC
para ajustar a tensão de saída de uma FPCA (Fonte de Potência CA) monofásica e tri-
fásica, respectivamente. Na mesma linha, (FLORA; GRÜNDLING, 2008) projetou um
controlador RMRAC para ajustar a forma de onda da tensão de saída de uma FPCA
14 1 INTRODUÇÃO

utilizada para o acionamento de uma máquina de vibração eletrodinâmica. Com este


controlador, obteve-se bom rastreamento da referência e estabilidade numa ampla faixa
de frequências e amplitudes. Na área de controle de máquinas elétricas, objetivando obter
bom desempenho e estabilidade numa vasta faixa de velocidades, (CÂMARA, 2007) e
(MARTINS, 2006) utilizaram um controlador RMRAC para controle de velocidade de
motores de indução trifásicos. Na área de filtros ativos, (STEFANELLO et al., 2008)
utilizou um controlador RMRAC para controle da corrente sintetizada por um filtro ativo
de potência paralelo. (MASSING et al., 2012) apresenta um controlador com alocação
adaptativa de polos baseado no método LS para controlar a corrente de conversores conec-
tados à rede elétrica usando filtros LCL. Bons resultados experimentais são obtidos com
o controlador adaptativo em uma grande faixa de variação paramétrica dos elementos da
rede.
2 Revisão Matemática e Modelagem de Sistemas Contínuos e
Discretos

Este capítulo apresenta uma pequena revisão sobre modelagem de sistemas físicos
contínuos e discretos.
Através das ferramentas matemáticas apresentadas neste capítulo, o leitor poderá
compreender os conteúdos dos capítulos seguintes.

2.1 Transformada de Laplace

A Transformada de Laplace L unilateral de uma função contínua x(t) é definida


pela expressão Z ∞
L{x(t)} = X(s) = e−st x(t)dt (2.1)
0
onde t é o tempo contínuo e s é a frequência complexa contínua.

2.2 Transformada Z

A Transformada Z pode ser interpretada como uma Transformada de Laplace para


variáveis discretas.
Assim, a Transformada Z unilateral de uma função discreta x(kT ) é definida pela
expressão

e−skT x(kT )
X
Z{x(kT )} = X(z) = (2.2)
k=0

onde z é a frequência complexa discreta.


Utilizando a função que mapeia os polos e zeros do plano s no plano z, ou seja
z = esT , e omitindo o período de amostragem T , pode-se e reescrever (2.2) da seguinte
forma ∞
z −k x(k)
X
Z{x(k)} = X(z) = (2.3)
k=0

Uma operação muito útil para obtenção de filtros digitais é a operação de deslo-
camento ou, do inglês: shift-operator. O avanço de n amostras é realizado da seguinte
forma
x(k + n) = Z −1 {z n x(z)} (2.4)

e o atraso de n amostras é realizado da seguinte forma


n o
x(k − n) = Z −1 z −n x(z) (2.5)
2 REVISÃO MATEMÁTICA E MODELAGEM DE SISTEMAS CONTÍNUOS E
16 DISCRETOS

2.3 Modelagem em espaço de estados: contínuo e discreto

Nesta apostila, nós iremos nos concentrar em sistemas lineares e invariantes no


tempo do tipo SISO (Single-Input, Single-Output), ou seja, com uma entrada u e uma
saída y.
Assim, um SISO sistema linear e invariante no tempo pode ser modelado no domí-
nio do tempo contínuo através de um sistema de equações de primeira ordem da seguinte
forma

Ẋ(t) = AX(t) + Bu(t) (2.6)

onde X é o vetor de estado, u é o sinal de entrada do sistema, A e B são matrizes de


dimensões adequadas.
A solução geral de (2.6) é expressa por
Z t
At
X(t) = e X(t) + eA(t−τ ) Bu(τ )dτ (2.7)
0

A equação da saída de um modelo em espaço de estados é dada por

y(t) = CX(t) + Du(t) (2.8)

onde y é o sinal de saída do sistema, C e D são vetores.


Considerando um sistema discreto, o mesmo pode ser modelado como

X(k + 1) = Ad X(k) + Bd u(k) (2.9)

onde Ad = eAT e Bd = A−1 (eAT − I)B.


A equação da saída é dada por

y(k) = CX(k) + Du(k) (2.10)

Se o sistema for variante no tempo, teremos as matrizes variáveis A(t), B(t), C(t)
e D(t).

2.3.1 Aproximação de Euler

Quando o período de amostragem T é suficientemente pequeno, a seguinte equação,


denominada aproximação de Euler, pode ser utilizada

dX(t) X(k + 1) − X(k)


≈ (2.11)
dt T
2 REVISÃO MATEMÁTICA E MODELAGEM DE SISTEMAS CONTÍNUOS E
DISCRETOS 17

Assim, a equação de estados (2.9) pode ser expressa por

X(k + 1) = (I + AT )X(k) + BT u(k) (2.12)

Esta aproximação é, comumente, utilizada para se calcular numericamente as equa-


ções diferenciais de primeira ordem dos sistemas adaptativos.

2.4 Modelagem por função de transferência: contínuo e discreto

Um sistema SISO linear e invariante no tempo pode ser modelado no domínio da


frequência contínua s através da Transformada de Laplace, da seguinte forma

Y (s) sm + bm−1 sm−1 + bm−2 sm−2 + ... + b1 s + b0


G(s) = =K n (2.13)
U (s) s + an−1 sn−1 + an−2 sn−2 + ... + a1 s + a0
Do mesmo modo que um sistema SISO linear e invariante no tempo pode ser
modelado no domínio da frequência discreta z através da Transformada de Z, da seguinte
forma

Y (z) z m + βm−1 z m−1 + βm−2 z m−2 + ... + β1 z + β0


G(z) = = Kd n (2.14)
U (z) z + αn−1 z n−1 + αn−2 z n−2 + ... + α1 z + α0
Para a obtenção das funções de transferência, todas as condições iniciais devem
ser zeradas.
Para que o sistema seja causal, é necessário que n ≥ m.

2.5 Aproximações discretas de funções de transferência contínuas

Em muitas situações, precisamos obter uma versão discreta de uma função de


transferência contínua G(s).
Um método simples é a aproximação Backward Difference Approximation (BDA)

G(z) = G(s)|s= 1−z−1 (2.15)


T

Outro método mais preciso é a transformação bilinear, ou Transformada Tustin

G(z) = G(s)|s= 2 1−z−1 (2.16)


T 1+z −1

Aqui, o termo “preciso” indica que: para um mesmo período de amostragem T , a


Transformada Tustin gera um modelo com menor erro, em relação à técnica BDA.
2 REVISÃO MATEMÁTICA E MODELAGEM DE SISTEMAS CONTÍNUOS E
18 DISCRETOS

2.6 Relação entre os modelos em espaço de estados e por função de transfe-


rência: contínuo e discreto

Podemos obter uma função de transferência contínua diretamente a partir das


matrizes do modelo no espaço de estados da seguinte forma

G(s) = C(sI − A)−1 B + D (2.17)

Do mesmo modo, podemos obter uma função de transferência discreta diretamente


a partir das matrizes do modelo no espaço de estados da seguinte forma

G(z) = C(zI − Ad )−1 Bd + D (2.18)

Lembrando que os autovalores da matriz A são idênticos aos polos de G(s) (quando
não há polos e zeros comuns). O mesmo é válido para o caso discreto.

2.7 Exercício

Seja um circuito elétrico LCR apresentado a seguir:

Figura 2.1 – Circuito elétrico LCR.

Considere L = 1 mH, C = 25 µF e R = 100 Ω. Então, resolva:


a) Obtenha a equação diferencial que relaciona u(t) e y(t);
Y (s)
b) Obtenha a função de transferência G(s) = ;
U (s)
c) Obtenha a função de transferência G(z) utilizando a Transformada Tustin, com
um período de amostragem de T = 1µs;
d) Obtenha a equação de recorrência para solução numérica de y;
e) Trace o diagrama de Bode de G(s) e G(z) em função da frequência em Hz;
f) Programe a equação de recorrência em um ambiente de programação.
g) Obtenha o modelo contínuo em espaço de estados, onde o vetor de estado é
formado pela corrente no indutor e pela tensão no capacitor;
h) Solucione o modelo em espaço de estados utilizando o método de Euler. Pro-
grame o modelo discreto em um ambiente de programação.
3 Controlador Adaptativo por Modelo de Referência

Este capítulo tem o objetivo de apresentar leis adaptativas para identificação dos
ganhos em controladores adaptativos por modelo de referência.
Vale salientar que a grande maioria dos controladores adaptativos encontrados na
literatura utilizam modelo de referência devido à sua natureza mais intuitiva no projeto
de controladores.

3.1 Controle adaptativo por modelo de referência: entrada-saída

Um sistema de controle por modelo de referência é aquele em que o comportamento


dinâmico do sistema em malha fechada é semelhante ao de um modelo de referência
escolhido pelo projetista, conforme a Figura 3.1. Ou seja, as especificações de desempenho
do controlador são definidas por uma função de transferência pré-definida, considerando
um certo sinal de entrada r.

Figura 3.1 – Controlador Adaptativo por Modelo de Referência (Fonte: (IOANNOU;


SUN, 1996)).

Assim, deseja-se que a resposta ym do modelo de referência siga a resposta y da


planta.
Para facilitar o entendimento desta teoria, vamos considerar, inicialmente, uma
planta de primeira ordem com parâmetros conhecidos.

3.1.1 Planta de primeira ordem com parâmetros conhecidos

Seja uma planta SISO de primeira ordem

Y (s) bp
Gp (s) = = (3.1)
U (s) s + ap
20 3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA

e um modelo de referência de primeira ordem

Ym (s) bm
Wm (s) = = (3.2)
R(s) s + am
Define-se a seguinte lei de controle

U (s) = θ1∗ R(s) − θ2∗ Y (s) (3.3)

onde θ1∗ e θ2∗ são os ganhos do controlador, R(s) é um sinal de referência, Y (s) é a saída
da planta (3.1) e Ym (s) é a saída do modelo de referência (3.2).
Para que o sistema em malha fechada se comporte tal como o modelo de referência,
é necessário que Y (s) = Ym (s). Para isto, fazemos

Y (s) Ym (s)
= = Wm (s) (3.4)
R(s) R(s)
A saída da planta pode ser expressa como

Y (s) = Gp (s)U (s) (3.5)

Substituindo (3.3) em (3.5), podemos escrever

Y (s) Gp (s)θ1∗
= (3.6)
R(s) 1 + Gp (s)θ2∗
Substituindo (3.1) em (3.6) e, adicionalmente, usando (3.4), podemos escrever a
seguinte equação de casamento

Y (s) bp θ1∗ bm Ym (s)


= ∗
= = (3.7)
R(s) s + ap + bp θ2 s + am R(s)

bm
Assim, os ganhos verdadeiros do controlador por modelo de referência são θ1∗ =
bp
am − ap
e θ2∗ = . Note que o símbolo ∗ significa que o valor do parâmetro é o verdadeiro.
bp
O controlador apresentado aqui, garante que y = ym somente se a planta for per-
feitamente conhecida (ap e bp conhecidos). Caso a planta tenha parâmetros desconhecidos
ou incertos, um mecanismo de adaptação deve ser utilizado.

3.1.2 Um primeiro mecanismo de adaptação de parâmetros

Imagine um sistema com um parâmetro a ser adaptado: θ. Ajustaremos este


parâmetro de modo que a função custo

1
J(θ) = e21 (3.8)
2
3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA 21

seja minimizada. Neste caso, e1 representa um erro (e1 = y − ym , por exemplo). Para
tornar J pequeno, é razoável modificar o parâmetro θ em direção ao gradiente negativo
de J, tal como
dθ ∂J ∂e1
= −γ = −γe1 (3.9)
dt ∂θ ∂θ
onde γ é um ganho positivo e constante. Esta é a famosa regra de MIT.
Assim, utilizaremos este primeiro método para identificar os parâmetros θ1 e θ2 para
o controle por modelo de referência de uma planta de primeira ordem com parâmetros ap
e bp desconhecidos.

3.1.3 Planta de primeira ordem com parâmetros desconhecidos

Vimos, anteriormente, que para o projeto do controlador por modelo de referência


em uma planta de primeira ordem, necessitamos calcular dois parâmetros: θ1 e θ2 . Deste
modo, para utilizar a regra de MIT calcularemos
dθ1 ∂e1
= −γe1 (3.10)
dt ∂θ1
e
dθ2 ∂e1
= −γe1 (3.11)
dt ∂θ2
Definindo o erro de rastreamento, como

e1 = y − ym (3.12)

∂e1 ∂e1
Agora, substituindo (3.12) nas derivadas e , temos
∂θ2 ∂θ2
∂e1 ∂y ∂ym ∂y
= − = (3.13)
∂θ1 ∂θ1 ∂θ1 ∂θ1
e
∂e1 ∂y ∂ym ∂y
= − = (3.14)
∂θ2 ∂θ2 ∂θ2 ∂θ2
∂ym ∂ym
Note que =0e = 0 devido ao fato de que ym é um sinal definido a priori e
∂θ1 ∂θ2
independe do parâmetro a ser adaptado.
A partir de (3.7), podemos escrever

bp θ1
Y (s) = R(s) (3.15)
s + ap + bp θ2

considerando que s no domínio do tempo funciona como um operador diferencial, escreve-


d(.)
mos s ≡ . Assim, para que possamos realizar a derivada parcial no domínio do tempo
dt
22 3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA

∂y
, reescreveremos (3.15) da seguinte maneira
∂θ1
bp θ1
y(t) = r(t) (3.16)
d(.)
+ ap + bp θ2
dt
Agora, derivando parcialmente y(t) em relação a θ1 , temos

∂y bp
= r (3.17)
∂θ1 d(.)
+ ap + bp θ2
dt
Utilizando a mesma ideia para determinar θ2 , derivamos parcialmente y(t) em
relação a θ2
∂y −b2p θ1
= !2 r (3.18)
∂θ2 d(.)
+ ap + bp θ2
dt
Manipulando (3.16) e (3.18), temos

∂y −bp θ1
= y (3.19)
∂θ2 d(.)
+ ap + bp θ2
dt
Então, obtemos as derivadas parciais (3.17) e (3.19) necessárias para se calcular
(3.10) e (3.11). No entanto, ap e bp são desconhecidos, o que nos impossibilita, a princípio,
de calcularmos os respectivos parâmetros θ1 e θ2 .
Se os coeficientes ap e bp fossem conhecidos, teríamos

ap + bp θ2∗ = am (3.20)

mas se considerarmos que θ1 e θ2 estão próximos dos seus valores verdadeiros (θ1∗ e θ2∗ ),
então a seguinte aproximação é razoável

ap + bp θ2 ≈ am (3.21)

Utilizando a aproximação (3.21) em (3.19) e (3.17), podemos reescrever (3.10) e


(3.11) como
 
dθ1 am r 
= −γ  d(.) e1 (3.22)
dt dt
+ am
e  
dθ2 am y 
= γ  d(.) e1 (3.23)
dt dt
+ a m

γ 0 bp
onde γ = , e γ 0 é uma constante positiva. Note que não precisamos saber exatamente
am
o valor de bp , apenas o seu sinal, pois γ é um valor escolhido pelo projetista com o objetivo
3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA 23

de se ajustar a velocidade de adaptação dos parâmetros θ1 e θ2 . Assim, o valor de bp está


dentro de γ.
Ainda, podemos expressar (3.22) e (3.23) da seguinte forma alternativa

dθ1 am r
 
= −γ e1 (3.24)
dt s + am
e
dθ2 am y
 
=γ e1 (3.25)
dt s + am
Note que a representação em (3.24) e (3.25) mistura tempo t e frequência s. Mas
o objetivo é salientar que os sinais r e y são filtrados pelo filtro de primeira ordem
am
F (s) = (3.26)
s + am
Para a implementação digital de (3.24) e (3.25), pode-se utilizar a aproximação de
Euler, como é mostrado a seguir

θ1 (k + 1) = θ1 (k) − T γζr (k)e1 (k) (3.27)

e
θ2 (k + 1) = θ2 (k) + T γζy (k)e1 (k) (3.28)

onde ζr (k) = F (z)r(k) e ζy (k) = F (z)y(k), e F (z) é a forma discreta do filtro (3.26).

3.1.3.1 Exemplo

0,8 3
Seja uma planta Gp (s) = , um modelo de referência Wm (s) = e um
s + 1,4 s+3
3
filtro auxiliar F (s) = . A Figura (3.2) apresenta a resposta y da planta e a resposta
s+3
ym do modelo de referência, e a Figura (3.3) apresenta os parâmetros adaptados θ1 e θ2 ,
considerando um ganho de adaptação γ = 2. Nesta simulação, a referência r é um sinal
quadrado (sinal rico em frequência) com amplitude unitária e período igual a 20 s. O
sistema foi discretizado utilizando um período de amostragem T = 10ms e os modelos
em s foram discretizados utilizando um ZOH (zero-order-hold). Note que, considerando
γ = 2, os parâmetros θ1 e θ2 ainda não convergiram totalmente no gráfico.
Com o intuito de acelerar a convergência, uma nova simulação foi realizada consi-
derando γ = 5 (Figuras 3.4 e 3.5).
Assim, com γ = 5 os parâmetros θ1 e θ2 convergem para os valores verdadeiros
θ1 = 3,72 e θ1∗ = 1,97 (calculados a partir dos modelos em z) em cerca de 150 s.

A medida que o valor de γ aumenta, mais rápida será a adaptação dos parâme-
tros do controlador. No entanto, valores muito elevados para γ podem tornar o sistema
instável.
24 3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA

1.5
ym
y
1

0.5
Amplitude

-0.5

-1

-1.5
0 50 100 150 200 250 300
Tempo (s)
Figura 3.2 – Resposta y da planta e a resposta ym do modelo de referência com γ = 2.

5
θ1
θ2
4

3
Amplitude

-1
0 50 100 150 200 250 300
Tempo (s)
Figura 3.3 – Parâmetros adaptados θ1 e θ2 com γ = 2.
3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA 25

1.5
ym
y
1

0.5
Amplitude

-0.5

-1

-1.5
0 50 100 150 200 250 300
Tempo (s)
Figura 3.4 – Resposta y da planta e a resposta ym do modelo de referência com γ = 5.
5
θ1
θ2
4

3
Amplitude

-1
0 50 100 150 200 250 300
Tempo (s)
Figura 3.5 – Parâmetros adaptados θ1 e θ2 com γ = 5.

3.1.4 Planta de ordem np com parâmetros desconhecidos: grau relativo n∗ = 1

Considere uma caso um pouco mais geral, onde a planta Gp (s) possui ordem np ,
no entanto, o grau relativo é n∗ = 1. A planta é modelada como
26 3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA

onde kp é um ganho com sinal conhecido, Zp (s) é um polinômio mônico Hurwitz e Rp (s)
é um polinômio mônico. Zp (s) possui mp raízes e Rp (s) possui np raízes, de tal modo de
que o grau relativo de (3.29) é n∗ = np − mp , onde n∗ é igual a 1.
Agora, considere um modelo de referência

Zm (s)
Wm (s) = km (3.30)
Rm (s)

onde km é um ganho escolhido pelo projetista, Zm (s) é um polinômio mônico Hurwitz e


Rp (s) é um polinômio mônico Hurwitz. Zm (s) possui mm raízes e Rm (s) possui nm raízes,
de tal modo de que o grau relativo de (3.30) é n∗ = nm − mm , onde n∗ é igual a 1.
A ação de controle é expressa por

u = θT ω (3.31)
h iT h iT
onde ω = ω1 T ; ω2 T ; y; r , e ω1 , ω2 ∈ Rnp −1 . O vetor de ganhos θ = θ1 T ; θ2 T ; θy ; θr ,
e θ1 , θ2 ∈ Rnp −1 .
A atualização de ω1 e ω2 é realizada através das seguintes equações

ω˙1 = Fω1 + qu (3.32)

e
ω˙2 = Fω2 + qy (3.33)

onde ω1 (0) = 0 e ω2 (0) = 0. O par (F,q) é controlável, F ∈ Rnp −1×np −1 e q ∈ Rnp −1 .


A implementação digital de (3.32) e (3.33) pode ser realizada da seguinte forma

ω1 (k + 1) = (I + FT ) ω1 (k) + qT u(k) (3.34)

e
ω2 (k + 1) = (I + FT ) ω2 (k) + qT y(k) (3.35)

Uma lei de adaptação possível pode ser expressa por

θ̇ = −Γωe1 sgn(ρ∗ ) (3.36)

onde ρ∗ = kp /km , sgn(.) representa a função sinal, e Γ = ΓT > 0, ou seja Γ é simétrica


e definida positiva (autovalores de Γ localizados no semiplano direito do plano complexo
C).
A implementação digital de (3.36) pode ser realizada da seguinte forma

θ(k + 1) = θ(k) − T Γω(k)e1 (k)sgn(ρ∗ ) (3.37)

Lembrando que estas equações são válidas apenas para o controle de plantas com
grau relativo unitário.
3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA 27

Para o controle de plantas de grau relativo arbitrário, algumas modificações são


necessárias.

3.1.5 Planta de ordem np com parâmetros desconhecidos: grau relativo arbitrário

Quando o grau relativo da planta for n∗ > 1, o algoritmo de adaptação pode ser
escrito da seguinte forma

θ̇ = −Γζ1 sgn(ρ∗ ) (3.38)


 
onde o erro aumentado 1 = e1 + θ T ζ − Wm θ T ω (vide Apêndice A) sendo que o termo
 
Wm θ T ω representa a filtragem do sinal escalar θ T ω pelo modelo de referência Wm (s),
ou Wm (z) para o caso discreto. E por fim, temos ζ = Wm Iω.
O erro aumentado 1 está diretamente relacionado às provas de estabilidade para
garantir que haja convergência paramétrica do vetor θ.
Maiores detalhes sobre as equações desenvolvidas neste capítulo podem ser encon-
trados em (IOANNOU; SUN, 1996)).

3.2 Normalização de leis adaptativas

O leitor notará que as leis adaptativas apresentadas nas seções anteriores possuem
um grave problema: a lei adaptativa diverge quando a amplitude da referência é grande.
Para resolver este problema utiliza-se normalização.
A normalização consiste em dividir a lei de adaptação por uma função quadrática
m . Este sinal de normalização m2 normalmente é composto pelo sinais internos da malha
2

fechada. Algumas soluções interessantes são

m2 = 1 + ω T ω (3.39)

ou
m2 = 1 + ζ T ζ (3.40)

ou ainda
m2 = 1 + ζ T Γζ (3.41)

Veja que o termo 1, nas equações, é utilizado para evitar que m2 cruze por 0.
Assim, teremos, por exemplo, a seguinte lei adaptativa normalizada

Γζ1 sgn(ρ∗ )
θ̇ = − (3.42)
m2
28 3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA

Quando m2 = 1 dizemos que a lei adaptativa é não-normalizada.


A implementação digital de (3.42) pode ser realizada da seguinte forma

T Γζ(k)1 (k)sgn(ρ∗ )
θ(k + 1) = θ(k) − (3.43)
m2 (k)

3.3 Função σ-modification

A função σ-modification tem o objetivo de aumentar a robustez da lei de adaptação


paramétrica. Esta função pode ser expressa por

 0 se kθ(t)k < M0
σ(t) = (3.44)
 σ0 se kθ(t)k ≥ M0

onde σ0 é o valor máxima de σ(t), Mo é um limitante superior do vetor kθ ∗ k e M0 > 2kθ ∗ k.


Nota-se que a função σ-modification em (3.44) apresenta uma descontinuidade do
tipo degrau quando kθk = M0 . Esta descontinuidade pode, eventualmente, tornar a
adaptação oscilatória.
Para suavizar o degrau da função σ, podemos expressar a função da seguinte forma





0 !
se kθ(t)k < M0
kθ(t)k


σ(t) =  σ0 − 1 se M0 ≤ kθ(t)k ≤ 2M0 (3.45)

 M0

σ0 se kθ(t)k > 2M0

e, nesse caso, M0 > kθ ∗ k.


Como, normalmente, não sabemos o valor de kθ ∗ k, M0 é sobre-dimensionado.
Assim, a lei de adaptação paramétrica pode ser expressa por

Γζ(t)1 (t)sgn(ρ∗ )
θ̇(t) = −σ(t)Γθ(t) − (3.46)
m2 (t)

e a sua implementação digital pode ser realizada através da seguinte equação

Γζ(k)1 (k)sgn(ρ∗ )
θ(k + 1) = (I − T σ(k)Γ) θ(k) − T (3.47)
m2 (k)

3.4 Rejeição de distúrbios periódicos

Em muitas aplicações, a planta é sujeita a distúrbios externos periódicos. Estes


distúrbios podem ser atenuados através da sua medição e, concomitantemente, pela sua
incorporação na lei de controle.
3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA 29

Seja um sistema modelado por espaço de estados com um distúrbio periódico d(t)

ẋ(t) = −ax(t) + bu(t) + f d(t) (3.48)

Por simplicidade, suponhamos que d(t) seja um sinal senoidal mensurável

d(t) = Asin(ωt + φ) (3.49)

Expressando o distúrbio d(t) como

d(t) = Asin(ωt + φ) = Ac cos(ωt) + As sin(ωt) (3.50)

Podemos incorporar (3.50) na ação de controle da seguinte forma

ud (t) = θc cos(ωt) + θs sin(ωt) (3.51)

onde θc e θs são parâmetros a serem identificados.


Deste modo, a lei de adaptação paramétrica irá identificar os pesos θc e θs para
a atenuar o distúrbio da planta. Note que é necessário a obtenção das componentes em
cosseno e seno (isto é, em fase e em quadratura) do respectivo distúrbio, a partir da
medição do mesmo.
Se o distúrbio d(t) não for senoidal, podemos estender a técnica considerando mais
componentes harmônicas, tal como
kX
lim

ud (t) = (θck cos(ωk t) + θsk sin(ωk t)) (3.52)


k=1

e, por fim, adicionar a equação (3.52) na lei de controle

utotal (t) = u(t) + ud (t) (3.53)

3.5 Controle adaptativo por modelo de referência: realimentação de estados

As equações apresentadas anteriormente, supõe que temos acesso apenas aos sinais
de entrada e de saída da planta, u e y.
Mas se tivermos acesso aos estados da planta, ou seja, o vetor X = [x1 ; x2 ; x3 ; ...; xn ]T ,
os vetores ω1 e ω2 poderão ser substituídos pelo vetor de estado X. Deste modo, é pos-
sível entender que os vetores ω1 e ω2 têm a função de estimar informações dos estados
internos da planta.
30 3 CONTROLADOR ADAPTATIVO POR MODELO DE REFERÊNCIA

3.6 Exercícios

3.6.1 Planta de primeira ordem

0,5 2
Considere uma planta Gp (s) = e um modelo de referência Wm (s) = .
s+1 s+2
Então, resolva:
a) Projete e simule um controlador por modelo de referência em tempo contínuo e
tempo discreto para a respectiva planta, com um período de amostragem T = 10ms;
b) Projete e simule um controlador adaptativo por modelo de referência em tempo
discreto com T = 10ms. Compare os resultados para γ = 1, 2 e 3.

3.6.2 Planta de segunda ordem: grau relativo n∗ = 1

−2s − 10
Considere uma planta Gp (s) = e um modelo de referência Wm (s) =
s2 − 2s + 1
3
.
s+3
Então, projete e simule um controlador adaptativo por modelo de referência em
tempo discreto com T = 1ms.

3.6.3 Planta de segunda ordem: grau relativo n∗ = 2

Seja o circuito elétrico RLC (2.1). Considere L = 1 mH, C = 100 µF e R =


100 Ω com condições inicias nulas. Projete um controlador adaptativo por modelo de
referência em tempo discreto para controlar a tensão y, considerando T = 100µs. Utilize
a abordagem entrada-saída.
4 Estimação de Parâmetros em Tempo Real

Imagine que você deseja identificar automaticamente os valores de indutância, ca-


pacitância e resistência de um circuitos elétrico LCR de estrutura conhecida (Figura 2.1).
Este capítulo tem o objetivo de apresentar algumas técnicas de estimação dos parâ-
metros de plantas em tempo real que podem ser utilizada em estruturas de controladores
adaptativos indiretos, conforme a Figura 4.1.

Figura 4.1 – Controlador Adaptativo com Estimação de Parâmetros em tempo real (Fonte:
(IOANNOU; SUN, 1996)).

Neste capítulo, estudaremos estimadores de: um parâmetro, dois parâmetros e


para um número arbitrário de parâmetros.

4.1 Estimação de um parâmetro

Seja um sistema físico modelado da seguinte forma

y(t) = θ∗ u(t) (4.1)

onde deseja-se estimar o parâmetro θ∗ . Uma solução possível é

y(t)
θ∗ = (4.2)
u(t)

no entanto, esta solução não é muito interessante pois u(t) 6= 0.


Uma ideia seria calcular θ(t) (estimação de θ∗ ), tal que ŷ(t) → y(t), onde ŷ(t) é a
estimação de y(t).
32 4 ESTIMAÇÃO DE PARÂMETROS EM TEMPO REAL

Então, define-se a estimação de y(t) como

ŷ(t) = θ(t)u(t) (4.3)

Assim, o erro de estimação de y(t) é

1 (t) = y(t) − ŷ(t) = y(t) − θ(t)u(t) (4.4)

Define-se, também, o erro de estimação paramétrico θ̃(t) como

θ̃(t) = θ(t) − θ∗ (4.5)

Substituindo (4.1) em (4.4), temos

1 (t) = θ∗ u(t) − θ(t)u(t) = −θ̃(t)u(t) (4.6)

Agora, vamos encontrar uma equação diferencial para calcular θ(t), de modo a
minimizar a função custo

1 1
J(θ) = 21 = (y(t) − θ(t)u(t))2 (4.7)
2 2
Usando a regra de MIT em (4.7), podemos escrever
1
 
∂J ∂ (y − θu)2
θ̇ = −γ = −γ 2 (4.8)
∂θ ∂θ
Resolvendo (4.8), temos

θ̇ = γ (y − θu) u = γ1 u (4.9)

Deste modo, a equação (4.9) é uma lei de estimação não normalizada para um
parâmetro θ.
Um método interessante para a obtenção de leis adaptativas é a análise de estabi-
lidade de Lyapunov, que será demonstrado a seguir.
Seja uma função quadrática V

θ̃2
V = (4.10)

se conseguirmos provar que V̇ ≤ 0, então θ̃ será limitado e, consequentemente, o sistema


será estável.
A derivada temporal de V é

θ̃θ̃˙ θ̃θ̇
V̇ = = (4.11)
γ γ
4 ESTIMAÇÃO DE PARÂMETROS EM TEMPO REAL 33

note que θ̃˙ = θ̇, pois θ∗ é uma constante.


Se definirmos a seguinte lei adaptativa

θ̇ = γ1 u (4.12)

e substituindo (4.12) em (4.11), temos

V̇ = θ̃1 u (4.13)

Agora substituindo (4.6) em (4.13), temos

V̇ = −θ̃2 u2 = −21 ≤ 0 (4.14)

Veja que a lei adaptativa (4.12) garante que V̇ ≤ 0 e, deste modo, o sistema é
estável, pois θ̃ é limitado. Utilizando a teoria de normas (vide Apêndice B), temos que
θ̃ ∈ L∞ . No entanto, para que o erro paramétrico θ̃ tenda a zero, também será necessário
que o sinal u(t) seja suficientemente rico em frequência (IOANNOU; SUN, 1996).

4.2 Estimação de dois parâmetros

Considere uma planta de primeira ordem expressa em espaço de estados

ẋ(t) = −ax(t) + bu(t), x(0) = x0 (4.15)

onde a e b são constantes mas desconhecidos. Os sinais u e x estão disponíveis para


medição. Assumiremos que a > 0 (planta estável) e b 6= 0.
O objetivo será estimar a e b, tal que x̂(t) → x(t).
Assim, o erro de estimação de x é

1 = x − x̂ (4.16)

O modelo de estimação em espaço de estados é expresso por

˙
x̂(t) = −â(t)x̂(t) + b̂(t)u(t), x̂(0) = x̂0 (4.17)

A equação (4.17) é conhecida como modelo paralelo.


Agora, devemos encontrar equações diferenciais para se calcular â(t) (estimação de
a) e b̂(t) (estimação de b) em tempo real.
Usaremos, novamente, o método de Lyapunov. Então, seja uma função quadrática

1 2 
V = 1 + ã2 + b̃2 (4.18)
2
onde ã(t) = â(t) − a e b̃(t) = b̂(t) − b, são os erros paramétricos de â(t) e b̂(t), respectiva-
34 4 ESTIMAÇÃO DE PARÂMETROS EM TEMPO REAL

mente. Se conseguirmos provar que V̇ ≤ 0, então 1 (t), ã(t) e b̃(t) são sinais limitados.
A derivada temporal de V é

V̇ = 1 ˙1 + ãã̇ + b̃b̃˙ (4.19)

ou também
˙
V̇ = 1 ˙1 + ãâ̇ + b̃b̂ (4.20)
˙
˙ = b̂(t),
pois ã̇(t) = â̇(t) e b̃(t) pelo fato de a e b serem constantes.
Agora, precisamos encontrar uma equação para ˙1 . Assim, derivando (4.16) em
relação ao tempo, temos
˙1 = ẋ − x̂˙ (4.21)

Substituindo (4.15) e (4.17) em (4.21), podemos escrever

˙1 = −a(x − x̂) + (â − a)x̂ − (b̂ − b)u (4.22)

ou simplesmente
˙1 = −a1 + ãx̂ − b̃u (4.23)

Agora, substituindo (4.23) em (4.20), temos


˙
V̇ = −a21 + ãx̂1 − b̂u1 + ãâ̇ + b̃b̂ (4.24)

Se definirmos as seguintes leis adaptativas

â̇ = −x̂1 (4.25)

e
˙
b̂ = u1 (4.26)

a equação (4.24) será simplesmente

V̇ = −a21 ≤ 0 (4.27)

Veja que as leis adaptativas (4.25) e (4.26) garantem que V̇ ≤ 0. Deste modo,
considerando que o sinal u seja suficientemente rico em frequência, os erros paramétricos
ã e b̃ tendem a zero.
Ainda, se quisermos adicionar ganhos de adaptação γ1 > 0 e γ2 > 0, podemos
escolher a seguinte função quadrática
!
1 2 ã2 b̃2
V =  + + (4.28)
2 1 γ1 γ2
4 ESTIMAÇÃO DE PARÂMETROS EM TEMPO REAL 35

Definindo as seguintes leis adaptativas

â̇ = −γ1 x̂1 (4.29)

e
˙
b̂ = γ2 u1 (4.30)

a derivada temporal de V (4.28) será simplesmente

V̇ = −a21 ≤ 0 (4.31)

4.3 Estimação de vários parâmetros: caso vetorial

Considere uma planta de ordem np expressa em espaço de estados

Ẋ(t) = AX(t) + Bu(t), X(0) = X0 (4.32)

onde A e B são matrizes constantes mas desconhecidas. Os sinais u e X estão disponíveis


para medição. Assumiremos que os autovalores de A estão localizados no semiplano
esquerdo do plano complexo C (planta estável).
O objetivo será estimar A e B, tal que X̂(t) → X(t).
Assim, o erro de estimação de X é

1 = X − X̂ (4.33)

O modelo de estimação em espaço de estados é


˙
X̂(t) = −Â(t)X̂(t) + B̂(t)u(t), X̂(0) = X̂0 (4.34)

Agora, devemos encontrar equações diferenciais para se calcular Â(t) (estimação


de A) e B̂(t) (estimação de B).
Usando o método de Lyapunov: seja uma função quadrática V

ÃT PÃ B̃T PB̃


! !
T
V = 1 P1 + tr + tr (4.35)
γ1 γ2
onde Ã(t) = Â(t) − A e B̃(t) = B̂(t) − B, são os erros paramétricos de Â(t) e B̂(t),
respectivamente. Ainda, P = PT > 0, PA + AT P = −I, e γ1 ,γ2 > 0. Se conseguirmos
provar que V̇ ≤ 0, então 1 (t), Ã(t) e B̃(t) são limitados.
Precisamos encontrar uma equação para ˙1 . Assim, derivando (4.33) em relação
ao tempo, temos
˙
˙1 = Ẋ − X̂ (4.36)
36 4 ESTIMAÇÃO DE PARÂMETROS EM TEMPO REAL

Substituindo (4.32) e (4.34) em (4.36), podemos escrever


     
˙1 = A X − X̂ + Â − A X̂ − B̂ − B u (4.37)

ou simplesmente
˙1 = A1 + ÃX̂ − B̃u (4.38)

Então, utilizando (4.38) é possível escrever a derivada temporal de V como


˙ ˙
 
ÃT PÃ B̃T PB̃
V̇ = −1 T 1 + 2tr  − ÃT P1 X̂T + − B̃T P1 uT  (4.39)
γ1 γ2

ou também
˙ ˙
 
ÃT PÂ B̃T PB̂
V̇ = −1 T 1 + 2tr  − ÃT P1 X̂T + − B̃T P1 uT  (4.40)
γ1 γ2

˙ ˙ ˙ ˙
pois Ã(t) = Â(t) e B̃(t) = B̂(t), pelo fato de A e B serem constantes.
Agora, definimos as seguintes leis de estimação de parâmetros
˙
 = γ1 1 X̂T (4.41)

e
˙
B̂ = γ2 1 uT (4.42)

Assim, substituindo (4.41) e (4.42) em (4.40), temos

V̇ = −1 T 1 ≤ 0 (4.43)

Veja que as leis adaptativas (4.41) e (4.42) garantem que V̇ ≤ 0. Agora, conside-
rando um sinal u(t) suficientemente rico em frequência temos que os erros paramétricos
Ã(t) e B̃(t) tendem a zero.
Note que todas as leis de estimação de parâmetros obtidas são equações diferenciais
de primeira ordem. Para implementar estas leis digitalmente, utilize a aproximação de
Euler, apresentada no Capítulo 2.
Maiores detalhes sobre as equações desenvolvidas neste capítulo podem ser encon-
trados em (IOANNOU; SUN, 1996)).
4 ESTIMAÇÃO DE PARÂMETROS EM TEMPO REAL 37

4.4 Exercícios

4.4.1 Estimação de um parâmetro

v(t)
Seja um circuito elétrico modelado pela lei de Ohm: i(t) = , onde v é a tensão,
R
i é a corrente e R é a resistência elétrica. Suponha que R = 2. Então, projete e programe
um estimador em tempo discreto para o parâmetro R, considerando que v é a variável de
entrada (ou variável de excitação).

4.4.2 Estimação de dois parâmetros

Um sistema dinâmico é representado pela seguinte equação: ẋ(t) = −ax(t) + bu(t).


Suponha que a = 10 e b = 10. Então, projete e programe um estimador em tempo discreto
para os dois parâmetros.

4.4.3 Estimação dos parâmetros de um circuito LCR

Seja o circuito elétrico LCR (Figura 2.1). Considere L = 1 mH, C = 100 µF e R =


20 Ω. Projete um estimador de parâmetros em tempo discreto que identifique R, L e C
automaticamente. Obs.: todos os estados estão disponíveis para medição.
5 Algoritmos do tipo Gradiente e LS

Os capítulos anteriores apresentaram leis adaptativas que consideram o ganho de


adaptação γ ou Γ constante.
No entanto, em muitas situações é interessante se ter um elevado ganho de adapta-
ção nos transitórios para agilizar a adaptação dos parâmetros. Mas quando estes ganhos
são muito elevados, o sistema adaptativo pode se tornar instável.
Assim, as leis adaptativas apresentadas até aqui, com um ganho de adaptação cons-
tante, são denominadas de leis do tipo Gradiente. Por exemplo, a seguinte lei adaptativa

Γζ1 sgn(ρ∗ )
θ̇ = − (5.1)
m2
é denominada: lei gradiente de adaptação normalizada.
Uma classe de lei adaptativas, muito utilizada em controle adaptativo, é baseada no
método dos mínimos quadrados, ou LS (Least-Squares). Estas leis adaptativas permitem
que a taxa de adaptação seja elevada, somente nos transitórios, o que agiliza bastante o
processo de adaptação de parâmetros. Um exemplo de lei de adaptação é apresentado
abaixo

Pζ1 sgn(ρ∗ )
θ̇ = − (5.2)
m2
onde a matriz P, que define a taxa de adaptação, é variável.
Anteriormente, a regra de MIT foi utilizada a partir de uma função custo baseada
no erro quadrático, já o método LS é baseado na integral do erro quadrático, como é
mostrado a seguir
1Z t 2
J(θ) =  (τ )dτ (5.3)
2 0 1
Através dessa teoria é possível se obter diferentes equações diferenciais matriciais,
tal como
Pζζ T P
Ṗ = − (5.4)
m2
onde P(0) = P0 , sendo que P = PT . A matriz P é também chamada de matriz de
covariância.
Para implementação digital de (5.4), a seguinte equação pode ser utilizada

P(k)ζ(k)ζ T (k)P(k)
P(k + 1) = P(k) − T (5.5)
m2 (k)

Na literatura, diferentes leis adaptativas LS podem ser encontradas (vide revisão


bibliográfica no Capítulo 1).
40 5 ALGORITMOS DO TIPO GRADIENTE E LS

5.1 Exercício

1
Considere uma planta Gp (s) = e um modelo de referência Wm (s) =
s2 + s + 1
1
.
s2+ 2s + 1
Então, projete e simule um controlador adaptativo por modelo de referência em
tempo discreto com T = 10ms, utilizando uma lei adaptativa do tipo LS.
6 Análise de Estabilidade de Controladores Adaptativos

Neste capítulo, uma atenção especial será dada a análise de estabilidade de con-
troladores adaptativos. A abordagem utilizada aqui baseia-se na teoria de estabilidade de
Lyapunov.
Inicialmente, uma pequena revisão de álgebra linear é apresentada para dar um
suporte ao leitor.

6.1 Revisão de álgebra linear

Considere uma matriz P ∈ Rn×n e um vetor ζ ∈ Rn×1 . As seguintes propriedades


são válidas:
1) Seja uma matriz P e um vetor ζ, então: (Pζ)T = ζ T PT .
2) Seja uma matriz P = PT e um vetor ζ, então: (Pζ)T = ζ T P.
T
3) Seja uma matriz inversível P = PT , então: (P−1 ) = P−1 .
4) Seja uma matriz inversível P = PT definida positiva, ou P > 0, então: P−1 >
0. Obs.: uma matriz definida positiva é aquela que possui todos os seus autovalores
localizados no semiplano direito do plano complexo C.
5) Seja uma matriz P = PT > 0 e um vetor ζ, onde ||ζ|| > 0, então: ζ T Pζ > 0.
6) Seja uma matriz inversível P = PT > 0 e um vetor ζ, onde ||ζ|| > 0, então:
ζ T P−1 ζ > 0.
Com estas seis propriedades, o leitor terá maior facilidade para entender o desen-
volvimento das equações matriciais apresentadas a seguir.

6.2 Análise de estabilidade de um controlador adaptativo por modelo de


referência: lei adaptativa do tipo gradiente

Seja uma planta de fase mínima Gp (s) de ordem np com grau relativo arbitrário

Zp (s)
Gp (s) = kp (6.1)
Rp (s)
Considere um modelo de referência
Zm (s)
Wm (s) = km (6.2)
Rm (s)

com grau relativo igual ao da planta Gp (s).


42 6 ANÁLISE DE ESTABILIDADE DE CONTROLADORES ADAPTATIVOS

A ação de controle é expressa por

u = θT ω (6.3)
h iT h iT
onde ω = ω1 T ; ω2 T ; y; r , e ω1 , ω2 ∈ Rnp −1 . O vetor de ganhos θ = θ1 T ; θ2 T ; θy ; θr ,
e θ1 , θ2 ∈ Rnp −1 .
A atualização de ω1 e ω2 é realizada através das seguintes equações

ω˙1 = Fω1 + qu (6.4)

e
ω˙2 = Fω2 + qy (6.5)

onde ω1 (0) = 0 e ω2 (0) = 0. O par (F,q) é controlável, F ∈ Rnp −1×np −1 e q ∈ Rnp −1 .


A lei de adaptação possível é expressa por

Γζ1 sgn(ρ∗ )
θ̇ = − (6.6)
m2
 
onde a forma computável do erro aumentado é 1 = e1 + θ T ζ − Wm θ T ω (vide Apêndice
A) e m2 = 1 + ζ T Γζ.
Seja uma função definida positiva
1 T
V = θ̃ Γ−1 θ̃ (6.7)
2
lembrando que θ̃(t) = θ(t) − θ ∗ .
Derivando (6.7), temos
1 1 T
V̇ = θ̃˙ T Γ−1 θ̃ + θ̃ Γ−1 θ̃˙ = θ̃˙ T Γ−1 θ̃ (6.8)
2 2
T
Considerando sgn(ρ∗ ) = 1, e também 1 = θ̃ ζ (vide Apêndice A), a derivada
temporal do erro paramétrico é
 
T
Γζ θ̃ ζ
θ̃˙ = θ̇ = − (6.9)
m2
A transposta de (6.9) é  
T
ζ T Γ θ̃ ζ
θ̃˙ T = θ̇ = −
T
(6.10)
m2
Subsituindo (6.9) e (6.10) em (6.8), temos
   
T T
ζ T Γ θ̃ ζ Γ−1 θ̃ ζ T θ̃ ζ θ̃
V̇ = − =− (6.11)
m2 m2
6 ANÁLISE DE ESTABILIDADE DE CONTROLADORES ADAPTATIVOS 43

T
como θ̃ ζ = ζ T θ̃, podemos escrever (6.11)
 2
T
θ̃ ζ
V̇ = − ≤0 (6.12)
m2
Veja que a lei adaptativa (6.6) garante que V̇ ≤ 0. Deste modo, considerando
sinais suficientemente ricos em frequência na malha fechada, pode-se garantir que o erro
paramétrico θ̃ tende a zero.

6.3 Análise de estabilidade de um controlador adaptativo por modelo de


referência: lei adaptativa do tipo LS

Agora, considere a seguinte lei de adaptação paramétrica do tipo LS

Pζ1 sgn(ρ∗ )
θ̇ = − (6.13)
m2
onde
Pζζ T P
Ṗ = − (6.14)
m2
 
e o erro aumentado 1 = e1 + θ T ζ − Wm θ T ω (vide Apêndice A) e m2 = 1 + ζ T Γζ.
Seja uma função definida positiva
T
V = θ̃ P−1 θ̃ (6.15)

Derivando (6.15), temos

V̇ = θ̃˙ T P−1 θ̃ + θ̃ P˙−1 θ̃ + θ̃ P−1 θ̃˙


T T
(6.16)
T
Considerando sgn(ρ∗ ) = 1, e também 1 = θ̃ ζ, a derivada temporal do erro
paramétrico pode ser expressa por
 
T
Pζ θ̃ ζ
θ̃˙ = θ̇ = − (6.17)
m2
A transposta de (6.17) é
 
T
ζ T P θ̃ ζ
θ̃˙ T = θ̇ = −
T
(6.18)
m2
A derivada temporal de P−1 pode ser expressa por

P˙−1 = −P−1 ṖP−1 (6.19)


44 6 ANÁLISE DE ESTABILIDADE DE CONTROLADORES ADAPTATIVOS

substituindo (6.14) em (6.19), temos

ζζ T
P˙−1 = 2 (6.20)
m
Subsituindo (6.17), (6.18) e (6.20) em (6.16), temos
 2
T
θ̃ ζ
V̇ = − ≤0 (6.21)
m2
Veja que a lei adaptativa formada por (6.13) e (6.14) garante que V̇ ≤ 0. Deste
modo, considerando sinais suficientemente ricos em frequência na malha fechada, pode-se
garantir que o erro paramétrico θ̃ tende a zero.
Todas as análises de estabilidade apresentadas até aqui foram desenvolvidas em
tempo contínuo. Estas análises são válidas também para o tempo discreto, somente
quando o período de amostragem T for suficientemente pequeno. Se T não for suficien-
temente pequeno, teremos que utilizar uma função de Lyapunov discreta V (k) e provar
que ∆V (k) = V (k + 1) − V (k) ≤ 0.
7 Incertezas

Este capítulo apresenta, brevemente, alguns conceitos sobre a modelagem de in-


certezas.

7.1 Incertezas estruturadas

Uma incerteza estruturada é o não conhecimento da localização exata dos polos


e zeros da planta. Por exemplo, uma planta de primeira ordem pode ser representada
matematicamente por

ẋ(t) = −(a + δa )x(t) + (b + δb )u(t) (7.1)

onde δa e δb são incertezas nos parâmetros conhecidos a e b.

7.2 Incertezas não-estruturadas

Uma incerteza não-estruturada é o não conhecimento do comportamento do ganho


e da fase da planta em certas frequências. Por exemplo, uma planta pode ser representada
matematicamente por
G(s) = Gp (s) [1 + µm ∆m (s)] (7.2)

onde Gp (s) é a parte modelada da planta, µm é o peso da dinâmica multiplicativa e ∆m


é a função de transferência da dinâmica multiplicativa, ou

G(s) = Gp (s) + µa ∆a (s) (7.3)

onde µa é o peso da dinâmica aditiva e ∆a é a função de transferência da dinâmica aditiva,


ou
G(s) = Gp (s) [1 + µm ∆m (s)] + µa ∆a (s) (7.4)

ou, até mesmo por fatores estáveis

Np (s) + ∆1 (s)
G(s) = (7.5)
Dp (s) + ∆2 (s)

Np (s)
onde ∆1 (s) e ∆2 (s) são Hurwitz, e Gp (s) = .
Dp (s)
8 Aspectos de Implementação Digital

8.1 Usar ou não Usar um Controlador Adaptativo: Eis a Questão!

O leitor pode se perguntar: em quais situações poderei utilizar um controlador


adaptativo?; ou: posso resolver o problema com um controlador mais simples?
As repostas desses questionamentos não são óbvias. Alguns itens devem ser levados
em consideração, por exemplo:
- Estou disposto a aprender a técnica de controle adaptativo?
- O modelo da planta é incerto?
- Há evidente imprevisão acerca do comportamento dinâmico da planta?
- O sistema é sujeito à ruídos de grande amplitude?
- Terei um microcontrolador rápido o suficiente para realizar todos os cálculos
necessários?
- O custo do microcontrolador é pequeno em relação ao sistema como um todo?
Se você respondeu SIM à maioria das perguntas acima, um sistema de controle
adaptativo pode ser uma boa opção para a sua aplicação.
É claro que um controlador PI (Proporcional-Integral) é muito mais simples que um
controlador adaptativo e, muitas vezes, um controlador simples pode dar conta do recado.
No entanto, deve se ter consciência que num sistema adaptativo, um computador irá
realizar o projeto do sistema de controle em tempo real, considerando todas as variações
do sistema em malha fechada. E é claro, que nenhum ser humano consegue ter maior
precisão e exatidão do que um computador digital.

8.2 A Necessidade de Sinais Ricos em Frequência

Como foi comentado nas seções anteriores, para se garantir convergência paramé-
trica é necessário que os sinais da malha fechada, no caso de controladores adaptativos,
sejam suficientemente ricos em frequência. No caso de estimadores de parâmetros em
tempo real, o sinal de entrada u deve ser rico em frequência.
Deste modo, um compromisso deve ser obedecido entre o teor de ruído durante o
processo de adaptação e o desempenho da variável a ser controlada. Enquanto sinais com
alto teor de frequência podem ajudar no processo de adaptação de parâmetros, distorções
podem ocorrer na variável controlada. Deste modo, recomenda-se que em problemas de
controle o projetista utilize um tempo de inicialização para a identificação dos parâmetros
de modo que essa inicialização dure apenas um pequeno intervalo de tempo.
48 8 ASPECTOS DE IMPLEMENTAÇÃO DIGITAL

8.3 Entrada-Saída ou Realimentação de Estados

A abordagem de controle por realimentação de estados pode diminuir o tamanho do


algoritmo devido a não necessidade de geração dos sinais interno ω 1 e ω 2 . No entanto, uma
grande quantidade de sensores deve ser utilizada para medição dos estados da planta. Já
os sistemas de controle adaptativo que medem apenas a entrada e saída da planta, utilizam
uma quantidade menor de sensores, no entanto o algoritmo se torna mais extenso.

8.4 O Normalizador m2

Foi visto que as leis de adaptação não normalizadas podem divergir quando o
sinal de referência possui amplitude muito elevada. Este problema é resolvido através da
utilização de sinais de normalização m2 .
Diferentes sinais de normalização podem ser utilizados. No entanto, um compro-
misso entre robustez e velocidade de adaptação deve ser obedecido. Sinais de normalização
com amplitude elevada tornam o sistema adaptativo mais robusto, no entanto podem tor-
nar o mecanismo de adaptação muito lento, o que é indesejável em certas situações. Para
obedecer este compromisso deve-se analisar, com cuidado, qual sinal m2 apresenta melhor
desempenho para a planta em questão.

8.5 Lei de Adaptação Gradiente e LS

Leis de adaptação do tipo Gradiente são mais simples de serem realizadas devido
a menor quantidade de cálculos que é necessária para a sua implementação. Isto se
deve ao fato da matriz Γ ser constante e também por ela poder ser múltipla da matriz
identidade (Γ = γI). Já, as lei de adaptação do tipo LS, necessitam do cálculo de todos os
elementos da matriz de covariância P a cada período de amostragem. Assim, dependendo
da ordem da planta, a atualização de P pode ser a tarefa mais extensa a ser realizada
pelo microprocessador. Uma solução para diminuir o tempo de cálculo de P é determinar
apenas os elementos acima da diagonal principal e os da diagonal principal. Como P é
simétrica, os elementos da diagonal inferior são idênticos aos da diagonal superior.
Mas em aplicações em que o tempo de processamento não é o fator mais impor-
tante, uma lei de adaptação LS pode nos fornecer uma grande velocidade de adaptação
paramétrica nos transitórios.
8 ASPECTOS DE IMPLEMENTAÇÃO DIGITAL 49

8.6 Ordem de Atualização das Variáveis do Controlador Adaptativo

Antes de se programar o algoritmo adaptativo, o projetista deve construir um


fluxograma para definir a correta ordem de atualização das variáveis do sistema. Muitos
erros de programação ocorrem devido à ordem incorreta das equações.
Esta ordem de atualização não é única e, assim, o mesmo sistema de adaptação
pode ser implementado de diferentes formas. Por exemplo: uma lei de adaptação pode
ser caculada da seguinte forma

θ1 (k + 1) = θ1 (k) − T γζr (k)e1 (k) (8.1)

ou também
θ1 (k) = θ1 (k − 1) − T γζr (k − 1)e1 (k − 1) (8.2)

O formato (8.1) nos mostra que a atualização da variável θ1 pode se localizar no


final do algoritmo, já que ela só será utilizada no instante de tempo de k + 1. Já o
formato (8.2) indica que a variável θ1 será utilizada no instante de tempo de k. As duas
formas poderão utilizadas, desde que se obedeça a ordem de implementação do sistema
adaptativo.

8.7 Discretização das Equações Diferenciais

Para a discretização das equações, a Transformada Z foi utilizada. No entanto,


para a dicretização da planta, utiliza-se normalmente um retentor de ordem zero, ou do
inglês ZOH (zero-order-hold) em série com a função de transferência G(s). Para a discre-
tização de equações diferenciais de primeira ordem no domínio do tempo, a aproximação
de Euler é bem prática de ser utilizada, desde que o período de amostragem T seja sufi-
cientemente pequeno. Para a discretização dos filtros restantes, pode ser utilizar ZOH ou
transformação bilinear.

8.8 Projeto do Mecanismo de Adaptação de Parâmetros θ̇

Em resumo, os seguintes itens devem ser projetados:


- Valor inicial do vetor de parâmetros θ(0): se, por ventura, for possível ter alguma
ideia do valor incial de θ ∗ , o desempenho transitório será ligeiramente melhorado, já que
o processo de adaptação ocorrerá mais rápido.
- Ganho de adaptação Γ para leis de adaptação do tipo Gradiente: quanto maior
for o valor desta matriz, mais rápido será o processo de adaptação. No entanto, valores
50 8 ASPECTOS DE IMPLEMENTAÇÃO DIGITAL

muito elevados para este ganho, podem tornar o sistema instável. Então, tenha cuidado
e moderação na escolha deste item.
- Valor inicial da matriz de covariância P(0) = p0 I: quanto maiores forem os
elementos da matriz P, mais rápido será a convergência no período transitório do sistema.
Mas assim como ocorre com a matriz Γ, valores muito elevados para P(0), podem tornar
o sistema instável.
- Escolha do par (F, q): Existe uma grande liberdade para a escolha deste par.
No entanto, para que os vetores ω 1 e ω 2 possam ser controlados, o par (F, q) deve
ser controlável (matriz de controlabilidade com rank completo). Os autovalores de F,
normalmente, são bem mais elevados do que os autovalores da planta a ser controlada.
E, também, é comum projetar o par (F, q), de tal modo que o filtro (sI − F)−1 q tenha
ganho de 0 dB na banda passante desejada.

8.9 Frequência de amostragem 1/T

Para uma razoável discretização, utilize uma frequência de amostragem de, no


mínimo, dez vezes o módulo da frequência do maior polo dominante.
9 Resolução dos Exercícios Propostos

Exercício da Seção 2.7:


d2 y(t) 1 dy(t) 1 1
a) 2
+ + y(t) = u(t).
dt RC dt LC LC
1
LC
b) G(s) = 1 1 .
s2 +
RC
s+ LC
9.9979004409.10−6 + 1.9995800882.10−5 z −1 + 9.99790044091.10−6 z −2
c) G(z) = .
1 − 1.9995600924z −1 + 0.99960008398z −2
d) y[k] = 9.9979004409.10−6 u[k]+1.9995800882.10−5 u[k−1]+9.99790044091.10−6 u[k−
2] + 1.9995600924y[k − 1] − 0.99960008398y[k − 2].
e) Diagrama de Bode de G(s): utilize a função bode(); Diagrama de Bode de G(z):
utilize a função dbode().
f), h) Código do Matlab:

%Revisão de filtros digitais e solução numérica de sistemas dinâmicos

clc
clear all
close all

format long e

%Parâmetros do circuito LCR


R=100;
L=1e-3;
C=25e-6;

wo=1/sqrt(L*C); %Frequência natural de oscilação

%Função de transferência contínua (em s)


num_s=1/(L*C);
den_s=[1 1/(R*C) 1/(L*C)];
G_s=tf(num_s,den_s)

%Discretização da planta (em z)


Ts=1e-6;
[num_z,den_z] = c2dm(num_s,den_s,Ts,’tustin’);
G_z=tf(num_z,den_z,Ts)

%Reserva de memória para os vetores de interesse


ntotal=30e3;
y=zeros(1,ntotal);
u=ones(1,ntotal);
tempo1=zeros(1,ntotal);
tempo2=zeros(1,ntotal);
52 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

X=zeros(2,ntotal);

%Coeficientes da G(z)
b0=num_z(1);
b1=num_z(2);
b2=num_z(3);

a0=den_z(1);
a1=den_z(2);
a2=den_z(3);

%Matriz de Estados
A=[0 -1/L;1/C -1/(R*C)];
B=[1/L;0];
Ad=(eye(2)+A*Ts); %Discretização por Euler
Bd=B*Ts; %Discretização por Euler

%Programar a equação de recorrência


for k=3:ntotal
u(k)=1;
y(k)=b0*u(k)+b1*u(k-1)+b2*u(k-2)-a1*y(k-1)-a2*y(k-2);
tempo1(k)=(k-3)*Ts;
end

%Programa a solução via Euler


for k=1:ntotal
X(:,k+1)=Ad*X(:,k)+Bd*u(k);
tempo2(k+1)=(k)*Ts;
end

g)       
d  iL   0 − L1   iL   L1 
= 1 1
+ u (9.1)
dt vc C
− RC vc 0
9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 53

Exercício da Seção 3.6.1:


a) Ganhos do MRC contínuo: θ1∗ = 4 e θ2∗ = 2; Ganhos do MRC discreto: θ1∗ = 3,98
e θ2∗ = 1,98;
b) Código no Matlab:

%Controlador MRC aplicado a uma planta de primeira ordem

clc
clear all
close all
format long e

%Referência
Amp=1; %Amplitude da referência
T=20; %Período fundamental da referência

%Modelo da planta em s
num_s=0.5;
den_s=[1 1];
G_s=tf(num_s,den_s);
b=num_s(1); %Coeficiente do numerador
a=den_s(2); %Coeficiente do denominador

%Discretização da planta
Ts=0.01; %Período de amostragem
[num_z,den_z] = c2dm(num_s,den_s,Ts,’zoh’);
G_z=tf(num_z,den_z,Ts)
bz=num_z(2); %Coeficiente do numerador
az=den_z(2); %Coeficiente do denominador

%Modelo de referência em s
numW_s=2;
denW_s=[1 2];
W_s=tf(numW_s,denW_s);
bm=numW_s(1); %Coeficiente do numerador
am=denW_s(2); %Coeficiente do denominador

%Discretização do modelo de referência


[numW_z,denW_z] = c2dm(numW_s,denW_s,Ts,’zoh’);
W_z=tf(numW_z,denW_z,Ts)
bmz=numW_z(2); %Coeficiente do numerador
amz=denW_z(2); %Coeficiente do denominador

%Reserva de espaço para os vetores de interesse


ntotal=1e4; %Número total de pontos no gráficos
r=zeros(1,ntotal);
ym=zeros(1,ntotal);
54 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

y=zeros(1,ntotal);
u=zeros(1,ntotal);
e1=zeros(1,ntotal);
tempo=zeros(1,ntotal);

%Projeto do MRC contínuo


theta1_est_s = bm/b
theta2_est_s = (am - a)/b

%Projeto do MRC discreto


theta1_est = bmz/bz
theta2_est = (amz - az)/bz

%theta1_est = 3.980099667498336;
%theta2_est = 1.980099667498357;

%Laço de repetição para executação do controlador MRC


for k=2:ntotal
r(k)=Amp*square(2*pi*k*Ts/T); %Referência r
ym(k)=-amz*ym(k-1)+bmz*r(k-1); %Saída do modelo de referência a ser seguido ym
y(k)=-az*y(k-1)+bz*u(k-1); %Resposta da planta y
u(k)=theta1_est*r(k) - theta2_est*y(k); %Ação de controle u

e1(k)=y(k)-ym(k); %Erro de rastreamento

tempo(k)=(k-2)*Ts; %Vetor tempo


end
9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 55

b) Código do Matlab:
%Controlador MRAC aplicado a uma planta de primeira ordem

clc
clear all
close all
format long e

%Referência
Amp=1; %Amplitude da referência
T=20; %Período fundamental da referência

%Modelo da planta em s
num_s=0.5;
den_s=[1 1];
G_s=tf(num_s,den_s);

%Discretização da planta
Ts=0.01; %Período de amostragem
[num_z,den_z] = c2dm(num_s,den_s,Ts,’zoh’);
G_z=tf(num_z,den_z,Ts)
bz=num_z(2); %Coeficiente do numerador
az=den_z(2); %Coeficiente do denominador

%Modelo de referência
numW_s=2;
denW_s=[1 2];
W_s=tf(numW_s,denW_s);
am=denW_s(2);

%Discretização do modelo de referência


[numW_z,denW_z] = c2dm(numW_s,denW_s,Ts,’zoh’);
W_z=tf(numW_z,denW_z,Ts)
bmz=numW_z(2); %Coeficiente do numerador
amz=denW_z(2); %Coeficiente do denominador

%Reserva de espaço para os vetores de interesse


ntotal=1e5; %Número total de pontos no gráficos
r=zeros(1,ntotal);
ym=zeros(1,ntotal);
y=zeros(1,ntotal);
u=zeros(1,ntotal);
e1=zeros(1,ntotal);
tempo=zeros(1,ntotal);

theta1=zeros(1,ntotal); %Ganho do controlador


theta2=zeros(1,ntotal); %Ganho do controlador
56 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

zetar=zeros(1,ntotal); %r filtrado por am/(s+am)


zetay=zeros(1,ntotal); %y filtrado por am/(s+am)

%Taxa de adaptação do mecanismo de adaptação de ganhos


g=5;

%Projeto do MRC
theta1_est = bmz/bz
theta2_est = (amz - az)/bz

%theta1_est = 3.980099667498336;
%theta2_est = 1.980099667498357;

%Filtro digital para obtenção do zetar e do zetay


%zetar(s)=F(s)*y(s)
%zetay(s)=F(s)*y(s)
%F(s)=am/(s+am)
num2=am;
den2=[1 am];
G2=tf(num2,den2);
%Discretizando
[num2_z,den2_z]=c2dm(num2,den2,Ts,’zoh’);
beta=num2_z(2)
alfa=den2_z(2)
%Obtem-se
%zetar(z)=F(z)*y(z)
%zetay(z)=F(z)*y(z)
%F(z)=beta/(z+alfa)

%Laço de repetição para executação do controlador MRAC


for k=2:ntotal

r(k)=Amp*square(2*pi*k*Ts/T);
ym(k)=-amz*ym(k-1)+bmz*r(k-1);
y(k)=-az*y(k-1)+bz*u(k-1);

theta1(k) = theta1(k-1) - Ts*g*zetar(k-1)*e1(k-1);


theta2(k) = theta2(k-1) + Ts*g*zetay(k-1)*e1(k-1);

u(k)=theta1(k)*r(k) - theta2(k)*y(k);

e1(k)=y(k)-ym(k);

%Saídas dos filtros auxiliares para o mecanisno de adaptação


zetar(k)=-alfa*zetar(k-1)+beta*r(k-1);
zetay(k)=-alfa*zetay(k-1)+beta*y(k-1);
9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 57

tempo(k)=(k-2)*Ts;
end
58 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

Exercício da Seção 3.6.2:


Código do Matlab:

%Controlador MRAC aplicado a uma planta de segunda ordem com grau relativo
%igual a 1

%Ioannou

clc
clear all
close all
format long e

%Referência
Amp=1; %Amplitude da referência
T=20; %Período fundamental da referência

%Modelo da planta em s
kp=-2;
num_s=kp*[1 5];
den_s=[1 -2 1];
G_s=tf(num_s,den_s)

%Discretização da planta
Ts=0.001; %Período de amostragem
[num_z,den_z] = c2dm(num_s,den_s,Ts,’zoh’);
G_z=tf(num_z,den_z,Ts)

b1=num_z(2)
b2=num_z(3)
a1=den_z(2)
a2=den_z(3)

%Modelo de referência
km=3;
numW_s=km;
denW_s=[1 3];
W_s=tf(numW_s,denW_s)
am=denW_s(2);

%Discretização do modelo de referência


[numW_z,denW_z] = c2dm(numW_s,denW_s,Ts,’zoh’);
W_z=tf(numW_z,denW_z,Ts)
bmz=numW_z(2); %Coeficiente do numerador
amz=denW_z(2); %Coeficiente do denominador

%Reserva de espaço para os vetores de interesse


9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 59

ntotal=1e6; %Número total de pontos no gráficos


r=zeros(1,ntotal);
ym=zeros(1,ntotal);
y=zeros(1,ntotal);
u=zeros(1,ntotal);
e1=zeros(1,ntotal);
w1=zeros(1,ntotal);
w2=zeros(1,ntotal);
m_2=ones(1,ntotal);
tempo=zeros(1,ntotal);
theta1=zeros(1,ntotal); %Ganho do controlador
theta2=zeros(1,ntotal); %Ganho do controlador
thetay=zeros(1,ntotal); %Ganho do controlador
thetar=zeros(1,ntotal); %Ganho do controlador

%MRC Contínuo
theta1_est=-4;
theta2_est=-2;
thetay_est= 3;
thetar_est= km/kp;

%Taxa de adaptação do mecanismo de adaptação de ganhos


g=10;

%Par (F,q)
F=-1;
q=1;

Fd=1+F*Ts;
qd=q*Ts;

%Laço de repetição para executação do controlador MRAC


for k=3:ntotal

r(k)=Amp*square(2*pi*k*Ts/T);
%r(k)=1;

%Malha aberta
%u(k)=r(k);

ym(k)=-amz*ym(k-1)+bmz*r(k-1);

y(k)= -a1*y(k-1)-a2*y(k-2)+b1*u(k-1)+b2*u(k-2);

%Não normalizado, forçar m(k-1)=1


%m(k-1)=1;
60 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

%Ioannou
theta1(k) = theta1(k-1) - (thetar_est/abs(thetar_est))*Ts*g*w1(k-1)*e1(k-1)/m_2(k-1);
theta2(k) = theta2(k-1) - (thetar_est/abs(thetar_est))*Ts*g*w2(k-1)*e1(k-1)/m_2(k-1);
thetay(k) = thetay(k-1) - (thetar_est/abs(thetar_est))*Ts*g*y(k-1)*e1(k-1)/m_2(k-1);
thetar(k) = thetar(k-1) - (thetar_est/abs(thetar_est))*Ts*g*r(k-1)*e1(k-1)/m_2(k-1);

w1(k)=exp(F*Ts)*w1(k-1)+inv(F)*(exp(F*Ts)-1)*q*u(k-1);
w2(k)=exp(F*Ts)*w2(k-1)+inv(F)*(exp(F*Ts)-1)*q*y(k-1);

%w1(k)=Fd*w1(k-1)+qd*u(k-1);
%w2(k)=Fd*w2(k-1)+qd*y(k-1);

%MRC
% theta1(k)=theta1_est;
% theta2(k)=theta2_est;
% thetay(k)=thetay_est;
% thetar(k)=thetar_est;

u(k)=theta1(k)*w1(k) + theta2(k)*w2(k) + thetay(k)*y(k) + thetar(k)*r(k);


e1(k)=y(k)-ym(k);
m_2(k)=1+w1(k)*w1(k)+w2(k)*w2(k)+y(k)*y(k)+r(k)*r(k); %m^2 = 1+w’w
tempo(k)=(k-3)*Ts;
end
9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 61

Exercício da Seção 3.6.3:


Código do Matlab:

%Controlador MRAC aplicado a um circuito LCR

%Ioannou

clc
clear all
close all
format long e

%Referência
Amp=311; %Amplitude da referência
T=1/60; %Período fundamental da referência

%Parâmetros
R=100;
L=1e-3;
C=100e-6;

Ts=1/10e3; %Período de amostragem

%Modelo da planta em s, n*=2


kp=1/(L*C);
num_s=kp*[0 1];
den_s=[1 1/(R*C) 1/(L*C)];
G_s=tf(num_s,den_s)

%Discretização da planta
[num_z,den_z] = c2dm(num_s,den_s,Ts,’zoh’);
G_z=tf(num_z,den_z,Ts)

b1=num_z(2)
b2=num_z(3)
a1=den_z(2)
a2=den_z(3)

%Modelo de referência em s, n*=2


km=1/(L*C);
numW_s=km*[0 1];
denW_s=[1 10/(R*C) km]; %amortecimento maior que a planta
W_s=tf(numW_s,denW_s)

%Discretização do modelo de referência


[numW_z,denW_z] = c2dm(numW_s,denW_s,Ts,’zoh’);
W_z=tf(numW_z,denW_z,Ts)
62 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

beta1=numW_z(2)
beta2=numW_z(3)
alfa1=denW_z(2)
alfa2=denW_z(3)

%Reserva de espaço para os vetores de interesse


ntotal=1e5; %Número total de pontos no gráficos
r=zeros(1,ntotal);
ym=zeros(1,ntotal);
y=zeros(1,ntotal);
u=zeros(1,ntotal);
e1=zeros(1,ntotal);
E1=zeros(1,ntotal); %Erro aumentado
v=zeros(1,ntotal);
w1=zeros(1,ntotal);
w2=zeros(1,ntotal);
zetaw1=zeros(1,ntotal);
zetaw2=zeros(1,ntotal);
zetay=zeros(1,ntotal);
zetar=zeros(1,ntotal);
m_2=ones(1,ntotal);
tempo=zeros(1,ntotal);
theta1=zeros(1,ntotal); %Ganho do controlador
theta2=zeros(1,ntotal); %Ganho do controlador
thetay=zeros(1,ntotal); %Ganho do controlador
thetar=zeros(1,ntotal); %Ganho do controlador
thetar_est=kp/km;

%Taxa de adaptação do mecanismo de adaptação de ganhos


g=200;

%Par (F,q)
F=-10e3;
q=abs(F);

Fd=exp(F*Ts);
qd=inv(F)*(exp(F*Ts)-1)*q;

%Laço de repetição para executação do controlador MRAC


for k=3:ntotal

%O sinal de referência inicia como uma forma de onda quadrada (rica em


%frequencia) para acelerar o processo de convergência dos ganhos.
Ta=1/60;
r(k)=100*square(2*pi*k*Ts/Ta);
9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 63

if k>ntotal/2
r(k)=Amp*sin(2*pi*k*Ts/T); %Muda a referência para uma senoide
end

if k>2*ntotal/3
r(k)=0.5*Amp*sin(2*pi*k*Ts/T); %Muda a amplitude da senoide
end

%Malha aberta
%u(k)=r(k);

%Modelo de referência
ym(k)= -alfa1*ym(k-1)-alfa2*ym(k-2)+beta1*r(k-1)+beta2*r(k-2);

%Filtros auxiliares
zetaw1(k)= -alfa1*zetaw1(k-1)-alfa2*zetaw1(k-2)+beta1*w1(k-1)+beta2*w1(k-2);
zetaw2(k)= -alfa1*zetaw2(k-1)-alfa2*zetaw2(k-2)+beta1*w2(k-1)+beta2*w2(k-2);
zetay(k)= -alfa1*zetay(k-1)-alfa2*zetay(k-2)+beta1*y(k-1)+beta2*y(k-2);
zetar(k)= -alfa1*zetar(k-1)-alfa2*zetar(k-2)+beta1*r(k-1)+beta2*r(k-2);

%Saída da planta
y(k)= -a1*y(k-1)-a2*y(k-2)+b1*u(k-1)+b2*u(k-2);

%Ioannou
theta1(k) = theta1(k-1) - (thetar_est/abs(thetar_est))*Ts*g*zetaw1(k-1)*E1(k-1)/m_2(k-1);
theta2(k) = theta2(k-1) - (thetar_est/abs(thetar_est))*Ts*g*zetaw2(k-1)*E1(k-1)/m_2(k-1);
thetay(k) = thetay(k-1) - (thetar_est/abs(thetar_est))*Ts*g*zetay(k-1)*E1(k-1)/m_2(k-1);
thetar(k) = thetar(k-1) - (thetar_est/abs(thetar_est))*Ts*g*zetar(k-1)*E1(k-1)/m_2(k-1);

w1(k)=Fd*w1(k-1)+qd*u(k-1);
w2(k)=Fd*w2(k-1)+qd*y(k-1);

u(k)=theta1(k)*w1(k) + theta2(k)*w2(k) + thetay(k)*y(k) + thetar(k)*r(k); %u=theta’omega

%Erro aumentado
e1(k)=y(k)-ym(k);
v(k)= -alfa1*v(k-1)-alfa2*v(k-2)+beta1*u(k-1)+beta2*u(k-2);
E1(k) = e1(k) + theta1(k)*zetaw1(k) + theta2(k)*zetaw2(k) + thetay(k)*zetay(k) +
thetar(k)*zetar(k) - v(k);
m_2(k)=1+zetaw1(k)*zetaw1(k)+zetaw2(k)*zetaw2(k)+zetay(k)*zetay(k)+zetar(k)*zetar(k);
%m^2 = 1 +zeta’zeta
tempo(k)=(k-3)*Ts;
end
64 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

Exercício da Seção 4.4.1:


Código do Matlab:

%Algoritmo de estimação de parâmetros


%Um parâmetro

clc
clear all
close all

T=1; %Período do sinal de excitação


Ts=0.01; %Período de amostragem

ntotal=2e3; %Número total de pontos

%Variáveis de interesse
y=zeros(1,ntotal);
y_e=zeros(1,ntotal);
u=zeros(1,ntotal);
theta=zeros(1,ntotal);
E1=zeros(1,ntotal);
tempo=zeros(1,ntotal);
dV=zeros(1,ntotal);

%Ganhos de adaptação
g=1;

%Parâmetro a ser identificado


theta_est=2;

for k=2:ntotal

u(k)=square(2*pi*k*Ts/T); %Sinal de excitação


%u(k)= 1;

y(k)= theta_est*u(k); %Medição da resposta da planta


theta(k)=theta(k-1)+Ts*g*E1(k-1)*u(k-1); %Lei adaptativa
E1(k)=y(k)-theta(k)*u(k); %Erro de estimação de y
y_e(k)=theta(k)*u(k); %y estimado
dV(k)=-E1(k)*E1(k); %Derivada temporal da função de Lyapunov
tempo(k)=(k-2)*Ts; %tempo
end
9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 65

Exercício da Seção 4.4.2:


Código do Matlab:

%Algoritmo de estimação de parâmetros


%Dois parâmetros

clc
clear all
close all

%Amplitude do sinal de excitação


Amp=1;

T=1; %Período do sinal de excitação


Ts=0.01; %Período de amostragem

ntotal=1e4; %Número total de pontos

%Variáveis de interesse
x=zeros(1,ntotal);
x_e=zeros(1,ntotal);
u=zeros(1,ntotal);
a_e=zeros(1,ntotal);
b_e=zeros(1,ntotal);
E1=zeros(1,ntotal);
tempo=zeros(1,ntotal);
dV=zeros(1,ntotal);

g1=10;
g2=10;

a=2; %Parâmetro desconhecido


b=1; %Parâmetro desconhecido

for k=2:ntotal

u(k)=Amp*square(2*pi*k*Ts/T); %Sinal de Excitação


x(k)= (1-a*Ts)*x(k-1)+b*Ts*u(k-1); %Medição da saída da planta (x)
a_e(k) = a_e(k-1)-Ts*g1*E1(k-1)*x_e(k-1); %Lei adaptativa para a
b_e(k) = b_e(k-1)+Ts*g2*E1(k-1)*u(k-1); %Lei adaptativa para b
x_e(k)= (1-a_e(k-1)*Ts)*x_e(k-1) + b_e(k-1)*Ts*u(k-1); %Estimação de x
E1(k)=x(k)-x_e(k); %Erro de estimação de x
dV(k)=-a*E1(k)*E1(k); %Derivada temporal da função de Lyapunov
tempo(k)=(k-2)*Ts; %Tempo
end
66 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

Exercício da Seção 4.4.3:


Código do Matlab:
%Algoritmo de estimação de parâmetros de um circuito LCR
%A identificação é realizada a partir da medição da corrente do indutor e
%da tensão no capacitor

clc
clear all
close all
tic

%Sinal de excitação u
Amp=1; % amplitude do sinal de exitação
f=200; % frequencia do sinal de exitação
T=1/f; % Período do sinal de excitação

%R, L e C
R=20; % Valor do resistor
L=1e-3; % Valor do indutor
C=100e-6; % Valor do capacitor

ntotal=3e5; % Número total de pontos na simulação

%Variáveis de interesse
x=zeros(2,ntotal);
x1=zeros(1,ntotal);
x2=zeros(1,ntotal);
x1_e=zeros(1,ntotal); %estimado
x2_e=zeros(1,ntotal); %estimado
u=zeros(1,ntotal); %Sinal de excitação u
a11_e=zeros(1,ntotal); %estimado
a12_e=zeros(1,ntotal); %estimado
a21_e=zeros(1,ntotal); %estimado
a22_e=zeros(1,ntotal); %estimado
b1_e=zeros(1,ntotal); %estimado
b2_e=zeros(1,ntotal); %estimado
m_2=ones(1,ntotal); %Normalizador
E1=zeros(2,ntotal); %Erro de estimação de X
E1_1=zeros(1,ntotal);
E1_2=zeros(1,ntotal);
tempo=zeros(1,ntotal);
dV=zeros(1,ntotal); %derivada da função V (é uma variável escalar)

%Matrizes do sistema em espaço de estado


A=[0 -1/L; 1/C -1/(R*C)];
a11=A(1,1)*ones(1,ntotal);
a12=A(1,2)*ones(1,ntotal);
9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 67

a21=A(2,1)*ones(1,ntotal);
a22=A(2,2)*ones(1,ntotal);

B=[1/L; 0];
b1=B(1)*ones(1,ntotal);
b2=B(2)*ones(1,ntotal);

I=eye(2); %Identidade 2x2

%identificação da frequencia polos


aut=eig(A);
fn1=abs(aut(1))/(2*pi);
fn2=abs(aut(2))/(2*pi);

fs=2000*fn1; %Frequencia de amostragem


Ts=1/fs; %Período de amostragem

%Discretização da planta
Ad=expm(A*Ts);
Bd=inv(A)*(expm(A*Ts)-eye(2))*B;

%Ganhos de adaptação
g1=10/Ts; %A divisão por Ts é simplesmente para cortar o Ts do algoritmo de identificação
g2=g1;

% laço de repetição
for k=2:ntotal

u(k)=Amp*square(2*pi*k*Ts/T); %Sinal de Excitação


x(:,k)= Ad*x(:,k-1)+Bd*u(k-1); %Medição dos estados da planta, x
x1(k)=x(1,k); %Estado x1
x2(k)=x(2,k); %Estado x2

% normalizador
%m_2(k)=1+x(:,k)’*x(:,k);
m_2(k-1)=1+u(k-1)*u(k-1);

%Identificar os elementos da matriz Ap


a11_e(k) = a11_e(k-1)+Ts*g1*E1_1(k-1)*x1_e(k-1)/m_2(k-1); %Lei adaptativa para a11
a12_e(k) = a12_e(k-1)+Ts*g1*E1_1(k-1)*x2_e(k-1)/m_2(k-1); %Lei adaptativa para a12
a21_e(k) = a21_e(k-1)+Ts*g1*E1_2(k-1)*x1_e(k-1)/m_2(k-1); %Lei adaptativa para a21
a22_e(k) = a22_e(k-1)+Ts*g1*E1_2(k-1)*x2_e(k-1)/m_2(k-1); %Lei adaptativa para a22

%Identificar os elementos da matriz Bp


b1_e(k) = b1_e(k-1)+Ts*g2*E1_1(k-1)*u(k-1)/m_2(k-1); %Lei adaptativa para b1
b2_e(k) = b2_e(k-1)+Ts*g2*E1_2(k-1)*u(k-1)/m_2(k-1); %Lei adaptativa para b2
68 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

x1_e(k)= (1+a11_e(k-1)*Ts)*x1_e(k-1)+a12_e(k-1)*Ts*x2_e(k-1)+b1_e(k-1)*Ts*u(k-1); %Estimação de x1


x2_e(k)= (1+a22_e(k-1)*Ts)*x2_e(k-1)+a21_e(k-1)*Ts*x1_e(k-1)+b2_e(k-1)*Ts*u(k-1); %Estimação de x2

E1_1(k)=x1(k)-x1_e(k); %Erro de estimação de x1


E1_2(k)=x2(k)-x2_e(k); %Erro de estimação de x2
E1(:,k)=[E1_1(k);E1_2(k)]; % x-x_e

dV(k)=-E1(:,k)’*E1(:,k); %Derivada temporal da função de Lyapunov

tempo(k)=(k-2)*Ts; %Tempo
end

%Parâmetros estimados: R, L e C
L_e=1/b1_e(ntotal)
C_e=1/a21_e(ntotal)
R_e=-1/(a22_e(ntotal)*C_e)
9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 69

Exercício da Seção 5.1:


Código do Matlab:

%Controlador MRAC-LS aplicado a uma planta de segunda ordem com grau relativo
%qualquer

%Ioannou
clc
clear all
close all
format long e

%Referência
Amp=1; %Amplitude da referência
T=20; %Período fundamental da referência

%Modelo da planta em s, n*=2


kp=1;
num_s=kp*[0 1];
den_s=[1 1 1];
G_s=tf(num_s,den_s)

%Discretização da planta
Ts=0.01; %Período de amostragem
[num_z,den_z] = c2dm(num_s,den_s,Ts,’zoh’);
G_z=tf(num_z,den_z,Ts)

b1=num_z(2)
b2=num_z(3)
a1=den_z(2)
a2=den_z(3)

%Modelo de referência em s, n*=2


km=1;
numW_s=km*[0 1];
denW_s=[1 2 1];
W_s=tf(numW_s,denW_s)

%Discretização do modelo de referência


[numW_z,denW_z] = c2dm(numW_s,denW_s,Ts,’zoh’);
W_z=tf(numW_z,denW_z,Ts)

beta1=numW_z(2)
beta2=numW_z(3)
alfa1=denW_z(2)
alfa2=denW_z(3)
70 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

%Reserva de espaço para os vetores de interesse


ntotal=1e5; %Número total de pontos no gráficos
r=zeros(1,ntotal);
ym=zeros(1,ntotal);
y=zeros(1,ntotal);
u=zeros(1,ntotal);
e1=zeros(1,ntotal);
E1=zeros(1,ntotal); %Erro aumentado
v=zeros(1,ntotal);
w1=zeros(1,ntotal);
w2=zeros(1,ntotal);
zetaw1=zeros(1,ntotal);
zetaw2=zeros(1,ntotal);
zetay=zeros(1,ntotal);
zetar=zeros(1,ntotal);
zeta=zeros(4,ntotal);
m_2=ones(1,ntotal);
tempo=zeros(1,ntotal);
theta1=zeros(1,ntotal); %Ganho do controlador
theta2=zeros(1,ntotal); %Ganho do controlador
thetay=zeros(1,ntotal); %Ganho do controlador
thetar=zeros(1,ntotal); %Ganho do controlador
thetar_est=kp/km;
THETA=zeros(4,ntotal); %Ganho do controlador

%Matriz P
P=zeros(4,4,ntotal);
%Elementos da diagonal principal
p1=zeros(1,ntotal);
p2=zeros(1,ntotal);
p3=zeros(1,ntotal);
p4=zeros(1,ntotal);

%Par (F,q)
F=-1;
q=1;

%Laço de repetição para executação do controlador MRAC

%Inicialização da matriz P
p0=1000;

%Inicialização da Matriz: P(0) = p0*I


P(1,1,1)=p0;
P(1,1,2)=p0;

P(2,2,1)=p0;
9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS 71

P(2,2,2)=p0;

P(3,3,1)=p0;
P(3,3,2)=p0;

P(4,4,1)=p0;
P(4,4,2)=p0;

for k=3:ntotal

r(k)=Amp*square(2*pi*k*Ts/T);
%r(k)=1;

%Malha aberta
%u(k)=r(k);

%Modelo de referência
ym(k)= -alfa1*ym(k-1)-alfa2*ym(k-2)+beta1*r(k-1)+beta2*r(k-2);

%Filtros auxiliares
zetaw1(k)= -alfa1*zetaw1(k-1)-alfa2*zetaw1(k-2)+beta1*w1(k-1)+beta2*w1(k-2);
zetaw2(k)= -alfa1*zetaw2(k-1)-alfa2*zetaw2(k-2)+beta1*w2(k-1)+beta2*w2(k-2);
zetay(k)= -alfa1*zetay(k-1)-alfa2*zetay(k-2)+beta1*y(k-1)+beta2*y(k-2);
zetar(k)= -alfa1*zetar(k-1)-alfa2*zetar(k-2)+beta1*r(k-1)+beta2*r(k-2);
%Junta num vetor só
zeta(:,k)=[zetaw1(k);zetaw2(k);zetay(k);zetar(k)];

%Matriz P
%Pure LS
P(:,:,k)=P(:,:,k-1)-Ts*P(:,:,k-1)*zeta(:,k-1)*zeta(:,k-1)’*P(:,:,k-1)/m_2(k-1);

%Elementos da diagonal principal


p1(k)=P(1,1,k);
p2(k)=P(2,2,k);
p3(k)=P(3,3,k);
p4(k)=P(4,4,k);

%Saída da planta
y(k)= -a1*y(k-1)-a2*y(k-2)+b1*u(k-1)+b2*u(k-2);

%Ioannou - RLS
THETA(:,k) = THETA(:,k-1) -
P(:,:,k-1)*(thetar_est/abs(thetar_est))*Ts*zeta(:,k-1)*E1(k-1)/m_2(k-1);
theta1(k) = THETA(1,k);
theta2(k) = THETA(2,k);
thetay(k) = THETA(3,k);
72 9 RESOLUÇÃO DOS EXERCÍCIOS PROPOSTOS

thetar(k) = THETA(4,k);

w1(k)=exp(F*Ts)*w1(k-1)+inv(F)*(exp(F*Ts)-1)*q*u(k-1);
w2(k)=exp(F*Ts)*w2(k-1)+inv(F)*(exp(F*Ts)-1)*q*y(k-1);

u(k)=theta1(k)*w1(k) + theta2(k)*w2(k) + thetay(k)*y(k) + thetar(k)*r(k); %u=theta’omega

%Atualização do erro aumentado: E1 = theta_til’zeta


e1(k)=y(k)-ym(k);
v(k)= -alfa1*v(k-1)-alfa2*v(k-2)+beta1*u(k-1)+beta2*u(k-2);
E1(k) = e1(k) +
theta1(k)*zetaw1(k) + theta2(k)*zetaw2(k) + thetay(k)*zetay(k) + thetar(k)*zetar(k) - v(k);

m_2(k)=1+zetaw1(k)*zetaw1(k)+zetaw2(k)*zetaw2(k)+zetay(k)*zetay(k)+zetar(k)*zetar(k);

tempo(k)=(k-3)*Ts;
end
APÊNDICES
Apêndice A – Equação do Erro de Rastreamento e Erro Aumentado

A análise apresentada aqui desconsidera incertezas não-estruturadas.


Sem perda de generalidade, considere kp = km = 1 e θr (t) = 1 , então a lei de
controle (6.3), pode ser expressa por

u = θT ω + r (A.1)

Subtraindo θ ∗T ω dos dois lados de (A.1), temos

u − θ ∗T ω = θ T ω + r − θ ∗T ω (A.2)

ou simplesmente
T
u − θ ∗T ω = θ̃ ω + r (A.3)
h i
onde θ ∗T = θ ∗T ∗T ∗
1 ; θ 2 ; θy é o vetor de parâmetros desejados. Então, pode-se escrever
(A.3) como
T
θ̃ ω + r = u − θ ∗T ω = u − θ ∗T ∗T ∗
1 ω 1 − θ 2 ω 2 − θy y (A.4)

ou ainda
T
θ̃ ω + r = [1 − f1 (s) − Gp (s)f2 (s)] u (A.5)
−1 −1
onde f1 (s) = θ ∗T
1 (sI − F) q, f2 (s) = θy∗ + θ ∗T
2 (sI − F) q e θ̃ = θ − θ ∗ é o vetor erro
dos parâmetros.
De (A.5), obtemos o sinal de referência (sinal de entrada do modelo de referência
Wm (s))
T
r = [1 − f1 (s) − Gp (s)f2 (s)] u − θ̃ ω (A.6)

Quando θ = θ ∗ , temos θ̃ = 0, e consequentemente y = ym . Nesta situação, pode-se


escrever
[1 − f1 (s) − f2 (s)Gp (s)] u = Wm−1 (s)Gp (s)u (A.7)

o que implica dizer que

Gp (s) = Wm (s) [1 − f1 (s) − f2 (s)Gp (s)] (A.8)

Como y = Gp (s)u, usando (A.8) podemos escrever

y = Gp (s)u = Wm (s) [1 − f1 (s) − f2 (s)Gp (s)] u (A.9)

Substituindo (A.5) em (A.9), temos


T
y = Wm (s)θ̃ ω + r (A.10)
76 Apêndice A – Equação do Erro de Rastreamento e Erro Aumentado

Agora, usando (A.10) o erro de rastreamento pode ser reescrito da seguinte forma
T
e1 = y − ym = Wm (s)θ̃ ω (A.11)

Para se definir o erro aumentado 1 , considere a seguinte igualdade


 
Wm θ ∗T ω = θ ∗T (Wm ω) (A.12)

Como θ ∗ = θ − θ̃, (A.12), pode ser reescrito como


 
  T T
Wm θ T ω − Wm θ̃ ω = θ T (Wm ω) − θ̃ (Wm ω) (A.13)

ou também  
T T  
θ̃ ζ − Wm θ̃ ω = θ T ζ − Wm θ T ω (A.14)

considerando ζ = Wm Iω.
A igualdade (A.14) é fundamental para escrever o erro aumentado 1 . O lado direito
de (A.14) é computável e é utilizado para cálculo do erro aumentado em um ambiente
digital. Já o lado esquerdo de (A.14) não é computável, mas é muito útil para as provas
teóricas de estabilidade.
 
Então, somando o termo θ T ζ − Wm θ T ω de (A.14) ao erro de rastreamento e1 ,
temos o erro aumentado computável digitalmente
 
1 = e1 + θ T ζ − Wm θ T ω (A.15)
 
T T
E, somando o termo θ̃ ζ −Wm θ̃ ω de (A.14) ao erro de rastreamento e1 , temos
o erro aumentado para fins de análise de estabilidade
 
T T T
1 = e1 + θ̃ ζ − Wm θ̃ ω = θ̃ ζ (A.16)

Analisando (A.16), é possível concluir que quando o vetor erro de parâmetros


θ̃ → 0 temos que 1 → 0.
Apêndice B – Normas Lp

Para funções do tempo X(t), a norma Lp é definida por


Z ∞ 1/p
p
kXkp = kX(t)k dt (B.1)
0

para p ∈ [1,∞) e dizemos que X ∈ Lp quando kXkp existe (isto é, kXkp é finito).
A norma L∞ é definida por

kXk∞ = supkX(t)k,t ≥ 0 (B.2)

e dizemos que X ∈ L∞ quando kXk∞ existe.


Quando um sinal X ∈ L∞ , kXk é apenas limitado em amplitude. Se um sinal
X ∈ L2 , kXk possui energia finita (sinal de energia). E, por fim, se um sinal X ∈ L1 ,
kXk é assintoticamente estável.
REFERÊNCIAS

ANDERSON, B. D. O.; LANDAU, I. D. Least squares identification and the robust


strict positive real property. Circuits and Systems I: Fundamental Theory and
Applications, IEEE Transactions on, v. 41 , Issue: 9, p. 601 – 607, 1994.

ASTRÖM, K. J. Adaptive feedback control. Proceedings of the IEEE, v. 75, p. 185 –


217, 1987.

. Robust and adaptive pole placement. American Control Conference, Atlanta,


Ga, USA, p. 2423 – 2428, 1988.

ASTRÖM, K. J.; KANNIAH, J. A fast adaptive controller for motion control. Motion
Control Proceedings, Asia-Pacific Workshop on Advances in, p. 63 – 68, 1993.

ASTRÖM, K. J.; WITTENMARK, B. A survey of adaptive control applications. Deci-


sion and Control, Proceedings of the 34th IEEE Conference on, v. 1, p. 649 –
654, 1995.

CÂMARA, H. T. Uma contribuição ao controle de motores de indução trifásicos


sem o uso de sensores mecânicos. Dissertação (Mestrado) — Universidade Federal
de Santa Maria, Santa Maria, UFSM, 2007.

CARATI, E. G.; MONTAGNER, V. M.; GRÜNDLING, H. A. A single-phase ac power


source using robust model reference adaptive control. IEEE International Conference
on Industrial Eletronics, Control and Instrumentation, p. 1428 – 1432, 2000.

CARATI, E. G.; RICHTER, C. M.; GRÜNDLING, H. A. A three-phase ac power source


using robust model reference. Proceedings of the 39th IEEE Conference on Deci-
sion and Control, Sydney, Australia, p. 4078 – 4083, 2000.

DATTA, A. Robustness of discrete-time adaptive controllers: An input-output approach.


IEEE Transactions on Automatic Control, v. 38, n. 12, p. 1207 – 1211, 1993.

DUARTE, M. A.; NARENDRA, K. S. A new approach to model reference adaptive


control. International Journal of Adaptive Control and Signal Processing, v. 3,
p. 53–73, 1989.

FLORA, L. D.; GRÜNDLING, H. A. Design of a robust model reference adaptive vol-


tage controller for an electrodynamic shaker. Revista Brasileira de Eletrônica de
Potência (SOBRAEP), v. 13, n. 3, p. 133 – 140, 2008.

GIRI, F. et al. A globally convergent pole placement indirect. IEEE Transaction on


Automatic Control, v. 34, n. 3, 1989.

GOODWIN, G. C.; HILL, D. J.; PALANISWAMI, M. A perspective on convergence of


adaptive control. Automatica, v. 20, n. 5, p. 519–531, 1984.
80 REFERÊNCIAS

GRÜNDLING, H. A. Controle Adaptativo Robusto por Modelo de Referência.


Tese (Doutorado) — Instituto Tecnológico de Aeronautica, ITA, 1995.

GRÜNDLING, H. A.; CARATI, E. G.; PINHEIRO, J. R. A robust model reference adap-


tive controller for ups applications. Proceedings on IEEE International Conference
Industrial Electronics, Control Instrumentation, New Orleans, LA, p. 901 – 905,
1997.

HSU, L. Variable structure model reference adatipve control (vs-mrac) using only input
and output measurements: Part ii. Proceedings of the 27th Conference on Decision
and Control, v. 3, p. 2396 – 2401, 1988.

IOANNOU, P.; DATTA, A. Robust adaptive control: A unified approach. Proceedings


of the IEEE, v. 79, p. 1736 – 1768, 1991.

IOANNOU, P. A.; SUN, J. Robust Adaptive Control. [S.l.: s.n.], 1996.

IOANNOU, P. A.; TSAKALIS, K. S. A robust direct adaptive controller. IEEE Tran-


sactions on Automatic Control, v. 31, n. 2, p. 1033 – 1043, 1986.

. A robust discrete-time adaptive controller. IEEE Proceedings of 25th Confe-


rence on Decision and Control, n. 2, p. 1033 – 1043, 1986.

. The class of unmodeled dynamics in robust adaptive control. American Control


Conference, 1988, Atlanta, Ga, USA, p. 337 – 342, 1988.

KHOO, I. H.; REDDY, H. C. Delta operator based design of 1-d and 2-d filters: An
overview. Circuits and Systems, APCCAS, IEEE Asia Pacific Conference on,
p. 1442 – 1445, 2008.

LI, G.; GEVERS, M. Comparative study of finite wordlength effects in shift and delta
operator parameterizations. IEEE Transactions on Automatic Control, v. 38, n. 5,
p. 803 – 807, 1993.

LOZANO-LEAL, R.; COLLADO, J.; MONDIÉ, S. Model reference adaptive control


without a priori knowledge of the high frequency gain. IEEE Transactions on Au-
tomatic Control, v. 35, n. 1, p. 71 – 78, 1990.

LOZANO-LEAL, R.; GOODWIN, G. C. A globally convergent adaptive pole placement


algorithm without a persistency of excitation requirement. Automatic Control, IEEE
Transactions on, p. 795 – 798, 1985. ISSN 0018-9286.

MARTINS, O. S. Comparação de técnicas de controle de velocidade Sensorless


aplicadas a motores de indução em plataforma DSP. Dissertação (Mestrado) —
Universidade Federal de Santa Maria, Santa Maria, UFSM, 2006.

MASSING, J. et al. Adaptive current control for grid-connected converters with lcl-filter.
Industrial Electronics, IEEE Transactions on, v. 59, p. 4681 – 4693, 2012.
REFERÊNCIAS 81

MIDDLETON, R. H.; GOODWIN, G. C. Digital Estimation and Control: A Unified


Approach. [S.l.]: Englewood Cliffs, NJ: Prentice-Hall, 1990.

MILLER, D. E. A new approach to adaptive control: no nonlinearities. Systems and


Control Letters, v. 49, p. 67–79, 2003.

MORSE, A. S. A three-dimensional universal controller for the adaptive stabilization


of any strictly proper minimum-phase system with relative degree not exceeding two.
Automatic Control, IEEE Transactions on, v. 30 , Issue: 12, p. 1188 – 1191, 1985.

NARENDRA, K.; LIN, Y.-H.; VALAVANI, L. Stable adaptive controller design, part ii:
Proof of stability. Automatic Control, IEEE Transactions on, v. 25 , Issue: 3, p.
440 – 448, 1980.

NARENDRA, K. S.; ANNASWAMY, A. M. A new adaptive law for robust adaptation


without persistent excitation. Automatic Control, IEEE Transactions on, v. 32, p.
134 – 145, 1987. ISSN 0018-9286.

NEWMAN, M. J.; HOLMES, D. G. Delta operator digital filters for high performance
inverter applications. IEEE Transaction on Power Electronics, v. 18, n. 1, p. 454 –
477, 2003.

OGATA, K. Discrete-time Control Systems. 2. ed. Universidade de Michigan: [s.n.],


1995. ISBN 0130342815, 9780130342812.

PADGETT, W. T.; ANDERSON, D. V. Fixed-Point Signal Processing. [S.l.]: Car-


negie Mellon University, 2009.

QINGZHENG, G.; FEI, G.; CHANGMAO, Z. Indirect robust model reference adaptive
control for discrete-time system with output uncertainty. Proceedings of the 30th
Chinese Control Conference, p. 2216 – 2221, 2011.

RIBEIRO, L. A. S.; JACOBINA, C. B.; LIMA, A. M. N. Estimação de parâmetros e


velocidade de máquinas. Revista da SBA Controle e Automação, v. 8, p. 66 – 76,
1997.

RICHTER, C. M. Teoria de Controle Adaptativo Robusto Multivariável por


Modelo de Referência. Tese (Doutorado) — Universidade Federal de Santa Maria,
2003.

ROHRS, C. E. et al. Robustness of adaptive control algorithms in the presence of unmo-


deled dynamics. Decision and Control, 1982 21st IEEE Conference on, v. 21, p.
3–11, 1982.

SÁEZ, V. et al. Fixed point implementation of iir filters using delta operator applied
to distributed power generation systems. IECON’10 - 36th Annual Conference on
IEEE Industrial Electronics Society, p. 1709 – 1714, 2010.
82 REFERÊNCIAS

SALGADO, M. E.; GOODWIN, G. C.; MIDDLETON, R. H. Modified least squares


algorithm incorporating exponencial resetting and forgetting. Control International
Journal, v. 47, n. 2, p. 477 – 491, 1988.

STEFANELLO, M. Projeto e desenvolvimento de uma Fonte de Potência CA


Trifásica a quatro fios. Dissertação (Mestrado) — Universidade Federal de Santa Maria,
Santa Maria, UFSM, 2006.

STEFANELLO, M. Controle Adaptativo Robusto de Estrutura Variável por Mo-


delo de Referência Aplicado a Filtros Ativos de Potência. Tese (Doutorado) —
Universidade Federal de Santa Maria, UFSM, 2010.

STEFANELLO, M.; GRÜNDLING, H. Stability analysis of a combined direct and variable


structure adaptive control. Control Theory and Applications, IET, v. 5, p. 764 –
774, 2010.

STEFANELLO, M. et al. Design of a robust model reference adaptive control for a shunt
active power filter. p. 158 – 163, 2008.

TAMBARA, R. V. Desenvolvimento de uma Fonte de Potência CA para geração


de Formas de onda de até 2kHz. Dissertação (Mestrado) — Universidade Federal de
Santa Maria, UFSM., 2010.

TAMBARA, R. V. et al. Analysis of performance of an rmrac controller in discrete-time


via z transform and delta transform. 37th Annual Conference on IEEE Industrial
Electronics Society (IECON), p. 492 – 497, 2011.

. Digital implementation os a rmrac controller using z transform and delta trans-


form. Congresso Brasileiro de Eletrônica de Potência (COBEP), Natal, RN, 2011.

. Projeto de um controlador adaptativo robusto por modelo de referência aplicado


a uma fonte de potência ca. Congresso Brasileiro de Automática (CBA), Bonito -
MS, 2010.

. A digital rmrac controller based on a modified rls algorithm applied to the control
of the output currents of an lcl-filter connected to the grid. European Power Electro-
nics conference (EPE), Lille, France, 2013.