You are on page 1of 6

Procesamiento Digital de Seales

Problemas de Programacin en MATLAB


Problema 1:
En un determinado programa de MATLAB se generan dos vectores No vacos X y Y.
Despus de generados los vectores se coloca en el programa la siguiente
instruccin:
V=Y. X!
Al correr el programa la ejecucin se detiene en la instruccin anterior arrojando en la consola
de MA!A" #Command Window$ un mensaje de "##$#. De acuerdo a ello%
indi&ue justi'icadamente a &ue se de(era el error presentado.
Problema % :
Dos se)ales cosenoidales de igual 'recuencia% igual amplitud y di'erente 'ase% 'ueron
capturadas #un *nico periodo$ con MATLAB y almacenas en un vector X y en un vector Y
respectivamente.
De acuerdo a ello% se pide escri(ir un programa en MATLAB &ue permita determinar si el
des'asaje entre am(as se)ales #X y Y$ es de &' grados. El resultado S( o
)$ de(e aparecer en pantalla.
Problema *:
Dado un vector +% determinar cuantas muestras son positivas y cuantas son negativas.
Problema +:
Dado un vector + y un vector , % desarrollar un programa &ue implemente la siguiente
ecuacin:
2 - P N 0,1,..., i ) n i ( Y ) n ( ! ) i ( "
1 N
0 n
+

donde N es el tama)o del vector + y - es el tama)o del vector ,.


