Universidade Federal do Ceará Centro de Tecnologia Departamento de Engenharia Elétrica Programa de Educação Tutorial - PET Plano Básico Processos Estocásticos Filtro de Kalman Autores: Abnadan de Melo Martins Janailson Rodrigues Lima Lucas Chaves Gurgel Oscar Mota Brito Filho Raphael Fernandes Sales Costa Orientador: Prof. Dr. José Carlos Teles Campos
Sumário Introdução Sistemas Deterministicos Sistemas Estocásticos Probabilidade Filtro de Kalman Aplicações. 2
Introdução Pesquisa no campo do controle de sistemas dinâmicos. Diversos sistemas carecem de modelagem estocástica para ser melhor dimensionados; Muitos sistemas contam com fatores aleatórios de influência. Implementação do Filtro de Kalman. 3
SISTEMAS DETERMINÍSTICOS
Sistemas Determinísticos Sistemas inteiramente e precisamente descritos por equações. Previsíveis. Descrição: Espaço de Estados. Função de Transferência. Diagrama de Blocos. 5
Sistemas Determinísticos O Espaço de Estados: Variáveis de Estado: x ( t), x ( t),..., x ( t). 1 2 n O conhecimento destas variáveis em, mais a excitação aplicada subsequentemente é suficiente para determinar o estado do sistema em qualquer instante depois de. t o t o 6
Sistemas Determinísticos O Espaço de Estados: Equações Descritivas: Equação de Estado: dx t Ax t Bu t dt Onde x(t) é um vetor que contém as variáveis de estado e u(t) é a entrada e A e B são matrizes de ponderação. 7
Sistemas Determinísticos O Espaço de Estados: Equações Descritivas: Equação da saída: y t Cx t Na qual y(t) é a saída e a matriz C varia de acordo com a saída desejada. 8
Sistemas Determinísticos A Função de transferência: Relação direta entre entrada e saída. X() s H(s) Ys () Costuma-se trabalhar a função de transferência no domínio da freqüência.
Sistemas Determinísticos A Função de transferência: Q( s) Y s P( s) X s Ps () H ( s) s j. w Qs () Limitações: Única entrada e saída. Sistemas lineares e invariantes no tempo.
Sistemas Determinísticos Discretização do Tempo: Máquinas trabalham com tempo descontínuo Necessidade: Domínio Contínuo Domínio Discreto 11
Sistemas Determinísticos Discretização do Tempo: Derivada discreta: 100 90 80 dx k dt x k 1 x k t 70 60 50 40 30 x(k) dx/dt x(k+1) 20 dt 10 0 1 2 3 4 5 6 7 8 9 10 12
Sistemas Determinísticos Discretização do Tempo: Substituiu-se na equação de estado: 1 xk dx x k t Ax t Bu t Ax t Bu t dt T x k 1 I TA x k TBu k x k 1 Adx k Bdu k Assim: A ( I TA) B d d TB 13
Sistemas Determinísticos Discretização do Tempo: Equação de saída discreta: y k Cx k Nota-se a importância da escolha de um bom período de amostragem (T) Método formado pelo truncamento da série de Taylor de 1 ordem. Método limitado para sistemas de ordem superior. Uso da função c2d no Matlab 14
Sistemas Determinísticos Diagrama de Blocos: Modelo visual para se analisar sistemas: 15
Sistemas Determinísticos Exemplo: Circuito RLC: Equações: dil u( t) R. il L v dt C i L dv C dt C 16
Sistemas Determinísticos Exemplo: Considerando i () L x1 t e v () C x2 t e organizando as equações tem-se: x u() t R x L L L 2 1 1 x1 x 2 x C 17
Sistemas Determinísticos Exemplo: Equações na forma matricial: x R 1 1 x.. u( t) Gw 0 0 C x(k) 1 L C 1 L x 2 1 x 2 A ut () yt () Onde é a entrada e é a saída. B 18
SISTEMAS ESTOCÁSTICOS
Sistemas Estocásticos Um sistema estocástico, diferente do sistema determinístico, é um sistema que varia aleatoriamente; Não podemos prever exatamente o comportamento do sistema através de equações. Adicionando variáveis aleatórias em um sistema determinístico, obtemos as equações de um sistema estocástico. 20
Sistemas Estocásticos Equação de estado: x( k 1) Ax( k) Bu( k) Gw( k) Equação de saída: y( k) Cx( k) Fv( k) w(k) e v(k) são variáveis aleatórias (Ruídos) 21
Sistemas Estocásticos Existem diversos tipos de ruídos e, de maneira geral, são fatores indesejáveis nos sistemas. Exemplo: Ruído Branco 22
Sistemas Estocásticos Diagrama de blocos 23
PROBABILIDADE
Probabilidade Variável Aleatória: Parâmetro ou variável que se encontra num espaço de probabilidade mensurável Média ou Esperança: É o valor esperado de uma variável aleatória, dado matematicamente por: 1 n m X ( t) x E X ( t) n i 1 i 25
Probabilidade Variância: É uma medida de dispersão da variável aleatória em torno de sua média. Covariância: ² E x( t) m Medida que relaciona a dispersão de uma variável aleatória com a de outra. P( t) E X ( t) m X ( t) X ( t) m X ( t) T 26
Probabilidade Processo Estocástico: É um conjunto de variáveis aleatórias cuja probabilidade varia com o tempo e a realização. Um processo é dito Gaussiano quando sua densidade de probabilidade é dada por uma distribuição Normal. f x f 1 1 ( x ) exp ( ) 2 2 ² x m 2 27
Probabilidade Probabilidade Condicional: Probabilidade de um evento B ocorrer sabido da ocorrência de um A. Estimador: P A B Ferramenta usada para determinar os valores das variáveis aleatórias. Estimador Linear é um estimador cuja função de estimação é linear. g( Y) Y(1) Y(2)... Y( n) 1 2 P A P B B n 28
FILTRO DE KALMAN
Filtro de Kalman Desenvolvido por Rudolf Emil Kalman na década de 60. Aplicado em sistemas de controle sujeitos a ruídos ou cujos parâmetros não podem ser devidamente medidos. O filtro propõe a melhor solução possível para problemas de estimação linear. 30
Filtro de Kalman Para aplicar o filtro devem-se obter as equações do sistema da forma: x( k 1) Ax( k) Bu( k) Gw( k) ( Eq. Estado) y( k) Cx( k) Fv( k) ( Eq. Saída) Onde: x(k) é a variável de estado. u(k) é a entrada de controle. w(k) é o ruído de estado, cuja covariância é Pw. v(k) é o ruído de medição, cuja covariância é Pv. 31
Filtro de Kalman Sendo feitas as seguintes considerações: Relação Pwv entre os ruídos sendo nula. Matriz F = Matriz Identidade. Dim(F) = Dim(G). 32
Filtro de Kalman O ganho K é dado por: T T T T K( k) ( AP( k k 1) C GP F )( CP( k k 1) C FP F ) wv A matriz de covariância do erro de estimação é dada por: T T T P( k 1 k) A P( k K 1) A ( A P( k k 1) C G P F ) T T 1 ( C P( k k 1) C F Pv F ) ( A P( k k 1) C G P F ) G P G T T T T wv w wv v 1 33
Filtro de Kalman Resultando em: xˆ ( k 1 k) Axˆ ( k k 1) K( k)( y( k) Cxˆ ( k k 1)) Busca-se a melhor estimação para os estados x s. Deve-se dar ênfase à matriz de covariância, haja vista que esta é que indica a estabilidade do sistema. 34
Filtro de Kalman Agora que se tem todas as equações necessárias, basta implementar o algoritmo: Especificar as condições iniciais e xˆ(0 1) (0 1) P k ( ) yk Para um instante a saída é lida, e calcula-se: 35
Filtro de Kalman O ganho Kk ( ); A estimativa xˆ( k 1 k) ; P( k 1 k) A nova matriz de covariância. Para uma nova iteração, é incrementado e retorna-se para o segundo passo. k 36
Filtro de Kalman Entrar com as condições iniciais (x(0) e P(0)) Ler a saída y(k) k = k + 1 Calcular o ganho K(k) Atualizar a matriz de covariância (P) Calcular a estimativa de x 37
Filtro de Kalman Infere-se: Este algoritmo permite que a matriz de covariâncias seja calculada antes mesmo de calcularmos os estados estimados, assim, podemos saber se o sistema é estável antes de realizarmos os cálculos para as estimações. O filtro é um estimador. 38
APLICAÇÕES
APLICAÇÃO 1 MOTOR DC
Motor DC Amplamente usado na indústria. Possui relações de entrada e saída lineares. Fácil controle da posição e da velocidade. 41
Motor DC Modelagem Circuito equivalente: 42
Motor DC Parâmetros do motor: e a é a entrada de controle. i a é a corrente de armadura. m é a velocidade de rotação do motor. m é a posição do motor. K é uma constante que relaciona o torque com a corrente de armadura. R a L a J m B m é a resistência de armadura. é a indutância de armadura. é o momento de inércia do motor. é o coeficiente de atrito viscoso. 43
Motor DC Equações Diferenciais: di R K a a ia m Laea dt L a L a d d K B i dt dt J J d dt 2 m m m 2 a m m m m m 44
Motor DC Passando para a forma matricial: dia Ra K 0 dt La L a ia La dm K Bm 0 m 0 e dt Jm J m m 0 d m 0 1 0 dt a 45
Motor DC Valores usados na simulação: Numerodeamostra 100 Tempo de Amostragem :0.01 s 0 Condições iniciais :0 0 L a J m B m ea K 0,0052 R 1 a 10V 2,7510 7,210 7,210 6 4 4 46
Motor DC VRBuilder Diagramas de Blocos no Simulink 47
Scope 0 Constant 3 Band -Limited White Noise 0.05 Ruído de estado 1 Constant 4 Product *uvec Cd 3 u1 1 Cd 4 K*uvec -K- Bd1 0 Constant 5 Cd 2 K*uvec Eixo.rotation Motor 1 1 u -K- Bd X *uvec Cd Y *uvec K X estimado Integer Delay Ad K*uvec -1 Z Cd1 Ad1 K*uvec -1 Z Integer Delay 1 K*uvec Product 1 0 Constant 1 Constant 1 Ruído de Medida 0.05 Band -Limited White Noise 1 0 Eixo.rotation Constant 2 Motor 2 48
Motor DC Resultados das simulações Corrente de armadura Velocidade de rotação do eixo Posição angular do motor Norma da matriz de covariância 49
Motor DC Corrente de Armadura 1.4 1.2 Valor Medido Valor Estimado 1 Corrente de Armadura 0.8 0.6 0.4 0.2 0 0 10 20 30 40 50 60 70 80 90 100 Medições 50
Motor DC Velocidade de rotação do eixo 18 16 14 Velocidade do eixo 12 10 8 6 4 2 Valor Medido Valor Estimado 0 0 10 20 30 40 50 60 70 80 90 100 Medições 51
Motor DC Posição do eixo 14 12 10 8 Posição 6 4 2 Valor Medido Valor Estimado 0-2 0 10 20 30 40 50 60 70 80 90 100 Medições 52
Motor DC Matriz de covariância 1 0.95 0.9 Covariância do erro 0.85 0.8 0.75 0.7 0.65 0.6 0.55 0 10 20 30 40 50 60 70 80 90 100 Medição 53
APLICAÇÃO 2 Controle de Sistemas de Nível de Líquidos.
Sistemas de Nível de Líquidos. A área de Fluídos se apresenta em diversos campos da Engenharia. Sistemas de medição de nível estão sujeitos a dados imprecisos Processos Estocásticos. A analogia elétrica destes sistemas ampliam a aplicação do estudo. Exemplo: Caixas d água. 55
Sistemas de Nível de Líquidos. Seja o sistema abaixo: Em que: R (var iação da diferença de nível, m) 3 (var iação na vazão em volume, m / s) C 3 (var iação na quantidade de líquido armazenado, m ) ( variaçã o na altura, m) área da Secção 56
Sistemas de Nível de Líquidos. Procura-se descrever este sistema físico por um sistema elétrico equivalente: 57
Sistemas de Nível de Líquidos. Assim: Tanque 1: dh h h C q q q 1 1 2 1 1 1 dt R1 dh 1 h h q dt C1 R1 1 1 2 Tanque 2: dh C q q q 2 2 2 1 2 2 dt R2 dh 1 h h h dt C R R 2 1 2 2 2 1 2 h 58
Sistemas de Nível de Líquidos. Logo: Espaço de Estados: dh 1 1 1 1 dt R1C 1 R1C 1 h1 C 1 dh2 1 R1 R2 h 2 0 dt R1C 2 R1 R2C 1.. q E, tomando a altura no tanque 2 como saída: yt ( ) 0 h t 1. 1 h2 t 59
Sistemas de Nível de Líquidos. Considere: A perturbação de nível causada pela entrada de fluido pelo tanque 1, representada por w(t) ; Ruído de leitura, v(t), explicado pela imperfeição do transdutor empregado. Assim, discretizando o sistema e acrescentando os ruídos: x( k 1) Ax( k) Bu( k) Gw( k) ( Eq. Estado) y( k) Cx( k) Fv( k) ( Eq. Saída) 60
Sistemas de Nível de Líquidos. Simulação: R 1 R 10 T 0.1 s 1 2 C 0,5F C 0,1F n 200 1 2 3 u( t) 2 m / s 61
Sistemas de Nível de Líquidos. Resultados: 62
Sistemas de Nível de Líquidos. Resultados: 63
Sistemas de Nível de Líquidos. Resultados: 64
Sistemas de Nível de Líquidos. Resultados: Nota-se a boa aproximação obtida. Os estados reais dificilmente são conhecidos estudo da norma da matriz de covariância. Diferença entre os valores de componentes elétricos e os usados para fazer as simulações. 65
Tá acabando! Nosso último plano básico. =D CONCLUSÕES
Conclusão A modelagem estocástica é melhor para casos reais do que a modelagem determinística. O filtro de adequou bem aos modelos propostos. Motor DC. Sistema de Níveis de Líquidos. Continuidade deste estudo possibilitará aplicações mais complexas Tracking. Kalman foi muito perspicaz na implementação deste estimador. 67
Bibliografia 1. HEMERLY, Elder M.; Controle por Computador de Sistemas Dinâmicos, 2ª edição. Edgard Blücher, São Paulo, 2000. 2. OGATA, Katsuhiko; Engenharia de Controle Moderno, 4ª edição. Pearson Prentice Hall, São Paulo, 2005. 3. KUO, Benjamin C.; Automatic Control Systems, 7 th edition. Prentice Hall, Upper Saddle River, 1995. 4. TEIXEIRA, Bruno; Present and Future, IEEE Control Systems Magazine, April 2008, pp. 16-18. 5. WELCH, Greg; BISHOP, Gary; An Introduction to the Kalman Filter, ACM, 2001. 6. Control Tutorials for MATLAB and Simulink Example: A State-Space Controller for DC Motor Position Control. PDF encontrado em http://www.engin.umich.edu/class/ctms/examples/motor2/ss2.htm, acessado em 20/05/2010. 7. Control Tutorials for MATLAB and Simulink Example: PID Design Method for the DC Motor Position. PDF encontrado em http://www.engin.umich.edu/class/ctms/examples/motor2/pid2.htm, acessado em 20/05/2010. 8. KALMAN, R.E.; A new approach to linear filtering and prediction problems, Trans. ASME, J. Basic Eng., vol. 82, pp. 35 45, 1960. 68
DÚVIDAS?
Agradecimentos A Deus. Ao PET Elétrica. A Família. Em especial ao tutor José Carlos. A Rudolf E. Kalman. 70
OBRIGADO! Seja a mudança que você quer ver no mundo. (Gandhi)