0% encontró este documento útil (0 votos)
75 vistas36 páginas

Informe - Tema 01

Este documento presenta un resumen de una práctica de laboratorio sobre procesamiento de señales usando MATLAB. Explica conceptos clave como señales, muestreo, transformadas discretas de Fourier y coseno, y funciones periódicas. Luego, propone varios ejercicios prácticos para simular y visualizar estas ideas usando comandos de MATLAB como tf2zp, polyval e impulse. El objetivo es que los estudiantes experimenten e investiguen el procesamiento de señales de forma interactiva en el software.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
75 vistas36 páginas

Informe - Tema 01

Este documento presenta un resumen de una práctica de laboratorio sobre procesamiento de señales usando MATLAB. Explica conceptos clave como señales, muestreo, transformadas discretas de Fourier y coseno, y funciones periódicas. Luego, propone varios ejercicios prácticos para simular y visualizar estas ideas usando comandos de MATLAB como tf2zp, polyval e impulse. El objetivo es que los estudiantes experimenten e investiguen el procesamiento de señales de forma interactiva en el software.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 36

 CURSO: COMUNICACIÓN ANALOGICA

 GRUPO: L12

 PROFESOR: ROBERTO FLORENTINO UNSIHUAY


TOVAR

 ALUMNO - CODIGO:

 DEPAZ NUÑEZ, RAUL EDUARDO - 17190153


UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS FACULTADA
DE INGENIERIA ELECTRONICA y ELÉCTRICA

LABORATORIO DE INT. A LAS TELECOMUNICACIONES

PRACTICA No.1
SIMULACIÓN DE PROCESAMIENTO DE SEÑALES

INTRODUCCIÓN TEÓRICA
Para entender mejor esta experiencia, debemos entender el concepto de señal, sus
tipos y procesamiento asimismo con las funciones periódicas.
SEÑAL: son cantidades que varían en el tiempo que contienen información.
TIPOS DE SEÑALES:
- analogica
- digital
- continuas
- discretas
- periódica
- no periódica
PROCESAMIENTO DIGITAL DE SEÑALES:
Es la manipulación matemática de una señal de información para modificarla o
mejorarla en algún sentido.
El muestreo es una de las partes del proceso de digitalización de las señales.
Consiste en tomar muestras de una señal analógica a una frecuencia o tasa de
muestreo constante, para cuantificarlas posteriormente. Basado en el teorema de
muestreo, es la base de la representación discreta de una señal continua en banda
limitada.
TRANSFORMADAS
Uno de los beneficios principales del procesamiento digital de señales es que las
transformaciones de señales son más sencillas de realizar. Una de las más
importantes transformadas es la Transformada Discreta de Fourier (TDF). Esta
transformada convierte la señal del dominio del tiempo al dominio de la frecuencia.
La TFD permite un análisis más sencillo y eficaz sobre la frecuencia, sobre todo en
aplicaciones de eliminación de ruido y en otros tipos de filtrado (filtros de paso bajo,
de paso alto, de paso banda, de rechazo de banda, etc.).

Otra de las transformadas importantes es la transformada de coseno discreta, que


es similar a la anterior en cuanto a los cálculos requeridos para obtenerla, pero esta
convierte a las señales en componentes del coseno trigonométrico. Esta
transformada es una de las bases del algoritmo de compresión de imágenes JPEG.

FUNCIONES PERIÓDICAS:

Es aquella función que presenta un periodo, puede ser definida mediante una
expresión matemática.
TEMA 1: PROCESAMIENTO DE SEÑALES Y FUNCIONES PERIÓDICAS,
USANDO MATLAB.

I. OBJETIVO:
Simular e investigar en forma experimental el procesamiento de señales usando los
comandos e instrucciones del software Matlab, desarrollando los ejercicios propuestos
en función de los ejercicios planteados.
II. EQUIPOS Y MATERIALES:
1. Matlab Versión 7a y versión 2014.
2. PC Pentium IV-actual.
3. Manual de Matlab.

III. PROCEDIMIENTO.
1. Desarrolle en el programa principal del Matlab los siguientes ejemplos y anotar sus
resultados.
1.1. Dada la función de transferencia mediante la transformada de
Laplace.

G(s) = 5(s + 4)/(s+2+4j)(s+2-4j)