Problema ,:
Dado un vector + de muestras &ue representa a una se)al% determinar cuantos picos #positivos
o negativos$ presenta la se)al.
Problema -:
Dado un numero% construir un programa &ue permita calcular su 'actorial.
Problema .:
Dada una matri. A de dimensin M/N% determinar el valor m0/imo y el valor mnimo de la
matri. as como la locali.acin de los mismos dentro de la matri. #ndices$.
Problema /:
1e tiene un vector de muestras# +$ en MATLAB &ue representa a una determinada se)al. 1e
por tanto% escri(ir un programa &ue permita conta(ili.ar el numero de cruces por cero de
negativo a positivo e/istente en todo el vector. El programa de(er0 presentar el resultado por
pantalla.
Problema &:
Dada una matri. + de dimensin M/N y una matri. , de dimensin !/- % desarrollar un
programa &ue implemente la siguiente ecuacin:
continua-------
2 - P N 0,1,..., n
2 - L M 0,1,..., m ) # n , i m ( Y ) # , i ( ! ) n , m ( "
1 N
0 #
1 M
0 i
+
+

Problema 1':
Dado un vector +% normali.ar los valores del vector a valores en el rango 23%45. am(in se pide
normali.ar el mismo vector al rango 267%45.
Problema 11 :
1e tiene un vector 0X1 en MATLAB de /'''' m2estras.
De acuerdo a ello% se pide construir un programa &ue permita determinar secuencialmente la
energa de cada (lo&ue de %''' m2estras del vector. #se de'ine la energa de un (lo&ue como
la suma de las muestras elevadas la cuadrado$ . El programa de(er0 ir parando en cada
iteracin con un pause y mostrar la energa del (lo&ue actual en pantalla.
Problema 1%:
Dado un vector + de 7389 componentes% desarrollar un programa &ue iterativamente e/traiga
del mencionado vector (lo&ues de :8 muestras consecutivos. El programa de(er0 calcular la
energa de cada (lo&ue e de(er0 ir 'ormando un vector en con los valores de energa &ue se
van calculando. Al 'inal el programa de(er0 mostrar por pantalla la gr0'ica del vector resultante.
$bs. !a energa de un (lo&ue de muestras es la suma de los valores de las muestras al
cuadrado.
Problema 1*:
1e captura 1' seg2ndos de una se)al de audio est3reo va MATLAB y se almacena en un
vector X. De acuerdo ello% se pide escri(ir un programa &ue genere un vector de
se)al Y1 con las siguientes caractersticas:
Durante 3.4 segundos de se)al se de(e tener : ,;<+; y ,!<+!
Durante los siguientes 3.4 segundos de se)al : ,!<+; y ,;<+!
Esto de(e cumplirse en 'orma alternada #como est0 especi'icado$ durante los =3 segundos de
se)al.
Problema 1+:
>onstruir un programa en &ue permita generar #va MA!A"$ 4 segundos de se)al triangular
discreta de 9?@. de 'recuencia% A7?@. de 'recuencia de muestreo y amplitud 3.7. El programa
de(er0 tam(in gra'icar la se)al discreta en el tiempo utili.ando la instruccin 4lot y
especi'icando los ttulos correspondientes.
Problema 1,:
>onstruir un programa en &ue permita generar #va MA!A"$ 73 segundos de se)al cuadrada
! discreta de 7?@. de 'recuencia% =:?@. de 'recuencia de muestreo y amplitud 3.:. El
programa de(er0 tam(in visuali.ar la se)al discreta en el tiempo utili.ando la instruccin
stem y especi'icando los ttulos correspondientes.
Problema 1-:
>onstruir un programa en &ue permita generar #va MA!A"$ =3 segundos de se)al senoidal
analgica #es decir para ser visuali.ada en el osciloscopio a partir de la salida de audio de la
tarjeta de sonido$ de 933@. de 'recuencia% 'recuencia de muestreo de 9?@. y amplitud 3.B4.
Problema 1.:
En una e/periencia de la(oratorio se peda generar una se)al discreta en el transmisor para
enviarla al receptor.
En este pro(lema se pide escri(ir un programa &ue genere un vector X1 y &ue represente ,
seg2ndos de un se)al peridica del tipo diente de sierra #ver 5ig2ra 1$. !a amplitud de la
rampa de(er0 ser de '.-% mientras &ue la 'recuencia de la misma de(er0 ser de %''67.
A continuacin se especi'ica el programa del transmisor% tal como 'ue entregado al inicio de
dicCo la(oratorio #o(serve donde tiene &ue ser colocado el pe&ue)o algoritmo re&uerido para
generar el vector X$ .

clear all;
close all;
clc;
fs = 8000; %frecuencia de muestreo
r = 16; %bits por muestra.
version = 0;
numcan = 1; %monocanal
repeticiones = 0;
duracion = 5; %duracin en tiempo del vector requerido
(5segundos
En este espacio debe ser colocado el programa requerido para generar X
ao=configsalidasenal(fs!r!numcan!repeticiones!version;
reproduccionsenal(ao!"!repeticiones!#se$al generada#;
0.6
x(n)
$ seg%ndos (en &iem'o)
8ig2ra 1
Problema 1/:
Escri(ir un programa en MATLAB &ue permita leer un vector de muestras 9 para reali.ar el
siguiente procesamiento: -or cada muestra leda del vector de entrada% la muestra de salida
del sistema de(er0 ser igual a la m2estra le:da act2almente ; las ) m2estras anteriores de
entrada. #donde N y el tama)o del vector de entrada es de'inido por el usuario$.El resultado del
programa de(er0 ser el vector 0<1 con las muestras resultantes del procesamiento.
Problema 1&:
1e tiene un vector + en MA!A" &ue representa a una determinada se)al de vo.. El m0/imo
valor de las muestras &ue con'orman este vector es de 3.9:% mientras &ue el
mnimo es de 63.A8. 1e pide escri(ir un programa en MA!A" &ue trans'orme
este vector en un vector , de tal 'orma &ue el m0/imo valor pase a ser 1'%
mientras &ue el mnimo valor pase a ser ,.
Problema %':
En un editor de programa de MATLAB se tiene disponi(le los vectores B y A &ue corresponden
respectivamente a los coe'icientes de lo polinomios del numerador y del denominador de una
'uncin de sistema @#.$. 1i se desea o(tener y gra'icar #=:a 4rograma$ la respuesta impulsiva
del 'iltro% escri(a usted el programa correspondiente% sa(iendo &ue no se cuenta con las
instrucciones ''t% i''t% 're&. y .plane.
Problema %1:
1e tiene el siguiente programa en MA!A":
clearD
close allD
/<2= 7 A 8 45D
C<2= 3 =5 D
+<''t#/%4$D
@<''t#C%4$D
,<+.E@D
y<real#i''t#,$$D
stem#y$D
1e pide gra'icar el vector resultante y% tal como lo presentara stem.
Problema %%:
1e tiene la siguiente 'uncin de sistema :
2
2
( 2 1
( $ ( ) *
) ( ( +

+ +

Escri(ir un programa de MA!A" &ue gra'i&ue el diagrama de polos y ceros del sistema.
Problema %*:
-ara una determinada aplicacin se necesita sa(er la gr0'ica de la siguiente 'uncin:
t
t g
02 . 0 1
&) 1000 'i )cos(2 e,'(-0.001
) (
+

1i le piden a usted presentar la gr0'ica de la 'uncin en MATLAB% escri(a el programa


correspondiente. #1ug.: >omo en toda simulacin se de(e partir de una 'recuencia de muestreo
patrn para lo cual de'ina 5s = %+'''. As mismo% a criterio suyo de(e de'inir el numero de
puntos #muestras$ en el tiempo para reali.ar la gr0'ica$.
Problema %+:
1e tiene un vector en MATLAB &ue representa a / seg2ndos de una se)al &ue 'ue capturada
con una 'recuencia de muestreo de /'''67. -ara una determinada aplicacin se necesita
determinar el tiem4o >en seg2ndos? @2e 4ermanece la seal 4or encima del =alor '../. De
acuerdo ello% se pide escri(ir un programa #en MATLAB$ &ue permita o(tener va pantalla el
resultado re&uerido.
$bs. D2rante los / seg2ndos se as2me @2e el e=ento en c2estiAn se 4resenta 2na sola
=e7. As: mismo se 4roBibe el 2so de 52nciones <a desarrolladas de MATLAB 4ara la
im4lementaciAn del 4rograma re@2erido.
Problema %,:
Fn sistema discreto presenta la siguiente ecuacin di'erencia :
) * n ( , * ) 1 n ( , $ . 1 ) n ( , 2 . 0 ) n ( - +
1e pide:
a.6 E/presar el sistema en diagrama de (lo&ues.
(.6 Determinar justi'icadamente si el sistema es GH; o HH;.
"scribir el 4rograma en MATLAB @2e im4lementa el sistema. Para este caso as2ma X
como siendo 2n =ector aleatorio de %''' com4onentes. Al 5inal el 4rograma
deberC gra5icar <>n? en 52nciAn del tiem4o
Problema %-:
En la 5ig2ra % se muestra la mascara de la respuesta en 'recuencia &ue de(e tener un 'iltro GH;
digital para una determinada aplicacin.
a.6 Especi'icar la 'orma como usted creara el mencionada 'iltro.
(.6 Escri(ir el programa en MA!A" &ue permita o(tener la respuesta impulsiva del 'iltro%
indicando el orden &ue de(e presentar.
*.) .) *./ $./
1


8ig2ra %
Problema %.:
Fna se)al es capturada y almacenada en un vector +. !os par0metros de captura son:
's<9333@.% =:(itsImuestra y 'ormato monocanal. 1e desea 'iltrar la se)al utili.ando un 'iltro GH;
recCa.a6(anda de ,1 coe5icientes y 'recuencia de corte de /''67. 1e pide escri(ir un
programa en MA!A" &ue genere la respuesta impulsiva del 'iltro en un vector C y en seguida
&ue realice el 'iltraje de la se)al.
$bser=aciAn : Jenerar el 'iltro con la instruccin 'ir= y reali.ar el 'iltraje utili.ando el
procedimiento e/plicado en clase . No utili.ar la instruccin 'ilter.
Problema %/:
!a 5ig2ra * muestra el espectro de una se)al de audio #muestreada a /D67 y a
1-bitsm2estra$ con pro(lemas de inter'erencia de una componente de -'67 &ue deteriora la
calidad de la se)al. !a duracin de la se)al capturada con MA!A" es de A segundos.
1i mediante el uso tcnicas de procesamiento digital de se)ales se desea eliminar la
mencionada inter'erencia sin pertur(ar seriamente la calidad de la se)al original% se pide:
a.6 Esta(lecer el tipo de 'iltro 8(# a emplear para eliminar solo la mencionada componente y
especi'icar justi'icadamente el orden &ue usted le colocara el 'iltro para esta aplicacin as
como su o sus respectivas 'recuencias de corte.
(.6 Especi'i&ue la ventana a utili.ar mas apropiada para este caso y en 'orma justi'icada.
c.6 A partir de las especi'icaciones anteriores% escri(ir el programa en MATLAB &ue permita
generar el 'iltro apropiado y en seguida permita 'iltrar la se)al para o(tener la se)al limpia
re&uerida.
0 50 100 150 200 250 300
0
50
100
150
200
250
300
350
400
450
500
Respuesta en frecuencia de la Seal con Interferencia
frecuencia (Hz)
M
a
g
n
i
t
u
d
8ig2ra *
Problema %&:
1e desea dise)ar un 'iltro digital 8(# &ue introdu.ca el e'ecto de eco en una se)al de vo.
muestreada a /'''67. !a se)al de salida de(er0 estar 'ormada por la se)al original y por *
re4eticiones de sta cada %''msE y con atenuaciones de '.* % '.1 y '.'* respectivamente. De
acuerdo a ello se pide:
a.6 Determinar la respuesta impulsiva del 'iltro.
(.6 Determinar la 'uncin de sistema del 'iltro.
c.6 Escri(ir el programa de MA!A" &ue permita 'iltrar la se)al capturada en un vector + a
travs del 'iltro re&uerido K No puede utili.ar 'unciones de 'iltraje de MA!A".
Problema *' :
Determinar el @#.$ #en 4otencias negati=as de F$ de un 5iltro 8(# recBa7a banda de orden +%
5rec2encia de corte in5erior de + y 5rec2encia de corte s24erior de *+. Ftilice ventanas
rectangulares% luego de ello escri(ir un programa en MA!A" &ue permita aplicar el 'iltro
o(tenido a una se)al almacenada en un vector +. En el programa no est0 permitido el uso de
'unciones de MA!A"% &ue reali.en el 'iltraje de una se)al generen 'iltros #como 'ilter% 'ir=%
(utter% etc$. El programa de(er0 o(tener la se)al resultante del 'iltraje en el vector , .
Problema *1:
Fna se)al de audio #mGsica < =o7$ 'ue digitali.ada con una 'recuencia de muestreo de %+'''
67 y r=1- bits. !a ca4t2ra 52e de , seg2ndos. !a se)al 'ue al almacenada en un vector X.
-ara una determinada aplicacin% se re&uiere aislar solo las 'recuencias mas signi'icativas de
la vo.% por lo &ue se decide aplicar un 5iltro 4asaHbanda I*''67 J *+''67K para 'iltrar la se)al
y o(tener una se)al resultante donde prevalece la se)al de vo. so(re la se)al de audio. El 'iltro
de(e tener orden 1'' y no debe 2tili7arse =entana #se as2me =entana rectang2lar$.
De acuerdo a ello se pide:
a.6 Hmplementar un programa en MATLAB &ue permita o(tener la respuesta del 'iltro 8(#
re&uerido. ;ecuerde &ue Cay &ue identi'icar las 'recuencias in'erior% central y superior #en
'recuencia relativa$ del 'iltro deseado. >on esas 'recuencias se puede o(tener la 'recuencia
de corte del 4rototi4o 4asaHbaLas. !a respuesta impulsiva de un 'iltro 8(# 4asa baLas es
dada por:

'

,
_

,
_

,
_

2
1 L
n 1 L n 0
)
2
1 L
( n
)
2
1 L
( n sen
2
1 L
n
) n ( 0
cor&e
cor&e
donde L es el n2mero de coe5icientes del 5iltro.
)ota : ;ecuerde &ue para volverlo pasa6(anda Cay &ue multiplicar la respuesta impulsiva del
prototipo 4asa baLas por % y por cos>'n?% donde ' es la 'recuencia central del pasa6(anda.
(.6 Asumiendo &ue se tiene la respuesta impulsiva del 'iltro generado en un vector B% se pide
escri(ir el programa en MATLAB &ue reali.a el 'iltraje de la se)al almacenada en el vector
X. ;ecuerde &ue tiene &ue crear un vector temporal inicial : tem4n2m=7eros>LE1? %
donde ! es el numero de coe'icientes del 'iltro. )$ PM"D" MT(L(FA# 8M)N($)"S D"
MATLAB PA#A #"AL(FA# "L 8(LT#AO".
Prof. r. !uillermo "emper #.

You might also like