You are on page 1of 153

UNIVERSIDADE FEDERAL DE SANTA MARIA

CENTRO DE TECNOLOGIA
CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO

MODELAGEM, SIMULAÇÃO E CONTROLE


DE UM VEÍCULO AÉREO NÃO TRIPULADO
(VANT) DE ASA FIXA

TRABALHO DE CONCLUSÃO DE CURSO

Willian Rigon Silva

Santa Maria, RS, Brasil


2015
MODELAGEM, SIMULAÇÃO E CONTROLE DE UM
VEÍCULO AÉREO NÃO TRIPULADO (VANT) DE ASA FIXA

Willian Rigon Silva

Trabalho de Conclusção de Curso apresentado ao Curso de Engenharia de


Controle e Automação da Universidade Federal de Santa Maria (UFSM, RS),
como requisito parcial para a obtenção de grau.

Orientador: Prof. Dr. Eng. André Luís da Silva

Santa Maria, RS, Brasil


2015
Universidade Federal de Santa Maria
Centro de Tecnologia
Curso de Engenharia de Controle e Automação

A Comissão Examinadora, abaixo assinada,


aprova o Trabalho de Conclusão de Curso

MODELAGEM, SIMULAÇÃO E CONTROLE DE UM VEÍCULO


AÉREO NÃO TRIPULADO (VANT) DE ASA FIXA

elaborado por
Willian Rigon Silva

como requisito parcial para


Obtenção de Grau

COMISSÃO EXAMINADORA:

André Luís da Silva, Dr. Eng.


(Presidente/Orientador)

Fábio Ecke Bisogno, Prof. Dr. Eng. (UFSM)

Vinicius Foletto Montagner, Prof. Dr. Eng. (UFSM)

Santa Maria, 11 de Dezembro de 2015.


AGRADECIMENTOS

Gostaria de fazer um agradecimento em especial para a minha família e amigos que me


apoiaram durante esta jornada e tiveram compreensão nos vários fins de semana e feriados que
não pude estar presente por estar aplicado ao estudo.
Agradeço aos meus estimados amigos Germano Henz e Gilberto Schneider pela troca
de conhecimento, sugestões ao trabalho e noites de jogatina online.
Agradeço ao meu orientador, Prof. André Luís da Silva, pela paciência, dedicação e
amizade durante a orientação, não medindo esforços para transmitir o extenso conhecimento
que possui. Este trabalho não seria possível sem a sua orientação.
Agradeço a minha noiva, meu amor e mãe do meu filho, Shana Pase, por todo amor,
apoio, paciência e incentivo no dia-a-dia. Sua convivência e nossas bobagens/risadas diárias
fizeram, e ainda fazem, tudo parecer mais fácil de realizar.
Seria impossível citar aqui todas as pessoas que contribuíram para a minha formação e o
desenvolvimento deste trabalho, porém meu muito obrigado a cada um de vocês que estiveram
presentes nesta etapa.
“Ralaspuxa!!!”
— G AUDÉRIO
RESUMO

O trabalho apresenta uma metodologia para modelagem matemática, simulação de voo,


e projeto de controle (piloto automático) da dinâmica longitudinal de Veículos Aéreos Não
Tripulados (VANTs) de asa fixa. A metodologia apresentada já é consolidada na literatura para
projetos de aviões e sua adaptação foi investigada para uso em VANTs. Aeronaves de asa fixa
apresentam uma dinâmica acoplada e não-linear. Portanto, para simplificação do projeto de
modelagem e controle, algumas considerações são feitas (ângulo de derrapagem β igual a zero,
a estrutura é considerada rígida, o ângulo de arfagem θ é pequeno, e o vôo é nivelado).
O modelo da dinâmica longitudinal do VANT foi obtido por dois métodos: Cálculo ana-
lítico (utilizando derivadas de estabilidade e controle) e simulação de voo no software X-Plane
(que utiliza a Teoria de Elemento de Pá para calcular o modelo de voo). Ambos modos de os-
cilação da dinâmica longitudinal foram analisados, sendo eles: Período Curto e Período Longo
(Fugoidal). As equações da dinâmica longitudinal foram linearizadas ao redor de um ponto de
equilíbrio (voo nivelado em altitude e velocidade escolhidas). Para o cálculo analítico das for-
ças aerodinâmicas é necessário a obtenção do modelo aerodinâmico da aeronave, obtido através
de métodos semi-empíricos sintetizados pelo software USAF DATCOM. O VANT utilizado no
estudo foi o modelo University of Toronto Explorer (UT-X), projetado e construído pelo Uni-
versity of Toronto Aerospace Team (UTAT), de Toronto, Canadá. O autor foi integrante ativo
do UTAT durante intercâmbio na University of Toronto (UofT), pelo programa Ciências Sem
Fronteiras (CsF).
A simulação de voo foi realizada tanto analiticamente (utilizando o software MATLAB-
SIMULINK), quanto no X-Plane. Este último método de simulação permite a visualização do
voo através de computação gráfica. O X-Plane possui uma ferramenta para criação e customi-
zação de aeronaves chamada Plane-Maker, esta ferramenta permitiu a inserção do VANT UT-X
(com suas caractéristicas físicas reais) no simulador de voo X-Plane. Neste simulador, as forças
aerodinâmicas são calculadas utilizando a Teoria de Elemento de Pá (Blade Element Theory).
Através de ensaios em voo no simulador X-Plane e simulações analíticas no MATLAB/SIMU-
LINK, foi possível a comparação da dinâmica longitudinal do UT-X por destes dois métodos de
análise.
Uma vez obtidos o modelo analítico da dinâmica longitudinal e respctiva resposta na
simulação de voo do X-Plane, foi realizado o projeto de controle (piloto automático). Por se
tratar de um sistema multivariável (Multiple Input Multiple Output - MIMO), para cada malha
de controle fechada foi necessário recalcular o modelo da planta (sistema aumentado). Foram
implementadas 4 malhas de controle com o objetivo final de mantenimento de altitude (Altitude
HOLD Autopilot) e de velocidade (MACH HOLD Autopilot). Os controladores (reguladores e
compensadores) utilizados foram do tipo Proporcional-Integral-Derivativo (PID) e suas varia-
ções. Resultados de simulação analítica (malha aberta e malha fechada) e Software In The Loop
- SITL (com inclusão de vento, rajada e turbulência) são apresentados.

Palavras-chave: Mecânica de Voo. Modelagem. VANT. Simulação. Controle.


ABSTRACT

This work presents a methodology for mathematical modelling, simulation and control
design for the longitudinal dynamics of a fixed-wing Unmanned Aerial Vehicles (UAV). This
methodology is widely used in aeronautical literature for airplane design, so its adaptation to
UAV was investigated. Fixed wing aicraft presents non-linear coupled dynamics. Therefore,
some assumptions were made in order to simplify the modelling and control design. Two dif-
ferent methods were used to obtain the longitudinal dynamics model: Analytic (by stability and
control derivatives given by USAF DATCOM) and X-Plane Flight Simulator (which uses Blade
Element Theory to calculate the flight model). The equations were linearized for an equilib-
rium point (cruise flight at a chosen altitude and speed). Both longitudinal dynamics modes
were studied: Short Period and Phugoid Mode.
The chosen plant is the University of Toronto Explorer (UT-X) UAV, designed and built
by the University of Toronto Aerospace Team (UTAT). The author was an active member of
UTAT, while studying in the University of Toronto (UofT), participating in a scholarship pro-
gram called Science Without Borders (SwB).
The UT-X’s longitudinal dynamics was simulated both analytically (by MATLAB /
SIMULINK) and by flight simulation (X-Plane), comparing the results of each method. Us-
ing classical automatic flight control theory, an Altitude and MACH HOLD Autopilot were
designed. The regulators and compensators of the feedback loop are of Proportional-Integral-
Derivative (PID) type. A Software in The Loop (SITL) simulation was developed, using MAT-
LAB/SIMULINK communicating with X-Plane through a UDP protocol socket. With the use
of SITL simulation, virtual flight test were performed in order to assess the performance of the
designed autopilots. Wind, Gust and Turbulence tests were also presented.

Keywords: Flight Dynamics. UAV. Simulation. Control.


LISTA DE FIGURAS

Figura 1.1 – VANT da categoria HALE - Global Hawk. Fonte:images.google.com . . . . . . . 13