Determine los polos y ceros mediante:
num=[5 20];
den=[1 4 20];
[z,p,k]=tf2zp(num,den)
Para encontrar el proceso inverso es decir
los terminos del numerador y el denominador.
[num,den]=zp2tf(z,p,k)
Expresar la función de transferencia original
G=tf(num,den);
G=zpk(z,p,k)

Zero/pole/gain:
5 (s+4)

(s^2 + 4s + 20)
 EXPLICACIÓN DL CODIGO:
Como vemos en el ejemplo anterior, se empieza definiendo las variables, como
vemos del numerador y denominador. Luego usando el comando [z, p, k] = tf2zp
(num, den) Convierte funciones de transferencia en representaciones de polos y
cero. Devuelve los ceros y polos del sistema definido por num / den. k es una
ganancia asociada con los ceros del sistema.
Ejercicios adicionales:

1.
2.
1.2.Dado un polinomio:

P = s4 + 4s3 + 4s2 + s + 20
Determine las raíces del Polinomio P mediante: p=[1 4
4 1 20]; % Los coeficientes del Polinomio P r=roots(p)
% Determina las raíces de P r=roots([1 4 4 1 20]) %
Es similar al anterior
Conociendo las raíces de P determine los coeficientes del
Polinomio, mediante:
p1=-2.6545+1.2595i;p2=-
2.6545-1.2595i;
p3=0.6545+1.3742i;
p4=0.6545-1.3742i;
%Los coeficientes del polinomio está dada por
P=poly([p1,p2,p3,p4])

 EXPLICACIÓN DEL CODIGO:


Como vemos en este ejemplo, se empieza definiendo las
variables, como vemos de los coeficientes del polinomio.
con el comando Roots calcula las raíces del polinomio
c.Para un vector c con N componentes, devuelve las
Ejercicios adicionales:

1.
2.

3. Respuesta a un impulse por la función de transferencia. Y(s)


= 1/(s + a)(s + b); donde a = 1, b = 2
Si calculamos ahora la antitransformada, desarrollando en fracciones simples
resulta que y(t) = e-t – e -2t. Ingresemos los vectores numerador y denominadory
luego ejecutemos el comando:
num=1; den=[1 3 2];
impulse(num,den) % visualiza la respuesta de los 6 primeros segundos
%Es posible variar el tiempo de 0 a 12 seg. definiendo:
num=1; den=[1
3 2];t=0:0.1:12;
impulse(num,den,t)
RESPUESTA A UN ESCALON DE LA FUNCIÓN DE TRANFERENCIA.
Dada la función
G(s) = Y(s)/R(s) = 4 / s2 + 0.8s + 4
num=4; den=[1 0.8
4];
step(num,den) % Obtiene la gráfica de la respuesta de la función de
transferencia para una señal escalón.
Ejercicios adicionales:

1.
2.
1.1. Construcción de arrays (escribir en el programa principal del matlab)x=[0
.1*pi .2*pi .3*pi .4*pi .5*pi .6*pi .7*pi .8*pi .9*pi pi]
y=sin(x) % verifique el array resultante.
Se puede acceder a los elementos individuales del array anterior utilizando
subíndices como x(1) que es el primer elemento en x y x(3) el tercer elementode x,
igualmente y(5) el quinto elemento de y. Compruebe lo enunciado.
Para acceder a un tiempo de un bloque de elementos, se puede usar la notación
de dos puntos: tal como >>x(1:5), se debe obtener los elementos del array del
primero al quinto. Compruebe el resultado.

>>x=(0:0.1:1)*pi
>>x=linspace(0,pi,11); % Ambos arrays son similares. Verifique sus resultados.

 EXPLICACIÓN DEL CODIGO:

En este ejemplo, se usa frecuentemente el comando Linspace(base, límite, n)


