Otros sitios...

Búsqueda

Antispam

Modulación de señales: Radio AM

January 30th, 2008 by Jorge Machin

Programa de computadora

El programa para realizar las gráficos y los calculos esta escrito en octave y su código fuente es el siguiente:

function q = wave( i )
q = sin( i * pi / 16 );
endfunction

function r1 = portadora1( i )
r1 = 4 * sin( i * pi / 1.5 );
endfunction

function r2 = portadora2( i )
r2 = 4 * sin( i * pi / 4 );
endfunction

x = linspace(0,99,100);

# Nuestras señales y sus transformadas de fourier

w = wave(x);
fw = fft(w,100);

p1 = portadora1(x);
fp1 = fft(p1,100);

p2 = portadora2(x);
fp2 = fft(p2,100);

# Gráfica 1:

figure;
plot(x,w);
hold on;
plot(x,p1,"r");
axis([0 100 -4 4])
legend('Moduladora','Portadora 1')

#

s1 = 0:99;
s1 = (w+1).*p1;
fs1 = fft(s1,100);

# Gráfica 2: Primera señal modulada.

figure;
plot(x,s1);
axis([0 100 -8 8])

# Gráfica 3: Transformadas de las

figure;
plot(x,fw);
hold on;
plot(x,fp1,"r");
legend('Moduladora','Portadora 1');

# Gráfica 4: Transformada de la primera señal modulada.

figure;
plot(x,fs1);

# Gráfica 5:

figure;
plot(x,w);
hold on;
plot(x,p2,"r");
legend('Moduladora','Portadora 2');
axis([0 100 -5 5])

#

s2 = 0:99;
s2 = (w+1).*p2;
fs2 = fft(s2,100);

# Gráfica 6: Segunda señal modulada.

figure;
plot(x,s2);
axis([0 100 -10 10])

# Gráfica 7:

figure;
plot(x,fw);
hold on;
plot(x,fp2,"r");
legend('Moduladora','Portadora 2');

# Gráfica 8:

figure;
plot(x,fs2);

# Gráfica 9:

figure;
plot(x,fs1);
hold on;
plot(x,fs2, "r");
legend('Señal 1','Señal 2');
axis([0 100 -140 140])

# --------------------------------------------
# Sumando las señales
# --------------------------------------------

s = s1 + s2;
fs = fft(s,100);

# Gráfica 10:

figure;
plot(x,s);

# Gráfica 11:

figure;
plot(x,fs);
axis([0 100 -140 140])

# --------------------------------------------
# Paso 1: Filtrado de la señal.
# --------------------------------------------

# a) Filtro pasa bajos

i = linspace(1,25,25);
fs(i) = 0;

# b) Filtro pasa altos

i = linspace(81,100,20);
fs(i) = 0;

Sr = ifft(fs,100);

figure;
plot(x,Sr);

Páginas: 1 2 3 4 5

Posteado en Física, Matemáticas |

2 Responses

  1. Loli Says:

    Muy interesante…

    ¿Tendrías algo parecido pero para FM?

  2. Jorge Machin Says:

    Loli:

    Gracias, el tratamiento de FM sería un ejemplo obligado pero aún lo estoy preparando.

    Eventualmente lo estaré publicando en este Blog pero aún no tengo fecha de publicación.

Deje un comentario

Por favor note: La moderación de comentarios está activada y puede retrasar la publicación de los comentarios. No es necesario enviar de nuevo el mismo comentario.