Figura 1.2 – VANT da categoria MALE, operado pelo esquadrão Hórus da Força Aérea
Brasileira - Hermes 900. Fonte: images.google.com . . . . . . . . . . . . . . . . . . . . . . . 17
Figura 1.3 – Sub-sistemas gerais que compoem um VANT, adaptado de (TORONTO
AEROSPACE TEAM UAV TEAM, 2014) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Figura 3.1 – VANT UT-X do University of Toronto Aerospace Team (UTAT) modelado
no SolidWorks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Figura 3.2 – VANT UT-X do University of Toronto Aerospace Team (UTAT) . . . . . . . . . . . . . 28
Figura 3.3 – Sub-Sistemas que compoem o UT-X, adaptado de (TORONTO AEROS-
PACE TEAM UAV TEAM, 2014). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Figura 3.4 – Processo de fabricação da asa do UT-X mostrando camadas de fibra de
carbono e tiras de reforço em Kevlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Figura 3.5 – Moldes da parte superior da asa, fabricados em máquina CNC . . . . . . . . . . . . . . 30
Figura 4.1 – Eixos de referência e definição dos ângulos (STEVENS; LEWIS, 1992) . . . . 36
Figura 4.2 – Ângulos de Euler para transformação do sistema inercial para o corpo.
Fonte: CHRobotis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Figura 4.3 – Definição dos ângulos da dinâmica longitudinal. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Figura 4.4 – Forças que atuam no avião (dinâmica longitudinal) (HULL, 2007) . . . . . . . . . . 42
Figura 4.5 – Corpo genérico com velocidade angular ω (BLAKELOCK, 1991) . . . . . . . . . . 44
Figura 5.1 – Simulador de voo X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Figura 6.1 – Modelo 3D gerado pelo DATCOM, para verificação do código que descreve
o UT-X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Figura 6.2 – Modelo do UT-X gerado pelo MATLAB a partir do código do DATCOM . . . . 61
Figura 6.3 – Diagrama de blocos da simulação de voo no SIMULINK . . . . . . . . . . . . . . . . . . . 65
Figura 6.4 – Resultados da simulação de voo da dinâmica longitudinal do VANT UT-X . . 66
Figura 6.5 – Resultados da simulação de voo da dinâmica longitudinal do VANT UT-X . . 67
Figura 7.1 – VANT UT-X modelado no X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Figura 7.2 – Manche utilizado para controle do VANT UT-X na simulação de voo - Mi-
crosoft Sidewinder Force Feedback 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Figura 7.3 – JavaFoil - Aba Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Figura 7.4 – JavaFoil - Aba Polar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Figura 7.5 – Interface de modelagem do Plane-Maker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Figura 7.6 – Interface de modelagem da fuselagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Figura 7.7 – Interface de verificação da fuselagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Figura 7.8 – Interface de modelagem das asas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Figura 7.9 – Interface de modelagem do estabilizador Vertical . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Figura 7.10 – Interface de modelagem do estabilizador horizontal . . . . . . . . . . . . . . . . . . . . . . . 75
Figura 7.11 – Interface de modelagem do trem de pouso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Figura 7.12 – Interface de configuração do peso e C.G. do VANT . . . . . . . . . . . . . . . . . . . . . . . . 77
Figura 7.13 – Localização do C.G. e tanques de combustível simulando o peso do payload
e baterias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Figura 7.14 – Detalhe da modelagem do conjunto hélice/motor do VANT UT-X no X-
Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Figura 7.15 – Interface de modelagem de parâmetros do conjunto hélice/motor . . . . . . . . . . . 80
Figura 7.16 – Seleção dos dados de voo de saída enviados para o SIMULINK . . . . . . . . . . . . 81
Figura 7.18 – VANT UT-X em voo no X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Figura 7.17 – Diagrama de blocos no SIMULINK mostrando comunicação de troca de
dados de voo (telemetria) com o X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Figura 7.19 – VANT UT-X em voo de cruzeiro no X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Figura 7.20 – Resultado do ensaio em voo no simulador de voo X-Plane para obtenção
dos modos de voo da dinâmica longitudinal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Figura 7.21 – Resultado do ensaio em voo no simulador de voo X-Plane para obtenção
dos modos de voo da dinâmica longitudinal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Figura 8.1 – Stability Augmentation System - SAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Figura 8.2 – Projeto do ganho do regulador Kq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Figura 8.3 – Simulação do modelo analítico com o controlador SAS ativado . . . . . . . . . . . . . 94
Figura 8.4 – Atuação do SAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Figura 8.5 – Control Augmentation System - CAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Figura 8.6 – Projeto do ganho do regulador Kθ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Figura 8.7 – Simulação analítica com os controladores SAS e CAS ativados . . . . . . . . . . . . . . 97
Figura 8.8 – Simulação analítica com os controladores SAS e CAS ativados . . . . . . . . . . . . . . 98
Figura 8.9 – Atuação do CAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Figura 8.10 – Altitude Hold Autopilot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Figura 8.11 – Projeto do ganho do compensador Kh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Figura 8.12 – Simulação analítica do Altitude HOLD Autopilot . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Figura 8.13 – Simulação analítica do Altitude HOLD Autopilot, mostrando deflexão do
profundor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Figura 8.14 – MACH Hold Autopilot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Figura 8.15 – Projeto do ganho do compensador P IV T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Figura 8.16 – Simulação analítica do MACH HOLD Autopilot . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Figura 8.17 – Simulação analítica do MACH HOLD Autopilot, mostrando a ação da ma-
nete de potência (δπ ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Figura 8.18 – Dados de voo da performance dos pilotos automáticos no X-Plane . . . . . . . . . . 109
Figura 8.19 – Dados de voo da performance dos pilotos automáticos no X-Plane durante
a decolagem e voo nivelado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Figura 8.20 – Dados de voo da performance dos pilotos automáticos no X-Plane durante
vento constante e curva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Figura 8.21 – Dados de voo da performance dos pilotos automáticos no X-Plane durante
vento constante e rajadas de través . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Figura 8.22 – Dados de voo da performance dos pilotos automáticos no X-Plane durante
vento constante, rajadas de través e turbulência . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
LISTA DE TABELAS

Tabela 1.1 – Sugestão de categorias de VANTs apresentada por (CARNDUFF, 2008) . . . . 17


Tabela 1.2 – Cronograma de atividades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Tabela 3.1 – Parâmetros Físicos do VANT UT-X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Tabela 7.1 – Comparação de forças e coeficientes aerodinâmicos entre a simulação ana-
lítica e a simulação de voo no X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Tabela 7.2 – Comparação do Modo Fugoidal entre a simulação analítica e a simulação
de voo no X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
SUMÁRIO

1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.1 Contextualização e Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2 Definições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3 Categorias de VANT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.4 Sub-Sistemas que compõe um VANT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.5 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.5.1 Objetivos Gerais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.5.2 Objetivos Específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.6 Contribuição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.7 Cronograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.8 Organização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2 REVISÃO BIBLIOGRÁFICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.1 Mêcanica de Voo de VANTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2 Modelagem utilizando o USAF DATCOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.3 Modelagem utilizando o X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3 PLANTA - VANT DE RECONHECIMENTO AÉREO UT-X . . . . . . . . . . . . . . . . . . . . . . 27
3.1 VANT University of Toronto Explorer (UT-X) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2 Proposição do Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4 MODELAGEM DA PLANTA(VANT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 Definição dos Eixos de Referência e Ângulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.3 Considerações e Definição do Referencial Inercial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.4 Rotações entre os Sistemas de Referência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.4.1 Rotação entre o Eixos do Solo e Eixos do Corpo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.4.2 Rotações entre os Eixos Fixos na Aeronave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.5 Forças e Momentos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.5.1 Forças (Dinâmica Translacional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.5.2 Momentos (Dinâmica Rotacional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.6 Modelo Não Linear da Dinâmica Longitudinal do VANT . . . . . . . . . . . . . . . . . . . . . . . . . 47
5 CÁLCULO DAS FORÇAS E MOMENTOS DA PLANTA(VANT) ATRAVÉS DE
DERIVADAS DE ESTABILIDADE E CONTROLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.1 Forças Aerodinâmicas e Momento de Arfagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.2 Modelo do Motor - Força de Propulsão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.3 Coeficientes Aerodinâmicos Adimensionais - Derivadas de Estabilidade e Controle 52
5.4 Método Semi-Empírico - USAF DATCOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.5 Método por Blade Element Theory dado pelo X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6 SIMULAÇÃO ANALÍTICA DO VANT UT-X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.1 Introdução - Modos de Voo Longitudinais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.2 Simulação MATLAB/SIMULINK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
6.3 Cálculo do Ponto de Balanço (Trim) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.4 Simulação Analítica e Resultados dos Modos Longitudinais . . . . . . . . . . . . . . . . . . . . . . 64
7 SIMULAÇÃO DO VANT UT-X NO SIMULADOR DE VOO X-PLANE . . . . . . . . . . . 68
7.1 Introdução - Resumo do Procedimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
7.2 Modelagem do VANT UT-X no Plane-Maker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
7.2.1 Obtenção de Coeficientes Aerodinâmicos para os Aerofólios . . . . . . . . . . . . . . . . . . . . . . . 70
7.2.2 Estrutura - Fuselagem, Asas, Trem de Pouso e Estabilizadores Vertical e Horizontal. 72
7.2.3 Peso e Centro de Gravidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
7.2.4 Motorização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
7.3 Simulação de Voo e Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
8 CONTROLE DO VANT UT-X (PILOTO AUTOMÁTICO) . . . . . . . . . . . . . . . . . . . . . . . . 88
8.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
8.2 Linearização e Autovalores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
8.3 Stability Augmentation System - SAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
8.4 Control Augmentation System - CAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
8.5 Altitude Hold Autopilot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
8.6 MACH Hold Autopilot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
8.7 Ensaio em Voo dos Pilotos Automáticos no X-Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
8.7.1 Decolagem e Voo Nivelado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
8.7.2 Vento Constante e Curva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
8.7.3 Vento Constante e Rajada de Través . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
8.7.4 Vento Constante, Rajada de Través e Turbulência. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
9 CONCLUSÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
9.1 Comentário sobre os Resultados e Considerações Finais. . . . . . . . . . . . . . . . . . . . . . . . . . 115
9.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
10ANEXOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.1Anexo A - VANT UT-X descrito no USAF DATCOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
10.2Anexo B - Script de cálculos para a simulação de voo analítica no MATLAB/SI-
MULINK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
10.2.1Configuração de parâmetros e Projeto de Controladores . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
10.2.2Código de Linearização das Equações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
10.2.3Código de Solução para o Ponto de Balanço . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
10.2.4Código do modelo não-linear do bloco apresentado na figura 6.3 . . . . . . . . . . . . . . . . . . . 136
10.3Anexo C - Script de cálculos para configuração da simulação de voo no X-Plane
e interface com o MATLAB/SIMULINK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
10.3.1Código para plotar os dados após a simulação de voo do X-Plane . . . . . . . . . . . . . . . . . . 149
13

1 INTRODUÇÃO

1.1 Contextualização e Motivação

Veículos Aéreos Não Tripulados (VANTs), conhecidos popularmente como Drones ,


são aeronaves capazes de alçar voo sem a necessidade de tripulação embarcada. Existem di-
versos modelos de VANTs, sendo os de asa-rotativa (quadrirotores) e de asa-fixa (semelhante
aos aviões tripulados) os mais conhecidos e utilizados. Na figura 1.1 é mostrado um VANT de
asa fixa da categoria High Altitude Long Endurance (HALE). Os VANTs são operadas em uma
ampla gama de aplicações civis e militares, como por exemplo: fotografia aérea, mapeamento
de áreas (topografia), agricultura de precisão, lazer, reconhecimento, fiscalização, e missões
militares (AUSTIN, 2010).

Figura 1.1 – VANT da categoria HALE - Global Hawk. Fonte:images.google.com

O aumento na utilização de VANTs em operações civis e militares é justificado por uma


série de vantagens quando comparados com aeronaves tripuladas. A maior delas está no custo
reduzido da hora de voo e de manutenção. Outro fator importante é a segurança da equipe
que opera o VANT, uma vez que ela não está embarcada na aeronave, mas sim em solo. Em
aplicações de reconhecimento aéreo ou fiscalização, onde é necessário um longo tempo sobre-
voando uma determinada área (durante 10 horas ou mais, por exemplo), a equipe que pilota o
14

VANT pode ser facilmente substituída. O conforto e segurança dos operadores é maior do que
em aeronaves tripuladas, com isto a operação está menos sujeita a ter erros de caráter humano
(AUSTIN, 2010). Se há necessidade de sobrevoo em áreas de acidente radioativo ou químico,
a equipe de controle do VANT pode operar sem nenhum risco (uma vez que não há tripula-
ção embarcada). Esta segurança aos operadores do VANT também é vantagem em missões
de combate/identificação de incêndios ou verificação de linhas de alta tensão. Em operações
militares há ainda mais vantagens, pois o risco à tripulação é extremamente alto em aeronaves
tripuladas (AUSTIN, 2010). Por todas as vantagens mencionadas e ampla gama de aplicações, o
domínio da tecnologia que envolve os VANTs (seu projeto e operação) é importante. O projeto
como um todo é otimizado para operar sem tripulação embarcada (que pode ser visto como um
sub-sistema em aviões embarcados) (AUSTIN, 2010).
Para o projeto de um piloto automático (controle), o primeiro passo é a modelagem
matemática da cinemática e dinâmica de vôo (rotacional e translacional) através de equações
diferenciais não-lineares. Com a obtenção do modelo matemático, e de posse de uma plataforma
confiável de simulação da planta/aeronave, torna-se possível o projeto de controladores de uma
maneira segura e dinâmica, minimizando os riscos durante ensaios de vôo da aeronave real.
A tecnologia embarcada nos VANTs está em rápida expansão, logo, é interessante com-
preender todos os seus sub-sistemas e dominar o conhecimento envolvido para o seu projeto
(BEARD; MCLAIN, 2012).
O modelo matemático de uma aeronave tem aplicações muito além do projeto de siste-
mas de controle (STEVENS; LEWIS, 1992). Durante o projeto conceitual de uma aeronave é
importante possuir um modelo matemático para prever o seu comportamento em determinadas
fases de voo ou testar novas configurações da sua estrutura, sem a necessidade de construção
da mesma (pois envolve altos custos e tempo considerável). Para ensaios em voo também é
importante possuir um modelo matemático, pois se prevê o resultado daquele ensaio sem a ne-
cessidade de mobilizar uma equipe e sem riscos envolvidos (também economizando em tempo
e custo). Para simulação e treinamento, o modelo matemático da aeronave serve como uma
base segura para aprendizagem do comportamento dinâmico por parte dos pilotos/equipe.

1.2 Definições

Antes de prosseguir para um maior detalhamento dos sub-sistemas que compõe os


VANTs, algumas definições serão apresentadas. Estas definições são baseadas na literatura
15

mais atual disponível e em (ANAC, 2012).

• Veículo Aéreo Não Tripulado (VANT) ou Unmanned Aerial Vehicle (UAV): Aeronave não
tripulada (asa-fixa, asa-rotativa e dirigíveis), com capacidade de alçar voo, composto por
sub-sistemas dotados de uma inteligência automatizada, e de fins não recreativos.

(a) Aeronave Remotamente Pilotada (ARP) ou Remotely-Piloted Aircraft (RPA): VANT


controlado por um piloto localizado em estação de controle externa à aeronave, por
exemplo: em solo, em aeronave tripulada, em um navio ou no espaço.

(b) Aeronave Autônoma: VANT que uma vez em voo, seguirá uma navegação pré-
programada sem possibilidade de interferência por um piloto em estação de controle
externa à aeronave.

• Drone ou Aeromodelo: Aeronave não tripulada e rádio controlada para fins recreativos,
voando no alcance visual do operador.

Comparando Drones rádio controlados e VANTs, as principais diferenças estão no grau


da inteligência embarcada e na complexidade dos seus sistemas. Os Drones geralmente voam
somente ao alcance visual do operador ou são pré-programados para seguirem uma série de
pontos de navegação e retornar a origem(AUSTIN, 2010). Neste último caso o Drone voaria
um determinado período de tempo sem controle direto do operador (voo autônomo), o que não é
permitido pela atual legislação aeronáutica brasileira e internacional (ANAC, 2012). Já o VANT
tem o projeto da sua estrutura (Airframe) otimizado para uma missão específica, projeto de
piloto automático mais robusto para o voo assistido (operação além do alcance visual), sistema
de comunicação com criptografia e elevada potência de transmissão (Telemetria, Data-Link do
Payload, e dados de controle de voo), metodologia de planejamento da missão e estação de
controle de solo com dados de telemetria em tempo real (Ground Control Station - GCS). Os
VANTs geralmente tem seus sub-sistemas dotados de inteligência para detecção de falhas e
tomada de ações corretivas/preventivas (AUSTIN, 2010). Com a continuação dos estudos sobre
segurança de voo, talvez no futuro os VANTs autônomos possam se integrar ao espaço aéreo.

1.3 Categorias de VANT

Como a tecnologia dos VANTs está em rápida evolução, as suas categorias têm se modi-
ficado em igual velocidade. Não é possível fazer uma divisão clara entre as categorias, mas elas
16

servem como auxílio no projeto e planejamento de missão dos VANTs. Portanto as faixas de
operação definidas não são definidas com rigor, podendo haver VANTs projetados para aplica-
ções específicas que se encaixam em mais de uma categoria. Grande parte destas são baseadas
nas apresentadas por (AUSTIN, 2010) e tem aplicações militares.

• HALE - High Altitude Long Endurance - Voam em altitudes maiores que 15.000 metros
e tem autonomia de mais de 24 horas de voo. Tem raio de ação de mais de 500Km.
São operados por militares com estações de controle fixas em uma determinada Base
Aérea, com comunicação de dados através de satélites. Geralmente tem a missão de
reconhecimento utilizando carga útil de alta tecnologia.

• MALE - Medium Altitude Long Endurance - Semelhante aos HALEs, porém operando em
altitudes entre 5.000 a 15.000 metros e autonomia de voo em torno de 24 horas (figura
1.2).

• TUAV - Tactical UAV (Medium Range) - São menos sofisticados do que os HALEs ou
MALEs, porém ainda operados por militares em estações de controle em solo ou navais.
Seu raio de ação fica em torno de 100 a 300Km.

• Close-Range UAV - Operados por grupos de combate em operações militares em solo ou


navais para diversos tipos de missão, como por exemplo: reconhecimento, designação de
alvos, fiscalização e monitoramento. Também são usados em aplicações civis, como por
exemplo: Inspeção de linhas de transmissão, monitoramento de tráfego e aplicação de
defensivo agrícola. Tem raio de ação de até 100Km.

• MUAV - Mini UAV - Tem massa menor do que 20Kg (limite não rigorosamente definido),
raio de ação em torno de 30Km, podem ser lançados com a mão e têm aplicações seme-
lhantes ao Close-Range UAV.

• MAV - Micro UAV - São VANTs pequenos, com velocidade pequena, geralmente utiliza-
dos em operações urbanas ou dentro de edificações. Tem uma envergadura em torno de
150mm ou menos. Normalmente são lançados a mão e, por apresentar tamanho reduzido,
distúrbios de vento ou chuva prejudicam muito (ou impossibilitam) a sua operação.

• NAV - Nano UAV - São VANTs muito pequenos, com envergadura em torno de 70mm
ou menos. Geralmente são usados em um grande número (enxames). Operam com sub-
17

sistemas especificadamente projetados para esta aplicação (tamanho reduzido de payload,


sistema de comunicação e controle, e propulsão)

Figura 1.2 – VANT da categoria MALE, operado pelo esquadrão Hórus da Força Aérea Brasi-
leira - Hermes 900. Fonte: images.google.com

HALEs, MALEs e TUAV têm sido utilizados com carga útil bélica em operações mi-
litares, com a vantagem de diminuir o tempo de resposta após a identificação de um alvo de
interesse. Por isto têm sido referidos também como VANTs de combate (Combat UAVs) (AUS-
TIN, 2010). Um quadro demonstrando as categorias de VANTs é mostrado por (CARNDUFF,
2008), na tabela 1.1.

Tabela 1.1 – Sugestão de categorias de VANTs apresentada por (CARNDUFF, 2008)


18

1.4 Sub-Sistemas que compõe um VANT

Um VANT pode ser visto como um sistema composto por diversos sub-sistemas (figura
1.3), sendo eles:

• Estrutura (Airframe): É o sub-sistema com a maior eficiência aerodinâmica possível capaz


de cumprir a missão de levar a carga útil (Payload), e seus sub-sistemas de apoio, até a
altitude/localização desejada e retornar em segurança. Provavelmente é o sub-sistema
mais crítico em aeronaves tripuladas ou não-tripuladas, pois os requisitos da missão do
VANT irão impactar diretamente no seu projeto.

• Carga útil (Payload): É o equipamento, ou a combinação de equipamentos, que se deseja


levar até a área de interesse. Podem ser por exemplo: câmera de vídeo, câmera de fo-
tografia em alta resolução, câmera infra-vermelho, radar, mantimentos, carga bélica, etc.
De modo geral, a carga útil dos VANTs são câmeras de vídeo e fotografia, sendo suas
imagens transmitidas em tempo-real para a estação de controle.

• Sistema de comunicação: É o sub-sistema que gerencia e garante a segurança da troca de


informações entre a estação de solo e o VANT. Deve ser capaz de interpretar claramente
os comandos recebidos pela estação de controle e enviar dados de telemetria e da carga
útil para a estação de controle. Geralmente é formado por 3 partes distinas: Transceiver
de Telemetria, Transceiver para carga útil, e Transceiver para dados de comando de voo.

• Sistema de navegação e controle (Autopilot): É a inteligência do VANT, o sistema eletrô-


nico (Hardware) que contêm todos os algoritmos e leis de controle capazes de controlar
a atitude e a posição geográfica da aeronave baseado em sinais de sensores instalados em
solo ou na própria aeronave. Existem sistemas simples e de baixo, e outros com preci-
são e redundância comparáveis a aeronaves tripuladas modernas. Usualmente é formado
por um ou mais microcontroladores/processadores onde os algoritmos de navegação e
controle são inseridos, recebendo dados de uma série de sensores (receptores de sinal
GPS/GLONASS, barômetro, tubo de pitot e unidade inercial formada por giroscópio, ace-
lerômetro e magnetômetro).

• Estação de controle (Control Station (CS)): É o centro de operações do VANT, o local


de onde os operadores irão controlar e monitorar em tempo-real o voo. É dotado de um
19

sistema de comunicação com criptografia e de elevada potência (por exemplo, antenas


direcionais de 100W para VANTS da categoria MALE). Pode ser localizado em solo, em
um navio ou em uma aeronave tripulada. Geralmente é localizada em solo, por isto recebe
o nome de Estação de Controle de Solo (ECS) ou Groung Control Station (GCS).

• Sistema de lançamento e de recuperação (quando aplicável):

(a) Sistema de Lançamento: Utilizado para quando o VANT é grande/pesado demais


para ser lançado com a mão ou onde não há disponibilidade de uma pista (e o VANT
não tem a capacidade de pouso e decolagem vertical). Geralmente é formado por
uma rampa inclinada com um sistema de catapulta utilizando elásticos ou ar compri-
mido. A força do lançamento deve ser capaz de acelerar o VANT até uma velocidade
mínima de sustentação.

(b) Sistema de Recuperação: Utilizado quando o VANT não tem capacidade de pouso
vertical e não há uma pista de pouso adequada. Geralmente este sub-sistema é
formado por um pára-quedas.

Figura 1.3 – Sub-sistemas gerais que compoem um VANT, adaptado de (TORONTO AEROS-
PACE TEAM UAV TEAM, 2014)
20

1.5 Objetivos

1.5.1 Objetivos Gerais

Modelar, simular e projetar um sistema de piloto automático (controle) para um VANT


de asa-fixa utilizando teoria de controle.

1.5.2 Objetivos Específicos

• Estudar e determinar as equações da dinâmica Longitudinal;

• Obter as derivadas de estabilidade e controle para o cálculo dos coeficientes aerodinâmi-


cos do VANT estudado;

• Simular a dinâmica do VANT analiticamente utilizando o software MATLAB/SIMU-


LINK;

• Simular a dinâmica do VANT em ambiente virtual utilizando o software X-Plane, que


utiliza a Teoria de Elemento de Pá (Blade Element Theory);

• Projetar controladores para rastreamento de referência de altitude e velocidade (dinâmica


longitudinal);

• Estudar o controle em diferentes fases do voo;

• Realizar implementação dos controles no software MATLAB/SIMULINK e realizar simu-


lação Software In the Loop (SITL) no simulador de voo X-Plane;

1.6 Contribuição

Este trabalho tem por objetivo prover uma metodologia de modelagem matemática, aná-
lise, simulação e projeto de controle da dinâmica longitudinal de um VANT de asa fixa através
de 2 métodos: analítico e pelo simulador de voo X-Plane. Esta metodologia é baseada em
técnicas consolidadas na literatura aeronáutica para análise de aviões tripulados, porém sua uti-
lização para VANTs é pouco documentada. É mostrado que os dois modelos convergem para
uma dinâmica longitudinal semelhante/compatível, validando a metodologia. Este tipo de aná-
lise é importante na etapa de projeto conceitual ou preliminar de um VANT. O próximo passo
21

natural seria obter dados aerodinâmicos em túnel de vento e em ensaios em voo, com isto seria
possível um ajuste fino no modelo analítico e de simulação de voo do VANT.
Também é apresentado o projeto de um piloto automático de mantenimento de altitude
e de velocidade (Altitude HOLD Autopilot e MACH HOLD Autopilot). O piloto automático é
projetado para uma única fase do voo (voo nivelado), porém seu comportamento é investigado
na presença de variações paramétricas (altitude e velocidade de equilíbrio, presença de vento,
rajada e turbulência).
A simulação analítica e em ambiente virtual (X-Plane) pode ser utilizada para o en-
sino da teoria de controle, sendo uma contribuição para os cursos de engenharia de controle e
aeroespacial.
O VANT escolhido para este estudo foi o University of Toronto Explorer (UT-X), que é
apresentado em maiores detalhes no capítulo 3.

1.7 Cronograma

Abaixo, na tabela 1.2 estão descritos as atividades realizadas para desenvolver o traba-
lho:
22

Tabela 1.2 – Cronograma de atividades


A vidade J F M A M J J A S O N D

Estudo de Aerodinâmica X X
Estudo da Mecânica de Vôo de
X X
aeronaves de asa fixa
Estudo das equações da dinâmica
X
longitudinal (3 graus de liberdade)
Estudo dos coeficientes
X
aerodinâmicos
Estudo do so ware DATCOM para
levantamento das derivadas de X X
estabilidade e de controle
Modelagem, simulação e controle
preliminar da dinâmica longitudinal X
no so ware MATLAB/SIMULINK
Simulação e controle preliminar da
dinâmica longitudinal no so ware X X
X-Plane
Modelagem do VANT UT-X no
so ware DATCOM para
X
levantamento das derivadas de
estabilidade e de controle
Modelagem, simulação e controle
da dinâmica longitudinal do VANT X X
UT-X no MATLAB/SIMULINK
Apresentação dos resultados
X
preliminares na JAI - UFSM
Simulação do VANT UT-X em 6
graus de liberdade no so ware X- X
Plane
Teste de controladores em
diferentes fases de voo e com X X
perturbações atmosféricas
Preparação de material para
X X
apresentação dos resultados

1.8 Organização

O trabalho esta organizado da seguinte maneira:

(a) No capítulo 2, é apresentado uma revisão bibliográfica de trabalhos que utilizam metodo-
logias semelhantes as utilizadas neste trabalho;

(b) No capítulo 3, a planta (VANT UT-X) é apresentada;

(c) No capítulo 4, os eixos de referência são definidos e as equações da dinâmica longitudinal


são desenvolvidas e apresentadas;

(d) No capítulo 5, a metodologia para o cálculo das forças aerodinâmicas é apresentada atra-
vés das derivadas de estabilidade e controle (com o software USAF DATCOM) e do
X-Plane;
23

(e) No capítulo 6, é apresentado a metodologia utilizada e os resultados para a simulação de


voo analítica no MATLAB/SIMULINK;

(f) No capítulo 7, é apresentado a metodologia de modelagem do VANT no X-Plane e resul-


tado da sua simulação de voo;

(g) No capítulo 8, o projeto e desempenho dos controladores (pilotos automáticos) são apre-
sentados. São apresentados resultados na presença de vento constante, rajada e turbulên-
cia;

(h) No capítulo 9, são realizados comentários sobre a metodologia e resultados apresentados.


Trabalhos futuros são indicados.
24

2 REVISÃO BIBLIOGRÁFICA

Nesta seção serão apresentados alguns trabalhos relevantes nas áreas de modelagem da
dinâmica longitudinal de aviões e VANTs utilizando técnicas analíticas, modelo por deriva-
das de estabilidade e controle obtidas pelo USAF DATCOM, e modelos de voo obtidos pelo
X-Plane. Alguns destes trabalhos apresentam dados de ensaio em voo do avião/VANT real
e comparam com os resultados dos modelos obtidos previamente. Também são apresentados
alguns trabalhos na área de controle de aviões e VANTs. Todas as referências aqui citadas in-
fluenciaram de alguma maneira o desenvolvimento apresentado neste relatório. Não são citados
livros nesta seção.

2.1 Mêcanica de Voo de VANTs

Em (WATKISS, 1994), é apresentada uma metodologia de cálculos analíticos no MA-


TLAB para obter as derivadas de estabilidade e controle de um VANT de asa fixa, baseado nas
suas características físicas (26Kg de massa, 3,6m de envergadura e momentos de inércia obti-
dos experimentalmente). Este modelo por derivadas de estabilidade e controle foi refinado com
dados de ensaio em voo.

2.2 Modelagem utilizando o USAF DATCOM

Em (TUREVSKIY; GAGE; BUHR, 2007) é apresentado uma metodologia de projeto


de avião baseado em um modelo de voo por derivadas de estabilidade e controle obtidas através
do USAF DATCOM, importando seus dados para dentro do MATLAB/SIMULINK, e então
simulando seu voo no simulador de voo de código aberto FlightGear. Uma vez construído o
modelo de voo por derivadas de estabilidade e controle, são apresentadas técnicas de projeto de
controle utilizando o MATLAB/SIMULINK.
Em (SIDDIQUI; KHUSHNOOD, 2009) é analisado o modelo aerodinâmico de um caça
de combate F-16 utilizando o USAF DATCOM em conjunto com dados de túnel de vento.
É mostrado que para altos ângulos de ataque (α) o resultado das derivadas de estabilidade e
controle do DATCOM perdem precisão. A solução vem por meio da realimentação de dados de
túnel de vento para dentro do DATCOM. É afirmado que uma maior precisão das derivadas de
estabilidade e controle é alcançada com esta realimentação de dados.
25

Em (JODEH, 2006), é desenvolvido uma metodologia para modelagem, simulação e


validação do modelo por ensaios em voo de um VANT. É construído um modelo baseado em
derivadas de estabilidade e controle com o USAF DATCOM. Este modelo analítico é inserido
no MATLAB/SIMULINK, sendo realizados um projeto de controle para voo autônomo e testes
Hardware In The Loop (HITL). Na última etapa do trabalho é apresentado uma metodologia
para ensaio em voo e validação do modelo de voo analítico. É afirmado que esta metodologia
compõe a base do conhecimento em VANTs do Advanced Navigation Technology (ANT) Center
do Air Force Institute of Technology (AFIT).
Em (JUNG; TSIOTRAS, 2007) é desenvolvido uma metodologia de modelagem e simu-
lação de um VANT pequeno (5,6Kg e 2m de envergadura). A modelagem envolve a obtenção
das derivadas de estabilidade e controle através do USAF DATCOM. Para simulação de voo é
utilizado o FlightGear, além da técnica HITL. É concluído que a metodologia é indispensável
para simulações de missões que o VANT vai desempenhar utilizando os aviônicos reais (sistema
de comunicação e piloto automático).

2.3 Modelagem utilizando o X-Plane

Em (THONG, 2010) o avião de combate F-15E é modelado no X-Plane, o modelo de


voo gerado pelo X-Plane é comparado com os resultados previstos em cálculos analíticos e dis-
poníveis no manual de voo do avião. É concluído que o modelo de voo dado pelo X-Plane tem
boa precisão para velocidades subsônicas. Para velocidade transônica e supersônica o modelo
se mostrou impreciso. Para solucionar esta imprecisão foi sugerido ajustes finos no modelo do
X-Plane a partir do uso do USAF DATCOM, ferramenta CFD e dados de ensaios em voo. Com
um modelo de voo ajustado, o X-Plane torna-se uma plataforma de simulação confiável.
Em (FIGUEIREDO; SAOTOME, 2012), é apresentado um trabalho de modelagem e
simulação de um VANT quadrirotor no simulador de voo X-Plane. Este simulador de voo foi
selecionado por ser o único certificado pela FAA (Federal Aviation Administration), por pos-
suir um programa de modelagem virtual da aeronave, por disponibilizar os dados gerados pelo
modelo de voo através de comunicação UDP (User Datagram Protocol) e simulação baseada
na Blade Element Theory. O trabalho mostra que esta metodologia de simulação é interessante
para o estudo de diferentes tipos de controladores (piloto automático).
Em (BITTAR; OLIVEIRA; FIGUEIREDO, 2013) é proposto uma plataforma para si-
mulação e testes de um VANT pequeno de asa-fixa (2,5Kg e 1,8m de envergadura) no simulador
26

X-Plane, utilizando HITL. Testes de leis de controle (piloto automático) são apresentados, mos-
trando sua atuação na presença de rajadas de vento e turbulência.
27

3 PLANTA - VANT DE RECONHECIMENTO AÉREO UT-X

Neste capítulo é apresentado o VANT escolhido para o estudo e desenvolvimento deste


trabalho. Também é definido de forma clara o problema que este trabalho buscou solucionar na
área de modelagem, simulação e controle de VANTs.

3.1 VANT University of Toronto Explorer (UT-X)

O VANT UT-X (figuras 3.1 e 3.2) foi projetado e construído pelo University of Toronto
Aerospace Team (UTAT), da University of Toronto (UofT), em Toronto, Canadá. Seu projeto
teve ajuda de engenheiros da empresa aeronáutica canadense Bombardier, sendo otimizado para
reconhecimento aéreo, carregando como payload uma câmera de fotografia de alta resolução
(29MP com massa aproximada de 1,4Kg) (figura 3.3). Este VANT teve como missão competir
nas seguintes competições: 2014 Unmanned Systems Canada Student UAV Competition e 2014
Association of Unmanned Vehicle Systems International (AUVSI) Student UAS Competition.
O autor deste trabalho foi parte integrante do UTAT durante intercâmbio na UofT (2013-
2014), através do programa Ciências Sem Fronteiras (CsF). Participou ativamente da constru-
ção, integração e operação (ensaios em voo) do UT-X. Por esta razão, o VANT UT-X foi esco-
lhido para este estudo.

Figura 3.1 – VANT UT-X do University of Toronto Aerospace Team (UTAT) modelado no So-
lidWorks
28

Figura 3.2 – VANT UT-X do University of Toronto Aerospace Team (UTAT)

Durante a fase de projeto conceitual, baseado na missão em que o VANT iria desempe-
nhar, foi decidido que o UT-X teria um trem de pouso do tipo triciclo, diedro de aproximada-
mente 5o na asa para aumento da estabilidade natural de rolamento, duplo estabilizador vertical,
e estabilizador horizontal acima da área de downwash da hélice. Foi decidido usar fibra de car-
bono para construção do seu Airframe e tiras de kevlar nas suas superfícies de comando e na
junção do tail boom com a asa (figura 3.4). Este material daria uma boa resistência ao Airframe
quando submetido às forças em voo, aliado ao baixo peso total da estrutura. O processo de
construção utilizando fibra de carbono requer cuidados especiais, foi necessário projetar mol-
des em ferramenta CAD da imagem negativa do Aiframe, para posteriormente serem fabricados
utilizando máquinas CNC em material especial (figura 3.5).
29

Figura 3.3 – Sub-Sistemas que compoem o UT-X, adaptado de (TORONTO AEROSPACE


TEAM UAV TEAM, 2014)

Figura 3.4 – Processo de fabricação da asa do UT-X mostrando camadas de fibra de carbono e
tiras de reforço em Kevlar
30

Figura 3.5 – Moldes da parte superior da asa, fabricados em máquina CNC

Parâmetros necessários para a simulação analítica de um VANT são os seus momentos


de inércia. Para obtenção do momento de inércia longitudinal (Iyy ) do UT-X, foi utilizado a
ferramenta CAE SolidWorks para construção de um modelo CAD com peso e densidade iguais
ao do modelo real. Este método também é utilizado por (PARIKH et al., 2009), que demonstra
que o erro entre o cálculo do SolidWorks e a medição experimental para Iyy , de um VANT de
tamanho e peso semelhantes ao UT-X, está em torno de 15%. Para a construção do modelo
CAD, algumas considerações foram feitas de forma a aproximar o máximo possível o resultado
calculado pelo software SolidWorks do valor real:

(a) Cada parte do VANT real foi dividida e seu peso/dimensão mensurado;

(b) Cada parte do VANT desenhado na ferramenta CAD teve exatamente o mesmo peso final
e dimensão da parte real;

(c) A densidade e volume interno das partes desenhadas na ferramenta CAD foram aproxi-
madamente os mesmos das partes reais do VANT;

(d) O peso e centro de gravidade final do VANT como um todo foram os mesmos do equipa-
mento real.
31

Dados das características físicas do UT-X podem ser vistos na tabela 3.1.

Tabela 3.1 – Parâmetros Físicos do VANT UT-X


Símbolo Parâmetro Valor
m Massa total com payload e baterias 9, 57 kg
− Autonomia de voo aproximada 45 min
VT max Velocidade máxima aproximada 25 m/s
b Envergadura 1, 978 m
d Comprimento total 1, 34 m
S Área de Referência de asa 0, 485 m2
Iyy Momento de inércia de arfagem 3, 33 kg.m2
c̄ Corda média aerodinâmica 0, 2449 m
Xcg Posição do C.G. na coordenada X 0, 477 m
Zcg Posição do C.G. na coordenada Z 0, 109 m
Wairf oil Perfil de asa N ACA − 6412
HVairf oil Perfil dos estabilizadores horizontal e vertical N ACA − 0012

Onde:

• Xcg tem sentido positivo em direção a cauda, a partir do nariz do VANT;

• Zcg tem sentido positivo de baixo para cima a partir da barriga do VANT;

3.2 Proposição do Problema

A primeira parte do problema que este trabalho busca solucionar é: Dado um VANT
com estrutura e características físicas já definidas, como obter um modelo matemático da
dinâmica longitudinal do VANT real, com a maior fidelidade possível deste comportamento
real?
A segunda parte do problema que este trabalho busca solucionar é: Conhecendo o mo-
delo matemático de um VANT, seus autovalores (pólos), que estratégia de controle utilizar
para desenvolver um piloto automático (controle) para mantenimento de altitude e veloci-
dade (Altitude HOLD Autopilot e MACH HOLD Autopilot), que seja de fácil implementação
em Hardware e requerendo baixo poder de processamento?
Este trabalho tem como objetivo a solução desses problemas. Nos capítulos seguintes é
detalhado cada etapa percorrida até a solução final, apresentando resultados.
A solução para a primeira parte vem através da construção de um modelo de voo por
derivadas de estabilidade e controle, gerado por métodos semi-empíricos sintetizados pelo soft-
ware USAF DATCOM. Para comparação com o DATCOM, um segundo modelo de voo é ge-
32

rado pelo X-Plane, que utiliza a Teoria de Elemento de Pá (Blade Element Theory) para cálculo
dos coeficientes e forças aerodinâmicas. De posse dos dois modelos, é possível verificar se
ambos os métodos chegaram em resultados semelhantes para o VANT UT-X.
A solução para a segunda parte vem através de técnicas clássicas de controle de aviões,
demonstradas por (STEVENS; LEWIS, 1992). A abordagem utilizada envolve a linearização
das equações não lineares da dinâmica longitudinal (utilizando a matriz jacobiana) ao redor de
um ponto de equilíbrio, também chamado de ponto de balanço do avião (altitude e velocidade
escolhidas). No meio aeronáutico, o ponto de balanço também é conhecido como "Trim". Com
isto, são empregadas estratégicas de controle linear (Root-Locus e Diagrama de Bode), para
cálculo dos ganhos dos reguladores e compensadores utilizados. O controle final é composto
por sucessivas malhas de realimentação fechadas em sequência, sendo que a cada realimentação
é necessário recalcular as funções de transferência para o sistema aumentado. Controladores
Proporcionais-Integrais-Derivativos (PID) são adotados e uma discussão sobre sua aplicação
prática em forma de tabela de ganhos (gain scheduling) é apresentada.
33

4 MODELAGEM DA PLANTA(VANT)

4.1 Introdução

O capítulo apresenta o procedimento utilizado para a modelagem matemática da di-


nâmica longitudinal, escolha das variáveis de estado, e obtenção do modelo aerodinâmico do
VANT UT-X. A análise das forças e momentos que atuam sobre um VANT são semelhantes aos
de um avião tripulada de maior porte. Portanto, o procedimento apresentado também é válido
para a análise da dinâmica longitudinal de aviões tripulados.
Uma aeronave possui geralmente 6 graus de liberdade (modelo 6DoF), compostas por
equações de forças e momentos atuando sobre ela e apresenta dinâmica não-linear (HULL,
2007). Portanto seu modelo será formado por um sistema acoplado de equações diferenciais
não-lineares. A construção de um modelo matemático de um VANT (ou avião) que descreva
seu comportamento dinâmico deve ser feita de maneira minuciosa. Busca-se construir um mo-
delo que seja o mais simples possível(STEVENS; LEWIS, 1992), porém que nos mostre o
comportamento dinâmico do VANT da forma mais real possível. Para modelagem das forças
e momentos que atuam no corpo é utilizada a teoria da mecânica clássica (Leis de Newton),
a análise dos movimentos de uma aeronave através dessa teoria é a grande área chamada de
mecânica de voo(HULL, 2007).
Para simplificação do modelo, algumas considerações são feitas. Com isto obtemos um
modelo matemático que descreve com um erro pequeno o comportamento dinâmico do VANT
na fase de voo de nosso interesse (voo de cruzeiro, por exemplo), mas que tem limitações quanto
ao seu uso em outras fases do voo (decolagem, manobras, pouso). Idealmente espera-se obter
um modelo matemático que descreva exatamente o movimento do VANT(avião) real, porém o
que se consegue na realidade é um modelo com uma série de erros acumulados. De acordo com
(STEVENS; LEWIS, 1992), os erros vem da incerteza nos valores de alguns parâmetros, por
isto o processo de modelagem também é iterativo, onde dados experimentais ou de simulação
de parâmetros físicos específicos (alguns deles aerodinâmicos) realimentam o processo mate-
mático. Portanto, procura-se minimizar o máximo possível os erros, mas conhecendo o erro
residual pode-se incluí-lo durante o projeto do sistema de controle.
Os passos simplificados para a modelagem matemática da dinâmica longitudinal do
VANT podem ser listados como:
34

(a) Definição de sistemas de referência;

(b) Uso da 2ª Lei de Newton para os movimentos translacionais (somatório das forças) e
rotacionais (somátorio dos momentos);

(c) Realizar considerações, para simplificar as equações e desacoplar as dinâmicas longitu-


dinais e látero-direcionais;

(d) Levantar as variáveis de estado de interesse;

(e) Aplicar rotações para traduzir as equações da dinâmica de voo para o eixo de referência
de interesse;

(f) Linearizar o modelo ao redor de um ponto de balanço (escolhendo-se determinada velo-


cidade e altitude);

(g) Obter as derivadas de estabilidade e controle (coeficientes aerodinâmicos);

(h) Calcular as forças aerodinâmicas utilizando as derivadas de estabilidade e controle;

Os passos (g) e (h) são mostrados no capítulo 5.


O capítulo está organizado da seguinte maneira: na seção 4.2, os eixos de referência e
os ângulos de interesse são definidos; na seção 4.3, são apresentadas as considerações feitas
para a obtenção do modelo da dinâmica longitudinal e o referencial inercial em que as forças
e momentos são descritas; na seção 4.5, as forças e momentos envolvidos na mecânica de
voo do VANT são detalhadas; na seção 4.6, as variáveis e equações de estado são definidas
considerando um dos sistema de eixos de referência definidos previamente.

4.2 Definição dos Eixos de Referência e Ângulos

Nesta seção são apresentados os sistemas de referência e os ângulos de interesse utili-


zados para modelagem longitudinal de um VANT (ou avião). As forças e momentos que atuam
sobre o mesmo são produzidas pelo vento relativo passando através das superfícies aerodinâ-
micas (superfícies de comando, asas, empenagem, fuselagem, além da força propulsiva). Para
determinar a direção e orientação destas forças e momentos, é necessário definir um sistema de
referência.
Para realização do cálculo das forças e momentos que atuam no corpo, é preciso derivar
as equações em relação a um referencial inercial (definido na seção 4.3). Uma vez obtidas as
35

equações em relação a este referencial, um passo importante é o conhecimento da resultante de


forças, velocidades e momentos em relação ao vento relativo que passa através das superfícies
aerodinâmicas. Para realizar isto, são definidos sistemas de referência, tornando possível a rea-
lização de rotações específicas para traduzir as forças, velocidades e momentos de um sistema
de referência para outro (seção 4.4).
São definidos 3 sistemas de eixos de referência principais: Eixos do Corpo (Body Axes),
Eixos de Estabilidade (Stability Axes), e Eixos do Vento (Wind Axes) (STEVENS; LEWIS,
1992). Estes eixos são mostrados na figura 4.1.

(a) Eixos do Corpo - Sistema de referência com 3 eixos ortogonais, fixo na aeronave, cen-
trado no centro de gravidade (CG) da mesma. Sendo suas rotações solidarias. Utiliza
a convenção do eixo X apontado para o nariz da aeronave, Y apontado para a semi asa
direita, e Z apontando para a barriga;

(b) Eixos de Estabilidade (ou Eixo Horizontal Local) - Sistema com origem no CG, com
o eixo X apontando para o norte local, eixo Y para o leste local, eixo Z para o centro
da Terra. Este sistema é conhecido como North-East-Down (NED). As direções desse
sistema se alteram de acordo com a curvatura da Terra;

(c) Eixos do Vento (Aerodinâmico) - Sistema de referência com 3 eixos ortogonais, centrado
no CG da aeronave, e seus eixos sempre acompanham a direção do vento relativo à ae-
ronave. O eixo X aponta para a direção contrária ao vento relativo da aeronave, o eixo
Z é perpendicular ao vento relativo, contido no plano de simetria do avião e aponta para
baixo, o eixo Y completa o sistema de coordenadas dextrogiro.
36

Figura 4.1 – Eixos de referência e definição dos ângulos (STEVENS; LEWIS, 1992)

Com a definição dos sistemas de referência, podemos então definir os ângulos de inte-
resse entre essas referências (figuras 4.1, 4.3 e 4.2):

(a) Ângulos de Euler de transformação do sistema inercial para o corpo - convenção ψ −


θ − φ, com sentido positivo seguindo a regra da mão direita.

• Ângulo de Guinada (Yaw Angle - ψ) - Primeira rotação, é aquela necessária para


o referencial inercial girar até que o eixo X encontre a intersecção da projeção do
eixo X do corpo com o horizonte;

• Ângulo de Arfagem (Pitch Angle - θ) - Segunda rotação, em torno do eixo Y do


sistema intermediário anterior até que o eixo do mesmo X seja coincidente com
aquele de mesmo nome no sistema do corpo;

• Ângulo de Rolamento (Roll Angle - φ) - Terceira rotação, em torno do eixo X do


segundo sistema intermediário até que o eixo Y esteja coincidente com o do corpo,
completando a rotação tridimensional.

(b) Ângulos de Euler de transformação do sistema aerodinâmico para o corpo - convenção


β − α.
37

• Ângulo de Derrapagem (Sideslip Angle - β) - Primeira rotação, em torno do eixo Z


do sistema aerodinâmico, até que seu eixo X esteja contido no plano de simetria da
aeronave;

• Ângulo de Ataque (Angle of Attack (AoA) - α) - Segunda rotação, com respeito ao


eixo Y do sistema intermediário até que o mesmo coincida com o eixo X do sistema
do corpo;

(c) Ângulo de Trajetória de Voo (Flight Path Angle - γ) - Ângulo que o vetor velocidade do
CG faz com o plano horizontal, medido ao longo de um plano vertical;

Figura 4.2 – Ângulos de Euler para transformação do sistema inercial para o corpo. Fonte:
CHRobotis.

Figura 4.3 – Definição dos ângulos da dinâmica longitudinal


38

4.3 Considerações e Definição do Referencial Inercial

Tendo como objetivo a obtenção de um modelo matemático que descreva a dinâmica


longitudinal de maneira a balancear precisão e simplicidade, uma série de considerações são
realizadas para obtenção das equações (STEVENS; LEWIS, 1992) (HULL, 2007) (BLAKE-
LOCK, 1991). Elas são apresentadas a seguir:

(a) A aeronave está em fase de voo nivelado;

(b) A atmosfera em que ocorre o voo é estacionária. As propriedades atmosféricas só depen-


dem da variação de altitude (independem da temperatura e ventos - por exemplo);

(c) A Terra é considerada plana, sem aceleração, sem rotação, com aceleração da gravidade
sendo perpendicular à superfície da Terra (Modelo da Terra Plana - Flat Earth Model);

(d) O corpo da aeronave (VANT) é rígido e de massa constante ao longo do tempo;

(e) O Ângulo de Derrapagem (β) é nulo;;

(f) As perturbações em relação ao equilíbrio são pequenas, ou seja, variações baixas do ân-
gulo de arfagem (θ);

(g) A deflexão do profundor não altera as forças, somente o momento de arfagem;

(h) Todas as forças aerodinâmicas (Sustentação, Empuxo, Arrasto) atuam no C.G. da aero-
nave;

(i) O VANT apresenta simetria da sua estrutura em relação ao seu plano (x, z);

As considerações (e), (f) e (g) são as que nos permitem desacoplar as equações da dinâ-
mica longitudinal e látero-direcional. Com isto podemos analisar separadamente as equações
da dinâmica longitudinal do VANT (modelo de 3 graus de liberdade (3DoF)).
A consideração (d) que trata da massa constante é válida pois, embora a massa da ae-
ronave mude consideravelmente devido ao combustível, ela não muda bruscamente durante o
voo. Porém o sistema de controle deve ser projetado para cada situação específica. Em casos em
que há variação considerável e rápida da massa (foguetes, mísseis, etc) então é mais indicado
o uso da teoria da mecânica Lagrangiana para derivação das forças e momentos que atuam na
aeronave (BLAKELOCK, 1991).
39

O Referencial Inercial pode ser adotado como um ponto fixo na Terra. Para o Modelo
da Terra Plana, mesmo considerando sua rotação e aceleração, elas podem ser desconsidera-
das, pois a aceleração da Terra é muito inferior quando comparada com as acelerações de uma
aeronave manobrando sobre sua superfície (STEVENS; LEWIS, 1992). Portanto, utilizando
o Modelo da Terra Plana podemos considerar um ponto fixo na sua superfície a origem do
referencial inercial, sendo as leis de Newton(forças e momentos) derivadas em relação a esse
referencial inercial. Os eixos de referência do referencial inercial são definido como:

• Eixos do Solo (Ground Axes System) - Sistema de referência com 3 eixos ortogonais,
fixos no referencial inercial. Seu plano (X, Y ) é sempre paralelo ao horizonte da Terra
(utilizando o Modelo da Terra Plana). Utiliza a convenção NED.

4.4 Rotações entre os Sistemas de Referência

Uma vez definidos o referencial inercial (Eixos do Solo) e os demais sistemas de refe-
rência (Eixos do Corpo, Eixos de Estabilidade, Eixos do Vento), podemos traduzir as forças e
momentos de um sistema para outro através de uma sequência de rotações (STEVENS; LEWIS,
1992)(COOK, 2011)(BEARD; MCLAIN, 2012). Em outras palavras, essas rotações traduzem
as equações derivadas em relação a um sistema de referência específico para outro.

4.4.1 Rotação entre o Eixos do Solo e Eixos do Corpo

Para traduzir as equações derivadas em relação ao referencial inercial para o sistema de


referências preso no CG do VANT, podemos utilizar 2 métodos:

(a) Quaternion;

(b) Sequência de rotações utilizando os ângulos de Euler.

A opção (a) tem tempo de cálculo computacional menor quando comparada com a op-
ção (b), é utilizada praticamente em todas as aplicações aeroespaciais (Foguetes, Mísseis, Ae-
ronaves, Naves Espaciais). Para simulações de voo a opção (b) é amplamente utilizada por sua
simplicidade e por atender as considerações impostas. Os ângulos de Euler, durante a simulação
tem uma singularidade para θ = 90 (chamada de gimbal lock) (STEVENS; LEWIS, 1992).
Para este trabalho a opção (b) foi utilizada, pois respeita as considerações feitas na seção
4.3 e tem resultado satisfatório para este tipo de simulação. As rotações são feitas em relação
40

aos ângulos de Euler (φ-θ-ψ), partindo do Eixo do Solo, seguindo a sequência utilizada na
indústria aeronáutica (STEVENS; LEWIS, 1992):

• Rotação ao redor do eixo Z - ψ (Yaw) positivo (guinada do nariz do avião para direita)

• Rotação ao redor do eixo Y - θ (Pitch) positivo (arfagem do nariz do avião para cima)

• Rotação ao redor do eixo X - φ (Roll) positivo (rolagem da asa direita para baixo)

   
x x
y  = Rφ .Rθ .Rψ . y  (4.1)
z Eixos do Corpo z Eixos do Solo
Sendo:  
1 0 0
Rotφ = 0 cos(φ) sen(φ) (4.2)
0 −sen(φ) cos(φ)
 
cos(θ) 0 −sen(θ)
Rotθ =  0 1 0  (4.3)
sen(θ) 0 cos(θ)
 
cos(ψ) sen(ψ) 0
Rotψ = −sen(ψ) cos(ψ) 0 (4.4)
0 0 1
Considerando que Eixos do Solo = NED, Eixos do Corpo = Body, cos(x) = c(x) e
sen(x) = s(x), temos que:

 
c(θ)c(ψ) c(θ)s(ψ) −s(θ)
Body
RN ED = Rφ .Rθ .Rψ = s(φ)s(θ)c(ψ) − c(φ)s(ψ) s(φ)s(θ)s(ψ) + c(φ)c(ψ) s(φ)c(θ)
c(φ)s(θ)c(ψ) + s(φ)s(ψ) c(φ)s(θ)s(ψ) − s(φ)c(ψ) c(φ)c(θ)
(4.5)
Body
Utilizando a propriedade de RN ED ser ortogonal e inversível, temos que a matriz de

rotação do referencial do corpo para o inercial é dada pela matriz inversa da equação 4.5:

N ED Body −1 Body T T T T
RBody = (RN ED ) = (RN ED ) = Rψ .Rθ .Rφ (4.6a)
 
c(ψ)c(θ) c(ψ)s(φ)s(θ) − c(φ)s(ψ) s(φ)s(ψ) + c(φ)c(ψ)s(θ)
N ED
RBody = c(θ)s(ψ) c(φ)c(ψ) + s(φ)s(ψ)s(θ) c(φ)s(ψ)s(θ) − c(ψ)s(φ) (4.6b)
−s(θ) c(θ)s(φ) c(φ)c(θ)
41

4.4.2 Rotações entre os Eixos Fixos na Aeronave

Sendo os sistemas de referência fixos no CG da aeronave, Eixos do Corpo, Eixos de


Estabilidade e Eixos do Vento, podemos traduzir as equações entre os sistemas através das
matrizes de rotação 4.7, 4.8, 4.9 e 4.10.

     
x cos(α) 0 sen(α) x
S
RB (α) = y  = 0 1 0  . y  (4.7)
z Eixos de Estabilidade −sen(α) 0 cos(α) z Eixos do Corpo

     
x cos(β) sen(β) 0 x
W
RS (β) = y
  = −sen(β) cos(β) 0 . y 
   (4.8)
z Eixos do Vento 0 0 1 z Eixos de Estabilidade

     
x cos(α).cos(β) sen(β) sen(α).cos(β) x
W
RB (α, β) = y
  = −cos(α).sen(β) cos(β) −sen(α).sen(β) . y 
  
z Eixos do Vento −sen(α) 0 cos(α) z Eixos do Corpo
(4.9)

 
cos(α).cos(β) −cos(α).sen(β) −sen(α)
B W
RW (α, β) = [RB (α, β)]T =  sen(β) cos(β) 0  (4.10)
sen(α).cos(β) −sen(α).sen(β) cos(α)

4.5 Forças e Momentos

Para ser possível aplicar a 2ª Lei de Newton, é necessário saber as forças e momentos
que agem sobre o corpo, sendo o somatório das forças e momentos em relação ao referen-
cial inercial (Eixos do Solo)(STEVENS; LEWIS, 1992)(BLAKELOCK, 1991)(HULL, 2007).
Utilizando as considerações realizadas na seção 4.3, podemos analisar a dinâmica longitudinal
isoladamente(STEVENS; LEWIS, 1992)(HULL, 2007).

4.5.1 Forças (Dinâmica Translacional)

São as forças aerodinâmicas produzidas pelo vento relativo passando pelas superfícies
aerodinâmicas (aerofólios) da aeronave mais a força peso e força de propulsão gerada pelo
motor. As forças aerodinâmicas (sustentação e arrasto) podem ser representadas por uma única
força aerodinâmica (A) (figura 4.4):
42

• Sustentação (Lif t - L)

• Arrasto (Drag - D)

• Peso (Weight - W)

• Propulsão (Thrust - T)

Figura 4.4 – Forças que atuam no avião (dinâmica longitudinal) (HULL, 2007)

Considerando o VANT em voo nivelado(a), temos que o somatório das forças atuando
sobre ele são compostas por forças de equilíbrio (que mantem o voo nivelado), mais forças de
perturbação devido a mudanças nos controles de profundor e manete de potência. Este fato é
mostrado na equação 4.11:
X X X
F = F0 + ∆F (4.11)
P
Sendo F0 o somatório das forças de sustentação, arrasto, peso e tração na condição
de equilíbrio, podemos dizer que se o VANT está em voo nivelado, este somatório é igual a
zero.
Utilizando a 2ª Lei de Newton (que diz que o somatório das forças atuando sobre o corpo
é igual a taxa de variação do seu momento linear) em relação a um referencial inercial:
X d
F = (m.V ) (4.12)
dt
Onde V é o vetor velocidade do centro de massa com respeito ao referencial inercial.
43

Mas devido a consideração (d), temos que:


X d.V
F = m. (4.13)
dt
Para encontrarmos a derivada da velocidade precisamos atentar para o fato de que o vetor
velocidade pode estar rotacionando enquanto muda sua magnitude; se o vetor velocidade for
escrito no sistema de eixos do corpo é necessário utilizar o Teorema de Coriolis (BLAKELOCK,
1991). Logo temos que a taxa de variação da velocidade é:
dV dVB
= + ωB × VB (4.14)
dt dt
Sendo ω a velocidade angular do VANT em relação ao sistema do solo, mas escrito no
sistema do corpo. Decompondo lV . d.V
dt
e ω × V , temos:

d.VB
= i.U̇ + j.V̇ + k.Ẇ (4.15)
dt
 
i j k
ωB × VB = P Q R  (4.16)
U V W
Sendo U, V, W as velocidades do centro de massa em relação ao referencial inercial,
mas escritas no sistema do corpo. P, Q, R as velocidades angulares, nos eixos (x, y, z).

 T
VB = U V W (4.17)
 T
ωB = P Q R (4.18)
P
Podemos reescrever o somatório das forças de perturbação do equilíbrio ( ∆F ) da
seguinte maneira:

X X X X
∆F = i. ∆Fx + j. ∆Fy + k. ∆Fz (4.19)

Expandindo a equação 4.16 podemos finalmente reescrever as forças de perturbação


P
( ∆F ) separadamente em cada eixo (x, y e z - Eixo do Solo), em função das velocidades
lineares e suas derivadas e velocidades angulares:
Fx = m.(U̇ + W.Q − V.R)

Fy = m.(V̇ + U.R − W.P) (4.20)

Fz = m.(Ẇ + V.P − U.Q)


Onde m é a massa do VANT e g a aceleração da gravidade local.
44

4.5.2 Momentos (Dinâmica Rotacional)

Similarmente ao procedimento adotado na seção anterior, o somatório dos momentos


atuando sobre o VANT pode ser dado como uma parcela de equilíbrio e outra de perturbação:

X X X
M= M0 + ∆M (4.21)
P
Sendo M0 o somatório dos momentos gerados pelas superfícies aerodinâmicas e tra-
ção na condição de equilíbrio, podemos dizer que se o VANT está em voo nivelado, este soma-
tório é igual a zero.
Seguindo com a derivação das equações do movimento angular em relação ao referencial
inercial, sendo H o momento angular em relação ao CG de um corpo genérico em rotação,
temos que:

X d.H
∆M = (4.22)
dt

Figura 4.5 – Corpo genérico com velocidade angular ω (BLAKELOCK, 1991)

A velocidade tangencial do elemento de massa mostrado na figura 4.5 pode ser expressa
pelo produto vetorial entre a velocidade angular e o raio em relação ao CG do corpo:

Vtan = ω × r (4.23)

Com pd = m.vd , logo momento linear incremental deste elemento de massa pode ser
descrito como:
dM = (ω × r).dm (4.24)
45

Calculando o momento angular deste momento linear incremental:

dH = r × (ω × r).dm (4.25)

Integrando para o total de massa do VANT temos:


Z
H = r × (ω × r).dm (4.26)

Para resolver este triplo produto vetorial, definimos ω e r como sendo:

ω = i.P + j.Q + k.R (4.27)

r = i.x + j.y + k.z (4.28)

Com isto, o produto vetorial ω × r é igual a:


 
i j k
ω × r = P Q R (4.29)
x y z

ω × r = i.(z.Q − y.R) + j.(x.R − z.P ) + k.(y.P − x.Q) (4.30)

Multiplicando novamente por r, resulta em:


 
i j k
r × (ω × r) =  x y z  (4.31)
z.Q − y.R x.R − z.P y.P − x.Q
Expandindo o resultado da equação 4.31:

r × (ω × r) =i.[(y 2 + z 2 ).P − x.y.Q − x.z.R]+ (4.32a)

+j.[(z 2 + x2 ).Q − y.z.R − x.y.P ]+ (4.32b)

+k.[(x2 + y 2 ).R − x.z.P − y.z.Q] (4.32c)

Substituindo o resultado da equação 4.32 em 4.26, temos:

Z
H= i.[(y 2 + z 2 ).P − x.y.Q − x.z.R].dm+ (4.33a)
Z
+ j.[(z 2 + x2 ).Q − y.z.R − x.y.P ].dm+ (4.33b)
Z
+ k.[(x2 + y 2 ).R − x.z.P − y.z.Q].dm (4.33c)

Com o resultado da equação 4.33,podemos definir algumas propriedades físicas para


substituição:
46

• Momentos de Inércia
Z
Ix = (y 2 + z 2 )dm
Z
Iy = (z 2 + x2 )dm (4.34)
Z
Iz = (x2 + y 2 )dm

• Produtos de Inércia
Z
Jxy = (x.y)dm
Z
Jxz = (x.z)dm (4.35)
Z
Jyz = (y.z)dm

Lembrando da consideração (i) da seção 4.3, de que o VANT é simétrico no seu plano
(x, z), temos que Jxy = Jyz = 0. Com isso temos:

Hx = P.Ix − R.Jxz

Hy = Q.Iy (4.36)

Hz = R.Iz − P.Jxz

Voltando a equação 4.22, expandindo a derivada utiliando o Teorema de Coriolis, temos


que:
X dH
∆M = lh . +ω×H (4.37)
dt
Utilizando a equação 4.36, temos que lh . dH
dt
é igual a:

dHx
= Ṗ .Ix − Ṙ.Jxz (4.38a)
dt
dHy
= Q̇.Iy (4.38b)
dt
dHz
= Ṙ.Iz − Ṗ .Jxz (4.38c)
dt

E ω × H é igual a: 

i j k
ω×H =P Q R (4.39)
Hx Hy Hz

ω × H = i.(Q.Hz − R.Hy ) + j.(R.Hx − P.Hz ) + k.(P.Hy − Q.Hx ) (4.40)

Reescrevendo a equação 4.37 na forma vetorial:


X X X X
∆M = i ∆L + j ∆M + k ∆N (4.41)
47

Substituindo os resultados das equações 4.38 e 4.40 na equação 4.41, temos finalmente
o resultado dos momentos:

L = Ṗ.Ix − Ṙ.Jxz + Q.R.(Iz − Iy ) − P.Q.Jxz (4.42a)

M = Q̇.Iy + P.R.(Ix − Iz ) + (P2 − R2 ).Jxz (4.42b)

N = Ṙ.Iz − Ṗ.Jxz + P.Q.(Iy − Ix ) + Q.R.Jxz (4.42c)

4.6 Modelo Não Linear da Dinâmica Longitudinal do VANT

Seguindo a análise de forças e momentos realizada na seção anterior, o objetivo desta


seção é mostrar como essa informação é sintetizada em um sistema de equações não-lineares
o qual forma o modelo de 6 graus de liberdade das equações de voo. Após, é relembrado
as considerações necessárias para o desacoplamento das equações. Deste ponto em diante,
buscaremos um modelo baseado em espaço de estados:

Ẋ = A.X + B.U
(4.43)
Y = C.X + D.U
Onde:

• A, B, C, D são as matrizes de parâmetros do sistema;

• X é o vetor de estados;

• U é o vetor de entradas do sistema;

• Y é o vetor de saída do sistema;

Começando pela escolha de um vetor de estados, formado pelo vetor posição do C.G.
do avião em relação ao referencial inercial (PN ED ), vetor velocidade (VB ), vetor dos ângulos
de Euler (Φ) e vetor das velocidades angulares (ωB ) (equação 4.44):

X T = PNT ED VBT ΦT ωBT


 
(4.44)

XT =
 
pN pE h U V W φ θ ψ P Q R (4.45)
48

O vetor de entradas de controle (U ) é formado pela posição da manete de potência do


motor (chamado pela literatura de δπ ) mais a deflexão das superfícies de comando do VANT
(profundor, aileron e leme):

U T = δπ δelevator δaileron δrudder


 
(4.46)

Embora as equações 4.20 e 4.42 estejam em função das velocidades lineares e angulares
em relação ao Eixos do Corpo, para a simulação e projeto de controle de um VANT (assim
como nos aviões tripulados), é mais interessante obter uma relação dessas velocidades com
os ângulos definidos (α, β) com respeito ao referencial aerodinâmico (do vento) (STEVENS;
LEWIS, 1992). Sendo VT a velocidade verdadeira do VANT (True Airspeed), é possível definir:

VT = (U 2 + V 2 + W 2 )1/2 (4.47a)
W
tg(α) = (4.47b)
U
V
sen(β) = (4.47c)
VT

Utilizando essa relação (eq. 4.47), podemos fazer uma substituição no nosso vetor de
estados x. Substituindo as velocidades lineares U, V, W por VT , α, β:

U.U̇ + V.V̇ + W.Ẇ


V˙T = (4.48a)
VT

V̇ .VT − V.V˙T
β̇ = (4.48b)
VT2 .cos(β)

U.Ẇ − W.U̇
α̇ = (4.48c)
U2 + W 2

Com isto o vetor de estados fica:

XT =
 
VT β α pN pE h φ θ ψ P Q R (4.49)

Para o desacoplamento da dinâmica longitudinal e látero-direcional, devemos utilizar


as considerações da seção 4.3. Considerando voo nivelado, com ângulo de rolagem φ = 0 e
ângulo de derrapagem β = 0 podemos desacoplar as equações em dinâmica longitudinal (trans-
lação no plano (x, z) e arfagem) e dinâmica látero-direcional (rolagem, guinada e derrapagem)
49

(STEVENS; LEWIS, 1992). As equações desacopladas são mais fáceis de serem trabalhadas
analiticamente.
Com a dinâmica longitudinal desacoplada, podemos escolher o vetor de estados que
mais é indicado dependendo da fase de voo a ser estudada (decolagem, subida, voo nivelado,
descida ou pouso). Como o foco deste trabalho é a análise dos modos de voo e controle em voo
nivelado, o novo vetor de estados da dinâmica longitudinal foi escolhido como sendo:

XT = V T α θ Q h
 
(4.50a)

UT = δelevator δπ
 
(4.50b)

Expandindo as forças aerodinâmicas e de propulsão, os momentos e as derivadas de esta-


bilidade e controle nas equações 4.20 e 4.42; realizando uma rotação dessas equações que estão
no Eixos do Solo para o Eixos do Vento utilizando a matriz de rotação 4.9; também incluindo a
aceleração da gravidade g, o referenciamento de atitude através dos ângulos de Euler, a relação
4.47, e desacoplando as dinâmicas longitudinais das látero-direcionais, obtemos finalmente o
sistema de equações não-lineares da dinâmica longitudinal que utiliza o Modelo da Terra Plana
( equação 4.51). Este procedimento pode ser visto em detalhes em (STEVENS; LEWIS, 1992).

(Thrust .cos(α) − Drag )


V˙T =[ ] − g.sen(γ) (4.51a)
m
[−Thrust .sen(α) − Lift + m.(VT .Q + g.cos(γ))]
α̇ = (4.51b)
(m.VT + q̄.S.CLα̇ )

θ̇ =Q (4.51c)

(q̄.S.c̄.(CM + D) + Thrust .ZE )


Q̇ = (4.51d)
Iyy
1
[ .c̄.(CMQ .Q + CMα̇ .α̇)]
onde : D = 2 (4.51e)
VT

ḣ =VT .sen(γ) (4.51f)

Sendo:

• γ = θ − α;

• g a aceleração da gravidade;
50

• m a massa do VANT;

• Lif t , Drag as forças aerodinâmicas;

• Thrust a força de propulsão;

• ZE o deslocomanto do vetor propulsão no eixo z em relação ao CG do VANT, no caso do


UT-X ele é suposto sendo igual a zero;

• q̄ a Pressão dinâmica do ar;

• S a área de referência da asa;

• c̄ a corda média aerodinâmica da asa;

• CLα̇ , CM Q , CM α̇ , CM as derivadas de estabilidade;


51

5 CÁLCULO DAS FORÇAS E MOMENTOS DA PLANTA(VANT)


ATRAVÉS DE DERIVADAS DE ESTABILIDADE E CONTROLE

5.1 Forças Aerodinâmicas e Momento de Arfagem

As forças aerodinâmicas são geradas pela massa de ar passando com velocidade relativa
às superfícies aerodinâmicas do VANT. A mudança no momento de arfagem é causado pela
deflexão do profundor, quando há vento relativo passando através dele.
Para o cálculo das forças aerodinâmicas e momento de arfagem são utilizados coeficien-
tes aerodinâmicos adimensionais, chamados de derivadas de estabilidade e controle. Na seção
5.3 uma metodologia para obtenção das mesmas em relação aos Eixos do Vento será apresen-
tada. As forças aerodinâmicas e o momento de arfagem dependem de parâmetros físicos do
VANT e da pressão dinâmica do ar em função da altitude (STEVENS; LEWIS, 1992).

Força de Sustentação − Lif t = q̄.S.CL (5.1a)

Força de Arrasto − Drag = q̄.S.CD (5.1b)

Momento de Arfagem − M = q̄.S.c̄.CM (5.1c)

Onde:
ρ.VT2
• q̄ = : Pressão dinâmica da massa de ar em movimento no entorno do VANT;
2
• ρ: Densidade do ar em função da altitude;

• S: Área de referência da asa;

• c̄ a corda média aerodinâmica da asa;

• CL : Coeficiente aerodinâmico de sustentação total;

• CD : Coeficiente aerodinâmico de arrasto;

• CM : Coeficiente aerodinâmico de momento de arfagem;

• Com CL , CD e CM formados por uma soma de funções de derivadas de estabilidade e


controle;
52

5.2 Modelo do Motor - Força de Propulsão

A propulsão se deve às forças de reação produzidas pelo motor, dependendo do tipo


utilizado. Os mais frequentes são os Jato Puro, TurboFan, Turbo-Hélice, Pistão e Elétrico.
Por apresentar menor custo, rápida integração com os outros sub-sistemas, fácil operação e
controle de potência, o motor elétrico foi escolhido para o VANT UT-X (TORONTO AEROS-
PACE TEAM UAV TEAM, 2014). Algumas informações como hélice utilizada e empuxo
estático mensurado são descritos em (TORONTO AEROSPACE TEAM UAV TEAM, 2014).
Um modelo simplificado para cálculo da força de propulsão é a aproximação por uma função
de primeiro grau(STEVENS; LEWIS, 1992):

dT
• Força de Propulsão - Thrust = (TS + VT . ).δπ
dV

Onde:

• TS : É o empuxo estático gerado pelo conjunto motor/hélice, na altitude zero, com velo-
cidade zero;
dT TS
• =− : Taxa de decréscimo do empuxo em função da velocidade;
dV VT max

5.3 Coeficientes Aerodinâmicos Adimensionais - Derivadas de Estabilidade e Controle

Embora na derivação das equações da mecânica de voo algumas considerações são reali-
zadas para simplificação do modelo (capítulo 4), na realidade as forças e momentos envolvidos
no voo de uma aeronave são fortemente acopladas e não-lineares. As resultantes de forças e
momentos dependem de uma infinidade de variáveis e condições, sendo sua determinação ana-
lítica com alto grau de precisão uma tarefa quase impossível. Para viabilizar uma representação
analítica precisa destas forças e momentos, os coeficientes aerodinâmicos adimensionais podem
ser utilizados (STEVENS; LEWIS, 1992).
Estes coeficientes geralmente são obtidos em relação ao Eixos do Vento. Eles são for-
mados pela soma de uma porção de maior importância (dependente dos ângulos α e β), com su-
cessivos fatores de menor efeito que dependem de outras variáveis (STEVENS; LEWIS, 1992).
Essa soma é mostrada na equação 5.2.
53

CD = CD (CL ) + ∆CD (δelevator ) + ∆CD (β) + ∆CD (M ) + ... (5.2a)

CL = CL (α, TC ) + ∆CL (δelevator ) + ∆CL (M ) + ... (5.2b)

CM = CM (CL , TC ) + ∆CM (δelevator ) + ∆CM (M ) + ... (5.2c)

Onde TC é o coeficiente de propulsão normalizado para ser adimensional, ele é a parcela


que leva em conta o deslocamento de ar da hélice passando pela asa:

Thrust
TC = (5.3)
q̄.SD
e SD é a área do disco percorrido pelas pás da hélice.
As derivadas de estabilidade, são as componentes da soma 5.2 referentes à posição neu-
tra dos controles. Já as derivadas de controle são referentes à mudança dos controles (por
exemplo em função de δe levator).
Diversos métodos podem ser utilizados para a obtenção desses coeficientes aerodinâmi-
cos. Os mais precisos são os de ensaios em túnel de vento ou em voo da aeronave real. Porém,
para uma análise de projeto de VANT (ou avião) preliminar, o custo envolvido é muito grande
na construção e ensaio em túnel de vento um modelo em escala reduzida, ou de um protótipo
em escala real para ensaio em voo.
Para tornar possível a simulação e análise da mecânica de voo do VANT na fase de
projeto preliminar, métodos analíticos podem ser aplicados para o cálculo dos coeficientes ae-
rodinâmicos. São cálculos são baseados em dados empíricos passados (históricos de dados de
túnel de vento e de ensaios em voo de determinados tipos de aerofólios e fuselagens) e métodos
analíticos simplificados. Este meio de obtenção dos coeficientes aerodinâmicos combinando
cálculos empíricos e analíticos é chamado método semi-empírico.
Para o cálculo semi-empírico dos coeficientes aerodinâmicos foi utilizado o USAF DAT-
COM.

5.4 Método Semi-Empírico - USAF DATCOM

Durante e (principalmente) após a segunda guerra mundial, a USAF (United States Air
Force) realizou diversos ensaios em voo. Nesta época a indústria aeronáutica utilizava uma
grande quantidade de tabelas e relatórios de dados de túnel de vento e ensaios em voo para obter
os dados de derivadas de estabilidade e controle para o projeto de novos aviões de asa fixa. O uso
54

dessa grande quantidade de dados, espalhados em diversos relatórios/documentos, acrescentava


uma dificuldade de projeto não referente à área técnica, mas sim de organização e padronização
do conhecimento. Para solucionar isso, em 1972, a USAF encomendou à McDonnell Douglas
Astronautics Company a compilação de todas as tabelas, dados de túnel de vento, resultados de
ensaio em voo, cálculos analíticos e ajustes empíricos relacionadas a obtenção das derivadas de
estabilidade e controle. Após a compilação deste conhecimento, foi desenvolvido um programa
em linguagem FORTRAN para automatizar o resultado do cálculo, em função de determinados
parâmetros de entrada. Este trabalho foi finalizado em 1979. O resultado deste trabalho foi o
software The USAF Stability and Control Digital DATCOM.
As funções de entrada do programa utilizadas neste trabalho são (mas não limitada a):

• Flight Conditions

– Número de MACH, altitude, número de Reynolds e quantidade de ângulos de ataque;

• Reference Parameters

– Área de Referência da asa, corda média aerodinâmica da asa, envergadura e fator de


atrito da superfície;

• Synthesis Parameters

– Posição do CG, das asas e dos estabilizadores verticais e horizontais;

• Body Configuration Parameters

– Pontos que descrevem a fuselagem, tipo de nariz e de cauda, perfis de aerofólio das
asas e estabilizadores verticais e horizontais;

• Wing Planform Variables

– Cordas da asa (em diferentes pontos), área exposta e teórica da semi-envergadura da


asa, ângulo de diedro da asa;

• Horizontal Tail Sectional Characteristics

– Cordas do estabilizador horizontal (em diferentes pontos), área exposta e teórica


da semi-envergadura do estabilizador horizontal, ângulo de diedro do estabilizador
horizontal;
55

• Vertical Tail Sectional Characteristics

– Cordas do estabilizador vertical (em diferentes pontos), área exposta e teórica da


semi-envergadura do estabilizador vertical;

• Elevator Deflection Parameters

– Tipo de profundor, número de ângulos de deflexão do profundor (limites inferior e


superior), ângulos de tangência do profundor e corda do profundor (em diferentes
pontos);

Outros parâmetros são configuráveis e podem ser verificados em (COMPANY, 1979).


O código desenvolvido para a obtenção das derivadas de estabilidade e controle do VANT UT-X
no USAF DATCOM está no anexo A.

5.5 Método por Blade Element Theory dado pelo X-Plane

O X-Plane (figura 5.1) é um simulador de voo que tem a capacidade de simular a dinâ-
mica de voo, sensores e atuadores de aeronaves (BITTAR; OLIVEIRA; FIGUEIREDO, 2013).
Foi desenvolvido pela empresa Laminar Research. Possui um software embarcado de configu-
ração e modelagem de aeronaves chamado Plane Maker; nele é possível inserir ou modificar
dados sobre a estrutura, parâmetros físicos, superfícies de comando, motorização, sensores e
atuadores das aeronaves (RESEARCH, 2015). O X-Plane possui uma versão de demonstração
que tem todas as funcionalidades do original, mas bloqueia dados do joystick após 15 minutos.

Figura 5.1 – Simulador de voo X-Plane


56

Existem outros simuladores como por exemplo:

• Flight Gear - É um simulador de voo de código aberto e gratuito, possui boa precisão e
flexibilidade no cálculo do modelo. Possui facilidade na obtenção dos dados de voo por
outros programas. É possível escolher 3 diferentes Modelos da Dinâmica de Voo (Flight
Dynamics Models - FDM): JSBSim, YA Sim e UIUC. Junto com o X-Plane, é o mais
utilizado para simulações e ensaios em voo;

• Microsoft Flight Simulator - É uma série de simuladores de voo proprietários da empresa


Microsoft, em sua versão X permite a troca de dados de voo com outros programas. O
modelo da dinâmica de voo (FDM) de cada aeronave é baseado nas derivadas de estabili-
dade e controle;

O simulador de voo X-Plane foi escolhido por ser utilizado em simulações comerciais e
militares. Ele é conhecido como o simulador de voo mais real na atualidade, possui certificação
da Federal Aviation Administration (FAA) (FIGUEIREDO, 2012). Diferentemente da maioria
dos simuladores de voo (baseados em derivadas de estabilidade e controle), ele utiliza a Teoria
do Elemento de Pá (Blade Element Theory) para calcular a resposta em voo. Este método de
cálculo consiste em dividir a superfície da aeronave em elementos infinitesimais e aplicar um
campo de fluido (Flow Field) para cálculo das forças desenvolvidas pelo fluido neste ponto. O
somatório das forças infinitesimais calculadas em cada elemento constitue a resultante instantâ-
nea de forças. Este cálculo é realizado várias vezes por segundo. Os coeficientes aerodinâmicos
são dados na sua parcela total (CL , CD ). Para troca de dados de voo (entrada e saída) com
outros programas, o X-Plane utiliza protocolo UDP (RESEARCH, 2015). Vários autores uti-
lizaram este simulador para modelagem de aeronaves, simulação e ensaio em voo de pilotos
automáticos (projeto de controladores): (FIGUEIREDO, 2012), (BABKA; DURGIN, 2011), e
(THONG, 2010). Por possuir simulação de ventos, rajadas e turbulências, o X-Plane é uma
ferramenta rápida para ensaios em voo de pilotos automáticos utilizando essas condições.
Para precisão na simulação de voo e cálculo do modelo de voo é indicado um alto frame
rate (RESEARCH, 2015). O X-Plane tem limitações na simulação de aeronaves muito leves
(pouca inércia), muito pequenas, com asas de elevado alongamento, com área alar extrema-
mente grande ou com trem de pouso muito espaçados (RESEARCH, 2015). A limitação ocorre
quando há grandes acelerações envolvidas em um curto espaço de tempo, nesses casos o passo
da simulação deve ser o menor possível (alta taxa de atualização). Este passo é controlado pelo
57

frame rate, se ele for sucifientemente alto, o X-Plane é capaz de calcular o modelo durante
elevadas acelerações. Para aeronaves com peso e tamanho semelhantes aquelas tripuladas (por
exemplo um monomotor), um frame rate acima de 20fps garante boa precisão do modelo de
voo. Porém, em casos extremos pode ser necessário um frame rate de 100fps para um cálculo
preciso do modelo de voo (RESEARCH, 2015). Portanto, no caso do UT-X, que é pequeno e
leve em comparação a uma aeronave tripulada, é necessário o ajuste das configurações de vídeo
e um computador com boa capacidade de processamento para executar a simulação com alto
frame rate (60fps ou mais). Com isso garantimos uma boa precisão no cálculo do modelo de
voo (RESEARCH, 2015).
No capítulo 7, o processo de modelagem e ensaio em voo por simulação do VANT UT-X
é detalhado.
58

6 SIMULAÇÃO ANALÍTICA DO VANT UT-X

6.1 Introdução - Modos de Voo Longitudinais

Neste capítulo será demonstrado como foi compilado o conjunto de equações necessá-
rias para a simulação analítica do voo do VANT. Utilizando as equações não-lineares da dinâ-
mica longitudinal (4.51) do capítulo 4, o cálculo das forças e momentos através das derivadas
de estabilidade e controle (geradas pelo USAF DATCOM) no capítulo 5, podemos finalmente
simular analiticamente o voo do VANT. Para isto, o MATLAB/SIMULINK foi utilizado. Será
demonstrado o passo a passo dos cálculos realizados.
O objetivo final desta simulação é obter dados de voo de representatividade confiável
(próximos ao comportamento real), para tornar possível a análise dos modos de dinâmica longi-
tudinal do VANT. Os modos longitudinais são oscilações características de cada tipo de avião de
asa fixa, podendo ser oscilações de períodos longos ou curtos. Essas oscilações mostram como
é o comportamento dinâmico do avião ao se aplicar um comando de profundor. Isto pode ser
pensado como uma resposta do sistema à função degrau, mas nos ensaios em voo aeronáuticos
geralmente é utilizada a função doublet. No caso de aviões e VANTs de asa fixa, supondo que
o seu projeto apresenta característica de voo estável, a dinâmica longitudinal possui 2 modos de
oscilação(STEVENS; LEWIS, 1992)(COOK, 2011)(BLAKELOCK, 1991), sendo eles:

(a) Modo de Período Curto (Short-Period Mode) - É uma oscilação de curto período e du-
ração, fortemente amortecida e relacionada com as variáveis α e Q (ângulo de ataque e
velocidade angular de arfagem); ela ocorre sem mudança significativa da altitude;

(b) Modo de Período Longo (Phugoid Mode) - É uma oscilação de período e duração longos,
fracamente amortecida e relacionada com as variáveis VT , h e γ (velocidade, altitude e
ângulo de trajetória); ela ocorre devido a troca entre energia cinética e potencial, com o
ângulo de ataque(α) aproximadamente constante;

Para verificação analítica desses modos de voo, é possível linearizar as equações de


estado não-lineares (Eq. 4.51) e obter os autovalores da matriz do sistema. Sendo os pólos do
sistema um subconjunto dos autovalores, a análise dos pólos mostra ambos os modos de período
curto e fugoidais. Esta análise é mostrada no capítulo 8.
59

6.2 Simulação MATLAB/SIMULINK

As equações utilizadas para a simulação analítica serão copiadas nesta seção para con-
veniência do leitor (Eq. 4.51 e eq. 5.1).

XT = V T α θ Q h
 
(6.1a)

UT = δelev δπ
 
(6.1b)

(Thrust .cos(α) − Drag )


V˙T =[ ] − g.sen(γ) (6.1c)
m
[−Thrust .sen(α) − Lift + m.(VT .Q + g.cos(γ))]
α̇ = (6.1d)
(m.VT + q̄.S.CLα̇ )

θ̇ =Q (6.1e)

(q̄.S.c̄.(CM + D) + Thrust .ZE )


Q̇ = (6.1f)
Iyy
1
[ .c̄.(CMQ .Q + CMα̇ .α̇)]
onde : D = 2 (6.1g)
VT

ḣ =VT .sen(γ) (6.1h)

Sendo γ = θ − α e as forças e momento de arfagem já definidas anteriormente no


capítulo 5 (copiadas aqui para conveniência):

Força de Sustentação − Lif t = q̄.S.CL (6.2a)

Força de Arrasto − Drag = q̄.S.CD (6.2b)

Momento de Arfagem − M = q̄.S.c̄.CM (6.2c)

Podemos observar que para o cálculo das equações não-lineares da dinâmica longitu-
dinal é preciso primeiramente calcular as forças aerodinâmicas, de propulsão, o momento de
arfagem. Já para o cálculo destas forças e momentos é necessário obter as derivadas de estabili-
dade e controle. Portanto, primeiramente se calcula estas variáveis através do USAF DATCOM
(descrito no capítulo 5).
A sequência resumida dos cálculos é:
60

(a) Escolha da fase a ser estudada, neste trabalho é o voo em cruzeiro;

(b) Escolha de altitude e velocidade de cruzeiro (compatível com o VANT real);

(c) Cálculo da pressão dinâmica do ar e número de Reynolds;

(d) Obtenção das derivadas de estabilidade e controle pelo USAF DATCOM;

(e) Cálculo dos coeficientes aerodinâmicos totais (CL , CD , CM );

(f) Cálculo das forças aerodinâmicas e de propulsão;

(g) Cálculo do momento de arfagem;

(h) Substituição de todas as forças, momentos, constantes e derivadas de estabilidade e con-


trole nas equações não-lineares da dinâmica longitudinal, para cálculo dos estados;

A seguir, cada etapa será descrita com mais detalhamento. Para implementação da si-
mulação analítica ao final da etapa (h) todas as equações são inseridas em um script de MA-
TLAB/SIMULINK.
(a) Desejamos analisar o VANT em fase de voo nivelado (cruzeiro), este é o ponto de
partida natural na análise de aeronaves.
(b) A altitude e velocidade inicial escolhidas foram de:

• True Airspeed: VT E = 20, 58 (m/s);

• Altitude: hE = 200 (m);

(c) Com isto calculamos a pressão dinâmica do ar e o número de Reynolds. A pressão


dinâmica será utilizada no cálculo das forças aerodinâmicas, já o número de Reynolds como
dado de entrada no USAF DATCOM. É importante o ajuste do número de Reynolds de acordo
com a velocidade de voo do VANT, pois este parâmetro tem impacto considerável no resultado
final dado pelos métodos semi-empíricos do USAF DATCOM.

• Densidade do Ar: ρ (Kg/m3 ) = International Standard Atmosphere (ISA) Model;


ρ.VT2
• Pressão Dinâmica do Ar : q̄ = (P a);
2
ρ.VT E .c̄
• Número de Reynolds = = 3, 2724.105
µ
• Viscosidade do ar a 25 Celsius = µ = 1, 85−5 (P a.s);
61

(d) Para obtenção das derivadas de estabilidade e controle foi desenvolvido, em lingua-
gem FORTRAN, um código de entrada para o USAF DATCOM; este código descreve parâme-
tros de voo, geometria e características físicas do VANT UT-X (código no anexo A).
É importante ressaltar que o USAF DATCOM não suporta a descrição de um avião com
dupla cauda e tail boom, assim como o UT-X. O método utilizado foi descrever apenas um
estabilizador vertical, mas o mesmo tamanho de estabilizador horizontal do UT-X real (figuras
6.1 e 6.2). De acordo com (COMPANY, 1979), isto não afetará em nada o cálculo das derivadas
de estabilidade e controle da dinâmica longitudinal, pois o estabilizador vertical irá modificar
apenas as derivadas em relação a dinâmica látero-direcional.

Figura 6.1 – Modelo 3D gerado pelo DATCOM, para verificação do código que descreve o
UT-X

Figura 6.2 – Modelo do UT-X gerado pelo MATLAB a partir do código do DATCOM

As derivadas de estabilidade e controle (adimensionais, em relação ao Eixo do Vento)


62

geradas pelos métodos semi-empíricos sintetizados pelo USAF DATCOM são:

• Derivadas de Estabilidade (controles em posição neutra):

– CL0 = 0, 423 ;

– CD0 = 0, 0342;

– CM 0 = 0, 0032;

– CLα = 0, 0910;

– CDCL = 0, 0473;

– CM Q = −13, 5275;

– CM α = −0, 0202;

– CM α̇ = −5, 8614;

• Derivada de Controle (em função da deflexão do profundor):

– CM δelev = −0, 0181;

(e) No capítulo 5, na equação 5.2, foram mostrados os termos da soma para o cálculo
dos coeficientes aerodinâmicos. De acordo com (STEVENS; LEWIS, 1992), o primeiro termo
da soma é o de maior relevância e impacto na dinâmica. Portanto, o cálculo dos coeficientes
aerodinâmicos do UT-X foi realizado da seguinte maneira:

CL = CL0 + CLα .α; (6.3a)

CD = CD0 + CDCL .CL2 ; (6.3b)

CM = CM 0 + CM α .α + CM δelev .δelev (6.3c)

(f) Uma vez obtidas as derivadas de estabilidade e controle e com os coeficientes ae-
rodinâmicos totais calculados (CL , CD , CM ) e utilizando os dados da tabela 3.1 do capítulo 3,
podemos calcular as forças aerodinâmicas e de propulsão utilizando as equações definidas no
capítulo 5.
Foi considerado uma eficiência aerodinâmica da hélice de 70%. Os dados do motor
elétrico foram baseados em (TORONTO AEROSPACE TEAM UAV TEAM, 2014). Os parâ-
metros da força de propulsão do motor elétrico do VANT UT-X aproximada por uma função de
primeiro grau conforme o capítulo 5 são:
63

• Empuxo Estático: TS = 5, 44.g (N );


RP Mmax .60.P roppitch .P ropef f
• Velocidade máxima teórica: VT max = = 24, 99 (m/s);
1000
Onde: RP Mmax = 8436; P roppitch = 0, 254(m); P ropef f = 0, 7;
dT TS
• =− = −2, 1353;
dV VT max
(g) O cálculo do momento de arfagem segue conforme as forças calculadas no item
anterior (f):

• Momento de Arfagem - M = q̄.S.c̄.CM

(h) Finalmente, todas as forças, momento de arfagem e derivadas de estabilidade e con-


trole podem ser substituídas nas equações não-lineares da dinâmica longitudinal (Eq. 6.1).
Com o auxílio do MATLAB/SIMULINK podemos construir uma simulação analítica
(por passos) com as equações apresentadas neste capítulo. Utilizando esta metodologia é pos-
sível simular o voo por um período de tempo especificado. O código é apresentado nos anexos
deste trabalho.
Antes de simular o voo em cruzeiro, é preciso calcular um ponto de balanço do VANT.
Em outras palavras, queremos solucionar as equações não-lineares da dinâmica longitudinal
para derivadas nulas (Eq. 6.1) com respeito às variáveis de estado de saída e entrada (Eq. 6.4).

XT = VT α θ Q h
 
(6.4a)

UT = δelev δπ
 
(6.4b)

6.3 Cálculo do Ponto de Balanço (Trim)

Temos 5 equações de estado e 7 variáveis (Eq. 6.1), por isto o primeiro passo descrito
anteriormente no item (b) foi a escolha de velocidade e altitude de cruzeiro (VT e h). Com
isto temos 5 equações não-lineares e 5 variáveis, a solução para o ponto de balanço é atra-
vés de métodos numéricos. Os resultados serão as condições iniciais das variáveis de estado
(αT rim , θT rim , QT rim ) e dos controles de posição da manete de potência (δπT rim ) e do ângulo
de deflexão do profundor (δelevatorT rim ). As variáveis de estado e de controle no ponto de equi-
líbrio são aquelas que tornas as derivadas das equações nulas. No meio aeronáutico, o ponto
de balanço para o voo em cruzeiro é ajustado manualmente pelos pilotos, esse procedimento
também é conhecido como Trimar o avião.
64

O ponto de balanço para o VANT UT-X é (Eq. 6.5):

αE = 3, 5385◦ ; (6.5a)

θE = 3, 5385◦ ; (6.5b)

QE = 0 deg/s; (6.5c)

δπE = 80, 43%; (6.5d)

δelevE = −3, 7721◦ ; (6.5e)

Nota-se que α = θ, o que faz sentido uma vez que queremos voar com velocidade
somente no eixo longitudinal (sem subir ou descer em altitude). Lembrando que γ = θ − α,
sendo os ângulos definidos no capítulo 4. Também podemos notar que a velocidade de arfagem
Q = 0, o que também está de acordo com o que definimos anteriormente, pois queremos
que o VANT voe sem nenhuma rotação (o VANT está em atitude fixa em relação ao Eixo de
Estabilidade).
A posição da manete está em δπE = 80, 43% de potência e o ângulo de deflexão do
profundor está em δelevatorE = −3, 7721◦ , o que mostra uma deflexão do bordo de fuga do
profundor para cima, de acordo com a convenção adotada em (STEVENS; LEWIS, 1992).
Com isto podemos re-escrever o vetor de estados na condição de equilíbrio, com as
unidades do S.I. (Eq. 6.7).

XT
 
E = VT E αE θ E QE hE (6.6a)

UT
 
E = δelevE δπE (6.6b)

XT
 
E = 20, 58 0, 0618 0, 0618 0 200 (6.7a)

UT
 
E = −0, 0658 0, 8043 (6.7b)

6.4 Simulação Analítica e Resultados dos Modos Longitudinais

Nesta seção serão apresentados os dados que resultaram da simulação analítica da di-
nâmica longitudinal do VANT UT-X. Desenvolvendo um código em linguagem MATLAB e
introduzindo todos os cálculos descritos neste capítulo no SIMULINK (figura 6.3), foi possível
a simulação dinâmica do voo do VANT.
65

Figura 6.3 – Diagrama de blocos da simulação de voo no SIMULINK

Nas figuras 6.4 e 6.5, são mostrados os resultados de uma simulação de voo com duração
de 80 segundos. Nos primeiros 10 segundos pode se verificar que a posição de balanço (voo em
cruzeiro) é mantida sem nenhuma perturbação. Aos 10 segundos uma função doublet é aplicada
ao profundor (δelevator ), com isto podemos verificar a dinâmica dos modos de voo de período
curto e fugoidal. Este método é análogo ao ensaio a resposta de um sistema LTI a uma função
degrau (step function).
O modo de oscilação de período curto (Short Period Mode) acontece logo que a função
doublet é aplicada no comando de profundor (ao décimo segundo), tendo duração de cerca de
3 segundos. Sua oscilação é rápida e fortemente amortecida, está relacionada com as variáveis
α e Q, assim como descrito na seção 6.1. O modo de período curto se mostrou estável, mas fez
com que o VANT oscile entre −10◦ a 15◦ rapidamente.
O modo de oscilação de período longo, também chamado de Modo Fugoidal, tem início
junto com o modo de período curto, porém dura em torno de 1 minuto. É observado que sua
oscilação é fracamente amortecida e está relacionada com as variáveis VT , γ e h, pois é a troca
entre as energias cinética e potencial que o VANT possui. Observamos aos 70 segundos que a
oscilação do modo fugoidal é totalmente amortecida, mostrando que o projeto estrutural/aero-
dinâmico do VANT UT-X tem estabilidade dinâmica (em outras palavras, ele é estável).
66

Figura 6.4 – Resultados da simulação de voo da dinâmica longitudinal do VANT UT-X


67

Figura 6.5 – Resultados da simulação de voo da dinâmica longitudinal do VANT UT-X


68

7 SIMULAÇÃO DO VANT UT-X NO SIMULADOR DE VOO X-PLANE

7.1 Introdução - Resumo do Procedimento

Para simulação do VANT UT-X no simulador de voo X-Plane, o primeiro passo é


modelá-lo através do programa de suporte Plane-Maker. Neste programa é necessário des-
crever uma série de itens, como a estrutura (fuselagem, asas, establizador vertical e horizontal),
parâmetros físicos (massa, C.G.), tamanho/localização/deflexão das superfícies de comando e
motorização (tipo de motor, potência total, perdas, parâmetros da hélice). Os dados de entrada
no Plane-Maker foram os mesmos do VANT real, iguais os usados no USAF DATCOM e os
mesmos da simulação analítica no MATLAB/SIMULINK. Uma vez representado no Plane-
Maker, diversos ensaios em voo virtuais foram realizados para ajustes finos nos parâmetros,
principalmente na motorização.
Com o modelo do UT-X calibrado, foram feitas simulações de ensaios em voo para
obter os coeficientes e forças aerodinâmicas na condição de voo de cruzeiro (figura 7.1). Para
controle do UT-X foi utilizado um manche modelo Microsoft Sidewinder Force Feedback 2
(figura 7.2). Após a decolagem, o VANT foi voado até a mesma altitude escolhida para o
voo de cruzeiro (já descrito no capítulo 6, seção 6.2), sendo Trimado manualmente (conforme
capítulo 6, seção 6.5). Uma vez voando na posição de balanço (Trim), em voo de cruzeiro, as
forças aerodinâmicas (Lift, Drag), de propulsão (Thrust) e os coeficientes aerodinâmicos foram
anotados para comparação com os obtidos pela simulação analítica.
69

Figura 7.1 – VANT UT-X modelado no X-Plane

Figura 7.2 – Manche utilizado para controle do VANT UT-X na simulação de voo - Microsoft
Sidewinder Force Feedback 2

7.2 Modelagem do VANT UT-X no Plane-Maker

Nesta seção serão mostrados os parâmetros de entrada no programa de modelagem de


aeronaves Plane-Maker, embarcado no X-Plane. A ordem apresentada não é necessária, po-
dendo realizar os passos na sequência em que julgar mais adequado. Para maiores detalhes
sobre cada item pode-se consultar (RESEARCH, 2013). Como material de apoio para modela-
70

gem de aeronaves no Plane-Maker, também há videos tutoriais disponíveis na internet.

7.2.1 Obtenção de Coeficientes Aerodinâmicos para os Aerofólios

Uma vez inseridos os parâmetros da asa e estabilizadores horizontal e vertical do VANT,


precisamos informar que tipo de aerofólio (perfil de asa) estará presente em cada parte. Tam-
bém é necessário informar os coeficientes aerodinâmicos deste aerofólio em função do ângulo
de ataque (α). Para obtenção dos coeficientes aerodinâmicos, o software aberto JavaFoil foi
utilizado. Os aerofólios do VANT UT-X estão na tabela 3.1 do capítulo 3. A razão de utilizar
o JavaFoil é descrever a geometria do aerofólio a ser ensaiado, atribuir o número de Reynolds
adequado e gerar os coeficientes aerodinâmicos. Os passos simplifados são:

(a) Atribuir dados do aerofólio na tela principal - aba Geometry (Number of poits>21, Thick-
ness,Camber, Camber Location) - figura 7.3;

(b) Na aba Polar, atribuir apenas o número de Reynolds de interesse (nesse caso Re =
327240), varrer o ângulo de ataque entre -180 até 180 graus, com passo de 1 grau - figura
7.4;

(c) Clicar em "Analyze It" e depois salvar como arquivo *.afl, que é o padrão utilizado pelo
Plane-Maker;

(d) Opcionalmente pode-se ensaiar ângulo de ataque entre -20 e 20 graus com passo de 0,1
grau, gerar um outro arquivo *.afl, e copiar manualmente os dados de maior resolução no
arquivo anterior;

(e) É importante, ao final abrir o arquivo *.afl gerado com um editor de texto e ajustar o
segundo número que por padrão é 0.050000, este é o Thickness que no caso dos aerofólios
NACA-0012 e NACA-6412 é de 0.120000;

(f) Para fins apenas de visualização, o arquivo *.afl gerado pode ser aberto pelo programa
de apoio do X-Plane chamado Airfoil-Maker, onde a geometria externa do aerofólio pode
ser modificada;
71

Figura 7.3 – JavaFoil - Aba Geometry

Figura 7.4 – JavaFoil - Aba Polar


72

7.2.2 Estrutura - Fuselagem, Asas, Trem de Pouso e Estabilizadores Vertical e Horizontal

Para construção da estrutura devemos utilizar as seguintes abas do programa Plane Ma-
ker (figura 7.5):

(a) Fuselagem ⇒ Aba Fuselage;

(b) Asas, Estabilizadores Vertical e Horizontal ⇒ Aba Wings;

(c) Trem de Pouso ⇒ Aba Landing Gear;

Para modelagem do tail boom e suporte do trem de pouso, foi utilizado a aba Misc.
Bodies, com interface de modelagem semelhante à utilizada na modelagem da fuselagem. Os
aerofólios (perfil de asa) a serem utilizados em cada parte são selecinados na aba Expert ⇒
Airfoils.

Figura 7.5 – Interface de modelagem do Plane-Maker

(a) Na aba Fuselage, a fuselagem do VANT foi separada em várias seções e os diâmetros
de cada uma foram definidos (figura 7.6). Nesta aba também é definido o coeficiente de arrasto
do corpo.
73

Figura 7.6 – Interface de modelagem da fuselagem

Na aba secundária é possível verificar se a modelagem da fuselagem está correta (figura


7.7).

Figura 7.7 – Interface de verificação da fuselagem


74

(b) Na aba Wings, modelamos a asa e estabilizadores vertical e horizontal. Os dados


de entrada são a corda da asa junto a fuselagem, a corda da asa na sua extremidade, compri-
mento, diedro, localização em relação à fuselagem. Também são selecionadas quais superfícies
de comando estão presentes na asa e em que pontos elas estarão. Parâmetros de peso da asa
em relação ao peso total e coeficiente de amortecimento de seu primeiro modo de flexão são
configurados na última aba (figura 7.8):

Figura 7.8 – Interface de modelagem das asas

O mesmo procedimento realizado para a asa foi repetido para os estabilizadores vertical
e horizontal. Foram configurados dois estabilizadores verticais, um em cada aba (Vert Stab1 e
Vert Stab2), figuras 7.9 e 7.10.
75

Figura 7.9 – Interface de modelagem do estabilizador Vertical

Figura 7.10 – Interface de modelagem do estabilizador horizontal

(c) Para modelagem do trem de pouso, na aba Landing Gear, podemos definir o tamanho
das rodas e do braço do trem de pouso, ângulo de giro das rodas, tipo de freio, entre outras
76

opções (incluindo coeficiente de fricção dos pneus) (figura 7.11).

Figura 7.11 – Interface de modelagem do trem de pouso

7.2.3 Peso e Centro de Gravidade

Na aba Weight and Balance são configurados os parâmetros físicos de peso e centro
de gravidade da aeronave (figura 7.12). O X-Plane calcula o momento de inércia a partir dos
parâmetros da estrutura e centro de gravidade, porém é possível sobreescrever a variável de raio
de giração (utilizado para o cálculo do momento de inércia). Entretando, segundo informação
de foruns de internet especializados no assunto, sobreescrever o raio de giração não é indicado
pois faz o modelo de voo perder precisão no cálculo da dinâmica.
77

Figura 7.12 – Interface de configuração do peso e C.G. do VANT

Como o cálculo do momento de inércia também depende da distribuição de massa, não


podemos apenas definir o peso máximo centrado em um único ponto (CG). Para contornar
este problema, foram inseridos 2 tanques de combustível com peso idêntico respectivamente ao
payload e as baterias presentes no VANT UT-X real. Na figura 7.13 é mostrado o CG e os locais
dos tanques de combustível. Este é um artifício que mantém a massa total e a posição do CG
inalterados e gera uma distribuição mássica mais representativa da realidade. Um procedimento
aproximado como este é necessário pois o X-Plane não possui método de elementos finitos para
cálculo dos momentos e produtos de inércia.
78

Figura 7.13 – Localização do C.G. e tanques de combustível simulando o peso do payload e


baterias

7.2.4 Motorização

Para modelar o motor (figura 7.14), deve-se acessar a aba Standard ⇒ Engine Specs
(figura 7.15). Diversos parâmetros podem ser ajustados como por exemplo: Tipo de motor,
potência, perdas, RPM, faixas de operação, FADEC (Full Authority Digital Engine Control),
parâmetros da hélice, etc. A motorização foi o item que necessitou de mais ensaios em voo
virtuais, iterações e ajustes finos para se assemelhar à performance do motor elétrico do UT-X
real.
79

Figura 7.14 – Detalhe da modelagem do conjunto hélice/motor do VANT UT-X no X-Plane


80

Figura 7.15 – Interface de modelagem de parâmetros do conjunto hélice/motor

7.3 Simulação de Voo e Resultados

Após modelar e ajustar todos os parâmetros do VANT UT-X no Plane-Maker, seguindo


as mesmas dimensões, peso e CG do veículo real e da simulação analítica (capítulo 6), foram
realizados ensaios em voo. Para obtenção dos dados de voo (telemetria), foi desenvolvido uma
interface de comunicação entre o X-Plane e o MATLAB/SIMULINK (figura 7.17). A troca de
dados foi feita através de sockets UDP (User Datagram Protocol), baseado no trabalho de (BIT-
TAR, 2014). O UT-X foi controlado através do manche conectado ao MATLAB/SIMULINK. Os
dados de saída do X-Plane foram configurados conforme a figura 7.16.
81

Figura 7.16 – Seleção dos dados de voo de saída enviados para o SIMULINK

A figura 7.17 mostra o diagrama de blocos construído no SIMULINK com o objetivo


de enviar comandos de voo (profundor, aileron, leme e posição da manete) e receber dados de
voo da simulação, utilizando troca de dados via UDP. Os pilotos automáticos (controladores)
também estão implementados, porém só foram utilizados para os testes dos controladores des-
crito no capítulo 8. Os comandos de voo podem ser gerados pelo usuário através de um manche
conectado ao computador ou pelos pilotos automáticos.
Este tipo de simulação é conhecido como Software In The Loop (SITL), é um recurso
que possibilita vincular um controlador de malha fechada do MATLAB/SIMULINK a um si-
mulador externo (outro software). Isso possibilita um desenvolvimento de grau crescente de
complexidade de maneira relativamente rápida e confiável. Primeiro, os testes básicos e proje-
tos dos controles são realizados usando um modelo analítico de menor nível de complexidade.
A seguir, um simulador com maior profundidade de detalhes é conectado aos controles. Se
este recurso não fosse disponível, o tempo e o esforço necessários para gerar um modelo ana-
lítico detalhado seria proibitivo. Esta integração é possível graças ao protocolo UDP que foi
refinado em trabalhos anteriores de outros autores, como (BITTAR, 2014), (FIGUEIREDO,
82

2012). O próximo passo de desenvolvimento, que não é abordado neste trabalho, é a simulação
Hardware In The Loop (HITL), onde os controladores gerados no MATLAB/Simulink seriam
compilados por geração automática de código e transferidos para microntroladores, os quais,
por sua vez, receberiam as variáveis de estado geradas a partir do simulador e calculariam os
sinais de controle injetados na planta simulada. Para que isso seja possível, o microcontrolador
deve comunicar-se com o computador no qual o simulador esteja operacional.
Com o VANT UT-X em voo (figura 7.18), foi necessário ajustar os parâmetros Trim
para voar na mesma condição de balanço definida na simulação analítica (capítulo 6); em outras
palavras, foram realizados ajustes manuais nos comandos de voo para o VANT entrar em fase
de voo de cruzeiro.

Figura 7.18 – VANT UT-X em voo no X-Plane

Uma vez em voo de cruzeiro (figura 7.19), as forças aerodinâmicas, de propulsão e os


coeficientes aerodinâmicos foram obtidos para essa fase de voo. Estes dados podem ser com-
parados diretamente com os calculados pela simulação analítica. Esta comparação é mostrada
na tabela 7.1.
83

Figura 7.17 – Diagrama de blocos no SIMULINK mostrando comunicação de troca de dados de voo (telemetria) com o X-Plane
84

Figura 7.19 – VANT UT-X em voo de cruzeiro no X-Plane

Tabela 7.1 – Comparação de forças e coeficientes aerodinâmicos entre a simulação analítica e a


simulação de voo no X-Plane
Parâmetro Simulação Analítica Simulação de voo no X-Plane Erro (%)
Lif t 20, 9866 Lb 21, 2900 Lb 1, 45%
Drag 1, 7010 Lb 1, 7180 Lb 1, 00%
Lif t/Drag 12, 3379 ratio 12, 390 ratio 0, 42%
T hrust 1, 7047 Lb 1, 7450 Lb 2, 36%
CL 0, 7853 0, 7958 1, 34%
CD 0, 0637 0, 0642 0, 78%

Os resultados para o ponto de balanço (voo nivelado) foram muito próximos. É impor-
tante ressaltar que o X-Plane utiliza uma convenção diferente da normalmente adotada, para a
área de referência de asa (S), no cálculo dos coeficientes aerodinâmicos. Na equação 5.1, a área
de referência é igual a área total da asa, já no X-Plane é igual a área total da asa mais a área do
estabilizador horizontal. Portanto, na figura 7.19 os coeficientes aerodinâmicos (CL , CD ) são
mostrados com essa segunda convenção.
85

O próximo passo foi a realização de um ensaio para obtenção da caractéristica dos mo-
dos de voo de período curto e fugoidal. Os resultados do ensaio em voo, aplicando um comando
de profundor de modo a simular um sinal doublet, são mostrados na figura 7.20.

Figura 7.20 – Resultado do ensaio em voo no simulador de voo X-Plane para obtenção dos
modos de voo da dinâmica longitudinal

Durante o ensaio em voo virtual, o VANT foi controlado manualmente através do man-
che (figura 7.2). Este resultado mostra um comportamento semelhante ao apresentado na si-
mulação analítica (figura 6.4). Por dificuldades em se conseguir um voo nivelado perfeito na
simulação de voo, pode-se perceber um leve aumento constante na altitude da figura 7.20. A
comparação entre a simulação analítica e do X-Plane é mostrada na figura 7.21.
86

Figura 7.21 – Resultado do ensaio em voo no simulador de voo X-Plane para obtenção dos
modos de voo da dinâmica longitudinal

Entre as figuras 7.20 e 7.21, a altitude da simulação de voo do X-Plane foi deslocada em
mais 18 metros para facilitar a comparação.
Nota-se que as respostas estão semelhantes, porém com coeficientes de amortecimento
diferentes. As diferenças nas amplitudes máximas e mínimas podem refletir um erro durante a
pilotagem manual do VANT na simulação de voo virtual; portanto, uma metodologia de ensaio
mais sofisticada é necessária para comparação direta das amplitudes. Entretanto, é possível uma
comparação do período de oscilação e amortecimento do modo fugoidal. Esta comparação é
87

mostrada na tabela 7.2.


Para cálculo do amortecimento das oscilações presentes na figura 7.21, foi utilizado o
Método do Decremento Logarítmico, utilizando os dados do segundo pico máximo (em torno
de 12 segundos do gráfico) até o quinto pico máximo (em torno de 43 segundos do gráfico),
conforme a equação 7.1.

1 Pico2
δ = .ln( ) (7.1a)
n Pico5
(7.1b)
1
ζ =r (7.1c)
2.π 2
1+( )
δ
Onde n é o número de picos, que neste caso n = 4.

Tabela 7.2 – Comparação do Modo Fugoidal entre a simulação analítica e a simulação de voo
no X-Plane
Parâmetro Simulação Analítica Simulação de voo no X-Plane Erro (%)
Período 10, 91 s 10, 20 s 6, 96%
Amortecimento 0, 0042 0, 0039 7, 69%

De acordo com (STEVENS; LEWIS, 1992), o período do modo fugoidal é proporcional


ao quadrado da pressão dinâmica, que por sua vez é proporcional ao quadrado da velocidade;
já o amortecimento do modo fugoidal tende a aumentar com a velocidade e diminuir com a
altitude. Isto pode indicar que os erros encontrados na comparação entre a simulação analítica e
simulação do X-Plane, em parte, se devem a um ajuste mais detalhado na pilotagem da aeronave
até o ponto de balanço e comando do sinal doublet no manche.
Este resultado mostra que as respostas através do método analítico (utilizando DAT-
COM/MATLAB) e da simulação de voo do X-Plane são compatíveis. Este fato mostra que
estes dois métodos são ferramentas importantes para a análise preliminar de um VANT antes
de sua construção. A compatibilidade dos resultados demonstra que ambos os métodos tem po-
tencial de fornecer resultados factíveis, próximo do comportamento dinâmico da aeronave real.
Porém, o próximo passo seria a comparação desses resultados com dados obtidos em túnel de
vento e/ou de ensaio em voo do protótipo real.
88

8 CONTROLE DO VANT UT-X (PILOTO AUTOMÁTICO)

8.1 Introdução

Nesta seção serão apresentados os projetos de pilotos automáticos com o objetivo fi-
nal de mantenimento de altitude e de velocidade. O desenvolvimento destes controladores foi
baseado em técnicas clássicas de controle de aeronaves tripuladas utilizadas pela indústria aero-
náutica STEVENS; LEWIS, 1992. o sistema de controle é formado por várias malhas internas
e externas, cada uma com um propósito específico (sendo reguladores ou compensadores). Os
controladores utilizados têm ganhos do tipo Proporcional-Integral-Derivativo (PID), que foram
sintonizados por técnicas clássicas de projeto de controle linear, como diagrama do lugar das
raízes (Root-Locus) e de Bode STEVENS; LEWIS, 1992.
Um dos objetivos dos pilotos automáticos é estabilizar as dinâmicas instáveis da planta,
ao mesmo tempo que proporcionam alguma característica específica, como por exemplo: man-
tenimento de uma mesma altitude, velocidade,ou de uma determinada rota (heading), nivela-
mento de asa, controle da taxa de subida ou descida, automatização da navegação, decolagem
autônoma e pouso autônomos.
Para ser possível o uso das técnicas de projeto de controle clássicas, as equações de es-
tado devem ser lineares. Portanto, partindo das equações não-lineares da dinâmica longitudinal
definidas no capítulo 4 (Eq. 4.51), devemos linearizá-las ao redor de um ponto de equilíbrio.
Este ponto é aquele de balanço escolhido para a simulação analítica no capítulo 6. Com as
equações linearizadas, é possível reescrever o sistema na notação de espaços de estados, en-
contrando assim seus autovalores (pólos que dominam a dinâmica da planta). Uma vez obtidos
os pólos, é possível realizar o projeto de controle. Ao fechar cada malha com um controlador
(regulador ou compensador), foi necessário recalcular as matrizes A e B do sistema aumentado.
As especificações de desempenho dos controladores são baseadas em requisitos de qua-
lidade de voo, apresentados por (STEVENS; LEWIS, 1992); eles foram formulados como no
caso de aeronaves tripuladas, um exemplo de especificações formais para aeronaves militares é
o documento MIL-F-8785C. Porém, estas regras não servem para VANTs. Outro exemplos são
os critérios no domínio da frequência para sistemas de controle de aeronaves militares (docu-
mento MIL-F-9490). Este documento define margens de ganho e de fase mínimas em qualquer
caminho de atuadores. Os valores mínimos são 6dB de margem de ganho e 30◦ de margem de
89

fase (STEVENS; LEWIS, 1992).


Os pilotos automáticos projetados foram testados tanto analiticamente quanto no simu-
lador de voo X-Plane, com ensaios em voo virtuais na presença de vento, rajada e turbulência.

8.2 Linearização e Autovalores

Nesta seção será apresentado a linearização das equações da dinâmica longitudinal, sua
formulação utilizando a notação de Espaço de Estados e a obtenção dos autovalores do sistema.
Uma vez obtidos os autovalores, é possível analisar o comportamento dos modos de período
curto e fugoidal. A partir desta avaliação pode-se decidir se é necessário utilizar ganhos mais
agressivos ou não nos controladores.
Sendo a forma geral da equação 6.1 igual a:

Ẋ = F (X, U, t) (8.1)

Onde F é uma função vetorial com n linhas.


Para linearizar as equações da dinâmica longitudinal (Eq. 6.1) foi utilizada a matriz
Jacobiana (Eq. 8.3), que é a derivada parcial de primeira ordem de cada função não-linear em
relação ao vetor de estado ou controle (8.2).

XT = VT α θ Q h
 
(8.2a)

UT = δelevator δπ
 
(8.2b)

 
∂F1 ∂F1 ∂F1
 ∂X1 ···
∂X2 ∂Xn 
 ∂F2 ∂F2 ∂F2 
 
 ··· 
 ∂X
JX =  1 ∂X2 ∂Xn  (8.3a)
 ... ..
.
..
.
.. 
. 
 
 ∂Fn ∂Fn ∂Fn 
···
∂X1 ∂X2 ∂Xn

 
∂F1 ∂F1
 ∂U1 ∂U2 
 ∂F2 ∂F2 
 
 
 ∂U
JU =  1 ∂U2  (8.3b)
 ... .. 
. 
 
 ∂Fn ∂Fn 
∂U1 ∂U2
90

Utilizando a matriz Jacobiana, linearizando para o ponto de balanço (Eq. 6.7) e utili-
zando a notação de espaço de estados (Eq. 8.4), podemos reescrever o sistema linearizado na
forma matricial (Eq. 8.6) .

X˙L = A.XL + B.UL


(8.4)
YL = C.XL + D.UL
Onde o vetor de estado e de controle da equação linearizada é:

XL = X − XE (8.5a)

UL = U − UE (8.5b)

   
−0.2562 4.9475 −9.8066 0 0.0001 0 0 0.9840
−0.0454 −3.3573 −0.0000 1.0000 0.0000 0  0 −0.0030
˙
   
XL = 
 0 0 0 1.0000 0 0 .XL +
  0 0  .UL

 0.0147 −9.5885 0.0000 −1.0640 −0.0000 0 −9.5595 0.0010 
0 −20.5800 20.5800 0 0 0 0 0
(8.6)
Os pólos da dinâmica longitudinal do VANT UT-X são um sub conjunto dos autovalores
associados à matriz A, para este ponto de balanço. Neste sistema os dois conjuntos são os
mesmos (todos os autovalores são pólos):
 

 −2.2614 + 2.8899i
−2.2614 − 2.8899i

 

−0.0772 + 0.5898i (8.7)
−0.0772 − 0.5898i

 

 

−0.0004 + 0.0000i
 

Com a análise dos autovalores, conclui-se que o sistema é assintoticamente estável em


malha aberta, porém com um pólo muito próximo da origem (características de um integrador).
Isto mostra que o projeto aerodinâmico do VANT UT-X apresenta modos de voo longitudinais
estáveis, ou seja, dada uma perturbação na condição inicial do estado incremental, o VANT
tenderá a retornar à sua posição de equilíbrio (em voo nivelado). Observamos que temos dois
pares de pólos complexos conjugados. Eles definem os modos caraterísticos de período curto e
fugoidal:

(a) Pólos do Modo de Período Curto = −2.2614 ± 2.8899i rad/s;

• Amortecimento: 0, 616;
91

• Frequência: 3, 67 rad/s

(b) Pólos do Modo Fugoidal = −0.0772 ± 0.5898i rad/s e −0, 0004;

• Amortecimento do par de pólos complexos: 0, 130;

• Frequência do par de pólos complexos: 0, 5950 rad/s

No capítulo 6 foi comentado sobre os modos de voo longitudinais, agora, com o valor
numérico dos pólos, é possível confirmar que o Modo de Período Curto têm pólos rápidos e
fortemente amortecidos, já o Modo Fugoidal apresenta pólos lentos e fracamente amortecidos.

8.3 Stability Augmentation System - SAS

A primeira malha de controle é a realimentação da taxa de arfagem (Q) (figura 8.1),


com o objetivo de satisfazer requisitos de frequência de oscilação e amortecimento do Modo
de Período Curto (STEVENS; LEWIS, 1992). Em aviões comerciais e militares, muitas vezes
o Modo de Período Curto não atende a requisitos de qualidade de voo. No caso de caças de
combate o projeto aerodinâmico é levemente instável para aumentar a manobrabilidade, porém
muitas vezes a pilotagem fica praticamente impossível (STEVENS; LEWIS, 1992). Nestes
casos o SAS pode melhorar a qualidade de voo e/ou estabilizar o avião. No caso do VANT UT-
X, que já tem um projeto aerodinâmico estável, o SAS irá apenas aumentar o amortecimento
e modificar a frequência de oscilação do Modo de Período Curto. O SAS não é um piloto
automático, a aeronave é controlada pelos comandos do piloto.

Figura 8.1 – Stability Augmentation System - SAS


92

Na figura 8.1, mesmo utilizando a representação de blocos como se o sistema fosse


SISO, é importante notar que o sistema na realidade é MIMO, conforme os estados mostrados
na equação 8.2. Entretando, para facilitar a visualização esta representação será utilizada.
Utilizando as equações 8.4 e 8.6, escolhendo a matriz C = Cq = [0 0 0 1 0], podemos
q(s)
achar uma função de transferência da forma G(s) = (equação 8.8).
δe (s)

G(s) = C.(s.I − A)−1 .B + D (8.8)

Substituindo as matrizes A, Cq e sendo Bδelevator a primeira coluna da matriz B referente


ao comando de profundor, temos a função de transferência mostrada na Eq. 8.10:

Gq (s) = Cq .(s.I − A)−1 .Bδelevator + 0 (8.9)

Sendo Bδelevator a primeira coluna da matriz B, referente ao comando de profundor.

−9, 559s4 − 34, 54s3 − 10, 38s2 − 0, 001623s


Gq (s) = (8.10)
s5 + 4, 677s4 + 14, 52s3 + 3, 684s2 + 4, 766s + 0, 001811
Foi utilizado a ferramenta SISOTOOL presente no MATLAB para facilitar o projeto do
regulador Kq . Observando o gráfico do lugar das raízes (Root-Locus) de malha aberta (figura
8.2), perceber-se que é possível escolher um ganho Kq tão alto quanto se desejar, amortecendo
totalmente o Modo de Período Curto e inclusive o Modo Fugoidal. Entretanto, se for escolhido
um ganho Kq muito alto, a ação de controle será muito elevada, provavelmente levando o atu-
ador a operar em saturação. Uma alta deflexão de profundor também pode provocar elevadas
acelerações, com risco de estolar o VANT ou danificar sua estrutura. Portanto, tendo em vista
que o UT-X já apresenta dinâmica longitudinal estável, após realizar ensaios em voo virtuais
para testes de diferentes ganhos, foi escolhido Kq = −0, 2. O sinal negativo tem relação com a
convenção adotada para o ângulo do profundor (ângulo positivo é definido quando o bordo de
fuga do profundor se move para baixo (STEVENS; LEWIS, 1992)).
93

Figura 8.2 – Projeto do ganho do regulador Kq

Realizando uma simulação com o modelo analítico, para testar o comportamento do


VANT UT-X com o SAS, observamos uma oscilação de período curto mais suave (observada
na taxa de arfagem Q) (figura 8.3). Em comparação com a resposta sem o SAS (figura 6.4),
notamos um amortecimento maior nas oscilações de período longo e amplitudes menores de
variação dos ângulos de ataque e arfagem.
94

Figura 8.3 – Simulação do modelo analítico com o controlador SAS ativado

A ação de controle (comando de profundor) do SAS pode ser observada na figura 8.4

Figura 8.4 – Atuação do SAS


95

8.4 Control Augmentation System - CAS

A segunda malha de controle é a realimentação do ângulo de arfagem (θ) (figura 8.5),


com o objetivo de realizar o seu rastreio. Esta estratégia se enquadra como um sistema de
aumento de controle (CAS)(STEVENS; LEWIS, 1992). Com o CAS ativado, os comandos no
manche dados pelo piloto serão a referência do ângulo de arfagem do VANT e não mais o sinal
direto para atuação do ângulo do profundor. Os CAS são geralmente utilizados em caças de
combate quando se deseja atingir algum objetivo específico, como por exemplo facilitar uma
manobra (STEVENS; LEWIS, 1992). Também são adotados quando se pretende rastrear um
ângulo de decolagem ou pouso, dados por um sistema de guiagem.

Figura 8.5 – Control Augmentation System - CAS

θ(s)
É importante notar que não podemos calcular a função de transferência Gθ (s) =
δec (s)
diretamente, é preciso incorporar a malha interna, criando assim o sistema aumentado mostrado
na figura 8.5. Usando algebra de matrizes, sendo Cθ = [0 0 1 0 0], o novo sistema aumentado é
dado por (equação 8.12):

Aθ = A − B.Kq .Cq (8.11)

Gθ (s) = Cθ .(s.I − Aθ )−1 .Bδelevator + 0 (8.12)


96

Sendo Bδelevator a primeira coluna da matriz B, referente ao comando de profundor.


Função de transferência de malha aberto do comando δec para a saída θ de acordo com
o sistema na figura 8.5.

−9, 559s3 − 34, 54s2 − 10, 38s − 0, 001623


Gθ (s) = (8.13)
s5 + 6, 589s4 + 21, 43s3 + 5, 76s2 + 4, 766s + 0, 001811

Utilizando a mesma metodologia descrita para o projeto do ganho do regulador do SAS,


utilizamos a técnica Root-Locus e Diagrama de Bode (figura 8.6). É desejado um ganho que
não tenha uma ação de controle elevada e respeite os requisitos de qualidade de voo descritos
em (STEVENS; LEWIS, 1992), logo temos que Kθ = −0, 8 é o mais indicado.

Figura 8.6 – Projeto do ganho do regulador Kθ

Simulou-se o modelo analítico para testar o comportamento do VANT UT-X com os


controladores SAS e CAS. Definindo uma referência de θc = 5◦ , observamos que o CAS garante
97

o rastreio do ângulo de referência (figura 8.7). Assim como nas simulações anteriores (figuras
6.5 e 8.4), aos 10 segundos é aplicado um comando doublet no manche, que acaba perturbando
o rastreio da referência do ângulo de arfagem (θ).

Figura 8.7 – Simulação analítica com os controladores SAS e CAS ativados

Na figura 8.8 é possível ver o destaque para um período de tempo menor, mostrado o
detalhe da variação e rastreio do ângulo θc = 5.
98

Figura 8.8 – Simulação analítica com os controladores SAS e CAS ativados

Na figura 8.9 é observado a ação de controle de profundor comandada pelo CAS, sobrepondo-
se a perturbação do sinal doublet aplicado aos 10 segundos.

Figura 8.9 – Atuação do CAS


99

8.5 Altitude Hold Autopilot

A terceira malha de controle é a realimentação da altitude (h) (figura 8.10). Ela tem
como objetivo o mantenimento de altitude, sendo classificada como um piloto automático (Al-
titude HOLD Autopilot) (STEVENS; LEWIS, 1992). Este controlador assume totalmente o
controle do ângulo de deflexão do profundor (δelevator ). Portanto uma vez ativado em voo, o
piloto apenas pode mudar de altitude mudando sua referência no piloto automático. Pode ser
utilizado em conjunto com um sistema de navegação e guiagem, onde os pontos de referência
de altitude são gerados pelo sistema de guiagem a partir do planejamento da missão. Com isto,
é possível o voo autônomo do VANT.

Figura 8.10 – Altitude Hold Autopilot

Considerando Ch = [0 0 0 0 1], o novo sistema aumentado é dado por (equação 8.15):

Ah = Aθ − B.Kθ .Cθ (8.14)

Gh (s) = Ch .(s.I − Ah )−1 .Bδelevator + 0 (8.15)

Sendo Bδelevator a primeira coluna da matriz B, referente ao comando de profundor.


Função de transferência em malha aberta do comando θc para a altitude h, de acordo
com a figura 8.10.

h(s)
Gh (s) = (8.16)
θc (s)
100

8, 882.10−10 s2 − 660, 5s − 125, 8


Gh (s) = (8.17)
s5 + 6, 589s4 + 29, 08s3 + 33, 39s2 + 13, 07s + 0, 003109
Analisando os pólos do sistema e o diagrama do lugar das raízes, foi projetado um
compensador Proporcional-Integral (PI) (figura 8.11). Baseado em requisitos de qualidade de
voo apresentados por (STEVENS; LEWIS, 1992), e desejando uma ação de controle suave, a
ação PI projetada foi de:

1 + 100s
P Ih = −0, 0002. (8.18)
s

Figura 8.11 – Projeto do ganho do compensador Kh

Simulando o modelo analítico contendo o Altitude HOLD Autopilot é possível observar


que este controlador obtém sucesso no mantenimento de altitude. É utilizada uma referência
101

de subida de 50 metros, com inclinação de 2 m/s, aplicada aos 50 segundos da simulação.


Nota-se que o piloto automático rastreia a referência com sucesso, com overshoot de 3%. A
ação de controle compensa a perda de velocidade durante a subida, com comandos suaves no
profundor. Este resultado é mostrado nas figuras 8.12 e 8.13.

Figura 8.12 – Simulação analítica do Altitude HOLD Autopilot


102

Figura 8.13 – Simulação analítica do Altitude HOLD Autopilot, mostrando deflexão do profun-
dor

8.6 MACH Hold Autopilot

A quarta e última malha de controle, é a realimentação da velocidade (VT )(figura 8.14).


Ela tem como objetivo o mantenimento de uma mesma velocidade de referência. Este piloto
automático assume totalmente o controle da posição da manete de potência (δπ ).
Para integrar o Altitude Hold Autopilot ao sistema aumentado, é preciso levar em con-
sideração o tipo de compensador utilizado. A expressão do sistema aumentado pode ser obtida
analisando a malha de controle da figura 8.14 e realizando operações de algebra de matrizes.
Figura 8.14 – MACH Hold Autopilot
103
104

Sendo CAHautopilot (s) (Eq. 8.19) o compensador usado no Altitude Hold Autopilot, XhA o estado
do compensador e Xθ o estado da aeronave com o controle automático de altitude, o sistema
aumentado pode ser expressado pela equação 8.21.

CAHautopilot (s) ⇒ StateSpace ⇒ [AhA BhA ChA DhA ] (8.19)

Representação de espaço de estado do sistema aumentado tracejado na figura 8.14.

Ẋθ = (Aθ − B.DhA .Ch ).X + B.ChA .XhA + B.DhA .href (8.20a)

X˙hA = AhA .XhA + BhA .href − BhA .Ch .X (8.20b)

         
Ẋθ (Aθ − B.DhA .Ch ) B.ChA Xθ B.DhA href
= . + . (8.21)
ẊhA −BhA .Ch AhA XhA BhA 0 δπ

   
Xθ href
X˙VT = AVT . + BVT . (8.22)
XhA δπ
Lembrando que a matriz é B(5×2) .
Sendo CAHautopilot (s) de primeira ordem, logo BhA(1×1) e CVT = [1 0 0 0 0 0].
V t(s)
Fazendo as devidas substituições temos que a função de transferência GVT (s) =
δπ (s)
é igual a:

GVT (s) = CVT .(s.I − AVT )−1 .BVT δπ + 0 (8.23)

Sendo BVT δπ a segunda coluna da matriz BVT , referente ao comando da posição da


manete de potência δπ .

−0, 02026s5 − 0, 128s4 − 0, 5506s3 − 0, 5115s2 − 0, 277s − 0, 0002128


GVT (s) = (8.24)
s6 + 6, 589s5 + 29, 08s4 + 33, 39s3 + 26, 67s2 + 2, 603s + 0, 001992

Analisando os pólos do sistema e o diagrama do lugar das raízes, foi observado que o
compensador deve ser do tipo PI (figura 8.15). A lei de controle PI é mostrada na equação 8.25:

1 + 50.s
P IV T (s) = −0, 04. (8.25)
s
Esta lei de controle gera um comando para o incremento da manete de potência a partir
da realimentação do incremento de velocidade (incrementos medidos em relação ao equilíbrio).
105

Figura 8.15 – Projeto do ganho do compensador P IV T

Na simulação do modelo analítico do VANT com ambos pilotos automáticos ativados


(Altitude HOLD Autopilot e MACH HOLD Autopilot), podemos observar que o controladores
cumprem seu objetivo. No caso do MACH HOLD Autopilot mantendo a velocidade indicada
pela referência. O resultado da simulação é mostrado nas figuras 8.16 e 8.17.
106

Figura 8.16 – Simulação analítica do MACH HOLD Autopilot


107

Figura 8.17 – Simulação analítica do MACH HOLD Autopilot, mostrando a ação da manete de
potência (δπ )

Na figura 8.17 é possível perceber a saturação da ação da manete de potência. Se o


ganho da parte integral do controlador for muito elevado, ao ocorrer a saturação, a ação integral
irá continuar somando a ação de controle. Este acontecimento é conhecido como Windup. Neste
projeto o problema foi solucionado escolhendo-se um ganho integral de baixo valor, sintonizado
através de ensaios em voo virtuais no X-Plane, evitando assim o uso de uma malha Anti-Windup
(o que acrescentaria maior complexidade em uma futura implementação).
108

8.7 Ensaio em Voo dos Pilotos Automáticos no X-Plane

Os controladores descritos neste capítulo foram implementados no MATLAB/SIMU-


LINK para testes em simulação no X-Plane. O diagrama de blocos construído no SIMULINK
é mostrado na figura 7.17. Embora os controladores tenham sido projetados para um ponto
de balanço específico, seu desempenho foi avaliado desde a decolagem até o pouso. Também
foram realizados testes com condições de vento, rajada e turbulência.
Na figura 8.18 são mostrados dados de várias fases de voo: decolagem, subida, voo
nivelado a 200 metros de altitude, voo em condições de vento, rajada e turbulência, descida
e pouso. A altitude da pista em relação ao mar é de 91 metros. O voo foi conduzido apenas
modificando as referências de altitude e velocidade dos pilotos automáticos, simulando manu-
almente um sistema de guiagem. Em vermelho é mostrado o sinal de referência. O aileron e
leme foram controlados pelo manche (figura 7.2).
109

Figura 8.18 – Dados de voo da performance dos pilotos automáticos no X-Plane

A figura 8.18 mostra que os pilotos automáticos tiverem um bom desempenho, mesmo
atuando fora do ponto de equilíbrio. Em torno dos 300 segundos de simulação as configurações
de vento (10 nós), rajada (10 nós) e turbulência são acionadas. O controle de velocidade perde
performance, porém a altitude se mantêm próximo da referência. É possível observar que há
uma maior atuação tanto dos comandos do profundor quanto da posição de manete. Em torno
dos 500 segundos da simulação, o vento, a rajada e a turbulência são retirados. Logo após
inicia-se uma rampa de descida até o pouso.
De maneira geral os pilotos automáticos projetados funcionaram com sucesso em todas
as fases de voo, embora tenham sido projetados apenas para a condição de equilíbrio. Houve
110

boa performance mesmo na realização de manobra de curva (com ângulo de rolagem menor
que 45). A boa performance fora do ponto de equilíbrio pode ter sido satisfatória pois não
houve grande variação de altitude e velocidade. A performance prevista durante o projeto dos
controladores para o ponto de equilíbrio se confirmou através dos dados obtidos do ensaio em
voo no X-Plane. Este resultado valida a metodologia abordada neste trabalho.

8.7.1 Decolagem e Voo Nivelado

Na figura 8.19 podemos ver os mesmos dados da figura 8.18, porém enfatizados para o
momento da decolagem até o voo nivelado na posição de balanço. O erro em regime permanente
é menor que 2, 3% para ambos os pilotos automáticos.
111

Figura 8.19 – Dados de voo da performance dos pilotos automáticos no X-Plane durante a
decolagem e voo nivelado

8.7.2 Vento Constante e Curva

Na figura 8.20, aos 205 segundos da simulação é adicionado vento constante com Vwind =
10knots. O pico de velocidade observado é no momento em que o vento é inserido na simula-
ção. A performance dos pilotos automáticos não foi comprometida, tendo sucesso em rejeitar
a perturbação. Aos 240 segundos é realizada uma manobra de curva para a direita com ângulo
de rolagem em torno de 25◦ . Aos 257 segundos é realizada outra manobra de curva, para a
esquerda, com ângulo de rolagem em torno de 30◦ .
112

Figura 8.20 – Dados de voo da performance dos pilotos automáticos no X-Plane durante vento
constante e curva

8.7.3 Vento Constante e Rajada de Través

Na figura 8.21, aos 295 segunods de simulação é adicionado rajadas de vento de través
com Vgust = 10knots. O Altitude HOLD Autopilot consegue manter a altitude muito próxima
da referência, porém o MACH HOLD Autopilot tem dificuldades em manter a velocidade de
referência. A massa reduzida do VANT pode ser desta última dificuldade.
113

Figura 8.21 – Dados de voo da performance dos pilotos automáticos no X-Plane durante vento
constante e rajadas de través

8.7.4 Vento Constante, Rajada de Través e Turbulência

Na figura 8.22, em torno dos 335 segundos de simulação é adicionada turbulência (valor
2 nas configurações do X-Plane). A atuação do profundor se intensifica para tentar manter a
referência. Ao mudar a referência de altitude é observado um overshoot maior (6%) do que
aquele sem as perturbações, mas ainda assim o piloto automático consegue rastreá-las com
proximidade.
114

Figura 8.22 – Dados de voo da performance dos pilotos automáticos no X-Plane durante vento
constante, rajadas de través e turbulência
115

9 CONCLUSÃO

9.1 Comentário sobre os Resultados e Considerações Finais

Este trabalho apresentou uma metodologia de modelagem da dinâmica de voo longitu-


dinal, simulação analítica no MATLAB/SIMULINK, simulação de voo no X-Plane e projeto de
piloto automático de mantenimento de altitude e velocidade (Altitude HOLD Autopilot e MACH
HOLD Autopilot respectivamente). A planta utilizada foi o VANT UT-X.
A modelagem utilizou duas técnicas: Modelo baseado em derivadas de estabilidade e
controle e modelo baseado na teoria do elemento de pá dado pelo X-Plane. Ambas mostraram
resultados finais de voo semelhantes, validando assim a metodologia de modelagem apresen-
tada. Ambos os modelos podem ser melhorados, investindo-se mais tempo no ajuste e adição
de detalhes.
O projeto de piloto automático seguiu técnicas clássicas utilizadas pela indústria aero-
náutica, com controladores PID, onde a escolha dos ganhos é baseada em requisitos de qua-
lidade de voo para aeronaves militares (margem de ganho e de fase) (STEVENS; LEWIS,
1992). Os controladores foram projetados a partir das equações linearizadas ao redor do ponto
de balanço, para a fase de voo nivelado. Simulações analíticas mostraram que os controla-
dores cumprem o seu papel. Para investigar a performance dos controles em outras fases de
voo e na presença de perturbações, foi utilizado a técnica SITL, com o MATLAB/SIMULINK
comunicando-se com o X-Plane utilizando o protocolo UDP. Embora estejam operando fora do
seu ponto de projeto, os pilotos automáticos mostraram boa performance em outras fases de voo
(em pontos de operação diferentes dos de equilíbrio). Foi observado que os pilotos automáticos
conseguem rejeitar o distúrbio de vento constante (velocidade de 10 nós), também foi notado
que na presença de rajadas de vento (de 10 nós) e turbulência o VANT se manteve próximo do
valor de referência.
Para implementação prática desta técnica de projeto de controle, é necessário obter mo-
delos analíticos para cada fase de voo (em diferentes altitudes e velocidades), linearizar e cal-
cular os ganhos dos controles para cada modelo linearizado. Ao final, se obtém uma tabela de
ganhos dos pilotos automáticos para todos os pontos de operação do envelope de voo da aero-
nave. Esta técnica é comumente empregada pela indústria aeronáutica tanto para aeronaves civis
quanto militares, ela é conhecida como gain scheduling. Sua vantagem é alta confiabilidade e
116

baixa necessidade computacional, uma vez que os ganhos já estão calculados e são conheci-
dos. Existem estudos específicos para garantir a estabilidade no chaveamento entre ganhos dos
controladores em voo.
Este trabalho pode ser utilizado como plataforma para o ensino da teoria de controle,
mecânica e controle de voo.

9.2 Trabalhos Futuros

Nesta seção serão sugeridos trabalhos para a continuação da pesquisa em VANTs:

(a) Modelagem da dinâmica látero-direcional;

(b) Projeto de piloto automático para a dinâmica látero-direcional;

(c) Investigação da implementação dos pilotos automáticos em hardware, utilizando obser-


vadores e filtros para os sensores;

(d) Realização de simulação no X-Plane com HITL;

(e) Investigação de outras técnicas de controle para as dinâmicas longitudinais e látero-


direcionais;

(f) Projeto de sistema de guiagem;

(g) Projeto de sistema de navegação;

(h) Implementar o gain scheduling para todo o envelope de voo;

(i) Investigar as condições para chaveamento entre os ganhos do gain scheduling;

(j) Construção do VANT;

(k) Comparar os resultados com dados de túnel de vento e ensaio em voo do VANT real.
117

REFERÊNCIAS

ANAC. INSTRUÇÃO SUPLEMENTAR - IS Nº 21-002 - Revisão A: emissão de certifi-


cado de autorização de voo experimental para veículos aéreos não tripulados. [S.l.]: ANAC,
SAR/GTPN, 2012.

AUSTIN, R. Unmanned Aircraft Systems: uavs design, development and deployment. [S.l.]:
John Wiley and Sons Ltd., 2010. (John Wiley and Sons Ltd. Aerospace Series).

BABKA, D. W.; DURGIN, W. Flight Testing in a Simulation Based Environment. 2011.

BEARD, R.; MCLAIN, T. Small Unmanned Aircraft: theory and practice. [S.l.]: Princeton
Univesity Press, 2012. (Princeton University Press).

BITTAR, A. X-Plane Library. MathWorks File Exchange, MATLAB/SIMULINK Library.

BITTAR, A.; OLIVEIRA, N. M. F. de; FIGUEIREDO, H. V. Hardware-In-the-Loop Simulation


with X-Plane of Attitude Control of a SUAV Exploring Atmospheric Conditions. J Intell Robot
Syst (2014) 73:271–287, [S.l.], 2013.

BLAKELOCK, J. Automatic Control of Aircraft and Missiles. [S.l.]: Wiley, 1991. (A Wiley-
Interscience publication).

CARNDUFF, S. System Identification of Unmanned Aerial Vehicles. 2008. Tese de Douto-


rado — Department of Aerospace Sciences, Cranfield University.

COMPANY, M. D. A. The USAF Stability and Control Digital DATCOM Users Manual.
1979.

COOK, M. Flight Dynamics Principles: a linear systems approach to aircraft stability and
control. [S.l.]: Elsevier Science, 2011. (Elsevier aerospace engineering series).

FIGUEIREDO, H. V. de. Simulation Platform for Quadricopter: using matlab/simulink and


x-plane. 2012. Dissertação de Mestrado — Department of Graduate Studies of the Aeronautics
Institute of Technology, Instituto Tecnológico de Aeronáutica.

FIGUEIREDO, H. V.; SAOTOME, O. Modelagem e Simulação de Veículo Aéreo Não Tripu-


lado (VANT) Do Tipo Quadricóptero Usando o Simulador X-Plane e SIMULINK. Anais do
XIX Congresso Brasileiro de Automática, CBA 2012, [S.l.], 2012.
118

HULL, D. G. Fundamentals of Airplane Flight Mechanics. [S.l.]: Springer, 2007.

JODEH, N. Development of Autonomous Unmaned Aerial Vehicle Research Platform: mo-


deling, simulating, and flight testing. 2006. Tese de Doutorado — Department of the Air Force,
Air Force Institute of Technology, Wright-Patterson Air Force Base, Ohio.

JUNG, D.; TSIOTRAS, P. Modeling and Hardware-in-the-Loop Simulation for a Small Un-
manned Aerial Vehicle. American Institute of Aeronautics and Astronautics, [S.l.], 2007.

PARIKH, K. K. et al. CAE Tools for Modeling Inertia and Aerodynamic Properties of an R/C
Airplane. AIAA Atmospheric Flight Mechanics Conference 10 - 13 August 2009, Chicago,
Illinois, [S.l.], 2009.

RESEARCH, L. Plane Maker Manual. 2013.

RESEARCH, L. X-Plane Manual version 10.40. 2015.

SIDDIQUI, B. A.; KHUSHNOOD, A. Improving USAF DATCOM Predictions of Aircraft


NonLinear Aerodynamics. Canadian Aeronautics and Space Institute AERO’09 Confe-
rence Aerodynamics Symposium, [S.l.], 2009.

STEVENS, B. L.; LEWIS, F. L. Aircraft Control and Simulation. [S.l.]: John Wiley and Sons
Ltd., 1992.

THONG, C. W. S. Modeling Aircraft Performance and Stability on X-Plane. Final Thesis Re-
port 2010, SEIT, UNSW@ADFA, [S.l.], 2010.

TORONTO AEROSPACE TEAM UAV TEAM, U. of. University of Toronto Explorer Design
Report. 2014.

TUREVSKIY, A.; GAGE, S.; BUHR, C. Model-Based Design of a New Light-Weight Aircraft.
American Institute of Aeronautics and Astronautics, [S.l.], 2007.

WATKISS, E. Flight Dynamics of an Unmanned Aerial Vehicle. 1994. Tese de Doutorado —


Department of Aeronautics and Astronautics, Naval Postgraduate School, Monterey, California.
119

10 ANEXOS

10.1 Anexo A - VANT UT-X descrito no USAF DATCOM

Este é o código em linguagem FORTRAN que descreve o VANT UT-X para obtenção
das derivadas de estabilidade e controle no software USAF DATCOM.

1 ******************************************
2 * Universidade Federal de Santa Maria *
3 * Centro de Tecnologia - CT *
4 * *
5 * University of Toronto Aerospace Team *
6 * UT-X modelling for stability and *
7 * control derivatives evaluation *
8 * *
9 * Willian Rigon Silva *
10 * Prof. Dr. Andre Luis da Silva *
11 ******************************************
12
13
14 ************************
15 * List of Command Card
16 ************************
17 DIM M
18 DAMP
19 TRIM
20 DERIV DEG
21 PART
22
23
24 **********************
25 * Flight Conditions *
26 **********************
27 *WT=22.0462,
28 $FLTCON LOOP=1.0, TR=0.0,
29 NMACH=1.0, MACH(1)=0.06,
30 NALT=1.0, ALT(1)=200.0,
31 NALPHA=20.0,
32 RNNUB(1)=3.2724E5,
33 * RNNUB(1)=3.2724E5,
34 VINF(1)=20.58,
35 ALSCHD(1)= -16.0, -8.0, -6.0,
36 -4.0, -2.0, 0.0, 2.0, 4.0, 8.0, 9.0,
37 10.0, 12.0, 14.0, 16.0, 18.0,
38 19.0, 20.0, 21.0, 22.0, 24.0,
39 STMACH=0.6, TSMACH=1.4, GAMMA=0.0$
40
41
42 *************************
43 * Reference Parameters * pg 29
44 *************************
45 *, ROUGFC=0.02E-3
120

46 $OPTINS SREF=0.485, CBARR=0.245,


47 BLREF=1.98, ROUGFC=0.25E-3$
48
49
50 **************************************
51 * Group II Synthesis Parameters * pg 33
52 **************************************
53 *XCG=0.5175 at 41.47% MAC - ORIGINAL do relatorio USC
54 *XCG=0.481996 27% MAC
55 *XCG=0.4771 25% MAC
56 *XCG=0.4722 23% MAC
57
58 *ZCG=0.15, Ideal Zcg
59 *ZCG=0.109, New solution
60 *ZCG=0.106, Old solution
61
62 $SYNTHS XCG=0.4771, ZCG=0.109,
63 XW=0.41, ZW=0.17, ALIW=0.0,
64 XH=1.21, ZH=0.35, ALIH=0.0,
65 XV=1.16, ZV=0.16,
66 SCALE=1.0, VERTUP=.TRUE.$
67
68

69 **********************************
70 * Body Configuration Parameters * pg 36
71 **********************************
72 $BODY NX=11.0,
73 * X(1)=0.0,0.1,0.25,0.5,0.77,0.78,
74 * R(1)=0.0,0.08,0.1,0.1,0.1,0.0,
75 * ZU(1)=0.10,0.18,0.18,0.18,0.18,0.04,
76 * ZL(1)=0.10,0.00,0.00,0.00,0.00,0.03,
77
78
79 ********** BACKUP ************
80 X(1)=0.0,0.01,0.05,0.08,0.1,0.25,
81 0.43,0.69,0.73,0.77,0.78,
82 0.79,1.33,1.34,
83 R(1)=0.000,0.03,0.06,0.08,0.09,
84 0.1,0.08,0.07,0.06,0.04,0.04,
85 0.04,0.04,0.0,
86 ZU(1)=0.10,0.15,0.18,0.19,0.20,
87 0.19,0.17,0.17,0.15,0.14,0.14,
88 0.14,0.14,0.14,
89 ZL(1)=0.10,0.07,0.05,0.04,0.03,
90 0.02,0.01,0.0,0.02,0.03,0.04,
91 0.04,0.04,0.04,
92
93 BNOSE=1.0, BLN=0.1,
94 BTAIL=1.0, BLA=0.1,
95 METHOD=1.0$
96 *************CRITICO BLN modifica CMQ CLQ diretamente!!!!
97

98
99 NACA-W-4-6412
100 NACA-H-4-0012
101 NACA-V-4-0012
102
103
121

104 **********************************
105 * Wing planform variables pg 37-38
106 **********************************
107 $WGPLNF CHRDR=0.27, CHRDTP=0.22,
108 SSPN=0.99, SSPNE=0.95,
109 SAVSI=0.0, SAVSO=0.0,
110 CHSTAT=0.0, TWISTA=0.0,
111 DHDADI=4.0,
112 TYPE=1.0$
113 ********CRITICO SSPN e SSPNE modifica CYB DIRETAMENTE!!!!!!!!!
114

115
116 *************************************************
117 * Horizontal Tail Sectional Characteristics pg 39-40
118 *************************************************
119 * Same build up as wing, if you'd like to use that instead.
120

121 $HTPLNF CHRDR=0.13, CHRDTP=0.13,


122 SSPN=0.31, SSPNE=0.27,
123 SAVSI=0.0,
124 CHSTAT=0.0, TWISTA=0.0,
125 DHDADI=0.0,
126 TYPE=1.0$
127
128
129 ******************************************
130 * Vertical Tail planform variables pg 37-38
131 ******************************************
132 **************************************
133 * Vertical Tail Sectional Characteristics pg 39-40
134 **************************************
135
136 $VTPLNF CHRDR=0.14, CHRDTP=0.13,
137 SSPN=0.20, SSPNE=0.19,
138 SAVSI=12.37, CHSTAT=0.0, TYPE=1.0$
139
140
141 ***********************************
142 * Elevator Deflection parameters
143 ***********************************
144 $SYMFLP FTYPE=1.0,
145 NDELTA=9.0,
146 DELTA(1)=-20.0,-15.0,-10.0,-5.0,0.0,5.0,10.0,13.0,16.0,
147 PHETE=0.02, PHETEP=0.01,
148 CHRDFI=0.045, CHRDFO=0.045,
149 SPANFI=-0.28, SPANFO=0.28,
150 CB=0.045, TC=0.03, NTYPE=3.0$
151
152
153 ***********************************
154 * TWIN VERTICAL TAIL
155 ***********************************
156 * $TVTPAN BVP=0.01, BV=0.05, BDV=0.1, BH=1.0, BH=0.5,
157 * SV=0.5, VPHITE=0.01, VLP=0.01, ZP=0.0$
158
159
160 CASEID UTX_MODEL
122

10.2 Anexo B - Script de cálculos para a simulação de voo analítica no MATLAB/SIMU-


LINK

Este código em linguagem MATLAB insere todos os dados necessários para a simulação
de voo do VANT UT-X no modelo de blocos do SIMULINK.

10.2.1 Configuração de parâmetros e Projeto de Controladores

1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2 % UAV Mathematical Modeling %
3 % Willian Rigon Silva %
4 % Prof. Dr. Andre Luis da Silva %
5 % UFSM - Eng. de Controle e Automacao %
6 % May, 2015 %
7 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8
9 warning ('off') %ACHTUNG only use off if you know what you re doing.
10 clear all
11 close all
12 clc
13
14 global m;
15 global g;
16 global Iyy;
17 global S;
18 global cbar;
19 global Thrust_static;
20 global DTDV;
21 global Ze;
22 global CL0;
23 global CLA;
24 global CLAdot;
25 global CD0;
26 global DCDG;
27 global CDCLS;
28 global CM0;
29 global CMA;
30 global CMAdot;
31 global CMQ;
32 global CMDE;
33 global DCMG;
34 global xcg;
35 global Vt_e;
36 global alpha_e;
37 global theta_e;
38 global Q_e;
39 global Throttle_e;
40 global elev_def_e;
41 global h_e;
42 global CD0b;
43 global Engine_Power_a;
123

44 global Engine_Power_b;
45 global Thrust_static_a;
46 global Thrust_static_b;
47 global max_RPM;
48

49 %=====Conversion constants
50 kmh2ms = 1/3.6;
51 ms2kmh = 3.6;
52 mach2kmh = 1234.8;
53 in2m = 0.0254;
54 ft2m = 0.3048;
55 HPtoW = 745.7;
56 ms2knots = 1.94384;
57 kg2lb = 2.20462;
58 %=========================
59
60

61
62 %University of Toronto Xplorer (UTX) UAV
63 %%=========================================================
64 %FLIGHT Initial Vt e h =======
65 Vt_e = 0.06*mach2kmh*kmh2ms; %km/h
66 h_e = 200; %m
67
68 %================= Constant Aircraft Parameters ===================
69 g = 9.80665; %m/s^2
70 m = 9.57; %Kg
71 S = 0.485; %m^2
72 cbar = 0.24498; %m
73
74 xcg = 0.25; %Adimensional
75 %Iyy = 3.17; %Old solution
76 %Iyy = 3.33; %New solution
77 %Iyy = 2.6; %X-Plane
78 Iyy = 3.33; %Kg m^2
79
80
81 %REYNOLDS NUMBER FOR DATCOM INPUT, depending on Vt_e
82 %Air density
83 [T, A, P, p_Re] = atmosisa(h_e);
84 %Air viscosity - 25degC
85 mu_Re= 1.85E-5;
86 %cbar
87 D_Re = 0.2448;
88 %Velocity
89 V_Re = Vt_e;
90 %Reynolds Number
91 Reynolds_Number = p_Re*V_Re*D_Re / mu_Re
92
93 %Reynolds Number calculus for simulation in DATCOM
94 if(0)
95 Rnum_Navion = 1.07E6 %ft^-1
96 Rnum_Navion = 1.07E6/ft2m
97 cbarNavion = 5.7*ft2m
98 Rnum_ASW20 = 0.624E6 %ft^-1
99 Rnum_ASW20 = 0.624E6/ft2m
100 cbarASW20 = 2.554*ft2m
101
124

102 cbarUAV = 0.24498


103 %RnumUAV = 0.197E6
104 RnumUAV_ASW20 = (cbarUAV/cbarASW20)*Rnum_ASW20
105 RnumUAV_Navion = (cbarUAV/cbarNavion)*Rnum_Navion
106

107 end
108
109
110
111 %Actuator Dynamics - 0.12s time constant
112 Elevator_NUM = [8.333];
113 Elevator_DEN = [1 8.333];
114 G_elev = tf(Elevator_NUM,Elevator_DEN); %to be used in SISOTOOL
115 [Aelev,Belev,Celev,Delev] = tf2ss(G_elev.num{1},G_elev.den{1});
116
117
118 %Engine Dynamics - 0.12s time constant
119 Engine_NUM = [8.333];
120 Engine_DEN = [1 8.333];
121
122
123
124

125 %ENGINE MODEL ======================


126 % 0 = Dynamic model
127 % 1 = first order model
128 EngineModel = 1;
129
130

131
132 if(EngineModel==0)
133 %Engine Reference - USC Report and ...
http://personal.osi.hu/fuzesisz/strc_eng/
134 %Static Thrust max at 8200 RPM ---> 12lbs=5.44 as in USC Report
135 %RPM - StaticThrust(Kg) - HP
136 Engine_model = [1500 0.18 0.015;
137 2000 0.32 0.035;
138 3000 0.72 0.12;
139 4000 1.29 0.284;
140 5000 2 0.556;
141 6000 2.91 0.961;
142 6500 3.42 1.222;
143 7000 3.96 1.527;
144 7500 4.55 1.878;
145 8000 5.18 2.279;
146 8200 5.44 2.454];
147 figure;
148 subplot(2,2,1);
149 plot(Engine_model(:,1), Engine_model(:,2),'b','linewidth',2);
150 xlabel('$\RPM$','interpreter','latex','FontSize',14)
151 ylabel('$StaticThrust(Kg)$','interpreter','latex','FontSize',18)
152 title('$StaticThrustToRPM$','interpreter','latex','FontSize',16)
153 grid on;
154 subplot(2,2,2);
155 plot(Engine_model(:,1), Engine_model(:,3),'r','linewidth',2);
156 xlabel('$\RPM$','interpreter','latex','FontSize',14)
157 ylabel('$HP$','interpreter','latex','FontSize',18)
158 title('$HPtoRPM$','interpreter','latex','FontSize',16)
125

159 grid on;


160
161 Fit_STtoRPM = fit(Engine_model(:,1), Engine_model(:,2), 'poly1');
162 Fit_HPtoRPM = fit(Engine_model(:,1), Engine_model(:,3), 'poly1');
163

164 subplot(2,2,3); plot(Fit_STtoRPM, Engine_model(:,1), Engine_model(:,2));


165 legend('STtoRPM');
166 grid on
167 subplot(2,2,4); plot(Fit_HPtoRPM, Engine_model(:,1), Engine_model(:,3));
168 legend('HPtoRPM');
169 grid on
170
171 Thrust_static_a = Fit_STtoRPM.p1;
172 Thrust_static_b = Fit_STtoRPM.p2;
173 Engine_Power_a = Fit_HPtoRPM.p1;
174 Engine_Power_b = Fit_HPtoRPM.p2;
175 max_RPM = 8200;
176
177 %TEST if FIT is correct
178 if (0)
179 RPM = max_RPM*0.5
180 Thrust_static = Thrust_static_a*RPM + Thrust_static_b
181 Thrust_static = Thrust_static*g %N
182 Engine_power = Engine_Power_a*RPM + Engine_Power_b
183 Engine_power = Engine_power*HPtoW
184 DTDV = -(Engine_power)/(Vt_e^2)
185 Thrust = (Thrust_static + Vt_e*DTDV)
186 end
187 end
188
189
190
191 %Engine Model Simplified
192 if(EngineModel==1)
193 %Electric motor specs from USC report - 380RPM / V - 6S battery 22.2V
194 max_RPM = 22.2*380;
195 %calculate theoretical max speed%
196 %, assuming 80% propeller's aerodynamic efficiency
197 prop_pitch = 10*in2m;
198 prop_eff = 0.7;
199 max_speed = ((max_RPM*60)*prop_pitch); %m/h
200 max_speed = (max_speed/1000)*prop_eff; %Km/h
201 Vt_max = max_speed*kmh2ms;
202
203 Thrust_static = 5.44311*g; %N --> 12lbs is 5.44311 K
204 DTDV = -Thrust_static/(Vt_max);
205 Ze = 0.0; %2 ft; % - estimated thrust vector distance from the cg vector
206
207 Vt_max = max_speed*kmh2ms
208 Vt_max_knots = Vt_max*ms2knots
209 end
210

211
212
213
214 %AERODYNAMIC DERIVATIVES at alpha = 0
215 %AeroData = readDATCOM; %function that reads the .XLS table of
216 %DATCOM output data
126

217
218 aero = datcomimport('F:\DATCOM\UTX_Model\UTX_Model_TEST.out',true,2,6);
219 AeroData.v_alpha = aero{1}.alpha';
220 AeroData.v_Cm = aero{1}.cm;
221 AeroData.v_CL = aero{1}.cl;
222 AeroData.v_CD = aero{1}.cd;
223 AeroData.v_elev = aero{1}.delta'; %CHECAR
224 AeroData.v_DCm_elev = aero{1}.dcm_sym;
225 AeroData.v_Cm_ad = aero{1}.cmad;
226 AeroData.v_Cmq = aero{1}.cmq(1);
227

228 Fit_CLA = fit(AeroData.v_alpha(1:13), AeroData.v_CL(1:13), 'poly1');


229 Fit_CDCL = fit(AeroData.v_CL(1:14),AeroData.v_CD(1:14),'poly2');
230 Fit_CMA = fit(AeroData.v_alpha(3:12), AeroData.v_Cm(3:12), 'poly1');
231 Fit_CMDE = fit(AeroData.v_elev(3:9), AeroData.v_DCm_elev(3:9), 'poly1');
232
233 CL0 = AeroData.v_CL(6);
234 CD0 = Fit_CDCL.p3;
235 CD0b = Fit_CDCL.p2;
236 CDCLS = Fit_CDCL.p1;
237 CM0 = AeroData.v_Cm(6);
238
239 CLA = Fit_CLA.p1; % grau^-1
240 CMA = Fit_CMA.p1; % grau^-1
241
242 %Dynamic Derivatives
243 CMAdot = AeroData.v_Cm_ad(6)*180/pi; % (rad/s)^-1
244 CLAdot = 0.0;
245 CMQ = AeroData.v_Cmq*180/pi; % (rad/s)^-1
246 CMDE = Fit_CMDE.p1; % grau^-1
247
248
249 %NOT USED
250 DCDG =0;
251 DCMG =0;
252
253
254
255 if(0)
256 figure%('units','normalized','outerposition',[0 0 1 1])
257

258 %CL to alpha


259 subplot(3,3,1)
260 plot(AeroData.v_alpha,AeroData.v_CL,'b','linewidth',2)
261 %legend('CL to AoA (deg)')
262 xlabel('$\alpha (deg)$','interpreter','latex','FontSize',14)
263 ylabel('$CL$','interpreter','latex','FontSize',18)
264 title('$CL to AoA (deg)$','interpreter','latex','FontSize',16)
265 xlim([min(AeroData.v_alpha) max(AeroData.v_alpha)])
266 grid on
267
268 %CD to alpha
269 subplot(3,3,2)
270 plot(AeroData.v_alpha,AeroData.v_CD,'b','linewidth',2)
271 %legend('CD to AoA (deg)')
272 xlabel('$\alpha (deg)$','interpreter','latex','FontSize',14)
273 ylabel('$CD$','interpreter','latex','FontSize',18)
274 title('$CD to AoA (deg)$','interpreter','latex','FontSize',16)
127

275 xlim([min(AeroData.v_alpha) max(AeroData.v_alpha)])


276 grid on
277
278 %CD to CL
279 subplot(3,3,3)
280 %adjust to plot only until AoA = 16 deg (because it`s the stall point)
281 plot(AeroData.v_CL(1:14),AeroData.v_CD(1:14),'b','linewidth',2)
282 %legend('CD to CL')
283 xlabel('$CL$','interpreter','latex','FontSize',14)
284 ylabel('$CD$','interpreter','latex','FontSize',18)
285 title('$CD to CL$','interpreter','latex','FontSize',16)
286 xlim([min(AeroData.v_CL) max(AeroData.v_CL)])
287 grid on
288
289
290 %Cm to alpha
291 subplot(3,3,4)
292 plot(AeroData.v_alpha,AeroData.v_Cm,'b','linewidth',2)
293 %legend('Cm to AoA (deg)')
294 xlabel('$\alpha (deg)$','interpreter','latex','FontSize',14)
295 ylabel('$Cm$','interpreter','latex','FontSize',18)
296 title('$Cm to AoA (deg)$','interpreter','latex','FontSize',16)
297 xlim([min(AeroData.v_alpha) max(AeroData.v_alpha)])
298 grid on
299
300 %Cm to CL
301 subplot(3,3,5)
302 %adjust to plot only until AoA = 14 deg (seen from Cm to AoA plot)
303 plot(AeroData.v_CL(1:13),AeroData.v_Cm(1:13),'b','linewidth',2)
304 %legend('Cm to CL')
305 xlabel('$CL$','interpreter','latex','FontSize',14)
306 ylabel('$Cm$','interpreter','latex','FontSize',18)
307 title('$Cm to CL$','interpreter','latex','FontSize',16)
308 xlim([min(AeroData.v_CL) max(AeroData.v_CL)])
309 grid on
310
311 %Cma_dot to alpha
312 subplot(3,3,6)
313 plot(AeroData.v_alpha,AeroData.v_Cm_ad,'b','linewidth',2)
314 %legend('Cma_dot to AoA (deg)')
315 xlabel('$\alpha (deg)$','interpreter','latex','FontSize',14)
316 ylabel('$Cma_(dot)$','interpreter','latex','FontSize',18)
317 title('$Cmad to AoA (deg)$','interpreter','latex','FontSize',16)
318 xlim([min(AeroData.v_alpha) max(AeroData.v_alpha)])
319 grid on
320

321
322 %Cm_de to elevator
323 subplot(3,3,7)
324 plot(AeroData.v_elev,AeroData.v_DCm_elev,'b','linewidth',2)
325 xlabel('$\elev (deg)$','interpreter','latex','FontSize',14)
326 ylabel('$DCm$','interpreter','latex','FontSize',18)
327 title('$Cmde to elevator (deg)$','interpreter','latex','FontSize',16)
328 xlim([min(AeroData.v_elev) max(AeroData.v_elev)])
329 grid on
330
331
332
128

333 figure
334 subplot(2,2,1); ...
plot(Fit_CLA,AeroData.v_alpha(1:13),AeroData.v_CL(1:13)); legend('CLA');
335 subplot(2,2,2); plot(Fit_CDCL,AeroData.v_CL(1:14),AeroData.v_CD(1:14)); ...
legend('CDCL');
336 subplot(2,2,3); ...
plot(Fit_CMA,AeroData.v_alpha(1:13),AeroData.v_Cm(1:13)); legend('CMA');
337 subplot(2,2,4); ...
plot(Fit_CMDE,AeroData.v_elev(2:9),AeroData.v_DCm_elev(2:9)); ...
legend('CMDE');
338 end
339
340
341
342
343 %Varying xcg to investigate trim solutions
344 if (0)
345 i = 1;
346 xcg_old = xcg; %save xcg
347 for xcg = (-1):0.1:1
348 Trim_Sol_vector(:,i) = [fsolveTRIM , xcg];
349 i=i+1;
350 end
351 figure
352 grid on; hold;
353 plot(Trim_Sol_vector(6,:) , ...
rad2deg(Trim_Sol_vector(1,:)),'r','linewidth',2)
354 plot(Trim_Sol_vector(6,:) , rad2deg(Trim_Sol_vector(2,:)),'linewidth',2)
355 plot(Trim_Sol_vector(6,:) , ...
rad2deg(Trim_Sol_vector(5,:)),'g','linewidth',2)
356 legend('alpha(deg)','theta(deg)','elevator(deg)')
357 xlabel('$xcg(m)$','interpreter','latex','FontSize',18)
358
359 xcg = xcg_old; %recovers the original xcg
360 end
361
362
363 %========= Power Curve ===== Lewis(pg.137)
364 %Varying initial speed to investigate Throttle Settings
365 if (0)
366 i = 1;
367 Vt_e_old = Vt_e; %save xcg
368 for Vt_e = 15*kmh2ms:1:150*kmh2ms
369 Trim_Sol_vector(:,i) = [fsolveTRIM , Vt_e];
370 i=i+1;
371 end
372 %Plot Power Curve (Throttle / Vt)
373 figure
374 grid on; hold;
375 plot(ms2kmh*Trim_Sol_vector(6,:) , Trim_Sol_vector(4,:),'b','linewidth',2)
376 title('$Power$ $Curve$','interpreter','latex','FontSize',18)
377 legend('Throttle Setting(0 to 1)')
378 xlabel('$Vt(km/h)$','interpreter','latex','FontSize',18)
379 ylabel('$Throttle$ (0 to 1)','interpreter','latex','FontSize',18)
380
381 %Plot necessary elev_deflection based on power curve
382 if(0)
383 figure
129

384 grid on; hold;


385 plot(ms2kmh*Trim_Sol_vector(6,:) , ...
rad2deg(Trim_Sol_vector(5,:)),'r','linewidth',2)
386 legend('elev-deflection(deg)')
387 xlabel('$Vt(km/h)$','interpreter','latex','FontSize',18)
388 ylabel('$Elevator(deg)$','interpreter','latex','FontSize',18)
389 end
390
391 Vt_e = Vt_e_old; %recovers the original xcg
392 end
393

394
395
396
397 % ======= TRIM Flight ==========
398 display('TRIM SOLUTION')
399 display('==================')
400 Trim_Sol = fsolveTRIM
401 alpha_e = Trim_Sol(1);
402 theta_e = Trim_Sol(2);
403 Q_e = Trim_Sol(3);
404 Throttle_e = Trim_Sol(4);
405 elev_def_e = Trim_Sol(5);
406
407
408 % ======== TEST SOLUTION =========
409 if(0)
410 display('TEST TRIM SOLUTION')
411 display('==================')
412 TestSolution
413 end
414
415
416
417 %Print initial parameters
418 if(1)
419 alpha_trim = rad2deg(alpha_e)
420 theta_trim = rad2deg(theta_e)
421 Q_trim = Q_e
422 Throttle_trim = Throttle_e
423 elev_deflection_trim = rad2deg(elev_def_e)
424 end
425
426
427
428 % ========== LINEARIZATION of 3DOF Equations =============
429 Xe = [Vt_e; alpha_e; theta_e; Q_e; h_e; 0];
430 Ue = [elev_def_e; Throttle_e];
431
432 % Vt = x(1);
433 % alpha = x(2);
434 % theta = x(3);
435 % Q = x(4);
436 % h = x(5);
437 % xi = x(6);
438
439
440 [A,B] = Linearization(Xe, Ue);
130

441 C = eye(6);
442 D = zeros(6,2);
443
444
445 %TRANSFER FUNCTION
446 sys = ss(A,B,C,D);
447 G = tf(sys);
448 % ======= EIGENVALUES of Linearized Equations ===========
449 eigenvalues = eig(A)
450 for i=1:6
451 eigenvalues(i);
452 end
453
454
455
456
457 %====================== CONTROLLERS DESIGN ========================
458 s = tf('s');
459 %excluding xi state
460 B0 = B; %saving old B from linearization to use in the linear SS model ...
in simulink
461 B = B(1:5,1:2);
462 C = eye(5);
463
464 %==== STABILITY AUGMENTATION SYSTEM (SAS) ======
465 Cq = [0 0 0 1 0];
466 [num,den] = ss2tf(A(1:5,1:5),B(1:5,1),Cq,0);
467 Gq = tf(num,den);
468

469 %Kq muito agressivo, fica Bang Bang


470 %Kq = -0.897; %trouxe os polos do modo fugoidal para o semi plano ...
esquerdo e
471 % amorteceu eles totalmente
472
473 Kq = -0.2;
474
475 %Integrating Kq feedback into the Aircraft Model
476 Acq = (A(1:5,1:5)-B(1:5,1)*Kq*Cq);
477 sys = ss(Acq,B,C,0);
478 Gfq = tf(sys); %NEW AICRAFT STATE SPACE
479

480
481
482 %========== Pitch SAS ==============
483 Ct = [0 0 1 0 0];
484 [sys] = ss(Acq(1:5,1:5),B(1:5,1),Ct,0);
485 Gtheta = tf(sys);
486
487 %Kt = -1.41; %deixa os polos do modo fugoidal totalmente amortecidos,
488 %com a penalidade de tornar os polos de periodo curto
489 %oscilatorios com amortecimento em torno de 0.7 a 0.8
490

491 Kt = -0.8;
492
493
494 %Integrating Kt feedback into the Aircraft Model
495 Act = (Acq(1:5,1:5)-B(1:5,1)*Kt*Ct);
496 [sys] = ss(Act,B,C,0);
131

497 Gftheta = tf(sys); %NEW AICRAFT STATE SPACE


498
499
500
501

502
503 %============== Altitude Hold Autopilot ===============
504 Ch = [0 0 0 0 1];
505 [sys] = ss(Act(1:5,1:5),B(1:5,1),Ch,0);
506 Gh = tf(sys);
507

508
509 %%%%%%%%%%%%%%%%%%%%%% ACHTUNG!!! Confirm that the controller signal is ...
correct
510 Ch_PI_Lead = -0.0002*(1+100*s)/s; %final
511
512

513 %sendo PI = K*(1+X*s)/s


514 % P = K *X
515 % I = K
516
517 %Integrating Altitude Hold Autopilot (Compensator) into the Aircraft Model
518 %#############Chose the controller##################
519 if(1)
520 [Aha,Bha,Cha,Dha] = tf2ss(Ch_PI_Lead.num{1},Ch_PI_Lead.den{1});
521
522
523 A11 = Act - B(1:5,1)*Dha*Ch;
524 A12 = B(1:5,1)*Cha;
525 A21 = -Bha*Ch;
526 A22 = Aha;
527
528
529 Ac3 = [A11 A12; A21 A22];
530

531 B = [B(1,1)*Dha B(1,2)*Dha;


532 B(2,1)*Dha B(2,2)*Dha;
533 B(3,1)*Dha B(3,2)*Dha;
534 B(4,1)*Dha B(4,2)*Dha;
535 B(5,1)*Dha B(5,2)*Dha;
536 Bha(1) 0 ];
537 % 0 0 ];
538
539 %Cch = eye(7);
540 Cch = eye(6);
541 end
542
543 if(0)
544 Aha = 0;
545 Bha = 0;
546 Cha = 0;
547 Dha = Kh;
548 Ac3 = (Act-B(1:5,1)*Dha*Ch);
549 B = B*Dha;
550 Cch = eye(5);
551 end
552
553
132

554 sys = ss(Ac3,B,Cch,0); %NEW AICRAFT STATE SPACE


555 Gch = tf(sys);
556
557
558 %============== Throttle Hold Autopilot ========================
559 %Augmented system with SAS (q, theta regulator and h compensator)
560 CVt = [1 0 0 0 0 0 ];
561 sys = ss(Ac3,B(1:6,2),CVt,0);
562
563 % CVt = [1 0 0 0 0 ];
564 % sys = ss(Ac3,B(1:5,2),CVt,0);
565
566 GVt = tf(sys);
567
568 CVt_PI = -0.04*(1+50*s)/s; %final
569
570

571 %Natural Frequency, Damping Ration,


572 % Time constant and Poles of specific TF
573 if(0)
574 [Wn,Zeta,Poles] = damp(GVt)
575 tau = 1./(Zeta.*Wn)
576 damp(GVt)
577 pzmap(GVt)
578 end
579
580
581
582

583 %========= SIMULINK Control Block input ==============


584 %=== Altitude Hold Autopilot (h Controller) ===
585 Ch_NUM = Ch_PI_Lead.num{1};
586 Ch_DEN = Ch_PI_Lead.den{1};
587
588 %=== MACH Hold Autopilot (Vt Controller) ===
589 CVt_NUM = CVt_PI.num{1};
590 CVt_DEN = CVt_PI.den{1};
591
592 %//////////////////////////////////////////////////////////////////////////
593
594

595 %%
596 %==========================================================================
597 %Run SIMULINK model - Resposta autonoma aos controles
598 delta_e = (0)*pi/180;
599 delta_t = 0.0;
600 delta_theta = (0)*pi/180;
601
602
603
604
605 %FLIGHT Initial Conditions ======= - Resposta autonoma as pertubacoes
606 Vt0 = Vt_e + 0*kmh2ms; %km/h
607 h0 = h_e + 0; %m
608 alpha0 = alpha_e + deg2rad(0); %deg
609 theta0 = theta_e + deg2rad(0); %deg
610 Q0 = Q_e + 0; %rad/s
611
133

612
613 X0_linear = [ (Vt0-Vt_e) ; (alpha0-alpha_e) ; (theta0 - theta_e);...
614 (Q0 - Q_e); (h0-h_e); (0) ];
615
616

617 paramNameValStruct.SaveOutput = 'on';


618 paramNameValStruct.OutputSaveName = 'youtNew';
619 paramNameValStruct.StartTime = '0';
620 paramNameValStruct.StopTime = '200';
621
622 SimOut = sim('UTX_SIMULATION',paramNameValStruct);
623
624 %%
625
626 % PLOT Results section
627 yout = SimOut.get('youtNew');
628 tout = SimOut.get('tout');
629
630 Plot_Func(yout,tout);
631
632
633 %%

10.2.2 Código de Linearização das Equações

1 function [A,B] = Linearization(Xe, Ue)


2
3 n = length(Xe);
4 m = length(Ue);
5
6 A = zeros(n,n);
7 B = zeros(n,m);
8
9
10 %DELTA X
11 delta_x = diag( [0.1; 1E-5; 1E-5; 1E-5; 0.1; 0.1] );
12
13 % delta = 1E-3;
14 % for i=1:n
15 % for j=1:n
16 % if(i==j)
17 % delta_x(i,j) = delta;
18 % else
19 % delta_x(i,j) = 0;
20 % end
21 % end
22 % end
23
24
25 %DELTA U
26 delta_u = diag( [1E-5 ; 1E-5] );
27
28 % delta_u = zeros(m,m);
134

29 % delta = 1E-3;
30 % for i=1:m
31 % for j=1:m
32 % if(i==j)
33 % delta_u(i,j) = delta;
34 % else
35 % delta_u(i,j) = 0;
36 % end
37 % end
38 % end
39

40
41
42 %A
43 for j=1:n
44 A(:,j) = Linear_Longitudinal_Dynamic(Xe+delta_x(:,j),Ue) -...
45 Linear_Longitudinal_Dynamic(Xe,Ue);
46
47 A(:,j) = A(:,j)/delta_x(j,j);
48 end
49
50 %B
51 for j=1:m
52 B(:,j) = Linear_Longitudinal_Dynamic(Xe,Ue+delta_u(:,j)) -...
53 Linear_Longitudinal_Dynamic(Xe,Ue);
54
55 B(:,j) = B(:,j)/delta_u(j,j);
56 end
57

58
59 end

10.2.3 Código de Solução para o Ponto de Balanço

Solução das equações não-lineares da dinâmica longitudinal através de métodos numé-


ricos.

1 function Trim_Sol = fsolveTRIM


2 %clc
3
4 %Solve config
5 options = optimset('Display','iter'); % Option to display output
6 options.MaxFunEvals = 2000;
7 options.MaxIter = 1000;
8 options.TolFun = 1E-10;
9 options.TolX = 1E-10;
10 options.Algorithm = 'trust-region-dogleg'; %Default
11 %options.Algorithm = 'trust-region-reflective';
12 %options.Algorithm = {'levenberg-marquardt',.005} %Default lambda = 0.01
13
14 %Starting guess to the solution
15 X0 = [0.02 0.02 0 0.9 -0.1];
16
135

17 Trim_Sol = fsolve(@myfun, X0, options); % Call solver


18
19 end
20
21

22
23 function F = myfun(x)
24
25 global m;
26 global g;
27 global Iyy;
28 global S;
29 global cbar;
30 global Thrust_static;
31 global DTDV;
32 global Ze;
33 global CL0;
34 global CLA;
35 global CLAdot;
36 global CD0;
37 global DCDG;
38 global CDCLS;
39 global CM0;
40 global CMA;
41 global CMAdot;
42 global CMQ;
43 global CMDE;
44 global DCMG;
45 global xcg;
46 global Vt_e;
47 global h_e;
48 global CD0b;
49 global Engine_Power_a;
50 global Engine_Power_b;
51 global Thrust_static_a;
52 global Thrust_static_b;
53 global max_RPM;
54
55
56 %State variables
57 alpha = x(1);
58 theta = x(2);
59 Q = x(3);
60 Throttle = x(4);
61 elev = x(5);
62

63
64
65 % %AIR DENSITY (RHO) from the COESA MODEL
66 [T, a, P, rho] = atmosisa(h_e);
67 qbar = (0.5)*rho*(Vt_e^2); %Dynamic Pressure
68 qS = qbar*S;
69
70
71 %Conversion constants
72 kmh2ms = 1/3.6;
73 ms2kmh = 3.6;
74 mach2kmh = 1234.8;
136

75 in2m = 0.0254;
76 ft2m = 0.3048;
77 HPtoW = 745.7;
78
79 gamma = theta - alpha;
80
81 rad2deg = 57.2957795; %function rad2deg(x) not supported inside SIMULINK
82 alphadeg = rad2deg*(alpha);
83 elevdeg = rad2deg*(elev);
84
85 %Aerodynamic Coefficients
86 CL = CL0 + CLA*alphadeg;
87 CD = DCDG + CD0 + CDCLS*CL^2;% + CD0b*CL;
88 CM = DCMG + CM0 + CMA*alphadeg + CMDE*elevdeg + CL*(xcg-(0.25));
89
90 % %Engine Coefficients
91 % RPM = max_RPM*max(Throttle,0);
92 % Thrust_static = Thrust_static_a*RPM + Thrust_static_b;
93 % Thrust_static = Thrust_static*g; %N
94 % Engine_power = Engine_Power_a*RPM + Engine_Power_b;
95 % DTDV = -(Engine_power*HPtoW)/(Vt_e^2);
96
97

98 %Aerodynamic Forces
99 Lift = CL*qS;
100 Drag = CD*qS;
101 Thrust = (Thrust_static + Vt_e*DTDV)*max(Throttle,0);
102
103

104
105 %3DOF Equations
106 Vt_dot = ((Thrust*cos(alpha) - Drag)/m) - g*sin(gamma);
107
108 alpha_dot = (-Thrust*sin(alpha) - Lift + m*(Vt_e*Q + g*cos(gamma))) / ...
(m*Vt_e + qS*CLAdot);
109
110 theta_dot = Q;
111
112 D = (0.5*cbar*(CMQ*Q + CMAdot*alpha_dot)) / Vt_e; %Pitch Damping
113
114 Q_dot = (qS*cbar*(CM + D) + Thrust*Ze) / Iyy; %Pitch Acc.
115
116 h_dot = Vt_e*sin(gamma); %Vertical speed
117
118
119

120 F=[Vt_dot alpha_dot theta_dot Q_dot h_dot];


121
122
123 end

10.2.4 Código do modelo não-linear do bloco apresentado na figura 6.3


137

1 function [Vt_dot,alpha_dot, theta_dot, Q_dot, h_dot, gamma, Aero_F] = ...


UAV_model(elev, Throttle, Joy_btn, rho, Vt, alpha, theta, Q, ...
coeff_vector)
2
3 %Mux conversion
4 m = coeff_vector(1);
5 g = coeff_vector(2);
6 Iyy = coeff_vector(3);
7 S = coeff_vector(4);
8 cbar = coeff_vector(5);
9 Thrust_static = coeff_vector(6);
10 DTDV = coeff_vector(7);
11 Ze = coeff_vector(8);
12 CL0 = coeff_vector(9);
13 CLA = coeff_vector(10);
14 CLAdot = coeff_vector(11);
15 CD0 = coeff_vector(12);
16 DCDG = coeff_vector(13);
17 CDCLS = coeff_vector(14);
18 CM0 = coeff_vector(15);
19 CMA = coeff_vector(16);
20 CMAdot = coeff_vector(17);
21 CMQ = coeff_vector(18);
22 CMDE = coeff_vector(19);
23 DCMG = coeff_vector(20);
24 xcg = coeff_vector(21);
25 CD0b = coeff_vector(22);
26 % Engine_Power_a = coeff_vector(23);
27 % Engine_Power_b = coeff_vector(24);
28 % Thrust_static_a = coeff_vector(25);
29 % Thrust_static_b = coeff_vector(26);
30 % max_RPM = coeff_vector(27);
31
32
33

34
35
36
37 % %AIR DENSITY (RHO) from the COESA MODEL
38 qbar = (0.5)*rho*(Vt^2); %Dynamic Pressure
39 qS = qbar*S;
40
41
42
43 gamma = theta - alpha;
44

45 rad2deg = 57.2957795; %function rad2deg(x) not supported inside SIMULINK


46 alphadeg = rad2deg*(alpha);
47 elevdeg = rad2deg*(elev);
48
49 %Aerodynamic Coefficients
50 CL = CL0 + CLA*alphadeg;
51 CD = CD0 + CDCLS*CL^2;%+ CD0b*CL;
52 CM = CM0 + CMA*alphadeg + CMDE*elevdeg + CL*(xcg-0.25);
53
54
55 %Aerodynamic Forces
56 Lift = CL*qS;
138

57 Drag = CD*qS;
58 Thrust = (Thrust_static + Vt*DTDV)*max(Throttle,0);
59 Weight = m*g;
60
61 Aero_F = [Lift; Drag; Thrust];
62 AeroEff = Lift/Drag; %Lift to Drag ratio or Aerodynamic ...
Efficiency NOT USED
63
64
65
66

67 %3DoF Equations
68 Vt_dot = [(Thrust*cos(alpha) - Drag)/m] - g*sin(gamma);
69
70 alpha_dot = (-Thrust*sin(alpha) - Lift + m*(Vt*Q + g*cos(gamma))) / ...
(m*Vt + qS*CLAdot);
71

72 theta_dot = Q;
73
74 D = [0.5*cbar*(CMQ*Q + CMAdot*alpha_dot)] / Vt; %Pitch Damping
75 Q_dot = (qS*cbar*(CM + D) + Thrust*Ze) / Iyy; %Pitch Acc.
76
77

78 h_dot = Vt*sin(gamma); %Vertical speed


79
80 x_dot = Vt*cos(gamma); %Horizontal speed
81
82
83 %gamma_dot = (g/(Weight*Vt))*[Thrust*sin(alpha) + Lift - ...
Weight*cos(gamma)]; %From D. Hull book

10.3 Anexo C - Script de cálculos para configuração da simulação de voo no X-Plane e


interface com o MATLAB/SIMULINK

Este é o código em linguagem MATLAB que insere todos os dados necessários para a
simulação de voo do VANT UT-X no X-Plane. Este script configura parâmetros iniciais para os
controladores presentes no diagrama de blocos do SIMULINK (figura 7.17).

1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2 % UAV Mathematical Modeling %
3 % Willian Rigon Silva %
4 % Prof. Dr. Andre Luis da Silva %
5 % UFSM - Eng. de Controle e Automacao %
6 % May, 2015 %
7 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8
9 warning ('off') %ACHTUNG! only use 'off' if you know what you're doing.
10 clear all
11 close all
12 clc
13
139

14 global m;
15 global g;
16 global Iyy;
17 global S;
18 global cbar;
19 global Thrust_static;
20 global DTDV;
21 global Ze;
22 global CL0;
23 global CLA;
24 global CLAdot;
25 global CD0;
26 global DCDG;
27 global CDCLS;
28 global CM0;
29 global CMA;
30 global CMAdot;
31 global CMQ;
32 global CMDE;
33 global DCMG;
34 global xcg;
35 global Vt_e;
36 global alpha_e;
37 global theta_e;
38 global Q_e;
39 global Throttle_e;
40 global elev_def_e;
41 global h_e;
42 global CD0b;
43 global Engine_Power_a;
44 global Engine_Power_b;
45 global Thrust_static_a;
46 global Thrust_static_b;
47 global max_RPM;
48

49 %=====Conversion constants
50 kmh2ms = 1/3.6;
51 ms2kmh = 3.6;
52 mach2kmh = 1234.8;
53 in2m = 0.0254;
54 ft2m = 0.3048;
55 HPtoW = 745.7;
56 ms2knots = 1.94384;
57 kg2lb = 2.20462;
58 %=========================
59

60
61
62 %University of Toronto Xplorer (UTX) UAV
63 %%=========================================================
64 %FLIGHT Initial Vt e h =======
65 Vt_e = 0.06*mach2kmh*kmh2ms; %km/h
66 h_e = 200; %m
67
68 %================= Constant Aircraft Parameters ===================
69 g = 9.80665; %m/s^2
70 m = 9.57; %Kg
71 S = 0.485; %m^2
140

72 cbar = 0.24498; %m
73
74 xcg = 0.25; %Adimensional
75 %Iyy = 3.17; %Old solution
76 %Iyy = 3.33; %New solution
77 %Iyy = 2.6; %X-Plane
78 Iyy = 3.33; %Kg m^2
79
80
81 %REYNOLDS NUMBER FOR DATCOM INPUT, depending on Vt_e
82 %Air density
83 [T, A, P, p_Re] = atmosisa(h_e);
84 %Air viscosity - 25degC
85 mu_Re= 1.85E-5;
86 %cbar
87 D_Re = 0.2448;
88 %Velocity
89 V_Re = Vt_e;
90 %Reynolds Number
91 Reynolds_Number = p_Re*V_Re*D_Re / mu_Re
92
93 %Reynolds Number calculus for simulation in DATCOM
94 if(0)
95 Rnum_Navion = 1.07E6 %ft^-1
96 Rnum_Navion = 1.07E6/ft2m
97 cbarNavion = 5.7*ft2m
98 Rnum_ASW20 = 0.624E6 %ft^-1
99 Rnum_ASW20 = 0.624E6/ft2m
100 cbarASW20 = 2.554*ft2m
101
102 cbarUAV = 0.24498
103 %RnumUAV = 0.197E6
104 RnumUAV_ASW20 = (cbarUAV/cbarASW20)*Rnum_ASW20
105 RnumUAV_Navion = (cbarUAV/cbarNavion)*Rnum_Navion
106

107 end
108
109
110
111 %Actuator Dynamics - 0.12s time constant
112 Elevator_NUM = [8.333];
113 Elevator_DEN = [1 8.333];
114 G_elev = tf(Elevator_NUM,Elevator_DEN); %to be used in SISOTOOL
115 [Aelev,Belev,Celev,Delev] = tf2ss(G_elev.num{1},G_elev.den{1});
116
117

118 %Engine Dynamics - 0.12s time constant


119 Engine_NUM = [8.333];
120 Engine_DEN = [1 8.333];
121
122
123

124
125 %ENGINE MODEL ======================
126 % 0 = Dynamic model
127 % 1 = first order model
128 EngineModel = 1;
129
141

130
131
132 if(EngineModel==0)
133 %Engine Reference - USC Report and ...
http://personal.osi.hu/fuzesisz/strc_eng/
134 %Static Thrust max at 8200 RPM ---> 12lbs=5.44 as in USC Report
135 %RPM - StaticThrust(Kg) - HP
136 Engine_model = [1500 0.18 0.015;
137 2000 0.32 0.035;
138 3000 0.72 0.12;
139 4000 1.29 0.284;
140 5000 2 0.556;
141 6000 2.91 0.961;
142 6500 3.42 1.222;
143 7000 3.96 1.527;
144 7500 4.55 1.878;
145 8000 5.18 2.279;
146 8200 5.44 2.454];
147 figure;
148 subplot(2,2,1);
149 plot(Engine_model(:,1), Engine_model(:,2),'b','linewidth',2);
150 xlabel('$\RPM$','interpreter','latex','FontSize',14)
151 ylabel('$StaticThrust(Kg)$','interpreter','latex','FontSize',18)
152 title('$StaticThrustToRPM$','interpreter','latex','FontSize',16)
153 grid on;
154 subplot(2,2,2);
155 plot(Engine_model(:,1), Engine_model(:,3),'r','linewidth',2);
156 xlabel('$\RPM$','interpreter','latex','FontSize',14)
157 ylabel('$HP$','interpreter','latex','FontSize',18)
158 title('$HPtoRPM$','interpreter','latex','FontSize',16)
159 grid on;
160
161 Fit_STtoRPM = fit(Engine_model(:,1), Engine_model(:,2), 'poly1');
162 Fit_HPtoRPM = fit(Engine_model(:,1), Engine_model(:,3), 'poly1');
163

164 subplot(2,2,3); plot(Fit_STtoRPM, Engine_model(:,1), ...


Engine_model(:,2)); legend('STtoRPM');
165 grid on
166 subplot(2,2,4); plot(Fit_HPtoRPM, Engine_model(:,1), ...
Engine_model(:,3)); legend('HPtoRPM');
167 grid on
168
169 Thrust_static_a = Fit_STtoRPM.p1;
170 Thrust_static_b = Fit_STtoRPM.p2;
171 Engine_Power_a = Fit_HPtoRPM.p1;
172 Engine_Power_b = Fit_HPtoRPM.p2;
173 max_RPM = 8200;
174
175 %TEST if FIT is correct
176 if (0)
177 RPM = max_RPM*0.5
178 Thrust_static = Thrust_static_a*RPM + Thrust_static_b
179 Thrust_static = Thrust_static*g %N
180 Engine_power = Engine_Power_a*RPM + Engine_Power_b
181 Engine_power = Engine_power*HPtoW
182 DTDV = -(Engine_power)/(Vt_e^2)
183 Thrust = (Thrust_static + Vt_e*DTDV)
184 end
142

185 end
186
187
188
189 %Engine Model Simplified
190 if(EngineModel==1)
191 %Electric motor specs from USC report - 380RPM / V - 6S battery 22.2V
192 max_RPM = 22.2*380;
193 %calculate theoretical max speed, assuming 80% propeller's aerodynamic ...
efficiency
194 prop_pitch = 10*in2m;
195 prop_eff = 0.7;
196 max_speed = ((max_RPM*60)*prop_pitch); %m/h
197 max_speed = (max_speed/1000)*prop_eff; %Km/h
198
199 Thrust_static = 5.44311*g; %N --> 12lbs is 5.44311 K
200 DTDV = -Thrust_static/(max_speed*kmh2ms);
201 Ze = 0.0; %2 ft; % - estimated thrust vector ...
distance from the cg vector
202
203 Vt_max = max_speed*kmh2ms;
204 Vt_max_knots = Vt_max*ms2knots;
205

206 end
207
208
209 %AERODYNAMIC DERIVATIVES at alpha = 0
210 %AeroData = readDATCOM; %function that reads the .XLS table of
211 %DATCOM output data
212
213 aero = datcomimport('F:\DATCOM\UTX_Model\UTX_Model_TEST.out',true,2,6);
214 AeroData.v_alpha = aero{1}.alpha';
215 AeroData.v_Cm = aero{1}.cm;
216 AeroData.v_CL = aero{1}.cl;
217 AeroData.v_CD = aero{1}.cd;
218 AeroData.v_elev = aero{1}.delta'; %CHECAR
219 AeroData.v_DCm_elev = aero{1}.dcm_sym;
220 AeroData.v_Cm_ad = aero{1}.cmad;
221 AeroData.v_Cmq = aero{1}.cmq(1);
222
223 Fit_CLA = fit(AeroData.v_alpha(1:13), AeroData.v_CL(1:13), 'poly1');
224 Fit_CDCL = fit(AeroData.v_CL(1:14),AeroData.v_CD(1:14),'poly2');
225 Fit_CMA = fit(AeroData.v_alpha(3:12), AeroData.v_Cm(3:12), 'poly1');
226 Fit_CMDE = fit(AeroData.v_elev(3:9), AeroData.v_DCm_elev(3:9), 'poly1');
227
228 CL0 = AeroData.v_CL(6);
229 CD0 = Fit_CDCL.p3;
230 CD0b = Fit_CDCL.p2;
231 CDCLS = Fit_CDCL.p1;
232 CM0 = AeroData.v_Cm(6);
233
234 CLA = Fit_CLA.p1; % grau^-1
235 CMA = Fit_CMA.p1; % grau^-1
236
237 %Dynamic Derivatives
238 CMAdot = AeroData.v_Cm_ad(6)*180/pi; % (rad/s)^-1
239 CLAdot = 0.0;
240 CMQ = AeroData.v_Cmq*180/pi; % (rad/s)^-1
143

241 CMDE = Fit_CMDE.p1; % grau^-1


242
243
244 %NOT USED
245 DCDG =0;
246 DCMG =0;
247
248
249
250 if(0)
251 figure%('units','normalized','outerposition',[0 0 1 1])
252
253 %CL to alpha
254 subplot(3,3,1)
255 plot(AeroData.v_alpha,AeroData.v_CL,'b','linewidth',2)
256 %legend('CL to AoA (deg)')
257 xlabel('$\alpha (deg)$','interpreter','latex','FontSize',14)
258 ylabel('$CL$','interpreter','latex','FontSize',18)
259 title('$CL to AoA (deg)$','interpreter','latex','FontSize',16)
260 xlim([min(AeroData.v_alpha) max(AeroData.v_alpha)])
261 grid on
262
263 %CD to alpha
264 subplot(3,3,2)
265 plot(AeroData.v_alpha,AeroData.v_CD,'b','linewidth',2)
266 %legend('CD to AoA (deg)')
267 xlabel('$\alpha (deg)$','interpreter','latex','FontSize',14)
268 ylabel('$CD$','interpreter','latex','FontSize',18)
269 title('$CD to AoA (deg)$','interpreter','latex','FontSize',16)
270 xlim([min(AeroData.v_alpha) max(AeroData.v_alpha)])
271 grid on
272
273 %CD to CL
274 subplot(3,3,3)
275 %adjust to plot only until AoA = 16 deg (because it`s the stall point)
276 plot(AeroData.v_CL(1:14),AeroData.v_CD(1:14),'b','linewidth',2)
277 %legend('CD to CL')
278 xlabel('$CL$','interpreter','latex','FontSize',14)
279 ylabel('$CD$','interpreter','latex','FontSize',18)
280 title('$CD to CL$','interpreter','latex','FontSize',16)
281 xlim([min(AeroData.v_CL) max(AeroData.v_CL)])
282 grid on
283
284
285 %Cm to alpha
286 subplot(3,3,4)
287 plot(AeroData.v_alpha,AeroData.v_Cm,'b','linewidth',2)
288 %legend('Cm to AoA (deg)')
289 xlabel('$\alpha (deg)$','interpreter','latex','FontSize',14)
290 ylabel('$Cm$','interpreter','latex','FontSize',18)
291 title('$Cm to AoA (deg)$','interpreter','latex','FontSize',16)
292 xlim([min(AeroData.v_alpha) max(AeroData.v_alpha)])
293 grid on
294
295 %Cm to CL
296 subplot(3,3,5)
297 %adjust to plot only until AoA = 14 deg (seen from Cm to AoA plot)
298 plot(AeroData.v_CL(1:13),AeroData.v_Cm(1:13),'b','linewidth',2)
144

299 %legend('Cm to CL')


300 xlabel('$CL$','interpreter','latex','FontSize',14)
301 ylabel('$Cm$','interpreter','latex','FontSize',18)
302 title('$Cm to CL$','interpreter','latex','FontSize',16)
303 xlim([min(AeroData.v_CL) max(AeroData.v_CL)])
304 grid on
305
306 %Cma_dot to alpha
307 subplot(3,3,6)
308 plot(AeroData.v_alpha,AeroData.v_Cm_ad,'b','linewidth',2)
309 %legend('Cma_dot to AoA (deg)')
310 xlabel('$\alpha (deg)$','interpreter','latex','FontSize',14)
311 ylabel('$Cma_(dot)$','interpreter','latex','FontSize',18)
312 title('$Cmad to AoA (deg)$','interpreter','latex','FontSize',16)
313 xlim([min(AeroData.v_alpha) max(AeroData.v_alpha)])
314 grid on
315

316
317 %Cm_de to elevator
318 subplot(3,3,7)
319 plot(AeroData.v_elev,AeroData.v_DCm_elev,'b','linewidth',2)
320 xlabel('$\elev (deg)$','interpreter','latex','FontSize',14)
321 ylabel('$DCm$','interpreter','latex','FontSize',18)
322 title('$Cmde to elevator (deg)$','interpreter','latex','FontSize',16)
323 xlim([min(AeroData.v_elev) max(AeroData.v_elev)])
324 grid on
325
326
327

328 figure
329 subplot(2,2,1); ...
plot(Fit_CLA,AeroData.v_alpha(1:13),AeroData.v_CL(1:13)); legend('CLA');
330 subplot(2,2,2); plot(Fit_CDCL,AeroData.v_CL(1:14),AeroData.v_CD(1:14)); ...
legend('CDCL');
331 subplot(2,2,3); ...
plot(Fit_CMA,AeroData.v_alpha(1:13),AeroData.v_Cm(1:13)); legend('CMA');
332 subplot(2,2,4); ...
plot(Fit_CMDE,AeroData.v_elev(2:9),AeroData.v_DCm_elev(2:9)); ...
legend('CMDE');
333 end
334

335
336
337
338
339

340 %Varying xcg to investigate trim solutions


341 if (0)
342 i = 1;
343 xcg_old = xcg; %save xcg
344 for xcg = (-1):0.1:1
345 Trim_Sol_vector(:,i) = [fsolveTRIM , xcg];
346 i=i+1;
347 end
348 figure
349 grid on; hold;
350 plot(Trim_Sol_vector(6,:) , ...
rad2deg(Trim_Sol_vector(1,:)),'r','linewidth',2)
145

351 plot(Trim_Sol_vector(6,:) , rad2deg(Trim_Sol_vector(2,:)),'linewidth',2)


352 plot(Trim_Sol_vector(6,:) , ...
rad2deg(Trim_Sol_vector(5,:)),'g','linewidth',2)
353 legend('alpha(deg)','theta(deg)','elevator(deg)')
354 xlabel('$xcg(m)$','interpreter','latex','FontSize',18)
355
356 xcg = xcg_old; %recovers the original xcg
357 end
358
359
360 %========= Power Curve ===== Lewis(pg.137)
361 %Varying initial speed to investigate Throttle Settings
362 if (0)
363 i = 1;
364 Vt_e_old = Vt_e; %save xcg
365 for Vt_e = 15*kmh2ms:1:150*kmh2ms
366 Trim_Sol_vector(:,i) = [fsolveTRIM , Vt_e];
367 i=i+1;
368 end
369 %Plot Power Curve (Throttle / Vt)
370 figure
371 grid on; hold;
372 plot(ms2kmh*Trim_Sol_vector(6,:) , Trim_Sol_vector(4,:),'b','linewidth',2)
373 title('$Power$ $Curve$','interpreter','latex','FontSize',18)
374 legend('Throttle Setting(0 to 1)')
375 xlabel('$Vt(km/h)$','interpreter','latex','FontSize',18)
376 ylabel('$Throttle$ (0 to 1)','interpreter','latex','FontSize',18)
377
378 %Plot necessary elev_deflection based on power curve
379 if(0)
380 figure
381 grid on; hold;
382 plot(ms2kmh*Trim_Sol_vector(6,:) , ...
rad2deg(Trim_Sol_vector(5,:)),'r','linewidth',2)
383 legend('elev-deflection(deg)')
384 xlabel('$Vt(km/h)$','interpreter','latex','FontSize',18)
385 ylabel('$Elevator(deg)$','interpreter','latex','FontSize',18)
386 end
387
388 Vt_e = Vt_e_old; %recovers the original xcg
389 end
390
391
392
393
394

395
396
397 % ======= TRIM Flight ==========
398 display('TRIM SOLUTION')
399 display('==================')
400 Trim_Sol = fsolveTRIM
401 alpha_e = Trim_Sol(1);
402 theta_e = Trim_Sol(2);
403 Q_e = Trim_Sol(3);
404 Throttle_e = Trim_Sol(4);
405 elev_def_e = Trim_Sol(5);
406
146

407
408 % ======== TEST SOLUTION =========
409 if(0)
410 display('TEST TRIM SOLUTION')
411 display('==================')
412 TestSolution
413 end
414
415
416
417 %Print initial parameters
418 if(0)
419 alpha_trim = rad2deg(alpha_e)
420 theta_trim = rad2deg(theta_e)
421 Q_trim = Q_e
422 Throttle_trim = Throttle_e
423 elev_deflection_trim = rad2deg(elev_def_e)
424 end
425
426
427 % %AIR DENSITY (RHO) from the COESA MODEL
428 [T, a, P, rho] = atmosisa(h_e);
429 qbar = (0.5)*rho*(Vt_e^2); %Dynamic Pressure
430 qS = qbar*S;
431
432 alphadeg = rad2deg(alpha_e);
433 elevdeg = rad2deg(elev_def_e);
434 %Aerodynamic Coefficients
435 CL = CL0 + CLA*alphadeg
436 CD = DCDG + CD0 + CDCLS*CL^2 %+ CD0b*CL;
437 CM = DCMG + CM0 + CMA*alphadeg + CMDE*elevdeg;
438 %Aerodynamic Forces
439 Lift = CL*qS;
440 Drag = CD*qS;
441 Thrust = (Thrust_static + Vt_e*DTDV)*Throttle_e;
442
443 Lift = Lift*kg2lb/g
444 Drag = CD*qS*kg2lb/g
445 Thrust = (Thrust_static + Vt_e*DTDV)*Throttle_e*kg2lb/g
446 Max_Thrust = (Thrust_static + Vt_max*DTDV)*kg2lb/g;
447 Vt_e_knots = Vt_e*ms2knots;
448 Static_Thrust_lb = 5.44311*kg2lb;
449
450 % ========== LINEARIZATION of 3DOF Equations =============
451 Xe = [Vt_e; alpha_e; theta_e; Q_e; h_e; 0];
452 Ue = [elev_def_e; Throttle_e];
453
454 % Vt = x(1);
455 % alpha = x(2);
456 % theta = x(3);
457 % Q = x(4);
458 % h = x(5);
459 % xi = x(6);
460
461
462 [A,B] = Linearization(Xe, Ue);
463 C = eye(6);
464 D = zeros(6,2);
147

465
466
467 %TRANSFER FUNCTION
468 sys = ss(A,B,C,D);
469 G = tf(sys);
470 % ======= EIGENVALUES of Linearized Equations ===========
471 eigenvalues = eig(A)
472 for i=1:6
473 eigenvalues(i);
474 end
475

476
477
478 %====================== CONTROLLERS DESIGN ========================
479 s = tf('s');
480 %excluding xi state
481 B0 = B; %saving old B from linearization to use in the linear SS model ...
in simulink
482 B = B(1:5,1:2);
483 C = eye(5);
484
485 %==== STABILITY AUGMENTATION SYSTEM (SAS) ======
486 Cq = [0 0 0 1 0];
487 [num,den] = ss2tf(A(1:5,1:5),B(1:5,1),Cq,0);
488 Gq = tf(num,den);
489
490 %Kq muito agressivo, fica Bang Bang
491 %Kq = -0.897; %trouxe os polos do modo fugoidal para o semi plano ...
esquerdo e
492 % amorteceu eles totalmente
493 Kq = -0.2;
494
495 %Integrating Kq feedback into the Aircraft Model
496 Acq = (A(1:5,1:5)-B(1:5,1)*Kq*Cq);
497 sys = ss(Acq,B,C,0);
498 Gfq = tf(sys); %NEW AICRAFT STATE SPACE
499
500
501
502 %========== Pitch SAS ==============
503 Ct = [0 0 1 0 0];
504 [sys] = ss(Acq(1:5,1:5),B(1:5,1),Ct,0);
505 Gtheta = tf(sys);
506
507 Kt = -0.8; %deixa os polos do modo fugoidal totalmente amortecidos,
508 %com a penalidade de tornar os polos de periodo curto
509 %oscilatorios com amortecimento em torno de 0.7 a 0.8
510
511
512
513 %Integrating Kt feedback into the Aircraft Model
514 Act = (Acq(1:5,1:5)-B(1:5,1)*Kt*Ct);
515 [sys] = ss(Act,B,C,0);
516 Gftheta = tf(sys); %NEW AICRAFT STATE SPACE
517
518
519
520
148

521
522 %============== Altitude Hold Autopilot ===============
523 Ch = [0 0 0 0 1];
524 [sys] = ss(Act(1:5,1:5),B(1:5,1),Ch,0);
525 Gh = tf(sys);
526
527
528 %%%%%%%%%%%%%%%%%%%%%% ACHTUNG!!! Confirm that the controller signal is ...
correct
529
530 Ch_PI_Lead = -0.0002*(1+100*s)/s; %final
531
532
533 %Integrating Altitude Hold Autopilot (Compensator) into the Aircraft Model
534 %Chose the controller
535 [Aha,Bha,Cha,Dha] = tf2ss(Ch_PI_Lead.num{1},Ch_PI_Lead.den{1});
536

537 A11 = Act - B(1:5,1)*Dha*Ch;


538 A12 = B(1:5,1)*Cha;
539 A21 = -Bha*Ch;
540 A22 = Aha;
541
542

543 Ac3 = [A11 A12; A21 A22];


544
545 B = [B(1,1)*Dha B(1,2)*Dha;
546 B(2,1)*Dha B(2,2)*Dha;
547 B(3,1)*Dha B(3,2)*Dha;
548 B(4,1)*Dha B(4,2)*Dha;
549 B(5,1)*Dha B(5,2)*Dha;
550 Bha(1) 0 ];
551 % Bha(2) 0 ];
552
553 Cch = eye(6);
554

555 sys = ss(Ac3,B,Cch,0); %NEW AICRAFT STATE SPACE


556 Gch = tf(sys);
557
558
559
560

561
562
563
564 %============== Throttle Hold Autopilot ========================
565 %Augmented system with SAS (q, theta regulator and h compensator)
566 CVt = [1 0 0 0 0 0 ];
567 sys = ss(Ac3,B(1:6,2),CVt,0);
568 GVt = tf(sys);
569
570 CVt_PI = -0.04*(1+50*s)/s; %final
571

572
573
574 %Natural Frequency, Damping Ration,
575 % Time constant and Poles of specific TF
576 if(0)
577 [Wn,Zeta,Poles] = damp(GVt)
149

578 tau = 1./(Zeta.*Wn)


579 damp(GVt)
580 pzmap(GVt)
581 end
582

583
584
585
586 %========= SIMULINK Control Block input ==============
587 %=== Altitude Hold Autopilot (h Controller) ===
588 Ch_NUM = Ch_PI_Lead.num{1};
589 Ch_DEN = Ch_PI_Lead.den{1};
590
591 %=== MACH Hold Autopilot (Vt Controller) ===
592 CVt_NUM = CVt_PI.num{1};
593 CVt_DEN = CVt_PI.den{1};
594

595 %//////////////////////////////////////////////////////////////////////////
596
597
598
599
600 %==========================================================================
601 %Run SIMULINK model - Resposta autonoma aos controles
602 delta_e = (0)*pi/180;
603 delta_t = 0.0;
604 delta_theta = (0)*pi/180;
605
606

607
608
609 %FLIGHT Initial Conditions ======= - Resposta autonoma as pertubacoes
610 Vt0 = Vt_e + 0*kmh2ms; %km/h
611 h0 = h_e + 0; %m
612 alpha0 = alpha_e + deg2rad(0); %deg
613 theta0 = theta_e + deg2rad(0); %deg
614 Q0 = Q_e + 0; %rad/s
615
616
617 X0_linear = [ (Vt0-Vt_e) ; (alpha0-alpha_e) ; (theta0 - theta_e);...
618 (Q0 - Q_e); (h0-h_e); (0) ];

10.3.1 Código para plotar os dados após a simulação de voo do X-Plane

1 clc
2 close all
3

4 Knots2kmh = 1.852;
5 ft2m = 0.3048;
6 ms2kmh = 3.6;
7
8
9 %====================
150

10 %Variables to plot
11 %NONLINEAR Model
12 Vt = FlightData.Data(:,4);
13 Vt = Vt*Knots2kmh;
14

15 h = FlightData.Data(:,1);
16 h = h*ft2m;
17
18 alpha = 0;
19
20 theta = FlightData.Data(:,2);
21
22 Q = FlightData.Data(:,3);
23
24 %Aerodynamic_Forces
25 Lift = 0;
26 Drag = 0;
27 Thrust = 0;
28
29 gamma = 0;
30
31 elevator = FlightData.Data(:,9);
32

33 Throttle = FlightData.Data(:,5);
34
35 tout_n = FlightData.time*2.5;
36
37 %Change elevator from -1:1 range to -16:20 deg deflection range
38 for i=1:1:length(tout_n)
39 if (elevator(i)>0)
40 elevator(i) = elevator(i)*20; %elevator until 20deg
41 elseif (elevator(i)<0)
42 elevator(i) = elevator(i)*16; %elevator until 16deg
43 else
44 elevator(i) = 0;
45 end
46 end
47
48
49
50

51
52
53
54
55

56 Min = 100;
57 Max = 150;
58 %Max = max(FlightData.time*2.5);
59
60
61 Ref = 1; %Use Reference in plot
62 if(Ref)
63 Vt_ref = FlightData.Data(:,15);
64 Vt_ref = Vt_ref*ms2kmh;
65 h_ref = FlightData.Data(:,16);
66 end
67
151

68 %========================
69 %PLOT
70 figure('units','normalized','outerposition',[0 0 0.5 1])
71
72 subplot(3,2,1)
73 plot(tout_n,Vt,'b','linewidth',2)
74 if(Ref)
75 hold on
76 plot(tout_n,Vt_ref,'r','linewidth',2)
77 hold off
78 end
79 legend('Vt (Km/h)','Vt_{REF} (Km/h)')
80 xlabel('$Time (s)$','interpreter','latex','FontSize',14)
81 ylabel('$Vt (Km/h)$','interpreter','latex','FontSize',18)
82 title('$Vt$','interpreter','latex','FontSize',18)
83 %xlim([min(tout_n) max(tout_n)])
84 xlim([Min Max])
85 grid on
86
87 subplot(3,2,2)
88 plot(tout_n,h,'b','linewidth',2)
89 if(Ref)
90 hold on
91 plot(tout_n,h_ref,'r','linewidth',2)
92 hold off
93 end
94 legend('h (m)','h_{REF} (m)')
95 xlabel('$Time (s)$','interpreter','latex','FontSize',14)
96 ylabel('$h (m)$','interpreter','latex','FontSize',18)
97 title('$h$','interpreter','latex','FontSize',18)
98 xlim([Min Max])
99 grid on
100
101 % subplot(3,2,3)
102 % plot(tout,alpha,'b','linewidth',2)
103 % legend('alpha (deg)','alpha-linear (deg)')
104 % xlabel('$Time (s)$','interpreter','latex','FontSize',14)
105 % ylabel('$\alpha (deg)$','interpreter','latex','FontSize',18)
106 % title('$\alpha$','interpreter','latex','FontSize',18)
107 % xlim([min(tout) max(tout)])
108 % grid on
109
110 subplot(3,2,5)
111 plot(tout_n,theta,'b','linewidth',2)
112 legend('theta (deg)','theta-linear (deg)')
113 xlabel('$Time (s)$','interpreter','latex','FontSize',14)
114 ylabel('$\theta (deg)$','interpreter','latex','FontSize',18)
115 title('$\theta$','interpreter','latex','FontSize',18)
116 xlim([Min Max])
117 grid on
118
119 subplot(3,2,6)
120 plot(tout_n,Q,'b','linewidth',2)
121 legend('Q (deg/s)','Q-linear (deg/s)')
122 xlabel('$Time (s)$','interpreter','latex','FontSize',14)
123 ylabel('$Q (deg/s)$','interpreter','latex','FontSize',18)
124 title('$Q$','interpreter','latex','FontSize',18)
125 xlim([Min Max])
152

126 grid on
127
128 % subplot(3,2,6)
129 % plot(tout,gamma,'b','linewidth',2)
130 % xlabel('$Time (s)$','interpreter','latex','FontSize',14)
131 % ylabel('$\gamma (deg)$','interpreter','latex','FontSize',18)
132 % title('$\gamma$','interpreter','latex','FontSize',18)
133 % xlim([min(tout) max(tout)])
134 % grid on
135
136

137
138
139
140
141
142 %figure('units','normalized','outerposition',[0.5 0 0.5 1])
143
144 subplot(3,2,4)
145 plot(tout_n,elevator,'b','linewidth',2)
146 xlabel('$Time (s)$','interpreter','latex','FontSize',14)
147 ylabel('$elevator (deg)$','interpreter','latex','FontSize',18)
148 title('$elevator - deflection$','interpreter','latex','FontSize',18)
149 xlim([Min Max])
150 ylim([-17 21])
151 grid on
152
153 subplot(3,2,3)
154 plot(tout_n,Throttle,'b','linewidth',2)
155 xlabel('$Time (s)$','interpreter','latex','FontSize',14)
156 ylabel('$Throttle\%$','interpreter','latex','FontSize',18)
157 title('$Throttle$','interpreter','latex','FontSize',18)
158 xlim([Min Max])
159 ylim([-0.1 1.1])
160 grid on
161
162 % subplot(3,2,3)
163 % plot(tout,Lift,'b','linewidth',2)
164 % xlabel('$Time (s)$','interpreter','latex','FontSize',14)
165 % ylabel('$Lift$','interpreter','latex','FontSize',18)
166 % title('$Lift$','interpreter','latex','FontSize',18)
167 % xlim([min(tout) max(tout)])
168 % grid on
169 %
170 % subplot(3,2,4)
171 % plot(tout,Thrust,'b','linewidth',2)
172 % xlabel('$Time (s)$','interpreter','latex','FontSize',14)
173 % ylabel('$Thrust$','interpreter','latex','FontSize',18)
174 % title('$Thrust$','interpreter','latex','FontSize',18)
175 % xlim([min(tout) max(tout)])
176 % grid on
177 %
178 % subplot(3,2,5)
179 % plot(tout,Drag,'b','linewidth',2)
180 % xlabel('$Time (s)$','interpreter','latex','FontSize',14)
181 % ylabel('$Drag$','interpreter','latex','FontSize',18)
182 % title('$Drag$','interpreter','latex','FontSize',18)
183 % xlim([min(tout) max(tout)])
153

184 % grid on
185 %
186 % subplot(3,2,6)
187 % plot(tout,rho,'b','linewidth',2)
188 % xlabel('$Time (s)$','interpreter','latex','FontSize',14)
189 % ylabel('$\rho (Kg/m^3)$','interpreter','latex','FontSize',18)
190 % title('$Air Density (\rho)$','interpreter','latex','FontSize',18)
191 % xlim([min(tout) max(tout)])
192 % grid on

You might also like