Sei sulla pagina 1di 4

3

Ms Siguienteblog

gabriel.ramirez.sanchez@gmail.com Panel Salir

5MinutosdeMatlab
Cursoautodidacta/complementariodeMatlab:videos,ejercicios,cdigosyms...

Pg.Principal

Quesestesitio?

Curso2012

TemarioGeneraldelcurso

Ejemplosdecdigoparaformarseales
discretasenMatlab
El objeto ms bsico en Matlab es una matriz numrica con la posibilidad de almacenar
nmeros complejos. Por supuesto, los datos obtenidos en el estudio de seales y
sistemas son muy bien representados en forma de matrices. En este post usaremos
Matlabparalageneracindesealeselementales:cuadrada,triangular,entreotras.

ProcesandoImgenes

INVTAMEUNCAF,DALECLICA
UNANUNCIO
Anuncios Google

Matlab
Seales
Funcion
BUSCARENESTEBLOG

El ToolBox de procesamiento de seales de Matlab posee una gran variedad de funciones


para la generacin de seales, estas seales requieren de una representacin vectorial de
la variable tiempo, de manera continua o discreta. Para realizar una simulacin de un
intervalocontinuo,seusaunvectordevaloresdiscretosconunintervalodemuestreomuy
pequeo.

Buscar

SEGUIREMAIL

Emailaddress...

Comovimosenpostanteriores,elsiguientecomandogeneraunvectorllamadotdevalores
que representan la variable tiempo, con un intervalo de muestreo de 1 ms entre 0 y 1
segundo.

Submit

SGUENOSPOR:

SubscribeRSSFeed

t=0:0.001:1
Despus de creado el vector que representa la variable tiempo, es posible iniciar el
desarrollodealgunasealdeinters.

ETIQUETAS

Actividades(7)

En Matlab una seal discreta en el tiempo se representa exactamente, porque los valores
delasealsonrepresentadoscomoloselementosdeunvector.Sinembargolasseales
detiempocontinuoenMatlabsontansoloaproximaciones.Laaproximacinconsistedeun
vectorcuyoselementossonmuestrasdelaverdaderasealdetiempocontinuo.Cuandose
usa esta tcnica para la representacin de seales continuas es importante escoger el
intervalodemuestreolosuficientementepequeoparaasegurarquelasmuestrascapturan
todoslosdetallesdelaseal.

Codigos(13)
Cdigos(9)
Curso2012(13)
estadstica(2)
Filtros(2)
grficas(7)
Informacin(5)

EJEMPLOSDESEALESENMATLAB

juegos(1)
materialextra(3)

La generacin de seales peridicas tales como ondas cuadradas y triangulares es una


actividadmuyfcilderealizarenMATLAB.

Prctica(2)

1)SEALCUADRADA
Consideremos primero la generacin de una onda cuadrada de amplitud A, frecuencia
fundamentalw(medidaenradianesporsegundo)yciclotilrho.Recordemosqueelciclo
tileslafraccindecadaperiodoendondelasealespositiva.

Procesamientodeseales(1)

Procesamientodeimgenes
(6)
Respuestas(2)
Temasavanzados(6)
Temasbsicos(10)
Videos(18)

Para generar dicha seal se pueden escribir lo


siguienteenlalineadecomandos:

>>A=1
>>w=10*pi
>>rho=0.5
>>t=0:0.001:1

SEGUIDORES

Seguidores(15)

>>sq=A*square(w*t+rho)
>>plot(t,sq)
En la segunda lnea de este ejemplo, pi es una funcin interna de Matlab que calcula el
nmeromscercanoalaconstantePIenformatodecomaflotante.Elltimocomandoes
usado para vizualizar la seal generada. El comando plot dibuja lneas conectando los
valoressucesivosdelasealyasdalaaparienciadeunasealentiempocontinuo.
2)SEALTRINGULAR
Consideremos ahora la generacin de una onda
triangulardeamplitudA,frecuenciafundamentalwy
ancho Wdt . El periodo de la onda triangular ser T
con el mximo valor de la seal ocurriendo en t =
WT.Elcomandobsicoparagenerarestaseales:

RECUERDAREVISARCON
REGULARIDAD:

A*sawtooth(w*t+Wdt)

*Calificacionesactualizadas
*Calendariodeactividades

El resultado se puede observar en la grfica a la


izquierda

ARCHIVODELBLOG

Seguir

2014(2)
2013(5)

3)SEALESCALN

2012(32)

En Matlab, el comando ones(M, N) genera una matriz de unos de tamao MxN, y el


comando zeros(M, N) es una matriz de ceros del mismo tamao. Se puede hacer uso de
estas dos matrices para generar dos seales comnmente usadas: la seal escaln y la
sealimpulso.
Unasealpasodeamplituduno,puedesergeneradaconelsiguientecomando.

