Laboratorio 1 Procesamiento Digital de Señales
August 14, 2022 | Author: Anonymous | Category: N/A
Short Description
Download Laboratorio 1 Procesamiento Digital de Señales...
Description
* $r(valo $rias elson, *+**-unimilitar.edu.co %niversidad "ilitar ueva ranada
L!*or!+orio d% Pro%)!,i%(+o Digi+!' d% S%&!'%) No. $ INTRODUCCIÓN AL PROCESAMIENTO DE SEÑALES SEÑA LES CON MATLAB MATLAB Abstract - Management
toolss such as Matlab for for the tool engineer is indisputably necessary in view of the many applications we have with this tool. For digital signal processing processi ng using Matlab become become even more essential, because their multiple tools such as Simulink and facilities that are in programmin programming g allow a comprehensive management and signal processing
Código:
Gráfi! x=linspace(-2*pi,2*pi,50); y=sin(x); z=sin(x-(pi/2)) plot(x,y) hold plot(x,z,'red' plot(x,z, 'red') ) 'Grafica de la fncion seno' seno'); ); title('Grafica title( !rid
Resumen —El maneo de herramientas como Matlab para el ingeniero es indiscutiblemente indiscutiblemente necesario teniendo teni endo en cuenta cuenta las m!ltiples m!ltiples aplicaci aplicaciones ones "ue se tienen tiene n con esta herramienta. herramienta. #ara el procesa procesamient miento o digital de se$ales el uso de Matlab se vuelven a!n m%s imprescindible, impres cindible, debido a "ue sus m!ltiples herramientas como com o sim simuli ulink nk y las faci facilid lidade adess "ue se tie tienen nen en la programaci&n program aci&n permiten un amplio maneo y tratamiento de se$ales.
I. INTROD ODU UCCIÓN Es necesario adquirir el conocimiento de herramientas de software y las habilidades de manejo de los diferentes comandos, para así poder generar señales de diferentes tipos en el dominio del tiempo y para diferentes valores de sus parámetros. El ingeniero de telecomunicaciones debe manejar diferentes tipos de señales y sus parámetros en las diversas diversas aplicaciones que dentro dentro de su carrera se presentan
II II.. OB OBJE JETI TIV VOS a) ener enerar ar señales señales continuas continuas y discre discretas, tas, util utili!and i!ando o herramientas computacionales como "atlab. b) #econocer los diferentes comandos comandos y utilidades utilidades del software matlab. c) $na $nali! li!ar ar el compor comportam tamien iento to de las seña señales les
III. PROCEDIMIENTO %tili!ar los siguientes programas en "atlab para generar seña señale less fu fund ndam amen enta tale less y re real ali! i!ar ar lo loss ejer ejerci cici cios os propuestos al final. final.
SEÑAL SENO
"ig#r! $: Gráfi! S%&!' S%(oid!' A(á'i)i): &ara la generaci'n de la grafica senoidal, sencillamente se de debe be te tene nerr en cuen cuenta ta la am ampl plit itud ud de la se seña ñal, l, el período con el cual se desea graficar y finalmente el despla!amiento de la misma en el tiempo.
5
SEÑAL CUADRADA A(á'i)i): Código: "Generaci#n de ondas cadradas $= %; "$&plitd de la seal, entre % y 5 f= 2000; =20; =%; "+recencia de la seal en o=*pi;"+recencia o=*pi; rad/s =2*f "donde f es la "frecencia en cps rho=05; "(%)iclo .til del " -alor entre 0% y % t=01000%1;"an!o t=01000%1; "an!o de tie&po a tra3a4ar se!.n el n.&ero de ciclos a "o3serar cadrada=$*sare(o*t6rho); "7tilizaci#n del co&ando sare, plot(t,cadrada); "8i34o de seal cadrada,
&ara la generaci'n de la grafica de una señal cuadrada, se usa el comando /quare, donde especificamos la amplitud de la señal con 0$1 y la 2recuencia de la misma con 03o1 multiplicado por el vector tiempo y sumando el ciclo 4til rho.
SEÑAL TRIANGULAR Código: "Generaci#n de seal trian!lar $=% ; " $&plitd de la seal, entre % y 5 =20 ; o=*pi;" o=*pi; " +recencia de la seal en rad/s =2*f "donde f es la frecencia en cps 8=%; theta= 05; "+ase,
!rid; !rid;"9e "9e coloca ret:cla a la !rfica axis(); '?nda cadrada de',f, 'cps y ciclo title('?nda title( de',f,'cps .til de 05') 05') yla3el('$&plitd yla3el( '); '$&plitd en '); '@ie&po en s'); xla3el('@ie&po xla3el( s');
t=01000%18; t=01000%18;"an!o "an!o tie&po se!.n el n.&ero de de ciclos a a tra3a4ar "o3serar trian=$*satooth(o*t6theta); "7tilizaci#n de co&ando satooth, plot(t,trian) !rid '?nda trian!lar ' ') ) title('?nda title( '$&plitd en Aoltios'); " 7sted yla3el('$&plitd yla3el( Aoltios');" define nidades xla3el('@ie&po xla3el( '@ie&po en s'); s');
Gráfi!
Gráfi!
"ig#r! : Gráfi! S%&!' Tri!(g#'!r "ig#r! -: Gráfi! S%&!' C#!dr!d!
7
A(á'i)i): &ara la generaci'n de la grafica de una señal triangular, se usa el comando /awtooth, donde especificamos la amplitud de la señal con 0$1 y la 2recuencia de la misma con 03o1 multiplicado por el vector tiempo y sumando la fase correspondiente a theta.
SEÑAL CUADRADA DISCRETA Código:
&ara la generaci'n de la grafica de una señal cuadrada, se usa el comando square, donde especificamos la amplitud de la señal con 0$1 y la 2recuencia de la misma con 06mega1 multiplicado por el vector tiempo y sumando el ciclo 4til rho. &ara graficar en tiempo discreto en ve! de usar el comando 0plot1 se usa 0stem1.
ONDA E0PONENCIAL CONTINUA Código:
Gráfi! "Generaci#n de onda cadrada discreta $=%; " $&plitd de la seal, entre % ycontina "?nda exponencial 5 $=% ; "$&plitd de la seal, entre % y o&e!a=pi/;" o&e!a=pi/; " +recencia de la seal en 5 rad/s = 2;"oeficiente 2;"oeficiente de a&orti!a&iento, =2*f ; "f es la frecencia entre % yen%0cps rho= 05; "iclo .til del 50", =%; 8=%0; t=01000%1; "an!o de tie&po a n=-81%18;"an!o n=-81%18; o3serar "an!o de &estras tra3a4ar ase!.n el n.&ero de ciclos x=$*sare(o&e!a*n6rho); x=$*sare(o&e!a*n6rho);"Aector o3serar "Aector donde se !ardan &estras "a y=$*exp(-*t);"so y=$*exp(-*t); "so de co&ando exp, ste&(n,x);"o&ando ste&(n,x); "o&ando para desple!ar plot(t,y) seales discretas !rid !rid '?nda exponencial contina' contina') ) title('?nda title( axis();yla3el( yla3el('$&plitd Aoltios'); '$&plitd en Aoltios'); '?nda cadradaxla3el( ') ) title('?nda title( discreta ' xla3el('@ie&po 9e!ndos'); '@ie&po en 9e!ndos'); '$&plitd en A' A'); ); yla3el('$&plitd yla3el( '@ie&po en s' s'); ); xla3el('@ie&po xla3el(
Gráfi!
"ig#r! /: Gráfi! S%&!' C#!dr!d! Di)r%+!
A(á'i)i):
"ig#r! 1: Gráfi! o(d! %23o(%(i!' o(+i(#!. A(á'i)i):
+
&ara la generaci'n de la grafica de una onda e8ponencial, se usa el comando e8p para e8presar euler, multiplicamos por por la amplitud 0$1 y dentro de de par(ntesis se especifica el coeficiente coeficiente de amortiguamiento e incluimos el vector tiempo al cual se va a elevar la funci'n.
A(á'i)i):
ONDA E0PONENCIAL DISCRETA
&ara la generaci'n de la gráfica de una onda e8ponencial discreta se multiplican sucesivamente elemento por elemento un valor $ por por una variable 9, elevada a la n, correspondiente a un vector igual al n4mero de muestras a graficar.
Código: Gráfi!
ONDA SENO MUESTREADA Código: "?nda seno &estreada $=%" $=% " $&plitd de la seal, entre % y 5 f=%0; =%00; =2*f" =2*f " donde f es la frecencia en cps o&e!a=2*pi/;" o&e!a=2*pi/; " +recencia de la seal en rad/s phi= ;"+ase ;"+ase (inicial de cero) n=-818;"Dor n=-818; "Dor o&isi#n la &estra se to&a cada nidad y=$*cos(o&e!a*n6phi)
"?nda exponencial discreta $= %; " $&plitd de la seal, entre % y 5 = 05;"Aaria3le 05;"Aaria3le (%), n=-%01%1%0;" n=-%01%1%0; " an!o de n.&ero de &estras a o3serar x=$*Bn;"Cl x=$*Bn; "Cl pnto () se sa para el clclo de ele&ento por "ele&ento, ste&(n,x) !rid title('?nda title( discreta') '?nda exponencial discreta') yla3el('$&plitd yla3el( Aoltios'); '$&plitd en Aoltios'); '@ie&po en s'); xla3el('@ie&po xla3el( s');
ste&(n,y) !rid '?nda seno &estreada' &estreada') ) title('?nda title( yla3el('$&plitd yla3el( Aolta4e'); '$&plitd en Aolta4e'); '@ie&po en 9'); xla3el('@ie&po xla3el( 9');
Gráfi!
"ig#r! 4: Gráfi! o(d! %23o(%(i!' di)r%+!. "ig#r! 5: Gráfi! o(d! )%(o ,#%)+r%d!. A(á'i)i):
-
&ara la generaci'n de la gráfica de una onda senoidal discreta se usa una funci'n cosinoidal, multiplicada por la amplitud, dentro de la funci'n se multiplica la frecuencia omega por el vector y se suma la fase.
&ara la generaci'n de la gráfica de una onda senoidal e8ponencialmente se opera una onda senoidal con una señal e8ponencial con el fin de que paulatinamente la señal senoidal se desvane!ca de manera e8ponencial
OPERACIÓN CON SEÑALES ESCALON DISCRETO
Código:
Código:
Gráfi!
"?peraci#n con seales ?nda seno exponencial&ente decreciente $=% ;" ;" $&plitd de la seal, entre % y 5 f=%00; "Cscal#n discreto C=%; =; "9e definen o=*pi;" o=*pi; de la seal en " +recenciaectores de ta&ao $(F%0) rad/s n=012*$-%; =2*f "donde f es lafrecencia en cps ste&(n,) phi=8; !rid =E; axis(); t=01000%1C; "an!o title( de tie&po a 'Cscal#n discreto') ) title('Cscal#n discreto' tra3a4ar se!.n el n.&ero de'$&plitd ciclos a en Aoltios'); yla3el('$&plitd yla3el( Aoltios'); xla3el('@ie&po xla3el( se!ndos'); "o3serar '@ie&po en se!ndos'); senexp=$*sin(o*t6phi)*exp(-*t) plot(t,senexp) !rid '?nda seno exponencial&ente title('?nda title( decreciente') decreciente' ) '$&plitd en oltios'); yla3el('$&plitd yla3el( oltios'); xla3el('@ie&po xla3el( '@ie&po en se!ndos' se!ndos') )
Gráfi!
"ig#r! 5: d%r%i%(+%. A(á'i)i):
Gráfi!
o(d!
%23o(%(i!',%(+%
"ig#r! 6: Gráfi! %)!'ó( di)r%+o.
;
A(á'i)i): &ara generar la gráfica del escal'n discreto, es necesario declarar vectores !eros y ones, luego se grafican desde hasta $:* para poder visuali!ar el escalon unitario
"?peraci#n con seales ?nda seno exponencial&ente decreciente $=% ;" ;" $&plitd de la seal, entre % y " 5 &plso discreto delta=; "9e f=%00; definen ectores de ta&ao C=%; "(F%0) " +recencia de la seal en o=*pi;" o=*pi; n=012*(6%)-2; rad/s ste&(n,delta) =2*f "donde f es lafrecencia en cps !rid phi=8; axis(); =E; '&plso discreto') ) title('&plso title( discreto' "an!o de tie&po a t=01000%1C; yla3el('$&plitd yla3el( Aoltios' '$&plitd Aoltios'); ); tra3a4ar se!.n elen n.&ero de ciclos a "o3serar '@ie&po en s'); xla3el('@ie&po xla3el( s'); senexp=$*sin(o*t6phi)*exp(-*t) plot(t,senexp) !rid '?nda seno exponencial&ente title('?nda title( decreciente') decreciente' ) '$&plitd en oltios'); yla3el('$&plitd yla3el( oltios'); '@ie&po en se!ndos') xla3el('@ie&po xla3el( se!ndos')
IMPULSO DISCRETO Código:
Gráfi!
"ig#r! 7: Gráfi! i,3#')o di)r%+o.
A(á'i)i): &ara generar la gráfica del impulso discreto, es necesario declarar vectores !eros y ones, luego se grafican desde hasta $:*.
PULSO CENTRADO EN EL ORIGEN
C
Código:
&ara la generaci'n de un pulso centrado, en el origen, se usan dos vectores que se restan para permitir la formaci'n del pulso en un ?valor de $ $=;>?valor 9=7>?valor 9=7> ?valor de 9 a=*>?valor a=*> ?valor multiplicativo de la e8ponencial b=.->?valor b=.-> ?valor multiplicativo de la e8ponencial t=@.*@->?intervalo t=@.*@-> ?intervalo de tiempo $*=$Ae8pB:aAt)>?e8ponencial $*=$Ae8pB:aAt)> ?e8ponencial de $ 95=9Ae8p B:bAt)> ?e8ponencial de 9 " Dlso centrado en B:bAt)>?e8ponencial el or:!en 8t=$*:95>?funcion 8t=$*:95> 8Bt) a t=-%1%/5001%; "an!o?funcion de tie&po plotBt,8t)> tra3a4ar se!.n lo e se desea o3serar %=; 2=; =%-2; plot(t,) !rid axis(); title('Dlso title( 'Dlso centrado en el ori!en' ori!en') ) '$&plitd en ' '); ); yla3el('$&plitd yla3el( '@ie&po en s' s'); ); xla3el('@ie&po xla3el(
"ig#r! $8: P#')o %(+r!do %( %' orig%(. A(á'i)i):
"ig#r! $$: Ae −
a) Ae
−
t
−
−0.5
t +
Be
Ce
−0.5
t
para 0 < t < 5
t
para 0 < t < 5
H
(
b) x ( t )= Cseno 2 π ∗1000 t −
π D
)
−
e
∗
at
Código: D= 7> w = 5 A pi>? pi>? 2recuencia de la señal t=:5@.*@5> ? t=:5@.*@5> ? rango de tiempo =C> phi = *At:piF> *At:piF> a = -> ? -> ? $mplitud e8psen = D A cosB w A t G phi) .A e8p B :a A t)> ? t)> ? funcion plotBt,e8psen)>
"ig#r! $:
o( !1
(
2 π ∗1000 t −
π D
)
e
x ( t )=Cseno
(
2 π ∗1000 t −
π D
)
e
∗
−
at
9
−
at
9
o( !/
Gr!fi!)
"ig#r!! $-: "ig#r
x ( t )=Cseno
x ( t )=Cseno
(
2 π ∗1000 t −
π D
)
−
e
∗
at
9
"ig#r! $/: o( !-
∗
J
"ig#r!! $1: "ig#r
x ( t )=Cseno
(
2 π ∗1000 t −
π D
)
−
e
∗
at
9
o( !$
"ig#r! $1: Gr!fi! d% f#(ió( i,3#')o g%(%r!d! 3or M!+'!*
&ara el siguiente programa> a. Ira!ar diagrama de flujo B6bserve que es una funci'n) b. %na ve! probada guardarla en al directorio de matlab con la e8tensi'n .m c. e acuerdo con la funci'n, emplearla en un nuevo programa para generar la señal correspondiente correspondiente.
Di!gr!,!
Codigo i,3'%,%(+!do 3!r! '! f#(ió(: Blos valores para a,b,delta y 8 se asignaron mediante linea de comandos).
fnction fnction Dnto%%(x,a,3,delta) " a=-%; " 3=%; " delta=500; " x=%0; !=zeros(size(x)); set%=find(a3s(x)=05) !(set%)=ones(size(set%)) x=a1%/delta13; plot(x,!, 'r'); 'r'); !rid title('?nda title( ') '?nda ') yla3el('$&plitd yla3el( A'); '$&plitd en A'); '@ie&po en s'); xla3el('@ie&po xla3el( s'); end
I.
CONCLUSIONES
*
Esta actividad permite identificar diversas maneras de procesar las señales digitales mediante el programa "atlab, además como herramienta de análisis simplifica la solu soluci ci'n 'n de pr prob oble lema mass y pe perm rmit itee id iden enti tifi fica carr los los cambios en diferentes tipos de sistemas si se modifican variables o componentes.
View more...
Comments