Conversão de sinal analógico em PAM. |
- É definida pelo produto entre o sinal de mensagem e um trem periódico de pulsos retangulares.
- Na modulação PAM a amplitude dos pulsos, regularmente espaçados, é variada proporcionalmente aos valores amostrados do sinal contínuo de mensagem.
- Na amostragem natural, o topo de cada pulso retangular modulador pode variar com o sinal de mensagem, enquanto que no PAM ele é mantido plano.
//////////// PAM clc; close; close; /// Gerando o sinal "analógico": dt = 1/200; t = 0:dt:(3-dt); // f = 1/dt = 200 Hz p2 = 2*%pi; tam = max(size(t)); tam2 = round(tam/2) - 1; s = sin(p2*t) + 0.5*cos(3*p2*t) - 0.25*sin(4*p2*t); s = s/max(abs(s)); // amplitude máxima igual a 1. subplot(2,2,1); plot(t,s); title('Sinal analógico'); /// Amostragem (sample): sa = 0*s; sa(1:10:$) = s(1:10:$); /// taxa de amostragem = 20 Hz subplot(2,2,2); bar(sa,0.1); title('Amostras'); /// amostras de topo plano (hold): sah = sa; for k=1:10:tam sah(k:k+3) = sa(k); end subplot(2,2,3); plot2d2(sah); title('Amostras com retenção.'); plot(s,'m'); /// Espectros: sf = abs(fft(s)); /// espectro do sinal original. sahf = abs(fft(sah)); /// espectro do sinal amostrado com retenção ff = 1:tam; ff = ff - 1; ff = ff/max(size(ff)); ff = ff/dt; subplot(2,2,4); plot(ff(1:tam2),sf(1:tam2)); title('Espectro do sinal analógico'); figure; subplot(2,2,1); plot(ff(1:tam2),sahf(1:tam2)); title('Espectro do sinal amostrado com retenção'); ////// Recuperação: sk = sah; for k=1:10:tam sk(k:k+9) = sah(k); end subplot(2,2,2); plot(sk); title('Recuperando o sinal'); //// Filtragem: hx = [0.1 0.1 0.25 0.5 0.6 0.65 0.70 0.65 0.60 0.5 0.25 0.1 0.1]; hx = hx/sum(hx); skf = filter(hx,1,sk); subplot(2,2,3); plot(skf); plot(s,'m'); title('Sinal recuperado'); skff = abs(fft(skf)); subplot(2,2,4); plot(ff(1:tam2),skff(1:tam2)); title('Sinal recuperado');
Gráficos:
Nenhum comentário:
Postar um comentário