Baixe o app para aproveitar ainda mais
Prévia do material em texto
INSTITUTO POLITECNICO CASTELO BRANCO ESCOLA SUPERIOR DE TECNOLOGIA DISCIPLINA DE Processamento de Sinal Digital Curso Engenharia Eletrotécnica e Telecomunicações TRABALHO Nº 1 Aluno: Leandro Tito Manjate Professor: José Salvado Castelo Branco, ao 19 de novembro 2 Índice Introdução ..................................................................................................................................... 3 Resumo Teórico ............................................................................................................................. 4 1 Resultado e Discursão ......................................................................................................... 14 1.1 Exercício 1 ................................................................................................................... 14 1.1.1 Expressões genéricas dos sinais discretos ........................................................... 14 1.1.2 Representação dos sinais discreto no domínio do tempo .................................. 14 1.1.3 Representação do sinal s[n]=0.8*s1[n]- 2 ∗ 𝑠2𝑛 + 2 ∗ 𝑠3[𝑛] ............................. 17 1.1.4 Comentários finais ............................................................................................... 18 1.2 Exercício 2 ................................................................................................................... 19 1.2.1 Gerar e representação do sinal h[n] ................................................................... 19 1.2.2 Obtenção a função do sistema, caraterize o sistema e avalie a sua estabilidade 20 1.2.3 Aplicar no sistema SLIT separadamente, aos sinais s1[n], s2[n], s3[n] ............... 22 1.2.4 Aplicar no sistema SLIT separadamente, aos sinais 0.8*s1[n],2 *s2[n], 2 *s3[n] 24 1.2.5 Comparação entre a resposta do sinal s[n] da alínea 3 do exercício 1 e a resposta que resulta da combinação y[n]=y1[n]-y2[n]+y3[n] ............................................. 26 1.3 Exercício 3 ................................................................................................................... 28 1.3.1 Determinação e representação das respostas individuais e estes sinais ............ 28 1.3.2 Resultado da resposta y[n]=y1[n-d1]-y2[n-d2]+y3[n-d3] e comparação com o sinal do exercício anterior ................................................................................................... 30 1.3.3 Calculo de DFT ..................................................................................................... 32 1.4 Exercício 4 ................................................................................................................... 37 2 Conclusão ............................................................................................................................ 39 3 Bibliografia .......................................................................................................................... 40 ´ 3 Introdução No presente trabalho será apresentado a resolução do enunciado fornecida pelo professor que consiste em consolidar as respetivas matérias: Sistema Discreto, Teorema de amostragem, Transformada de Fourier discreta, Transformada de Fourier discreta inversa. Para a resolução desses problemas será utilizada uma ferramenta denominada Matlab. O trabalho possui um resumo teórico e possui o resultado e os comentários da resolução dos quatros exercícios do enunciado. 4 Resumo Teórico Teorema da Amostragem A sobreposição das diferentes parcelas de X(ejw) é inconveniente do ponto de vista da representação de um sinal contínuo por uma sua amostragem, uma vez que da transformada de Fourier do sinal discreto não é possível recuperar novamente a transformada de Fourier do sinal contínuo. A recuperação apenas será possível se as diferentes parcelas de não se sobrepuserem, isto é, se ocuparem regiões diferentes de w. Uma condição a que Xc(jW) tem de obedecer é ocupar uma região limitada de W, isto é, xc(t) tem de ser um sinal com espectro (transformada de Fourier) de banda limitada. Outra condição é a frequência angular de amostragem 2p/T ser tal que as contribuições das diferentes parcelas de X(ejw) não se sobreponham, isto é, 2p/T > 2WM, em que WM é a frequência limite superior de banda do sinal, em radianos por segundo. Um sinal contínuo com espectro de banda limitada ao intervalo [-WM , WM] deve ser amostrado a uma frequência angular igual ou superior a 2WM, para ser possível a sua reconstrução exata a partir do sinal discreto resultante. Aliasing O fenómeno do aliasing ocorre quando não se verificam as condições do teorema da amostragem, e resulta da sobreposição das diferentes parcelas de X(ejw). Quando WM > p/T, tudo se passa como se as partes do espectro de Xc(jW) exteriores ao intervalo [-p/T, p/T] se fossem dobrando sucessivamente em torno destas frequências. Sistemas Discretos no Tempo Um sistema discreto no tempo é definido matematicamente como uma transformação que mapeia uma sequência de entrada x[n] em uma sequência de saída y[n]. Isso pode ser denotado por: y[n]=T{x[n]} Alguns exemplos ilustram sistemas simples: 1) Sistema de atraso ideal: y[n] = x[n – nd], - <n < A seguir, destacamos algumas importantes propriedades dos sistemas. 1) Um sistema é dito sem memória (memoryless systems) se a saída y[n] a cada valor de n depende apenas da entrada x[n] no mesmo valor de n. 5 Ex: y[n] = {x[n]}2 2) Um sistema é linear se obedece ao princípio da superposição. Ou seja: 3)Um sistema é invariante no tempo é um sistema no qual um deslocamento no tempo (ou atraso) da sequência de entrada gera um deslocamento correspondente na seqüência de saída. Ou seja, suponha um sistema que transforma uma seqüência de entrada x[n] na seqüência de saída y[n]. Se a seqüência de entrada sofre um deslocamento de n0, x[n] = x[n – n0], então a seqüência de saída torna-se y[n] = y[n – n0]. Ex: Um sistema de atraso ideal é um sistema invariante no tempo. Ex: O seguinte exemplo mostra um sistema que não é invariante no tempo: y[n] = x[M.n], - <n < 4) Um sistema é dito causal se ele não depende de valores futuros da sequência. Ou seja, o valor de y[n1] pode ser calculado apenas com valores de x[n] para n n1. Ex: Um sistema não causal: y[n] = x[n + 1] – x[n] 5) Um sistema é dito estável se toda entrada limitada provoca uma saída limitada. Assim, se, para todo n, |x[n]| B < , para algum valor finito B, então |y[n]| C < , para algum valor finito C. 1.3 Sistemas Lineares e Invariantes no Tempo Uma classe importante de sistemas consiste naqueles que são lineares e invariantes no tempo. Como dito acima, os sistemas lineares são aqueles que obedecem ao princípio da superposição. Se a propriedade da linearidade é combinada com a representação de uma sequência geral como uma combinação de impulsos, então um sistema linear pode ser completamente caracterizado pela sua resposta ao impulso. Seja hk[n] a resposta do sistema a [n – k]. Assim, como: Pelo princípio da superposição, podemos escrever: 6 De acordo com essa equação, a resposta do sistema a qualquer entrada pode ser expressa em termos da resposta a [n – k]. A propriedade da invariância no tempo implica que, se h[n] é a resposta a [n], então a resposta a [n - k] é h[n – k]. Com isso, podemos dizerque: Como consequência, um sistema linear invariante no tempo é completamente descrito por sua resposta ao impulso. Essa equação é conhecida como soma de convolução (convolution sum) que pode ser representada pela notação: Apesar da semelhança na notação, deve-se salientar que a soma de convolução para sinais discretos não é uma aproximação da integral de convolução. Propriedades da soma de convolução: 1) Comutatividade: x[n]*h[n] = h[n]*x[n] 2) Distributividade: x[n]*(h1[n] + h2[n]) = x[n]*h1[n] + x[n]*h2[n] 3) Conexão em Cascata 4) Conexão em Paralelo 5) Causalidade Como definido anteriormente, um sistema é dito causal se sua resposta não depende de eventos futuros. Ou seja, para calcular a saída de y[n0], precisamos apenas de x[n], n n0. Isso implica na condição: 7 h[n] = 0, n < 0 Assim, para testar a causalidade basta testar se h[n] = 0 para n<0. 6) Estabilidade A estabilidade é garantida se: Para qualquer que seja a entrada x[n] de um sistema: x[n]* [n] = x[n] Assim, em geral, se um sistema linear invariante no tempo tem uma resposta ao impulso h[n], então seu sistema inverso, se existir, tem resposta ao impulso hi[n] definida pela relação: h[n]*hi[n] = hi[n]*h[n] = [n] Uma classe importante de sistemas lineares invariantes no tempo consiste daqueles para os quais x[n] e y[n] se relacionam através de uma equação de diferenças de coeficientes constantes lineares de n-ésima ordem da forma: Representação de Sequências pela Transformada de Fourier Assim como sinais do contínuo, os sinais discretos no tempo também podem ser representados de formas diferentes. Uma das formas mais utilizadas é através da transformação do sinal para o domínio da frequência através da Transformada de Fourier. Muitas sequências podem ser representadas por uma integral de Fourier da forma: onde X(ejw) é dada por: 8 A Transformada Discreta de Fourier Na prática, definimos a Transformada Discreta de Fourier (DFT) como o período primário da DFS. Essa DFT é a transformada de Fourier para sequências arbitrárias de duração finita. Primeiro, definimos a sequência de duração finita x[n] que tem N amostras sobre 0 n N – 1 como uma sequência de N-pontos. Seja x ~ [n] um sinal periódico de período N, criado usando uma sequência de N-pontos x[n]; isto é: O teorema da amostragem no domínio da frequência diz que, se x[n] é de duração finita ([0, N-1]), então N amostras de X(z) no círculo unitário determinam X(z) para todo z. Nesse sentido, N eqüidistantes amostras da transformada de Fourier discreta no tempo X(ejw) da sequência de N-pontos x[n] pode reconstruir unicamente X(ejw). Essas N amostras ao redor do círculo unitário são chamdas de coeficientes da transformada discreta de Fourier. Seja X ~ [k] =DFSx ~ [n], que é uma sequência periódica (e assim de duração finita). Seu intervalo primário é então a transformada discreta de Fourier, que é de duração finita. Essas noções são claras na seguinte definição. A Transformada Discreta de Fourier de uma sequência de N-pontos é dada por: Note que X[k] também é uma sequência de N-pontos, ou seja, ela não é definida fora do intervalo de 0 k N – 1. A transformada discreta de Fourier inversa de uma DFT de N-pontos X[k] é dada por: Ou Novamente, x[n] não é definida fora do intervalo 0 n N – 1. A extensão de x[n] fora desse intervalo é x ~ [n]. 9 Propriedades da Transformada Discreta de Fourier 1) Linearidade Dadas duas sequências periódicas com período N, x1[n] e x2[n], e suas respetivas DFTs X1[k] e X2[k], então: a.x1[n] + b.x2[n] a.X1[k] + b.X2[k] 2) Deslocamento de uma sequência Seja x[n] uma sequência periódica com coeficientes de Fourier X[m]. Assim: 3) Dualidade 4) Simetria A simetria pode poupar muito esforço computacional. Quando a seqüência do sinal for real, então X[N − m]* = X[m]. Ou seja, basta que calculemos as componentes de X[m] para 0 ≤ m ≤ N/2 . Prova: Logo Se x[n] for real: 10 5) Convolução Periódica onde o lado esquerdo da igualdade é conhecido como convolução, representado por x1[n]*x2[n]. É importante observar que o somatório ocorre no intervalo 0 mN-1. O valor de x2[n – m] se repete periodicamente fora desse intervalo. A Transformada Z A Transformada Z (TZ) é uma ferramenta matemática poderosa para análise de sinais e sistemas. A transformada Z constitui a forma discreta da transformada de Laplace. Seja a Transformada de Fourier (TF) de uma sequência dada por: Seja z = ejw. Temos então, a TZ definida como: Essa é chamada também de TZ bilateral. A transformada unilateral é dada por: A Transformada Z não converge para todos os valores de Z. Onde a TZ converge é chamada de região de convergência (ROC – Region of Convergence). Para garantir a convergência é preciso que: Assim, é possível que TZ convirja mesmo se a TF não convergir. Para a TF convergir, a ROC da TZ deve conter o círculo unitário. Uma transformada Z só está completamente definida se sua ROC estiver determinada. 11 Entre as mais úteis e importantes TZs estão aquelas para as quais X(z) é uma função racional dentro da região de convergência, i.e.: onde P(z) e Q(z) são polinômios em z. Os valores de z que fazem X(z) = 0 são chamados de zeros de X(z). Os valores de z para os quais X(z) tende a infinito são chamados de pólos de X(z). Os pólos de X(z) são as raízes do polinômio do denominador. Propriedades da Transformada Z Comentários: A prova de tal propriedade vem diretamente da definição de transformada Z: Comentários: Suponha que y[n] = x[n – n0]. Logo: Fazendo m = n – n0: 12 c) Multiplicação por uma exponencial discreta: anx[n] X(z/a), ROC = |a|ROCX Comentários: Tal que: Se mudarmos a ordem dos somatórios: Fazendo no segundo somatório m = n – k, temos: Assim, para valores de z dentro das regiões de convergência para X1(z) e X2(z), podemos escrever: 13 ~ Comentários: Essa propriedade pode ser facilmente provada diferenciando a definição da TZ: Fazendo m = -n, temos: 14 1 Resultado e Discursão Aqui serão apresentados os resultados e os comentários obtidos dos códigos em matlab 1.1 Exercício 1 No exercício elaborado pelo professor foi considerado os seguintes sinal no domínio do tempo 𝑠1(𝑡) = 1. 5sin(𝑤3 ∗ 𝑡 + 3𝜋 4 ), 𝑠2(𝑡) = 1.5 cos(𝑤2 ∗ 𝑡) 𝑠3(𝑡) = 0.8 cos(𝑤3 ∗ 𝑡 + 3𝜋 4 ) em que f1=200Hz,f2=5*f1 e f3=3*f1. 1.1.1 Expressões genéricas dos sinais discretos Primeiramente convertemos os sinais contínuos em cima para um sinal discreto e obtivemos como resultado os seguintes. 𝑠1[𝑛] = 1.5 sin(2 ∗ 𝜋 ∗ 𝑓1 𝑓𝑠 ∗ 𝑛 − 𝜋 4 ), 𝑠2[𝑛] = 1.5 cos (2 ∗ 𝜋 ∗ 𝑓2 𝑓𝑠 ∗ 𝑛), 𝑠3[𝑛] = 1.5 cos(2 ∗ 𝜋 ∗ 𝑓3 𝑓𝑠 ∗ 𝑛 − 𝜋 4 ) 1.1.2 Representação dos sinais discreto no domínio do tempo Em seguida foi feito um código para representar os sinais discreto no domínio do tem uma frequência de amostragem com o valor de 11025Hz.Para determina o numero de amostras que o sinal teria usamos a seguinte formula. 𝑀 = 𝑡𝑓−𝑡𝑖 𝑇𝑠 =(tf-ti)*fs No exercício foi dado um intervalode tempo que variava de 0 até 5ms. Usando e substituindo a equação com os valores fornecidos tivemos como o resultado 55.1250, porém não existe amostras decimais então o numero de amostras foi arredondado para 50 amostras. Para representar os sinais foi elaborado o seguinte código. %Resolução de 1.2 ti=0; %tempo inicial tf=5e-3; %tempo final fs=11025; %frequencia de amostragem f1=200; %frequencia do sinal 1 f2=5*f1; %frequencia do sinal 2 f3=3*f1; %frequencia do sinal 3 M=(tf-ti)*fs; %numero de amostra que podem ser representado no dominio do tempo 15 M=floor(M); %Arrendondamento por defeito n=0:M-1 %Variação de n desde 0 até o valor M-1 s1=1.5*sin(2*pi*f1/fs*n-pi/4); %Sinal s1[n] s2=1.5*cos(2*pi*f2/fs*n); %Sinal s2[n] s3=0.8*cos(2*pi*f3/fs*n+3*pi/2); %Sinal s3[n] S1k=fft(s1) %Transforma o sistema para o dominio da frequencia S2k=fft(s2) %Transforma o sistema para o dominio da frequencia S3k=fft(s3) %Transforma o sistema para o dominio da frequencia figure(1); subplot(2,1,1); stem(n,s1) %representação grafica da figura s1[n] title('Sinal com f1=200Hz no dominio do tempo') xlabel('sequencia') ylabel('Amplitude') subplot(2,1,2); stem(n,abs(S1k)) title('Sinal com f1=200Hz no dominio da frequencia') xlabel('sequencia') ylabel('Amplitude') Tabela 1 Código do exercício 1.1 Com o código acima obtivemos as figuras abaixo. Figura 1 Representação do sinal s1(n) no domínio do tempo e frequência O sinal senoidal possui uma frequência de 200Hz, porém a frequência de amostragem possui 11025hz assim obedecendo o teorema de amostra de amostragem que consiste que a frequência de amostragem dever ser no mínimo duas vezes a frequência do sinal máximo. 16 Figura 2 Sinal s2[n] no domínio do tempo e fr No sinal acima o sinal cosinusoidal foi aumentado 5 vezes mais, porém o sinal da amostragem ainda obedece o teorema de amostragem. O sinal ficou 5 vezes mais rápida em relação ão sinal 1. Figura 3 Sinal s3[n] no domínio do tempo No sinal acima o sinal cosenuoidal foi aumentado 3 vezes mais, porém o sinal da amostragem ainda obedece o teorema de amostragem. 17 1.1.3 Representação do sinal s[n]=0.8*s1[n]- √2 ∗ 𝑠2[𝑛] + √2 ∗ 𝑠3[𝑛] Nessa alínea o professo pediu a representação da s[n]. Para a sua representação foi acrescentado o código abaixo dando continuidade dos códigos escritos anteriormente. %Resolução do exercicio 1.3 s=0.8*s1+sqrt(2)*s2+sqrt(2)*s3 % o sinal Sk=fft(s) figure(4); subplot(2,1,1); stem(n,s); %representação grafica da figura s[n] title('Sinal no dominio do tempo com sn=0.8*s1[n]- sqrt(2)*s2[n]+sqrt(2)*s3[n]'); xlabel('sequencia') ylabel('Amplitude') subplot(2,1,2); stem(n,abs(Sk)) title('Sinal no dominio do tempo com sn=0.8*s1[n]- sqrt(2)*s2[n]+sqrt(2)*s3[n]'); xlabel('sequencia') ylabel(' modulo de Amplitude') Tabela 2 Código para a representação do sinal s[] Com o código acima obtivemos o gráfico abaixo. Figura 4 Representação do sinal s[n no domínio do tempo e da frequência] Foi verificado que o sinal foi reconstituído corretamente isso porque como o resultado final foi constituído através de três sinal com frequência diferente foi considerado a 18 frequência máxima para verificar o teorema de amostragem. A frequência de amostragem continua ainda sendo duas vez maior que a frequência máxima do sinal. 1.1.4 Comentários finais Foi observado que todas figuras obedecem o teorema de nyquist que afirma que uma frequência de amostragem deve ser no mínimo duas vezes a frequência máxima. Assim verificamos também quando menor for a duas vezes a frequência máximo do sinal em relação a frequência de amostragem melhor é representado o sinal e os espectros de amplitude no domínio da frequência ficam mais distantes um do outro. É em nenhum dos sinais verificamos o aliasing isso porque os sinal no domínio da frequência possui um banda guarda . 19 1.2 Exercício 2 Nesse exercício foi considerado um sistema linear invariante no domino do tempo que era caracterizado por uma resposta de impulsional h[n]=2 ∗ [(0.8)𝑛−2] ∗ {𝑢[𝑛 + 2] − 𝑢[𝑛 − 7]}. Nesse exercício para representar as sequencias de degrau unitário criamos uma função que foi atribuído o nome de stepseq.m e escrevemos o código abaixo. function [x,n]=stepseq(n0,n1,n2) %Gera x[n]=u[n-n0];n1<=n<=n2 %[x,n]=stepseq[n0,n1,n2] n=[n1:n2]; x=(n-n0)>=0; end Figura 5 Função que forma sequência de degrau unitário Podemos ver que a função precisa de três parâmetros onde n0 é o valor de atraso ou avanço, o n1 é o valor da sequencia inicial, e o n2 é o valor da sequencia final 1.2.1 Gerar e representação do sinal h[n] Para a criação do sinal foi escrito um código em matlab. %% Resolução do Exercicio 2 edit stepseq.m %Serve para importar a função stepseq. %O ficheiro stepseq deve estar na mesma pasta com o ficheiro exercicio2.m %A função stepseq faz os nin=-10; %sequencia inicial nfin=10; %sequencia final n=nin:nfin; %sequencia das amostras x1=2.*(0.8.^(n-2)); % 2*2.*(0.8.^(n-2)) x2=stepseq(-2,nin,nfin)-stepseq(7,nin,nfin); % h=x1.*x2; figure(1); stem(n,h); Na criação da resposta do impulsional, criei duas variáveis para facilitar as operações e diminuir a minha probabilidade de criar erros. No x1 coloque a sequencia exponencial e o x2 coloquei, as duas sequencias de impulso. Depois multipliquei e obtive a resposta do impulsional que é a figura abaixo. 20 Figura 5 Representação da resposta impulsional Comentários Podemos verificar que o sinal começa na sequencia -2 e termina na sequencia 7 isso deve se pelo facto da seguinte operação 𝑢[𝑛 + 2] − 𝑢[𝑛 − 7] que o seu resultado produz um sinal unitário que varia de -2 até 6. Multiplicado essa parte unitária com a exponencial resultou a figura acima. Desde a sequencia 7 para frente o sinal exponencia é multiplicado por zero então o resultado do zero. Portanto no espectro verificamos uma propriedade pelo nome de modulação. 1.2.2 Obtenção a função do sistema, caraterize o sistema e avalie a sua estabilidade Aqui será obtido a função do sistema do sinal h[n]=2 ∗ [(0.8)𝑛−2] ∗ {𝑢[𝑛 + 2] − 𝑢[𝑛 − 7]}. H[z]=2 ∗ [(0.8)𝑛(0.8)−2] ∗ {𝑢[𝑛 + 2] − 𝑢[𝑛 − 7]}. H[z]=3.123 ∗ [(0.8)𝑛] ∗ {𝑢[𝑛 + 2] − 𝑢[𝑛 − 7]}. H[z]=3.123 ∗ [(0.8)𝑛] ∗ {𝑢[𝑛] ∗ (𝑧)2 − 𝑢[𝑛] ∗ (𝑧)−7}. H[z]=3.123 ∗ [(0.8)𝑛] ∗ 𝑢[𝑛] ∗ (𝑧)2 − 𝑢[𝑛] ∗ (𝑧)−7*3.123 ∗ [(0.8)𝑛] Usando a formula da tabela 21 H[z]=(𝑧)2 ∗ 0.8∗(𝑧)−1 (1−0.8(𝑧)−1)2 − (𝑧)−7 ∗ [ 0.8∗(𝑧)−1 (1−0.8(𝑧)−1)2 ] H[z]= 0.8∗(𝑧)1 (1−0.8(𝑧)−1) 2 − [ 0.8∗(𝑧)−8 (1−0.8(𝑧)−1) 2 ] H[z]= 0.8∗(𝑧)1−0.8∗(𝑧)−8 (1−0.8(𝑧)−1) 2 H[z]= 0.8∗(𝑧)1−0.8∗(𝑧)−8 (1−0.8(𝑧)−1)∗(1−0.8(𝑧)−1) = 0.8∗(𝑧)1−0.8∗(𝑧)−8 1− 0.8(𝑧)−1−0.8(𝑧)−1+0.640(𝑧)−2 H[z]= 0.8∗(𝑧)1−0.8∗(𝑧)−8 1−0.16(𝑧)−1+0.640(𝑧)−2 H[z]= 0.8∗(𝑧)1−0.8∗(𝑧)−8 1−0.16(𝑧)−1+0.640(𝑧)−2* (𝑧)2 (𝑧)2 H[z]= 0.8∗(𝑧)3−0.8∗(𝑧)−6 (𝑧)2−0.16(𝑧)1+0.640 z1= 0.16+√(0.16)3 −4∗1∗0.640 2∗1 =0.08+0.796j z2= 0.16−√(0.16)3 −4∗1∗0.640 2∗1 =0.08-0.796j |z1|=|0.08+0.796j|=0.8 |z2|=|0.08-0.796j|=0.8 |z2|=|z1|=0.8 e 0.8<1 Como o modulo das raízes possui um valor menor que 1 significa que é um sistema BIBO logo é estável.As suas raízes estão dentro do circulo unitário. 22 1.2.3 Aplicar no sistema SLIT separadamente, aos sinais s1[n], s2[n], s3[n] Nessa alínea será feita a convolução de cada sinal com a resposta impulsional.Para fazer essa tarefa elaboramos o código abaixo. %Sinal s1[1],s[2],s[3] ti=0; %tempo inicial tf=5e-3; %tempo final fs=11025; %frequencia de amostragem f1=200; %frequencia do sinal 1 f2=5*f1; %frequencia do sinal 2 f3=3*f1; %frequencia do sinal 3 M=(tf-ti)*fs; %nA que podem ser representado no dominio do tempo M=floor(M); %Arrendondamento por defeito n=0:1:M-1 %Variação de n desde 0 até o valor M-1 s1=1.5*sin(2*pi*f1/fs*n-pi/4); %Sinal s1[n] s2=1.5*cos(2*pi*f2/fs*n); %Sinal s2[n] s3=0.8*cos(2*pi*f3/fs*n+3*pi/2); %Sinal s3[n] y1=conv(h,s1) %Convulução do sinal s1[n] e h[n] y2=conv(h,s2) %Convulução do sinal s2[n] e h[n] y3=conv(h,s3) %Convulução do sinal s3[n] e h[n] figure(2) stem(y1) %Representação do sinal de convolução y1[n] title('Sinal da saida y1[n]') xlabel('sequencia') ylabel('Amplitude') figure(3) stem(y2) %Representação do sinal de convolução y2[n] title('Sinal da saida y2[n]') xlabel('sequencia') ylabel('Amplitude') figure(4) stem(y3) %Representação do sinal de convolução y3[n] title('Sinal da saida y3[n]') xlabel('sequencia') ylabel('Amplitude') Através do código acima foi gerado os gráficos abaixo. 23 Figura 6 Representação da convolução s1[n]*hn] Figura 7 Representação da convolução s2[n]*hn] Figure 8 Representação da convolução s3[n]*hn] As imagens acima representam a saída da convolução de dois sinais em que matematicamente consiste na equação abaixo. 24 A sua saída consiste no somatório da multiplicação com um do sinal estatístico com o outro invertido e deslocando o sinal até ao ponto onde a representação da amostra é igual a zero. Observamos que o resultado somente começa a variar qua esta na sequencia aproximadamente 7 ou 8. Dos valores mencionado para trás é zero. E qua e no final das amostras o sinal comporta- se como fosse uma exponencial invertida. 1.2.4 Aplicar no sistema SLIT separadamente, aos sinais 0.8*s1[n],√2 *s2[n], √2 *s3[n] Para a representação dos sinais discreto no domínio do tempo utilizamos os códigos abaixo. %Resolução do exercicio 2.5 s11=0.8*s1; s22=sqrt(2)*s2; s33=sqrt(2)*s3; y11=conv(s11,h) % y22=conv(s22,h) y33=conv(s33,h) figure(8) stem(y11) title('Sinal da saida y11[n]') xlabel('sequencia') ylabel('Amplitude') figure(9) stem(y22) title('Sinal da saida y22[n]') xlabel('sequencia') ylabel('Amplitude') figure(10) stem(y33) title('Sinal da saida y3[n]') xlabel('sequencia') ylabel('Amplitude') Através dos códigos escritos acima foi obtido os gráficos abaixo. 25 Figura 12 Convolução 0.8.s1[n]*h[] Figure 13 Convolução √2 .s2[n]*h[n] Figura 14 Convolução √2 .s3[n]*h[n] 26 Comentário Através da figura foi possível observar que colocar um valor de escalar nas suas respetivas entradas afeta a saída da convolução é afetada pelo o mesmo fator escalar. 1.2.5 Comparação entre a resposta do sinal s[n] da alínea 3 do exercício 1 e a resposta que resulta da combinação y[n]=y1[n]-y2[n]+y3[n] Para representar a comparação entre os sinais foi escrito o seguinte código. %Resolução do exercico 2.6 s=s11+s22+s33; %Sinal do exercicio 1 da alinea 3 yfinalS=conv(s,h); %Convolução do sinal s[n] e h[n] yfinal=y11-y22+y33; %Somatorio de y[n]=y1[n]- y1[n]+y1[n]+y1[n] figure(11) subplot(2,1,1); stem(yfinalS) title('Sinal da saida ys[n]') xlabel('sequencia') ylabel('Amplitude') subplot(2,1,2); stem(yfinal) title('Sinal da saida y[n]') xlabel('sequencia') ylabel('Amplitude') Através do código acima foi obtido o sinal abaixo. Figura 15 Comparação Convolução do sinal s[n] e h[n] e a combinação y[n]=y1[n]-y2[n]+y3[n] 27 Comentário Pode se verificar que o sinal obedece a a propriedade de linearidade, e é obedecida porque a combinação dos sinais na entrada é igual a combinação dos sinais na saída. Podemos observar que ambos os sinais começam a varias depois dos 10, e como possuem frequências diferentes possui varias variações e como foi convoluindo como uma exponencial quase no final dos sinais aparece uma exponencial. 28 1.3 Exercício 3 Nesse exercício será utilizado os sinais anteriores, porém com atrasos e avanços. Nesse SLIT devem ser aplicados separadamente os sinais 0.8*s1[n+3], √2 *s2[n-4], √2 *s3[n-1]. 1.3.1 Determinação e representação das respostas individuais e estes sinais Para a representação das respostas dos sinais foi feito a convolução com a resposta impulsional e o sinal individualmente. Para gerar a resposta foi usado o código abaixo. %1a Serie de Problemas de Processamento Digital de Sinais (ano lectivo 2017/2018) %20150263-Leandro Tito Manjate %Resolução de exercicio 3.1 %Resolução sa alinea 3.1 clear all;close all; edit stepseq.m %Resposta do exercicio 3.1 ti=0; %tempo inicial tf=5e-3; %tempo final fs=11025; %frequencia de amostragem f1=200; %frequencia do sinal 1 f2=5*f1; %frequencia do sinal 2 f3=3*f1; %frequencia do sinal 3 M=(tf-ti)*fs; %numero de amostra que podem ser representado no dominio do tempo M=floor(M); %Arrendondamento por defeito n1=3:M-1+3 n2=-4:M-1-4 n3=-1:M-1-1 %Variação de n desde 0 até o valor M-1 s1=1.5*sin(2*pi*f1/fs*n1-pi/4); %Sinal s1[n+3] s2=1.5*cos(2*pi*f2/fs*n2); %Sinal s2[n-4] s3=0.8*cos(2*pi*f3/fs*n3+3*pi/2); %Sinal s3[n-1] s1=0.8*s1 %Sinal 0.8*s1[n+3] s2=sqrt(2)*s2 %Sinal sqrt(2)*s1[n+3] s3=sqrt(2)*s3 nin=-10; %sequencia inicial nfin=10; %sequencia final n=nin:nfin; 29 x1=2.*(0.8.^(n-2)); % 2*2.*(0.8.^(n- 2)) x2=stepseq(-2,nin,nfin)-stepseq(7,nin,nfin); % h=x1.*x2; y1=conv(s1,h); y2=conv(s2,h); y3=conv(s3,h); figure(1); stem(y1); title('Sinal da saida y1[n]') xlabel('sequencia') ylabel('Amplitude') figure(2); stem(y2); title('Sinal da saida y2[n]') xlabel('sequencia') ylabel('Amplitude') figure(3); stem(y3); title('Sinal da saida y3[n]') xlabel('sequencia') ylabel('Amplitude') Atravésdos códigos acimas foi obtido os gráficos abaixo. Figura 16 Convolução entre 0.8*s1[n+3] e h[n] 30 Figura 17 Convolução entre √2 *s2[n-4]e h[n] Figura 18 Convolução entre √2 *s3[n-1].e h[n] Comentários Pelos gráficos foi possível verificar que ao colocar um deslocamento no sinal de entrada que o seu sinal de saída era também deslocado isso acontece pelo facto do sistema ser invariante no tempo. 1.3.2 Resultado da resposta y[n]=y1[n-d1]-y2[n-d2]+y3[n-d3] e comparação com o sinal do exercício anterior Com base das saídas da alínea anterior foi feita a combinação y[n]=y1[n-d1]-y2[n-d2]+y3[n-d3] e a comparação entre o resultado desse exercício e exercício anteriorcom o código abaixo. ti=0; %tempo inicial tf=5e-3; %tempo final fs=11025; %frequencia de amostragem 31 f1=200; %frequencia do sinal 1 f2=5*f1; %frequencia do sinal 2 f3=3*f1; %frequencia do sinal 3 M=(tf-ti)*fs; %numero de amostra que podem ser representado no dominio do tempo M=floor(M); %Arrendondamento por defeito n=0:M-1 %Variação de n desde 0 até o valor M-1 s1=1.5*sin(2*pi*f1/fs*(n+3)-pi/4); %Sinal s1[n+3] s2=1.5*cos(2*pi*f2/fs*(n-4)); %Sinal s2[n-4] s3=0.8*cos(2*pi*f3/fs*(n-1)+3*pi/2); %Sinal s3[n-1] s1=0.8*s1 %Sinal 0.8*s1[n+3] s2=sqrt(2)*s2 %Sinal sqrt(2)*s1[n+3] s3=sqrt(2)*s3 nin=-10; %sequencia inicial nfin=10; %sequencia final n=nin:nfin; x1=2.*(0.8.^(n-2)); % 2*2.*(0.8.^(n- 2)) x2=stepseq(-2,nin,nfin)-stepseq(7,nin,nfin); % h=x1.*x2; y1=conv(s1,h); y2=conv(s2,h); y3=conv(s3,h); figure(1); stem(y1); title('Sinal da saida y1[n]') xlabel('sequencia') ylabel('Amplitude') figure(2); stem(y2); title('Sinal da saida y2[n]') xlabel('sequencia') ylabel('Amplitude') figure(3); stem(y3); title('Sinal da saida y3[n]') xlabel('sequencia') ylabel('Amplitude') Com o código acima foi obtido a figura abaixo. 32 Figure 19 y[n]=y1[n-d1]-y2[n-d2]+y3[n-d3] Comentário Ao comparar o sinais podemos observar que na entrada quando colocamos um deslocamento a sua saída também sofre deslocamento e isso acontece porque o sistema é invariante ao longo do tempo.No sinal do exercício anterior como o sinal na entrada não sofreu um deslocamento, a sua saída também não sofre nenhum deslocamento. 1.3.3 Calculo de DFT 1.3.3.1 Da alínea 1 Nessa parte será feito a transformada rápida discreta do Fourier, para resolução desse problemas, mas escrever o código abaixo. %Resposta do exercicio 3.3 %Resolução de DTF da alinea 3.1 Y1=fft(y1); Y2=fft(y2); Y3=fft(y3); figure(1) subplot(211) stem(abs(Y1)) title('Transformada de Fourie do Y1[n] no modulo') xlabel('sequencia') ylabel('Amplitude') subplot(212) stem(angle(Y1)) 33 title('Transformada de Fourie do Y1[n] no fase') xlabel('sequencia') ylabel('Angulo') hold on figure(2) subplot(211) stem(abs(Y2)) title('Transformada de Fourie do Y1[n] no modulo') xlabel('sequencia') ylabel('Amplitude') hold on subplot(212) stem(angle(Y2)) title('Transformada de Fourie do Y2[n] no modulo') xlabel('sequencia') ylabel('Angulo') hold on figure(3) subplot(211) stem(abs(Y3)) title('Sinal da saida y3[n] desse exercicio') xlabel('sequencia') ylabel('Amplitude') hold on subplot(212) stem(angle(Y3)) title('Sinal da saida y3[n] desse exercicio') xlabel('sequencia') ylabel('Amplitude' Através dos códigos acima obtivemos gráfico da transformada de Fourier rápida por definição. Figure 20 Transformada de Fourier da saída Y1[K] 34 Figura 21 Transformada de Fourier de saída Y2[k] Figura 22 Transformada de Fourier de saída Y3[k] Comentário Podemos verificar que a energia do sinal foi divido em dois, uma parte esta centralizada nas frequências negativas e outra nas frequências positivas. Por isso observamos que uma parte é igual a outra parte. Ao usar a função fft() passamos o sinal para o domínio da frequência e podemos observar que ao passar para o tal,o deslocamento do sinal não influencia as frequências e obedece a propriedade de linearidade. 1.3.3.2 DTF do sinal resultante da alínea 4 da alínea anterior Nesse caso para resolução desses problemas utilizamos os resultados da resposta de saída do sinal do exercício da alínea 4 e fizemos a transformada rápida de Fourier para encontrar a resposta do que foi pedido. Para resolução do problema fizemos o código abaixo. s11=1.5*sin(2*pi*f1/fs*n-pi/4); %Sinal s1[n] 35 s22=1.5*cos(2*pi*f2/fs*n); %Sinal s2[n] s33=0.8*cos(2*pi*f3/fs*n+3*pi/2); %Sinal s3[n] y11=conv(h,s11) %Convulução do sinal s1[n] e h[n] y22=conv(h,s22) %Convulução do sinal s2[n] e h[n] y33=conv(h,s33) %Convulução do sinal s2[n] e h[n] Y1k=fft(y11) Y2k=fft(y22) Y3k=fft(y33) figure(9) subplot(211) stem(abs(Y1k)) subplot(212) stem(angle(Y1k)) figure(10) subplot(211) stem(abs(Y2k)) subplot(212) stem(angle(Y2k)) figure(11) subplot(211) stem(abs(Y3k)) subplot(212) stem(angle(Y3k)) Através do código anterior obtivemos o resultado abaixo. Figura 23 Transformada de Fourier discreta da saída y1[n] da alínea 4 do exercício anterior 36 Figura 24 Transformada de Fourier discreta da saída y2[n] da alínea 4 do exercício anterior O gráfico acima possui mais espectro de frequência com amplitude diferente. Figura 25 Transformada de Fourier discreta da saída y3[n] da alínea 4 do exercício anterior Comentários Fazendo comparações entres a DFT da figura 20 e 23, figura 21 e 24, figura 22 e 25. Observamos que os módulos das amplitudes são iguais porque os ângulos são diferentes. O deslocamento do sinal não afeta a amplitude e nem a frequência do sinal, porém afeta o desfasamento do sinal. No espectro onde aparece o modulo verificamos que a energia do sinal é dividida em dois. Um parte da sua energia esta centralizada nas frequências negativas e outra parte esta centralizada nas frequências positivas. 37 1.4 Exercício 4 Nesse exercício será feita a obtenção do sinal Y[n]=Y1[n]-Y[n]+Y3[n] que vem da resposta impulsional h[n]=2 ∗ [(0.8)𝑛−2] ∗ {𝑢[𝑛 + 2] − 𝑢[𝑛 − 7]}. Com os sinais no domínio da frequência que estão em baixo. X1k=[2.42 2.9+4.8i 1.3-47i 1.7-1.23i 1.77 1.7+1.23i 1.3+4.7i 2.9-4.8i ] X2k=[0.3 -0.2-0.56i 2.3-4.85i -1.4+0.84i -12 -1.4-0.84i 2.3+4.85i -0.2+0.56i] X3k=[0.23 0.24+0.1i 0.28+0.3i 0.67-2.56i 0.06 0.67+2.56i 0.28+0.3i 0.24-0.1i] Para executar para a resolução do problema foi executado o código nin=-10; %sequencia inicial nfin=10; %sequencia final n=nin:nfin; %sequencia das amostras x1=2.*(0.8.^(n-2)); % 2*2.*(0.8.^(n- 2)) x2=stepseq(-2,nin,nfin)-stepseq(7,nin,nfin); % h=x1.*x2; Hk=fft(h,length(h))X1k=[2.42 2.9+4.8i 1.3-4.7i 1.7-1.23i 1.77 1.7+1.23i 1.3+4.7i 2.9- 4.8i 0 0 0 0 0 0 0 0 0 0 0 0 0] X2k=[0.3 -0.2-0.56i 2.3-4.85i -1.4+0.84i -1.2 -1.4-0.84i 2.3+4.85i - 0.2+0.56i 0 0 0 0 0 0 0 0 0 0 0 0 0] X3k=[0.23 0.24+0.1i 0.28+0.3i 0.67-2.56i 0.06 0.67+2.56i 0.28+0.3i 0.24-0.1i 0 0 0 0 0 0 0 0 0 0 0 0 0] Y1k=X1k.*Hk Y2k=X2k.*Hk Y3k=X3k.*Hk Yk=Y1k-Y2k+Y3k yn=ifft(Yk,length(Yk)) figure(1) stem(yn) title('Sinal da saida yn] dominio do tempo') xlabel('sequencia') ylabel(' Amplitude') Através dos códigos acima foi obtido os gráficos abaixo. 38 Figura 27 resultado de y[n] no domínio do tempo Para alcançar o sinal obtido na figura tivemos que fazer o seguinte. Primeiro passamos o h[n] ,a resposta impulsional do domínio do tempo para o domínio da frequência com a transformada de Fourier rápida fft().Passamos para o domínio da frequência porque somente pode se trabalhar com dois sinais no mesmo domínio convertendo para o domínio da frequência fica mais fácil chegarmos a solução porque são três sinas no domínio da frequência fornecidas no enunciado e uma no domino do tempo. O no sinal H[k] possui um tamanho de 21 porém os X[k] possuem uma tamanho de 8. Portanto ao tentarmos multiplicar os sinais X[k].H[k],o matlab dará erro porque os dois sinais possuem dimensões diferente. Pois para resolver esse problema acrescentamos 0 no sinal X[k] até chegar um ponto onde que os dois sinais possuem a mesma dimensão. Depois multiplicamos as entradas com a resposta de impulso no domínio da frequência. Depois usamoa a seguinte formula de combinação Y[k]=Y1[k]-Y2[k]+Y3[k]. Depois de obter o resultado de Y[k] foi feita a inversa transformada de Fourier rápida para passar para o domínio do tempo. É assim chegamos ao sinal observado acima. 39 2 Conclusão Com o respetivo relatório podemos tirar como conclusão que a frequência de amostragem deve ser no mínimo 2 vezes a frequência máxima para poder reconstituir um sinal assim obedecendo o teorema de nyquist. Quando mais próximo o dobro da frequência máxima é da frequência de amostragem a banda de guarda fica menor. Foi observado que mesmo fazendo combinações de sinais com frequência diferente e amplitudes diferente. Utilizado a frequência do sinal que possui um a frequência maior que as outras. Se a frequência de amostragem for no mínimo o dobro da frequência máxima do sinal é possível reconstruir o gráfico. Verificamos o conceito de modulação que ocorre com a multiplicação de dois sinais discreto. Verificamos a propriedade de linearidade que diz que a combinações de entrada da deve ser igual a combinações da saída. Verificamos que o deslocamento na entrada de um sistema na convolução afeta a sua saída porque também desloca-se. Verificamos se a entrada é multiplicada por um facto escalar na saída também a resposta será afetado pelo facto escalar. Averiguamos que quando utilizamos o a transformada de Fourier discreta passa o sinal do domínio do tempo para a frequência. Para verificar o sinal no domínio do tempo temos que verificar com o modulo e o espetro e no sinal a energia do sinal é divido em dois uma parte fica nas frequências negativas e outra fica nas frequências positivas. Verificamos que no domínio da frequência um sinal se deslocado, o seu modulo da amplitude e a sua frequência não modifica, porém, a sua fase modifica. Notamos que a convolução entre dois sinais no domínio do tempo é equivalente a multiplicação de dois sinais no domínio da frequência. Notamos que a inversa transformada de Fourier discreta é usada para passar um sinal do domínio da frequência para o domínio do tempo. Um sistema é estável na transformada z quando os seus polo estão dentro do circulo unitário. 40 3 Bibliografia Proakis, J. (s.d.). Processing Digital Signal using Matlab. Restivo, F. J. (s.d.). Processamento de sinal Digital.
Compartilhar