Devuelve un vector de fila con “n” elementos espaciados linealmente entre la base y
el límite.
Si el número de elementos es mayor que uno, la base y el límite de los puntos
finales siempre se incluyen en el rango. Si la base es mayor que el límite, los
elementos se almacenan en orden decreciente. Si no se especifica el número de
puntos, se utiliza un valor de 100.
La función linspace devuelve un vector de fila cuando tanto la base como el límite
son escalares. Si una, o ambas, entradas son vectores, linspace las transforma en
vectores de columna y devuelve una matriz donde cada fila es una secuencia
independiente entre base (fila n), límite (fila n).
Ejercicios analizados:1.
2.
1.2. EVALUACIÓN DE FUNCIONES POLINOMICAS
x=linspace(-1,3);
p=[1 4 -7 -10]; % p(x)= x3 +4x2 –7x -10
v=polyval(p,x);
plot(x,v),title('x^3+4x^2-7x-10'),xlabel('x')
EXPLICACIÓN DEL CODIGO:
En este ejemplo y los próximos, se usa frecuentemente el comando Linspace(base,
límite, n) que devuelve un vector de fila con “n” elementos espaciados linealmente
entre la base y el límite, usado en este caso para funciones polinómicas.
Entre otros comandos están:

 polyout(p, ‘x’): Expresa el polinomio en términos de la variable x

 y = polyval(p, x): Devuelve el valor del polinomio para el valor x. Si x es un vector o


matriz, devuelve un vector o matriz con la evaluación del polinomio pen cada elemento.

 b = conv(p, q): Devuelve el vector de coeficientes que define el polinomio b, producto de


los polinomios p y q.

 [b, r] = deconv(p, q): Realiza la división de los polinomios p y q, devolviendo el polinomio


cociente b y el polinomio resto r, de forma que se cumple:

 r = roots(p): Devuelve un vector r con las raíces del polinomio p

 d = polyder(p): Devuelve un vector con los coeficientes


del polinomio queresulta de derivar
Ejercicios adicionales:1.
2.
MULTIPLICACION DIVISION DE POLINOMIOS:

a=[1 2 3 4]; b=[1 4 9 16];


» c=conv(a,b)
>> c = 1 6 20 50 75 84 64

Ejercicios adicionales:1.

2.

DIVISIÓN
[q,r]=deconv(c,b)q =1
2 3 4
Ejercicios adicionales:1.

2.

DERIVADA
q=
1 2 3 4
» h=polyder(q)h =
3 4 3
Ejercicios adicionales:1.

2.
2. Escribir en el block de notas ó depurador del Matlab los siguientes ejercicios y
copiaren el programa principal, para graficar las funciones periódicas:
2.1. Grafica de funciones trigonométricas.
x=linspace(0,4*pi,60);
y=sin(x);
figure(1)
plot(x,y)
Ejercicio adicional:1.

x = linspace(0,
4*pi,60)
y = sin(x)
z=cos(x); figure(2)
plot(x,z,x,y)
Ejercicio adicional:

x = linspace(0,
4*pi,60)
y = sin(x)
z = cos(x)
figure(3)
plot(x,y,x,y,' * ')
Ejercicio adicional:
x = linspace(0,
4*pi,60);mi
y = sin(x)
z = cos(x)
figure(4) plot(y,z)

x = linspace(0,
4*pi,60);mi
y = sin(x)
z = cos(x)
figure(5)
plot(x,y,x,2*y.*z,'--')grid
xlabel('Variable independiente x')
ylabel('Variables dependientes')
title('2sen(x)cos(x)sen(2x)')
x = linspace(0,
4*pi,60);mi
y = sin(x)
z = cos(x)
figure(6)
plot3(y,z,x),grid

2.2. Generación de señales discontinuas:


La idea es multiplicar aquellos valores en un array que desea mantener por
unos, y multiplicar los otros valores por ceros.
x=linspace (0,16,100); % crear datos
y=sin(x); % calcular seno
z=(y>=0).*y; % fija a cero los valores negativos de sin(x)
z=z+0.5*(y<0); % si sin(x) es negativo sumar ½ z=(x<=14).*z;
% fijar a cero los valores mayores que x=8plot(x,z)
xlabel('x'), ylabel('z=f(x)')
title('Señal Discontinua')
2.3. MANIPULACIÓN DE GRAFICOS:
Se puede añadir líneas a una gráfica existente usando hold. Cuando fija hold
on, Matlab no elimina las curvasó gráfica existentes. Cuando se meten las
nuevas órdenes plot. Fijando hold off, se libera la ventana de la figura actual
para nuevas gráficas.
La orden hold sin argumentos conmuta el valor de hold.
% Ejemplo:
x=linspace(0,6*pi,60);
y=sin(x);
z=cos(x);
plot(x,y)hold
on
plot(x,z,'m')hold
off
% Observaremos que se mantiene la gráfica anterior y añade la curva
coseno.

