Escolar Documentos
Profissional Documentos
Cultura Documentos
Elaborada pelo Sistema de Geração Automática de Ficha Catalográfica da Biblioteca Anton Dakitsch do IFF
com os dados fornecidos pelo(a) autor(a).
Rodrigo Brasil da Costa
Ao meu orientador, Prof. Alexandre Leite que me orientou muito bem durante esse
processo e quando foi preciso puxou a minha orelha para que pudesse voltar ao caminho
certo.
Agradeço aos meus amigos: Bruna Rabello, Fábio Ramos, Gustavo Schwartz, Luiz
Felipe Mantovani, Murilo Serpa e Tomás Marquez, por tornarem esse processo da gradu-
ação muito mais suave e engraçado.
Um agradecimento especial ao meu caro amigo Thiago Cabral, por ter partilhado
de tantas dificuldades comigo, e por ter me ensinado mais do que a maioria dos professores.
Agradeço, a minha mãe que sempre lutou com unhas e dentes, que sempre abriu
mão dela, para que eu pudesse ter a melhor educação que poderia me dar. Você conseguiu,
Cátia. Ao meu pai, que sempre me apoiou e foi meu porto. Obrigado, Antônio.
Agradeço a minha esposa Késya Martha por ter sido a minha copilota durante
esse processo. Por entender e apoiar. Eu te amo, meu amor.
Let me tell you something you already know. The world ain’t all sunshine and rainbows.
It’s a very mean and nasty place and I don’t care how tough you are it will beat you to
your knees and keep you there permanently if you let it. You, me, or nobody is gonna hit
as hard as life. But it ain’t about how hard you hit. It’s about how hard you can get hit
and keep moving forward. How much you can take and keep moving forward. That’s how
winning is done!
(Rocky Balboa, 2006)
Resumo
Para se analisar e controlar um sistema é muito importante saber se ele é linear ou não.
Isso se deve ao fato de que os sistemas lineares são muito mais fáceis para se trabalhar.
Dessa maneira, o caminho mais utilizado para o desenvolvimento de um controlador para
sistemas não lineares é através da sua linearização. O processo de linearização se baseia
em encontrar um sistema linear que responda muito próximo do sistema não linear na re-
gião do ponto de equilíbrio que é onde o sistema tem seus estados de interesse constantes,
ou seja, suas acelerações são nulas. Considerando a importância de se saber a localiza-
ção desse ponto, o presente trabalho utiliza com exemplo um sistema mecânico rotativo
para demonstrar algumas técnicas para encontrá-lo, a saber: analíticas, de força bruta e
otimizações computacionais. Além disso, utiliza um modelo de um sistema aeronáutico
não linear do MATLAB para encontrar o seu ponto de equilíbrio para um voo reto e uma
altura de 3.050 metros. Para esse sistema, os valores encontrados são satisfatórios, uma
vez que a aeronave se manteve em altitude constante ao longo do tempo de simulação.
2.1 naive.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2 fminconModel.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3 evaluateModel.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.1 fminconAirframe.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2 evaluateAirframe.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Lista de abreviaturas e siglas
s Segundo;
m Metro;
rad Radiano;
N Newton;
h Altitude;
𝜃 Ângulo de incidência;
𝛼 Ângulo de ataque;
𝛾 Flight-path angle;
Sumário
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.1 Objetivo geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2 Objetivos específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3 Justificativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2 DEFINIÇÃO DO PROBLEMA . . . . . . . . . . . . . . . . . . . . . 17
2.1 Definição do problema . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2 Exemplo analítico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3 Método de força bruta . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4 Abordagem de otimização e problemas relacionados . . . . . . . . . 26
3 ESTUDO DE CASO . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1 Princípios aerodinâmicos . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.2 Modelo não-linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.3 Busca do ponto de operação . . . . . . . . . . . . . . . . . . . . . . . 35
4 CONSIDERAÇÕES FINAIS . . . . . . . . . . . . . . . . . . . . . . . 47
4.1 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.2 Trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
15
1 Introdução
Como provado em Lyapunov (1992) se o sistema linear for estável, então o sistema
não linear que lhe deu origem também será, mesmo que apenas em uma região finita em
torno do ponto de operação. Assim sendo, quando dentro dessa região, a distância entre
a condição inicial e o ponto de equilíbrio converge para zero a medida que o tempo tende
ao infinito.
1.3 Justificativa
O ponto de equilíbrio ou de trimagem define o conjunto de estados e entradas do
sistema onde a linearização é feita. Após ser linearizado, é muito mais simples desenvolver
um controlador para esse sistema linear. Depois de desenvolvido para o sistema linear, o
controlador é utilizado também para o sistema não linear original, uma vez que os dois
sistemas tem a resposta muito parecida na região próxima ao ponto de operação. Casos
assim podem ser encontrados em Marco, Duke e Berndt (2007).
17
2 Definição do problema
𝐽 𝜃¨ + 𝑏𝜃˙ = 𝑢 (2.1)
Figura 2 – Representação visual do sistema rotativo mecânico que foi utilizado nos exem-
plos.
Fonte: autor.
𝑢 = 𝐽 𝜃¨ + 𝑏𝜃˙
𝑢 = 0, 01 × 0 + 0, 1 × 2
Capítulo 2. Definição do problema 19
𝑢 = 0, 2𝑁.𝑚
Fonte: autor.
Uma vez que a aceleração angular teve um valor constante de 0𝑟𝑎𝑑/𝑠2 é sabido
que a velocidade angular não irá alterar seu valor ao longo do tempo, pois sua derivada
é zero. Nesse caso a velocidade angular se manteve no valor constante de 2𝑟𝑎𝑑/𝑠, como
pode ser observado na figura 5. Pode-se concluir que o sistema está em equilíbrio dentro
dos parâmetros preestabelecidos.
Capítulo 2. Definição do problema 21
Para que o sistema esteja em equilíbrio é necessário que no instante zero todas
suas acelerações sejam zero, caso contrário o mesmo não exerceria um comportamento
constante. O sistema precisa partir de condições iniciais para seus estados e de valores de
entradas no instante zero e se manter constante. Logo, as simulações são realizadas com
0 segundos e após a obtenção dos valores de todos os estados e entradas são rodadas para
mais tempo para analisar como o sistema se comportou com os esses parâmetros.
Para um segundo exemplo analítico, foi escolhido encontrar o ponto de equilíbrio
do sistema na posição angular 𝜃 = 𝑡 para, sendo assim:
𝑑𝜃
𝜃 = 𝑡, =1 (2.2)
𝑑𝑡
Logo, a partir da equação (2.1) tem-se que:
𝑢 = 0, 01 × 0 + 0, 1 × 1
𝑢 = 0, 1𝑁.𝑚
A figura 6 demonstra o gráfico da resposta obtida já com a condição inicial de 1𝑟𝑎𝑑/𝑠 para
˙ que é a que foi escolhida para trimar o modelo. Nela pode-se observar que
a velocidade (𝜃)
a aceleração é constantemente nula e a velocidade angular não tem nenhuma alteração
em seu valor inicial.
Figura 6 – Exemplo 2 - Respostas obtidas com condição inicial
Fonte: autor.
são não lineares e trabalha-se com muitas variáveis, é analiticamente exaustivo, às vezes
quase impossível, de se obter a solução dessa forma. Por isso, optou-se por mostrar a
busca do ponto de equilíbrio desse sistema através de um método bastante conhecido: o
algoritmo de força bruta, também conhecido como grid-search ou busca exaustiva.
Fonte: autor
Capítulo 2. Definição do problema 23
Como pode ser visto no algoritmo 2.1 - naive.m, utilizou-se de uma métrica de erro
−6
de 10 𝑟𝑎𝑑/𝑠2 , ou seja, quando o programa encontrou qualquer valor abaixo disso para a
aceleração angular ele considerou esse ponto como um ponto de equilíbrio para o sistema,
guardando em um vetor o torque de entrada e a condição inicial da velocidade angular
que resultaram nesse valor de aceleração. Nesse caso, o problema detém dois espaços de
busca (torque de entrada e condição inicial para a velocidade angular) e como pode ser
observado nas linhas 14 e 15 do algoritmo 2.1, as resoluções escolhidas se dão por:
10
0.1 : 0.1 : 10 ∴ = 100
0.1
Com a resolução de 100 pontos para o torque de entrada e de 100 para a condição inicial, foi
preciso que o algoritmo realizasse 104 iterações para encontrar os 10 pontos que satisfazem
esse problema. Na figura 8 pode-se observar todos os pontos que o programa aplicou no
diagrama de blocos, testou e validou, sendo os pontos azuis os que foram analisados e
não atenderam ao critério da métrica de erro e os pontos vermelhos são os que obtiveram
como resultado uma aceleração angular menor do que 10−6 𝑟𝑎𝑑/𝑠2 .
Fonte: autor.
Nº Entrada (𝑢) ˙
Condição inicial (𝜃) ¨
Aceleração angular (𝜃)
1 0,1 1 0
2 0,2 2 0
3 0,3 3 0
4 0,4 4 0
5 0,5 5 0
6 0,6 6 1, 1102 × 10−14
7 0,7 7 0
8 0,8 8 0
9 0,9 9 0
10 1 10 0
Fonte: autor.
Fonte: autor.
Nº Entrada (𝑢) ˙
Condição inicial (𝜃) ¨
Aceleração angular (𝜃)
1 0,1 0,5 0
2 0,2 1 0
3 0,3 1,5 0
4 0,4 2 0
5 0,5 2,5 7, 93 × 10−15
6 0,6 3 7, 93 × 10−15
7 0,7 3,5 7, 93 × 10−15
8 0,8 4 0
9 0,9 4,5 0
10 1 5 0
11 1,1 5,5 0
12 1,2 6 0
13 1,3 6,5 1, 59 × 10−14
14 1,4 7 0
15 1,5 7,5 1, 59 × 10−14
16 1,6 8 0
17 1,7 8,5 0
18 1,8 9 1, 59 × 10−14
19 1,9 9,5 0
20 2 10 0
Fonte: autor.
A fim de otimizar esse processo, deve-se usar uma ferramenta que reduza o espaço
de pesquisa e, consequentemente, faça a resolução do problema com mais eficiência – o
que é extremamente necessário para modelos mais complexos e não lineares –, e para isso
foi utilizada uma função do MATLAB chamada fmincon. Essa função encontra o mínimo
de uma função não-linear multivariável restrita. (MATHWORKS, 2017)
valor da função a ser minimizada. Tendo como objetivo a velocidade angular constante,
é necessário que se obtenha a aceleração angular (derivada da velocidade) igual a zero.
Para isso foi utilizado a aceleração como parâmetro de minimização, ou seja, o algoritmo
irá encontrar os valores de condição inicial da velocidade e de torque de entrada que
acarretarão no menor valor de aceleração.
O algoritmo 2.2 - fminconModel.m atribui os valores iniciais (de velocidade e tor-
que) ao vetor 𝑥0, que junto com as outras variáveis criadas servem de entrada para a
função fmincon. Uma opção da função principal precisou ser mudada. Foi necessário au-
mentar o step size que tinha como padrão o eps do MATLAB de 2, 2204 × 10−16 para
10−6 para que o sistema convergisse.
O aumento do step size se deu devido a problemas encontrados durante os testes
do algoritmo. Ficou claro que a função não convergia para zero ou algum valor próximo
disso. A opção FinDiffRelStep (em algumas versões é encontrada como ‘FiniteDifferenceS-
tepSize’) é o tamanho do fator de diferenças finitas. Após o seu aumento, a função passou
a convergir porque começou a considerar espaços maiores para o cálculo da diferença entre
valores.
O algoritmo 2.3 - evaluateModel.m aplica os valores retornados pelo fminconMo-
del.m ao diagrama de blocos e obter as suas saídas, ou seja, os dois funcionam juntos.
A simulação iniciou com os valores inicias aleatórios de 2𝑁.𝑚 para o torque de entrada
e 9𝑟𝑎𝑑/𝑠 para a condição inicial de velocidade angular. Após a simulação o programa
retornou os valores da tabela 3 como sendo um ponto de equilíbrio. Com esses valores a
Capítulo 2. Definição do problema 28
aceleração resultante foi de 0𝑟𝑎𝑑/𝑠2 , o que pode ser observado no gráfico da figura 10.
Tabela 3 – Ponto de equilíbrio obtido pela simulação do sistema da figura 3 com o algo-
ritmos fminconModel.m e evaluateModel.m com os valores de condição inicial
e entrada de 2𝑁.𝑚 e 9𝑟𝑎𝑑/𝑠, respectivamente.
Parâmetro Valor
˙
Condição inicial (𝜃) 7, 033𝑟𝑎𝑑/𝑠
Entrada (𝑢) 0, 7033𝑁.𝑚
Fonte: autor.
Capítulo 2. Definição do problema 29
Fonte: autor.
Para demostrar mais uma vez o problema, foram utilizados os valores arbitrários
de 5𝑁.𝑚 para o torque de entrada e 5𝑟𝑎𝑑/𝑠 para a condição inicial de velocidade angular,
resultando no ponto de equilíbrio da tabela 4. Como pode ser observado na figura 11,
mais uma vez o sistema obteve uma aceleração igual a 0𝑟𝑎𝑑/𝑠2 .
Tabela 4 – Ponto de equlíbrio obtido pela simulação do sistema da figura 3 com o algorit-
mos fminconModel.m e evaluateModel.m com os valores iniciais de 5𝑁.𝑚 para
a entrada e 5𝑟𝑎𝑑/𝑠 para a condição inicial de velocidade angular.
Parâmetro Valor
˙
Condição inicial (𝜃) 0, 49492𝑟𝑎𝑑/𝑠
Entrada (𝑢) 0, 04949𝑁.𝑚
Fonte: autor.
Capítulo 2. Definição do problema 30
Fonte: autor.
Esses exemplos demonstram que para esse sistema, ao dar as condições iniciais e
as entradas das tabelas 3 e 4, o sistema permanecerá em equilíbrio, ou seja, a velocidade
angular – que é o estado de interesse – se manterá constante ao longo do tempo (figura
10 e 11) com a aceleração angular igual a zero.
Para ambos os exemplos, a aceleração angular (derivada do estado de interesse) foi
de zero, o que não necessariamente será sempre assim (vide tabela 2). É necessário analisar
cada sistema individualmente para que se tenha a grandeza do seu erro aceitável, ou seja,
o quão longe de zero a sua derivada pode ser para que seja considerado em equilíbrio.
Para alguns sistemas é aceitável o equilíbrio com 0, 1 de erro, para outros não se aceita
nem erros na ordem de 10−10 .
31
3 Estudo de caso
Fonte: http://www.outros.net/blog/wp-content/uploads/cache/2016/05/Atitude-
Airplane/9370546.png <Acesso em 23 de janeiro de 2018>
Capítulo 3. Estudo de caso 32
de arfagem (pitch moment). Esses três parâmetros são muito influenciados pelo ângulo de
ataque (𝛼), juntamente com a velocidade de arfagem (𝑞) e a deflexão do profundor (𝛿𝑒 )
(BEARD; MCLAIN, 2012).
Fonte: http://ctms.engin.umich.edu/CTMS/Content/AircraftPitch/System/Modeling/
figures/flightdynamics.png <Acessado em 17 de fevereiro de 2018>
𝛾=0∴𝜃=𝛼
Capítulo 3. Estudo de caso 36
𝑤 = tan 𝜃 × 𝑈 (3.3)
Com isso, foi utilizado o valor de 𝑤 com uma equação de restrição (3.3) para se garantir
que a aeronave fará um voo reto e nivelado.
O vetor 𝑥0 fornece os valores iniciais à função. Os vetores 𝑙𝑏 e 𝑢𝑏 fornecem os
limites mínimos e máximos, respectivamente.
Capítulo 3. Estudo de caso 37
𝐽 = 𝑞˙2 + 𝑤˙ 2 + 𝑈˙ 2 (3.4)
1
Veja que no eixo terrestre a sua origem se dá na superfície do planeta e o eixo 𝑍 fica apontado para
o centro de gravidade, logo o espaço de voo com a altura acima da superfície é descrito com valores
negativos.
Capítulo 3. Estudo de caso 40
Estado Unidade
𝑞˙ – Aceleração de arfagem 𝑟𝑎𝑑/𝑠2
𝑤˙ – Aceleração em 𝑍 𝑚/𝑠2
𝑈˙ – Aceleração em 𝑋 𝑚/𝑠2
Fonte: autor.
Tabela 7 – Tabela com os valores encontrados de condições iniciais e entrada para a exi-
gência de trimagem especificada.
Parâmetro Valor
𝑋𝑒 – Posição em 𝑋 0
𝑍𝑒 – Posição em 𝑍 −3, 05 × 103 𝑚
𝜃 – Ângulo de arfagem 7, 6686 × 10−3 𝑟𝑎𝑑
𝑈 – Velocidade em 𝑋 984𝑚/𝑠
𝑤 – Velocidade em 𝑍 7, 54𝑚/𝑠
𝑞 – Velocidade de arfagem 0𝑟𝑎𝑑/𝑠
𝛿𝑒 – Deflexão do profundor 6, 32345 × 10−4 𝑟𝑎𝑑
𝛿𝑇 – Empuxo 7, 288 × 103 𝑁
Fonte: autor.
Estado Valor
𝑞˙ −3, 558 × 10−6 𝑟𝑎𝑑/𝑠2
𝑤˙ 6, 305 × 10−4 𝑚/𝑠2
𝑈˙ 2, 051 × 10−5 𝑚/𝑠2
Fonte: autor.
Capítulo 3. Estudo de caso 41
A partir do ponto de equilíbrio obtido, foi realizada uma simulação para 10 segun-
dos com o intuito de verificar o comportamento da aeronave durante esse tempo. Com
base nos resultados da simulação foram plotados alguns gráficos que auxiliam no visua-
lização da resposta do sistema. Na figura 20 pode-se ver o gráfico referente a posição 𝑍
que mesmo com uma pequena variação dos valores máximos e mínimos de altitude (eixo
𝑦), a aeronave manteve a sua posição inicial de 3.050𝑚 constante.
Fonte: autor.
Fonte: autor.
Para um voo reto é necessário que o seu ângulo de arfagem (𝜃) não varie, o que
acarretaria uma mudança de posição do vetor velocidade e consequentemente uma mu-
dança de atitude da aeronave. A gráfico do ângulo de arfagem da figura 22 mostra que
não houve variação desse ângulo para o intervalo de 10 segundos.
Capítulo 3. Estudo de caso 43
Fonte: autor.
Fonte: autor.
Fonte: autor.
Fonte: autor.
A partir dos gráficos e dos valores mostrados, pode-se concluir que esse ponto
encontrado pelo programa foi de fato um ponto de equilíbrio do sistema, uma vez que se
pode ver que a aeronave voo com altitude e velocidades constantes, com suas acelerações
muito próximas de zero.
47
4 Considerações finais
4.1 Conclusão
Os resultados obtidos através do algoritmo de força bruta foram satisfatórios, uma
vez que quase todos os pontos de equilíbrio encontrados obtiveram uma aceleração igual a
zero. Alguns diferiam disso em uma ordem muito pequena, o que pode ser explicado como
uma imprecisão do programa. Através da analise dos gráficos dos exemplos do fmincon
com o sistema mecânico rotativo, pode-se ver que a simulação retornou os pontos de
equilíbrio corretamente, o que é corroborado pela aceleração mantida em zero e a posição
crescendo linearmente ao longo do tempo simulado.
Para o modelo do sistema aeronáutico, com os resultados obtidos e dos gráficos
plotados, pode-se ver que a aeronave se mantém estável e em voo reto ao longo do tempo
de simulação apesar dos valores das acelerações divergirem de zero. Sendo assim, um
ponto de equilíbrio desse sistema foi encontrado para os requisitos de altura e velocidade
pré-estabelecidos.
Referências
COOK, M. V. Flight Dynamics Principles. [S.l.]: Elsevier Ltd., 2013. Citado na página
32.
LJUNG, L.; GLAD, T. Modeling of Dynamic Systems. [S.l.]: Prentice Hall, 1994. Citado
na página 15.
LYAPUNOV, A. M. The general problem of the stability of motion. Int. J. Control 55,
p. 531–773, 1992. Traduzido para o inglês por A. T. Fuller. Citado na página 16.
MARCO, A. D.; DUKE, E. L.; BERNDT, J. S. A general solution to the aircraft trim
problem. AIAA Modeling and Simulation Technologies Conference and Exhibit, 2007.
Citado na página 16.