78
Sinais e Sistemas
PUC
3
Sinais e Sistemas
PUC
1
Sinais e Sistemas
PUC
85
Sinais e Sistemas
PUC
75
Sinais e Sistemas
PUC
15
Sinais e Sistemas
PUC
1
Sinais e Sistemas
PUC
1
Sinais e Sistemas
PUC
9
Sinais e Sistemas
PUC
1
Sinais e Sistemas
PUC
Texto de pré-visualização
Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt SINAIS PARES SINAIS ÍMPARES 1 INTRODUÇÃO Um sinal real é par se xt xt ou xn xn Um sinal real é ímpar se xt xt ou xn xn Sinais pares ou ímpares são casos especiais em que o sinal possui simetria Todo sinal par é simétrico em relação ao eixo vertical e todo sinal ímpar é ante simétrico em relação ao eixo vertical Também todo sinal ímpar é nulo em t ou n 0 porque Como x0 x0 isto obriga x0 0 Em geral um sinal real não é par nem ímpar mas qualquer sinal real pode ser escrito como a soma de uma parte par com uma parte ímpar Prova Seja xt um sinal real qualquer Sempre podemos escrever xt 05xt xt 05xt xt xt Trocando t por t no primeiro termo da equação acima verificamos que xtxt xtxt Logo este termo é par xtxt xpart Similarmente trocando no segundo termo t por t e multiplicando por 1 xt xt xt xt Logo o segundo termo é ímpar xt xt ximpart 2 EXEMPLOS A seguir um código no Matlab para separar as partes par e ímpar de um sinal contínuo Exemplo1 e em seguida outro código para um sinal discreto Exemplo2 Empregando a estrutura destes códigos você poderá empregalos para separar outros sinais Exemplo 1 Exemplo1 Decomposição de sinais em parte par e parte ímpar Considere um sinal xt descrito por xt t2 para 2t5 xt 12t para 5t12 e xt 0 para t2 e t12 Considere fa 100Hz a Plote xt xt b Numa mesma figure plote xpt e xit c Confirme seu resultado plotando noutra figura plote xt junto com xptxit na cor verde clearclcclose Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt fa 100 Ta 1fa t1 12Ta2Ta N1 lengtht1 t2 2Ta5Ta N2 lengtht2 t3 5Ta12 N3 lengtht3 t t1 t2 t3 N lengtht Observe que o tempo deve sempre ser simétrico com a maior dimensão do sinal 12 a 12 neste caso x zeros1N1 t22 12t3 loop para espelhar o sinal for i 1N xespi xNi1 end xp 05xxesp xi 05xxesp figure1plottxtxespgrid figure2subplot121plottxpgrid subplot122plottxigrid figure3plottxtxpxiggrid Exemplo 2 EXEMPLO 2 Decomposição de sinais em parte par e parte ímpar Considere um sinal xn descrito por xn un3un2 nun2un5 10nun5un11 a Plote xn xn b Numa mesma figura plote xpn e xin c Confirme seu resultado plotando noutra figura plote xn junto com xpnxin clearclcclose n1 104 N1 lengthn1 n2 31 N2 lengthn2 n3 24 N3 lengthn3 n4 510 N4 lengthn4 n n1 n2 n3 n4 N lengthn x zeros1N1 ones1N2 n3 10n4 for i 1N xespi xNi1 end xp 05xxesp xi 05xxesp figure4subplot121stemnxgrid subplot122stemnxespgrid figure5subplot121stemnxpgrid subplot122stemnxigrid figure6stemnx xpxigrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt DETERMINAÇÃO DO PERÍODO FUNDAMENTAL DE SINAIS CONTÍNUOS E DISCRETOS 1 INTRODUÇÃO 11 Sinais Contínuos A soma de dois sinais periódicos contínuos pode ser periódica ou não Sejam x1t e x2t dois sinais periódicos com períodos T1 e T2 Neste caso x1t x1tT1 x1tm1T1 x2t x2tT2 x2t m2T2 onde m1 e m2 são números inteiros positivos Assim se xt é a soma de x1t e x2t xt x1t m1T1 x2t m2T2 Para que xt seja periódico com período T0 é necessário que xtT0 x1tT0 x2tT0 x1t m1T1 x2t m2T2 De onde se obtém que m1T1 m2T2 T0 ou 1 2 2 1 m m T T número racional Portanto a soma de dois sinais periódicos contínuos será periódica somente se a razão entre seus períodos for um número racional Se esta condição existir então o período fundamental da soma será o mmc mínimo múltiplo comum dos períodos de cada um 2 1 0 T mmc T T Generalizando a soma de um conjunto de n sinais periódicos contínuos será periódica somente se todas as possíveis combinações da razão de dois períodos do conjunto resultarem em números racionais Existindo a condição então o período fundamental da soma será o mmc mínimo múltiplo comum dos períodos de cada um Tn mmc T T T T 3 2 1 0 12 Sinais Discretos Sejam x1n e x2n dois sinais periódicos com períodos N1 e N2 Neste caso x1n x1nN1 x1nm1N1 x2n x2nN2 x2nm2N2 onde m1 e m2 são números inteiros positivos Assim se xn é a soma de x1n e x2n xn x1n m1N1 x2n m2N2 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Para que xn seja periódico com período N0 é necessário que xnN0 x1n N0 x2n N0 x1n m1N1 x2n m2N2 Então deveremos ter m1N1 m2N2 N0 Como m1 m2 N1 N2 e N0 são todos inteiros sempre podemos encontrar m1 e m2 satisfazendo a equação acima Portanto a soma de dois sinais discretos periódicos será sempre um sinal periódico e o período fundamental da soma será o mmc mínimo múltiplo comum dos períodos de cada um 2 1 0 N mmc N N Generalizando a soma de n sinais discretos periódicos é um sinal periódico e o seu período é o mmc mínimo múltiplo comum dos períodos de cada um Nn N N mmc N N 3 2 1 0 13 SINAIS SENOIDAIS CONTÍNUOS Todo sinal senoidal contínuo da forma xt A0senω0tϕ onde ω0 e ϕ são reais é periódico com período 0 0 2 T Considerando a soma de n sinais senoidais contínuos satisfazendo a condição de periodicidade do ítem 11 é um sinal periódico n i i i i t A sen t x 1 O período de xt é o mmc dos períodos de cada componente Tn mmc T T T 2 1 0 14 SINAIS SENOIDAIS DISCRETOS Nem todo sinal senoidal discreto é periódico A condição de periodicidade para um sinal senoidal discreto é N m 2 Onde m e N são inteiros positivos O menor N que satisfaz a condição acima é o período fundamental N0 Considere um sinal senoidal discreto obtido através da amostragem de um contínuo Se m 1 isto indica que é necessário amostrar mais de um período do contínuo para obter um período do discreto Neste caso o valor de m informa quantos períodos serão necessários m 2 indica dois períodos devem ser amostrados m 5 cinco períodos etc Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Quando o sinal senoidal discreto é uma combinação linear de senóides com períodos N1N2Nn n i i i i n A sen n x 1 então o período fundamental é Nn N mmc N N 2 1 0 15 CONVERSÃO DE FREQUÊNCIAS CONTÍNUAS PARA DISCRETAS Quando um sinal senoidal contínuo da forma n i i i i t A sen t x 1 é amostrado corretamente com uma frequência de amostragem fa suas frequências contínuas são convertidas em correspondentes discretas calculadas por a a a f f fT T 2 2 Onde ω é a frequência contínua em rads f é a frequência contínua em Hz e Ta e fa são respectivamente o período de amostragem e a frequência de amostragem Exemplo 0 23 100 23 500 115 5 15 1 5 15 1 fa 16 MATLAB função lcm A função lcm Least Common Multiple calcula o mmc de dois números Observe que os argumentos do operador matemático mmc devem ser números inteiros Exemplos mmc de 3 7 8 x lcm3lcm78 mmc dos períodos de f1 15 f2 42 e f3 63 Primeiro as frequências devem ser convertidas em frações racionais Para converter em períodos basta inverter T11f1 T21f2 e T3 1f3 Em seguida calculase o mmc dos denominadores Na sequência cada período é multiplicado por este mmc tornandose um número inteiro Finalmente o mmc deste números inteiros é calculado e o final deve ser dividido pelo mmc dos denominadores 630 4263 15 63 10 42 10 15 10 10 63 10 42 10 15 3 2 1 3 2 1 lcm lcm T T T f f f Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 3 10 150100 420 630 1 63 42 63010 630 10 15 63010 630 1 0 0 0 T lcm lcm T lcm lcm T 2 EXERCÍCIOS NO MATALB Exercício 1 Considere o sinal xn sen03n A Plote xn para 50n50 B Este sinal é periódico Se for determine o período fundamental C Repita B para xn sen03pin clearclcclose w 03 n 5050 A x sinwn figure1stemnxgrid B x sinwpin figure2stemnxgrid Cálculo do período w03pi 2pimN N203m Logo N 20 com m 3 Letra B Cálculo do período 3 20 3 20 2 30 m com N Logo m N N m Exercício 2 Considere o sinal xt cos2pi15tsen2pi24t cos2pi6t amostrado com fa 100Hz A Calcule o período fundamental de xt e do sinal amostrado xdn BConfirme seu resultado Plotando 2 períodos de xt e dois períodos de xdn Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt clearclcclose fa 100 Ta 1fa f1 15 f2 24 f3 6 w1 2pif1fa w2 2pif2fa w3 2pif3fa f1 32 f2125 f3 6 T1 23 T2 512 T3 16 T0 112mmc852 T0 4012 103 T0T1 5 T0T2 8 T0T3 20 T0 103 logo f0 03 Convertendo esta frequência para discreta resulta w0 2pif0fa 2pi03100 w0 2pim0N0 logo N0 10003m0 N0 10003m0 Então N0 1000 com m0 3 Multiplicidade 3 T0 103 N0 1000 t 0Ta2T0Ta n 02N01 x cos2pi15t sin2pi24t cos2pi6t xd cosw1n sinw2n cosw3n figure1subplot211plottxgrid subplot212stemnxdgrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt CONVOLUÇÃO CONVOLUÇÃO DISCRETA APROXIMANDO A CONTÍNUA 1 INTRODUÇÃO A convolução decorre diretamente de duas propriedades dos sistemas linearidade e invariância no tempo Todo sistema que satisfaz estas duas propriedades é identificado como LIT Linear Invariante no Tempo Rigorosamente nenhum sistema físico real satisfaz completamente às duas propriedades mas em geral a convolução pode ser empregada para obter aproximações da resposta dinâmica de sistemas físicos submetidos a uma dada excitação Através da equação de convolução conhecida a resposta ao impulso de um sistema podese determinar qual será a saída para qualquer outra entrada arbitrária aplicada no sistema Assim a convolução expressa o resultado da interação dinâmica entre um sinal e um sistema ou entre sistemas 2 CONVOLUÇÃO DISCRETA A convolução entre duas sequências discretas é matematicamente descrita por k k k x k h n k h k x n y n A função conv do Matlab retorna o resultado da convolução discreta de duas sequências finitas h 1 0 5 2 3 x 1 2 3 4 5 4 3 2 1 y convhx y 1 2 2 4 3 4 5 4 9 8 8 8 3 3 CONVOLUÇÃO CONTÍNUA A convolução entre dois sinaissistemas é matematicamente descrita por d h t x d x t h y t 4 CONVOLUÇÃO DISCRETA APROXIMANDO A CONTÍNUA A discretização da equação da convolução contínua resulta em k k T h kT x n T y nT ou k k k x k h n T k h k x n T y n Este é simplesmente o resultado da aproximação da integração contínua por uma somatória de retângulos de base T e altura ynT Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Primeira convolução Convolução discreta aproximando a contínua Considere fazer a convolução contínua de dois sinais e conforme figura O resultado está na figura a seguir Considere em seguida que ht e xt foram amostrados com fa 5Hz Ta 02s O resultado da amostragem está na figura a seguir O sinal hn tem P 6 valores 1 e xn Q 6 valores 05 A convolução resultante tem sempre N PQ1 pontos Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt A equação para a convolução discreta que aproxima a contínua é k k k x k h n T k h k x n T y n Quando as duas funções convoluidas são finitas podemos empregar o método da tabela Este método é fácil de fazer e fornece muita informação insigth sobre a equação acima Método da tabela O resultado da convolução discreta de duas sequências finitas tem sempre N PQ1 pontos sendo P os pontos da 1ª e Q o número de pontos da 2ª Então fazemos uma tabela conforme figura a seguir Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 1 Uma das sequências é escrita na 1ª linha da tabela neste caso escolhemos a sequência hn poderia ter sido xn tanto faz 2 A outra sequência deve ser espelhada veja a equação por isto leia a sequência da esquerda para a direita e escreva na 2ª linha da tabela da direita para a esquerda colocando o 1º ponto de xn sob o 1º ponto da sequência hn 3 A cada nova linha desloque a sequência xn um intervalo para a direita Faça o produto ponto a ponto e escreva o acumulado dos produtos na coluna do yn 4 O resultado da convolução contínua é ynTa é escrito na última coluna 5 Observe que esta sequência reproduz o que a equação faz as somas dos produtos em cada linha correspondem ao incremento da variável A troca de linha corresponde ao incremento da variável Aplicação prática da Convolução interação dinâmica entre um sinal e um sistema Considere o circuito RC da figura a seguir onde Em um degrau é aplicado a entrada Desejase fazer um código Matlab que simule o comportamento dinâmico deste sistema para uma entrada senoidal empregando uma convolução discreta aproximando a contínua A resposta ao impulso deste sistema e respectiva Transformada de Laplace será E a resposta em frequência Para Considere o circuito RC da figura a seguir onde R10K0hm e C100microF Desejase fazer um código Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Matlab que simule o comportamento dinâmico deste sistema para uma entrada senoidal empregando uma convolução discreta aproximando a contínua empregue fa 1000Hz clearclc fa 1000 Ta 1fa RC 1 tau 1RC w0 1RC th 0Ta6 P lengthth tx 0Ta100 Q lengthtx N PQ1 t 0TaN1Ta h 1RCexpthRC x sinw0tx y convhxTa figure1subplot121plotthhgrid subplot122plottxxgrid figure2plottygrid omega logspace221000 H tf1RC1 1RC figure3bodeHomega IDENTIFICAÇÃO DE SINAIS CONTÍNUOS E PERIÓDICOS 1 Resumo Nesta aula um sinal periódico é gerado a partir do acendimentoapagamento controlado de um led branco Os tempos aceso apagado do led podem ser variados A luz do led sensibiliza um sensor de luminosidade gerando um sinal periódico com ruído sobreposto O sinal gerado é filtrado e analisado em frequência A partir da fft de um período do sinal escreve se uma expressão matemática aproximada par ele A qualidade da equação obtida é avaliada plotandose numa mesma figura o sinal original e o sinal identificado 2 Material empregado Um led branco um sensor de luminosidade um resistor 104Ω um resistor 350 Ω uma placa arduino uno um computador uma protoboard um cabo USB e uma caixa de papelão pequena 20X30cm Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 3 Layout do Arduino uno 4 Diagrama de interligação Pino 5V Arduino na entrada do sensor de luz Saída do sensor de luz no resistor de 10K marronpretolaranja Saída do sensor de luz no pino A0 do Arduino Resistor 10K no pino GND do Arduino Positivo do led no pino 10 do Arduino Negativo do led no resistor 350Ω Resistor 300 Ω no pino GND do Arduino A0 0 5V GND 10 Arduino uno LED 300 Ω US B Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 5 Procedimento Primeiro no ambiente Arduino carregase o programa C Deve ser feito primeiro porque o código Matlab leitor vai se apossar da porta COM escolhida e neste caso não se consegue mais transferir o código para o Arduino Antes de ativar o código Matlab leitor obscurecese a montagem empregando a caixa de papelão para obter nível zero de luz no sensor com o led apagado Após a coleta de dados ativase o programa Matlab para filtragem e identificação 6 Códigos São empregados um código em C para o Arduino e dois códigos Matlab 61 Código Arduino O código a seguir acende e apaga o led lê o sinal do sensor de luz e envia para a porta COMX do computador Filtragem e identificacao de sinais periodicos const int ledPin 10 LED connected to digital pin 10 const int Sensor 0 int value LOW previous value of the LED int Valor 0 long previousMillis 0 will store last time LED was updated long intervalo 3000 interval at which to blink milliseconds void setup Serialbegin9600 pinModeSensor INPUT pinModeledPinOUTPUT void loop Valor analogReadSensor SerialprintlnValor delay30 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt check to see if its time to blink the LED that is is the difference between the current time and last time we blinked the LED bigger than the interval at which we want to blink the LED if millis previousMillis intervalo previousMillis millis remember the last time we blinked the LED if the LED is off turn it on and viceversa if value LOW value HIGH else value LOW digitalWriteledPin value 62 Códigos Matlab O primeiro código código leitor abre uma porta COM lê a informação enviada pelo Arduino e salva num arquivo de dados Codigo leitor clear all clc arduinoserialCOM2BaudRate9600InputBufferSize1024 OutputBufferSize1024 fopenarduino Ta 301000 N 5000 t 0TaN1Ta for i1lengtht yifscanfarduinod end fclosearduino figure1plottygrid fa 1Ta f fa2faNfa2faN y ymeany Y fftyN figure2plotffftshiftabsYgrid save sensordeluzmat y fa N O segundo código código identificador abre o arquivo de dados filtra o ruído em frequência separa um período do sinal plota a fft do período A partir da fft escrevese o sinal considerando cinco ou seis harmônicos O sinal é escrito como uma soma de senos e cossenos As frequências e amplitudes dos cossenos são obtidas a partir da parte real da fft e da mesma forma os senos a partir da parte Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt imaginária Finalmente o sinal original e a aproximação identificada são plotados numa mesma figura Codigo identificador clearclc load sensordeluzmat y fa N Ta 301000 fa 1Ta t 0TaN1Ta tt t figure1plotttygrid f fa2faNfa2faN ymean meany y yymean Y fftyN figure2stemffftshiftabsYgrid for i 1N Filtragem em frequencia filtro passa a regua if absYi 1 Limiar para filtragem Yi 0 end end figure3stemffftshiftabsYgrid yy realifftYN n 1lengtht figure4stemnrealyygrid x yy20022201 Um periodo obtido com o icone data cursor N lengthx t 0TaN1Ta f fa2faNfa2faN X fftxN figure5subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid ypar 220394cos2pi1667t 216517cos2pi33333t29453cos2pi5t 29631cos2pi6667t24996cos2pi8333t 2658cos2pi1t yimpar 218902sin2pi1667t 211734sin2pi33333t254689sin2pi5t 210525sin2pi6667t229967sin2pi8333t 28835sin2pi1t yid ypar yimpar figure6plottxtyidgrid N 6Nt 0TaN1Ta ypar 220394cos2pi1667t 216517cos2pi33333t29453cos2pi5t Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 2 4 6 8 10 12 14 16 18 20 10 0 10 20 30 40 50 60 0 002 004 006 008 01 012 014 016 018 02 10 5 0 5 Sinal original Amplitude Tempo em segundos 0 002 004 006 008 01 012 014 016 018 02 10 5 0 5 Sinal filtrado Amplitude Tempo em segundos 29631cos2pi6667t24996cos2pi8333t 2658cos2pi1t yimpar 218902sin2pi1667t 211734sin2pi33333t254689sin2pi5t 210525sin2pi6667t229967sin2pi8333t 28835sin2pi1t yid ypar yimpar figure7plottyidymeantt1lengthty1lengthty meangrid 7 Resultado final A figura a seguir figura 7 do código mostra o sinal amostrado e o sinal identificado empregandose a frequência fundamental e cinco harmônicos O eixo horizontal é o tempo em segundos FILTROS COMB DIGITAIS NÃO RECURSIVOS 1Introdução Considere o problema de retirar de um sinal uma frequência e todos os harmônicos desta frequência Para tal os filtros clássicos passa baixaalta corta faixa ou passa faixa não são eficazes Um filtro capaz de resolver este problema é o filtro comb tipo notch Observe a figura a seguir Acima temos uma informação periódica com frequência 40Hz afetada pela frequência 60Hz e harmônicos nas frequências 120 180 240 e 300Hz Empregando um filtro notch podemos obter o resultado mostrado na parte inferior da figura Observase que somente a frequência 40 Hz restou no sinal Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 0 5 10 15 20 25 30 35 40 1 08 06 04 02 0 02 04 06 08 1 2 Filtros Comb Atuam sobre uma frequência e harmônicos dela Podem ser de dois tipos Notch Filtra uma frequência e todos os harmônicos desta frequência presentes no sinal Peak Amplifica uma frequência e todos os harmônicos desta frequência presentes no sinal A resposta ao impulso de um filtro notch não recursivo é L n n K h n Onde L é um inteiro maior que zero Veja a figura para L 40 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 21 Expressão para a resposta em frequência de filtros notch não recursivos Pela equação da definição n j n j h n e H e Então com L n n K h n 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 L j j j j L j j L j j j L j L L j j j L j L e Ksen e H e e L Ksen e H L sen j Ke e H e e Ke e H e K e H Observe que o módulo de HejΩ 0 para 2 0 2 0 2 L ou L sen Logo 3 2 1 0 2 k k L Então o módulo é zero para L 2k A figura a seguir mostra o módulo e a fase de um filtro notch Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 0 50 100 150 200 250 0 05 1 15 2 Módulo Amplitude Frequência em Hz 0 50 100 150 200 250 100 50 0 50 100 Fase Graus Frequência em Hz 22 Exemplo Projete um filtro notch para cortar a frequência 60Hz e suas harmônicas O sinal será amostrado com fa 1200Hz 20 10 2 2 10 10 1200 2 60 2 L L f f a C C Logo a equação que implementa o filtro é 20 x n K x n y n O código Matlab a seguir considera que o sinal xt cos2π50t 2sin2π60t 14cos2π120t π5 sin2π240t é amostrado com fa 2400Hz Em seguida calculase os coeficientes de um filtro notch para remoção dos componente 60Hz e múltiplos A figura 1 do código produz a resposta em frequência do filtro e a figura 4 o resultado da filtragem FILTROS COMB clear clc K 1 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt fa 2400 Ta 1fa fc 60 f1 50 f2 60 f3 120 f4 240 T0 1 L fafc tetac 2pifcfa h K1 zeros1L1 1 N lengthh n 0N1 m 6001 f 0fa2mfa2fa2m HWfreqzh1m modulo absH fase angleH180pi figure1stemnhgrid figure2subplot211plotfmodulokgrid titleMóduloylabelAmplitudexlabelFrequência em Hz subplot212plotffasekgrid titleFaseylabelGrausxlabelFrequência em Hz teste t 0TaT0Ta N lengtht x cos2pif1t 2sin2pif2t 14cos2pif3tpi5 sin2pif4t x1 zeros1L x1NL y x x1 figure3plottxtygrid figure4plottygrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 31 Representação no tempo e na frequência para sinais periódicos de tempo discreto A Série de Fourier de tempo discreto DTFS Discrete Time Fourier Series Muitos aspectos e características dos sinais não são perceptíveis observando sua evolução ao longo do tempo Considere o exemplo de um baralho de cartas observando a pilha de cartas não é possível saber qual é a sua composição No entanto se o baralho for virado e estendido sobre uma mesa podemos observar de quais cartas ele é composto Observando um sinal no tempo contendo diversas frequências não conseguimos identificar quais frequências o compõe e nem avaliar qual é a importância de cada frequência contida nele A transformação de Fourier abre o sinal permitindo conhecer sua composição detalhada Além disto a transformação de Fourier possui propriedades que facilitam não só a análise mas a própria resolução matemática de muitos problemas A DTFS é aplicável a sinais que no tempo são discretos e periódicos e a representação em frequência é também uma função discreta e periódica A transposição da representação do tempo para a frequência ou da frequência para o tempo é feita por um par de equações As duas representações formam um par único dada uma função no tempo discreta e periódica existe apenas uma função da frequência discreta e periódica correspondente O par de equações Em que xn e Xk tem período fundamental de N pontos e por tanto frequência fundamental A partir destas equações conhecendo um período de xn podemos determinar um período de Xk e reciprocamente conhecendo N pontos de xk podemos determinar todos os pontos de xn ao longo de seu período C comparando com a equação da definição Logo Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Resolução do mesmo problema no Matlab O Matlab tem um par de funções que faz o cálculo do tempo para a frequência e que faz o cálculo da frequência para o tempo Os nomes das funções fft e ifft são abreviações respectivamente de Fast Fourier Transform e Inverse Fast Fourier Transform Tais nomes são devidos ao algoritmo desenvolvido por dois pesquisadores Cooley e Tukey que em 1965 publicaram um artigo propondo um algoritmo para cálculo da fft e ifft que reduzia o número de operações necessárias de para Este foi um artigo muito importante porque naquela época um grande número de desenvolvimentos e especialmente aplicações em tempo real associados as transformadas era inviável para os computadores então utilizados As funções Matlab fft e ifft empregam uma versão do algoritmo de Cooley e Tukey Estas duas funções calculam os pontos usando uma equação um pouco diferente daquelas do Simon Hayken O par mostrado abaixo corresponde a DFT Discrete Fourier Transform que é calculado pelas funções Diferenças 1ª DIFERENÇA A função fft calcula Xk considerando que a sequência xn vai sempre de 0 a N1 A sequência Xk resultante é calculada para para Então se queremos um resultado simétrico em relação a zero é necessário aplicar ao resultado uma outra função denominada Esta função pega a segunda metade do vetor Xk calculado e transporta para antes da 1ª metade Assim podemos fazer uma escala simétrica e plotar o resultado com os pulsos simétricos em relação à origem 2ª DIFERENÇA Na DTFS os valores no tempo xn são divididos por N Na DFT os valores Xk é que são divididos por N Como o resultado que queremos é a DTFS sempre iremos dividir os pontos xn por N ao usar a função fft e iremos inversamente multiplicar os pontos Xk por N ao usar a função ifft O código a seguir resolve o exemplo1 no Matlab e plota o resultado Considere o sinal xn cospi8npi4Calcule o período fundamental do sinal e plote um período do sinal no tempo e na frequência clearclc N 16 w 2piN n 0N1 if fixN2 N2 k N2N21 N par Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt else k N12N12 N ímpar end x coswnpi4 X fftxN figure1stemnxgrid figure2subplot211stemkfftshiftrealXg rid subplot212stemkfftshiftimagXgrid REPRESENTAÇÃO DA TRANSFORMADA DE FOURIER NO COMPUTADOR Num programa de computador as sequências que representam sinais no tempo ou na frequência são sempre discretas Por isto a única representação de Fourier que pode ser calculada no computador é a DTFS Série de Fourier de Tempo Discreto uma vez que somente nesta representação o sinal é discreto no tempo e na frequência Para todas as outras três representações o sinal é contínuo no tempo ou na frequência ou no tempo e na frequência A DTFS é aplicável a sinais discretos e periódicos no tempo e a representação em frequência é também discreta e periódica Veja as equações para o par e x n N X k X k e x n on jk N n DTFS on jk N k 1 Já o par de equações para a TF abaixo é aplicável a sinais contínuos e não periódicos dt x t e X j d e X j x t j t FT j t 2 1 Onde xt e Xjω são contínuas e não periódicas Ou ainda na variável f dt x t e X f df X f e x t ft j FT ft j 2 2 No entanto utilizandose as equações para a DTFS podese obter resultados exatos para a Transformada de Fourier desde que quatro condições sejam satisfeitas 1ª O sinal no tempo deve ser periódico Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 2ª Deve ser limitado em frequência max 0 f f para X f 3ª A frequência de amostragem deve ser maior que o dobro da maior frequência contida no sinal fa 2 fmax 4ª Deve se amostrar um número inteiro de períodos do sinal ToTs número inteiro 1 Se as quatro condições não forem satisfeitas obtém se uma aproximação para a TF Mas além disto as quatro condições são necessárias mas não suficientes Suponha que se deseja amostrar um sinal contínuo periódico com frequência de amostragem fa O período de amostragem será então Ta 1fa As três primeiras condições são fáceis de atender Para atender a quarta condição o tempo em que o sinal será amostrado aqui identificado por To têm de ser múltiplo inteiro do período do sinal amostrado aqui identificado por Ts Logo To MTs onde M é um inteiro positivo 1 O número de pontos amostrados N é obviamente sempre um inteiro e o tempo da amostragem é igual ao número de pontos amostrados vezes a distância entre eles To NTa Portanto ToTa é sempre o número inteiro N 0 0 0 inteiro f f N T T N T N T a a a Por outro lado para amostrar um número inteiro de períodos s a a s M f N f Logo T N T T M T é um inteiro M 0 0 Então para obter resultado correto é necessário que a frequência de amostragem se relacione com a frequência do sinal na proporção de dois números inteiros Observe também que para satisfazer a regra de Nyquist M 2 N E ainda se for amostrado um período do sinal a frequência de amostragem tem de ser múltipla inteira da frequência do sinal Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt ESCALAS Considere traçar a DTFS de um sinal discreto e periódico com período de N pontos onde a frequência fundamental do sinal é Ωo 2πN O sinal Xk em frequência é também periódico com N pontos Considerando uma escala simétrica de π a π vemos que o incremento em radianos de um ponto para o seguinte é 2πN Ωo Mas a escala pode ser simétrica em relação a zero quando N é ímpar ou assimétrica quando N for par Então para fazer uma escala em frequência para qualquer N fazemos no Matlab if fixN2 N2 k N21N21 N par else k N121N12 N impar end Se desejamos uma escala em radianos escrevemos em seguida W k2piN Como Ω ωTa para fazer uma escala em rads escrevemos W k2piNTa Geralmente desejase uma escala em hertz por ser mais intuitiva Neste caso lembrando que ω 2πf f kfaN O código Matlab abaixo plota a DTFS de um sinal senoidal amostrando cinco períodos inteiros com escalas em radianos rads e hertz Observe que as quatro condições foram todas satisfeitas Veja também a partir dos dados da 2ª linha do código que a condição faNMfs é atendida clearclc fa 1200 Ta 1fa fs 60 Ts 1fs T0 5Ts t 0TaT0Ta N lengtht x cos2pifst X fftxN if fixN2 N2 k N21N21 N par else k N121N12 N impar end W k2piN Escala em radianos w k2piNTa Escala em radianos por segundo f kfaN Escala em hertz figure1plottxgrid figure2subplot211stemWfftshiftrealXgrid subplot212stemWfftshiftimagXgrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt figure3subplot211stemwfftshiftrealXgrid subplot212stemwfftshiftimagXgrid figure4subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid Suponha em seguida que fa 1000Hz Quantos períodos devem ser amostrados para obter resultado correto Solução 3 50 60 1000 1000 60 0 0 M M N Logo N T M T M T s A primeira solução é M 3 mas M 6 9 12 também atendem Verifique este resultado modificando o código acima para fa 1000 e M 3 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt RESOLUÇÃO NO TEMPO E NA FREQUÊNCIA Resolução é a distância entre dois pontos consecutivos nos dados amostrados ou na sua representação gráfica No domínio do tempo esta distância é determinada pelo inverso da frequência de amostragem Ta 1fa Logo para melhorar a resolução no tempo basta aumentar a frequência de amostragem fa A resolução na frequência não depende como geralmente se imagina da frequência de amostragem Considere que N pontos de um sinal xt foram amostrados com um período de amostragem Ta O tempo da amostragem então será To NTa A transformada de Fourier Xf do sinal terá também N pontos Como a TF de um sinal amostrado é sempre periódica com período fa então o intervalo entre dois pontos consecutivos na frequência será faN Como To NTa Nfa concluímos que a resolução em frequência é dada por 1To o inverso do tempo em que o sinal foi amostrado A resolução em frequência é fo 1To faN Observe que a resolução só depende do tempo em que o sinal foi amostrado e não depende da frequência de amostragem fa Quando a frequência de amostragem fa aumenta o número de pontos aumenta na mesma proporção mantendo To constante A frequência de amostragem determina por outro lado a largura ou janela da transformada Por exemplo para fa 1000Hz a escala em frequência permitirá observar frequências de 500 a 500Hz ou seja o alcance da escala de frequência é fa2 Considere o problema de amostrar um sinal de frequência conhecida e obter uma determinada resolução Procedimento inteiro f f T T M f T s s 0 0 0 0 1 Se M não for inteiro então a resolução desejada não é possível para este sinal e deve se escolher outra até obter um valor inteiro para M Obtido M determinase em seguida as frequências de amostragem possíveis para obter resultado correto no traçado da TF As restrições são Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt inteiro f f f f M N M f N f e f f a s a s a s a 0 2 Como M e fs são conhecidos escolhese um valor de fa 2fs que resulte num N inteiro Exemplo Seja amostrar um sinal de frequência 21Hz com resolução de 015Hz fa fa f f M N f f M s a s 3 20 21 140 140 015 21 0 Logo fa deve ser múltiplo de 3 e maior que 42 Por exemplo fa 45 Observe que qualquer frequência de amostragem fa 45 múltiplo de 3 também atende ao problema Digite o código a seguir e verifique se as especificações são atendidas para várias frequências da forma 45 múltiplo de 3 clearclc fa 45 Ta 1fa fs 21 Ts 1fs T0 140Ts t 0TaT0Ta N lengtht x cos2pifstsin2pifst X fftxN if fixN2 N2 k N21N21 N par else k N121N12 N impar end f kfaN Escala em hertz figure1plottxgrid figure2subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid Múltiplas frequências Quando o sinal possui mais de uma frequência o procedimento é o mesmo Só que neste caso o período fundamental do sinal não é evidente e deve ser calculado pela regra do mínimo múltiplo comum mmc Obtido o período fundamental Ts a frequência fs é fs 1Ts Com fs determinase as restrições para a frequência de amostragem fa Exemplo Considere amostrar o sinal xt cos2π3t sin2π15t cos2π5tπ4 e traçar a FT com uma resolução de 0125Hz Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Determine Ts 2 1 2 15 30 510 3 15 1 5 15 1 310 1 fs mmc mmc Ts Calcule M 4 125 0 50 fo fs M Determine as restrições para fa 10 5 2 2 2 50 4 1 max a a a a a a f f f restrição inteiro f inteiro f fs Mfa N restrição Logo qualquer valor de fa inteiro e maior que 10 atende as condições do problema Veja o código a seguir onde foi empregado fa 11Hz clearclc fa 11 Ta 1fa f1 3 f2 15 f3 5 Ts 2 M 4 T0 MTs f0 0125 t 0TaT0Ta N lengtht x cos2pif1tsin2pif2t cos2pif3tpi4 X fftxN if fixN2 N2 k N21N21 N par else k N121N12 N impar end f kfaN Escala em hertz figure1plottxgrid figure2subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid Digite o código e verifique frequências que atendem e não atendem as restrições acima Exercício Determine a solução do problema para o mesmo sinal e resolução desejada igual a 16 Exercício Considere um sinal com frequências f1 f2 f3fn Demonstre que a condição M fsfo inteiro implica que fifo é também inteiro para 1 i n Solução Seja Ts o mmc de T1 T2 T3Tn Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Então Ts T1k1 T2k2 T3k3 Tnkn onde k1 k2 k3kn são constantes inteiras Logo para qualquer componente do sinal 0 0 0 1 f f Mk f k f f f M k f f inteiro k f f f k f T k T i i i i s i i s i s i i i s i i s Como M e ki são inteiros seu produto é um número inteiro e inteiro f fi 0 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt AUMENTO DA RESOLUÇÃO NO TEMPO Considere que um sinal periódico foi amostrado de modo a produzir uma representação correta em frequência Então temos N pontos do sinal xt no tempo e Xf na frequência Suponha que se deseje uma representação mais completa do sinal no tempo É possível obter tal representação sem ter que amostrar novamente o sinal para qualquer número de pontos desejados empregando o artifício descrito a seguir 1º Passo O vetor de pontos em frequência é separado em duas metades e um vetor de zeros é inserido entre as duas metades formando um vetor com os pontos originais e tantos zeros quantos se queira intercalados N10 N100 N1000 2º Passo Considere que N10 pontos tenham sido inseridos Então agora o número total de pontos em frequência é NN 11N Logo a nova frequência de amostragem agora é ffa NNTo Uma nova escala de frequência para os NN pontos é obtida escrevendo ffffa2ffaNNffa2ffaNN Observe que apesar aumento no número de pontos To não aumentou portanto a resolução em frequência não se alterou Após o fftshift os zeros estarão localizados nas bordas do vetor metade em cada borda Por isto os pontos da fft original permanecerão nas mesmas frequências em que estavam e a representação em frequência não se alterou 3º Passo Agora temos NN pontos em frequência e portanto a Transformada de Fourier Inversa TFI terá também NN pontos O novo período de amostragem é TTa 1ffa e a nova escala para o sinal no tempo então será tt 0TTaT0TTa Veja o código Matlab a seguir Um período de um sinal periódico N10 foi amostrado com fa 10Hz Observe que dobrandose o número de pontos resultará sempre num total de pontos par permitindo utilizar uma escala sempre par A representação do sinal no tempo é muito pobre Empregandose o código podemos obter uma representação exata do sinal com muitos pontos a mais A última figura mostra dois períodos do sinal obtido juntamente com 20 pontos originais AUMENTO DA RESOLUÇÃO NO TEMPO A PARTIR DE PONTOS AMOSTRADOS DESCOMPACTAÇÃO DE DADOS clearclc fa 10 Ta 1fa x 0 01123 12449 12449 01123 0 01123 12449 12449 01123 x x x N lengthx T0 NTa t 0TaT0Ta if fixN2 N2 k N21N21 N par else k N121N12 N impar end f kfaN X fftxN figure1 stemtxgrid figure2subplot211stemffftshiftrealXgrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt subplot212stemffftshiftimagXgrid XX X1lengthX2 zeros1100lengthX XlengthX21lengthX N par NN lengthXX ffa NNT0 TTa 1ffa ff ffa2ffaNNffa2ffaNN tt 0TTaT0TTa figure3subplot211stemfffftshiftrealXXgrid subplot212stemfffftshiftimagXXgrid xx ifftXXNN figure4plotttxxgogrid hold on plottxrohold off Com o mesmo código podemos também construir qualquer sinal periódico com qualquer número de pontos escolhido Para isto devese construir um vetor de pontos que desenha o período do sinal desejado Se o período for desenhado com muitos pontos então o sinal será construído empregando mais harmônicos Quando o sinal é descontínuo onda quadrada dente de serra etc então o resultado obtido será sempre uma aproximação AUMENTO DA RESOLUÇÃO NO TEMPO A PARTIR DE PONTOS AMOSTRADOS DESCOMPACTAÇÃO DE DADOS clearclc fa 100 Ta 1fa x 0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 84 x 0 1 2 3 4 5 4 3 2 1 0 1 2 3 4 5 4 3 2 1 x 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 x ones110 zeros110 x x x x 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 05 x 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 x x x x x5 x4 3 2 1 0 0 8 4 2 7 7 9 9 5 4 7 x x x sinal maluco N lengthx T0 NTa t 0TaT0Ta if fixN2 N2 k N21N21 N par else k N121N12 N impar end f kfaN X fftxN figure1 stemtxgrid figure2subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid XX X1lengthX2 zeros1100lengthX XlengthX21lengthX N par NN lengthXX ffa NNT0 TTa 1ffa ff ffa2ffaNNffa2ffaNN tt 0TTaT0TTa figure3subplot211stemfffftshiftrealXXgrid subplot212stemfffftshiftimagXXgrid xx ifftXXNN figure4plotttxxgogrid hold on plottxrohold off Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt EQUAÇÕES DIFERENCIAIS EQUAÇÕES DE DIFERENÇA A expressão geral para uma equação diferencial linear de coeficientes constantes é Onde rt é a entrada e yt a saída A equação diferencial que descreve a dinâmica de um sistema de 1ª ordem como por exemplo um filtro RC ou um forno é da forma Considerando um período de amostragem T podemos reescrever a equação acima como uma equação de diferenças veja a seguir Sendo o sistema causal podemos considerar yn1 0 e encontrar sucessivamente num procedimento recursivo os valores de yn para qualquer entrada rn Veja o código Matlab a seguir Equação diferencial de 1a ordem comparação entre solução com TL e solução recursiva clearclc fa 100 Ta 1fa a1 2 a0 05 b0 1 t 0Ta20 N lengtht r ones1N y1 0 for i 11lengtht y0 a1a1a0Tay1 b0Taa1a0Tari yi y0 y1 y0 end G tfb0a1 a0 yy lsimGrt figure1plottytyygrid 0 0 1 b r t a y t dt a dy t 1 1 1 0 1 0 0 1 1 0 0 1 1 a T r n a b T a T y n a a n y equação a do rearranjan b r n a y n T y n a T y n a assim T y n n y dt dy t r n r t y n t y M k k M k M k M N k k N k N N k dt r t d b dt y t d a 0 0 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Assim sendo utilize este código para obter a saída de um filtro passa baixa com RC 2 Aplique um sinal senoidal na entrada do filtro durante 200 segundos para ω igual a ωc10ωc e 100ωc ωc é a frequência de canto do filtro Considere em seguida a expressão geral para uma equação diferencial que descreve a dinâmica de um sistema de 2ª ordem Observe que neste caso é necessário discretizar uma derivada de 2ª ordem O código Matlab a seguir resolve uma equação diferencial de segunda ordem recursivamente e compara o resultado da equação discreta com a contínua Empregando fa 100Hz a diferença já é muito pequena 2a ORDEM clearclc fa 100 Ta 1fa M 1 b 5 k 05 a2 1 a1 05 a0 05 b0 1 t 0Ta20 N lengtht y1 0 y2 0 r ones1N for i 11lengtht y0 1MbTakTa22MbTay1 My2 Ta2ri y0 1a2a1Taa0Ta22a2a1Tay1 a2y2 b0Ta2ri yi y0 y2 y1 y1 y0 end G tf1M b k G tfb0a2 a1 a0 yy stepGt figure2plottytyygrid 0 0 1 2 2 2 b r t a y t dt a dy t dt a d y t 2 1 2 1 2 1 2 2 1 1 1 1 2 0 2 1 2 2 0 1 2 2 2 2 2 2 b T r n a y n a T y n a a T a T a n y do rearranjan e do substituin T y n y n n y dt y t d assim T y n y n d n e T y n y n d n onde T d n n d dt y t d Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt FILTROS DISCRETOS 1 Introdução Um filtro discreto ou filtro digital é uma equação de diferenças ou um algoritmo que pode ser programado para executar filtragem numa sequência de valores discretos amostrados Abordaremos a seguir alguns tipos básicos de filtros discretos de forma bem resumida e objetiva 11 Filtro passa baixa Muito empregado para filtragem de ruídos sempre presentes em medições de variáveis Como estes ruídos têm em geral frequência bem mais alta que o sinal um simples filtro passa baixa de 1ª ordem consegue remover grande parte dele Porém como o filtro também amortece o sinal medido então é necessário ajustar sua constante de tempo já que um amortecimento excessivo pode prejudicar o sistema de controle A equação diferencial que descreve a dinâmica de um filtro de 1ª ordem é da forma Considerando um período de amostragem T podemos reescrever a equação acima como uma equação de diferenças Sendo o sistema causal podemos considerar yn1 0 e encontrar sucessivamente num procedimento recursivo os valores de yn para qualquer entrada rn Veja o código Matlab a seguir Filtro passa baixa de 1a ordem comparação entre solução com TL e solução recursiva clearclc fa 100 Ta 1fa tau 05 wc 1tau t 0Ta100 N lengtht r sinwct y1 0 r t y t dt dy t 1 1 1 r n T T T y n n y equação a do rearranjan r n y n T y n y n T assim T y n n y dt dy t r n r t y n t y Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt for i 11lengtht y0 tautauTay1 TatauTari yi y0 y1 y0 end G tf1tau 1 yy lsimGrt figure1plottytyygrid Para tau 05 e fa 100 a equação a ser programada será y0 09804y1 00196ri Observe que os coeficientes são números complementares com soma sempre igual a 1 1 T T T T T 12 Filtro Complementar Este filtro é empregado em situações onde se deseja combinar as medições obtidas de dois sensores diferentes ponderando mais uma ou outra medição A equação deste filtro na sua forma mais simples é yαy1αx Onde y e x são as duas variáveis medidas e α é um parâmetro de ponderação O valor de α é determinado experimentalmente e se torna cada vez maior aproximandose de 1 quando a frequência de amostragem é grande Para que o filtro funcione é essencial que a soma das ponderações para y e x seja igual a 1 α1α 1 Este filtro encontra uma típica aplicação em IMUs que medem velocidade angular e aceleração como por exemplo o MPU6050 Quando este sensor é empregado no robô segway a variável que se deseja medir é o ângulo ϴ numa direção por exemplo x A maioria das IMUs tem 6 DOF Graus de Liberdade Isso significa que existem 3 acelerômetros e 3 giroscópios no interior da unidade Nesta aplicação os dados do acelerômetro e do giroscópio são empregados para o mesmo propósito obter a posição angular do robô Com a informação do giroscópio podemos obter o ângulo integrando a velocidade angular ao longo do tempo Podemos também obter a posição angular com o acelerômetro na direção x combinandose as acelerações nas direções y e z Em ambos os casos no entanto há um problema que torna os dados muito difíceis de usar sem filtro O problema com acelerômetros Como um acelerômetro mede todas as forças que estão atuando no objeto cada pequena força presente irá perturbar nossa medida significativamente Se estivermos trabalhando em um sistema atuado como o robô as forças que acionam o sistema também estarão visíveis no sensor Por isto os dados do acelerômetro são confiáveis apenas no longo prazo O problema com giroscópios O sinal do giroscópio não é sensível a forças externas Porém devido à integração ao longo do tempo a medição tem a tendência de se desviar não retornando a zero quando o sistema retorna à sua posição original Os dados do giroscópio são confiáveis apenas no curto prazo já que começam a derivar a longo prazo Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Com o filtro complementar no curto prazo usamos os dados do giroscópio porque é muito preciso e não é suscetível a forças externas No longo prazo usamos os dados do acelerômetro pois ele não apresenta derivação drift A equação do filtro complementar para esta aplicação é Algoritmo para o filtro complementar teta 0 for i 1N teta teta tetagiroT integração teta 098teta tetaacel 002 end Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt PROBLEMA DO SORTEIO
78
Sinais e Sistemas
PUC
3
Sinais e Sistemas
PUC
1
Sinais e Sistemas
PUC
85
Sinais e Sistemas
PUC
75
Sinais e Sistemas
PUC
15
Sinais e Sistemas
PUC
1
Sinais e Sistemas
PUC
1
Sinais e Sistemas
PUC
9
Sinais e Sistemas
PUC
1
Sinais e Sistemas
PUC
Texto de pré-visualização
Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt SINAIS PARES SINAIS ÍMPARES 1 INTRODUÇÃO Um sinal real é par se xt xt ou xn xn Um sinal real é ímpar se xt xt ou xn xn Sinais pares ou ímpares são casos especiais em que o sinal possui simetria Todo sinal par é simétrico em relação ao eixo vertical e todo sinal ímpar é ante simétrico em relação ao eixo vertical Também todo sinal ímpar é nulo em t ou n 0 porque Como x0 x0 isto obriga x0 0 Em geral um sinal real não é par nem ímpar mas qualquer sinal real pode ser escrito como a soma de uma parte par com uma parte ímpar Prova Seja xt um sinal real qualquer Sempre podemos escrever xt 05xt xt 05xt xt xt Trocando t por t no primeiro termo da equação acima verificamos que xtxt xtxt Logo este termo é par xtxt xpart Similarmente trocando no segundo termo t por t e multiplicando por 1 xt xt xt xt Logo o segundo termo é ímpar xt xt ximpart 2 EXEMPLOS A seguir um código no Matlab para separar as partes par e ímpar de um sinal contínuo Exemplo1 e em seguida outro código para um sinal discreto Exemplo2 Empregando a estrutura destes códigos você poderá empregalos para separar outros sinais Exemplo 1 Exemplo1 Decomposição de sinais em parte par e parte ímpar Considere um sinal xt descrito por xt t2 para 2t5 xt 12t para 5t12 e xt 0 para t2 e t12 Considere fa 100Hz a Plote xt xt b Numa mesma figure plote xpt e xit c Confirme seu resultado plotando noutra figura plote xt junto com xptxit na cor verde clearclcclose Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt fa 100 Ta 1fa t1 12Ta2Ta N1 lengtht1 t2 2Ta5Ta N2 lengtht2 t3 5Ta12 N3 lengtht3 t t1 t2 t3 N lengtht Observe que o tempo deve sempre ser simétrico com a maior dimensão do sinal 12 a 12 neste caso x zeros1N1 t22 12t3 loop para espelhar o sinal for i 1N xespi xNi1 end xp 05xxesp xi 05xxesp figure1plottxtxespgrid figure2subplot121plottxpgrid subplot122plottxigrid figure3plottxtxpxiggrid Exemplo 2 EXEMPLO 2 Decomposição de sinais em parte par e parte ímpar Considere um sinal xn descrito por xn un3un2 nun2un5 10nun5un11 a Plote xn xn b Numa mesma figura plote xpn e xin c Confirme seu resultado plotando noutra figura plote xn junto com xpnxin clearclcclose n1 104 N1 lengthn1 n2 31 N2 lengthn2 n3 24 N3 lengthn3 n4 510 N4 lengthn4 n n1 n2 n3 n4 N lengthn x zeros1N1 ones1N2 n3 10n4 for i 1N xespi xNi1 end xp 05xxesp xi 05xxesp figure4subplot121stemnxgrid subplot122stemnxespgrid figure5subplot121stemnxpgrid subplot122stemnxigrid figure6stemnx xpxigrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt DETERMINAÇÃO DO PERÍODO FUNDAMENTAL DE SINAIS CONTÍNUOS E DISCRETOS 1 INTRODUÇÃO 11 Sinais Contínuos A soma de dois sinais periódicos contínuos pode ser periódica ou não Sejam x1t e x2t dois sinais periódicos com períodos T1 e T2 Neste caso x1t x1tT1 x1tm1T1 x2t x2tT2 x2t m2T2 onde m1 e m2 são números inteiros positivos Assim se xt é a soma de x1t e x2t xt x1t m1T1 x2t m2T2 Para que xt seja periódico com período T0 é necessário que xtT0 x1tT0 x2tT0 x1t m1T1 x2t m2T2 De onde se obtém que m1T1 m2T2 T0 ou 1 2 2 1 m m T T número racional Portanto a soma de dois sinais periódicos contínuos será periódica somente se a razão entre seus períodos for um número racional Se esta condição existir então o período fundamental da soma será o mmc mínimo múltiplo comum dos períodos de cada um 2 1 0 T mmc T T Generalizando a soma de um conjunto de n sinais periódicos contínuos será periódica somente se todas as possíveis combinações da razão de dois períodos do conjunto resultarem em números racionais Existindo a condição então o período fundamental da soma será o mmc mínimo múltiplo comum dos períodos de cada um Tn mmc T T T T 3 2 1 0 12 Sinais Discretos Sejam x1n e x2n dois sinais periódicos com períodos N1 e N2 Neste caso x1n x1nN1 x1nm1N1 x2n x2nN2 x2nm2N2 onde m1 e m2 são números inteiros positivos Assim se xn é a soma de x1n e x2n xn x1n m1N1 x2n m2N2 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Para que xn seja periódico com período N0 é necessário que xnN0 x1n N0 x2n N0 x1n m1N1 x2n m2N2 Então deveremos ter m1N1 m2N2 N0 Como m1 m2 N1 N2 e N0 são todos inteiros sempre podemos encontrar m1 e m2 satisfazendo a equação acima Portanto a soma de dois sinais discretos periódicos será sempre um sinal periódico e o período fundamental da soma será o mmc mínimo múltiplo comum dos períodos de cada um 2 1 0 N mmc N N Generalizando a soma de n sinais discretos periódicos é um sinal periódico e o seu período é o mmc mínimo múltiplo comum dos períodos de cada um Nn N N mmc N N 3 2 1 0 13 SINAIS SENOIDAIS CONTÍNUOS Todo sinal senoidal contínuo da forma xt A0senω0tϕ onde ω0 e ϕ são reais é periódico com período 0 0 2 T Considerando a soma de n sinais senoidais contínuos satisfazendo a condição de periodicidade do ítem 11 é um sinal periódico n i i i i t A sen t x 1 O período de xt é o mmc dos períodos de cada componente Tn mmc T T T 2 1 0 14 SINAIS SENOIDAIS DISCRETOS Nem todo sinal senoidal discreto é periódico A condição de periodicidade para um sinal senoidal discreto é N m 2 Onde m e N são inteiros positivos O menor N que satisfaz a condição acima é o período fundamental N0 Considere um sinal senoidal discreto obtido através da amostragem de um contínuo Se m 1 isto indica que é necessário amostrar mais de um período do contínuo para obter um período do discreto Neste caso o valor de m informa quantos períodos serão necessários m 2 indica dois períodos devem ser amostrados m 5 cinco períodos etc Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Quando o sinal senoidal discreto é uma combinação linear de senóides com períodos N1N2Nn n i i i i n A sen n x 1 então o período fundamental é Nn N mmc N N 2 1 0 15 CONVERSÃO DE FREQUÊNCIAS CONTÍNUAS PARA DISCRETAS Quando um sinal senoidal contínuo da forma n i i i i t A sen t x 1 é amostrado corretamente com uma frequência de amostragem fa suas frequências contínuas são convertidas em correspondentes discretas calculadas por a a a f f fT T 2 2 Onde ω é a frequência contínua em rads f é a frequência contínua em Hz e Ta e fa são respectivamente o período de amostragem e a frequência de amostragem Exemplo 0 23 100 23 500 115 5 15 1 5 15 1 fa 16 MATLAB função lcm A função lcm Least Common Multiple calcula o mmc de dois números Observe que os argumentos do operador matemático mmc devem ser números inteiros Exemplos mmc de 3 7 8 x lcm3lcm78 mmc dos períodos de f1 15 f2 42 e f3 63 Primeiro as frequências devem ser convertidas em frações racionais Para converter em períodos basta inverter T11f1 T21f2 e T3 1f3 Em seguida calculase o mmc dos denominadores Na sequência cada período é multiplicado por este mmc tornandose um número inteiro Finalmente o mmc deste números inteiros é calculado e o final deve ser dividido pelo mmc dos denominadores 630 4263 15 63 10 42 10 15 10 10 63 10 42 10 15 3 2 1 3 2 1 lcm lcm T T T f f f Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 3 10 150100 420 630 1 63 42 63010 630 10 15 63010 630 1 0 0 0 T lcm lcm T lcm lcm T 2 EXERCÍCIOS NO MATALB Exercício 1 Considere o sinal xn sen03n A Plote xn para 50n50 B Este sinal é periódico Se for determine o período fundamental C Repita B para xn sen03pin clearclcclose w 03 n 5050 A x sinwn figure1stemnxgrid B x sinwpin figure2stemnxgrid Cálculo do período w03pi 2pimN N203m Logo N 20 com m 3 Letra B Cálculo do período 3 20 3 20 2 30 m com N Logo m N N m Exercício 2 Considere o sinal xt cos2pi15tsen2pi24t cos2pi6t amostrado com fa 100Hz A Calcule o período fundamental de xt e do sinal amostrado xdn BConfirme seu resultado Plotando 2 períodos de xt e dois períodos de xdn Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt clearclcclose fa 100 Ta 1fa f1 15 f2 24 f3 6 w1 2pif1fa w2 2pif2fa w3 2pif3fa f1 32 f2125 f3 6 T1 23 T2 512 T3 16 T0 112mmc852 T0 4012 103 T0T1 5 T0T2 8 T0T3 20 T0 103 logo f0 03 Convertendo esta frequência para discreta resulta w0 2pif0fa 2pi03100 w0 2pim0N0 logo N0 10003m0 N0 10003m0 Então N0 1000 com m0 3 Multiplicidade 3 T0 103 N0 1000 t 0Ta2T0Ta n 02N01 x cos2pi15t sin2pi24t cos2pi6t xd cosw1n sinw2n cosw3n figure1subplot211plottxgrid subplot212stemnxdgrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt CONVOLUÇÃO CONVOLUÇÃO DISCRETA APROXIMANDO A CONTÍNUA 1 INTRODUÇÃO A convolução decorre diretamente de duas propriedades dos sistemas linearidade e invariância no tempo Todo sistema que satisfaz estas duas propriedades é identificado como LIT Linear Invariante no Tempo Rigorosamente nenhum sistema físico real satisfaz completamente às duas propriedades mas em geral a convolução pode ser empregada para obter aproximações da resposta dinâmica de sistemas físicos submetidos a uma dada excitação Através da equação de convolução conhecida a resposta ao impulso de um sistema podese determinar qual será a saída para qualquer outra entrada arbitrária aplicada no sistema Assim a convolução expressa o resultado da interação dinâmica entre um sinal e um sistema ou entre sistemas 2 CONVOLUÇÃO DISCRETA A convolução entre duas sequências discretas é matematicamente descrita por k k k x k h n k h k x n y n A função conv do Matlab retorna o resultado da convolução discreta de duas sequências finitas h 1 0 5 2 3 x 1 2 3 4 5 4 3 2 1 y convhx y 1 2 2 4 3 4 5 4 9 8 8 8 3 3 CONVOLUÇÃO CONTÍNUA A convolução entre dois sinaissistemas é matematicamente descrita por d h t x d x t h y t 4 CONVOLUÇÃO DISCRETA APROXIMANDO A CONTÍNUA A discretização da equação da convolução contínua resulta em k k T h kT x n T y nT ou k k k x k h n T k h k x n T y n Este é simplesmente o resultado da aproximação da integração contínua por uma somatória de retângulos de base T e altura ynT Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Primeira convolução Convolução discreta aproximando a contínua Considere fazer a convolução contínua de dois sinais e conforme figura O resultado está na figura a seguir Considere em seguida que ht e xt foram amostrados com fa 5Hz Ta 02s O resultado da amostragem está na figura a seguir O sinal hn tem P 6 valores 1 e xn Q 6 valores 05 A convolução resultante tem sempre N PQ1 pontos Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt A equação para a convolução discreta que aproxima a contínua é k k k x k h n T k h k x n T y n Quando as duas funções convoluidas são finitas podemos empregar o método da tabela Este método é fácil de fazer e fornece muita informação insigth sobre a equação acima Método da tabela O resultado da convolução discreta de duas sequências finitas tem sempre N PQ1 pontos sendo P os pontos da 1ª e Q o número de pontos da 2ª Então fazemos uma tabela conforme figura a seguir Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 1 Uma das sequências é escrita na 1ª linha da tabela neste caso escolhemos a sequência hn poderia ter sido xn tanto faz 2 A outra sequência deve ser espelhada veja a equação por isto leia a sequência da esquerda para a direita e escreva na 2ª linha da tabela da direita para a esquerda colocando o 1º ponto de xn sob o 1º ponto da sequência hn 3 A cada nova linha desloque a sequência xn um intervalo para a direita Faça o produto ponto a ponto e escreva o acumulado dos produtos na coluna do yn 4 O resultado da convolução contínua é ynTa é escrito na última coluna 5 Observe que esta sequência reproduz o que a equação faz as somas dos produtos em cada linha correspondem ao incremento da variável A troca de linha corresponde ao incremento da variável Aplicação prática da Convolução interação dinâmica entre um sinal e um sistema Considere o circuito RC da figura a seguir onde Em um degrau é aplicado a entrada Desejase fazer um código Matlab que simule o comportamento dinâmico deste sistema para uma entrada senoidal empregando uma convolução discreta aproximando a contínua A resposta ao impulso deste sistema e respectiva Transformada de Laplace será E a resposta em frequência Para Considere o circuito RC da figura a seguir onde R10K0hm e C100microF Desejase fazer um código Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Matlab que simule o comportamento dinâmico deste sistema para uma entrada senoidal empregando uma convolução discreta aproximando a contínua empregue fa 1000Hz clearclc fa 1000 Ta 1fa RC 1 tau 1RC w0 1RC th 0Ta6 P lengthth tx 0Ta100 Q lengthtx N PQ1 t 0TaN1Ta h 1RCexpthRC x sinw0tx y convhxTa figure1subplot121plotthhgrid subplot122plottxxgrid figure2plottygrid omega logspace221000 H tf1RC1 1RC figure3bodeHomega IDENTIFICAÇÃO DE SINAIS CONTÍNUOS E PERIÓDICOS 1 Resumo Nesta aula um sinal periódico é gerado a partir do acendimentoapagamento controlado de um led branco Os tempos aceso apagado do led podem ser variados A luz do led sensibiliza um sensor de luminosidade gerando um sinal periódico com ruído sobreposto O sinal gerado é filtrado e analisado em frequência A partir da fft de um período do sinal escreve se uma expressão matemática aproximada par ele A qualidade da equação obtida é avaliada plotandose numa mesma figura o sinal original e o sinal identificado 2 Material empregado Um led branco um sensor de luminosidade um resistor 104Ω um resistor 350 Ω uma placa arduino uno um computador uma protoboard um cabo USB e uma caixa de papelão pequena 20X30cm Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 3 Layout do Arduino uno 4 Diagrama de interligação Pino 5V Arduino na entrada do sensor de luz Saída do sensor de luz no resistor de 10K marronpretolaranja Saída do sensor de luz no pino A0 do Arduino Resistor 10K no pino GND do Arduino Positivo do led no pino 10 do Arduino Negativo do led no resistor 350Ω Resistor 300 Ω no pino GND do Arduino A0 0 5V GND 10 Arduino uno LED 300 Ω US B Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 5 Procedimento Primeiro no ambiente Arduino carregase o programa C Deve ser feito primeiro porque o código Matlab leitor vai se apossar da porta COM escolhida e neste caso não se consegue mais transferir o código para o Arduino Antes de ativar o código Matlab leitor obscurecese a montagem empregando a caixa de papelão para obter nível zero de luz no sensor com o led apagado Após a coleta de dados ativase o programa Matlab para filtragem e identificação 6 Códigos São empregados um código em C para o Arduino e dois códigos Matlab 61 Código Arduino O código a seguir acende e apaga o led lê o sinal do sensor de luz e envia para a porta COMX do computador Filtragem e identificacao de sinais periodicos const int ledPin 10 LED connected to digital pin 10 const int Sensor 0 int value LOW previous value of the LED int Valor 0 long previousMillis 0 will store last time LED was updated long intervalo 3000 interval at which to blink milliseconds void setup Serialbegin9600 pinModeSensor INPUT pinModeledPinOUTPUT void loop Valor analogReadSensor SerialprintlnValor delay30 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt check to see if its time to blink the LED that is is the difference between the current time and last time we blinked the LED bigger than the interval at which we want to blink the LED if millis previousMillis intervalo previousMillis millis remember the last time we blinked the LED if the LED is off turn it on and viceversa if value LOW value HIGH else value LOW digitalWriteledPin value 62 Códigos Matlab O primeiro código código leitor abre uma porta COM lê a informação enviada pelo Arduino e salva num arquivo de dados Codigo leitor clear all clc arduinoserialCOM2BaudRate9600InputBufferSize1024 OutputBufferSize1024 fopenarduino Ta 301000 N 5000 t 0TaN1Ta for i1lengtht yifscanfarduinod end fclosearduino figure1plottygrid fa 1Ta f fa2faNfa2faN y ymeany Y fftyN figure2plotffftshiftabsYgrid save sensordeluzmat y fa N O segundo código código identificador abre o arquivo de dados filtra o ruído em frequência separa um período do sinal plota a fft do período A partir da fft escrevese o sinal considerando cinco ou seis harmônicos O sinal é escrito como uma soma de senos e cossenos As frequências e amplitudes dos cossenos são obtidas a partir da parte real da fft e da mesma forma os senos a partir da parte Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt imaginária Finalmente o sinal original e a aproximação identificada são plotados numa mesma figura Codigo identificador clearclc load sensordeluzmat y fa N Ta 301000 fa 1Ta t 0TaN1Ta tt t figure1plotttygrid f fa2faNfa2faN ymean meany y yymean Y fftyN figure2stemffftshiftabsYgrid for i 1N Filtragem em frequencia filtro passa a regua if absYi 1 Limiar para filtragem Yi 0 end end figure3stemffftshiftabsYgrid yy realifftYN n 1lengtht figure4stemnrealyygrid x yy20022201 Um periodo obtido com o icone data cursor N lengthx t 0TaN1Ta f fa2faNfa2faN X fftxN figure5subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid ypar 220394cos2pi1667t 216517cos2pi33333t29453cos2pi5t 29631cos2pi6667t24996cos2pi8333t 2658cos2pi1t yimpar 218902sin2pi1667t 211734sin2pi33333t254689sin2pi5t 210525sin2pi6667t229967sin2pi8333t 28835sin2pi1t yid ypar yimpar figure6plottxtyidgrid N 6Nt 0TaN1Ta ypar 220394cos2pi1667t 216517cos2pi33333t29453cos2pi5t Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 2 4 6 8 10 12 14 16 18 20 10 0 10 20 30 40 50 60 0 002 004 006 008 01 012 014 016 018 02 10 5 0 5 Sinal original Amplitude Tempo em segundos 0 002 004 006 008 01 012 014 016 018 02 10 5 0 5 Sinal filtrado Amplitude Tempo em segundos 29631cos2pi6667t24996cos2pi8333t 2658cos2pi1t yimpar 218902sin2pi1667t 211734sin2pi33333t254689sin2pi5t 210525sin2pi6667t229967sin2pi8333t 28835sin2pi1t yid ypar yimpar figure7plottyidymeantt1lengthty1lengthty meangrid 7 Resultado final A figura a seguir figura 7 do código mostra o sinal amostrado e o sinal identificado empregandose a frequência fundamental e cinco harmônicos O eixo horizontal é o tempo em segundos FILTROS COMB DIGITAIS NÃO RECURSIVOS 1Introdução Considere o problema de retirar de um sinal uma frequência e todos os harmônicos desta frequência Para tal os filtros clássicos passa baixaalta corta faixa ou passa faixa não são eficazes Um filtro capaz de resolver este problema é o filtro comb tipo notch Observe a figura a seguir Acima temos uma informação periódica com frequência 40Hz afetada pela frequência 60Hz e harmônicos nas frequências 120 180 240 e 300Hz Empregando um filtro notch podemos obter o resultado mostrado na parte inferior da figura Observase que somente a frequência 40 Hz restou no sinal Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 0 5 10 15 20 25 30 35 40 1 08 06 04 02 0 02 04 06 08 1 2 Filtros Comb Atuam sobre uma frequência e harmônicos dela Podem ser de dois tipos Notch Filtra uma frequência e todos os harmônicos desta frequência presentes no sinal Peak Amplifica uma frequência e todos os harmônicos desta frequência presentes no sinal A resposta ao impulso de um filtro notch não recursivo é L n n K h n Onde L é um inteiro maior que zero Veja a figura para L 40 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 21 Expressão para a resposta em frequência de filtros notch não recursivos Pela equação da definição n j n j h n e H e Então com L n n K h n 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 L j j j j L j j L j j j L j L L j j j L j L e Ksen e H e e L Ksen e H L sen j Ke e H e e Ke e H e K e H Observe que o módulo de HejΩ 0 para 2 0 2 0 2 L ou L sen Logo 3 2 1 0 2 k k L Então o módulo é zero para L 2k A figura a seguir mostra o módulo e a fase de um filtro notch Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 0 50 100 150 200 250 0 05 1 15 2 Módulo Amplitude Frequência em Hz 0 50 100 150 200 250 100 50 0 50 100 Fase Graus Frequência em Hz 22 Exemplo Projete um filtro notch para cortar a frequência 60Hz e suas harmônicas O sinal será amostrado com fa 1200Hz 20 10 2 2 10 10 1200 2 60 2 L L f f a C C Logo a equação que implementa o filtro é 20 x n K x n y n O código Matlab a seguir considera que o sinal xt cos2π50t 2sin2π60t 14cos2π120t π5 sin2π240t é amostrado com fa 2400Hz Em seguida calculase os coeficientes de um filtro notch para remoção dos componente 60Hz e múltiplos A figura 1 do código produz a resposta em frequência do filtro e a figura 4 o resultado da filtragem FILTROS COMB clear clc K 1 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt fa 2400 Ta 1fa fc 60 f1 50 f2 60 f3 120 f4 240 T0 1 L fafc tetac 2pifcfa h K1 zeros1L1 1 N lengthh n 0N1 m 6001 f 0fa2mfa2fa2m HWfreqzh1m modulo absH fase angleH180pi figure1stemnhgrid figure2subplot211plotfmodulokgrid titleMóduloylabelAmplitudexlabelFrequência em Hz subplot212plotffasekgrid titleFaseylabelGrausxlabelFrequência em Hz teste t 0TaT0Ta N lengtht x cos2pif1t 2sin2pif2t 14cos2pif3tpi5 sin2pif4t x1 zeros1L x1NL y x x1 figure3plottxtygrid figure4plottygrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 31 Representação no tempo e na frequência para sinais periódicos de tempo discreto A Série de Fourier de tempo discreto DTFS Discrete Time Fourier Series Muitos aspectos e características dos sinais não são perceptíveis observando sua evolução ao longo do tempo Considere o exemplo de um baralho de cartas observando a pilha de cartas não é possível saber qual é a sua composição No entanto se o baralho for virado e estendido sobre uma mesa podemos observar de quais cartas ele é composto Observando um sinal no tempo contendo diversas frequências não conseguimos identificar quais frequências o compõe e nem avaliar qual é a importância de cada frequência contida nele A transformação de Fourier abre o sinal permitindo conhecer sua composição detalhada Além disto a transformação de Fourier possui propriedades que facilitam não só a análise mas a própria resolução matemática de muitos problemas A DTFS é aplicável a sinais que no tempo são discretos e periódicos e a representação em frequência é também uma função discreta e periódica A transposição da representação do tempo para a frequência ou da frequência para o tempo é feita por um par de equações As duas representações formam um par único dada uma função no tempo discreta e periódica existe apenas uma função da frequência discreta e periódica correspondente O par de equações Em que xn e Xk tem período fundamental de N pontos e por tanto frequência fundamental A partir destas equações conhecendo um período de xn podemos determinar um período de Xk e reciprocamente conhecendo N pontos de xk podemos determinar todos os pontos de xn ao longo de seu período C comparando com a equação da definição Logo Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Resolução do mesmo problema no Matlab O Matlab tem um par de funções que faz o cálculo do tempo para a frequência e que faz o cálculo da frequência para o tempo Os nomes das funções fft e ifft são abreviações respectivamente de Fast Fourier Transform e Inverse Fast Fourier Transform Tais nomes são devidos ao algoritmo desenvolvido por dois pesquisadores Cooley e Tukey que em 1965 publicaram um artigo propondo um algoritmo para cálculo da fft e ifft que reduzia o número de operações necessárias de para Este foi um artigo muito importante porque naquela época um grande número de desenvolvimentos e especialmente aplicações em tempo real associados as transformadas era inviável para os computadores então utilizados As funções Matlab fft e ifft empregam uma versão do algoritmo de Cooley e Tukey Estas duas funções calculam os pontos usando uma equação um pouco diferente daquelas do Simon Hayken O par mostrado abaixo corresponde a DFT Discrete Fourier Transform que é calculado pelas funções Diferenças 1ª DIFERENÇA A função fft calcula Xk considerando que a sequência xn vai sempre de 0 a N1 A sequência Xk resultante é calculada para para Então se queremos um resultado simétrico em relação a zero é necessário aplicar ao resultado uma outra função denominada Esta função pega a segunda metade do vetor Xk calculado e transporta para antes da 1ª metade Assim podemos fazer uma escala simétrica e plotar o resultado com os pulsos simétricos em relação à origem 2ª DIFERENÇA Na DTFS os valores no tempo xn são divididos por N Na DFT os valores Xk é que são divididos por N Como o resultado que queremos é a DTFS sempre iremos dividir os pontos xn por N ao usar a função fft e iremos inversamente multiplicar os pontos Xk por N ao usar a função ifft O código a seguir resolve o exemplo1 no Matlab e plota o resultado Considere o sinal xn cospi8npi4Calcule o período fundamental do sinal e plote um período do sinal no tempo e na frequência clearclc N 16 w 2piN n 0N1 if fixN2 N2 k N2N21 N par Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt else k N12N12 N ímpar end x coswnpi4 X fftxN figure1stemnxgrid figure2subplot211stemkfftshiftrealXg rid subplot212stemkfftshiftimagXgrid REPRESENTAÇÃO DA TRANSFORMADA DE FOURIER NO COMPUTADOR Num programa de computador as sequências que representam sinais no tempo ou na frequência são sempre discretas Por isto a única representação de Fourier que pode ser calculada no computador é a DTFS Série de Fourier de Tempo Discreto uma vez que somente nesta representação o sinal é discreto no tempo e na frequência Para todas as outras três representações o sinal é contínuo no tempo ou na frequência ou no tempo e na frequência A DTFS é aplicável a sinais discretos e periódicos no tempo e a representação em frequência é também discreta e periódica Veja as equações para o par e x n N X k X k e x n on jk N n DTFS on jk N k 1 Já o par de equações para a TF abaixo é aplicável a sinais contínuos e não periódicos dt x t e X j d e X j x t j t FT j t 2 1 Onde xt e Xjω são contínuas e não periódicas Ou ainda na variável f dt x t e X f df X f e x t ft j FT ft j 2 2 No entanto utilizandose as equações para a DTFS podese obter resultados exatos para a Transformada de Fourier desde que quatro condições sejam satisfeitas 1ª O sinal no tempo deve ser periódico Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt 2ª Deve ser limitado em frequência max 0 f f para X f 3ª A frequência de amostragem deve ser maior que o dobro da maior frequência contida no sinal fa 2 fmax 4ª Deve se amostrar um número inteiro de períodos do sinal ToTs número inteiro 1 Se as quatro condições não forem satisfeitas obtém se uma aproximação para a TF Mas além disto as quatro condições são necessárias mas não suficientes Suponha que se deseja amostrar um sinal contínuo periódico com frequência de amostragem fa O período de amostragem será então Ta 1fa As três primeiras condições são fáceis de atender Para atender a quarta condição o tempo em que o sinal será amostrado aqui identificado por To têm de ser múltiplo inteiro do período do sinal amostrado aqui identificado por Ts Logo To MTs onde M é um inteiro positivo 1 O número de pontos amostrados N é obviamente sempre um inteiro e o tempo da amostragem é igual ao número de pontos amostrados vezes a distância entre eles To NTa Portanto ToTa é sempre o número inteiro N 0 0 0 inteiro f f N T T N T N T a a a Por outro lado para amostrar um número inteiro de períodos s a a s M f N f Logo T N T T M T é um inteiro M 0 0 Então para obter resultado correto é necessário que a frequência de amostragem se relacione com a frequência do sinal na proporção de dois números inteiros Observe também que para satisfazer a regra de Nyquist M 2 N E ainda se for amostrado um período do sinal a frequência de amostragem tem de ser múltipla inteira da frequência do sinal Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt ESCALAS Considere traçar a DTFS de um sinal discreto e periódico com período de N pontos onde a frequência fundamental do sinal é Ωo 2πN O sinal Xk em frequência é também periódico com N pontos Considerando uma escala simétrica de π a π vemos que o incremento em radianos de um ponto para o seguinte é 2πN Ωo Mas a escala pode ser simétrica em relação a zero quando N é ímpar ou assimétrica quando N for par Então para fazer uma escala em frequência para qualquer N fazemos no Matlab if fixN2 N2 k N21N21 N par else k N121N12 N impar end Se desejamos uma escala em radianos escrevemos em seguida W k2piN Como Ω ωTa para fazer uma escala em rads escrevemos W k2piNTa Geralmente desejase uma escala em hertz por ser mais intuitiva Neste caso lembrando que ω 2πf f kfaN O código Matlab abaixo plota a DTFS de um sinal senoidal amostrando cinco períodos inteiros com escalas em radianos rads e hertz Observe que as quatro condições foram todas satisfeitas Veja também a partir dos dados da 2ª linha do código que a condição faNMfs é atendida clearclc fa 1200 Ta 1fa fs 60 Ts 1fs T0 5Ts t 0TaT0Ta N lengtht x cos2pifst X fftxN if fixN2 N2 k N21N21 N par else k N121N12 N impar end W k2piN Escala em radianos w k2piNTa Escala em radianos por segundo f kfaN Escala em hertz figure1plottxgrid figure2subplot211stemWfftshiftrealXgrid subplot212stemWfftshiftimagXgrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt figure3subplot211stemwfftshiftrealXgrid subplot212stemwfftshiftimagXgrid figure4subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid Suponha em seguida que fa 1000Hz Quantos períodos devem ser amostrados para obter resultado correto Solução 3 50 60 1000 1000 60 0 0 M M N Logo N T M T M T s A primeira solução é M 3 mas M 6 9 12 também atendem Verifique este resultado modificando o código acima para fa 1000 e M 3 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt RESOLUÇÃO NO TEMPO E NA FREQUÊNCIA Resolução é a distância entre dois pontos consecutivos nos dados amostrados ou na sua representação gráfica No domínio do tempo esta distância é determinada pelo inverso da frequência de amostragem Ta 1fa Logo para melhorar a resolução no tempo basta aumentar a frequência de amostragem fa A resolução na frequência não depende como geralmente se imagina da frequência de amostragem Considere que N pontos de um sinal xt foram amostrados com um período de amostragem Ta O tempo da amostragem então será To NTa A transformada de Fourier Xf do sinal terá também N pontos Como a TF de um sinal amostrado é sempre periódica com período fa então o intervalo entre dois pontos consecutivos na frequência será faN Como To NTa Nfa concluímos que a resolução em frequência é dada por 1To o inverso do tempo em que o sinal foi amostrado A resolução em frequência é fo 1To faN Observe que a resolução só depende do tempo em que o sinal foi amostrado e não depende da frequência de amostragem fa Quando a frequência de amostragem fa aumenta o número de pontos aumenta na mesma proporção mantendo To constante A frequência de amostragem determina por outro lado a largura ou janela da transformada Por exemplo para fa 1000Hz a escala em frequência permitirá observar frequências de 500 a 500Hz ou seja o alcance da escala de frequência é fa2 Considere o problema de amostrar um sinal de frequência conhecida e obter uma determinada resolução Procedimento inteiro f f T T M f T s s 0 0 0 0 1 Se M não for inteiro então a resolução desejada não é possível para este sinal e deve se escolher outra até obter um valor inteiro para M Obtido M determinase em seguida as frequências de amostragem possíveis para obter resultado correto no traçado da TF As restrições são Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt inteiro f f f f M N M f N f e f f a s a s a s a 0 2 Como M e fs são conhecidos escolhese um valor de fa 2fs que resulte num N inteiro Exemplo Seja amostrar um sinal de frequência 21Hz com resolução de 015Hz fa fa f f M N f f M s a s 3 20 21 140 140 015 21 0 Logo fa deve ser múltiplo de 3 e maior que 42 Por exemplo fa 45 Observe que qualquer frequência de amostragem fa 45 múltiplo de 3 também atende ao problema Digite o código a seguir e verifique se as especificações são atendidas para várias frequências da forma 45 múltiplo de 3 clearclc fa 45 Ta 1fa fs 21 Ts 1fs T0 140Ts t 0TaT0Ta N lengtht x cos2pifstsin2pifst X fftxN if fixN2 N2 k N21N21 N par else k N121N12 N impar end f kfaN Escala em hertz figure1plottxgrid figure2subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid Múltiplas frequências Quando o sinal possui mais de uma frequência o procedimento é o mesmo Só que neste caso o período fundamental do sinal não é evidente e deve ser calculado pela regra do mínimo múltiplo comum mmc Obtido o período fundamental Ts a frequência fs é fs 1Ts Com fs determinase as restrições para a frequência de amostragem fa Exemplo Considere amostrar o sinal xt cos2π3t sin2π15t cos2π5tπ4 e traçar a FT com uma resolução de 0125Hz Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Determine Ts 2 1 2 15 30 510 3 15 1 5 15 1 310 1 fs mmc mmc Ts Calcule M 4 125 0 50 fo fs M Determine as restrições para fa 10 5 2 2 2 50 4 1 max a a a a a a f f f restrição inteiro f inteiro f fs Mfa N restrição Logo qualquer valor de fa inteiro e maior que 10 atende as condições do problema Veja o código a seguir onde foi empregado fa 11Hz clearclc fa 11 Ta 1fa f1 3 f2 15 f3 5 Ts 2 M 4 T0 MTs f0 0125 t 0TaT0Ta N lengtht x cos2pif1tsin2pif2t cos2pif3tpi4 X fftxN if fixN2 N2 k N21N21 N par else k N121N12 N impar end f kfaN Escala em hertz figure1plottxgrid figure2subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid Digite o código e verifique frequências que atendem e não atendem as restrições acima Exercício Determine a solução do problema para o mesmo sinal e resolução desejada igual a 16 Exercício Considere um sinal com frequências f1 f2 f3fn Demonstre que a condição M fsfo inteiro implica que fifo é também inteiro para 1 i n Solução Seja Ts o mmc de T1 T2 T3Tn Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Então Ts T1k1 T2k2 T3k3 Tnkn onde k1 k2 k3kn são constantes inteiras Logo para qualquer componente do sinal 0 0 0 1 f f Mk f k f f f M k f f inteiro k f f f k f T k T i i i i s i i s i s i i i s i i s Como M e ki são inteiros seu produto é um número inteiro e inteiro f fi 0 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt AUMENTO DA RESOLUÇÃO NO TEMPO Considere que um sinal periódico foi amostrado de modo a produzir uma representação correta em frequência Então temos N pontos do sinal xt no tempo e Xf na frequência Suponha que se deseje uma representação mais completa do sinal no tempo É possível obter tal representação sem ter que amostrar novamente o sinal para qualquer número de pontos desejados empregando o artifício descrito a seguir 1º Passo O vetor de pontos em frequência é separado em duas metades e um vetor de zeros é inserido entre as duas metades formando um vetor com os pontos originais e tantos zeros quantos se queira intercalados N10 N100 N1000 2º Passo Considere que N10 pontos tenham sido inseridos Então agora o número total de pontos em frequência é NN 11N Logo a nova frequência de amostragem agora é ffa NNTo Uma nova escala de frequência para os NN pontos é obtida escrevendo ffffa2ffaNNffa2ffaNN Observe que apesar aumento no número de pontos To não aumentou portanto a resolução em frequência não se alterou Após o fftshift os zeros estarão localizados nas bordas do vetor metade em cada borda Por isto os pontos da fft original permanecerão nas mesmas frequências em que estavam e a representação em frequência não se alterou 3º Passo Agora temos NN pontos em frequência e portanto a Transformada de Fourier Inversa TFI terá também NN pontos O novo período de amostragem é TTa 1ffa e a nova escala para o sinal no tempo então será tt 0TTaT0TTa Veja o código Matlab a seguir Um período de um sinal periódico N10 foi amostrado com fa 10Hz Observe que dobrandose o número de pontos resultará sempre num total de pontos par permitindo utilizar uma escala sempre par A representação do sinal no tempo é muito pobre Empregandose o código podemos obter uma representação exata do sinal com muitos pontos a mais A última figura mostra dois períodos do sinal obtido juntamente com 20 pontos originais AUMENTO DA RESOLUÇÃO NO TEMPO A PARTIR DE PONTOS AMOSTRADOS DESCOMPACTAÇÃO DE DADOS clearclc fa 10 Ta 1fa x 0 01123 12449 12449 01123 0 01123 12449 12449 01123 x x x N lengthx T0 NTa t 0TaT0Ta if fixN2 N2 k N21N21 N par else k N121N12 N impar end f kfaN X fftxN figure1 stemtxgrid figure2subplot211stemffftshiftrealXgrid Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt subplot212stemffftshiftimagXgrid XX X1lengthX2 zeros1100lengthX XlengthX21lengthX N par NN lengthXX ffa NNT0 TTa 1ffa ff ffa2ffaNNffa2ffaNN tt 0TTaT0TTa figure3subplot211stemfffftshiftrealXXgrid subplot212stemfffftshiftimagXXgrid xx ifftXXNN figure4plotttxxgogrid hold on plottxrohold off Com o mesmo código podemos também construir qualquer sinal periódico com qualquer número de pontos escolhido Para isto devese construir um vetor de pontos que desenha o período do sinal desejado Se o período for desenhado com muitos pontos então o sinal será construído empregando mais harmônicos Quando o sinal é descontínuo onda quadrada dente de serra etc então o resultado obtido será sempre uma aproximação AUMENTO DA RESOLUÇÃO NO TEMPO A PARTIR DE PONTOS AMOSTRADOS DESCOMPACTAÇÃO DE DADOS clearclc fa 100 Ta 1fa x 0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 84 x 0 1 2 3 4 5 4 3 2 1 0 1 2 3 4 5 4 3 2 1 x 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 x ones110 zeros110 x x x x 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 05 x 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 x x x x x5 x4 3 2 1 0 0 8 4 2 7 7 9 9 5 4 7 x x x sinal maluco N lengthx T0 NTa t 0TaT0Ta if fixN2 N2 k N21N21 N par else k N121N12 N impar end f kfaN X fftxN figure1 stemtxgrid figure2subplot211stemffftshiftrealXgrid subplot212stemffftshiftimagXgrid XX X1lengthX2 zeros1100lengthX XlengthX21lengthX N par NN lengthXX ffa NNT0 TTa 1ffa ff ffa2ffaNNffa2ffaNN tt 0TTaT0TTa figure3subplot211stemfffftshiftrealXXgrid subplot212stemfffftshiftimagXXgrid xx ifftXXNN figure4plotttxxgogrid hold on plottxrohold off Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt EQUAÇÕES DIFERENCIAIS EQUAÇÕES DE DIFERENÇA A expressão geral para uma equação diferencial linear de coeficientes constantes é Onde rt é a entrada e yt a saída A equação diferencial que descreve a dinâmica de um sistema de 1ª ordem como por exemplo um filtro RC ou um forno é da forma Considerando um período de amostragem T podemos reescrever a equação acima como uma equação de diferenças veja a seguir Sendo o sistema causal podemos considerar yn1 0 e encontrar sucessivamente num procedimento recursivo os valores de yn para qualquer entrada rn Veja o código Matlab a seguir Equação diferencial de 1a ordem comparação entre solução com TL e solução recursiva clearclc fa 100 Ta 1fa a1 2 a0 05 b0 1 t 0Ta20 N lengtht r ones1N y1 0 for i 11lengtht y0 a1a1a0Tay1 b0Taa1a0Tari yi y0 y1 y0 end G tfb0a1 a0 yy lsimGrt figure1plottytyygrid 0 0 1 b r t a y t dt a dy t 1 1 1 0 1 0 0 1 1 0 0 1 1 a T r n a b T a T y n a a n y equação a do rearranjan b r n a y n T y n a T y n a assim T y n n y dt dy t r n r t y n t y M k k M k M k M N k k N k N N k dt r t d b dt y t d a 0 0 Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Assim sendo utilize este código para obter a saída de um filtro passa baixa com RC 2 Aplique um sinal senoidal na entrada do filtro durante 200 segundos para ω igual a ωc10ωc e 100ωc ωc é a frequência de canto do filtro Considere em seguida a expressão geral para uma equação diferencial que descreve a dinâmica de um sistema de 2ª ordem Observe que neste caso é necessário discretizar uma derivada de 2ª ordem O código Matlab a seguir resolve uma equação diferencial de segunda ordem recursivamente e compara o resultado da equação discreta com a contínua Empregando fa 100Hz a diferença já é muito pequena 2a ORDEM clearclc fa 100 Ta 1fa M 1 b 5 k 05 a2 1 a1 05 a0 05 b0 1 t 0Ta20 N lengtht y1 0 y2 0 r ones1N for i 11lengtht y0 1MbTakTa22MbTay1 My2 Ta2ri y0 1a2a1Taa0Ta22a2a1Tay1 a2y2 b0Ta2ri yi y0 y2 y1 y1 y0 end G tf1M b k G tfb0a2 a1 a0 yy stepGt figure2plottytyygrid 0 0 1 2 2 2 b r t a y t dt a dy t dt a d y t 2 1 2 1 2 1 2 2 1 1 1 1 2 0 2 1 2 2 0 1 2 2 2 2 2 2 b T r n a y n a T y n a a T a T a n y do rearranjan e do substituin T y n y n n y dt y t d assim T y n y n d n e T y n y n d n onde T d n n d dt y t d Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt FILTROS DISCRETOS 1 Introdução Um filtro discreto ou filtro digital é uma equação de diferenças ou um algoritmo que pode ser programado para executar filtragem numa sequência de valores discretos amostrados Abordaremos a seguir alguns tipos básicos de filtros discretos de forma bem resumida e objetiva 11 Filtro passa baixa Muito empregado para filtragem de ruídos sempre presentes em medições de variáveis Como estes ruídos têm em geral frequência bem mais alta que o sinal um simples filtro passa baixa de 1ª ordem consegue remover grande parte dele Porém como o filtro também amortece o sinal medido então é necessário ajustar sua constante de tempo já que um amortecimento excessivo pode prejudicar o sistema de controle A equação diferencial que descreve a dinâmica de um filtro de 1ª ordem é da forma Considerando um período de amostragem T podemos reescrever a equação acima como uma equação de diferenças Sendo o sistema causal podemos considerar yn1 0 e encontrar sucessivamente num procedimento recursivo os valores de yn para qualquer entrada rn Veja o código Matlab a seguir Filtro passa baixa de 1a ordem comparação entre solução com TL e solução recursiva clearclc fa 100 Ta 1fa tau 05 wc 1tau t 0Ta100 N lengtht r sinwct y1 0 r t y t dt dy t 1 1 1 r n T T T y n n y equação a do rearranjan r n y n T y n y n T assim T y n n y dt dy t r n r t y n t y Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt for i 11lengtht y0 tautauTay1 TatauTari yi y0 y1 y0 end G tf1tau 1 yy lsimGrt figure1plottytyygrid Para tau 05 e fa 100 a equação a ser programada será y0 09804y1 00196ri Observe que os coeficientes são números complementares com soma sempre igual a 1 1 T T T T T 12 Filtro Complementar Este filtro é empregado em situações onde se deseja combinar as medições obtidas de dois sensores diferentes ponderando mais uma ou outra medição A equação deste filtro na sua forma mais simples é yαy1αx Onde y e x são as duas variáveis medidas e α é um parâmetro de ponderação O valor de α é determinado experimentalmente e se torna cada vez maior aproximandose de 1 quando a frequência de amostragem é grande Para que o filtro funcione é essencial que a soma das ponderações para y e x seja igual a 1 α1α 1 Este filtro encontra uma típica aplicação em IMUs que medem velocidade angular e aceleração como por exemplo o MPU6050 Quando este sensor é empregado no robô segway a variável que se deseja medir é o ângulo ϴ numa direção por exemplo x A maioria das IMUs tem 6 DOF Graus de Liberdade Isso significa que existem 3 acelerômetros e 3 giroscópios no interior da unidade Nesta aplicação os dados do acelerômetro e do giroscópio são empregados para o mesmo propósito obter a posição angular do robô Com a informação do giroscópio podemos obter o ângulo integrando a velocidade angular ao longo do tempo Podemos também obter a posição angular com o acelerômetro na direção x combinandose as acelerações nas direções y e z Em ambos os casos no entanto há um problema que torna os dados muito difíceis de usar sem filtro O problema com acelerômetros Como um acelerômetro mede todas as forças que estão atuando no objeto cada pequena força presente irá perturbar nossa medida significativamente Se estivermos trabalhando em um sistema atuado como o robô as forças que acionam o sistema também estarão visíveis no sensor Por isto os dados do acelerômetro são confiáveis apenas no longo prazo O problema com giroscópios O sinal do giroscópio não é sensível a forças externas Porém devido à integração ao longo do tempo a medição tem a tendência de se desviar não retornando a zero quando o sistema retorna à sua posição original Os dados do giroscópio são confiáveis apenas no curto prazo já que começam a derivar a longo prazo Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt Com o filtro complementar no curto prazo usamos os dados do giroscópio porque é muito preciso e não é suscetível a forças externas No longo prazo usamos os dados do acelerômetro pois ele não apresenta derivação drift A equação do filtro complementar para esta aplicação é Algoritmo para o filtro complementar teta 0 for i 1N teta teta tetagiroT integração teta 098teta tetaacel 002 end Sinais e Sistemas Laboratório Automação PROF Antonius H M de Knegt PROBLEMA DO SORTEIO