% Ejemplo:
x=linspace(0,8*pi,100);
y=1/2*sin(x); z=2*cos(x);
plot(x,y,'--')
hold on
plot(x,z,'g')
title('Manipulación de gráficos')hold off
% Observaremos que se mantiene la grafica anterior y añade la curvacoseno.

.
2.
% Ejemplo:
x=linspace(0,4*pi,50);
y=3*sin(x); z=8*cos(x);
plot(x,y,'m')
hold on
plot(x,z,'--')
title('Manipulacion de graficos')hold off
% Observaremos que se mantiene la grafica anterior y añade la curvacoseno.
2.4. SUBDIVISIÓN DE VENTANA DE GRAFICAS (m,n,p)
Una ventana de figura, puede mantener más de un conjunto de ejes. La orden
subplot(m,n,p) subdivide la ventana de la figura actual en una matrizmxn de las
áreas de representación gráfica y escoge como activa el área
p-ésima la subgráfica se numeran de izquierda a derecha a lo largo de la fila
superior, luego la segunda fila.
x=linspace(0,4*pi,60);
y=sin(x);
z=cos(x);
a=2*sin(x).*cos(x);
b=sin(x)./(cos(x)+eps);
subplot(2,2,1) % selecciona la subgráfica superior izquierda.
plot(x,y), axis ([0 4*pi -1 1]), title('sin(x)')
subplot(2,2,2) % selecciona la subgráfica superior derecha
plot(x,z), axis ([0 4*pi -1 1]), title('cos(x)')
subplot(2,2,3) % selecciona la subgráfica inferior izquierda
plot(x,a), axis ([0 4*pi -1 1]), title('2sin(x)cos(x)') subplot(2,2,4)
% selecciona la subgráfica inferior derecha plot(x,b), axis ([0
4*pi -40 40]), title('tg=sin(x)/cos(x)')
Ejercicios adicionales01:
x=linspace(0,3*pi,60);
y=sin(x);
z=cos(x); a=1/2*sin(x).*cos(x);
b=4*sin(x)./(cos(x)+eps);
subplot(2,2,1) % selecciona la subgráfica superior izquierda.plot(x,y), axis ([0
4*pi -1 1]), title('sin(x)')
subplot(2,2,2) % selecciona la subgráfica superior derechaplot(x,z), axis ([0
4*pi -1 1]), title('cos(x)')
subplot(2,2,3) % selecciona la subgráfica inferior izquierdaplot(x,a), axis ([0
4*pi -1 1]), title('1/2*sin(x)cos(x)') subplot(2,2,4) % selecciona la subgráfica
inferior derecha plot(x,b), axis ([0 4*pi -40 40]), title('tg=4*sin(x)/cos(x)')

2.
x=linspace(0,4*pi,60);
y=sin(x);
z=cos(x); a=1/8*sin(x).*cos(x);
b=6*sin(x)./(cos(x)+eps);
subplot(2,2,1) % selecciona la subgráfica superior izquierda.plot(x,y), axis ([0
4*pi -1 1]), title('sin(x)')
subplot(2,2,2) % selecciona la subgráfica superior derechaplot(x,z), axis ([0
4*pi -1 1]), title('cos(x)')
subplot(2,2,3) % selecciona la subgráfica inferior izquierdaplot(x,a), axis ([0
4*pi -1 1]), title('1/8*sin(x)cos(x)') subplot(2,2,4) % selecciona la subgráfica
inferior derecha plot(x,b), axis ([0 4*pi -40 40]), title('tg=6*sin(x)/cos(x)')
IV- CUESTIONARIO.

3. Cambie el valor de las variables en cada uno de los ejercicios


y desarrolle nuevas aplicaciones, por lo menos 2 ejercicios
adicionales de cada uno de los ejercicios planteados como
ejemplos.
4. Explique las funciones de cada una de las principales
instrucciones ycomandos utilizados en los ejercicios
anteriores.
5. Presentar su informe final con una breve introducción teórica,
con el resultado de cada ejercicio planteado y sus
modificaciones experimentales.

↑↑↑TODO HECHO ARRIBA ↑↑↑


BIBLIOGRAFÍA:
MATLAB Edición de estudiante con tutorial de Duane
Hanselma PRENTICE HALL.Pagina WEB de la FIE

También podría gustarte