Piloto Automático de uma Aeronave
Transcrição
Piloto Automático de uma Aeronave
UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Piloto Automático de uma Aeronave José Miguel Freitas Fiúza, nº49399, AE - Sistemas, Decisão e Controlo Leonardo Bione Da Silva, nº49402, AE - Sistemas, Decisão e Controlo LICENCIATURA EM ENGENHARIA ELECTROTÉCNICA E DE COMPUTADORES Relatório de Trabalho Final de Curso Prof. Orientador: J. Miranda Lemos Prof. Acompanhante: Bertinho M. A. Costa Setembro de 2005 Agradecimentos Agradecemos a todos os professores, que nos ajudaram neste trabalho e no curso, pela motivação e conhecimento transmitido. Um especial agradecimento aos nossos orientadores, Prof. Miranda Lemos e Prof. Bertinho Costa, todo o apoio e amizade dada ao longo do trabalho que tornou possı́vel a sua realização. Agradecemos aos nossos Pais e familiares todo o apoio, compreensão e encorajamento dispensado. Agradecemos a todos os nossos colegas e amigos, que nos acompanharam ao longo do projecto, a amizade dada. Finalmente agradecemos a compreensão de todos os que se encontraram privados da nossa atenção/companhia quando nos encontrávamos a realizar este trabalho. i Resumo O objectivo deste trabalho consiste no projecto de um sistema de controlo de voo automático de uma aeronave não tripulada de pequenas dimensões. Inicialmente estudou-se um modelo matemático, de base fı́sica, que traduz a dinâmica relevante da aeronave para efeitos de projectos de sistemas de controlo. Este modelo é implementado em Simulink. Segue-se a sua caracterização dinâmica, incluindo regimes lineares (pequenas variações em torno do um ponto de equilı́brio) e não lineares. Mostra-se a variação do regime linear em função do ponto de trabalho. Estuda-se também as perturbações possı́veis que possam afectar a aeronave. Posteriormente realiza-se o projecto para a estrutura do sistema de controlo das várias cadeias necessárias. Com esta estrutura desenvolvem-se controladores locais lineares para posteriormente serem colocados numa arquitectura de gain scheduling. Estuda-se também técnicas de controlo adaptativo, aplicado à aeronave, nomeadamente o algoritmo MUSMAR - Multivariable Multipredictive Adaptive Regulator. Finalmente desenvolve-se um sistema de guiamento para a aeronave. Todos os controladores desenvolvidos são testados com o modelo fı́sico da aeronave. Palavras Chave: Aeronave, Sistema de Guiamento, Controladores Locais Lineares, Controlo Adaptativo, MUSMAR, Gain Scheduling. iii Abstract The objective of this work consists on the project of an automatic flight control system for an uninhabited aircraft of small dimensions. Firstly, for the purpose of the project of control systems, a mathematical model, of physical basis, which translates the relevant dynamics of the aircraft, is studied. This model is then implemented in Simulink. It follows its dynamic characterization, including linear regimes (small variations around the one break-even point) and not linear regimes. It is presented the variation of the linear regime in function of the work point. One also studies the possible disturbances affecting the aircraft. Later, the project for the structure of the control system with the necessary chains is fulfilled. With this structure, local linear controllers are developed, which will later be placed in a gain scheduling architecture. One also studies adaptive control techniques, applied to the aircraft, nominated algorithm MUSMAR - Multivariable Multipredictive Adaptive Regulator. Finally a guidance system for the aircraft is developed. All the developed controllers are tested with the physical model of the aircraft. Keywords: Aircraft, Guidance System, Local Linear Controllers, Adaptative Control, MUSMAR, Gain Scheduling. v Índice Agradecimentos i Resumo iii Abstract v Índice vi Lista de Figuras ix Lista de Tabelas xv Notação xix 1 Introdução 1.1 Conteúdo e estrutura do relatório . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Contribuições e considerações do trabalho . . . . . . . . . . . . . . . . . . . . 1 2 2 2 Aeronave - simulação e análise do modelo 2.1 Sistema de eixos de referência . . . . . . . . . . . . . . 2.2 Modelo da aeronave . . . . . . . . . . . . . . . . . . . . 2.3 Simulação e Análise . . . . . . . . . . . . . . . . . . . . 2.3.1 Modos Longitudinais - Phugoid e Perı́odo Curto 2.3.2 Modos Laterais - Yaw, Espiral e Roll . . . . . . 2.3.3 Caracterização dinâmica . . . . . . . . . . . . . . . . . . . 3 3 5 6 7 7 8 . . . . 11 11 11 11 14 4 Estrutura do Sistema de Controlo 4.1 Controlo longitudinal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Controlo lateral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 15 19 5 Controladores Locais Lineares 5.1 Amostragem do Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Identificação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.1 Sinal Utilizado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 23 24 25 3 Perturbações 3.1 Perturbações atmosféricas . . . . . . . . . . 3.1.1 Modelo de uma rajada de ar discreta 3.1.2 Modelos contı́nuos de turbulência . . 3.2 Sensores . . . . . . . . . . . . . . . . . . . . vii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ÍNDICE . . . . . . . . . . . . . 26 27 27 28 29 31 31 32 33 35 35 35 36 6 Gain Scheduling 6.1 Métodos de comutação de ganhos . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 37 38 7 Controlo Adaptativo 7.1 Algoritmos preditivos de horizonte extendido . . . . . . . . . . . . . . . 7.2 Parâmetros do MUSMAR . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 Controlo adaptativo na cadeia de pitch . . . . . . . . . . . . . . . . . . 7.3.1 MUSMAR sem integrador na cadeia de controlo . . . . . . . . . 7.3.2 MUSMAR com integrador na cadeia de controlo . . . . . . . . . 7.3.3 MUSMAR com inclusão de variáveis de estado no pseudoestado 7.3.4 MUSMAR com velocidade variável . . . . . . . . . . . . . . . . 7.3.5 Variação do custo em função do horizonte T . . . . . . . . . . . 7.4 Controlo adaptativo nas restantes cadeias . . . . . . . . . . . . . . . . . 7.4.1 Controlo adaptativo na cadeia de roll . . . . . . . . . . . . . . . 7.4.2 Controlo adaptativo na cadeia de yaw . . . . . . . . . . . . . . 7.4.3 Controlo adaptativo na cadeia de velocidade . . . . . . . . . . . . . . . . . . . . . . . 41 42 44 46 46 47 49 50 52 53 53 53 54 . . . . . . . 55 55 56 58 59 60 62 64 5.3 5.4 5.5 5.6 5.7 5.2.2 Estrutura dos Modelos . . . . . . . . . . . . . . . . . . 5.2.3 Simulação . . . . . . . . . . . . . . . . . . . . . . . . . Princı́pios do Controlo Polinomial . . . . . . . . . . . . . . . . Especificações para os controladores . . . . . . . . . . . . . . . Limitações do Sistema - Saturações e Anti-windup . . . . . . . Limites de Incerteza nos Modelos e Estabilidade Robusta . . . 5.6.1 Funções de Sensibilidade e Sensibilidade Complementar 5.6.2 Estudo da Robustez . . . . . . . . . . . . . . . . . . . 5.6.3 Estudos Realizados . . . . . . . . . . . . . . . . . . . . Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.7.1 Cadeia de Velocidade . . . . . . . . . . . . . . . . . . . 5.7.2 Cadeia de pitch . . . . . . . . . . . . . . . . . . . . . . 5.7.3 Perturbações atmosféricas . . . . . . . . . . . . . . . . 8 Sistema de Guiamento 8.1 Geração de trajectórias . . . . . . . 8.2 Sistema de controlo . . . . . . . . . 8.3 Resultados . . . . . . . . . . . . . . 8.3.1 Subida . . . . . . . . . . . . 8.3.2 Circunferência . . . . . . . . 8.3.3 Espiral . . . . . . . . . . . . 8.3.4 Rajada discreta e aquisição . . . . . . . . . . . . . . viii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ÍNDICE 9 Conclusões 65 A Modelo da aeronave A.1 O modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2 Os parâmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.3 Modelo da Aeronave em Simulink . . . . . . . . . . . . . . . . . . . . . . . . . 69 69 71 74 B Sensores B.1 Giroscópio de rotação . . B.2 Giroscópio vertical . . . B.3 Altı́metro e velocı́metro . B.4 GPS . . . . . . . . . . . . . . . 75 75 76 76 77 . . . . . 79 79 80 80 83 86 . . . . . . . . 91 91 93 95 97 97 99 100 102 . . . . 105 105 107 107 108 . . . . . . . . C Identificação C.1 Máxima Verosimilhança . . C.2 Resultados . . . . . . . . . . C.2.1 Cadeia de velocidade C.2.2 Cadeia de altitude . C.2.3 Cadeia Lateral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D Controlo Polinomial D.1 Princı́pios do Controlo Polinomial D.2 Controlo Robusto . . . . . . . . . D.3 Polinómios R, S, T . . . . . . . . D.4 Resultados do controlo polinomial D.4.1 Cadeia Velocidade . . . . D.4.2 Cadeia Pitch . . . . . . . D.4.3 Cadeia Roll . . . . . . . . D.4.4 Cadeia Yaw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E Controlo Adaptativo E.1 Modelos preditivos . . . . . . . . . . . . . . . . E.2 Modelo preditivo do MUSMAR . . . . . . . . . E.3 Identificação do modelo preditivo do MUSMAR E.4 MUSMAR - Cadeia de roll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F Guiamento 111 F.1 Sistemas de guiamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 F.2 Referências das trajectórias . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 F.3 Outras trajectórias testadas no guiamento . . . . . . . . . . . . . . . . . . . . 114 Bibliografia 127 ix Lista de Figuras 1.1 Diagrama genérico de navegação, guiamento e controlo. . . . . . . . . . . . . . 1 2.1 2.2 Desenho do aeromodelo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Referenciais Terra e Avião e sentidos positivos para velocidades lineares e angulares. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sentidos positivos dos ângulos de ataque e de sideslip. . . . . . . . . . . . . . . Sentidos positivos das deflexões das superficies móveis. . . . . . . . . . . . . . Modos Longitudinais - Phugoid e Perı́odo Curto. . . . . . . . . . . . . . . . . Modos Laterais - Yaw, Espiral e Roll. . . . . . . . . . . . . . . . . . . . . . . . Dependência do lugar geométrico dos valores próprios do sistema com o ponto de equilı́brio e variação da dinâmica com a velocidade. . . . . . . . . . . . . . 3 3.1 3.2 Rajada discreta com Vm = 10 m/s e dm = 10 m. . . . . . . . . . . . . . . . . . Velocidades lineares e angulares com altitude= 1000 m e velocidade= 21 m/s. 12 14 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 4.17 Sistema de controlo de velocidade. . . . . . . . . . . . . . . . . . . . . . Controlo da velocidade. . . . . . . . . . . . . . . . . . . . . . . . . . . . Sistema de controlo de altitude. . . . . . . . . . . . . . . . . . . . . . . Variação da altitude. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Perturbação na velocidade e no pitch causada pela variação na altitude. Sistema de controlo de velocidade. . . . . . . . . . . . . . . . . . . . . . Controlo da velocidade. . . . . . . . . . . . . . . . . . . . . . . . . . . . Sistema de controlo de altitude. . . . . . . . . . . . . . . . . . . . . . . Variação da altitude. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Perturbação na velocidade e no pitch causada pela variação na altitude. Sistema de controlo de curvas. . . . . . . . . . . . . . . . . . . . . . . . Controlo lateral - Variação da posição resultante do controlo lateral. . . Controlo lateral - yaw, roll e sideslip. . . . . . . . . . . . . . . . . . . . Sistema de controlo de curvas. . . . . . . . . . . . . . . . . . . . . . . . Sistema de controlo de curvas. . . . . . . . . . . . . . . . . . . . . . . . Controlo lateral - Variação da posição resultante. . . . . . . . . . . . . Controlo lateral - Variação da posição resultante do controlo lateral. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 16 17 17 17 18 18 18 19 19 20 20 20 21 21 22 22 5.1 5.2 5.3 5.4 5.5 5.6 Modelo de um sistema amostrado. . . . . . . . Esquema de um controlador com dois graus de Esquema do Anti-windup. . . . . . . . . . . . Exemplo do efeito integrator windup. . . . . . Esquema do sistema de controlo. . . . . . . . Diagramas de Bode de modelos de incerteza. . . . . . . . . . . . . . . . . . . . . . . . . . 23 27 30 30 31 33 2.3 2.4 2.5 2.6 2.7 xi . . . . . . liberdade. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 5 6 7 8 9 LISTA DE FIGURAS 5.7 5.8 Verificação da condição de estabilidade robusta. . . . . . . . . . . . . . . . . Verificação da condição de estabilidade robusta entre os vários modelos locais velocidade e pitch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.9 Controlo de velocidade (22 m/s) - velocidade e TH . . . . . . . . . . . . . . . 5.10 Controlo de pitch (22 m/s) - pitch e elevadores. . . . . . . . . . . . . . . . . 5.11 Controlo de velocidade e de pitch com perturbações atmosféricas. . . . . . . . . . . . 34 6.1 6.2 6.3 6.4 6.5 Instabilidade causada por comutação rápida de controladores. Exemplo de atribuição de pesos. . . . . . . . . . . . . . . . . . Gain Scheduling - Velocidade. . . . . . . . . . . . . . . . . . . Gain Scheduling - Pitch. . . . . . . . . . . . . . . . . . . . . . Gain Scheduling - Roll. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 38 39 40 40 7.1 7.2 7.3 Diagrama de blocos do MRAS. . . . . . . . . . . . . . . . . . . . . . . . . . . Diagrama de blocos do STR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . MUSMAR sem integrador aplicado à cadeia de pitch. Ganhos, seguimento e elevadores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Diagrama de blocos - MUSMAR. . . . . . . . . . . . . . . . . . . . . . . . . . Diagrama de blocos - MUSMAR com integrador. . . . . . . . . . . . . . . . . MUSMAR com integrador aplicado à cadeia de pitch e com uma referência no pseudoestado. Ganhos, seguimento e elevadores. . . . . . . . . . . . . . . . . . MUSMAR com integrador aplicado à cadeia de pitch e sem referências no pseudoestado. Ganhos, seguimento e elevadores. . . . . . . . . . . . . . . . . . . . MUSMAR com inclusão da variável de estado Q. Ganhos, seguimento e elevadores. MUSMAR com velocidade variável. Velocidade e seguimento. . . . . . . . . . . MUSMAR com velocidade variável. Ganhos e elevadores. . . . . . . . . . . . . MUSMAR com menor peso na cadeia de controlo. Velocidade e seguimento. . MUSMAR com velocidade variável e com ρ variável. Velocidade e seguimento. Influência do horizonte T no custo. . . . . . . . . . . . . . . . . . . . . . . . . MUSMAR - cadeia de yaw. Ganhos, seguimento e ailerons. . . . . . . . . . . . MUSMAR - cadeia de velocidade. Ganhos, seguimento e Th. . . . . . . . . . . 41 42 Diagrama de blocos genérico de navegação, guiamento e controlo. . . . . . . . Diagrama de blocos - referências e saı́das. . . . . . . . . . . . . . . . . . . . . . Transformação do vector velocidade nos vários componentes vectoriais. ∗ representa a projecção no plano XOY e não o plano X ou o plano Y. . . . . . . . . Aproximação polinomial para cálculo do offset de pitch - resultado obtido e respectivo zoom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Subida em malha aberta - altitude e erro à trajectória . . . . . . . . . . . . . . Subida em malha fechada - altitude e erro à trajectória . . . . . . . . . . . . . Circunferência em malha aberta - trajectória no plano XOY, altitude e erro à trajectória . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 56 7.4 7.5 7.6 7.7 7.8 7.9 7.10 7.11 7.12 7.13 7.14 7.15 8.1 8.2 8.3 8.4 8.5 8.6 8.7 xii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 35 36 36 46 47 48 48 49 50 50 51 51 52 53 54 54 57 59 60 60 61 LISTA DE FIGURAS 8.8 8.9 8.10 8.11 8.12 8.13 8.14 Circunferência em malha aberta - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Circunferência em malha fechada - trajectória no plano XOY, altitude e erro à trajectória . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Espiral em malha aberta - trajectória no plano XOY, altitude e erro à trajectória Espiral em malha aberta - trajectória . . . . . . . . . . . . . . . . . . . . . . . Espiral em malha fechada - trajectória no plano XOY, altitude e erro à trajectória Espiral em malha fechada - trajectória . . . . . . . . . . . . . . . . . . . . . . Sinusóide lateral com uma rajada de ar . . . . . . . . . . . . . . . . . . . . . . 61 62 62 63 63 64 64 A.1 Diagrama de blocos em Simulink do modelo da aeronave. . . . . . . . . . . . . 74 B.1 B.2 B.3 B.4 75 76 77 77 Giroscópio de rotação. Giroscópio vertical. . . Tubo de Pitot. . . . . GPS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.1 Resposta ao escalão do sistema linear e não linear para as várias regiões. . . . C.2 Resposta ao escalão dos modelos obtidos para as várias zonas de funcionamento. C.3 Diagrama de Bode para os 4 pontos de funcionamento. . . . . . . . . . . . . . C.4 Mapa dos pólos e zeros para as diferentes velocidades. . . . . . . . . . . . . . . C.5 Resposta ao escalão do sistema linear e não linear para as várias regiões. . . . C.6 Resposta ao escalão dos modelos obtidos. . . . . . . . . . . . . . . . . . . . . . C.7 Diagrama de Bode para os 4 pontos de funcionamento. . . . . . . . . . . . . . C.8 Mapa dos pólos e zeros para as diferentes velocidades. . . . . . . . . . . . . . . C.9 Resposta ao escalão do sistema linear e não linear para as várias cadeias. . . . C.10 Resposta ao escalão dos modelos obtidos para as várias zonas de funcionamento.. C.11 Diagrama de Bode para os 4 pontos de funcionamento. . . . . . . . . . . . . . C.12 Mapa dos pólos e zeros para as diferentes velocidades. . . . . . . . . . . . . . . C.13 Resposta ao escalão do sistema linear e não linear para as várias regiões. . . . D.1 Esquema de um controlador com dois graus de liberdade. D.2 Diagramas de Bode de modelos de incerteza - pitch. . . . D.3 Verificação da condição de estabilidade robusta. . . . . . D.4 Diagramas de Bode de modelos de incerteza - velocidade. D.5 Diagramas de Bode de modelos de incerteza - pitch. . . . D.6 Controlo de velocidade (18 m/s) - saı́das e actuações. . . D.7 Controlo de velocidade (26 m/s) - saı́das e actuações. . . D.8 Controlo de velocidade (30 m/s) - saı́das e actuações. . . D.9 Controlo de pitch (18 m/s) - saı́das e actuações. . . . . . D.10 Controlo de pitch (26 m/s) - saı́das e actuações. . . . . . D.11 Controlo de pitch (30 m/s) - saı́das e actuações. . . . . . xiii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 81 82 83 84 84 86 86 87 88 88 89 90 91 93 94 94 95 97 98 98 99 99 100 LISTA DE FIGURAS D.12 Controlo de roll (18 m/s) - saı́das e actuações. . . . . . . . . . . . . . . . . . . 100 D.13 Controlo de roll (22 m/s) - saı́das e actuações. . . . . . . . . . . . . . . . . . . 101 D.14 Controlo de roll (26 m/s) - saı́das e actuações. . . . . . . . . . . . . . . . . . . 101 D.15 Controlo de roll (30 m/s) - saı́das e actuações. . . . . . . . . . . . . . . . . . . 102 D.16 Controlo de yaw (18 m/s) - saı́das e actuações. . . . . . . . . . . . . . . . . . . 102 D.17 Controlo de yaw (22 m/s) - saı́das e actuações. . . . . . . . . . . . . . . . . . . 103 D.18 Controlo de yaw (26 m/s) - saı́das e actuações. . . . . . . . . . . . . . . . . . . 103 D.19 Controlo de yaw (30 m/s) - saı́das e actuações. . . . . . . . . . . . . . . . . . . 104 E.1 MUSMAR - cadeia de roll. Ganhos, seguimento e ailerons. . . . . . . . . . . . 109 E.2 MUSMAR - cadeia de roll com velocidade variável. Velocidade e seguimento. . 109 E.3 MUSMAR - cadeia de roll com velocidade variável. Ganhos e ailerons. . . . . . 110 F.1 Sistema de guiamento em malha aberta . . . . . . . . . . . . . . . . . . . . . . 111 F.2 Sistema de guiamento em malha fechada . . . . . . . . . . . . . . . . . . . . . 111 F.3 Subida em malha aberta - referências geradas para os controladores internos . 112 F.4 Subida em malha fechada - referências geradas para os controladores internos . 112 F.5 Circunferência em malha fechada - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 F.6 Espiral em malha aberta - referências geradas para os controladores internos . 113 F.7 Espiral em malha fechada - referências geradas para os controladores internos . 114 F.8 Curva em malha aberta - trajectória no plano XOY, altitude e erro à trajectória 114 F.9 Curva em malha aberta - referências geradas para os controladores internos . . 115 F.10 Curva em malha fechada - trajectória no plano XOY, altitude e erro à trajectória115 F.11 Curva em malha fechada - referências geradas para os controladores internos . 116 F.12 Circunferência em malha aberta - trajectória no plano XOY, altitude e erro à trajectória . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 F.13 Circunferência em malha aberta - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 F.14 Circunferência em malha fechada - trajectória no plano XOY, altitude e erro à trajectória . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 F.15 Circunferência em malha fechada - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 F.16 Sinusóide lenta em malha aberta - trajectória no plano XOY, altitude e erro à trajectória . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 F.17 Sinusóide lenta em malha aberta - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 F.18 Sinusóide lenta em malha fechada - trajectória no plano XOY, altitude e erro à trajectória . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 F.19 Sinusóide lenta em malha fechada - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 xiv LISTA DE FIGURAS F.20 Sinusóide rápida em malha aberta - trajectória no plano XOY, altitude e erro à trajectória . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F.21 Sinusóide rápida em malha aberta - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F.22 Sinusóide rápida em malha fechada - trajectória no plano XOY, altitude e erro à trajectória . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F.23 Sinusóide rápida em malha fechada - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F.24 Subida em malha aberta - altitude e erro à trajectória . . . . . . . . . . . . . . F.25 Subida em malha aberta - referências geradas para os controladores internos . F.26 Subida em malha fechada - altitude e erro à trajectória . . . . . . . . . . . . . F.27 Subida em malha fechada - referências geradas para os controladores internos . F.28 Sinusóide em altitude em malha aberta - altitude e erro à trajectória . . . . . F.29 Sinusóide em altitude em malha aberta - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F.30 Sinusóide em altitude em malha fechada - altitude e erro à trajectória . . . . . F.31 Sinusóide em altitude em malha fechada - referências geradas para os controladores internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv 120 121 121 122 122 123 123 124 124 125 125 126 Lista de Tabelas 2.1 2.2 Pontos de equilı́brio para diferentes velocidades. . . . . . . . . . . . . . . . . . Variação nas saı́das face a perturbações em cada entrada. . . . . . . . . . . . . 9 10 5.1 Especificações para os Controladores. . . . . . . . . . . . . . . . . . . . . . . . 29 8.1 Interpolação - offset do pitch. . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 C.1 Resultados da identificação TH → V elocidade U . . . . . . . . . . . . . . . . . . C.2 Largura de banda, margem de fase e margem de ganho dos sistemas TH → V elocidade U . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.3 Resultados da identificação ηe → θ. . . . . . . . . . . . . . . . . . . . . . . . . C.4 Largura de banda, margem de fase e margem de ganho dos sistemas ηe → θ. . C.5 Resultados da identificação ηa → φ. . . . . . . . . . . . . . . . . . . . . . . . . C.6 Resultados da identificação φ → ψ. . . . . . . . . . . . . . . . . . . . . . . . . 80 D.1 D.2 D.3 D.4 95 96 96 97 Controladores Controladores Controladores Controladores R, R, R, R, S S S S e e e e T T T T da da da da cadeia cadeia cadeia cadeia de de de de velocidade para as várias regiões. roll para as várias regiões. . . . . yaw para as várias regiões. . . . . pitch para as várias regiões. . . . xvii . . . . . . . . . . . . . . . . 82 83 85 87 89 Notação Lista de sı́mbolos - aeronáutica A Aspect ratio. a Declive da curva de sustentação para a asa finita. b Envergadura. c Corda da asa. CM D Coeficiente do momento de pitch. Arrasto. e Factor de eficiência da aeronave. g Aceleração gravı́tica. hF Altura desde o eixo Ox ao centro de pressões do estabilizador vertical. Ixx , Iyy , Izz Momentos de inércia em torno dos eixos Ox , Oy e Oz , respectivamente. Ixy , Iyz , Ixz Produtos de inércia no sistema cartesiano Oxyz . Ke Taxa de crescimento do motor. l Sustentação por unidade de comprimento. l Comprimento, braço de um momento. L Momento de roll. L Sustentação. m Massa do avião. M Momento de pitch. N Momento de yaw. xix Notação Ox , Oy , Oz Eixo, no referencial Avião dos xx, yy e zz, respectivamente. Oxy Plano, no referencial Avião, formado pelos vectores Ox e Oy . Oxz Plano, no referencial Avião, formado pelos vectores Ox e Oz . P PP Pmax Q Velocidade angular de roll. Passo do hélice. Potência máxima. Velocidade angular de pitch. q Pressão dinâmica. R Velocidade angular de yaw. T AR Matriz de transformação dos vectores do referencial Avião para Terra. A TR Matriz de transformação dos vectores do referencial Terra para Avião. S Área de uma superfı́cie. Sd Área do disco do hélice. T Tracção do propulsor. TH Ajuste da abertura do carburador. Tθ , T φ , T ψ U Matriz associada à rotação do ângulo θ, φ e ψ respectivamente. Velocidade segundo o eixo Ox . A V Vector definido no referencial A. T V Vector definido no referencial T. V Velocidade segundo o eixo Oy . VxT Velocidade segundo o eixo XT . VyT Velocidade segundo o eixo YT . xx Notação VzT Velocidade segundo o eixo ZT . V Velocidade do avião. V0 Velocidade através do hélice. W Velocidade segundo o eixo Oz . XT , YT , ZT Eixo, no referencial Terra dos xx, yy e zz, respectivamente. X Força segundo o eixo Ox . Y Força segundo o eixo Oy . Z Força segundo o eixo Oz . α Ângulo de ataque ou de incidência. αL0 Ângulo de sustentação nula. β Ângulo de deslizamento lateral ou sideslip. ∆ Variação do ângulo de sustentação nula por variação da deflexão da superfı́cie móvel. η Ângulo de deflexão da superfı́cie de controlo. γ1 ...γ11 Parâmetros vários do modelo. φ Ângulo de inclinação lateral ou de roll. ψ Ângulo de azimute ou de roll. ρ Densidade do ar. θ Atitude ou ângulo de pitch. εT Ângulo de incidência do estabilizador horizontal. xxi Notação Lista de ı́ndices - aeronáutica (.)ac Referente ao centro aerodinâmico. (.)a Referente a componentes aerodinâmicas. (.)g Referente a componentes gravı́ticas. (.)p Referente a componentes propulsivas. (.)a Referente ao aileron. (.)e Referente ao leme de profundidade. (.)f Referente ao flap. (.)r Referente ao leme de direcção. (.)W Referente à asa. (.)T Referente ao estabilizador horizontal. (.)F Referente ao estabilizador vertical. (.)B Referente à fuselagem. xxii Notação Lista de sı́mbolos - controlo A, B, C Polinómios que representam o modo como estes afectam a saı́da, a entrada e o ruı́do respectivamente. E(.|I) Operador valor médio condicionado à informação I(t). f load Variável que possibilita carregar ou não o estado realizado na simulação anterior. I Matriz identidade. J Funcional de custo. kp , k i , k d Ganho proporcional, integral e derivativo, respectivamente. NA Número de amostras do erro de seguimento no pseudoestado. NB Número de amostras da entrada no pseudoestado. NG Número de amostras da referência no pseudoestado. NV Número de amostras da perturbação acessı́vel, V (t), no pseudoestado. NX Número de amostras da perturbação acessı́vel, X(t), no pseudoestado. NW Número de amostras da perturbação acessı́vel, W (t), no pseudoestado. q Operador avanço. (.)∗ (q −1 ) Operador atraso q −1 . R, S, T Controlador polinomial - polinómio ligado à entrada, referência e à saı́da, respectivamente. S s(.) Sobreelevação. Pseudoestado. T Horizonte de predição. Ts Perı́odo de amostragem. ts Tempo de estabelecimento. xxiii Notação y(.), u(.), r(.) Saı́da, entrada e referência de um processo, respectivamente. ρ Factor de penalização da acção de controlo. η Dither. λ Factor de esquecimento. ỹ Erro associado a y. ŷ Valor estimado de y. xxiv Notação Abreviaturas ARMAX ARX Auto-Regressive Moving Average with Exogenous Input. Auto-Regressive with Exogenous Input. D/A, A/D DFRLS Conversor Digital-Analógico e Analógico-Digital, respectivamente. Directional Forgetting Recursive Least Squares. GPC Generalized Predictive Control. GPS Global Positioning System. IV Variáveis Instrumentais. LQ Linear Quadrático. MIMO Multiple Input Multiple Output. MISO Multiple Input Single Output. MRAS Model-Reference Adaptive Systems. MUSMAR NASA PEM PID PI PD PRBS STR UAVs ZOH Multivariable Multipredictive Adaptive Regulator. National Aeronautics and Space Administration. Minimização do Erro de Predição. Proporcional-Integral-Derivativo. Proporcional-Integral. Proporcional-Derivativo. Pseudo Random Binary Signals. Self-Tuning Regulator. Uninhabited Aerial Vehicles. Zero Order Hold. xxv Capı́tulo 1 Introdução Este trabalho aborda o problema do controlo automático de uma aeronave não tripulada. Nos dias que correm, com o constante desenvolvimento da indústria de aviação, são muitos os aviões, militares e comerciais, a serem projectados e construı́dos. Uma das áreas mais activas no desenvolvimento de aviões é a dos veı́culos aéreos não tripuláveis (Uninhabited Aerial Vehicles - UAVs) onde actualmente 32 nações estão a desenvolver e construir mais de 250 modelos. Só o Estados Unidos, a nı́vel militar, tem 20 ou em serviço (Predator, Pioneer, Hunter e Shadow 200 ) em desenvolvimento (Global Hawk, Fire Scout, Predator B, etc.) prevendo-se que o investimento deste, no departamento da defesa, seja superior a 10 biliões de dollars em 2007 correspondendo a um aumento para 300 sistemas de UAVs em 2010. A sua utilidade é bastante notória em diversas aplicações como as militares (e.g. reconhecimento, controlo de fronteiras, etc.) e civis (e.g. procura e salvamentos, vigia em pontos de interesse como o espaço marı́timo, o florestal, o tráfego, etc.). Mesmo a National Aeronautics and Space Administration ( NASA) está desenvolver UAVs para pesquisas atmosféricas. Pretende-se, com os UAVs, propiciar maior segurança e eficiência em tarefas de grande importância para o mundo e sociedade sendo para isso necessário certos automatismos. Deste modo foram/são muitos os estudos realizados, separando a metodologia tradicional os sistemas automáticos em 3 grandes partes - Navegação, Guiamento e Controlo. A primeira permite o conhecimento dos estado da aeronave nomeadamente as posições, velocidades e acelerações em relação a um determinado referencial. O guiamento tem o objectivo de determinar a melhor trajectória e os movimentos necessários para a executar. Por fim o último sistema tem a função de realizar o controlo da aeronave, segundo os ângulos associados aos 3 eixos: Ox , Oy e Oz . Na figura 1.1 pode-se ver a forma do sistema genérico de navegação, guiamento e controlo. Forças e momentos exteriores Actuação Comando Trajectória Guiamento Controlo Aeronave Posição, Velocidade, Aceleração Navegação Figura 1.1: Diagrama genérico de navegação, guiamento e controlo. 1 Introdução 1.1 Conteúdo e estrutura do relatório Este relatório tem a seguinte estrutura: No primeiro capı́tulo é dada uma perspectiva geral do problema em estudo e uma noção do que é apresentado neste trabalho. Segue-se o segundo capı́tulo onde se explica, caracteriza o modelo da aeronave e implementa-se o modelo da aeronave em Simulink versão 5.0 do MATLAB versão 6.5. Realiza-se a simulação e caracterização dinâmica do modelo. Esta última inclui regimes lineares e não lineares, modos de oscilação próprios do avião e variação do regime linear em função do ponto de trabalho. Apresenta-se no terceiro capı́tulo os efeitos atmosféricos e o ruı́do nos sistemas e sensores que possam afectar a aeronave. No quarto capı́tulo projecta-se a arquitectura do sistema de controlo recorrendo a técnicas de controlo clássico (PID - proporcional, integral, derivativo). Posteriormente no quinto capı́tulo projectam-se os controladores, discretos, locais lineares para as várias cadeias de controlo (recorre-se aos princı́pios do controlo polinomial). No sexto capı́tulo integram-se os controladores obtidos numa arquitectura de gain scheduling. Estuda-se técnicas de controlo adaptativo nomeadamente o algoritmo MUSMAR no sétimo capı́tulo. No oitavo capı́tulo apresenta-se um sistema de guiamento para a aeronave Por último no nono capı́tulo retiram-se as conclusões ao trabalho desenvolvido. 1.2 Contribuições e considerações do trabalho As contribuições deste trabalho são: • Implementação em Simulink de um modelo da dinâmica de uma aeronave de pequenas dimensões. • Caracterização da dinâmica deste modelo incluindo regimes lineares e não lineares. • Projecto de um sistema de controlo de voo. • Projecto de controladores locais lineares usando técnicas polinomiais. • Integração dos controladores numa arquitectura gain scheduling. • Desenvolvimento de controladores adaptativos. • Projecto de uma sistema de guiamento. No desenvolvimento do modelo da dinâmica da aeronave não se teve em conta dinâmicas adicionais por parte dos sensores. 2 Capı́tulo 2 Aeronave - simulação e análise do modelo Neste capitulo apresenta-se o modelo fı́sico da aeronave, de pequenas dimensões utilizada. O modelo é obtido a partir de um aeromodelo (Figura 2.1) de 1/4 de escala de um Piper PA 18 Super Cub equipado com um motor de 50 cc. Elevador Ailerons Leme Flaps Figura 2.1: Desenho do aeromodelo. As suas caracterı́sticas principais são as seguintes: • Envergadura = 2.7 m • Comprimento = 1.72 m • Massa = 10.5 Kg O motor que equipa este avião é um QUADRA de 50 cc a dois tempos, capaz de fornecer uma potência de 3.4 KW (4.5 bhp). Em voo, o aeromodelo atinge velocidades entre 70 e 100 km/h. 2.1 Sistema de eixos de referência Definem-se os seguintes sistemas referenciais: No sistema Avião, fixo à aeronave, o eixo Ox aponta para a frente; o eixo Oy aponta no sentido da asa direita; e o eixo Oz aponta para baixo (figura 2.2). Define-se ainda outro sistema de eixos que é o sistema Terra. Neste, XT , YT e ZT , são definidos apontando para Norte, Este, e para o centro da terra, respectivamente (Figura 2.2). Neste trabalho, os gráficos relacionados com a altitude encontram-se com o sentido do eixo ZT trocado, para uma melhor vizualização/compreensão dos resultados. Inicialmente definiu-se que estes dois referenciais encontram-se alinhados, existindo apenas uma diferença segundo Z (translação). 3 Aeronave - simulação e análise do modelo Oy Y,V O Q, O Ox X,U P, YT(E) TERRA XT(N) Oz R, Z,W ZT Figura 2.2: Referenciais Terra e Avião e sentidos positivos para velocidades lineares e angulares. São também definidos, três ângulos (φ, θ, e ψ) denominados ângulos de Euler para a orientação da aeronave (Figura 2.2). • φ Ângulo de inclinação lateral ou de roll • θ Atitude longitudinal ou ângulo de pitch • ψ Azimute ou ângulo de yaw A transformação do referencial Terra para o referencial Avião, pode ser obtida por uma sequência de três rotações, tendo cada rotação uma matriz associada. A transformação total é obtida pelo produto das três matrizes, multiplicadas pela ordem de rotação. As sequências de rotações seguem tipicamente a seguinte ordem: yaw ψ, pitch θ e roll φ. As matrizes de rotação são dadas por: Tψ Tθ Tφ cos(ψ) sin(ψ) 0 = −sin(ψ) cos(ψ) 0 0 0 1 cos(θ) 0 −sin(θ) 1 0 = 0 sin(θ) 0 cos(θ) 1 0 0 = 0 cos(φ) sin(φ) 0 −sin(φ) cos(φ) (2.1) (2.2) (2.3) A matriz total é então definida por: c(ψ)c(θ) s(ψ)c(θ) −s(θ) A c(ψ)s(θ)s(φ) − s(ψ)c(φ) s(ψ)s(θ)s(φ) + c(ψ)c(φ) c(θ)s(φ) TR = c(ψ)s(θ)c(φ) + s(ψ)s(φ) s(ψ)s(θ)c(φ) − c(ψ)s(φ) c(θ)c(φ) (2.4) Nota: s(.) e c(.) corresponde, respectivamente, a sin(.) e cos(.). Esta matriz transforma coordenadas de vectores do referencial Terra, em coordenadas do referencial Avião. A transformação inversa é dada pela transposta da matriz anterior. 4 Aeronave - simulação e análise do modelo c(ψ)c(θ) c(ψ)s(θ)s(φ) − s(ψ)c(φ) c(ψ)s(θ)c(φ) + s(ψ)s(φ) T s(ψ)c(θ) s(ψ)s(θ)s(φ) + c(ψ)c(φ) s(ψ)s(θ)c(φ) − c(ψ)s(φ) AR = −s(θ) c(θ)s(φ) c(θ)c(φ) (2.5) Esta matriz transforma coordenadas de vectores do referencial Avião, A V , em coordenadas do referencial Terra, T V , do seguinte modo: T V =TA RA V (2.6) Dado que a trajectória de voo da aeronave não coincide, normalmente, com o eixo longitudinal do avião definem-se os ângulos: • α - ângulo de ataque ou de incidência • β - ângulo de deslizamento lateral ou de sideslip Estes correspondem aos ângulos que o vector velocidade faz com o eixo Ox nos planos Oxz e Oxy do avião, respectivamente como se pode ver na figura 2.3. x V x V Figura 2.3: Sentidos positivos dos ângulos de ataque e de sideslip. 2.2 Modelo da aeronave A base do modelo teve como referência o trabalho e tese de mestrado de Luı́s Mendonça Rato e Rui Neves da Silva ([2],[3]). O modelo da aeronave pode ser visto como a associação de 3 submodelos - modelo gravı́tico, modelo aerodinâmico e modelo propulsivo. Estes tem a finalidade de calcular as forças (X, Y e Z) e momentos externos (L, M e N ) existentes na aeronave. Com as forças e momentos calculam-se as velocidade lineares (U, V e W ) e rotacionais (P, Q e R) da aeronave. A partir das velocidades de rotação obtém-se os ângulos de Euler (θ, φ e ψ). No anexo A apresentam-se todas as equações do modelo e os respectivos parâmetros, a partir dos quais foi possı́vel implementar o modelo em Simulink. O diagrama de blocos em Simulink pode ser visualizado também no anexo A. 5 Aeronave - simulação e análise do modelo 2.3 Simulação e Análise Nesta secção descreve-se a simulação do modelo não linear usando o sistema de blocos Simulink implementado, e caracteriza-se o modelo do ponto de vista do comportamento dinâmico. O modelo tem como entradas: • deflexão dos ailerons - ηa • deflexão do leme de estabilização horizontal - ηe • deflexão do leme de estabilização vertical - ηr • deflexão dos flaps - ηf • abertura da admissão de ar do motor - TH Em baixo mostram-se os sentidos positivos dos deflectores. r f a a e Figura 2.4: Sentidos positivos das deflexões das superficies móveis. e como saı́das: • velocidades segundos os eixos Ox , Oy e Oz (U , V , W ) • velocidades de rotação em torno dos eixos Ox , Oy e Oz (P , Q, R) • ângulos de roll, de pitch e de yaw O modelo simulado tem algumas diferenças em relação ao modelo completo apresentado devido a algumas simplificações na dinâmica do propulsor. Considera-se que no modelo propulsivo que as forças aplicadas são apenas segundo o eixo longitudinal e os momentos são nulos. O ponto de equilı́brio, que corresponde a um voo em linha recta, na horizontal atinge-se com: • Potência. 6.24% • Deflexão ailerons: 0.0 rad • Deflexão elevadores: -0.0285 rad • Deflexão leme: 0.0 rad • Deflexão flaps: 0.0 rad • Velocidade: 21.156 m/s 6 Aeronave - simulação e análise do modelo • Pitch: 5.6 × 10−5 rad É em torno desta situação de equilı́brio que se faz a análise do comportamento dinâmico do sistema. A introdução de perturbações nos actuadores vai excitar os modos de oscilação próprios do avião, modos estes que podem ser divididos em modos longitudinais e laterais. 2.3.1 Modos Longitudinais - Phugoid e Perı́odo Curto A estabilidade da dinâmica longitudinal de uma perturbação pode ser vista pelo conhecimento dos valores próprios da matriz Along (matriz da dinâmica longitudinal de dimensão 4x4). Expandindo a equação |λI −Along | = 0 chega-se a uma equação de 4a ordem. Para a maioria dos tipos de aeronave constata-se que a equação invariavelmente factoriza em 2 factores quadráticos (que correspondem a dois modos de movimento - Phugoid e o Perı́odo Curto), 2 2 (λ2 + 2ζph wph λ + wph )(λ2 + 2ζpc wpc λ + wph )=0 (2.7) O modo de oscilação Phugoid é um modo que se caracteriza por oscilações muito lentas de velocidade e altitude. Este modo é excitado introduzindo uma perturbação nos elevadores. Na figura 2.5 observa-se o resultado face a uma pequena perturbação. Como seria de esperar há pequenas variações em θ, tendendo este ângulo para a posição de equilı́brio no final. O modo de Perı́odo Curto é também provocado por perturbações nos elevadores e está relacionado com a dependência do momento aplicado na cauda com o ângulo de ataque, α. Por observação da figura 2.5 pode-se identificar o modo oscilatório de perı́odo curto, o qual tem variações de amplitude muito baixas e se extingue rapidamente. θ [º] 5 0 −5 250 300 350 400 450 250 300 350 400 450 250 300 350 400 450 α [º] 1 0.5 Elevadores [º] Elevadores [º] 0 −1.6 −1.8 −2 −2.2 Tempo [s] Figura 2.5: Modos Longitudinais - Phugoid e Perı́odo Curto. 2.3.2 Modos Laterais - Yaw, Espiral e Roll De forma análoga aos modos longitudinais, da expansão de |λI − Alat | = 0 onde Alat agora representa a dinâmica lateral de dimensão 5x5, chega-se uma equação de 5a ordem. Esta equação pode ser factorizada em 4 factores em que um deles é quadrático (modo yaw ). Dois 7 Aeronave - simulação e análise do modelo dos outros 3 factores correspondem ao modo roll e ao espiral e o último factor (com valor próprio nulo) representa a variável de estado,não realimentada, ψ. λ(λ + e)(λ + r)(λ2 + 2ζy wy λ + wy2 ) = 0 (2.8) O modo oscilatório de Yaw representado na figura 2.6 é um modo de oscilação lateral que é excitado introduzindo perturbações no leme. Como se observa da figura 2.6 verifica-se que ψ aumenta ao longo do tempo, sendo tal o esperado visto que ao leme foi aplicado um escalão. O ângulo β inicialmente aumenta devido à perturbação tendendo para a posição de equilı́brio no final. Em resultado das perturbações no leme existe também um outro modo lateral. Trata-se do modo espiral representado da figura 2.6. Este modo pode ser estável ou instável, no entanto é sempre muito lento. Como se observa pela figura o modo espiral trata-se de um volta praticamente coordenada, no referencial Terra, volta na qual a inclinação provoca a compensação da força centrı́fuga com a componente radial de sustentação. Face a perturbações nos ailerons é excitado o modo de roll, que se observa na figura 2.6. Como é visı́vel a perturbação nos ailerons provoca uma variação do roll, ângulo φ, e ao fazer os ailerons retornar à sua posição original o ângulo φ retorna ao estado inicial. Este modo permite também a manobra de curva por parte da aeronave. 0 0 −ψ β −10 −5 −15 φ [º] ψ e β [º] −5 −20 −10 −25 248 250 252 254 256 Tempo [s] 258 260 1000 −15 200 Y [m] 500 300 250 300 350 400 450 350 400 450 0.1 −500 −1000 0 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 X [m] Ailerons [º] −0.1 0 Leme [º] 250 0 −0.25 −0.2 −0.3 −0.4 −0.5 200 250 300 Tempo [s] 350 400 450 −0.5 200 Tempo [s] Figura 2.6: Modos Laterais - Yaw, Espiral e Roll. 2.3.3 Caracterização dinâmica Tendo em conta o ponto de equilı́brio definido é possı́vel obter o modelo linearizado do sistema. ẋ = Ax + Bu y = Cx + Du (2.9) No caso em estudo são admitidos como estados do sistema as saı́das referidas anteriormente assim como as dinâmicas dos actuadores e a dinâmica para o sistema propulsor. Desta forma e calculando os valores próprios da matriz A é possı́vel calcular todos os pólos do sistema. Foram 8 Aeronave - simulação e análise do modelo obtidos os seguintes pólos: Pólos = [0, −27.41, −0.54 ± j1.72, −0.01, −5.21 ± j6.11 −11.26, −0.04 ± j0.52, −60, −60, −60, −60] (2.10) Os quatro pólos em -60 correspondem às dinâmicas dos actuadores e o pólo em -11.26 corresponde à dinâmica do sistema propulsor, sendo que os restantes correspondem aos pólos dos modos descritos anteriormente, sendo possı́vel estabelecer uma ligação. Os modos phugoid, perı́odo curto e yaw são modos oscilatórios, e como tal tem pólos complexos conjugados a eles associados. Sendo o modo de perı́odo de curto muito rápido terá de ter largura de banda mais elevada, pelo que corresponde aos pólos em −5.21 ± j6.11. O modo yaw é também um modo rápido sendo portanto os pólos correspondentes aos colocados em −0.54 ± j1.72. Finalmente ao modo phugoid estão associados os pólos em −0.04 ± j0.52 o que também está de acordo como observado na figura 2.5 em que este modo é lento. O modo de roll corresponde a um sistema de 1a ordem ao qual corresponde o pólo em -27.41 rad/s. Resta apenas o pólo em -0.01 rad/s que corresponde ao modo espiral. O pólo em 0 corresponde à variável de estado ψ que não é realimentada pelo sistema. Realizou-se de seguida o estudo de outros pontos de equilı́brio com a alteração da velocidade da aeronave. Estudaram-se os casos para as velocidades de 21.16 m/s, 15 m/s e 30 m/s, embora seja possı́vel encontrar inúmeros pontos de equilı́brio com a velocidade. Na tabela 2.1 apresentam-se alguns pontos de equilı́brio para a aeronave. Velocidade (m/s) 18 21 24 -0.0481 -0.0285 -0.0169 4.72 6.24 8.22 15 ηe (rad) -0.0790 TH (%) 3.88 27 -0.0084 11.00 30 -0.0023 14.57 Tabela 2.1: Pontos de equilı́brio para diferentes velocidades. Na figura 2.7 observa-se a dependência do lugar geométrico dos valores próprios do sistema para as velocidades referidas. À medida que a velocidade aumenta os pólos deslocam-se para a esquerda do semi-plano complexo esquerdo, ou seja correspondentes dinâmicas mais rápidas. 10 8 6 V=21.15 V=15 V=30 4 2 6 0 4 −2 −4 θ [º] Imaginario 2 0 −6 −2 −8 −4 −10 −6 −8 −10 −70 V=21.15 V=15 V=30 −12 −14 −60 −50 −40 −30 −20 −10 0 10 Real −16 240 260 280 300 320 340 360 Tempo [s] 380 400 420 440 Figura 2.7: Dependência do lugar geométrico dos valores próprios do sistema com o ponto de equilı́brio e variação da dinâmica com a velocidade. 9 Aeronave - simulação e análise do modelo Na figura é também possı́vel constatar essas dinâmicas, obtidas com o modelo não linear, com o aumento da velocidade, em que no caso de 30 m/s temos as dinâmicas mais rápidas, que correspondem a tempos de estabelecimento menores. Realizou-se uma série de testes tendo em vista uma percepção da dinâmica da aeronave e das implicações das variações das entradas nas saı́das. As perturbações, com duração de 20 segundos, realizadas com aeronave em equilı́brio (voo horizontal rectilı́neo), foram de 1 grau para os deflectores e de 10% para a potência do motor. Na tabela 2.2 apresenta-se os vários casos notando que a 2a coluna corresponde ao equilı́brio. U (m/s) V (m/s) W (m/s) P Q R φ (rad) θ (rad) ψ (rad) 21.1558 0 0.0012 0 0 0 0 0.0001 0 Perturbação em: ηa ηe ηf 33.4471 19.6937 21.9972 -1.0611 0 0 -0.7258 0.2398 -0.0508 -0.1128 0 0 0.3756 0.0020 0.0064 -0.2350 0 0 -1.0281 0 0 -0.1976 -0.0245 0.0009 -4.8365 0 0 ηr 21.9120 0.1014 -0.0589 0.0135 0.0307 0.1153 0.2669 -0.0153 1.2916 TH 20.3652 0 0.0396 0 -0.0173 0 0 0.1560 0 Tabela 2.2: Variação nas saı́das face a perturbações em cada entrada. No primeiro teste, perturbação nos ailerons, é notória, como seria de esperar, a sua ligação às velocidades de rotação. Este revela ter uma dinâmica muito rápida, visı́vel na grande variação de ψ, e uma ligação às rotações não só segundo ψ mas também segundo φ e θ devido à sustentação. Pode permitir assim realizar curvas com grande eficiência. De notar ainda o aumento considerativo em U (velocidade ”instantânea”do avião segundo Ox ) devido ao facto de o avião se encontrar a descer. Perturbando os elevadores, consegue-se uma variação de θ, como seria de esperar, o que permite atingir diferentes altitudes. As saı́das, como é visı́vel, revelam ter para o caso dos flaps uma dependência bastante menor que qualquer outra entrada. Estes são usados normalmente e apenas em aterragens e descolagens tendo em vista o aumento da sustentação. Perturbando o leme vê-se que as implicações nas saı́das são semelhantes ao caso dos ailerons. Contudo este revela ser mais lento (para o mesmo tempo deu menos voltas) e ser mais independente às outras variáveis de rotação (P e Q) o que o torna mais limitativo. Pode parecer, como se pode observar pela tabela 2.2, que o aumento na potência do motor não influencia as velocidades. Tal não é verdade, como seria de esperar, pois apesar das velocidades do avião se manterem constantes no referencial Avião, estas em relação ao referencial Terra aumentam (Vz =0 m/s → Vz '4 m/s). Este facto é visı́vel pelo aumento de θ. 10 Capı́tulo 3 Perturbações Quando se efectua o controlo automático de uma aeronave o seu movimento pode ser afectado pelos comandos do sistema de guiamento, efeitos atmosféricos e ruı́do nos sistemas e sensores. Visto que os comandos do sistema de guiamento são perturbações intencionais ou desejadas estuda-se nesta secção os efeitos atmosféricos e o ruı́do nos sistemas e sensores (perturbações indesejadas) de modo a que o sistema de controlo as possa atenuar. 3.1 Perturbações atmosféricas O ar no qual a aeronave voa nunca se encontra parado o que provoca um erro na sua trajectória. Estas perturbações no ar, também conhecida por turbulência, tem a sua origem em diversos factores onde o único método capaz de analisar de uma maneira eficaz os problemas dinâmicos onde esta está envolvida são os métodos estatı́sticos. No entanto as rajadas de ar, que são bem definidas por uma função determinı́stica particular, também ocorrem mas de uma forma aleatória. Apresenta-se de seguida o modelo de uma rajada de ar discreta assim como os modelos contı́nuos de turbulência. 3.1.1 Modelo de uma rajada de ar discreta O modelo matemático, representativo de uma rajada discreta (figura 3.1), que melhor se adequa a uma aeronave tem a forma de (1-cos) sendo definido por: 0 xg (x) = Vm (1 2 Vm − cos( dπtm )) se se se x<0 0 < x < dm x > dm (3.1) onde Vm representa a amplitude que varia entre 1m/s (calma) e 20m/s (severa), x a distância percorrida e dm o comprimento da rajada em metros. 3.1.2 Modelos contı́nuos de turbulência Existem duas representações analı́ticas para a função densidade espectral de potência da turbulência atmosférica que tem grande utilidade no estudo de controlo de aeronaves. A primeira representação, espectro de Von Karman, é a melhor adaptada ao espectro obtido de registos de turbulência atmosférica. No entanto, em estudos analı́ticos é menos adequada 11 Perturbações 12 10 Velocidade do Vento (m/s) 8 6 4 2 0 0 2 4 6 8 10 12 14 16 18 20 Distância (m) Figura 3.1: Rajada discreta com Vm = 10 m/s e dm = 10 m. por causa das potências fraccionarias. Em baixo define-se o modelo de Von Karman: σu2 (2Lu /π) Φug (Ω) = [1 + (1.339Lu Ω)2 ]5/6 (3.2) Φvg (Ω) = σv2 (Lv /π)[1 + 8/3(1.339Lv Ω)2 ] [1 + (1.339Lv Ω)2 ]11/6 (3.3) Φwg (Ω) = σw2 (Lw /π)[1 + 8/3(1.339Lw Ω)2 ] [1 + (1.339Lw Ω)2 ]11/6 (3.4) A segunda representação, modelo de Dryden, é mais adequada porque, por ser mais simples, é mais facilmente programada e por isso foi a utilizada no trabalho, Φug (Ω) = σu2 (2Lu /π) (1 + L2u Ω2 ) (3.5) σv2 (Lv /π)(1 + 3L2v Ω2 ) Φvg (Ω) = (1 + L2v Ω2 )2 Φwg (Ω) = (3.6) σw2 (Lw /π)(1 + 3L2w Ω2 ) (1 + L2w Ω2 )2 (3.7) Nos dois modelos, Ω = Uw0 é a frequência espacial em rad/f t, onde w é a frequência angular em rad/s; σ é a amplitude r.m.s da turbulência em f t/s, U0 é a velocidade da aeronave em f t/s e L é um factor de escala em f t. Os espectros das perturbações das velocidades angulares devido à turbulência são dados por [11]: 1 w 3 ) σw2 0.8( πL 4b Φpg (Ω) = Lw (1 + 4bΩ )2 π (3.8) Φqg (Ω) = Ω2 Φ (Ω) 2 wg 1 + ( 4bΩ ) π (3.9) Φrg (Ω) = Ω2 Φvg (Ω) 1 + ( 3bΩ )2 π (3.10) 12 Perturbações onde b é a envergadura. Para o caso do aeromodelo de 1/4 de escala de um Piper PA 18 Super Cub b = 2.7 m [1]. De acordo com as referências militares [11], para altitudes menores que 300 m tem-se: σw = 0.1W20 ; σu σv 1 = = σw σw (0.177 + 0.000823h)0.4 Lu = h; Lv = Lw = h (0.177 + 0.000823h)1.2 em que W20 é a velocidade do vento a 6 m de altura e h representa a altitude. Tipicamente para turbulências calmas a 6 m a velocidade do vento é 8 m/s, para turbulências moderadas a velocidade do vento é 15 m/s e para turbulências severas 23 m/s. Para altitudes maiores que 600 m a turbulência assume-se isotropica. Assim tem-se: σu = σw = σv Lu = Lv = Lw = 1750 f t A intensidade da turbulência é, neste caso, determinada a partir de uma tabela [11] que indica a intensidade em função da altitude e da probabilidade da turbulência ser excedida. Finalmente para altitudes entre 300 m e 600 m as velocidades de turbulência lineares e as angulares são determinadas a partir de uma interpolação linear dos casos obtidos para 300 m e 600 m. De modo a gerar o sinal de turbulência é utilizado ruı́do branco com uma densidade espectral de potência ΦN (w) = 1.0. Este passa por um filtro com uma determinada resposta em frequência de modo a que o sinal filtrado tenha uma densidade espectral de potência igual a Φi (w). Com isto temos: Φi (w) = |Gi (s)|2s=jw (3.11) Com as densidades espectrais de potência definidas anteriormente, (3.5 a 3.10), chegam-se aos seguintes filtros: √ Ku s + λu √ Kv (s + βv ) Gv (s) = (s + λv )2 √ Kw (s + βw ) Gw (s) = (s + λw )2 q 1 w 3 σw 0.8( πL ) 4b Gp (s) = √ 4b s) Lw (1 + πU 0 Gu (s) = (3.12) (3.13) (3.14) (3.15) Gq (s) = πsGw (s) 0 4b(s + πU ) 4b (3.16) Gr (s) = πsGv (s) 0 3b(s + πU ) 3b (3.17) 13 Perturbações em que, Ku = 2U0 σu2 3U0 σv2 3U0 σw2 ; Kv = ; Kw = Lu π Lv π Lw π λu = U0 U0 ; λv = ; Lu Lv λw = U0 U0 U0 ; βv = √ ; βw = √ Lw 3Lv 3Lw Esta turbulência afecta a dinâmica da aeronave logo as perturbações devem aparecer em todos os estados (saı́das e estados realimentados). Assim é necessário ”passar”estas perturbações pela aeronave. De modo a simular estas perturbações, tanto a rajada de ar como a representação continua de turbulência, utilizou-se blocos existentes em Simulink que se baseiam nos modelos. De seguida apresenta-se um exemplo de turbulência continua utilizando estes mesmos blocos. 3 0.4 2.5 P Q R 0.3 Velocidade Angular do Vento (m/s) Velocidade Linear do Vento (m/s) 2 1.5 1 0.5 0 −0.5 U V W −1 −1.5 0 2 4 6 8 10 12 0.2 0.1 0 −0.1 −0.2 14 16 18 20 Tempo (s) −0.3 0 2 4 6 8 10 12 14 16 18 20 Tempo (s) Figura 3.2: Velocidades lineares e angulares com altitude= 1000 m e velocidade= 21 m/s. 3.2 Sensores A maioria dos sensores utilizados nos sistemas de controlo na aviação são sensores de inércia, tal como giroscópios e acelerómetros. Assumiu-se que através de um número mı́nimo de sensores, é possı́vel obter toda a informação para o controlo e estabilização da aeronave (anexo B). Para a medição das velocidades angulares recorrem-se a giroscópios de rotação; para a medição dos ângulos de pitch, roll e yaw recorrem-se a giroscópios verticais. Para medição das velocidades e altitude utilizam-se velocı́metros e altı́metros respectivamente. Existem ainda sensores que nos possibilitam a medição dos ângulos de ataque e sideslip. Admite-se que os sensores não introduzem dinâmicas adicionais (funcionam apenas como ganhos proporcionais). O ruı́do no sinal de saı́da, normalmente de origem eléctrica, é tipicamente representado por um sinal aleatório com distribuição Gaussiana (usualmente caracteriza-se o ruı́do como sendo estacionário de média nula). 14 Capı́tulo 4 Estrutura do Sistema de Controlo O objectivo deste capı́tulo é o projecto de um sistema de controlo para a aeronave. As principais variáveis são reguladas por cadeias de realimentação projectadas separadamente. Para os controladores das várias cadeias, foram utilizadas neste capitulo técnicas de controlo clássico (sistemas de controlo usando PIDs). Visto que o objectivo nesta fase não era o desenvolvimento dos controladores mas sim o estabelecimento do diagrama de blocos do sistema de controlo, as especificações para afinação dos controladores são assim pouco apertadas. Para as principais cadeias de controlo requeridas pelas manobras mais usuais da aeronave escolheram-se como variáveis: • Ângulo de pitch, θ. • Ângulo de yaw, ψ. • Ângulo de roll, φ. • Velocidade, U. • Altitude, h. Com base nestas variáveis um piloto ou um sistema de guiamento pode controlar a trajectória da aeronave. O ângulo de yaw e o ângulo de roll permitem realizar curvas. A altitude, bem como manobras de subida/descida, pode ser controlada através do ângulo de pitch e a leitura dos sensores de altitude. É ainda feito o controlo da velocidade, visto que em certos casos com esta variável controlada é possı́vel estabelecer relações quase directas entre as variáveis de controlo (por exemplo o ângulo de pitch e a variação de altitude). A aeronave contém 5 variáveis de entrada: ailerons, flaps, leme, elevadores e potência do motor (throttle). A função dos flaps é, principalmente, aumentar a sustentação máxima nos momentos de aterragem e descolagem o que fez com que não fosse considerado no sistema de controlo considerando-se que permanecem na posição de repouso. Dadas as variáveis de entrada verifica-se que não existe apenas uma única estruturação das cadeias de controlo por forma a realizar as tarefas desejadas. 4.1 Controlo longitudinal O controlo longitudinal consiste no controlo da velocidade e altitude. O controlo da velocidade é benéfico pois existe uma grande sensibilidade da velocidade em relação às variações de pitch, que tem necessariamente de ocorrer com a variação de altitude. Para além disso, com a velocidade controlada existe quase uma relação directa com o ângulo de pitch e a variação de 15 Estrutura do Sistema de Controlo altitude, o que é uma caracterı́stica muito vantajosa para o guiamento. Desta forma estas duas cadeias de controlo funcionam em simultâneo. Como descrito anteriormente existem várias opções para as cadeias de controlo, sendo neste trabalho apresentado duas opções. No caso do controlo longitudinal escolheram-se as seguintes cadeias de controlo: • Elevadores, ηe → velocidade, U. • Potência, TH → altitude, h. ou • Elevadores, ηe → altitude, h. • Potência, TH → velocidade, U. No primeiro caso a cadeia de controlo desenvolvida é muito simples e foi construı́da numa base muito intuitiva. Este esquema não é muito viável visto que levaria a maiores consumos de combustı́vel porque para manobras de subida usa-se apenas o motor sendo as variações da velocidade obtidas variando o arrasto. Outra limitação verifica-se quando se trabalha com razoáveis diferenças de velocidade onde pode não ser possı́vel manter uma altitude. No sistema de controlo de velocidade (figura 4.1) o controlador é um PID com ganhos kp = 0.08, ki = 0.005 e kd = 0.1. + r ηe K(s) - y G(s) U Figura 4.1: Sistema de controlo de velocidade. Na figura 4.2 apresenta-se o resultado de uma variação da velocidade do estado de equilı́brio (21.156 m/s) para 22 m/s. Velocidade [m/s] 22.2 22 21.8 21.6 21.4 21.2 21 296 298 300 302 304 306 308 310 298 300 302 304 306 308 310 25 Elevadores [º] 20 15 10 5 0 −5 296 Figura 4.2: Controlo da velocidade. Como se observa, a resposta apresenta um comportamento semelhante a um sistema de 1a ordem, ou seja sem grandes sobreelevações, temos porém um tempo de estabelecimento de 16 Estrutura do Sistema de Controlo cerca de 10 a 15 segundos. Note-se que, apesar de ser pouco visı́vel, existe um efeito de fase não minima devido ao uso dos elevadores como actuador. O esquema de controlo para a altitude encontra-se na figura 4.3, em que o controlador é um simples controlador proporcional de ganho -0.01. + r th K(s) - y G(s) Pos z Figura 4.3: Sistema de controlo de altitude. Variando a altitude em 10 metros obtém-se o resultado na figura 4.4. 1012 1010 Altitude [m] 1008 1006 1004 1002 1000 998 545 550 555 545 550 555 560 565 570 560 565 570 16 Motor [%] 14 12 10 8 6 Tempo [s] Figura 4.4: Variação da altitude. O tempo de estabelecimento é de cerca de 15/20 segundos seguindo posteriormente a referência com erro estático nulo. Nas figura 4.5 mostram-se os efeitos da variação da altitude na velocidade e ângulo θ. Velocidade [m/s] 21.3 21.25 21.2 21.15 21.1 545 550 555 545 550 555 560 565 570 560 565 570 7 6 θ [º] 5 4 3 2 1 0 Tempo [s] Figura 4.5: Perturbação na velocidade e no pitch causada pela variação na altitude. Como se observa as variáveis depois de uma perturbação induzida pela variação da referência acabam por tender para as suas condições de equilı́brio. No caso da velocidade esta estabiliza 17 Estrutura do Sistema de Controlo muito mais depressa graças ao controlador de velocidade que se encontra a funcionar em paralelo. No caso da velocidade ser controlada a partir do motor (figura 4.6), o controlador é um PID com ganhos kp = 0.5, ki = 0.25 e kd = 0.05. + r th K(s) - y G(s) U Figura 4.6: Sistema de controlo de velocidade. A variação na referência da velocidade (de 21.156 m/s para 22 m/s) está representado na figura 4.7. Velocidade [m/s] 22.2 22 21.8 21.6 21.4 21.2 21 296 298 300 302 304 306 308 310 298 300 302 304 306 308 310 100 Motor [%] 80 60 40 20 0 296 Tempo [s] Figura 4.7: Controlo da velocidade. Como se constata, a variação da velocidade é bastante rápida com erro estático nulo, não se observando qualquer efeito de fase não minima. O sistema de controlo para a altitude (figura 4.8) é um pouco mais complexo. Consiste na cascata de dois controladores PID, visto que a variação de altitude é atingida com a variação de ângulo de pitch. O 1o controlador (K1), o da altitude é um simples controlador proporcional de ganho -0.02; o 2o controlador (K2) para o ângulo de pitch é um PI (a componente derivativa é ”aproveitada”através do estado Q sendo a constante K igual a 0.4) cujos valores são kp = −6 e ki = 0.001. Estes valores tem em conta que o 2o controlador deve ”reagir”de uma forma mais rápida que o 1o . r + K1(s) Pos z + K2(s) - + + ηe K θ y G(s) Q Figura 4.8: Sistema de controlo de altitude. Variando a altitude de 1000 m para os 1010 m como se observa na figura 4.9 os tempos de resposta são aceitáveis e com erro estático nulo. 18 Estrutura do Sistema de Controlo 1012 Altitude [m] 1010 1008 1006 1004 1002 1000 998 544 546 548 550 552 554 556 558 560 562 544 546 548 550 552 554 556 558 560 562 0 −2 Elevadores [º] −4 −6 −8 −10 −12 Figura 4.9: Variação da altitude. Nas figura 4.10 é possı́vel observar as perturbações na velocidade e a variação no ângulo de pitch, como já havia sido referido anteriormente. Velocidade [m/s] 21.3 21.2 21.1 21 20.9 544 546 548 550 552 554 556 558 560 562 544 546 548 550 552 554 556 558 560 562 10 8 θ [º] 6 4 2 0 Tempo [s] Figura 4.10: Perturbação na velocidade e no pitch causada pela variação na altitude. Verifica-se, que existem pequenas perturbações na velocidade o que se consegue rejeitar através do controlador de velocidade. 4.2 Controlo lateral O controlo lateral é importante para que a aeronave possa executar voltas. A manobra de curva pode ser obtida de duas formas; uma aeronave faz uma volta variando o leme (o que implica variação no ângulo de yaw ) ou inclinando-se lateralmente (ângulo de roll ) no sentido da rotação o que tem como consequência uma variação no ângulo ψ. Desta forma é possı́vel também desenvolver duas cadeias de controlo. • Leme, ηr → ângulo de yaw, ψ. ou • Ailerons, ηa → ângulo de yaw, ψ. 19 Estrutura do Sistema de Controlo É também necessária a actuação no leme para que a aeronave possa realizar voltas coordenadas, ou seja evitar deslizamento horizontal, devendo desta forma o ângulo de sideslip (β) ser nulo. • Leme, ηr → sideslip, β = 0 Apenas para o segundo caso se encontra em funcionamento o regulador de sideslip. Para o primeiro caso o esquema de controlo é muito simples, controlador PD de ganhos kp = −1 e kd = −6, e pode observar-se na figura 4.11. + r ηr K(s) - y G(s) ψ Figura 4.11: Sistema de controlo de curvas. Com o controlador desenvolvido é então possı́vel realizar curvas, como é possı́vel observar na figura 4.12, que mostra uma trajectória descrita no plano [x,y], que resulta da variação do ângulo de yaw pelo controlador lateral, tal como se mostra na figura 4.13. 400 Posição Y [m] 300 200 100 0 −100 0 2000 4000 6000 8000 10000 12000 14000 16000 18000 Posição X [m] 20 Leme [º] 10 0 −10 −20 340 360 380 400 420 440 460 Tempo [s] Figura 4.12: Controlo lateral - Variação da posição resultante do controlo lateral. φ [º] 5 0 −5 340 360 380 400 420 440 460 340 360 380 400 420 440 460 340 360 380 400 420 440 460 ψ [º] 15 10 5 0 β [º] 2 0 −2 Tempo [s] Figura 4.13: Controlo lateral - yaw, roll e sideslip. 20 Estrutura do Sistema de Controlo Visto que não existe nenhum regulador para o ângulo de sideslip existiram pequenas perturbações no ângulo β como se pode observar na figura 4.13. Este primeiro controlador actuando apenas no leme será eventualmente insuficiente visto que não conseguirá realizar manobras de curvas muito ”apertadas”(grandes variações no ângulo de yaw num curto espaço de tempo). Foi assim desenvolvido um segundo controlador que permite realizar manobras de uma forma mais rápida, e que para tal recorre ao uso dos ailerons. Desta forma realimentando as duas variáveis e actuando nos ailerons obtém-se o sistema de controlo da figura 4.14, que permite realizar uma volta apertada. r + K1(s) - y ηa + K2(s) - G(s) φ ψ Figura 4.14: Sistema de controlo de curvas. Como se observa a estrutura do sistema de controlo consiste na cascata de dois PIDs, em que o 2o controlador (interno) foi projectado de forma a reagir mais rapidamente. Por forma a que a aeronave realize uma volta coordenada é necessário que β = 0. Para tal implementou-se o sistema de regulação do ângulo de sideslip que se mostra na figura 4.15. r + ηr K(s) - G(s) y β Figura 4.15: Sistema de controlo de curvas. Os ganhos para os controladores são: • Controlador de yaw (kp =0.3) • Controlador de roll (kp = 2 e ki = 0.02) • Controlador de sideslip (kp = 0.15, ki = 0.15 e kd = 0.3) Tendo em conta os sistemas de controlo desenvolvidos é possı́vel realizar curvas como é visı́vel na figura 4.16. 21 Estrutura do Sistema de Controlo 400 Posição Y [m] 300 200 100 0 −100 0 2000 4000 6000 8000 10000 12000 14000 16000 18000 Posição X [m] 10 Ailerons [º] 5 0 −5 −10 340 360 380 400 420 440 460 Tempo [s] Figura 4.16: Controlo lateral - Variação da posição resultante. Note-se que as figuras 4.12 e 4.16 são praticamente iguais pois simulou-se a mesma manobra podendo se observar as diferenças, entre estruturas, nas variáveis manipuladas (yaw, roll e sideslip). φ [º] 5 0 −5 340 360 380 400 420 440 460 340 360 380 400 420 440 460 340 360 380 400 420 440 460 ψ [º] 15 10 5 0 β [º] 0.5 0 −0.5 Tempo [s] Figura 4.17: Controlo lateral - Variação da posição resultante do controlo lateral. Dadas as maiores limitações no primeiro sistema, tanto para o controlo longitudinal como no lateral, como seria de esperar, irá ter-se em conta a segunda estrutura de controlo, com alguns ajustes que se irá ver mais adiante, em detrimento da primeira. 22 Capı́tulo 5 Controladores Locais Lineares O objectivo neste capitulo é o projecto de controladores locais lineares para a aeronave usando para tal técnicas polinomiais. A dinâmica linearizada da aeronave, como foi visto anteriormente no capı́tulo 2, varia com a velocidade. Tendo isto em conta projectaram-se, para cada uma das condições de voo, controladores locais lineares. Para o projecto de controladores polinomiais é necessário o conhecimento das funções de transferência entrada-saı́da que se querem controlar. É assim preciso identificar os sistemas para as várias cadeias de controlo da aeronave. Visto que os controladores são projectados no domı́nio discreto é necessário amostrar o sistema. 5.1 Amostragem do Sistema Na figura 5.1 apresenta-se o modelo representativo do sistema amostrado. Na figura o bloco D/A representa um conversor digital-analógico enquanto que o A/D um conversor analógicodigital (ZOH - Zero Order Hold ). u(kh) D/A u(t) G(s) Sistema y(t) A/D y(kh) Figura 5.1: Modelo de um sistema amostrado. Em controlo digital uma das principais questões é a escolha do perı́odo de amostragem. Este varia muito dependente da aplicação (desde milisegundos até horas). Como regra geral o perı́odo de amostragem deve ser aproximadamente igual a um quinto da constante de tempo mais rápida, mas também irá depender da velocidade de computação e outros factores (eg. aquisição de dados). Quando um sistema contı́nuo é amostrado, os pólos, p, são transformados em epTs , onde Ts é o perı́odo de amostragem. Porém, não existe uma transformação simples para os zeros. Por exemplo, não é verdade que um sistema contı́nuo com os zeros no semi-plano esquerdo transforme-se num sistema discreto com os zeros no interior do cı́rculo unitário. Por outro lado, é possı́vel obter um sistema discreto com todos os zeros no interior do cı́rculo unitário de um sistema contı́nuo com zeros no semi-plano direito. Verifica-se que todos os sistemas contı́nuos com excesso de pólos superior a 2 irá sempre originar sistemas discretos com zeros instáveis se o perı́odo de amostragem for suficientemente pequeno. O menor perı́odo de amostragem encontra-se também limitado pelo tempo necessário para calcular a saı́da de controlo e pelo tempo para actualizar os parâmetros. Uma possı́vel estratégia para ultrapassar isto é actualizar os parâmetros entre perı́odos de amostragem e calcular a saı́da de controlo em cada perı́odo de amostragem baseado na mais recente actualização dos parâmetros. 23 Controladores Locais Lineares Outra vantagem em manter o perı́odo de amostragem razoavelmente longo é que a largura de banda do controlador fica limitada, e assim dinâmicas de alta frequências não irão ser excitadas inadvertidamente pelo controlador. Todavia perı́odos de amostragem demasiadamente longos podem provocar tempos em malha aberta excessivos. Assim quando se escolhe um perı́odo de amostragem, Ts , tem que se ter em conta diversos factores como: • Largura de banda pretendida. • Localização dos zeros do sistema discretizado. • Possı́vel perda de controlabilidade e/ou observabilidade por amostragem. • Tempo de cálculo. • Tipo de perturbações a que o sistema está sujeito. • O máximo tempo admissı́vel para o sistema permanecer em cadeia aberta. Tendo estes items em conta e o interesse que a amostragem replique as principais caracterı́sticas do sistema o que se optou por fazer foi perturbar o sistema e observar a resposta definindo-se um tempo de amostragem capaz de reproduzir o sistema - num tempo de subida definiu-se 30 amostras. Assim estabeleceu-se como tempo de amostragem 0.1 s. Com o sistema amostrado passa-se à identificação. 5.2 Identificação Para o projecto de controladores polinomiais é necessário o conhecimento das funções de transferência entrada-saı́da do sistema que se pretende controlar. No caso da aeronave, como se viu no capı́tulo 4, temos 4 cadeias de controlo - velocidade, altitude, latitude e sideslip. A cadeia de altitude foi projectada como uma cascata de dois controladores. Porém no projecto de controladores locais considerou-se uma nova cadeia definida unicamente pelo controlador de pitch, visto que o controlo da altitude fará parte do sistema de guiamento. Todavia manteve-se a arquitectura anterior, para a identificação com o intuito de evitar instabilidade. A cadeia de sideslip, têm com finalidade levar o β a zero de modo a melhorar a resposta da cadeia lateral. Assim para esta cadeia manteve-se em funcionamento o controlador obtido no capı́tulo 4. A identificação para cada cadeia não pode ser feita excluindo as outras, visto que as variáveis a controlar não são independentes entre si. Por exemplo, as cadeias de velocidade e altitude, são influenciadas tanto pelo motor como pelos elevadores. Assim como a cadeia de latitude e de voltas coordenadas estão ”ligadas entre si”pelos ailerons e leme. Todas estas influências serão tratadas mais à frente. Inicialmente antes de realizar a identificação é necessário escolher o método a utilizar. Este pode ser paramétrico ou não paramétrico. O método não paramétrico permite determinar, sob a forma de tabela ou gráficos, as respostas impulsivas e em frequência de um sistema linear. Consegue-se assim uma primeira ideia das 24 Controladores Locais Lineares principais caracterı́sticas dinâmicas, como as constantes de tempo dominantes, ganhos estáticos e presença de atraso puro. Visto que o objectivo é o controlo do sistema, e não a caracterização exaustiva do processo em causa, escolheu-se o método paramétrico para a identificação, dado que este fornece modelos matemáticos adequados ao projecto de controladores. Para além disso os métodos não paramétricos revelam sérias dificuldades na obtenção de modelos precisos em sistemas que necessitem de trabalhar em cadeia fechada. Dado que tal é necessário, como iremos ver mais adiante, o método paramétrico escolhido terá que tratar ruı́do colorido. Para tal temos as seguintes alternativas: • Variáveis Instrumentais (IV ). • Minimização do Erro de Predição (PEM ). • Máxima Verosimilhança (Maximum Likehood ). Nota: os mı́nimos quadrados, em presença de ruı́do colorido, fornecem uma estimativa polarizada. Escolheu-se a Máxima Verosimilhança (anexo C) por ser o mais geral e poderoso apesar de ser computacionalmente mais pesado. 5.2.1 Sinal Utilizado Após a escolha do método, seguem-se os sinais utilizados na identificação. Estes, independentemente do método, se forem mal escolhidos podem prejudicar o sucesso da identificação. Dir-se-ia logo à partida que o sinal deve abranger toda a gama de frequências do sistema de modo a se poder caracterizá-lo e por consequente identificá-lo. Por outro lado para que a estimativa dos parâmetros exista e seja única é necessário que os dados levem a condições de excitação persistente (dados suficientemente ”ricos”). Um sinal em que tal se verifica e que é bastante usual na identificação é o Pseudo Random Binary Signals - PRBS. Este sinal tem as seguintes caracterı́sticas: • Binário - possui apenas dois estados (+V e -V). • Determinı́stico - comuta entre estados em instantes discretos sendo estes pré-determinados. • Periódico - perı́odo T0 = N.h, onde N é inteiro ı́mpar. • Em cada perı́odo existem N +1 2 intervalos a um estado e N −1 2 a outro. • A função de autocorrelação, num perı́odo, é semelhante a um impulso e o espectro constante. Este, que foi o escolhido, tem uma grande vantagem em relação ao ruı́do branco que é o facto de controlar os valores do sinal. A sua geração foi feita em MATLAB pela função idinput. Nesta é necessário especificar a amplitude, a duração do sinal e por fim o tempo que queiramos que este seja constante entre intervalos. No que diz respeito à amplitude os valores escolhidos foram os mais alargados, de modo a excitar o sistema o suficiente, mas sem passar do plano de trabalho em causa. 25 Controladores Locais Lineares Relativamente à duração do sinal esta deve ser superior ao tempo de estabelecimento do sistema. Há aliás uma propriedade do estimador de máxima verosimilhança, a consistência, que diz que com o aumento das amostras reduz-se a variância da estimativa dos parâmetros. Por consequente usou-se dados com a duração de 10000 s (aproximadamente 2,78 horas). Por fim existe um critério que revela que o mı́nimo perı́odo de tempo do sinal PRBS em que se mantém constante deve ser menor que a menor constante de tempo do sistema. 5.2.2 Estrutura dos Modelos Finalmente, com o sinal a aplicar tratado e o método escolhido pode-se passar à implementação deste último. Em MATLAB, a função armax.m implementa o método de estimação por máxima verosimilhança, podendo-se então obter os polinómios do modelo ARMAX (Auto-Regressive Moving Average with Exogenous Input), A(q)y(t) = B(q)u(t) + C(q)e(t) (5.1) Estes polinómios representam o modo como estes afectam, num dado instante, a saı́da, a entrada e o ruı́do respectivamente. Logo terá que se especificar: • A ordem de A(q) - equivalente ao número de pólos do sistema. • A ordem de B(q) - equivalente ao número de zeros do sistema mais um. • A ordem de C(q) - equivalente ao número de zeros do modelo de ruı́do. • O atraso do sistema. Através de experiências, como a resposta ao escalão, consegue-se prever, mais ou menos, o tipo de sistema pela existência ou não de sobreelevações, oscilações ou derivada na origem. Com isso consegue-se ter uma ideia da ordem do polinómio de A(q). Para os restantes polinómios, também se consegue tirar algumas intuições no entanto optou-se por testar diversas ordens e escolher aqueles que melhores resultados originassem. Depois de se obter os modelos é necessário seleccionar o melhor. Existem diversos critérios mas há uns mais apropriados que outros. Visto que o número de dados é suficiente optou-se por repartir os dados em subconjuntos de treino e validação. O conjunto de treino serve para efectuar a estimação dos parâmetros dos modelos. O conjunto de validação serve para verificar o comportamento dos modelos estimados em dados novos e escolher o modelo que produz erro mı́nimo no conjunto de validação. Realizou-se a seguinte partição dos dados - 2/3 para treino e 1/3 para a validação. Com estes subconjuntos realiza-se uma comparação, através da função do MATLAB ’compare.m’, entre os dados experimentais e a predição 10 passos à frente do modelo obtido. Todos os dados anteriores ao instante actual são usados na predição. Com isto consegue-se obter, em percentagem, o ajuste de treino e de validação. Por não existir o critério ideal validou-se também a nı́vel gráfico, nomeadamente com a resposta ao escalão. 26 Controladores Locais Lineares 5.2.3 Simulação Existem algumas considerações importantes no processo de identificação. Aos dados da simulação removeram-se as tendências lineares pela função do MATLAB ’detrend.m’. Esta subtrai aos dados a recta mais bem ajustada. Tal é feito pois interessa apenas o comportamento dinâmico do processo e não constantes inerentes ao modelo da aeronave, que prejudicam a identificação. Quanto às zonas de funcionamento optou-se por separar o plano de trabalho em 4 zonas velocidade baixa (18 m/s), velocidade média-baixa (22 m/s), velocidade média-alta (26 m/s) e velocidade alta (30 m/s). A escolha destas zonas foi determinada por via experimental. Na escolha dos modelos teve-se em conta o seguinte critério: dos 4 melhores modelos, para cada ponto de funcionamento, em termos de ajuste de validação, seleccionou-se o que tinha melhor ajuste gráfico (resposta ao escalão). Apesar de não ser um processo nada simples, devido à interligação entre estados da aeronave, e de ser uma das fases mais delicadas no projecto de controladores, os resultados da identificação para as várias cadeias apresentam-se no anexo C pois não fazem parte dos objectivos fulcrais do trabalho. 5.3 Princı́pios do Controlo Polinomial O objectivo nesta fase é o projecto de controladores polinomiais com dois graus de liberdade com a estrutura que se mostra na figura 5.2, d r T R u B A y S R Figura 5.2: Esquema de um controlador com dois graus de liberdade. Sendo o processo modelado pela função transferência, H(z) = B(z)/A(z), pretende-se determinar um controlador causal (polinómios R, S e T ) tal que o sistema controlado se comporte como H(z) = Bm (z)/Am (z), em que o modelo desejado para a cadeia fechada deve satisfazer ∂Am − ∂Bm ≥ ∂A − ∂B. O controlador tem os objectivos acima definidos, bem como impor dinâmicas convenientes ao sistema controlado e evitar que este entre em zonas de funcionamento não lineares. Admite-se que o controlador é descrito por: (5.2) R(q)u(k) = T (q)r(k) + S(q)y(k) em que R é mónico e q representa o operador avanço. Após alguma manipulação algébrica (anexo D), o problema consiste em obter R, S e T que 27 Controladores Locais Lineares satisfaçam: BT Bm Ao = AR + BS Am Ao (5.3) onde Ao representa o polinómio observador. A solução para esta problema pode ser consultada no anexo D. A ordem do observador, bem como a sua localização, está também sujeita a certas restrições. A escolha de observadores com dinâmicas muito rápidas (por exemplo com os pólos todos em 0) simplifica as contas mas pode não ser a ideal do ponto de vista da robustez do projecto face à presença de erros de modelação ou da sensibilidade aos efeitos do ruı́do de alta-frequência. Usualmente tornam-se os observadores mais lentos para tornar o controlo mais robusto, técnica que foi adoptada neste projecto. 5.4 Especificações para os controladores Como objectivos gerais de um sistema de controlo podem apontar-se: • Rejeição de perturbações (incluindo ruı́do nos sistemas). • Seguimento de sinais de comando. • Estabilização do sistema. • Robustez do sistema. O projecto de sistemas de controlo realimentados não é trivial, visto não ser possı́vel verificar todas as condições anteriores para todos os valores de frequência. Assim o projecto está sujeito a compromissos no desempenho. Um compromisso evidente é o que opõe o seguimento de comandos e rejeição de ruı́do de perturbações à saı́da contra a rejeição de ruı́do nos sensores. Na secção de estabilidade robusta voltaremos abordar estes tópicos. O projecto de controladores polinomiais baseia-se em funções de transferência desejadas. Neste projecto escolheu-se como funções desejadas as respostas de sistemas contı́nuos de 2a ordem. No caso do sistema total em que existem mais do que dois pólos, a dinâmica dominante é a dos sistemas de 2a ordem sendo escolhidos outros pólos adicionais com dinâmicas mais rápidas de forma a não influenciar significativamente a resposta global. Um sistema contı́nuo de 2a ordem é definido por: H(s) = wo2 s2 + 2ξwo s + wo2 (5.4) com, ( ts = 4.6 ξwo √−ξπ S=e (5.5) 1−ξ2 em que ts representa o tempo de estabelecimento a 1% e S a sobreelevação. 28 Controladores Locais Lineares Definindo o tempo de estabelecimento e sobreelevação temos a resposta desejada para o sistema continuo, o qual no discreto corresponde a, m (z) 1 z+b2 = z2 b+a com, H(z) = B Am (z) 1 z+a2 ξwo o b1 = 1 − α(β + w γ), b2 = α2 + α( ξw γ − β) w 2 a = −2αβ, a = α 2 1 √ w = 1 − ξ, α = e−ξwo ts , β = cos(wts ), γ = sin(wts ) (5.6) Na tabela 5.1 encontram-se definidos os tempos de estabelecimento e sobreelevações para todos os controladores desenvolvidos e para todas as velocidades. Cadeia de controlo Especificações ts (s) Velocidade S(%) ts (s) Pitch S(%) ts (s) Roll S(%) ts (s) Yaw S(%) 18 m/s 2.5 3 3 5 5 5 10 2 22 m/s 2.5 3 3 5 5 5 10 2 26 m/s 2.5 3 3 5 5 5 8 2 30 m/s 2.5 3 3 5 5 5 8 2 Tabela 5.1: Especificações para os Controladores. Como se pode observar na tabela acima para a cadeia de controlo de roll as especificações foram para o tempo de 5s e na sobreelevação de 5%. No entanto, no projecto separado desta cadeia, consegue-se satisfazer especificações mais exigentes. Mas, como esta cadeia é interna à de yaw, tais especificações provocavam resultados insatisfatórios, ao nı́vel da actuação da cadeia de yaw. Salienta-se ainda que em relação à cadeia de yaw para velocidades mais baixas os tempos de estabelecimento são superiores visto que a sustentação para estas velocidades é menor, o que leva a um maior esforço da aeronave para realizar as manobras pretendidas. Finalmente, no que diz respeito aos aspectos relacionados com o projecto dos controladores, estes para as cadeias de velocidade, pitch e roll foram concebidos com efeito integral enquanto que na cadeia de yaw não foi incluı́do efeito integral visto que o próprio sistema já inclui na sua cadeia um integrador. 5.5 Limitações do Sistema - Saturações e Anti-windup A saturação nos actuadores impõe certas limitações que devem ser tomadas em consideração. Um sistema com acção integral combinado com um actuador que possa entrar em zonas de saturações pode dar origem a resultados indesejáveis. Se o erro de controlo é tão elevado que o integrador sature o actuador, a cadeia de retroacção pode ser ”quebrada”, visto que o actuador se mantém saturado mesmo que a saı́da do processo se altere. O integrador, pode então integrar até um valor elevado. Quando o erro é finalmente reduzido, o integral pode ser tão elevado que leve um tempo considerável até que este assuma o seu valor normal, ou seja sempre que 29 Controladores Locais Lineares se atinge estas saturações o sistema torna-se mais lento, o que pode originar sobreelevação excessiva ou mesmo instabilidade. Este efeito é conhecido como integrator windup. Por forma a resolver este problema é adoptada a técnica de Anti-windup que funciona como um condensador a descarregar na zona em que se atinge as saturações, através de uma realimentação. Existem várias opções para a realização do Anti-windup. Uma possibilidade consiste em parar de actualizar o integral quando o actuador entra nas saturações. Outro método, que foi o realizado neste trabalho, e é ilustrado na figura 5.3, consiste em utilizar uma cadeia de realimentação com o sinal de erro entre o sinal a enviar (sinal de controlo) e o sinal saturado (sinal do actuador), que é fornecido ao integrador após multiplicado por um ganho 1/T . Este sinal de erro é nulo quando o actuador não se encontra na zona de saturação, caso contrário a cadeia de realimentação tenta levar este erro para zero (regulador) e tornando assim o sistema mais rápido. A vantagem deste esquema é que pode ser aplicado a qualquer actuador, com caracterı́sticas arbitrárias tais como zonas mortas ou histereses, desde que se possa medir a saı́da do actuador (ou correspondente descontinuidade). 1/T Ganho Controlo Actuação 1 s Integrador Saturação Figura 5.3: Esquema do Anti-windup. Na figura 5.4 observam-se os efeitos indesejáveis das saturações, o que levou a uma sobreelevação mais elevada do que a especificada (tracejado). Com o esquema de anti-windup definido anteriormente observam-se melhorias na resposta. Velocidade (m/s) 23.5 23 22.5 22 21.5 21 20.5 20 60 80 100 120 140 160 180 200 220 240 260 0.25 Sem Anti−windup Com Anti−windup Th (%) 0.2 0.15 0.1 0.05 0 60 80 100 120 140 160 180 200 220 240 260 Tempo (s) Figura 5.4: Exemplo do efeito integrator windup. 30 Controladores Locais Lineares 5.6 Limites de Incerteza nos Modelos e Estabilidade Robusta O problema da estabilidade robusta está relacionado com uma importante questão que é a quantificação da incerteza admissı́vel nos modelos para garantir que o controlador projectado com base num modelo H (que tem erros relativamente ao sistema real) conduz a um sistema em cadeia fechada estável, mesmo quando aplicado ao sistema real Ho . Ou seja, quão grande pode ser o erro entre o sistema Ho e o modelo H, para que o controlador, que estabiliza o modelo H, também estabilize o sistema real Ho . 5.6.1 Funções de Sensibilidade e Sensibilidade Complementar O sistema de controlo tem a seguinte configuração: e d r H ff u H y Hfb Figura 5.5: Esquema do sistema de controlo. No caso especifico do controlo polinomial a função transferência Hf f corresponde a divisão dos polinómios T /R e Hf b corresponde a S/R. Tendo em conta a figura 5.5, é possı́vel obter a função transferência em cadeia fechada: H = T /R Hf f H f f Hf b = S/R Hcl = , 1+L L = Hf b H (5.7) Calculando a derivada de Hcl Hf f 1 Hcl δHcl = = 2 δH (1 + L) 1+L H (5.8) Chama-se função de sensibilidade à função transferência: S= 1 1+L (5.9) A função de sensibilidade complementar é definida como: T =1−S = L 1+L (5.10) 31 Controladores Locais Lineares Tendo em conta as especificações tı́picas dos controladores, atrás referidas, o seguimento da referência na baixa frequência implica T ≈ 1 na baixa frequência; Rejeição de perturbações na baixa frequência, que implica S ≈ 0 na baixa frequência. Ou seja nas bandas de frequência em que se consegue seguir a referência, também se conseguem automaticamente rejeitar as perturbações; Rejeição de ruı́do numa dada de frequência, que implica T ≈ 0 e consequentemente S ≈ 1 nessa banda de frequência, logo não se consegue ter seguimento nem rejeição de perturbações. 5.6.2 Estudo da Robustez Considerem-se duas situações em que o controlador é aplicado respectivamente, ao modelo nominal H e ao sistema real Ho . Em cada caso, define-se os ganhos de malha L e Lo como o produto de todos os ganhos na cadeia: L = Hf b H Lo = Hf b Ho (5.11) Supondo que o controlador estabiliza o modelo nominal, a pergunta que se faz é: qual a condição para que também estabilize o sistema real. A resposta é dada pelo critério de estabilidade de Nyquist, ou seja, o controlador estabilizará o sistema real se o número de voltas do ganho de malha em torno do ponto -1 e o número de pólos instáveis for o mesmo. A condição de estabilidade robusta é pois: |L(jω) − Lo (jω)| < |1 + L(jω)| (5.12) que pode ser escrita como: |Hf b H(jω) − Hf b Ho (jω)| < |1 + Hf b H(jω)| (5.13) Com alguma manipulação algébrica chega-se à seguinte expressão: |H(jω) − Ho (jω)| |1 + Hf b H(jω)| < |H(jω)| |Hf b H(jω)| (5.14) O primeiro termo da desigualdade é o erro multiplicativo de modelação. O segundo termo da desigualdade é o inverso da função de sensibilidade complementar (equação 5.10). Para que o sistema real seja estável, tem então de ser: ¯ ¯ ¯ 1 ¯ |H − Ho | ¯ ¯ ¯ ∆m ¯ > |T |, onde ∆m = |H| (5.15) Sendo l(ω) > |∆m (jω)| um majorante do erro de modelação a cada frequência ω para todos os possı́veis erros multiplicativos ∆m . Esta condição garante a estabilidade não apenas de um único sistema, mas de todos os possı́veis sistemas da classe cujo erro multiplicativo em relação ao sistema nominal, ∆m , é inferior ao majorante l para cada frequência ω. 32 Controladores Locais Lineares Para se estudar a incerteza no modelo do processo são necessárias variantes do modelo nominal. Uma vez que os parâmetros dos modelos obtidos foram estimados estatisticamente (recurso à função ’armax.m’), encontram-se associados a estas estimativas os valores de incertezas (esta função devolve um intervalo de valores). Assim combinando de diferentes formas a variância associada ao valor de cada parâmetro do modelo nominal, podem-se obter alguns modelos que traduzem a incerteza ao conhecimento do processo. 5.6.3 Estudos Realizados Foram efectuados 2 estudos, em termos de robustez, para 2 cadeias - velocidade e pitch. O primeiro consiste em saber se os controladores de velocidade e de pitch são robustos na gama em que foram projectados. Este estudo mostra especial relevância quando se projectam estes controladores numa arquitectura gain scheduling pois aı́ interessa saber se os controladores cumprem o esperado na sua zona de funcionamento. O segundo estudo, consiste em saber até que ponto um único controlador consegue estabilizar o sistema na gama de velocidades desejada (16 m/s - 32 m/s) . Na figura 5.6 apresentam-se os resultados obtidos com o modelo de velocidade para o primeiro caso em estudo (a região testada foi a de 22 m/s). 50 Modelo Nominal Modelo1 Modelo2 Modelo3 Modelo4 Modelo5 Modelo6 40 Amplitude (dB) 30 20 10 0 −10 −20 −30 −3 10 −2 10 −1 0 10 10 1 10 2 10 Frequência (rad/s) Figura 5.6: Diagramas de Bode de modelos de incerteza. Da análise da figura verifica-se que todos os modelos têm um comportamento do tipo passabaixo. Observa-se também que para as altas-frequências todos os modelos ”tendem”para o mesmo valor, o que já seria de esperar visto que todos os modelos obtidos foram identificados a partir de um modelo experimental e não de dados reais, pelo que não são corrompidos por ruı́do de alta-frequência. Deste modo o erro multiplicativo de modelação será do tipo passa-baixo, e o seu inverso será passa-alto. Calculando o inverso do erro multiplicativo de modelação para cada um dos modelos e comparandose com a função sensibilidade complementar (figura 5.7) é então possı́vel observar que todos os modelos, para o controlador desenvolvido, obedecem à condição de estabilidade robusta (5.15). Este mesmo estudo, para a cadeia de pitch, pode ser consultado no anexo D. Conclui-se que nas regiões definidas os controladores obedecem à condição de estabilidade robusta, o que implica que a implementação da técnica de gain scheduling levará a controladores 33 Controladores Locais Lineares 100 Erro1 Erro2 Erro3 Erro4 Erro5 Erro6 Complementar 80 Amplitude (dB) 60 40 20 0 −20 −40 −3 10 −2 −1 10 0 10 10 1 10 2 10 Frequência (rad/s) Figura 5.7: Verificação da condição de estabilidade robusta. robustos dentro das suas gamas de velocidades. Finalmente realizou-se o segundo estudo de robustez, quer para a cadeia de velocidade quer para a de pitch. Para ambos os casos o estudo é baseado no controlador projectado para zona de 22 m/s. Na figura 5.8 é possı́vel visualizar a condição de estabilidade robusta para as duas cadeias. Velocidade Pitch 30 50 Erro18 Erro26 Erro30 Complementar Erro18 Erro26 Erro30 Complementar 40 20 30 Amplitude (dB) Amplitude (dB) 10 0 20 10 −10 0 −20 −10 −30 −3 10 −2 10 −1 10 0 10 1 10 2 10 Frequência (rad/s) −20 −3 10 −2 10 −1 10 0 10 1 10 2 10 Frequência (rad/s) Figura 5.8: Verificação da condição de estabilidade robusta entre os vários modelos locais velocidade e pitch. Nota: Os diagramas de Bode de modelos de incerteza para as duas cadeias podem ser consultados no anexo D Como se observa para a cadeia de velocidade todos os modelos obedecem à condição de estabilidade robusta. Assim é de esperar que apenas um controlador de velocidade seja necessário para qualquer ponto de trabalho. Já para a cadeia de pitch a condição de estabilidade robusta não se verifica para todos os modelos. Tal implica que não se consegue garantir que o uso de um único controlador possa levar à estabilização do sistema em toda a gama de velocidades. 34 Controladores Locais Lineares 5.7 Resultados Nesta secção encontram-se os resultados relativos, ao projecto de controladores baseado nas técnicas polinomiais, para as cadeias de velocidade e de pitch. Os controladores polinomiais obtidos para as várias cadeias e regiões definidas podem ser consultados no anexo D. São apenas apresentados os resultados para os 22 m/s podendo as respostas, para as restantes cadeias e velocidades, serem consultadas no anexo D, sendo estas respostas, qualitativamente, semelhantes. Para testar os controladores foram feitas simulações em que as referências são escalões de amplitude 1 (velocidade) e 10 (para os ângulos de orientação da aeronave). Testa-se ainda o efeito de perturbações atmosféricas nestas duas cadeias. 5.7.1 Cadeia de Velocidade Os resultados obtidos para a cadeia de velocidade cumprem as especificações (figura 5.9). Como se observa da figura o comportamento entre o sistema linear e real são muito semelhantes, apenas com ligeiras diferenças o que também é expectável dada a dificuldade inerente à identificação. Para as restantes velocidades os comportamentos são em tudo semelhantes aos apresentados neste caso. Com estes resultados demonstra-se que os modelos identificados replicam bem o sistema não linear nos respectivos pontos de funcionamento. 23.2 Velocidade (m/s) 23 22.8 Referência Sist. Não Linear Sist. Linear 22.6 22.4 22.2 22 21.8 18 20 22 24 26 28 30 0.2 0.18 Sist. Não Linear Sist. Linear Th (%) 0.16 0.14 0.12 0.1 0.08 0.06 18 20 22 24 26 28 30 Tempo [s] Figura 5.9: Controlo de velocidade (22 m/s) - velocidade e TH . 5.7.2 Cadeia de pitch Mais uma vez para a cadeia de pitch os resultados (figura 5.11) obtidos cumprem as especificações. Faz-se notar em relação à actuação que estas inicialmente apresentam um comportamento semelhante, não tendendo porém para os mesmos valores finais, que se devem às não linearidades e restantes contribuições das outras entradas e cadeias de controlo da aeronave. Também nesta cadeia o comportamento para as restantes velocidades é semelhante ao apresentado para uma velocidade de 22 m/s. 35 Controladores Locais Lineares 12 10 Pitch (º) 8 Referência Sist. Não Linear Sist. Linear 6 4 2 0 −2 28 30 32 34 36 38 40 −1 Elevadores (º) −1.5 Sist. Não Linear Sist. Linear −2 −2.5 −3 −3.5 −4 28 30 32 34 36 38 40 Tempo (s) Figura 5.10: Controlo de pitch (22 m/s) - pitch e elevadores. 5.7.3 Perturbações atmosféricas Para estas duas cadeias, velocidade e pitch, testou-se o comportamento dos controladores projectados face a uma perturbação atmosférica. Considerou-se esta como severa, com altitude igual a 1000m e com velocidade inicial de 22m/s. Assim obtiveram-se os seguintes resultados: 24 12 10 23.5 8 Ângulo Θ (º) Velocidade (m/s) 23 22.5 6 4 Referência Sist. Real 22 2 Referência Sist. Real 21.5 21 28 0 30 32 34 36 38 40 Tempo (s) −2 28 30 32 34 36 38 40 Tempo (s) Figura 5.11: Controlo de velocidade e de pitch com perturbações atmosféricas. Como se observa pelas figuras, as oscilações provocadas pela turbulência são atenuadas pelos controladores o que permite que a aeronave se mantenha estável seguindo as referências desejadas. 36 Capı́tulo 6 Gain Scheduling Quando se pretende controlar um sistema não linear, é muitas vezes conhecida/estudada antecipadamente a maneira como a dinâmica varia com os pontos de funcionamento. Na secção da análise da dinâmica da aeronave verificou-se que a localização dos pólos do sistema é dependente da velocidade. Isto deve-se ao facto das forças aerodinâmicas serem proporcionais à pressão dinâmica e logo proporcionais ao quadrado da velocidade. Um dos método mais utilizados para lidar com a variação de parâmetros é a técnica de tabelamento de ganhos, ou em Inglês, gain scheduling, que consiste em fazer variar os parâmetros (ganhos/polinómios) do controlador com os pontos de funcionamento de uma forma préprogramada. 6.1 Métodos de comutação de ganhos O método de comutação dos ganhos, ou melhor dos controladores, talvez mais obvio é o on/off. No entanto não se adoptou esta técnica de controlo pois embora cada controlador individualmente estabilize o sistema, em certas condições de comutação rápida podem tornar o sistema global instável. Na figura 6.1 ilustra-se esta situação, através da evolução no espaço de estados de dois modelos estáveis e da instabilidade causada pela comutação rápida entre eles. Figura 6.1: Instabilidade causada por comutação rápida de controladores. Existe um número de condições, em malha fechada, que garantem a estabilidade robusta [12]. As quais são: • Não existência de cancelamento de pólos e zeros. Não existem raı́zes comuns nos polinómios Ai (q −1 ) e Bi (q −1 ). E ainda Bi (1) 6= 0; • Controladores locais estáveis - os pólos da função de transferência desejada em malha fechada assim como os pólos do observador são tais que o sistema em malha fechada é estável; • Zonas de funcionamento bem escolhidas de modo a capturar as não linearidades do sistema. Não pode haver sobreposição de mais de 2 controladores em cada caso; 37 Gain Scheduling • Não existência de comutações rápidas - a variável de selecção caracteriza-se por ter um tempo de variação lento; • O ruı́do externo e perturbações são suficientemente pequenos; Optou-se então por uma comutação mais suave, figura 6.2, de forma a que não existam ”saltos”no sinal de controlo devido à comutação dos controladores. Após se ter obtido uma rede de modelos locais que traduzisse a dinâmica da aeronave, cobrindo tanto quanto possı́vel toda a gama de pontos de funcionamento, e projectado os controladores adequados respectivos (capitulo 5) é então necessário criar um bloco supervisor. Este tem como tarefa determinar qual o controlador a aplicar em cada momento, ou seja os controladores lineares resultantes são ”colados”de forma a que quando o ponto de funcionamento varie seja implementado o controlador adequado. A técnica normalmente utilizada para a colagem é a interpolação dos ganhos ao longo dos pontos de funcionamento através de uma variável de selecção. Definiu-se então uma função que atribui pesos, entre 0 e 1, aos controladores, ficando assim definido qual dos controladores se encontra em funcionamento. Na figura 6.2 é então possı́vel observar as curvas de atribuição de pesos na comutação entre dois controladores. 1 Controlador 18 m/s Controlador 22 m/s 0.8 Peso 0.6 0.4 0.2 0 19 19.2 19.4 19.6 19.8 20 20.2 20.4 20.6 20.8 21 Velocidade (m/s) Figura 6.2: Exemplo de atribuição de pesos. A estabilidade e o desempenho do sistema com gain scheduling são avaliados, tipicamente, por simulação, sendo requerida uma especial atenção às mudanças entre pontos de funcionamento e a rapidez com que essas variações acontecem. A principal vantagem da técnica gain scheduling é o uso de métodos de projecto de controladores lineares para os vários pontos de funcionamento; o bom comportamento, as medidas de desempenho, a intuição para o projecto e as ferramentas computacionais já existentes podem ser herdados para o projecto de controladores para sistemas não lineares multivariáveis. As desvantagens do método prendem-se com a carga computacional exigida ao projecto e ao funcionamento; e ainda com a dificuldade de proceder à selecção dos controladores as quais são definidas numa base experimental. 6.2 Resultados A utilização da técnica do gain scheduling neste projecto tem como objectivo tornar o comportamento do sistema de voo independente da sua velocidade. Foram feitas simulações fazendo 38 Gain Scheduling Velocidade (m/s) variar a velocidade de voo desde 17 m/s até 31 m/s num espaço de tempo de 80-100 segundos. Nos testes a velocidade varia ou de um forma linear (rampa) ou em escada com degraus de 2. Foram desenvolvidos blocos supervisores para cada uma das cadeias de controlo apenas para se conseguir observar melhor o efeito da não utilização da técnica de gain scheduling em cada cadeia de controlo, evitando assim os efeitos secundários que as várias cadeias tem entre si. Estas foram testadas separadamente de forma a evitar efeitos das dinâmicas laterais e longitudinais. Na figura 6.3 compara-se o comportamento do sistema com gain scheduling com a resposta do sistema com o controlador linear projectado com base no modelo linearizado da aeronave a 22 m/s. O 1o gráfico, da figura 6.3, corresponde ao sistema com gain scheduling onde se observa que se mantêm os tempos de resposta e sobreelevações especificados, mesmo nas zonas de transição de controladores. No 2o gráfico corresponde ao sistema com um único controlador linear, para 22 m/s, e como se observa o sistema também consegue estabilizar embora falhe, insignificantemente, as especificações pretendidas. Por fim no 3o gráfico a cadeia de pitch passou também a ser controlada com um único controlador (22 m/s) sendo possı́vel observar-se o efeito que esta cadeia exerce sobre a velocidade, onde para as velocidades mais elevadas começa-se a fazer sentir oscilações, em grande parte causadas porque o controlador da cadeia pitch para estas velocidades já não consegue estabilizar o sistema, como mais à frente se verifica. 30 25 Velocidade (m/s) 20 40 60 80 100 120 140 30 25 Referência Velocidade s/ GS 20 20 Velocidade (m/s) Referência Velocidade c/ GS 20 40 60 80 100 120 140 30 25 Referência Velocidade s /GS, Pitch s/ GS 20 20 40 60 80 100 120 140 Tempo (s) Figura 6.3: Gain Scheduling - Velocidade. Com base nos resultados obtidos pode então concluir-se que na cadeia de velocidade a técnica de gain scheduling, embora cumpra com todas as especificações exigidas, pode não compensar visto que um único controlador consegue igualmente estabilizar o sistema sem falhar significativamente as especificações. Este resultado já era de esperar dada a semelhança entre os modelos obtidos (ver identificação - anexo C) e os resultados obtidos no estudo da robustez dos controladores. Procedeu-se de uma forma semelhante agora para a cadeia de pitch onde a cadeia de velocidade encontra-se agora controlada com a técnica de gain scheduling. Testou-se a cadeia de pitch com um sistema de gain scheduling e com um sistema de controlador linear fixo baseado no modelo linearizado para 22 m/s (Figura 6.4). Mais uma vez o sistema de gain scheduling mantém-se estável cumprindo todas as especificações. Em relação ao controlador fixo observa-se que para baixas velocidade este consegue estabilizar o sistema, porém nas altas velocidades este torna-se bastante oscilatório. 39 Velocidade (m/s) Gain Scheduling 35 30 25 20 15 20 30 40 50 60 70 80 90 100 110 120 40 50 60 70 80 90 100 110 120 40 50 60 70 80 90 100 110 120 Pitch (º) 20 10 Referência Pitch c/ GS 0 −10 20 30 Pitch (º) 20 10 Pitch s/ GS Referência 0 −10 20 30 Tempo (s) Figura 6.4: Gain Scheduling - Pitch. Velocidade (m/s) Ao contrário do que se passa na cadeia de velocidade o uso de um sistema gain scheduling na cadeia de pitch é essencial para se conseguir os desempenhos exigidos ao longo da gama de velocidades de trabalho. Isto vem de encontro com os resultados obtidos no estudo da robustez dos controladores locais lineares. Finalmente realizou-se a simulação para a cadeia de roll, de forma em tudo idêntica à cadeia de pitch, apresentando-se os resultados na figura 6.5. Novamente o sistema com gain scheduling apresenta comportamentos desejados enquanto que para o sistema com um controlador fixo este tem um desempenho que se degrada para baixas velocidades e nas altas velocidades embora estabilize não cumpre com as especificações. Em resumo tanto para a cadeia de pitch como para a cadeia de roll o comportamento com a variação da velocidade tem algumas semelhanças, que se devem essencialmente à dependência das forças e momentos aerodinâmicos com a pressão dinâmica, em que nas baixas velocidades a sustentação é bastante menor o que provoca uma maior dificuldade para o controlo do sistema. 35 30 25 20 15 20 30 40 50 Roll (º) 60 70 80 90 100 110 120 80 90 100 110 120 80 90 100 110 120 Referência Roll c/ GS 6 4 2 0 −2 20 30 40 50 60 Roll (º) 70 Referência Roll s/ GS 6 4 2 0 −2 20 30 40 50 60 70 Figura 6.5: Gain Scheduling - Roll. Concluindo, os sistemas com gain scheduling mantêm-se estáveis cumprindo com todas as especificações para a gama de velocidades pretendida, apresentando em todos os casos desempenhos superiores em relação aos controladores fixos. Confirmou-se ainda os estudos anteriores, nomeadamente a não linearidade da cadeia de pitch e de roll com a velocidade. 40 Capı́tulo 7 Controlo Adaptativo Neste capitulo desenvolvem-se controladores discretos adaptativos para a cadeia longitudinal e lateral. Estes controladores baseiam-se no algoritmo MUSMAR [9] e são aplicados ao modelo da aeronave. Por vezes a dinâmica de um sistema a controlar altera-se ao longo do tempo. Esta variação pode ser devida, por exemplo, à existência de não linearidades nos actuadores ou no próprio sistema. Assim, para este último caso, a dinâmica linearizada varia com o ponto de trabalho. No inicio da década de 1950 começa a surgir o conceito de controlo adaptativo como resposta ao problema de pilotos automáticos de aeronaves. No caso de uma aeronave a dinâmica varia com a condição de operação (nomeadamente com a altitude, a velocidade e a localização do centro de massa). Ultimamente situações extremas como o controlo em ângulos de ataque muito elevados (caracterı́stica não linear) ou a recuperação de falhas também motivam a aplicação de controlo adaptativo. A técnica de selecção de ganhos, gain scheduling (capitulo 6), resolve os problemas colocados com as variações lentas de velocidade e de altitude. No entanto variações imprevisı́veis de pressão dinâmica e do centro de massa ou falhas na aeronave não são solucionadas por selecção de ganhos. Foram assim implementados diversos esquemas adaptativos [8]. De modo a resolver a questão de pilotos automáticos de aeronaves, Whitaker [7][8] propôs um esquema adaptativo baseado no modelo de referência (Model-Reference Adaptive Systems MRAS ) em que os parâmetros do controlador são ajustados de modo a que, quando excitados pela mesma entrada, a saı́da do sistema tenda para a saı́da do modelo de referência (figura 7.1). y Modelo m Parâmetros do controlador uc u Controlador Mecanismo de ajustamento Processo y Figura 7.1: Diagrama de blocos do MRAS. Na mesma década Kalman propôs um esquema adaptativo de colocação de pólos baseado na minimização de um funcional de custo quadrático, que antecipou o controlo auto-sintonizável (Self-Tuning Regulator - STR) clássico de Åstrom e Wittenmark [7][8]. O controlo autosintonizável realiza uma identificação que estima os parâmetros do processo e com isso um mecanismo de projecto redesenha o novo controlador a ser aplicado (figura 7.2). De modo a evitar modos internos instáveis, quando se trabalha com sistemas de fase não mı́nima, visto que a lei de controlo ligada ao controlador auto-sintonizável é do tipo dead-beat, 41 Controlo Adaptativo Projecto do controlador Estimação de parâmetros Parâmetros do controlador uc u Controlador Processo y Figura 7.2: Diagrama de blocos do STR. Clarke et al. [8] modificaram o funcional de custo com a adição de um termo quadrático que pesa a acção de controlo. No entanto este ”novo”controlador tem limitações importantes. Tais como: • Não consegue estabilizar processos que sejam de fase não minima e ao mesmo tempo instáveis em malha aberta. • O controlador em presença de dinâmicas não modeladas pode originar sistemas em malha fechada instáveis. • Admite-se conhecido o atraso puro do processo. Visto que as limitações resultam principalmente de o funcional de custo considerar apenas as variáveis um passo à frente, foram sugeridos controladores em que: • A predição da saı́da do processo seja ao longo de um intervalo futuro maior. • O sinal de controlo penaliza o erro de seguimento futuro entre a saı́da do sistema e o sinal de referência ao longo do horizonte de predição. Admite-se que se conhece o sinal de referência futuro ou uma sua predição inicial. • Estratégia de horizonte recidiva (apenas se utiliza a amostra actual de toda a sequência de valores da variável de controlo, repetindo-se os mesmos passos em cada instante). Um dos algoritmos desenvolvidos que sustenta estes princı́pios é o MUSMAR. 7.1 Algoritmos preditivos de horizonte extendido Um dos principais critérios de controlo é a escolha da variável de manipulação que minimiza o funcional de custo quadrático multi-passo: T 1 X 2 y (t + i) + ρu2 (t + i − 1)]|I(t)] J , E[ [e T i=1 onde: • ye(t + i) , y(t + i) − r(t + i). 42 (7.1) Controlo Adaptativo • y(.), u(.) e r(.) são respectivamente a saı́da, a entrada e a referência do processo. • T é o horizonte de controlo. • ρ é um factor de penalização da acção de controlo. • E(.|I) representa o operador valor médio condicionado à informação I(t) obtida das observações realizadas de y e u até ao instante t. Para a minimização deste funcional, duas principais possibilidades podem ser consideradas: 1. Assume-se que as primeiras Nu amostras de controlo, desde a amostra t até t + Nu − 1, são livres, e escolhidas de modo a minimizar J. As restantes amostras, desde t + Nu até t + T + 1 são constantes e iguais a u(t + Nu − 1); 2. Assume-se que as amostras de controlo futuras, desde t + 1 até t + T − 1 são dadas por retroacção constante do ”estado”, e escolhe-se u(t) que minimiza J. A primeira hipótese é a seguida pelo algoritmo GPC (Generalized Predictive Control ) enquanto que o algoritmo MUSMAR segue a segunda possibilidade. Tendo em vista a minimização de (7.1) pretende-se construir modelos preditivos. Os modelos preditivos do algoritmo MUSMAR para os erros de seguimento, ye, são definidos da seguinte forma: ye(t + i) = θi u(t) + ψi0 s(t) + νyi (t) (7.2) u(t + i − 1) = µi−1 u(t) + φ0i−1 s(t) + νui (t) onde i = 1, ..., T (7.3) Nota: s(t) é o vector pseudoestado. A dedução deste modelo pode ser consultada no anexo E. O algoritmo de controlo MUSMAR resulta da minimização do funcional de custo (7.1). Substituindo no funcional os modelos considerados anteriormente (7.2 e 7.3) chega-se a: T 1 X J , E[ [(θi u(t) + ψi s(t))2 + ρ(µi−1 u(t) + φi−1 s(t))2 ]|I(t)] T i=1 (7.4) Da minimização do funcional de custo, em ordem a u(t), resulta, PT −1 i=1 µi φi i=1 θi ψi + ρ s(t) − PT 2 P T −1 2 µ ) θ + ρ(1 + i i=1 i=1 i PT u(t) = (7.5) O vector de ganho é igual a: PT −1 i=1 µi φi i=1 θi ψi + ρ − PT 2 P T −1 2 i=1 µi ) i=1 θi + ρ(1 + PT L= (7.6) Ao valor de controlo adiciona-se um sinal de perturbação (dither ), η(t), por forma a garantir uma condição de excitação persistente. u(t) = L0 s(t) + η(t) (7.7) 43 Controlo Adaptativo Os parâmetros θi , ψi0 , µi e φ0i , dos modelos (7.2 e 7.3) que são necessários para (7.5), são estimados em cada instante de amostragem usando um algoritmo de identificação nomeadamente os mı́nimos quadrados recursivos com esquecimento direccional (DFRLS - Directional Forgetting Recursive Least Squares) [9]. Os traços gerais deste método podem ser consultados o anexo E. 7.2 Parâmetros do MUSMAR O algoritmo MUSMAR é definido pelos seguintes parâmetros: • Número de amostras do erro de seguimento no pseudoestado, N A • Número de amostras da entrada no pseudoestado, N B • Número de amostras da referência no pseudoestado, N G • Número de amostras da perturbação acessı́vel, V (t), no pseudoestado, N V • Número de amostras da perturbação acessı́vel, X(t), no pseudoestado, N X • Número de amostras da perturbação acessı́vel, W (t), no pseudoestado, N W • Horizonte de predição, T • Perı́odo de amostragem, Ts • Factor de esquecimento, λ • Penalização da acção de controlo, ρ • Desvio padrão do dither (ruı́do de excitação persistente), η • Carregar ou não o estado realizado na simulação anterior, f load Existem no entanto considerações a serem feitas nestes parâmetros: • Perı́odo de amostragem Ts A selecção do perı́odo de amostragem é feita pelos mesmos critérios realizados no capitulo 5. Deve ter-se ainda em conta que o perı́odo de amostragem influencia o horizonte de predição em tempo continuo. Deste modo Ts = 0.1s. • Ordem do sistema. Inicialmente pretende-se que a ordem seja a do sistema. No entanto, se o sistema de controlo exibir boas caracterı́sticas face a dinâmicas não modeladas podem desprezarse as dinâmicas rápidas (desde que suficientemente amortecidas). Para modos pouco amortecidos a utilização de filtros na referência, no controlo ou na saı́da pode garantir atenuação suficiente nestes mesmos. Esta possibilidade de desprezar-se dinâmicas rápidas pode ser bastante importante pois o uso de ordem elevadas pode levar a identificação a incluir ruı́do no modelo do sistema. O número de amostras da entrada, u, deve ser menor que N A: 44 Controlo Adaptativo NB < NA De acordo com a estrutura do pseudoestado ter-se-ia N G igual a N A. Mas, por causa de problemas de identificabilidade, é aconselhável um número menor de referências. Se a referência se mantiver constante durante longos perı́odos de tempo, ou se variar lentamente, deve-se escolher N G = 1. • Factor de esquecimento λ. O factor de esquecimento pode ser avaliado com base no número de amostras que podem 1 ser esquecidas, denominado por memória assimptótica, No = 1−λ . Tipicamente λ está compreendido entre 0.9 e 0.99. • Horizonte de predição T . Na escolha do horizonte T deverá ter-se em conta os casos limites nomeadamente quando T = 1 e quando T → ∞. No caso em que o horizonte é unitário o MUSMAR equivale a um STR que como se referiu anteriormente pode dar origem a modos internos instáveis se o sistema a controlar for de fase não mı́nima. Quando T tende para infinito o MUSMAR equivale a um controlador linear quadrático (LQ) estocástico, evitando-se assim os modos internos instáveis. Logo poderia-se pensar que o horizonte T deveria ser arbitrariamente grande. Mas como a precisão na estimativa dos preditores diminui com o aumento do horizonte é necessário estabelecer um compromisso. Existe ainda um limite superior imposto no horizonte pela carga computacional. • Ruı́do de excitação persistente (dither ), η. Este ruı́do depende muito do sinal de controlo utilizado, mas deve ser suficientemente reduzido para que não degrade demasiado o seguimento da referência. Tipicamente temse: η≤ sinal de controlo 100 • Penalização do sinal de controlo , ρ. A penalização, ρ, permite alterar a actuação no sinal de controlo. Com ρ → ∞ o sistema ficaria em malha aberta e com ρ = 0 o sinal de controlo pode exceder as saturações. O valor indicado para ρ depende de sistema para sistema logo não é possı́vel indicar um valor tı́pico. • Estado anterior, f load. Com esta variável a 1 possibilita-se que se comece a simulação a partir de um estado (ganhos do controlador, matriz de covariância e o regressor) anteriormente obtido. Este facto pode ser determinante, para certo tipos de processos, no que diz respeito a atingir a estabilidade. 45 Controlo Adaptativo 7.3 Controlo adaptativo na cadeia de pitch O controlo da aeronave é feito pelos controladores obtidos anteriormente (capı́tulos 4 e 5) exceptuando o controlo de pitch. Neste, o controlador é substituı́do pelo MUSMAR (bloco do ambiente Simulink, fornecido pelo Prof. João Miranda Lemos, que realiza o algoritmo de controlo MUSMAR). O desenvolvimento do controlador adaptativo para a cadeia de pitch é feito numa lógica construtiva mostrando-se todos os passos tomados no projecto para esta cadeia. 7.3.1 MUSMAR sem integrador na cadeia de controlo Considerando dinâmica longitudinal do sistema linearizado, têm-se dois modos oscilatórios (Phugoid e o perı́odo curto) e uma dinâmica dos actuadores de primeira ordem (capitulo 2), o que leva a que o sistema seja de ordem 5. Mas, como foi referido anteriormente, optou-se por desprezar as dinâmicas rápidas nomeadamente a dinâmica de perı́odo curto e a dinâmica do actuador, o que levou a um sistema de ordem 2. Após algumas experiências escolheram-se os seguintes valores: NA = 2 NB = 1 NG = 1 NV = 0 NX = 0 NW = 0 T = 5 Ts = 0.1 λ = 0.97 ρ = 1 η = 10−4 f load = 0 que levaram aos resultados apresentados na figura 7.3. Ganhos L 2 1 0 −1 0 5 10 15 20 25 30 35 40 Pitch [graus] 10 5 0 −5 −15 Elevadores [graus] Pitch Referencia −10 0 5 10 15 0 5 10 15 20 25 30 35 40 20 25 30 35 40 0 −10 −20 Tempo [s] Figura 7.3: MUSMAR sem integrador aplicado à cadeia de pitch. Ganhos, seguimento e elevadores. Observando o gráfico de seguimento de pitch constata-se que depois da convergência dos ganhos do MUSMAR o erro estático tende para 0. O diagrama de blocos do MUSMAR, em regime estacionário, tem o seguinte aspecto: onde K1 , K2 e K3 representam os ganhos estáticos associados à acção da referência, à realimentação do erro e à acção de controlo. 46 Controlo Adaptativo K1 ref y 1 K3 K2 u Processo y Figura 7.4: Diagrama de blocos - MUSMAR. Do esquema tira-se: y = u H, H representa o ganho estático do processo K3 u = K1 ref + K2 ye (7.8) (7.9) o que leva a: y = (K4 ref + K5 ye) H K4 = K1 , K3 K5 = (7.10) K2 K3 (7.11) Substituindo-se y por ref − ye fica-se com: ye = 1 − HK4 ref 1 + HK5 (7.12) Para que o erro estático seja nulo uma de duas possibilidades tem que ocorrer: • ou 1 + HK5 → ∞. • ou 1 − HK4 = 0. A primeira condição verifica-se com a inclusão de um efeito integral na cadeia de controlo. A segunda condição é satisfeita quando o ganho K4 é igual ao inverso do ganho estático do sistema a controlar. Este último ponto explica a razão de o erro de seguimento na figura 7.3 tender para 0. Ainda que tenda para 0, o erro depende do ganho K4 e por isso optou-se por incluir o integrador na cadeia de controlo. 7.3.2 MUSMAR com integrador na cadeia de controlo O diagrama de blocos, com a inclusão do integrador que tem um sistema anti-windup do mesmo tipo que o referido em 5, assume o seguinte aspecto: 47 Controlo Adaptativo T(q) qn ref y qn R(q) S(q) qn u Integrador ui y Processo Figura 7.5: Diagrama de blocos - MUSMAR com integrador. A lei de controlo tem a forma: R(q)u(t) = T (q)ref (t) + S(q)e y (t) (7.13) Em regime estacionário ui (sinal à entrada do processo) é constante, logo à entrada do integrador tem-se u = 0. Deste modo, em regime estacionário, chega-se a: ye = − T (q) ref S(q) (7.14) Para que ye = 0 é necessário T (q) = 0 ou ref = 0 (possibilidade que restringe a gama de referências que permite um erro estático 0). De modo a comprovar esta condição necessária, T (q) = 0, realizaram-se 2 simulações: uma com uma referência no pseudoestado e outra sem. Na primeira considerou-se os seguintes parâmetros: NA = 3 NB = 2 NG = 1 NV = 0 NX = 0 NW = 0 T = 5 Ts = 0.1 λ = 0.97 ρ = 0.1 η = 10−4 f load = 1 Os resultados para o caso em que se inclui o integrador na cadeia de controlo e considera-se uma referência no pseudoestado podem ser consultados na figura 7.6. Ganhos L 1 0.5 0 −0.5 −1 0 2 4 6 8 10 12 14 16 18 20 0 2 4 6 8 10 12 14 16 18 20 0 2 4 6 8 10 12 14 16 18 20 Pitch [graus] 10 5 0 −5 −15 Elevadores [graus] Pitch Referencia −10 5 0 −5 −10 Tempo [s] Figura 7.6: MUSMAR com integrador aplicado à cadeia de pitch e com uma referência no pseudoestado. Ganhos, seguimento e elevadores. 48 Controlo Adaptativo O erro estático como seria de esperar, dado (7.14), só é nulo quando a referência é também nula. Para o caso em que se retira a referência do pseudoestado admitiu-se os parâmetros NA = 3 NB = 2 NG = 0 NV = 0 NX = 0 NW = 0 T = 5 Ts = 0.1 λ = 0.97 ρ = 0.1 η = 10−4 f load = 1 Os resultados, apresentados na figura 7.7, são os esperados no que diz respeito ao erro estático (nulo). No entanto a sobreelevação é excessiva, cerca de 49%. Ganhos L 1 0.5 0 −0.5 −1 0 2 4 6 8 10 12 14 16 18 20 Pitch [graus] 10 5 0 −5 −15 Elevadores [graus] Pitch Referencia −10 0 2 4 6 8 0 2 4 6 8 10 12 14 16 18 20 10 12 14 16 18 20 5 0 −5 −10 Tempo [s] Figura 7.7: MUSMAR com integrador aplicado à cadeia de pitch e sem referências no pseudoestado. Ganhos, seguimento e elevadores. Conclui-se que o efeito antecipativo da referência e o efeito integral podem competir, levando a um erro de seguimento não nulo, o que é indesejável. 7.3.3 MUSMAR com inclusão de variáveis de estado no pseudoestado Nesta secção inclui-se uma variável de estado no pseudoestado. A adição de informação tem o objectivo de obter respostas pelo menos tão boas quanto as anteriores. Por exemplo, o caso mais intuitivo é incluir a informação da derivada da variável a controlar. No caso da cadeia de pitch inclui-se a velocidade de rotação Q = θ̇. Os parâmetros utilizados foram: NA = 3 NB = 2 NG = 0 NV = 1 NX = 0 NW = 0 T = 5 Ts = 0.1 λ = 0.97 ρ = 0.1 η = 10−4 f load = 1 Como se pode constatar na figura 7.8 os resultados obtidos melhoram consideravelmente, em relação aos anteriores, pois a sobreelevação passou para cerca de 2.2% com um tempo de estabelecimento de 1.5s. 49 Controlo Adaptativo Ganhos L 1 0.5 0 −0.5 −1 0 2 4 6 8 10 12 14 16 18 20 Pitch [graus] 10 5 0 −5 Pitch Referencia −10 −15 0 2 4 6 8 0 2 4 6 8 10 12 14 16 18 20 10 12 14 16 18 20 Elevadores [graus] 2 0 −2 −4 −6 Tempo [s] Figura 7.8: MUSMAR com inclusão da variável de estado Q. Ganhos, seguimento e elevadores. 7.3.4 MUSMAR com velocidade variável Nos capı́tulos anteriores verificou-se a variação da dinâmica de uma aeronave com a velocidade. Como foi referido foi por causa de problemas como estes que surgiram os controladores adaptativos. Realizou-se então um estudo para o caso do controlo da cadeia de pitch com velocidade variável. Aqui os parâmetros utilizados foram: NA = 3 NB = 2 NG = 0 NV = 1 NX = 0 NW = 0 T = 5 Ts = 0.1 λ = 0.97 ρ = 10 η = 10−4 f load = 1 A resposta da aeronave, figura 7.9, apresenta resultados qualitativamente piores que anteriores para velocidade mais baixas devido à baixa pressão dinâmica verificada nessas velocidades. Em contrapartida, para velocidades maiores a resposta mostra ser quase independente da variação de velocidade não revelando qualquer sinal de instabilidade. Velocidade U [m/s] 40 35 30 25 20 15 10 20 25 30 35 40 45 50 55 60 45 50 55 60 Tempo [s] 20 Pitch [graus] 15 10 5 0 −5 −10 20 25 30 35 40 Tempo [s] Figura 7.9: MUSMAR com velocidade variável. Velocidade e seguimento. 50 Controlo Adaptativo Os ganhos, como se pode ver pela figura 7.10, ainda que com uma pequena variação estão estáveis, o que não seria de esperar visto que a velocidade varia. Assim os resultados obtidos devem-se essencialmente à qualidade do controlador em si, nomeadamente o projecto deste mesmo, em vez da adaptação própria feita pelos MUSMAR. Com a velocidade variável, a penalização da cadeia de controlo revela ter uma grande dependência com a qualidade do seguimento. Com ρ = 10 para velocidades baixas o seguimento apresenta sobreelevações e tempos de estabelecimento maiores. 0.6 Ganhos L 0.4 0.2 0 −0.2 −0.4 20 25 30 35 20 25 30 35 40 45 50 55 60 40 45 50 55 60 Elevadores [graus] 4 2 0 −2 −4 −6 −8 Tempo [s] Figura 7.10: MUSMAR com velocidade variável. Ganhos e elevadores. Afinar o seguimento para velocidades menores implica uma menor penalização na cadeia de controlo, no entanto isso traz instabilidade nas velocidades superiores (figura 7.11) . Os parâmetros considerados na afinação para velocidade menores foram: NA = 3 NB = 2 NG = 0 NV = 1 NX = 0 NW = 0 T = 5 Ts = 0.1 λ = 0.97 ρ = 0.01 η = 10−4 f load = 1 Velocidade U [m/s] 40 35 30 25 20 15 10 20 25 30 35 40 45 50 55 60 45 50 55 60 Tempo [s] 20 Pitch [graus] 15 10 5 0 −5 −10 20 25 30 35 40 Tempo [s] Figura 7.11: MUSMAR com menor peso na cadeia de controlo. Velocidade e seguimento. 51 Controlo Adaptativo De modo a resolver este problema optou-se por variar a penalização da cadeia de controlo, ρ, em função da velocidade. Assim considerou-se a afinação feita para os dois extremos e interpolouse uma recta, (7.15) de modo a que quando a velocidade variasse ρ também variasse. A recta que melhores resultados originou foi: ρ(U ) = 0.145U − 1.93 (7.15) Na figura 7.12 é visı́vel a melhoria qualitativa dos resultados quando ρ depende de U . Velocidade U [m/s] 40 35 30 25 20 15 10 20 25 30 35 40 45 50 55 60 45 50 55 60 Tempo [s] 20 Pitch [graus] 15 10 5 0 −5 −10 20 25 30 35 40 Tempo [s] Figura 7.12: MUSMAR com velocidade variável e com ρ variável. Velocidade e seguimento. 7.3.5 Variação do custo em função do horizonte T Pretende-se nesta secção apresentar a influência do horizonte T no custo, que neste caso foi considerado o custo médio quadrático de seguimento. Como foi referido anteriormente, na escolha do horizonte T tem que se ter em conta tanto a aproximação do MUSMAR a um controlador LQ estocástico (que é tanto maior quanto mais cresce T ) como a degradação da estimativa dos preditores com aumento do horizonte. Realiza-se então uma experiência que consiste em, para ganhos estabilizados, medir o custo para diversos horizontes usando um escalão como referência para o pitch. Os restantes parâmetros do algoritmo MUSMAR foram mantidos para os diversos valores de T NA = 3 NB = 2 NG = 0 NV = 1 NX = 0 NW = 0 Ts = 0.1 λ = 0.97 ρ = 0.1 η = 10−4 (7.16) Os resultados, figura 7.13, revelam que o custo inicialmente decresce, com o aumento de T , atingindo um mı́nimo. No entanto, após esse mı́nimo, o aumento do horizonte provoca também um aumento no custo que é devido à degradação da estimativa dos preditores que deixa de ser ”suficientemente boa”. 52 Controlo Adaptativo 0.14 0.12 Custo 0.1 0.08 0.06 0.04 0.02 3 3.5 4 4.5 5 5.5 6 6.5 7 7.5 8 Horizonte T Figura 7.13: Influência do horizonte T no custo. 7.4 Controlo adaptativo nas restantes cadeias O projecto de controlo realizado para as restantes cadeias foi similar ao realizado para a cadeia de pitch. No entanto existem alguns comentários sobre as simulações realizadas para estas cadeias. 7.4.1 Controlo adaptativo na cadeia de roll Inicialmente, comparando a cadeia de roll com a de pitch, espera-se ver um certo ”paralelismo”, ou seja, o projecto de controlo prevê-se similar ao realizado na cadeia de pitch. Realmente, no projecto do controlador, foram tomados os mesmos passos que os da cadeia de pitch. Por essa razão apresentam-se os resultados finais desta cadeia no anexo F. A única excepção encontra-se que cadeia de roll não se considerou necessário uma variação do peso da acção de controlo em função da velocidade quando esta era variável. Isto deve-se ao facto de esta cadeia ser menos ”sensı́vel”à velocidade que a anterior. 7.4.2 Controlo adaptativo na cadeia de yaw Neste caso o controlo foi mais complexo. Não se conseguiu, sem que se arrancasse de uma condição inicial estabilizante, controlar ψ. O método praticado, tendo em vista certa especificações, foi com sinais ”simples”, como um escalão, ter um valor inicial do dither mais elevado com o objectivo pesar mais a identificação. Com isto e reparando para onde tendiam os ganhos consegui-se um estado a partir do qual posteriormente o ψ passou a estar estável. Nesta cadeia os parâmetros do MUSMAR foram: NA = 4 NB = 3 NG = 0 NV = 1 NX = 0 NW = 0 T = 10 Ts = 0.1 λ = 0.999 ρ = 1 η = 10−4 f load = 1 Obtiveram-se os seguintes resultados: 53 Controlo Adaptativo 10 Ganhos L 5 0 −5 −10 0 20 40 60 80 100 120 140 160 180 200 Aelerons [graus] Yaw [graus] 6 4 Yaw Referencia 2 0 0 20 40 60 80 0 20 40 60 80 100 120 140 160 180 200 100 120 140 160 180 200 0.2 0.1 0 −0.1 −0.2 Tempo [s] Figura 7.14: MUSMAR - cadeia de yaw. Ganhos, seguimento e ailerons. 7.4.3 Controlo adaptativo na cadeia de velocidade Nesta cadeia existiu um ponto adicional a ser considerado no projecto, nomeadamente o facto de o sinal de controlo saturar quando se pretende um escalão na referência. As saturações tem que ser evitadas, caso contrário a identificação ”apanha”não linearidades e irá tentar modelalas. Assim aplicou-se um filtro que suavizasse os escalões e que implicasse que o sinal de controlo não saturasse. Os parâmetros considerados nesta cadeia foram: NA = 3 NB = 2 NG = 1 NV = 1 NX = 0 NW = 0 T = 14 Ts = 0.1 λ = 0.99 ρ = 50 η = 10−4 f load = 1 Com estes parâmetros obtiveram-se os seguintes resultados: Ganhos L 1 0.5 0 −0.5 Velocidade [m/s] 0 50 100 150 200 250 23 22 Velocidade Referencia 21 20 0 50 100 0 50 100 150 200 250 150 200 250 0.2 Th [%] 0.15 0.1 0.05 0 Tempo [s] Figura 7.15: MUSMAR - cadeia de velocidade. Ganhos, seguimento e Th. Note-se que, nos resultados, tanto a subida como a descida da velocidade são suavizadas, mas realmente só seria necessário suavizar a descida de velocidade visto que é por causa desta (limitação fı́sica) que o sinal de controlo satura. 54 Capı́tulo 8 Sistema de Guiamento Tendo os controladores locais internos desenvolvidos pretende-se então o desenvolvimento de controladores de coordenação (cadeia externa em cascata com os controlado-res internos) para o seguimento de trajectórias. Forças e momentos exteriores Actuação Comando Trajectória Controlo Guiamento Aeronave Posição, Velocidade, Aceleração Navegação Figura 8.1: Diagrama de blocos genérico de navegação, guiamento e controlo. Assim neste capı́tulo é estudado o planeamento de trajectórias e navegação em ambientes de baixa complexidade de forma a permitir a geração de trajectórias que traduzem as manobras a executar pela aeronave. São também estudados métodos de controlo clássicos que permitam o seguimento de trajectórias. São realizadas simulações e testes que permitem validar os modelos obtidos. 8.1 Geração de trajectórias A geração de trajectórias trata-se de um problema com alguma complexidade e para o qual existem diversas soluções. Neste trabalho as trajectórias são geradas utilizando a aeronave e os controladores internos já desenvolvidos. Desta forma, e definindo certas referências para estes controladores internos, é então possı́vel criar um elevado leque de trajectórias possı́veis. Assim sendo, foram então definidas as seguintes trajectórias de base : • Curva simples. • Manobras de subida. • Sinusóides (tanto em curva como em altitude). • Circunferência (com altitude constante). • Espiral. De notar que para o sistema de guiamento estas trajectórias de referência estão já definidas, ou seja foram geradas em offline. Porém tal não é necessário visto que o sistema de guiamento 55 Sistema de Guiamento apenas necessita de saber a trajectória de referência a cada instante (tema que será abordado na próxima secção). Assim as próprias trajectórias de referência poderiam ser geradas em tempo real, o que permitiria uma coordenação de comportamentos de condução devido a factores externos que não eram previstos inicialmente. Alguns destes factores podem ser tão simples como a detecção de condições atmosféricas adversas ou existência de outros veı́culos a operar na mesma zona. 8.2 Sistema de controlo O controlo de uma aeronave é um tema bastante vasto, podendo-se desenvolver e testar desde controladores simples até controladores mais sofisticados. Os controladores desenvolvidos podem ser ajustados para dois tipos de comportamentos: Seguimento de trajectórias (Tracking) ou seguimento de caminhos (Path Following). Entende-se como seguimento de trajectória, o seguimento em termos estritos do ponto de vista temporal de uma dada trajectória de referência e seguimento de um dado caminho, o seguimento de uma dada trajectória de referência mas com relaxação nas restrições temporais. Neste trabalho apresenta-se um método de controlo para o seguimento de trajectórias embora simples e intuitivo (baseado no Controlo Clássico - PID). A aeronave constitui um sistema não linear e dadas as cadeias de controlo definidas anteriormente (Capı́tulos 4 e 5), as entradas para o bloco de controladores internos definidos são a velocidade longitudinal U (t) e as orientações yaw ϕ(t) e pitch θ(t). Desta forma é possı́vel realizar todas as trajectórias desejadas considerando-se como saı́das a posição da aeronave (x(t), y(t) e z(t)). A referência consiste numa dada trajectória, definida pela posição (xd (t), yd (t) e zd (t)), a partir da qual é também possı́vel obter as velocidades (vxd (t), vyd (t) e vzd (t)) correspondentes. Na figura 8.2 é apresenta-se um diagrama de blocos que mostra as referências e saı́das em causa. xd (t), yd (t) e zd (t) Sistema de Guiamento U(t), U (t) e (t) Controladores internos Processo x(t), y(t) e z(t) Figura 8.2: Diagrama de blocos - referências e saı́das. É importante realçar que, uma vez que as trajectórias são sintetizadas de forma exacta, as velocidades de referência também são sinais acessı́veis, não sendo necessário derivar esses sinais em tempo real, podendo ser gerados offline. Assim, o seguimento de uma dada trajectória consiste na transformação das posições de referência (e respectivas velocidades de referência) em velocidades e orientações para a aeronave. A transformação é feita tendo em conta algumas simplificações tal como se demonstra na figura 8.3. 56 Sistema de Guiamento z vz y U vy vx,vy U vx x,y x Figura 8.3: Transformação do vector velocidade nos vários componentes vectoriais. a projecção no plano XOY e não o plano X ou o plano Y. ∗ representa Desta forma a velocidade e orientações necessárias para os controladores internos são dadas por: q 2 2 2 U (t) = vxd (t) + vyd (t) + vzd (t) ³ ´ vyd (t) ϕ(t) = arctan vxd ³ (t)´ q θ(t) = arctan vzd (t) , vd (t) = v 2 (t) + v 2 (t) xd yd vd (t) (8.1) Na expressão 8.1 são utilizadas as velocidades de referência, correspondendo portanto ao seguimento de trajectórias em malha aberta cujo esquema de controlo se encontra no anexo F. Deve ter-se ainda em conta que as aproximações efectuadas indicam desde logo que quanto ”mais apertadas”forem as curvas ou subidas pior será o comportamento da aeronave. De forma a melhorar o guiamento seriam então necessário sistemas de controlo mais complexos. Em cadeia fechada, o objectivo é, essencialmente, anular o erro de posição. Ao considerarse o sistema em cadeia aberta descrito anteriormente, a ideia é corrigir as velocidades de referência de acordo com o erro de posição. O controlador final projectado é obtido, em grande medida, de forma empı́rica. A correcção das velocidades é realizada com blocos PID, sendo o dimensionamento deste bloco realizado de acordo com a intuição do problema. Desta forma a velocidade e orientações são dadas por: q U (t) = vx2 (t) + vy2 (t) + vz2 (t) ´ ³ ϕ(t) = arctan vvxy (t) ³ (t)´ q θ(t) = arctan vz (t) , v(t) = v 2 (t) + v 2 (t) y x v(t) (8.2) em que vx (t) = vxd (t) + G1 [xd (t) − x(t)] vy (t) = vyd (t) + G2 [yd (t) − y(t)] vz (t) = vzd (t) + G3 [zd (t) − z(t)] (8.3) onde os ganhos Gi correspondem aos blocos PID. Para o ajuste dos ganhos dos PID teve de existir um certo compromisso, em que se procurou obter um único conjunto de ganhos que conseguisse revelar bons resultados para as várias 57 Sistema de Guiamento trajectórias testadas, ao invés de um conjunto de ganhos que estivesse muito dependente da trajectória definida. Procurou-se não só obter boas respostas em termos de trajectória descrita e tempos de recuperação da trajectória baixos, como também que as referências para os controladores internos fossem suaves ao longo do tempo. Para este tipo de aeronaves as trajectórias de referências seriam o seguimento de dados percursos a uma altitude constante (por exemplo aeronaves que tiram fotografias aéreas). Logo no plano XOY (no referencial Terra), e dada a simetria por parte da aeronave, os erros de posição, tanto segundo o eixo do x como do y, devem ser muito semelhantes (por exemplo se a trajectória for uma circunferência), pelo que faz todo o sentido os dois PID terem ganhos iguais. Tal já não se aplica ao PID para correcção de altitude visto que neste caso as manobras serão mais simples (manter altitude ou subidas). Desta forma os ganhos utilizados foram então: G1 = G2 ⇒ kp = 0.5, kd = 0.8 e ki = 0.055 G3 ⇒ kp = 0.85, kd = 0.5 e ki = 0.2 (8.4) (8.5) Os ganhos definidos foram obtidos de uma forma experimental, tendo em conta os pontos anteriores e a diminuição da distância total à trajectória (idealmente levar este erro para zero). Finalmente note-se que o sistema de guiamento necessita de ter acesso à sua posição em cada instante, o que facilmente pode ser obtido com um sistema GPS (Global Positioning System), em que não se assume qualquer dinâmica adicional por parte do sensor (anexo B). 8.3 Resultados Para testar o controlador desenvolvido foram testadas as várias trajectórias definidas anteriormente, em que em todos os casos as trajectórias eram geradas offline e fornecidas ao sistema de guiamento. Apenas se apresentam algumas das trajectórias testadas encontrando-se as restantes no anexo F. Em relação ao sistema em malha aberta, equação 8.1, para a orientação pitch é ainda necessário ter em conta que existe um offset que tem de ser somado, de forma a manter sustentação da aeronave. Num voo em linha recta apesar da altitude se manter constante, logo a sua velocidade segundo o eixo z seria nula, o que pela equação daria um ângulo nulo de referência para o pitch. Este ângulo provoca que a aeronave não mantenha a sua altitude, contrariamente ao desejado. Para se compensar esta diferença e calcular-se o offset a somar efectuaram-se ensaios em que para várias velocidades num voo em linha recta se registrou o valor de pitch exacto tendo-se a partir desses valores calculado uma aproximação polinomial de quarta ordem, dada por: Vel. (m/s) pitch (rad) 18 0.0286 20 8.99 · 10−3 22 −5.61 · 10−3 24 26 −0.0167 −0.0254 28 30 −0.0323 −0.0378 Tabela 8.1: Interpolação - offset do pitch. Offset (vel) = 1.03 × 10−6 vel4 − 1.17 × 10−4 vel3 +5.19 × 10−4 vel2 − 0.11vel + 0.87 58 (8.6) Sistema de Guiamento 2 1 Dados Experimentais Aproximaçao polinomial 1.5 0.9 1 0.8 0.5 0.7 Pitch (º) Pitch (º) Dados Experimentais Aproximaçao polinomial 0 0.6 −0.5 0.5 −1 0.4 −1.5 0.3 −2 0.2 −2.5 15 20 25 0.1 19 30 19.5 20 20.5 21 21.5 Velocidade (m/s) Velocidade (m/s) Figura 8.4: Aproximação polinomial para cálculo do offset de pitch - resultado obtido e respectivo zoom Em certas manobras (nomeadamente curvas) o offset assim calculado, não é porém suficiente para que a aeronave consiga estabilizar a uma certa altitude (ver mais adiante os resultados). Tal deve-se às simplificações que estão a ser admitidas no cálculo das referências dos controladores internos. No caso da malha fechada não é necessário adicionar este offset visto que como o controlador tem acção integral este valor é ”aprendido”. Para todas as manobras apresenta-se o comportamento do sistema, tanto do sistema em malha aberta como do sistema em malha fechada, visualizando-se os gráficos com as trajectórias desejadas e reais, e o erro em relação à trajectória ao longo do tempo. Este erro corresponde a distância total à trajectória em cada instante. As referências para os controladores internos podem ser visualizadas no anexo F. Estas apresentaram comportamentos suaves, permitindo aos controladores internos um bom seguimento das referências. 8.3.1 Subida A primeira manobra apresentada corresponde a uma manobra de subida (figura 8.5 a 8.6). Como se observa, o sistema em malha aberta (figura 8.5) apresenta um bom comportamento a nı́vel macroscópico sendo porém o erro em relação à trajectória sempre diferente de zero, o que se deve essencialmente a um atraso inicial que não foi compensado. 59 Sistema de Guiamento 1030 Altitude (m) 1020 1010 1000 Altitude Desejada Altitude Real 990 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 3.5 Distância (m) 3 2.5 2 1.5 1 0.5 0 Tempo (s) Figura 8.5: Subida em malha aberta - altitude e erro à trajectória Para o sistema em malha fechada (figura 8.6) observa-se que a trajectória real é aproximada à de referência e o próprio erro à trajectória tende para zero. 1035 1030 Altitude (m) 1025 1020 1015 1010 1005 Altitude Desejada Altitude Real 1000 995 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 Distância (m) 2 1.5 1 0.5 0 Tempo (s) Figura 8.6: Subida em malha fechada - altitude e erro à trajectória Pode assim concluir-se que para a manobra de subida consegue-se obter um bom seguimento, embora este estará sempre sujeito à própria trajectória de referência, se esta for mais ”puxada”apesar de o erro tender para zero já se observa alguma sobreelevação, como é visı́vel numa outra manobra de subida apresentada no anexo F (também no anexo F são apresentadas outras manobras em que se varia altitude, nomeadamente o seguimento a uma sinusóide). 8.3.2 Circunferência Apresentado o comportamento do sistema de guiamento para a altitude mostra-se de seguida o seu comportamento para curvas, em que a altitude se mantém constante, apresentando-se uma circunferência como a trajectória desejada (No anexo F pode-se consultar outras manobras de curvas com altitude constante - curva simples e sinusóides). 60 Sistema de Guiamento Nesta manobra, ao contrário do que se verificava para a manobra de subida, o sistema em malha aberta (figura 8.7) já não apresenta tão bons resultados, tomando o erro em relação à trajectória valores bastante elevados, como se observa pelo aspecto macroscópico no plano XOY. De notar também que a aeronave não consegue manter uma altitude constante, tal devendo-se ao facto de que aeronave, para efectuar curvas, recorre aos ailerons o que implica que o ângulo de roll não é nulo, o que influência a própria sustentação da aeronave. 800 y (m) 600 Trajectória Desejada Trajectória Real 400 200 0 −200 −100 0 100 200 300 400 500 600 700 800 x (m) Altitude (m) 1002 Altitude Desejada Altitude Real 1001 1000 999 998 0 20 40 60 80 100 120 140 100 120 140 Tempo (s) Distância (m) 150 100 50 0 0 20 40 60 80 Tempo (s) Figura 8.7: Circunferência em malha aberta - trajectória no plano XOY, altitude e erro à trajectória Velocidade (m/s) A referência gerada para o yaw, figura 8.8, neste caso, não é seguido com um erro estático nulo (ao contrário do que se sucede por exemplo se as referências forem escalões - curva simples). Porém, tal era de esperado visto que no projecto deste controlador não foi incluı́do qualquer acção integral. Como não há o seguimento da rampa com erro estático nulo também isso contribuirá para que o erro à trajectória nunca seja nulo (existe sempre uma desfasagem). 24 Velocidade Desejada Velocidade Real 22 20 0 20 40 60 80 100 120 140 80 100 120 140 80 100 120 140 Orientação Ψ (º) 400 Orientação Desejada Orientação Real 300 200 100 0 0 20 40 60 Orientação θ (º) 0.5 Orientação Desejada Orientação Real 0 −0.5 −1 0 20 40 60 Tempo (s) Figura 8.8: Circunferência em malha aberta - referências geradas para os controladores internos Recorrendo ao sistema em malha fechada observam-se (figura 8.9) melhorias significativas tanto ao nı́vel macroscópico na trajectória, tanto no plano XOY, como na própria altitude que é agora 61 Sistema de Guiamento estável. Constata-se também que o erro em relação à trajectória diminui drasticamente não sendo porém nunca nulo. y (m) 800 600 Trajectória Desejada Trajectória Real 400 200 0 −200 −100 0 100 200 300 400 500 600 700 x (m) Altitude (m) 1002 1001 1000 Altitude Desejada Altitude Real 999 998 0 20 40 60 Distância (m) 80 100 120 140 100 120 140 Tempo (s) 8 6 4 2 0 0 20 40 60 80 Tempo (s) Figura 8.9: Circunferência em malha fechada - trajectória no plano XOY, altitude e erro à trajectória Tal como se verificara para a manobra de subida, também nas manobras de curvas quanto mais apertadas estas forem pior o sistema global se irá comportar. Este efeito pode ser observado no anexo F em que outra circunferência com menor raio é seguida mas o seu erro à trajectória aumenta ou comparando as duas sinusóides testadas (uma mais ”rápida”que outra). 8.3.3 Espiral Até ao momento havia-se testado o sistema de guiamento mas separando a cadeia longitudinal e a lateral, com uma trajectória espiral as duas cadeias irão ser actuadas simultaneamente. No sistema em malha aberta (figuras 8.10 e 8.11) como seria de esperar as trajectórias referência não são correctamente seguidas e existe um elevado erro que é essencialmente devido ao erro da trajectória no plano XOY. y (m) 600 400 Trajectória Desejada Trajectória Real 200 0 0 100 200 300 400 x (m) 500 600 Altitude (m) 1400 1200 Altitude Desejada Altitude Real 1000 800 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 Tempo (s) Distância (m) 150 100 50 0 Tempo (s) Figura 8.10: Espiral em malha aberta - trajectória no plano XOY, altitude e erro à trajectória 62 Sistema de Guiamento 1400 1350 1300 z (m) 1250 1200 1150 (2) 1100 (1) 1050 800 (1) − Trajectória Desejada (2) − Trajectória Real 1000 950 600 600 400 500 400 200 300 200 x (m) 0 y (m) 100 0 −100 −200 Figura 8.11: Espiral em malha aberta - trajectória Convém porém realçar que apesar de não haver seguimento das referências o sistema consegue gerar trajectórias semelhantes. Apesar das aproximações serem muito rudimentares, ainda assim, dentro de certos limites, trajectória algo complexas conseguem ser geradas. No sistema em malha fechada (figuras 8.12 e 8.13), como já acontecia para a circunferência, o erro decresce drasticamente, não sendo porém nulo também pelas razões já enunciadas anteriormente. Apesar de tudo o aspecto macroscópico da trajectória global é bastante satisfatório. y (m) 600 400 Trajectória Desejada Trajectória Real 200 0 0 100 200 300 400 x (m) 500 600 Altitude (m) 1400 1200 1000 800 Altitude Desejada Altitude Real 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 Tempo (s) Distância (m) 10 5 0 Tempo (s) Figura 8.12: Espiral em malha fechada - trajectória no plano XOY, altitude e erro à trajectória 63 Sistema de Guiamento 1400 1350 1300 z (m) 1250 1200 1150 1100 (1) 1050 (2) (1) − Trajectória Desejada (2) − Trajectória Real 1000 600 400 950 600 500 200 400 300 200 y (m) 0 100 0 −100 x (m) −200 Figura 8.13: Espiral em malha fechada - trajectória 8.3.4 Rajada discreta e aquisição Um dos problemas que se põe no guiamento é o da aquisição. Este consiste em o avião, não se encontrar na trajectória desejada tendo por isso que mudar, possivelmente de orientação, para ”entrar”na trajectória desejada. Apresenta-se de seguida (figura 8.14) um teste com uma rajada em que a trajectória desejada é uma sinusóide lateral (estudo sobre sinusóides pode ser consultado no anexo F). Este teste visa compreender o resultado devolvido pelo sistema global face a uma perturbação. O teste possibilita também o estudo do guiamento face a um problema de aquisição visto que a rajada considerada é discreta o que possibilita a escolha do tempo em que a rajada se faz sentir. A rajada considerada tem uma amplitude igual a 10m/s. 60 40 y (m) 20 0 Traj. Desejada Traj. Real Traj. Real Com Rajada −20 −40 −60 0 500 1000 1500 2000 2500 3000 x (m) Distância (m) 20 Erro Sem Rajada Erro Com Rajada 15 10 5 0 0 20 40 60 80 100 120 140 Tempo (s) Figura 8.14: Sinusóide lateral com uma rajada de ar O resultado obtido depende muito da amplitude da rajada. Esta quanto maior for pior será a aquisição. Com base nas trajectórias testadas e apresentadas anteriormente e no anexo F, pode-se assim concluir que o sistema de guiamento desenvolvido, embora que simples, consegue fazer o seguimento de trajectórias complexas, desde que não se exija muito destas. 64 Capı́tulo 9 Conclusões Neste trabalho considera-se a aplicação várias técnicas de controlo a uma aeronave de pequenas dimensões. Para tal, e de forma a permitir quer ensaios em simulação, quer a análise das caracterı́sticas dinâmicas da aeronave, utilizou-se um modelo matemático não linear de base fı́sica [2],[3]. A validade do modelo, só analisável com rigor com testes em túnel de vento, foi verificada através da comparação das derivadas aerodinâmicas calculadas do modelo com dados experimentais de um aparelho com caracterı́sticas semelhantes (Cessna 172). O modelo matemático foi simulado usando o ambiente Simulink do MATLAB. Com base no modelo, caracterizou-se o comportamento dinâmico, incluindo regimes lineares (pequenas variações em torno de um ponto de equilı́brio) e não lineares. Mostra-se também a variação do regime linear em função da velocidade. Quando se efectua o controlo automático de uma aeronave o seu movimento é afectado por comandos do sistema de guiamento, efeitos atmosféricos e ruı́do nos sensores, sendo os comandos do sistema de guiamento perturbações intencionais ou desejadas. Deste modo, fez-se uma descrição das perturbações atmosféricas baseadas no modelo de Dryden de turbulência atmosférica e estudou-se o efeito do ruı́do nos sensores de modo a que o sistema de controlo as possa atenuar. Admite-se que os sensores não introduzem dinâmicas adicionais. De forma a ter uma base de partida para os restantes controladores desenvolvidos e para estabelecimento dos diagramas de blocos, projectou-se um sistema de controlo baseado em controladores clássicos. As variáveis controladas - roll, yaw, pitch e velocidade - permitem a estabilização da aeronave e são os comandos de um piloto remoto ou as saı́das de um sistema de guiamento. A regulação do ângulo de sideslip permite a realização de volta coordenada nas manobras efectuadas. O projecto dos controladores locais foi baseado em técnicas polinomiais, tendo sido projectado controladores locais lineares para cada uma das condições de voo (em função da velocidade). No projecto de controladores polinomiais é necessário o conhecimento das funções transferência entrada-saı́da a controlar, pelo que é necessário recorrer à identificação destas. Esta fase foi das mais complicadas, visto que tratar-se de um sistema MIMO (Multiple Input Multiple Output), ou seja a identificação de cada cadeia não pode ser feita excluindo as outras, visto que as variáveis a controlar não independentes entre si. O método escolhido para identificação foi o da Máxima Verosimilhança por ser o mais geral e poderoso apesar de ser o computacionalmente mais pesado. No projecto dos controladores, em alguns caso foi considerado a inclusão de efeito integral, o que combinado com actuadores que possam entrar em zonas de saturação podem originar resultados indesejáveis (efeito conhecido como integrator windup). De forma a resolver este problema é adoptada uma técnica de Anti-windup, que funciona como um condensador a descarregar na zona em que se atingem as saturações, através de uma realimentação. A utilização da técnica de controladores polinomiais mostrou-se proveitosa. Apesar de ser uma técnica de controlo baseada em modelos lineares e a dinâmica da aeronave ser não linear, os controladores desenvolvidos apresentam boas caracterı́sticas de robustez face às não 65 Conclusões linearidades avaliadas em simulação. No intuito de tornar o desempenho do sistema independente das variações de velocidade, utilizase técnicas de atribuição de ganhos (gain scheduling), que consiste na ”colagem”dos diversos controladores lineares, dimensionados para os diversos pontos de funcionamento, através da interpolação dos parâmetros dos controladores por uma variável de selecção. A estabilidade e o desempenho do sistema com gain scheduling são avaliados através de simulações, que foram pondo à prova a robustez do sistema face a variações rápidas do regime de voo. Em resumo, os sistemas com gain scheduling mantêm-se estáveis, cumprindo com as especificações para a gama de velocidades pretendida, apresentando em todos os casos desempenhos superiores em relação aos controladores fixos. Tanto para cadeia de pitch como para a cadeia de roll o comportamento com a velocidade tem algumas semelhanças, que se devem essencialmente à dependência das forças e momentos aerodinâmicos com a pressão dinâmica, verificando-se o forte acoplamento que existe na cadeia de pitch com a velocidade, sendo que o desempenho da dinâmica lateral mostrou-se menos sensı́vel a estas variações. Desenvolveu-se, de uma forma construtiva, um controlador adaptativo para a cadeia de pitch. A inclusão de um integrador na cadeia de controlo revelou ser a melhor opção para que o erro estático de posição fosse nulo. Verificou-se que a inclusão de referências no pseudoestado nem sempre é a melhor opção, pois neste caso a coexistência de efeito integral levou a uma ”competição”, o que provocou um erro de seguimento não nulo. De modo a reduzir a sobreelevação e o tempo de estabelecimento foi necessário incluir a velocidade de rotação Q no pseudoestado. Quando testado com velocidade variável, o controlador originou resultados qualitativamente piores. Verificou-se que a penalização da cadeia de controlo revela ter uma grande dependência com a qualidade do seguimento. Deste modo variou-se a penalização da cadeia de controlo, ρ, em função da velocidade. Assim considerou-se a afinação feita para os dois extremos (baixas e altas velocidades) e interpolou-se uma recta, de modo a que quando a velocidade variasse ρ também variasse. Estudou-se ainda para esta cadeia a variação do custo em função do horizonte T . Os resultados revelaram que o custo inicialmente decresce, com o aumento de T , atingindo um mı́nimo. No entanto, após esse mı́nimo, o aumento do horizonte provoca também um aumento no custo que é devido à degradação da estimativa dos preditores que deixa de ser ”suficientemente boa”. Para as restantes cadeias o projecto de controlo foi similar ao realizado para a cadeia de pitch. A única excepção na cadeia de roll foi que não se considerou necessário uma variação do peso da acção de controlo em função da velocidade pois esta cadeia é menos ”sensı́vel”à velocidade que a anterior. Na cadeia de yaw o arranque do algoritmo mostrou-se problemático enquanto que na cadeia de velocidade as saturações revelaram-se criticas sendo necessário aplicar filtros. Com os controladores locais internos desenvolvidos projectou-se então controladores de coordenação (cadeia externa em cascata com os controladores internos) para o seguimento de trajectórias, baseados em técnicas de controlo clássico. Os controladores desenvolvidos foram ajustados para o seguimento de trajectórias (Tracking), ou seja seguimento em termos estritos do ponto de vista temporal. Com base nas trajectórias testadas conclui-se que o sistema de guiamento desenvolvido consegue fazer o seguimento de trajectórias algo complexas. Algumas questões que surgiram ao longo do trabalho ficaram em aberto. Algumas dessas questões poderão proporcionar eventuais trabalhos futuros: • Uso de outras técnicas de identificação, tendo em conta a não linearidade do sistema (NARX e NARMAX ), que possam levar a modelos mais precisos. 66 Conclusões • Identificação a partir de dados reais e comparação com os modelos obtidos a partir do modelo matemático. • Diversificação na classificação de regiões, ou seja não só definir regiões em função da velocidade mas também em função da altitude e da localização do centro de massa. • Escolha de outro tipo de variáveis de selecção para o gain scheduling, por exemplo baseado em estatı́sticas ou redes neuronais. • Sistema que integre os controladores adaptativos para as diferentes cadeias. • Análise da robustez do sistema face a falhas. Identifica-se desde logo um problema caso exista uma falha, nomeadamente com a função ρ(U ), visto que esta não se irá adaptar à mudança que o sistema assumir. • Desenvolvimento de um sistema de guiamento tendo em conta a cinemática global do sistema aeronave/controladores internos (cinemática inversa). • Coordenação de comportamentos - existência de outros veı́culos, tripulados ou não, a operar na mesma zona e sob os quais não há qualquer tipo de informação. Esses objectos tem de ser detectados de modo a realizar correcções na trajectória de forma a que, cumprindo os objectivos da ”missão”, se evite colisões. 67 ANEXO A Modelo da aeronave Nesta secção apresentam-se todas as equações do modelo, os respectivos parâmetros da aeronave e a estrutura de blocos em Simulink. A base do modelo teve como referência o trabalho e tese de mestrado de Luı́s Mendonça Rato e Rui Neves da Silva ([2],[3]). A.1 O modelo VxT = c(ψ)c(θ)U + [c(ψ)s(θ)s(φ) − s(ψ)c(φ)]V + [c(ψ)s(θ)c(φ) + s(ψ)s(φ)]W VyT = s(ψ)c(θ)U + [s(ψ)s(θ)s(φ) + c(ψ)c(φ)]V + [s(ψ)s(θ)c(φ) − c(ψ)s(φ)]W (A.1) (A.2) VzT = −s(θ)U + c(θ)s(φ)V + c(θ)c(φ)W (A.3) 1 X m 1 V̇ = P W − RU + Y m 1 Ẇ = QU − P V + Z m U̇ = RV − QW + (A.4) (A.5) (A.6) Ṗ = i1 P Q + i2 QR + i3 L + i4 N Q̇ = i5 P R + i6 (R2 − P 2 ) + i7 M Ṙ = i8 P Q + i9 QR + i10 L + i11 N (A.7) (A.8) (A.9) φ̇ = P + R tan(θ) cos(φ) + Q tan(θ) sin(φ) θ̇ = Q cos(φ) − R sin(φ) ψ̇ = R cos(φ) sin(φ) +Q cos(θ) cos(θ) (A.10) (A.11) (A.12) X = Xg + Xa + Xp Y = Yg + Ya + Yp Z = Zg + Za + Zp (A.13) (A.14) (A.15) L = La + Lp M = Ma + Mp N = Na + Np (A.16) (A.17) (A.18) 69 Modelo da aeronave Xg = −mg sin(θ) Yg = mg cos(θ) sin(φ) Zg = mg cos(θ) cos(φ) (A.19) (A.20) (A.21) Xa = LW sin(α) + LF sin(β) − (DW + DB ) cos(α) cos(β) + LT sin(α + αW ) Ya = −(DW + DB ) cos(α) sin(β) − LF cos(β) Za = −LW cos(α) − LT cos(α + αW ) − (DW + DB ) sin(α) cos(β) (A.22) (A.23) (A.24) W U V β = U α = (A.25) (A.26) CLW = aW (α − αL0 + ∆f ηf ) αW = −K1 CLW + K2 (A.27) Ẇ lT V2 (A.28) LW = qSW CLW (A.29) LT = qST aT (α + αW + εT + ∆e ηe + LF = qSF aF (β + ∆r ηr − DW = qSW (CD0 QlT ) V RlF P γP + ) V V CL2 W ) + πAW e (A.30) (A.31) (A.32) DB = qSref CDB (A.33) 1 2 ρV 2 √ V = U2 + V 2 + W 2 q = (A.34) (A.35) La = LW + LF Ma = MW + MT + MB Na = NW + NF + NB (A.36) (A.37) (A.38) 70 Modelo da aeronave LW LF MW MT MB NW = = = = = = qSW b∆la ηa + qSW bγ9 β + [γ4 + γ5 (α − αL0 )]ρVR + γ1 ρVP −hF LF qSW cCMac − lW LW −lT LT qKMB α qSW b∆na ηa + qSW b[γ10 + γ11 (α − αL0 )]β + [γ6 + γ7 (α − αL0 ) + γ8 (α − αL0 )2 ]ρVR + [γ2 + γ3 (α − αL0 )]ρVP = lF LF = −qKNB β = K3 CLW NF NB ∆na (A.39) (A.40) (A.41) (A.42) (A.43) (A.44) (A.45) (A.46) (A.47) Xp = T Yp = T sin(εy ) Zp = T sin(εz ) (A.48) (A.49) (A.50) Lp = Q Mp = −lp T sin(εz ) Np = lp T sin(εy ) (A.51) (A.52) (A.53) Ṫ = 1 T V0 Pmax ηP TH − Ke Ke (A.54) Pmax PP TH 2π V0 s T V V2 = + + 2 2ρSd 4 Q = (A.55) V0 (A.56) η̇ = Aact η + Bact η ∗ £ ¤0 ηa ηe ηr ηf η = £ ∗ ∗ ∗ ∗ ¤0 ηa ηe ηr ηf η∗ = A.2 (A.57) (A.58) (A.59) Os parâmetros ρ = 1.23 Kgm−3 g = 9.8065 ms−2 m = 10.5 Kg Ixx = 1.9 Kgm2 71 Modelo da aeronave Iyy = 2.5 Kgm2 Izz = 3.5 Kgm2 Ixz = 0.052 Kgm2 xx −Iyy )Ixz i1 = (IzzI+I 2 xx Izz −I xz i2 = 2 −I 2 Iyy Izz −Izz xz 2 Ixx Izz −Ixz i3 = Izz 2 Ixx Izz −Ixz i4 = Ixz 2 Ixx Izz −Ixz i5 = Izz −Ixx Iyy i6 = Ixz Iyy i7 = 1 Iyy i8 = 2 −I I +I 2 Ixx yy xx xz 2 Ixx Izz −Ixz i9 = (Iyy −Izz −Ixx )Ixz 2 Ixx Izz −Ixz i10 = Ixz 2 Ixx Izz −Ixz i11 = Ixx 2 Ixx Izz −Ixz SW = 1.04 m2 b = 2.7 m c = 0.4 m lW = 0.0 m AW = 7.0 aW = 4.7 rad−1 αL0 = −0.082 rad CMac = −0.065 ∆f = 0.27 ∆la = 0.54 rad−1 K3 = 0.03 CD0 = 0.007 e = 0.90 ST = 0.19 m2 aT = 3.8 rad−1 εT = 0.017 rad ∆e = 0.75 lT = 1.0 m SF = 0.09 m2 72 Modelo da aeronave aF = 1.8 rad−1 ∆r = −0.78 lF = 1.0 m hF = 0.17 m K1 = 0.086 rad K2 = 0.4 rad Sref CDB = 0.014 m2 KMB = 0.058m3 rad−1 KNB = 0.17m3 rad−1 γ1 = −2.0 m4 rad−1 γ2 = 0.17 m4 rad−1 γ3 = −3.0 m4 rad−2 γ4 = 0.16 m4 rad−1 γ5 = 1.6 m4 rad−2 γ6 = −0.018 m4 rad−1 γ7 = −0.14 m4 rad−2 γ8 = −0.086 m4 rad−3 γ9 = −0.028 rad−1 γ10 = −0.0022 rad−1 γ11 = −0.053 rad−2 γP = 0.43 m εy = 2o = 0.035 rad εz = 1o = 0.017 rad lp = 0.4 m Pmax = 3400 W ηP = 0.8 PP = 0.5 Sd = 0.20 m2 Ke = 2.0 m2 Aact = −Bact −60 0 0 0 0 −60 0 0 = 0 0 −60 0 0 0 0 −60 73 Modelo da aeronave A.3 Modelo da Aeronave em Simulink Figura A.1: Diagrama de blocos em Simulink do modelo da aeronave. O modelo da aeronave pode ser visto como a associação de 3 submodelos - modelo gravı́tico, modelo aerodinâmico e modelo propulsivo. Estes tem a finalidade de calcular as forças (X, Y e Z) e momentos externos (L, M e N ) existentes na aeronave. Integrando as forças e momentos chega-se às velocidade lineares (U, V e W ) e rotacionais (P, Q e R) da aeronave (bloco Equações Movimento). Do bloco Ang. Euler calculam-se os ângulos θ, φ e ψ a partir das velocidades de rotação. 74 ANEXO B Sensores Na escolha dos sensores para o controlo de um sistema devem-se considerar quais as variáveis importantes e quais são as fisicamente mensuráveis. Existem vários factores que influenciam a escolha de um sensor (tipo de tecnologia, caracterı́sticas fı́sicas, qualidade, custo ...). Neste trabalho não se faz uso de sensores para medir todo o estado da aeronave; tenta-se através de um número mı́nimo de sensores, obter toda a informação indispensável ao controlo e estabilização da aeronave. Dessa forma consideram-se os seguintes sensores: giroscópio de rotação, giroscópio vertical, velocı́metro, altı́metro e GPS. B.1 Giroscópio de rotação Os giroscópios de rotação indicam a rotação de um corpo em relação a um referencial de inércia. Podem, deste modo, medir as rotações P , Q e R. O princı́pio de funcionamento dos giroscópios de rotação baseia-se na ”Lei da Conservação do Momento Angular”. Uma massa, com inércia I, em rotação constante ws , sujeito a uma rotação do eixo, wp , perpendicular a ws gera um binário T . Assim tem-se, T = wp × ws I (B.1) Este binário é absorvido por uma mola e constitui uma medida da rotação wp . Os giroscópios de rotação consistem então num rotor em movimento sobre um quadro acoplado a um detector de ângulo, uma mola de restituição e um dispositivo de amortecimento. Figura B.1: Giroscópio de rotação. Devido ao método de medida, sistema massa-mola (sistema oscilatório) amortecido, os giroscópios de rotação são modelados por sistemas de 2a ordem. wn2 X(s) = 2 Y (s) s + 2ξwn s + wn2 (B.2) Os valores tı́picos para esta dinâmica são: fn = 20Hz ξ = 0.7 (B.3) (B.4) 75 Sensores B.2 Giroscópio vertical Ao contrário do giroscópio de rotação, o giroscópio vertical tem o eixo de rotação livre. Assim, esse eixo aponta segundo uma direcção constante (vertical). De facto, devido à rotação da terra e ao movimento sobre a superfı́cie da terra este eixo não é exactamente constante em relação ao referencial Terra. A actualização da orientação do eixo faz-se com um mecanismo do tipo pêndulo (usualmente interruptores de mercúrio) de forma que o eixo aponte sempre segundo o vector força da gravidade. Uma vez estabilizado o eixo segundo a vertical, podem medir-se os ângulos de roll, pitch e de yaw, directamente através de potenciómetros. Figura B.2: Giroscópio vertical. O mecanismo de estabilização do eixo tem tempos de resposta muito mais lentos do que a aeronave. Assim, o sensor é representado por um ganho puro (unitário). B.3 Altı́metro e velocı́metro Um altı́metro é um instrumento que indica a altitude acima ou abaixo de um determinado ponto. O altı́metro mais comum é o baseado na variação da pressão atmosférica (pressão estática) com a altitude, e é designado por altı́metro barométrico. Os velocı́metros usuais são tubos de Pitot, baseando-se na lei de Bernoulli no seu funcionamento para medir a velocidade de um fluı́do. O tubo de Pitot consiste num tubo com uma abertura lateral e outra frontal, de modo a medir a pressão estática e a pressão total (pressão estática mais pressão dinâmica). Sabendo que a pressão dinâmica é dada por, 1 ∆P = Pf rontal − Plateral = ρU 2 2 (B.5) Sabendo a diferença de pressões é então possı́vel calcular a velocidade do fluxo (U ). A dinâmica do sensor é usualmente de terceira ordem, mas os termos de segunda ordem são desprezáveis, pelo que se reduz a: 1 X(s) = Y (s) sTs + 1 (B.6) Valores tı́picos de Ts vão de 0.1 a 0.4 s. Note-se que a pressão dinâmica depende da densidade do ar ρ, que por sua vez é função da temperatura, da humidade e da altitude, pelo que a velocidade determinada é uma aproximação. Neste trabalho consideram-se as propriedades do ar constantes (atmosfera padrão). 76 Sensores Figura B.3: Tubo de Pitot. B.4 GPS O sistema GPS é o sistema de navegação por satélite. O GPS providencia sinais de satélite codificados que permitem calcular a posição, velocidade e tempo. Quatro sinais de satélites são utilizados para a calcular a posição (a 3 dimensões) e o offset temporal do relógio receptor. Figura B.4: GPS. O Space Segment consiste em 24 satélites GPS que enviam sinais de rádio. Podem existir mais do que 24 satélites operacionais, dado que novos satélites são lançados para substituir outros mais antigos. A resolução de cada satélite é de aproximadamente 12 horas. Existem 6 planos orbitais com 4 satélites cada, igualmente espaçados de 60o e inclinados de cerca de 55o relativamente ao plano equatorial e a uma altitude de 20200 Km. Em cada ponto da Terra são visı́veis entre 5 a 8 satélites. O Segmento de Controlo consiste nas estações de rasteio localizadas à volta da Terra. Nestas estações são medidos os sinais provenientes dos satélites, os quais incorporados em modelos orbitais para cada satélite, permitem calcular a órbita precisa e as correcções aos relógios de cada satélite. A estação principal reenvia para cada satélite os dados referentes à sua órbita e relógio; os satélites posteriormente enviam, via rádio, subconjuntos de informação referentes à sua órbita para os receptores GPS. Os receptores de GPS e o conjunto de utilizadores constituem o GPS User Segment. A obtenção da posição com exactidão é possı́vel utilizando receptores em locais de referência que fornecem correcções e informação de posição relativa para cada um dos receptores remotos. 77 ANEXO C Identificação Neste anexo apresenta-se o método utilizado na identificação, das funções de transferência entrada-saı́da dos sistemas que se pretendem controlar, denominado máxima verosimilhança. Posteriormente seguem-se os resultados obtidos na identificação das várias cadeias de controlo. C.1 Máxima Verosimilhança Seja y uma variável aleatória cuja densidade de probabilidade p(y|θ) depende de um parâmetro desconhecido θ. Admitindo que se conhece a forma de p(y|θ) pretende-se escolher o θ que maximiza a função de verosimilhança: L(θ) = p(y|θ) (Likehood Function) Que é equivalente a maximizar: log{L(θ)} Assim: θ̂M V = arg max log{L(θ)} ∂ log{L(θ)}|θ=θ̂M V = 0 ∂θ ou seja O modelo ARMAX pode ser escrito, em termos de operador avanço, como: A(q)y(t) = B(q)u(t) + C(q)e(t) (C.1) sendo e(t) ruı́do branco de variância desconhecida. Com alguma manipulação algébrica chegase a: e(t) = y(t) + n X ai y(t − i) − i=1 n X bi u(t − i) − i=1 n X ci e(t − i) i=1 Logo dada uma estimativa inicial dos parâmetros θ, estima-se o erro de predição: εθ (t) = y(t) + n X i=1 aθi y(t − i) − n X bθi u(t − i) − i=1 n X cθi εθ (t − i) i=1 Com o erro de predição consegue-se/segue-se a maximização log{L(θ, σ)} que é equivalente a minimizar J(θ) = −log{L(θ, σ)}. Repare-se que na forma mais genérica a variância é desconhecida e por isso a função de verosimilhança depende dela. Para realizar a minimização é necessário, por vezes, recorrer a um algoritmo numérico iterativo. 79 Identificação C.2 Resultados De seguida apresentam-se os resultados obtidos na identificação das cadeias de velocidade, pitch, roll e yaw. C.2.1 Cadeia de velocidade A função de transferência a identificar, nesta cadeia, é TH → V elocidade U mas para a identificar terá que haver um controlo de altitude, pois o sistema em malha aberta é instável. Este controlo é feito com o controlador PID concebido anteriormente que actua nos elevadores. No entanto, estes influenciam a velocidade o que leva a que a identificação tenha que passar a multivariável. Toda a teoria exposta anteriormente mantém-se válida apenas com uma excepção - o sistema passa a ter 2 entradas (necessário especificar 2 sinais). No fundo identificase os 2 sistemas: a influência do motor e dos elevadores na velocidade. A função do MATLAB armax.m possibilita identificação de sistemas MISO (Multiple Input Single Output). De seguida apresentam-se os resultados obtidos. Veloc. Ordens Treino Valid. Pólos Zeros Modelo A (q ) = 1 − 1.322q −1 + 0.325q −2 B1∗ (q −1 ) = 0.467q −1 + 0.348q −2 B2∗ (q −1 ) = 0.462q −1 − 0.072q −2 C ∗ (q −1 ) = 1 + 1.244q −1 + 0.991q −2 A∗ (q −1 ) = 1 − 1.258q −1 + 0.263q −2 B1∗ (q −1 ) = 0.440q −1 + 0.317q −2 B2∗ (q −1 ) = −0.016q −1 − 0.130q −2 C ∗ (q −1 ) = 1 + 1.333q −1 + 0.983q −2 A∗ (q −1 ) = 1 − 1.211q −1 + 0.218q −2 B1∗ (q −1 ) = 0.418q −1 + 0.292q −2 B2∗ (q −1 ) = −0.486q −1 + 0.575q −2 C ∗ (q −1 ) = 1 + 1.403q −1 + 0.972q −2 A∗ (q −1 ) = 1 − 1.168q −1 + 0.177q −2 B1∗ (q −1 ) = 0.395q −1 + 0.268q −2 B2∗ (q −1 ) = 0.688q −1 + 0.764q −2 ∗ −1 C (q ) = 1 + 1.389q −1 + 0.956q −2 ∗ 18 m/s 2221 97.59 % 97.80 % 0.995 0.327 -0.746 22 m/s 2221 98.74 % 98.50 % 0.993 0.265 -0.721 26 m/s 2221 98.95 % 98.88 % 0.991 0.220 -0.699 30 m/s 2221 99.04 % 98.76 % 0.989 0.179 -0.679 −1 Tabela C.1: Resultados da identificação TH → V elocidade U . Note-se que interessa apenas, para o controlo, o A∗ (q −1 ) e B1∗ (q −1 ) e que os zeros indicados são referentes a B1∗ (q −1 ). Na coluna das ordens temos a indicação destas para A(q), B(q), C(q) e o atraso respectivamente. Como se pode ver, os ajustes de treino, validação e gráficos apresentam resultados elevados para todas as zonas. Salienta-se ainda que os modelo são estáveis em malha aberta, visto que os pólos estão dentro do circulo unitário, o que faz sentido porque como temos a altitude controlada, qualquer que seja o valor de comando a velocidade irá sempre estabilizar. É também visı́vel a semelhança entre as estruturas ainda que variem entre elas dependendo da velocidade. Ainda assim os pólos dominantes não variam significativamente com a velocidade. 80 Identificação 22 m/s 24.5 20 24 Velocidade (m/s) Velocidade (m/s) 18 m/s 20.5 19.5 Sistema Não Linear Sistema Linear 19 18.5 23.5 22.5 18 17.5 Sistema Não Linear Sistema Linear 23 22 200 300 400 21.5 500 200 Tempo (s) 300 26 m/s 32 Velocidade (m/s) 28.5 Velocidade (m/s) 500 30 m/s 29 28 27.5 Sistema Linear Sistema Não Linear 27 26.5 31.5 31 200 300 400 30 29.5 500 Sistema Linear Sistema Não Linear 30.5 26 25.5 400 Tempo (s) 200 300 Tempo (s) 400 500 Tempo (s) Figura C.1: Resposta ao escalão do sistema linear e não linear para as várias regiões. Na figura C.2 podem-se observar as respostas ao escalão dos modelos obtidos. 25 Velocidade [m/s] 20 15 10 18 m/s 22 m/s 26 m/s 30 m/s 5 0 0 10 20 30 40 50 60 70 80 90 100 Tempo [s] Figura C.2: Resposta ao escalão dos modelos obtidos para as várias zonas de funcionamento. Dadas as estruturas obtidas esperam-se que os comportamentos destas sejam também eles 81 Identificação semelhantes. No entanto, da figura, é desde logo evidente os diferentes ganhos estáticos para cada ponto de funcionamento. Para velocidades baixas temos ganhos maiores e à medida que se aumenta a velocidade o ganho diminui. Tal faz sentido, porque com o aumento da velocidade da aeronave mais nos aproximamos da limitação desta consequentemente menor é a capacidade de aumento. Também nos diagramas de Bode (tanto de amplitude como de fase), figura C.3, é notório a semelhança entre os modelos. Constata-se também a diferença de ganhos estáticos para as várias velocidades, assim como a pequena variação da largura de banda do sistema com a velocidade. Pelas margens de ganho e de fase comprova-se, a já referida, estabilidade dos sistemas. 60 50 Amplitude (dB) 40 30 20 10 0 −10 −20 −30 −40 0 18 m/s 22 m/s 26 m/s 30 m/s Fase (º) −45 −90 −135 −180 −225 −3 10 −2 10 −1 0 10 10 1 10 2 10 Frequência (rad/s) Figura C.3: Diagrama de Bode para os 4 pontos de funcionamento. Velocidade Baixa (18 m/s) Média-baixa (22 m/s) Média-alta (26 m/s) Alta (30 m/s) Largura de Banda 0.0501 rad/s 0.0702 rad/s 0.0904 rad/s 0.1106 rad/s Margem de Fase 24o 33o 39o 45o Margem de Ganho 5.81 dB 7.28 dB 8.52 dB 9.69 dB Tabela C.2: Largura de banda, margem de fase e margem de ganho dos sistemas TH → V elocidade U . Na representação do mapa de pólos e zeros, figura C.4, dos vários modelos, pode ver-se o andamento destes com a variação da velocidade onde os pólos dominantes parecem independentes da velocidade. 82 Identificação Pólos (x) e Zeros (o) 1 0.8 0.6 0.4 0.2 (4) (1) (2) (3) (3) (2) (1) (4) (3) (2) (1) (4) 0 −0.2 −0.4 (1) − 22 m/s (2) − 26 m/s (3) − 30 m/s (4) − 18 m/s −0.6 −0.8 −1 −1 −0.5 0 0.5 1 Figura C.4: Mapa dos pólos e zeros para as diferentes velocidades. C.2.2 Cadeia de altitude Neste caso, como a cadeia de controlo é uma cascata, a função de transferência a identificar primeiramente é ηe → θ. Inicialmente é lógico pensar que a metodologia a aplicar neste caso é idêntica ao anterior. No entanto, ao contrário do que se verifica no caso anterior, com a cadeia de velocidade controlada, que influencia a cadeia de pitch, o sistema fica instável. Isto porque quando perturbamos, por exemplo negativamente, os elevadores a velocidade baixa. Com isto o controlador de velocidade aumenta a potência do motor de modo a compensar esta perca de velocidade. Isto faz com que o pitch aumente ainda mais ficando instável. Ou seja, é difı́cil restringir o pitch a uma gama de valores quando se perturba os elevadores e se tem o controlador de velocidade ligado. Como nesta cadeia é possı́vel, identificou-se a função transferência com o sistema em malha aberta, portanto, sem nenhum controlador ligado. Apenas tem que se ter cuidado para que não se fuja da zona de funcionamento em causa. De seguida mostram-se os resultados obtidos. Veloc. Ordens Treino Valid. 18 m/s 4401 99.48 99.50 22 m/s 4401 99.45 99.44 26 m/s 4401 99.42 99.45 30 m/s 4401 99.38 99.37 Modelo A (q ) = 1 − 3.038q + 3.443q −2 − 1.766q −3 + 0.362q −4 B ∗ (q −1 ) = −0.133q −1 + 0.013q −2 + 0.215q −3 − 0.097q −4 A∗ (q −1 ) = 1 − 2.877q −1 + 3.054q −2 − 1.470q −3 + 0.294q −4 B ∗ (q −1 ) = −0.192q −1 + 0.018q −2 + 0.291q −3 − 0.119q −4 A∗ (q −1 ) = 1 − 2.731q −1 + 2.706q −2 − 1.213q −3 + 0.238q −4 B ∗ (q −1 ) = −0.259q −1 + 0.024q −2 + 0.368q −3 − 0.138q −4 A∗ (q −1 ) = 1 − 2.584q −1 + 2.367q −2 − 0.973q −3 + 0.191q −4 B ∗ (q −1 ) = −0.334q −1 + 0.030q −2 + 0.445q −3 − 0.146q −4 ∗ −1 −1 Tabela C.3: Resultados da identificação ηe → θ. 83 Identificação 18 m/s 22 m/s 0.035 0 Sistema Linear Sistema Não Linear Sistema Linear Sistema Não Linear −0.005 θ (rad) θ (rad) 0.03 0.025 −0.01 −0.015 0.02 300 400 500 600 −0.02 100 700 200 Tempo (s) 300 400 500 Tempo (s) 26 m/s 30 m/s −0.02 −0.03 Sistema Linear Sistema Não Linear −0.025 Sistema Linear Sistema Não Linear −0.035 −0.03 θ (rad) θ (rad) −0.04 −0.035 −0.045 −0.05 −0.055 −0.04 −0.06 −0.045 100 200 300 400 −0.065 100 500 200 Tempo (s) 300 400 500 Tempo (s) Figura C.5: Resposta ao escalão do sistema linear e não linear para as várias regiões. Os ajustes de treino, validação e gráfico indicam uma identificação bem sucedida. Os modelos revelam estruturas semelhantes como no caso da velocidade. Em baixo apresentam-se as respostas ao escalão para cada ponto de funcionamento. 1 18 m/s 22 m/s 26 m/s 30 m/s 0.5 0 θ [rad] −0.5 −1 −1.5 −2 −2.5 0 20 40 60 80 100 120 140 160 180 Tempo [s] Figura C.6: Resposta ao escalão dos modelos obtidos. 84 200 Identificação Das respostas ao escalão ressaltam desde logo 3 factos - existência de regime oscilatório, diferentes ganhos estáticos para as várias velocidades e o sistema ser de fase não minima. Como se viu no capı́tulo 2, um escalão nos elevadores vai excitar o modo de oscilação Phugoid. Em relação à variação do ganho estático constata-se que para velocidades maiores os ganhos são maiores. Pensando em termos aerodinâmicos, para a mesma actuação nos elevadores, quanto maior for a velocidade maior é a sustentação e consequentemente maior será o pitch. Na tabela C.4 disponibilizam-se informações adicionais sobre os sistema identificados. Velocidade 18 m/s 22 m/s 26 m/s 30 m/s Pólos 0.995+0.061i 0.995-0.061i 0.524+0.300i 0.524-0.300i 0.995+0.050i 0.995-0.050i 0.444+0.315i 0.444-0.315i 0.994+0.042i 0.994-0.042i 0.371+0.323i 0.371-0.323i 0.994+0.036i 0.994-0.036i 0.298+0.323i 0.298-0.323i Zeros -1.413 0.985 0.521 -1.359 0.988 0.462 -1.308 0.988 0.412 -1.252 0.988 0.353 - Larg. de Banda Marg. de Fase Marg. de Ganho 4.12 rad/s 221.1o 35.2 dB 3.16 rad/s 216.4o 32.7 dB 2.24 rad/s 213.4o 30.9 dB 1.63 rad/s 209.4o 29.9 dB Tabela C.4: Largura de banda, margem de fase e margem de ganho dos sistemas ηe → θ. A nı́vel de estabilidade todos os sistemas são estáveis visto que os pólos encontram-se dentro do circulo unitário. Esta estabilidade também pode ser vista pelas margens de fase e de ganho assim como pela situação fı́sica em causa - uma perturbação nos elevadores irá sempre fazer com que o pitch estabilize. Observando os pólos vê-se que estes estão coerentes com os registados na figura 2.7. Analisando os pólos dominantes conclui-se que estes são complexos conjugados, daı́ o regime oscilatório, e que aproximam-se, no plano continuo, da origem à medida que a velocidade aumenta. Isto leva a que a largura de banda seja maior para velocidade menores. Estes resultados apesar de parecerem contraditórios estão coerentes com o que foi estudado anteriormente. De facto, observando a figura C.6, o que se passa é que larguras de banda maiores não implicam tempos de estabelecimento maiores. Isto porque este último depende não só da frequência natural como do factor de amortecimento. ts (x%) = |ln0.01x| ξωn (C.2) Assim, se pensando em rapidez de resposta como o tempo de estabelecimento, para velocidades maiores mais rápido é o sistema. De seguida encontra-se o diagrama de bode e o mapa de pólos e zeros para as várias velocidades. 85 Identificação 40 30 Amplitude (dB) 20 10 0 −10 −20 −30 −40 270 18 m/s 22 m/s 26 m/s 30 m/s Fase (º) 180 90 0 −90 −180 −3 −2 10 −1 10 0 10 1 10 2 10 10 Frequência (rad/s) Figura C.7: Diagrama de Bode para os 4 pontos de funcionamento. Pólos (x) e Zeros (o) 1 (1) − 18 m/s (2) − 22 m/s (3) − 26 m/s (4) − 30 m/s 0.8 0.6 (4) (3) (2) (1) 0.4 0.2 (4) (3) (2) (1) (1) (2) (3) (4) (1) (2) (3) (4) 0 (4) (3) (2) (1) −0.2 −0.4 −0.6 −0.8 −1 −1.5 −1 −0.5 0 0.5 1 Figura C.8: Mapa dos pólos e zeros para as diferentes velocidades. C.2.3 Cadeia Lateral O procedimento para identificar os 2 modelos necessários ao controlo lateral é em tudo identifico ao de altitude. Assim o apresenta-se de seguida, apenas, os resultados obtidos. • Cadeia roll. Note-se apenas que nesta cadeia, para 18 m/s, o sistema é instável por, nesta situação, a sustentação ser critica. 86 Identificação Veloc. Ordens Treino Valid. Pólos Zeros Modelo A (q ) = 1 − 0.987q −1 − 0.013q −2 B1∗ (q −1 ) = 0.287q −1 + 0.272q −2 B2∗ (q −1 ) = −7.87e − 7q −1 + 5.81e − 5q −2 B3∗ (q −1 ) = 2.16e − 5q −1 + 1.47e − 5q −2 C ∗ (q −1 ) = 1 + 1.33q −1 + 1.00q −2 A∗ (q −1 ) = 1 − 1.046q −1 + 0.047q −2 B1∗ (q −1 ) = 0.423q −1 + 0.336q −2 ∗ −1 B2 (q ) = −2.42e − 6q −1 + 1.07e − 6q −2 B3∗ (q −1 ) = 8.43e − 7q −1 + 1.57e − 6q −2 C ∗ (q −1 ) = 1 + 1.227q −1 + 0.973q −2 A∗ (q −1 ) = 1 − 1.081q −1 + 0.082q −2 B1∗ (q −1 ) = 0.559q −1 + 0.382q −2 ∗ −1 B2 (q ) = −2.78e − 6q −1 + 9.88e − 7q −2 B3∗ (q −1 ) = −7.25e − 8q −1 − 5.67e − 7q −2 C ∗ (q −1 ) = 1 + 1.283q −1 + 0.873q −2 A∗ (q −1 ) = 1 − 1.103q −1 + 0.105q −2 B1∗ (q −1 ) = 0.698q −1 + 0.417q −2 ∗ −1 B2 (q ) = −2.83e − 5q −1 − 4.87e − 6q −2 B3∗ (q −1 ) = 2.71e − 5q −1 + 2.02e − 5q −2 C ∗ (q −1 ) = 1 + 1.155q −1 + 1.004q −2 ∗ 18 m/s 2221 99.38 99.04 1.000 -0.013 22 m/s 2221 99.74 99.73 0.999 0.047 -0.795 26 m/s 2221 99.83 99.81 0.998 0.082 -0.685 99.27 0.998 0.105 -0.597 30 m/s 2221 98.88 -0.946 −1 Tabela C.5: Resultados da identificação ηa → φ. 18 m/s 22 m/s 0.07 0.08 0.06 φ (rad) φ (rad) 0.06 Sistema Linear Sistema Não Linear 0.05 0.04 0.03 0.02 Sistema Linear Sistema Não Linear 0.04 0.02 0.01 0 0 200 400 600 800 0 1000 0 200 Tempo (s) 400 600 800 1000 Tempo (s) 26 m/s 30 m/s 0.07 0.08 0.06 0.06 0.04 φ (rad) φ (rad) 0.05 Sistema Linear Sistema Não Linear 0.03 0.02 Sistema Linear Sistema Não Linear 0.04 0.02 0.01 0 0 200 400 600 800 1000 0 0 200 400 600 800 1000 Tempo (s) Tempo (s) Figura C.9: Resposta ao escalão do sistema linear e não linear para as várias cadeias. 87 Identificação 0.2 18 m/s 22 m/s 26 m/s 30 m/s 0.18 0.16 0.14 φ [rad] 0.12 0.1 0.08 0.06 0.04 0.02 0 0 100 200 300 400 500 600 700 800 900 1000 Tempo [s] Figura C.10: Resposta ao escalão dos modelos obtidos para as várias zonas de funcionamento.. Amplitude (dB) 100 50 0 −50 0 18 m/s 22 m/s 26 m/s 30 m/s Fase (º) −45 −90 −135 −180 −225 −270 −5 10 −4 10 −3 10 −2 10 −1 10 0 10 1 10 2 10 Frequência (rad/s) Figura C.11: Diagrama de Bode para os 4 pontos de funcionamento. 88 Identificação Pólos (x) e Zeros (o) 1 0.8 0.6 (1) − 18 m/s (2) − 22 m/s (3) − 26 m/s (4) − 30 m/s 0.4 0.2 (1) (2) (3) (4) (4) (3) (2) (1) (2) (1) (3) (4) 0 −0.2 −0.4 −0.6 −0.8 −1 −1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 Figura C.12: Mapa dos pólos e zeros para as diferentes velocidades. • Cadeia Yaw. Aqui devido ao sistema ser uma cascata a identificação foi conseguida com alguma dificuldade. Os modelos obtidos, ainda que com grandes valores nos ajustes de treino, validação e gráficos, não têm estruturas tão coerentes no entanto foram os que melhor resultados originaram. Refira-se ainda que houve um caso, para 18 m/s, que apesar de a identificação parecer bem realizada, não se conseguiu identificar um modelo no qual se conseguisse projectar um controlador capaz de estabilizar o sistema. Assim usou-se o modelo obtido para 22 m/s ajustando-se apenas o ganho. Veloc. Ordens Treino Valid. Modelo A (q ) = 1 − 1.548q −1 + 0.321q −2 + 0.251q −3 B1∗ (q −1 ) = −0.043q −1 + 0.037q −2 + 0.017q −3 B2∗ (q −1 ) = −0.309q −1 + 0.145q −2 + 0.163q −3 C ∗ (q −1 ) = 1 − 0.845q −1 ∗ −1 A (q ) = 1 − 1.548q −1 + 0.321q −2 + 0.251q −3 B1∗ (q −1 ) = −0.043q −1 + 0.037q −2 + 0.017q −3 B2∗ (q −1 ) = −0.309q −1 + 0.145q −2 + 0.163q −3 C ∗ (q −1 ) = 1 − 0.845q −1 A∗ (q −1 ) = 1 − 1.376q −1 + 0.194q −2 + 0.223q −3 B1∗ (q −1 ) = −0.112q −1 + 0.126q −2 + 0.002q −3 B2∗ (q −1 ) = 0.162q −1 − 0.549q −2 + 0.406q −3 C ∗ (q −1 ) = 0 A∗ (q −1 ) = 1 − 1.319q −1 + 0.212q −2 + 0.155q −3 B1∗ (q −1 ) = −0.168q −1 + 0.210q −2 + −0.026q −3 B2∗ (q −1 ) = 0.476q −1 − 0.994q −2 + 0.541q −3 C ∗ (q −1 ) = 1 − 0.893q −1 ∗ 18 m/s 3311 98.76 98.39 22 m/s 3311 98.76 98.39 26 m/s 3301 97.44 97.41 30 m/s 3311 99.16 99.04 −1 Tabela C.6: Resultados da identificação φ → ψ. 89 Identificação 18 m/s 22 m/s 0.04 0.03 0.02 0.02 ψ (rad) ψ (rad) 0.03 Sistema Linear Sistema Não Linear 0.01 0 0 −0.01 100 Sistema Linear Sistema Não Linear 0.01 200 300 400 500 −0.01 100 600 200 Tempo (s) 26 m/s 0.02 0.02 0.015 0.015 500 600 0.01 ψ (rad) ψ (rad) 400 30 m/s 0.025 Sistema Linear Sistema Não Linear 0.01 0.005 Sistema Linear Sistema Não Linear 0.005 0 0 −0.005 −0.005 −0.01 100 300 Tempo (s) 200 300 400 500 600 Tempo (s) −0.01 100 200 300 400 500 600 Tempo (s) Figura C.13: Resposta ao escalão do sistema linear e não linear para as várias regiões. 90 ANEXO D Controlo Polinomial D.1 Princı́pios do Controlo Polinomial O objectivo nesta fase é o projecto de controladores polinomiais com dois graus de liberdade com a estrutura que se mostra na figura D.1, d r T R u B A y S R Figura D.1: Esquema de um controlador com dois graus de liberdade. Sendo o processo modelado pela função transferência, H(z) = B(z)/A(z), pretende-se determinar um controlador causal (polinómios R, S e T) tal que o sistema controlado se comporte como H(z) = Bm (z)/Am (z), em que o modelo desejado para a cadeia fechada deve satisfazer ∂Am − ∂Bm ≥ ∂A − ∂B. O controlador tem os objectivos acima definidos, bem como impor dinâmicas convenientes ao sistema controlado e evitar que este entre em zonas de funcionamento não lineares. Admite-se que o controlador é descrito por: R(q)u(k) = T (q)r(k) + S(q)y(k) (D.1) em que R é mónico e q representa o operador avanço. Por forma a que a lei de controlo seja causal, tem que se ter: ½ ∂R ≥ ∂S ∂R ≥ ∂T (D.2) No caso em que as ordens são todas iguais, então o controlador não introduz atrasos. Tendo em conta a figura 5.2 (para d = 0) o problema de projecto do controlador, consiste em obter R, S e T tal que: Bm BT = AR + BS Am (D.3) podendo a solução do problema não ser única. Existe um conjunto de restrições que serão abordadas mais adiante de forma a garantir a unicidade. 91 Controlo Polinomial Porém, na maioria dos casos, é necessária a introdução de um observador (Ao ) de modo a garantir condições de causalidade. Reformulando, o problema consiste em obter R, S e T que satisfaçam: Bm Ao BT = AR + BS Am Ao (D.4) A ordem do observador, bem como a sua localização, está também sujeita a certas restrições. Como a resolução da equação (D.4) pode levar ao cancelamento de pólos e zeros, é necessário ter algumas preocupações de forma a evitar o cancelamento de pólos e zeros de fase não mı́nima, o que levaria a modos internos instáveis. Assim, apenas se podem cancelar os zeros ”estáveis”, logo se existir um destes zeros em B e esse zero não for factor de Bm então deverá ser factor de AR + BS de forma a ser cancelado. Desta forma factoriza-se B como, B = B+B− (D.5) em que B + é mónico e contém todos os zeros a cancelar. Visto que nas especificações tem de estar incluı́das as raı́zes de B − factoriza-se, Bm = B − B m (D.6) e como B + é para ser cancelado então terá de ser factor de AR + BS, pelo que também será factor de R, R = B+R (D.7) Tendo em conta as equações (D.4), (D.5), (D.6) e (D.7) obtém-se T B m Ao = Am Ao AR + B − S (D.8) e, considerando a necessidade de inclusão de integradores para garantir o seguimento de referências com erro estático nulo, tem-se, T A(z − 1)λ R 1 + B−S = B m Ao Am Ao (D.9) em que R = (z − 1)λ R1 e λ é o número de integradores. Os polinómios que definem os controladores são pois obtidos a partir de ½ T = B m Ao A(z − 1)λ R1 + B − S = Am Ao → Eq. Diof antina (D.10) A solução para a equação de Diofantina pode admitir múltiplas soluções. A existência de solução única é obtida com a restrição ½ ∂S < λ + ∂A ∂R = ∂Ao + ∂Am − ∂A − λ (D.11) 92 Controlo Polinomial válida apenas no caso mais geral, sem qualquer tipo de perturbações. A solução para a equação Diofantina foi obtida com a toolbox do MATLAB - Polbox. A partir das soluções da equação de Diofantina obtêm-se finalmente os polinómios S e R calculando, R = B + (z − 1)λ R1 (D.12) A ordem para o polinómio observador não é arbitrária, estando sujeita à seguinte condição de causalidade, ∂Ao ≥ 2∂A − ∂Am − ∂B + + λ − 1 (D.13) válida para o caso geral, sem qualquer tipo de perturbações aditivas ao sistema. D.2 Controlo Robusto • Estudo da robustez, da cadeia de pitch, para a zona de 22 m/s. 40 35 Modelo Nominal 22 Modelo1 Modelo2 Modelo3 Modelo4 Modelo5 Modelo6 30 Amplitude (dB) 25 20 15 10 5 0 −3 10 −2 10 −1 10 0 10 1 10 Frequência (rad/s) Figura D.2: Diagramas de Bode de modelos de incerteza - pitch. 93 Controlo Polinomial 80 70 Erro1 Erro2 Erro3 Erro4 Erro5 Erro6 Complementar 60 Amplitude (dB) 50 40 30 20 10 0 −10 −3 10 −2 10 −1 0 10 10 1 10 2 10 Frequência (rad/s) Figura D.3: Verificação da condição de estabilidade robusta. • Modelo de incerteza, da cadeia de velocidade e pitch , para outras zonas de funcionamento. 50 Modelo Nominal 22 Modelo18 Modelo26 Modelo30 40 Amplitude (dB) 30 20 10 0 −10 −20 −30 −3 10 −2 10 −1 0 10 10 1 10 2 10 Frequência (rad/s) Figura D.4: Diagramas de Bode de modelos de incerteza - velocidade. 94 Controlo Polinomial 40 Modelo Nominal 22 Modelo18 Modelo26 Modelo30 30 Amplitude (dB) 20 10 0 −10 −20 −30 −40 −3 10 −2 −1 10 0 10 10 1 10 2 10 Frequência (rad/s) Figura D.5: Diagramas de Bode de modelos de incerteza - pitch. D.3 Polinómios R, S, T Região Polinómio R (q ) = 1.000 + 0.301q −1 + 0.000q −2 S ∗ (q −1 ) = 0.815 − 1.064q −1 + 0.316q −2 T ∗ (q −1 ) = 0.070 − 0.003q −1 + 0.000q −2 R∗ (q −1 ) = 1.000 + 0.269q −1 + 0.000q −2 S ∗ (q −1 ) = 0.759 − 0.931q −1 + 0.243q −2 T ∗ (q −1 ) = 0.073 − 0.003q −1 + 0.000q −2 R∗ (q −1 ) = 1.000 + 0.243q −1 + 0.000q −2 S ∗ (q −1 ) = 0.742 − 0.865q −1 + 0.197q −2 T ∗ (q −1 ) = 0.077 − 0.003q −1 + 0.000q −2 R∗ (q −1 ) = 1.000 + 0.218q −1 + 0.000q −2 S ∗ (q −1 ) = 0.712 − 0.769q −1 + 0.152q −2 T ∗ (q −1 ) = 0.080 − 0.003q −1 + 0.000q −2 ∗ 18m/s 22m/s 26m/s 30m/s −1 Tabela D.1: Controladores R, S e T da cadeia de velocidade para as várias regiões. 95 Controlo Polinomial Região Polinómio R (q ) = 1.000 + 0.036q −1 + 0.000q −2 S ∗ (q −1 ) = 0.332 − 0.305q −1 + 0.007q −2 T ∗ (q −1 ) = 0.029 − 0.001q −1 + 0.000q −2 R∗ (q −1 ) = 1.000 + 0.082q −1 + 0.000q −2 S ∗ (q −1 ) = 0.255 − 0.248q −1 + 0.014q −2 T ∗ (q −1 ) = 0.021 − 0.001q −1 + 0.000q −2 R∗ (q −1 ) = 1.000 + 0.103q −1 + 0.000q −2 S ∗ (q −1 ) = 0.218 − 0.225q −1 + 0.024q −2 T ∗ (q −1 ) = 0.017 − 0.001q −1 + 0.000q −2 R∗ (q −1 ) = 1.000 + 0.113q −1 + 0.000q −2 S ∗ (q −1 ) = 0.193 − 0.209q −1 + 0.030q −2 T ∗ (q −1 ) = 0.015 − 0.001q −1 + 0.000q −2 ∗ 18m/s 22m/s 26m/s 30m/s −1 Tabela D.2: Controladores R, S e T da cadeia de roll para as várias regiões. Região Polinómio R (q ) = 1.000 + 0.568q −1 + 0.917q −2 + 0.000q −3 S ∗ (q −1 ) = 97.555 − 58.892q −1 − 166.339q −2 + 129.383q −3 T ∗ (q −1 ) = 2.918 − 1.459q −1 + 0.263q −2 − 0.015q −3 R∗ (q −1 ) = 1.000 + 0.607q −1 + 0.930q −2 + 0.000q −3 ∗ −1 S (q ) = 110.182 − 73.504q −1 − 170.832q −2 + 136.421q −3 T ∗ (q −1 ) = 3.874 − 1.937q −1 + 0.385q −2 − 0.020q −3 R∗ (q −1 ) = 1.000 + 0.907q −1 + 0.012q −2 + 0.000q −3 ∗ −1 S (q ) = 82.505 − 132.113q −1 + 36.999q −2 + 15.059q −3 T ∗ (q −1 ) = 4.186 − 2.093q −1 + 0.377q −2 − 0.021q −3 R∗ (q −1 ) = 1.000 + 0.779q −1 − 0.125q −2 + 0.000q −3 ∗ −1 S (q ) = 50.791 − 76.071q −1 + 20.004q −2 + 7.608q −3 T ∗ (q −1 ) = 3.984 − 1.992q −1 + 0.359q −2 − 0.020q −3 ∗ 18m/s 22m/s 26m/s 30m/s −1 Tabela D.3: Controladores R, S e T da cadeia de yaw para as várias regiões. 96 Controlo Polinomial Região Polinómio R (q ) = 1.000 − 0.498q − 1.006q −2 + 0.518q −3 + 0.000q −4 S ∗ (q −1 ) = −9.357 + 24.617q −1 − 24.288q −2 + 10.846q −3 − 1.938q −4 T ∗ (q −1 ) = −0.069 − 0.056q −1 + 0.005q −2 − 0.000q −3 + 0.000q −4 R∗ (q −1 ) = 1.000 − 0.497q −1 − 0.925q −2 + 0.435q −3 + 0.000q −4 S ∗ (q −1 ) = −5.935 + 15.064q −1 − 14.234q −2 + 6.091q −3 − 1.071q −4 T ∗ (q −1 ) = −0.049 − 0.040q −1 + 0.003q −2 − 0.000q −3 + 0.000q −4 R∗ (q −1 ) = 1.000 − 0.501q −1 − 0.852q −2 + 0.366q −3 + 0.000q −4 S ∗ (q −1 ) = −4.056 + 9.910q −1 − 8.925q −2 + 3.639q −3 − 0.633q −4 T ∗ (q −1 ) = −0.037 − 0.030q −1 + 0.003q −2 − 0.000q −3 + 0.000q −4 R∗ (q −1 ) = 1.000 − 0.498q −1 − 0.780q −2 + 0.293q −3 + 0.000q −4 S ∗ (q −1 ) = −2.867 + 6.704q −1 − 5.697q −2 + 2.193q −3 − 0.384q −4 T ∗ (q −1 ) = −0.029 − 0.024q −1 + 0.002q −2 − 0.000q −3 + 0.000q −4 ∗ 18m/s 22m/s 26m/s 30m/s −1 −1 Tabela D.4: Controladores R, S e T da cadeia de pitch para as várias regiões. Cadeia Velocidade 19.2 Velocidade (m/s) D.4.1 Resultados do controlo polinomial 19 18.8 Referência Sistema Linear Sistema Não linear 18.6 18.4 18.2 18 18 20 22 24 26 28 30 0.16 Sistema Linear Sistema Não Linear 0.14 0.12 Th D.4 0.1 0.08 0.06 0.04 18 20 22 24 26 28 30 Tempo (s) Figura D.6: Controlo de velocidade (18 m/s) - saı́das e actuações. 97 Controlo Polinomial 27.2 Velocidade (m/s) 27 26.8 26.6 Referência Sistema Linear Sistema Não Linear 26.4 26.2 26 25.8 18 20 22 24 26 28 30 0.25 Sistema Linear Sistema Não Linear Th 0.2 0.15 0.1 0.05 18 20 22 24 26 28 30 Tempo (s) Figura D.7: Controlo de velocidade (26 m/s) - saı́das e actuações. 31.2 Velocidade (m/s) 31 30.8 30.6 Referência Sistema Linear Sistema Não Linear 30.4 30.2 30 29.8 18 20 22 24 26 28 30 28 30 0.3 Sistema Linear Sistema Não Linear Th 0.25 0.2 0.15 18 20 22 24 26 Tempo (s) Figura D.8: Controlo de velocidade (30 m/s) - saı́das e actuações. 98 Controlo Polinomial Cadeia Pitch 10 θ (º) 8 6 Referência Sistema Linear Sistema Não Linear 4 2 0 28 30 32 34 36 38 40 −2 Elevadores (º) −3 Sistema Linear Sistema Não Linear −4 −5 −6 −7 28 30 32 34 36 38 40 Tempo (s) Figura D.9: Controlo de pitch (18 m/s) - saı́das e actuações. 10 θ (º) 8 6 Referência Sistema Linear Sistema Não Linear 4 2 0 28 30 32 34 36 38 40 −0.5 Elevadores (º) D.4.2 −1 Sistema Linear Sistema Não Linear −1.5 −2 28 30 32 34 36 38 40 Tempo (s) Figura D.10: Controlo de pitch (26 m/s) - saı́das e actuações. 99 Controlo Polinomial 10 θ (º) 8 6 Referência Sistema Linear Sistema Não Linear 4 2 0 28 30 32 34 36 38 40 0 Elevadores (º) −0.2 −0.4 Sistema Linear Sistema Não Linear −0.6 −0.8 −1 −1.2 −1.4 28 30 32 34 36 38 40 Tempo (s) Figura D.11: Controlo de pitch (30 m/s) - saı́das e actuações. Cadeia Roll 10 φ (º) 8 Referência Sistema Linear Sistema Não Linear 6 4 2 0 28 30 32 34 36 38 40 3 2.5 Ailerons (º) D.4.3 2 Sistema Linear Sistema Não Linear 1.5 1 0.5 0 −0.5 28 30 32 34 36 38 40 Tempo (s) Figura D.12: Controlo de roll (18 m/s) - saı́das e actuações. 100 Controlo Polinomial 10 φ (º) 8 Referência Sistema Linear Sistema Não Linear 6 4 2 0 28 30 32 34 36 38 40 2 Sistema Linear Sistema Não Linear Ailerons (º) 1.5 1 0.5 0 −0.5 28 30 32 34 36 38 40 Tempo (s) Figura D.13: Controlo de roll (22 m/s) - saı́das e actuações. 10 φ (º) 8 6 Referência Sistema Linear Sistema Não Linear 4 2 0 28 30 32 34 36 38 40 Ailerons (º) 1.5 Sistema Linear Sistema Não Linear 1 0.5 0 −0.5 28 30 32 34 36 38 40 Tempo (s) Figura D.14: Controlo de roll (26 m/s) - saı́das e actuações. 101 Controlo Polinomial 10 φ (º) 8 Referência Sistema Linear Sistema Não Linear 6 4 2 0 28 30 32 34 36 38 40 1.5 Ailerons (º) 1 Sistema Linear Sistema Não Linear 0.5 0 −0.5 28 30 32 34 36 38 40 Tempo (s) Figura D.15: Controlo de roll (30 m/s) - saı́das e actuações. Cadeia Yaw 12 10 ψ (º) 8 Referência Sistema Linear Sistema Não Linear 6 4 2 0 −2 18 20 22 24 26 28 30 32 34 36 6 5 4 φ (º) D.4.4 Sistema Não Linear 3 2 1 0 −1 18 20 22 24 26 28 30 32 34 36 Tempo (s) Figura D.16: Controlo de yaw (18 m/s) - saı́das e actuações. 102 Controlo Polinomial 12 10 ψ (º) 8 6 Referência Sistema Linear Sistema Não Linear 4 2 0 −2 18 20 22 24 26 28 30 32 34 36 34 36 7 6 5 Sistema Não Linear φ (º) 4 3 2 1 0 −1 18 20 22 24 26 28 30 32 Tempo (s) Figura D.17: Controlo de yaw (22 m/s) - saı́das e actuações. 12 10 ψ (º) 8 Referência Sistema Linear Sistema Não Linear 6 4 2 0 −2 18 20 22 24 26 28 30 32 34 36 10 8 φ (º) 6 Sistema Não Linear 4 2 0 −2 18 20 22 24 26 28 30 32 34 36 Tempo (s) Figura D.18: Controlo de yaw (26 m/s) - saı́das e actuações. 103 Controlo Polinomial 10 ψ (º) 8 6 Referência Sistema Linear Sistema Não Linear 4 2 0 −2 18 20 22 24 26 28 30 32 34 36 12 10 Sistema Não Linear φ (º) 8 6 4 2 0 −2 18 20 22 24 26 28 30 32 34 36 Tempo (s) Figura D.19: Controlo de yaw (30 m/s) - saı́das e actuações. 104 ANEXO E Controlo Adaptativo Neste anexo apresentam-se modelos preditivos com especial destaque para o modelo preditivo do MUSMAR. Explicitam-se os princı́pios seguidos na identificação do modelo preditivo do MUSMAR. Finalmente apresentam-se os resultados obtidos com o MUSMAR para a cadeia de roll. E.1 Modelos preditivos Tendo em vista a minimização de (7.1) pretende-se construir modelos preditivos. Admite-se que o processo a controlar possa ser representado por um modelo ARX (Auto-Regressive with Exogeneous Input): A∗ (q −1 )y(t) = B ∗ (q −1 )u(t) + e(t) A∗ (q −1 ) = 1 + na X (E.1) ai q −i (E.2) i=1 B ∗ (q −1 ) = nb X bi q −i (E.3) i=0 em que y(.), u(.) e e(.) representam respectivamente a saı́da do processo, a entrada do processo e uma perturbação incorrelacionada de média nula. A∗ (q −1 ), B ∗ (q −1 ) são polinómios no operador atraso q −1 de ordem, respectivamente, na e nb . A teoria das equações diofantinas garante que existem polinómios Fj∗ (q −1 ) e G∗j (q −1 ) com a forma Fj∗ (q −1 ) = 1+ j X fi q −i (E.4) i=1 G∗j (q −1 ) = nX a −1 gij q −i (E.5) i=0 que satisfazem: 1 = Fj∗ (q −1 )A∗ (q −1 ) + q −j−1 G∗j (q −1 ) (E.6) Dado que se pretende um modelo preditivo, este deve ter a forma de y(t + j + 1) em função de y(t) e u(t). Multiplicando (E.1) por Fj∗ (q −1 ) e considerando (E.6) chega-se a: y(t + j + 1) = G∗j (q −1 )y(t) + Fj∗ (q −1 )B ∗ (q −1 )u(t + j) + Fj∗ (q −1 )e(t + j + 1) 105 (E.7) Controlo Adaptativo Como o termo e(t + j + 1) é incorrelacionado com as restantes parcelas, o estimador óptimo de y(t + j + 1), dada a informação até ao instante t, é dado por: ŷ(t + j + 1|t) = G∗j (q −1 )y(t) + Fj∗ (q −1 )B ∗ (q −1 )u(t + j) (E.8) Pretende-se separar a influência das entradas passadas das futuras. A teoria das equações diofantinas garante que existem polinómios Ej∗ (q −1 ) e Hj∗ (q −1 ) com a forma Hj∗ (q −1 ) = j+1 X hi q −i (E.9) i=1 nX b −1 ζij q −i+1 (E.10) Fj∗ (q −1 )B ∗ (q −1 ) = Hj∗ (q −1 ) + q −j−1 Ej∗ (q −1 ) (E.11) Ej∗ (q −1 ) = i=0 que satisfazem: Com (E.11) rescreve-se (E.8) obtendo-se: ŷ(t + j + 1|t) = G∗j (q −1 )y(t) + Hj∗ (q −1 )u(t + j) + Ej∗ (q −1 )u(t − 1) (E.12) Definindo os vectores de coeficientes, Π0j+1 = [g0j , g1j , · · · , gnj a −1 , ζ0j , ζ1j , · · · , ζnj b −1 ] 0 Hj+1 = [h1 , h2 , · · · , hj+1 ] (E.13) (E.14) o pseudoestado (vector com a informação passada para o cálculo da variável manipulada) s(t) = [y(t), · · · , y(t − na − 1), u(t − 1), · · · u(t − nb )]0 (E.15) e o vector de entradas futuras U (t) = [u(t + T − 1), u(t + T − 2), · · · , u(t)]0 (E.16) chega-se ao modelo preditivo 0 U (t) + Π0j+1 s(t) + ²t , j = 0, 1, · · · , T − 1 y(t + j + 1) = Hj+1 (E.17) ²t = [²1 (t), · · · , ²T (t)]0 (E.18) onde é um resı́duo incorrelacionado com os outros termos. 106 Controlo Adaptativo E.2 Modelo preditivo do MUSMAR Como foi referido anteriormente, o algoritmo MUSMAR restringe as amostras de controlo futuras, de t + 1 até t + T − 1, por uma retroacção fixa do pseudoestado, deixando apenas u(t) livre. Apenas este é aplicado ao processo - estratégia de horizonte recidivo. Esta restrição nas amostras de controlo futuras modifica o modelo preditivo obtido anteriormente (E.17). De acordo com a proposição 1 de [9] o modelo ARX (E.1), quando se considera uma retroacção constante da amostra t + 1 até t + T − 1, admite modelos preditivos com a seguinte forma: y(t + i) = θi u(t) + ψi0 s(t) + νyi (t) (E.19) u(t + i − 1) = µi−1 u(t) + φi−1 s(t) + νui (t) onde i = 1, ..., T (E.20) Nota: para i ≥ 2 os parâmetros do modelo (E.19 e E.20), contrariamente ao modelo (E.17), dependem da retroacção aplicada ao processo. Se ao modelo (E.19) se subtrair a referência, ref , obtém-se o modelo preditivo para os erros de seguimento ye, ye(t + i) = θi u(t) + ψi0 s(t) + νyi (t) (E.21) u(t + i − 1) = µi−1 u(t) + φ0i−1 s(t) + νui (t) onde i = 1, ..., T (E.22) Este modelo inclui as referências futuras no pseudoestado s(t) = [y(t), · · · , y(t − na − 1), u(t − 1), · · · , u(t − nb ), ref (t + T ), · · · , ref (t + 1)] Considerando a saı́da em função do erro de seguimento e da referência, y(t) = ref (t) − ye(t), o pseudoestado assume a seguinte forma: s(t) = [e y (t), · · · , ye(t − na − 1), u(t − 1), · · · , u(t − nb ), ref (t + T ), · · · , ref (t + 1)] Opcionalmente podem ser ainda adicionado ao pseudoestado variáveis de estado medidas e perturbações acessı́veis. E.3 Identificação do modelo preditivo do MUSMAR Os parâmetros θi , ψi0 , µi e φ0i , dos modelos (E.21 e E.22) que são necessários para (7.4), são estimados em cada instante de amostragem usando um algoritmo de identificação nomeadamente os mı́nimos quadrados recursivos com esquecimento direccional (DFRLS - directional forgetting recursive least squares) [9]. Visto que os modelos (E.21 e E.22) apresentam o mesmo regressor, ϕ = [u(t)s0 (t)]0 , a carga computacional envolvida na estimação é reduzida (apenas uma matriz de covariância, P , tem que ser actualizada). Nos mı́nimos quadrados recursivos com esquecimento direccional a matriz de informação, Λ(t) = P −1 (t), é actualizada de acordo com: Λ(t) = Λ(t − 1) + (1 − α(t))ϕ0 (t − 1)ϕ(t − 1) 107 (E.23) Controlo Adaptativo em que α(t) é um escalar que representa a quantidade de informação que vai ser perdida segundo uma direcção ”dada”pela matriz caracterı́stica - ϕ0 (t − 1)ϕ(t − 1). Assim esquece-se informação apenas segundo a direcção de onde nova informação chega. Considera-se o seguinte modelo genérico: y(t) = θ0 ϕ(t − 1) + η(t) (E.24) em que θ é o vector de parâmetros a estimar, ϕ(t) o regressor e η(t) ruı́do branco. As equações de DFRLS para a estimação dos parâmetros θ são: ²(t) = y(t) − θ̂0 (t − 1)ϕ(t − 1) K(t) = 1+ ϕ0 (t (E.25) P (t)ϕ(t − 1) − 1)P (t − 1)ϕ0 (t − 1)[1 − α(t)] θ̂(t) = θ̂(t − 1) + K(t)²(t) P (t) = [I − ϕ(t)K(t)]P (t − 1)[1 + α(t)], (E.26) −1 com P (t) = Λ (t) (E.27) (E.28) Um ponto a ser considerado é a quantidade de informação a ”esquecer”, α(t). Uma das possibilidades, a utilizada pelo algoritmo MUSMAR, é fazer: α(t) = (1 − λ) + ϕ0 (t 1−λ − 1)P (t − 1)ϕ(t − 1) 0< λ <1 (E.29) (E.30) onde λ pode ser visto como um factor de esquecimento segundo a direcção de onde chega informação. E.4 MUSMAR - Cadeia de roll Apresentam-se duas simulações: uma com velocidade fixa e a outra com velocidade variável. Para ambas mostram-se os ganhos, a actuação e o seguimento. Os parâmetros considerados na simulação com velocidade fixa foram: NA = 3 NB = 2 NG = 0 NV = 1 NX = 0 NW = 0 T = 5 Ts = 0.1 λ = 0.97 ρ = 1 η = 10−4 f load = 1 Com estes parâmetros obtiveram-se os seguintes resultados: 108 Controlo Adaptativo Ganhos L 0.5 0 −0.5 −1 0 2 4 6 8 10 12 14 16 18 20 10 Roll [graus] 5 0 −5 Roll Referencia −10 Aelerons [graus] −15 0 2 4 6 8 0 2 4 6 8 10 12 14 16 18 20 10 12 14 16 18 20 4 2 0 −2 −4 Tempo [s] Figura E.1: MUSMAR - cadeia de roll. Ganhos, seguimento e ailerons. Para o caso em que a velocidade varia definiu-se os seguintes parâmetros: NA = 3 NB = 2 NG = 0 NV = 1 NX = 0 NW = 0 T = 5 Ts = 0.1 λ = 0.97 ρ = 10 η = 10−4 f load = 1 De seguida mostram-se os resultados obtidos na cadeia de roll para velocidade variável. Velocidade U [m/s] 40 35 30 25 20 15 10 20 25 30 35 40 45 50 55 60 65 45 50 55 60 65 Tempo [s] 20 Roll [graus] 15 10 5 0 −5 −10 20 25 30 35 40 Tempo [s] Figura E.2: MUSMAR - cadeia de roll com velocidade variável. Velocidade e seguimento. 109 Controlo Adaptativo Ganhos L 0.2 0 −0.2 −0.4 0 10 20 0 10 20 30 40 50 60 30 40 50 60 3 Aelerons [graus] 2 1 0 −1 −2 −3 Tempo [s] Figura E.3: MUSMAR - cadeia de roll com velocidade variável. Ganhos e ailerons. 110 ANEXO F Guiamento F.1 Sistemas de guiamento Figura F.1: Sistema de guiamento em malha aberta Figura F.2: Sistema de guiamento em malha fechada 111 Guiamento F.2 Referências das trajectórias Nesta secção apresentam-se as referências geradas para os controladores internos, das trajectórias que se encontram no capı́tulo 8. • Subida 25 Velocidade (m/s) 24 23 22 21 20 19 Velocidade Desejada Velocidade Real 0 20 40 60 80 100 5 140 Orientação Desejada Orientação Real 4 Orientação θ (º) 120 3 2 1 0 −1 0 20 40 60 80 100 120 140 Tempo (s) Figura F.3: Subida em malha aberta - referências geradas para os controladores internos 25 Velocidade (m/s) 24 23 22 21 20 19 Velocidade Desejada Velocidade Real 0 20 40 60 80 100 120 140 120 140 6 Orientação Desejada Orientação Real Orientação θ (º) 5 4 3 2 1 0 −1 0 20 40 60 80 100 Tempo (s) Figura F.4: Subida em malha fechada - referências geradas para os controladores internos 112 Guiamento Velocidade (m/s) • Circunferência 24 22 Velocidade Desejada Velocidade Real 20 0 20 40 60 80 100 120 140 Orientação Ψ (º) 400 300 200 100 0 Orientação Desejada Orientação Real 0 20 40 60 80 100 120 140 120 140 Orientação θ (º) 0.5 0 Orientação Desejada Orientação Real −0.5 −1 0 20 40 60 80 100 Tempo (s) Figura F.5: Circunferência em malha fechada - referências geradas para os controladores internos Velocidade (m/s) • Espiral 24 22 Velocidade Desejada Velocidade Real 20 0 20 40 60 80 100 120 140 Orientação Ψ (º) 1000 500 Orientação Desejada Orientação Real 0 −500 0 20 40 60 80 100 120 140 Orientação θ (º) 10 5 0 Orientação Desejada Orientação Real −5 0 20 40 60 80 100 120 140 Tempo (s) Figura F.6: Espiral em malha aberta - referências geradas para os controladores internos 113 Velocidade (m/s) Guiamento 24 22 Velocidade Desejada Velocidade Real 20 0 20 40 60 80 100 120 140 120 140 120 140 Orientação Ψ (º) 1000 500 Orientação Desejada Orientação Real 0 −500 0 20 40 60 80 100 Orientação θ (º) 20 10 Orientação Desejada Orientação Real 0 −10 0 20 40 60 80 100 Tempo (s) Figura F.7: Espiral em malha fechada - referências geradas para os controladores internos F.3 Outras trajectórias testadas no guiamento Nesta secção apresentam-se os resultados obtidos para as restantes trajectórias testadas. • Curva 600 y (m) 400 Trajectória Desejada Trajectória Real 200 0 0 500 1000 1500 2000 x (m) 2500 3000 Altitude (m) 1002 Altitude Desejada Altitude Real 1001 1000 999 998 0 20 40 Distância (m) 60 80 100 120 140 100 120 140 Tempo (s) 30 20 10 0 0 20 40 60 80 Tempo (s) Figura F.8: Curva em malha aberta - trajectória no plano XOY, altitude e erro à trajectória 114 Velocidade (m/s) Guiamento 24 22 Velocidade Desejada Velocidade Real 20 0 20 40 60 80 100 120 140 80 100 120 140 120 140 Orientação Ψ (º) 30 20 10 Orientação Desejada Orientação Real 0 −10 0 20 40 60 Orientação θ (º) 0.5 Orientação Desejada Orientação Real 0 −0.5 −1 0 20 40 60 80 100 Tempo (s) Figura F.9: Curva em malha aberta - referências geradas para os controladores internos 600 y (m) 400 Trajectória Desejada Trajectória Real 200 0 0 500 1000 1500 2000 x (m) 2500 3000 Altitude (m) 1002 1001 1000 Altitude Desejada Altitude Real 999 998 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 Tempo (s) Distância (m) 15 10 5 0 Tempo (s) Figura F.10: Curva em malha fechada - trajectória no plano XOY, altitude e erro à trajectória 115 Velocidade (m/s) Guiamento 24 22 Velocidade Desejada Velocidade Real 20 0 20 40 60 80 100 120 140 80 100 120 140 100 120 140 Orientação − ψ (º) 40 20 0 −20 Orientação Desejada Orientação Real 0 20 40 60 0.5 Orientação − θ (º) Orientação Desejada Orientação Real 0 −0.5 −1 0 20 40 60 80 Tempo (s) Figura F.11: Curva em malha fechada - referências geradas para os controladores internos • Circunferência y (m) 600 400 Trajectória Desejada Trajectória Real 200 0 0 100 200 300 400 500 600 x (m) Altitude (m) 1002 1000 Altitude Desejada Altitude Real 998 996 0 20 40 60 0 20 40 60 80 100 120 140 80 100 120 140 Tempo (s) Distância (m) 150 100 50 0 Tempo (s) Figura F.12: Circunferência em malha aberta - trajectória no plano XOY, altitude e erro à trajectória 116 Velocidade (m/s) Guiamento 24 22 Velocidade Desejada Velocidade Real 20 Orientação Ψ (º) 0 20 40 60 80 100 120 140 80 100 120 140 600 Orientação Desejada Orientação Real 400 200 0 0 20 40 60 Orientação θ (º) 0.5 Orientação Desejada Orientação Real 0 −0.5 −1 0 20 40 60 80 100 120 140 Tempo (s) Figura F.13: Circunferência em malha aberta - referências geradas para os controladores internos y (m) 600 400 Trajectória Desejada Trajectória Real 200 0 −200 −100 0 100 200 x (m) 300 400 500 600 Altitude (m) 1002 1001 1000 999 998 Altitude Desejada Altitude Real 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 Tempo (s) Distância (m) 15 10 5 0 Tempo (s) Figura F.14: Circunferência em malha fechada - trajectória no plano XOY, altitude e erro à trajectória 117 Velocidade (m/s) Guiamento 24 22 Velocidade Desejada Velocidade Real 20 0 20 40 60 80 100 120 140 60 80 100 120 140 120 140 Orientação Ψ (º) 600 Orientação Desejada Orientação Real 400 200 0 0 20 40 Orientação θ (º) 0.5 Orientação Desejada Orientação Real 0 −0.5 −1 0 20 40 60 80 100 Tempo (s) Figura F.15: Circunferência em malha fechada - referências geradas para os controladores internos • Sinusóide lateral 1 y (m) 50 0 Trajectória Desejada Trajectória Real −50 0 500 1000 1500 x (m) 2000 2500 3000 3500 Altitude (m) 1002 Altitude Desejada Altitude Real 1001 1000 999 998 0 20 40 60 80 100 120 140 80 100 120 140 Tempo (s) Distância (m) 15 10 5 0 0 20 40 60 Tempo (s) Figura F.16: Sinusóide lenta em malha aberta - trajectória no plano XOY, altitude e erro à trajectória 118 Velocidade (m/s) Guiamento 24 22 Velocidade Desejada Velocidade Real 20 Orientação Ψ (º) 0 20 40 60 80 100 120 140 100 120 140 100 120 140 10 5 0 Orientação Desejada Orientação Real −5 −10 0 20 40 60 80 Orientação θ (º) 0.5 Orientação Desejada Orientação Real 0 −0.5 −1 0 20 40 60 80 Tempo (s) Figura F.17: Sinusóide lenta em malha aberta - referências geradas para os controladores internos y (m) 50 0 Trajectória Desejada Trajectória Real −50 0 500 1000 1500 x (m) 2000 2500 3000 3500 Altitude (m) 1002 1001 1000 999 998 Altitude Desejada Altitude Real 0 20 40 60 80 100 120 140 80 100 120 140 Tempo (s) Distância (m) 6 4 2 0 0 20 40 60 Tempo (s) Figura F.18: Sinusóide lenta em malha fechada - trajectória no plano XOY, altitude e erro à trajectória 119 Velocidade (m/s) Guiamento 24 22 Velocidade Desejada Velocidade Real 20 0 20 40 60 80 100 120 140 60 80 100 120 140 100 120 140 Orientação Ψ (º) 20 10 0 −10 −20 Orientação Desejada Orientação Real 0 20 40 Orientação θ (º) 0.5 Orientação Desejada Orientação Real 0 −0.5 −1 0 20 40 60 80 Tempo (s) Figura F.19: Sinusóide lenta em malha fechada - referências geradas para os controladores internos • Sinusóide lateral 2 A sinusóide desta simulação difere da anterior (sinusóide lateral 1) na frequência. Esta tem uma frequência maior que a anterior o que provoca um erro maior de seguimento. y (m) 20 0 Trajectória Desejada Trajectória Real −20 0 500 1000 1500 x (m) 2000 2500 3000 3500 Altitude (m) 1002 Altitude Desejada Altitude Real 1001 1000 999 998 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 Tempo (s) Distância (m) 15 10 5 0 Tempo (s) Figura F.20: Sinusóide rápida em malha aberta - trajectória no plano XOY, altitude e erro à trajectória 120 Velocidade (m/s) Guiamento 24 22 Velocidade Desejada Velocidade Real 20 0 20 40 60 80 100 120 140 60 80 100 120 140 Orientação Ψ (º) 10 Orientação Desejada Orientação Real 5 0 −5 −10 0 20 40 Orientação θ (º) 0.5 Orientação Desejada Orientação Real 0 −0.5 −1 0 20 40 60 80 100 120 140 Tempo (s) Figura F.21: Sinusóide rápida em malha aberta - referências geradas para os controladores internos Trajectória Desejada Trajectória Real y (m) 20 0 −20 0 500 1000 1500 x (m) 2000 2500 3000 3500 Altitude (m) 1002 1001 1000 Altitude Desejada Altitude Real 999 Distância (m) 998 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 Tempo (s) 8 6 4 2 0 Tempo (s) Figura F.22: Sinusóide rápida em malha fechada - trajectória no plano XOY, altitude e erro à trajectória 121 Velocidade (m/s) Guiamento 24 22 Velocidade Desejada Velocidade Real 20 0 20 40 60 80 100 120 140 60 80 100 120 140 120 140 Orientação Ψ (º) 20 Orientação Desejada Orientação Real 10 0 −10 −20 0 20 40 Orientação θ (º) 0.5 Orientação Desejada Orientação Real 0 −0.5 −1 0 20 40 60 80 100 Tempo (s) Figura F.23: Sinusóide rápida em malha fechada - referências geradas para os controladores internos • Subida 1035 1030 Altitude (m) 1025 1020 1015 1010 1005 Altitude Desejada Altitude Real 1000 995 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 Distância (m) 4 3 2 1 0 Tempo (s) Figura F.24: Subida em malha aberta - altitude e erro à trajectória 122 Guiamento 25 Velocidade (m/s) 24 23 22 21 20 19 Velocidade Desejada Velocidade Real 0 20 40 60 80 100 8 140 Orientação Desejada Orientação Real 6 Orientação θ (º) 120 4 2 0 −2 0 20 40 60 80 100 120 140 Tempo (s) Figura F.25: Subida em malha aberta - referências geradas para os controladores internos 1040 Altitude (m) 1030 1020 1010 1000 990 Altitude Desejada Altitude Real 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 Distância (m) 4 3 2 1 0 Tempo (s) Figura F.26: Subida em malha fechada - altitude e erro à trajectória 123 Guiamento 25 Velocidade (m/s) 24 23 22 21 20 19 Velocidade Desejada Velocidade Real 0 20 40 60 80 100 10 140 Orientação Desejada Orientação Real 8 Orientação θ (º) 120 6 4 2 0 −2 0 20 40 60 80 100 120 140 Figura F.27: Subida em malha fechada - referências geradas para os controladores internos • Sinusóide longitudinal Altitude (m) 1010 1005 1000 995 Altitude Desejada Altitude Real 990 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 3 Distância (m) 2.5 2 1.5 1 0.5 0 Tempo (s) Figura F.28: Sinusóide em altitude em malha aberta - altitude e erro à trajectória 124 Guiamento 25 Velocidade (m/s) 24 23 22 21 20 19 Velocidade Desejada Velocidade Real 0 20 40 60 80 100 120 140 60 80 100 120 140 Orientação θ (º) 3 2 1 0 −1 −2 Orientação Desejada Orientação Real −3 −4 0 20 40 Tempo (s) Figura F.29: Sinusóide em altitude em malha aberta - referências geradas para os controladores internos 1015 Altitude (m) 1010 1005 1000 995 990 985 Altitude Desejada Altitude Real 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 2.5 Distância (m) 2 1.5 1 0.5 0 Tempo (s) Figura F.30: Sinusóide em altitude em malha fechada - altitude e erro à trajectória 125 Guiamento 25 Velocidade (m/s) 24 23 22 21 20 19 Velocidade Desejada Velocidade Real 0 20 40 60 80 100 120 140 60 80 100 120 140 Orientação θ (º) 4 2 0 −2 −4 Orientação Desejada Orientação Real 0 20 40 Tempo (s) Figura F.31: Sinusóide em altitude em malha fechada - referências geradas para os controladores internos 126 Bibliografia [1] Mendonça Rato, L.M. e Neves da Silva, R., 1993. Piper PA 18 Super Cub 1/4 Escala - Modelo Não Linear INESC, Lisboa. [2] Neves da Silva, R., 1994. Controlo de Aeronave Não Tripulada usando Técnicas LQG/LTR de Ganho Variável. IST, Lisboa. [3] Mendonça Rato, L.M., 1994. Técnicas de Controlo Adaptativo aplicadas a uma Aeronave Não Tripulada. IST, Lisboa. [4] McLean, D., 1990. Automatic Flight Control Systems Prentice Hall International, U.K. [5] Franklin, G.F., Powell, J.D. e Emami-Naeini, A., 2002. Feedback Control of Dynamic Systems Addisson-Wesley Publishing Company, U.S.A. [6] Goodwin, G., Sin, K., 1984. Adaptive Filtering Prediction and Control Prentice Hall International, New Jersey. [7] Åström, K., Wittenmark, B., 1990. Computer Controlled Systems Prentice Hall International Editions, London, UK. [8] Åström, K., Wittenmark, B., 1989. Adaptive Control Addison-Wesley Publishing Company, U.S.A. [9] George, W., Zobrist e Chung You, H., 1994. Progress in Robotics and Intelligent Systems Ablex Publishing Corporation, New Jersey. [10] Lorenzo, S. e Bruno, S., 1996. Modeling And Control Of Robot Manipulators The MacGraw-Hill Companies, INC. [11] MIL-F-8785C Military Specification, Flying Qualities of Piloted Airplanes November, 1980. [12] Hunt, K.J. e Johansen, T.A. Design and Analysis of Gain-Scheduled Local Controller Networks Int.J.Control, vol. 66. pp.619-651, 1997. 127 BIBLIOGRAFIA [13] Roskam, J., 1979 Airplane Flight Dynamics and Automatic Flight Roskam Aviation and Engineering Corporation, Ottawa, Kansas. [14] Aslin, P., 1985 Aircraft Simulation and Robust Flight Control System Design The British Library, West Yorkshire, U.K. [15] Craig, J. J., 1989 Introduction to Robotics Addison-Wesley Publishing Company. [16] Fu, K. S., Gonzalez, R. C. e Lee, C. S. G., 1987 ROBOTICS: Control, Sensing, Vision and Inteligence McGraw Hill International. [17] SIMULINK, User’s Guide The Math Works, Inc. [18] Aircraft Flight Control Int.J.Control, vol. 59, Number 1, 1994. [19] Balas, G. J., 2003 Flight Control Law Design: An Industry Perspective European Journal Of Control, vol. 9, pp.207-226, 2003 [20] Johansen, T.A., Hunt, K.J. e Fritz, H., 1998 A Software Environment for Gain Scheduled Controller Design IEEE Control Systems Magazine, 1998 [21] Rugh, W. J., 1991 Analytical Framework for Gain Scheduling IEEE Control Systems Magazine, 1991 [22] Mulgund, S.S. e Stengel, R.F., 1996 Optimal Nonlinear Estimation for Aircraft Flight Control in Wind Shear Automatica, vol. 32, Number 1, pp.3-13, 1996 [23] Tischler, M.B., 1995 System Identification Methods for Aircraft Flight Control Development and Validation NASA Technical Memorandum 110369; USAATCOM Technical Report 95-A-007 1995 [24] Lemos, J.M. e Rato L.M, 1995 TunerPack, Técnicas de Identificação de sistemas e Afinação de Controladores INESC, Intituto de Engenharia de Sistemas e Computadores [25] Lemos, J.M. e Rato L.M, 1995 TunerPack, Manual de Referência INESC, Intituto de Engenharia de Sistemas e Computadores 128