Sistemas e Sinais (LEIC) – Maquinas de estados em Tempo Real Carlos Cardeira Máquinas de estados – Tempo Real Máquinas de estado em tempo real Sistemas Lineares e Invariantes no Tempo (LTI), representação [A,B,C,D] Equações Diferenciais e sua relação com LTI Máquinas de estados – Tempo Real Máquinas de estado em tempo real Similares às máquinas de estados mas agora os indices representam tempo real. Há uma actualização periódica do estado. Deixa de haver “absent”. O espaço de estados pode ser infinito A função update pode ser expressa algébricamente (de outra forma não podia ser uma vez que o espaço de estados pode ser infinito) Sistemas Lineares e Invariantes (LTI) Os sistemas Lineares e Invariantes no tempo são aqueles para os quais se conhecem mais resultados De uma forma geral, dentro de ums determinada gama de funcionamento, os sistemas podem ser aproximados a LTI. Equações Diferenciais Os sistemas que se conseguem descrever através de equações diferenciais podem ser definidos como sistemas LTI Circuitos electricos RLC ou sistemas mecânicos pertencem a esta categoria Máquinas de estados determinísticas Máquinas de estados tempo real N deixa de representar apenas um índice mas passa a representar tempo real (segundos, minutos, etc.). Absent deixa de ser necessário. Entradas, saídas, estados passam a assumir valores pertencentes a R. Recurso intensivo à Álgebra Linear para a manipulação dos vectores e matrizes. Delay3 Estados do Delay O exemplo pode corresponder à amostragem de um sinal de voz ao ritmo de 8192 amostras/s. O sistema delay guarda as últimas três amostras deste sinal. si(n) representa a iésima amostra anterior (s1 (n) = x(n), …, s3 (n) = x(n-3) = y(n) A saída é igual à entrada desfasada de três unidades Como se verá, este sistema pode ser representado por matrizes. O espaço de estados é R3. Se as entradas forem {0,1} o espaço de estados seria {0,1}3 Não se podem fazer diagramas de estado ou tabelas se o espaço de estados, entradas ou saídas pertencerem a R. Média Móvel Média Móvel Trata-se de uma média móvel das últimas 4 amostras. Os estados seguintes dependem dos estados actuais e das entradas, A saída depende do estado actual e das entradas. Estimação y(n) = ¼ x(n)+ ¼ x(n-1)+ ¼ x(n-2) + ¼ x(n-3) Em estimação é frequente ter valores onde se pensa poder extrair uma função que os identifique. Em vez de ¼ poderíamos tentar calcular os valores que melhor satisfizessem a equação de y(n). Média móvel das saídas (autoregressão) e da entrada actual y(n) = ¼ y(n-1)+ ¼ y(n-2)+ ¼ y(n-3) + ¼ x(n) Neste caso, a saída depende dos seus próprios valores anteriores e da entrada nesse instante. Parece óbvio que os estados correspondam a s1(n)=y(n-1), s2(n)=y(n-2) e s3(n)=y(n-3). A função update seria: Começar por s1 não dá s2(n+1)=y(n-1)= s1(n) s3(n+1)=y(n-2)=s2(n) y(n)= ¼ s1(n)+ ¼ s2(n)+ ¼ s3(n) + ¼ x(n) (agora já se tem o s1(n) porque é igual ao y(n)) Usando Delays: y(n-1) y(n) D D ¼ x(n) + y(n-2) y(n-3) D ¼ ¼ Autoregressão e Média Móvel (ARMA) y(n) = ¼ y(n-1)+ ¼ y(n-2)+ ½ y(n-3) + 1/4 x(n) + 2x(n-1) + ½ x(n-2) Necessitaria de 5 delays (adiante veremos que seria possível fazê-lo com 3) Auto-regressão s1(n+1) = ¼ x(n)+ ¼ x(n-1)+ ¼ x(n2) + ¼ x(n-3) s2(n+1)= s1(n) s3(n+1)=s2(n) y(n)= ¼ s1(n)+ ¼ s2(n)+ ¼ s3(n) + ¼ x(n) s1(n+1) ¼ s2(n+1) = 1 s3(n+1) 0 ¼ 0 1 ¼ 0 0 s1(n) 1 s2(n) + 0 x(n) s1(n) 0 Média Móvel y(n) = [¼ ¼ ¼] s1(n) + [¼] x(n) s2(n) s3(n) Representação [A,B,C,D] S(n+1) = A s(n) + B x(n) y(n) = CT s(n) + D x(n) Notas: Por omissão, todos os vectores são colunas. Um vector linha obtem-se transpondo um vector coluna Todos os LTI podem ser colocados neste formato Sistema LTI Genérico MIMO: Multiple Input, Multiple Output SISO: Single Input, Single Output Espaço de estados infinito com funções de update lineares Exemplo: Circuito R/C Resposta de um sistema SISO Resposta de um sistema SISO Resposta de um sistema SISO Resposta de um sistema SISO A resposta pode ser decomposta em duas partes: Uma que só depende do estado inicial Outra que só depende das entradas Se a entrada for zero, a resposta só depende do estado inicial. Trata-se da resposta “zero-input” Se o estado inicial for zero, a resposta só depende da entrada. Trata-se da resposta “zero-state” A resposta total é a soma das duas. O facto de se poder separar a resposta nestas duas componentes, é uma característica importante dos sistemas LTI. Resposta de um sistema SISO Suponhamos que o estado inicial do sistema é igual a 0. x1 y1 x2 y 2 então: ax1 bx2 ay1 by2 O sistema é linear ! Resposta de um sistema SISO Suponhamos que o estado inicial do sistema é igual a 0. x1 y1 x2 y 2 então: ax1 bx2 ay1 by2 O sistema é linear ! Resposta Impulsiva Resposta Impulsiva Resposta Impulsiva Suponhamos a entrada impulso (função Delta de Kronecker) x(0)=d(0): x(0) = 1, x(n) = 0 n>0 Se assim for, a resposta do sistema dá exactamente h(n) É por isso que a h(n) se chama “resposta impulsiva” Exemplos SISO – circuito RC Exemplos SISO – circuito RC Exemplo : circuito RC Exemplos SISO – circuito RC Circuito RC : exemplo numérico R=1M C=1µF d=0.1s Exemplos SISO – circuito RC Exemplos SISO – circuito RC – resposta impulsiva Exemplos SISO – circuito RC – resposta a uma entrada contínua Exemplos SISO – circuito RC – resposta a uma entrada contínua Exemplos SISO – conta bancária – resposta impulsiva Exemplos SISO – conta bancária – cálculo de um empréstimo Exemplos SISO – conta bancária – cálculo de um empréstimo Exemplos SISO – FIR Exemplos SISO – FIR Exemplos SISO – FIR Sistemas MIMO A matriz A é quadradra (NxN) A matriz B tem dimensões (NxM) A matriz C tem dimensões (KxN) A matriz D tem dimensões (KxM) Sistemas MIMO •A matriz h tem dimensões (KxM) •h(i,j) é a resposta impulsiva da saída yi à entrada xj, considerando as restantes entradas nulas MIMO e SISO B = coluna( B, j ) j C = linha(C i) T i T A, B, C, D A, B j , Ci , Di , j Sistemas Lineares Contínuos SISO z: ReaisPositivos → ReaisN estado do sistema . z (t) é a derivada de z avaliada em t v: ReaisPositivos → Reais é a entrada do sistema w: ReaisPositivos → Reais é a saída do sistema Sistemas Contínuos Em vez do estado seguinte, da-se a têndencia do estado (a sua derivada). O estado seguinte não teria sentido uma vez que o sistema deixa de ser uma máquina de estados cujos estados mudam a intervalos regulares. A resolução de um sistema contínuo, implica a resolução de equações diferenciais (e transformadas de Laplace). É no entanto possível aproximar um sistema contínuo por um sistema discreto. Este é o processo usado em simulações. Aproximação de Sistemas Contínuos – Circuito RC Conforme vimos no circuito R/C, o sistema contínuo é aproximado por um sistema discreto. Aprox. de Sistemas Contínuos RC : exemplo numérico (revisão) R=1M C=1µF d=0.1s Aprox. de Sistemas Contínuos RC (revisão) Aprox. de Sistemas Contínuos RC – resposta impulsiva (revisão) Aprox. de Sistemas Contínuos RC – resposta a uma entrada contínua (revisão) Aprox. de Sistemas Contínuos RC – resposta a uma entrada contínua (revisão) Simulink Declarativo e não imperativo Apenas de declaram blocos corrrespondentes a sistemas e as ligações entre eles Simulink faz a simulação do sistema contínuo, aproximando-o a um discreto. Existem várias formas de fazer a aproximação e podem ser configuradas no solver do simulink. Algumas formas são mais exactas que outras para certos sistemas. Nos exemplos do lab, o solver existente por omissão é suficiente. Simulink também pode simular sistemas discretos. Simulink O bloco integrador é o bloco 1/s (tem a ver com transformadas de Laplace) Simulink Se a = 0.9 Simulink Se a = -0.9 Aproximação por equações às diferenças z = az(t ) z (t dt ) z (t ) = az(t ) dt s (n 1) s (n) = dtas(n) s (n 1) = (1 ad ) s(n) y (n) = CA s (0) = (1 ad ) n n Aproximação por equações às diferenças y(n) = CA s(0) = (1 ad ) n n Independentemente de delta, se a>0 o sistema diverge (é instável), se a<0 o sistema converge (é estável)