2011(27)
noviembre(2)
octubre(5)
septiembre(8)
CdigoMatlabpara
acondicionaryfiltrar
seales...
Cdigoparaobtenerla
primeraderivadapor
coefic...

U=[zeros(1,10),ones(1,11)]

Paralaversincontinuacreamosunvectorquerepresenteeltiempoelcualtengamuestras
de un intervalo separados por valores muy pequeos. Los comandos y los resultados se
muestranacontinuacin:
>>u=[zeros(1,10),ones(1,11)
>>t=1:0.1:1
>>plot(t,u)

Comparacindel
desempeodeunfiltro
convolucin...
Ejemplosdecdigopara
formarsealesdiscretas
e...
Prctica2:Seales
harmnicasmoduladasy
sufilt...
Cdigoyejemploscon
diferentesiteracionesde
...
Cdigoparaencontrarla
sealprincipalmediante
...

Como se menciono anteriormente, una seal


generadaenMatlabesinherentementedenaturaleza
discreta. Para visualizar una seal en tiempo
discreto se puede hacer uso del comando stem.
Especficamente stem(n, x), bosqueja los datos
contenidosenelvectorxcomounasealdetiempo
discreto con los valores de tiempo definidos por el
vector n. Los vectores n y x deben tener
dimensiones compatibles, es decir deben tener el
mismo nmero de elementos. As, para este caso
para obtener la representacin de esta seal en
tiempo discreto creamos un vectortiempo el cual debe tener valores separados por una
unidad.
>>u=[zeros(1,10),ones(1,11)]
>>n=10:10
>>stem(n,u)

Cdigosadicionalespara
grficasycdigodefil...
agosto(12)
2010(1)

PGINASVISTASENTOTAL

246,650

OBRAPROTEGIDA:

Esteobraestbajounalicencia
CreativeCommonsAtribucin
NoComercialCompartirIgual2.5
Mxico.

Recuerdequeparapoderusarlasfuncionesplotystem,esrequisitoquelosvectores(ty
u) (n y u) tengan iguales dimensiones. Por esta razn el vector u se forma como una
composicindediezcerosy11unos,debidoaquelosarreglostyn,tienendimensin21
dado que incluyen un elemento central el cual es el nmero cero. Para probar este hecho,
se puede hacer uso de la funcin Matlab llamada size que devuelve como resultado un
vectorconlasdimensionesdelamatrizqueselepasacomoparmetro.
4)SEALIMPULSO:

La versin discreta de la seal impulso se puede


tambingenerarconayudadelasfuncioneszerosy
ones,realizandounacomposicincomosigue:

>>delta=[zeros(1,10),1,zeros(1,10)]
>>n=10:10
>>stem(n,delta)

5)SEALRAMPA
Para generar la seal rampa, tan solo es necesario
recordarqueestafuncinpuedesercreada,comola
composicindeunarectaY(x)=xapartirdeceroy
de la recta Y(x) = 0 para valores de x menores de
cero, as la versin discreta se muestra a
continuacin:

>>t1=0:0.1:10
>>rampa1=t1
>>rampa=[zeros(1,101),rampa1]
>>t2=10:0.1:0
>>t=[t2,t1]
>>plot(t,rampa)
Ejercicios:
1) Desarrollar un conjunto de comandos Matlab para aproximar las siguientes seales
peridicasentiempocontinuo,dibujando5ciclosdecadauna:
a)OndaCuadrada,deamplitud5Volts,frecuenciafundamental20Hzyciclotildel60%.
b)Sealdientedesierra,amplitud5Voltsyfrecuenciafundamental20Hz
Quizstambinleinterese:

CdigoMatlab
paraacondicionar
yfiltrarsealesde
...

Usodepre
asignacinde
memoriaenMatlab
paraaumentar...

Comparacindel
desempeodeun
filtroconvoluciny
un...
Linkwithin

PublicadoporVicenteTorres

+3 Recomendar esto en Google


Etiquetas:Cdigos,grficas,Procesamientodeseales

4comentarios:

Liux 2deoctubrede2013,2:10
Gracias:D!!!
Responder

FernandoBustamante 19deabrilde2014,15:57
Milgracias,fuedemuchautilidad.DesdeArgentinatesaludo.
Responder

skat 6deoctubrede2015,4:19
Muchasgraciasporelpost,muytilparaunpardecosasquenotenaclaras.
Unsaludo
Responder

jairopadron 28dejuliode2016,5:18
excelenteaporte
Responder

Introducetucomentario...

Comentarcomo:

Publicar

toulouse(Google)

Salir

Vistaprevia

Entradamsreciente

Avisarme

Pginaprincipal

Entradaantigua

Suscribirsea:Enviarcomentarios(Atom)

ConlatecnologadeBlogger.

Potrebbero piacerti anche