SlideShare a Scribd company logo
1 of 8
Download to read offline
Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento.
Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc
1
Resumen—Este trabajo es un informe sobre el muestreo y
procesamiento de una señal discreta y su análisis en Matlab,
para ello hace un enfoque en cuanto a lo referente a la
temática de procesamiento de señales discretas en tiempo
continuo en relación a lo que es teorema de muestreo. Para
ello relaciona un ejemplo de una señal que es capturada y se
desea saber lo que contiene dicha señal, además resalta y
presenta el software de Matlab, como una herramienta muy
útil para simular estos sistemas y lograr excelentes resultados.
Índice de Términos— Modulación, Procesamiento,
Señales Discretas, Codificación, Matlab.
Abstract —This paper is a report on the sampling of a
discrete signal processing and analysis in Matlab, for it makes
an approach to the issue regarding discrete signal processing
in continuous time in relation to what is theorem sampling.
This relates an example of a signal that is captured and wants
to know what the signal is, plus highlights and presents the
Matlab software as a useful tool to simulate these systems and
achieve excellent results tool.
Key words — Modulation, Processing, Discrete Signals,
Coding, and Matlab.
I. INTRODUCCIÓN
Bajo ciertas condiciones, una señal continua puede
representarse y reconstruirse por completo partiendo del
conocimiento de los valores, o de muestras, en puntos
igualmente espaciados en el tiempo. Esta propiedad un
tanto sorprendente se deriva de un resultado básico que
se le conoce como el teorema de muestreo. Este teorema
es un extremo importante y útil.
J. Saavedra, estudiante de la Universitaria de investigación y desarrollo UDI,
Estudiante de ingeniería Electrónica, Barrancabermeja, Colombia
Gran parte de la importancia del teorema de muestreo
reside en su papel de puente entre las señales continuas y
las discretas. Bajo ciertas condiciones, una señal
continua se puede recuperar por completo a partir de
una secuencia de sus muestras, proporciona un
mecanismo para representar una señal continua mediante
una señal discreta. En muchos contextos, el
procesamiento de señales discretas es más flexible y a
menudo se prefiere al procesamiento de señales
continuas. Esto se debe en gran parte al impresionante
desarrollo de la tecnología digital en las últimas décadas,
la cual da como resultado la disponibilidad de sistemas
discretos de bajo costo, ligeros, programables y de fácil
reproducción.
MATLAB es un programa que integra matemáticas
computacionales y visualización para resolver problemas
numéricos basándose en arreglos de matrices y vectores.
Esta herramienta posee infinidad de aplicaciones, pero
existen funciones que involucran la resolución de
problemas específicos de control de procesos como la
definición y estudio de funciones transferencia entre
otras.
MATLAB es un poderoso lenguaje de programación que
incluye los conceptos básicos comunes a la mayoría de
los lenguajes de programación. Puesto que se trata de un
lenguaje con base en scripts, la creación de programas y
su depuración en MATLAB con frecuencia es más fácil
que en los lenguajes tradicionales de programación,
como C++. Esto hace de MATLAB una valiosa
herramienta para las clases introductorias a la
programación.
Muestreo y Procesamiento de una señal discreta y su
análisis en Matlab
SAAVEDRA G, JEISSON J.
Jeisson20saavedra@gmail.com
Universitaria de investigación y desarrollo UDÍ
Asignatura Procesamiento de señales discretas, Escuela de ingeniería electrónica y
telecomunicaciones.
Ingeniería electrónica, Barrancabermeja, Santander, Colombia.
Tel: 6202638-6222863, fax: 6200790
Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento.
Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc
2
MATLAB fue adoptado en sus orígenes por
profesionales de los campos de procesamiento de señales
e ingeniería eléctrica, la mayoría de dichos textos daban
ejemplos principalmente de dichas áreas, enfoque que no
se adaptaba a un currículo general de ingeniería. Este
texto muestra cómo se puede usar MATLAB para
resolver problemas de ingeniería de un rango amplio de
disciplinas. El ejemplo mostrado o la señal a la cual se le
realizara el análisis con Matlab comprende una serie de
sucesos para lograr interpretar el mensaje y todo esta
será realizado bajo la plataforma de Matlab esto como
contexto de lo visto en la temática de procesamiento de
señales digitales.
Las funciones principales se van a explicar sobre el
ejemplo o ejercicio propuesto, con el fin de que su uso y
comprensión sean lo más sencillos posible.
II. PROCESAMIENTO DISCRETO DE SEÑALES
CONTINUAS
En muchas aplicaciones, se puede obtener una ventaja
significativa en el procesamiento de una señal continua
al convertirla primero en una señal discreta y, después de
procesarla de ese modo, convertirla de nuevo en una
señal continua. El procesamiento de la señal discreta se
puede llevar a cabo con una computadora general o de
propósito especial, con microprocesadores o con
cualquiera de la gran variedad de dispositivos que están
diseñados específicamente para el procesamiento de
señales discretas.
La base teórica para la conversión de una señal continua
a una señal discreta y la reconstrucción de una señal
continua a partir de su representación de tiempo discreto
reside en el teorema de muestreo.
El esquema general para el procesado discreto de señales
continuas es el de la figura 1.
Figura 1. Procesamiento de tiempo discreto de señales continúas.
Lo que vemos representado en la figura 1 es el modelo
general de un sistema de conversión análogo digital,
veamos una señal cualquiera o a la que se le pretende
realizar dicha conversión entra al sistema pasando por un
conversor análogo digital o A/D, obtenemos en la salida
una señal que tiene propiedades discretas en un cierto
periodo de muestreo o n valores de muestras bajo cierto
tiempo periódico determinado que dicho conversor
realiza. Recordemos que el tiempo es importante ya que
permite saber el momento exacto en el que dicho
conversor toma cada una de las muestras y así cuando se
le realice el proceso inverso el D/A ya que debe poner
muestras de la señal digital en la analógica en el mismo
tiempo o periodo de muestreo.
III. PROCESAMIENTO DE SEÑALES DISCRETAS EN
MATLAB
Existen algunos aspectos que se deben tener en cuenta
cuando se pretende hacer un procesamiento como tal de
una señal, estos son los siguientes:
• Señales y sistemas en tiempo discreto
• Transformada discreta de Fourier
• Muestreo de señales en tiempo continúo
• Filtros
Matlab es una herramienta que permite realizar cada uno
de los anteriores aspectos temáticos bajo la
programación, y de esta forma es que llevaremos a cabo
el proceso de muestreo y procesamiento de una señal
discreta.
A. Comandos usados para la práctica con
Matlab.
Durante el análisis de señales con Matlab es
importante tener en cuenta los siguientes comandos,
cabe recordar que existen muchas más, pero no serán
contemplados en nuestro caso de análisis.
load() %Permite importar datos.
fft(x) %Transformada discreta de Fourier
del vector x
ifft(x) %Transformada inversa rápida de
Fourier del vector x
fftshift()%para obtener el espectro
estándar.
tittle - %añade título a la gráfica
xlabel - %añade encabezamiento al eje-x
Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento.
Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc
3
ylabel - %añade encabezamiento al eje-y
plot - %crea una gráfica de vectores ó
columnas de matrices.
Axis() %Escala y apariencia de los ejes
fir1 %Crea un filtro pasa bajas
IV. PLANTEAMIENTO DEL PROBLEMA A PROCESAR
CON MATLAB
A. Decodificador de Mensaje Extraterrestre
Se nos informa que una señal de origen extraterrestre ha
sido recibida en el radiotelescopio de Arecibo, Puerto
Rico. La señal tiene una duración de 3.2 segundos. La
señal tiene las siguientes características:
• Longitud de la señal: 160 bits (3.2 segundos).
• Número de muestras: 141280 muestras
• Frecuencia de muestreo: 44100 Hz.
• Codificación del mensaje: 8 bits/muestra (ASCII
ver tabla adjunta).
• Modulación FSK (1: 15 KHz, 0: 10 KHz)
• Duración de cada bit: 20 milisegundos.
La señal fue recibida con ruido blanco Gaussiano1
adicionado que dificulta la decodificación. Usando
Matlab® diseñe un programa que sea capaz de
decodificar el mensaje extraterrestre.
La señal se entrega en formato .mat para propósitos de
decodificación usando Matlab.
La idea de este ejercicio es descifrar el mensaje
contenido en una señal cuyas características son dadas,
Matlab es una herramienta que nos permite realizar todo
el procedimiento y lograr conocer el contenido de dicho
mensaje.
1
El ruido blanco Gaussiano es un ruido simultáneamente blanco(aquel en el
que no hay correlación en el tiempo) y Gaussiano, combinando las dos
características.
B. Paso a seguir para la decodificación del
mensaje.
Primer paso:
Como primer paso es abrir un nuevo New Script y
cargar la señal en Matlab, este paso lo hacemos con el
comando load de la siguiente forma:
load('senalrx.mat')
Recordemos que la señal lleva el nombre de senalrx en
un formato .mat.
Es muy usual que cuando se programa en Matlab se use
las siguientes líneas para garantizar que el workspace
este totalmente limpio así mismo el command window:
clc
clear all
close all
Segundo Paso:
En el Segundo Paso se asignan las especificaciones de
dicha señal. De la siguiente forma:
Fs=44100; %frecuencia de muestreo
Ts=1/Fs; %periodo de muestreo
Np=141280; %numero de muestras
Tt=Np*Ts; %tiempo total
t=0:Ts:Tt-Ts; %vector de tiempo
X=xn; %se asignan en X la señal
La señal gráficamente con esos valores se ve de la
siguiente forma: (ver figura 2).
Figura 2. Grafica del mensaje recibido
Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento.
Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc
4
Tercer paso:
Durante este paso como ya se tiene la señal guardada en
una variable a la que llamamos X, lo que se hace ahora
es pasar una señal que tengo en tiempo pasarla a su
frecuencia para permitir un análisis mucho más fácil,
primero pasamos a frecuencia de la siguiente forma:
finc=Fs/Np; %incremento en frecuencia
sf=-Fs/2:finc:Fs/2-finc; %vector de
frecuencia con eje centrado
fn=Fs/2; %frecuencia de Nyquist
.
Se toma el rango de muestreo en el que se desea hacer
dicha modulación y la frecuencia con la que se va a
tomar la muestra. Cuando se están haciendo tomas de
muestras es importante usar y tener en cuenta el
teorema de Nyquist 2
para hacer dicho muestreo.
Luego de tomar el rango en el que se va a tomar dichas
muestras se pasa a frecuencia, usando la transformad de
Fourier3
. De la siguiente forma:
fX=fft(X);
sfX=fftshift(fX);% uso de la funcion
"fftshift" para obtener el espectro
estandar.
msfX=abs(sfX);
La grafica que se ve de dicha señal vista en la figura 2
ahora vista desde un espectro en frecuencia seria la
siguiente. (Ver figura 3).
2
Frecuencia de Nyquist: Según el teorema de muestreo de Nyquist-Shannon,
para poder replicar con exactitud (es decir, siendo matemáticamente reversible
en su totalidad) la forma de una onda es necesario que la frecuencia de
muestreo sea superior al doble de la máxima frecuencia a muestrear.
3
Es una transformación matemática empleada para transformar señales entre
el dominio del tiempo(o espacial) y el dominio de la frecuencia, que tiene
muchas aplicaciones en la física y la ingeniería. Es reversible, siendo capaz de
transformaciones de cualquiera de los dominios al otro. El propio término se
refiere tanto a la operación de transformación como a la función que produce.
Figura 3. Grafica del espectro en frecuencia de la Señal recibida
Cuarto paso:
El ejercicio plantea una señal que trae un ruido
Gaussiano o ruido blanco este ruido que se ve en la
figura anterior, perturba nuestra señal y la recepción del
mensaje por ello hay que eliminarlo, para ello los
sistemas electrónicos utilizan filtros FIR4
o cualquiera
dependiendo del ruido que desean eliminar.
Para ello Matlab permite crear filtros virtuales que hacen
este procedimiento; de la siguiente forma:
Wp=[5000 fn-1]/fn; %ANCHO DE FRECUENCIA
h=fir1(Np-1,Wp);
Para nuestro caso como se trata de un Ruido Gaussiano,
definimos que el filtro sea un pasa altas y que deje pasar
las frecuencias a partir de 5KHz en adelante ya que las
frecuencias que nos interesa rescatar están en 10KHz y
15KHz.
Este filtro que se crea en función del tiempo, ahí la
necesidad de pasar a frecuencia ya que la señal que va a
filtrar están ahora en frecuencia por que se les realizo la
transformada de Fourier, así que de la misma forma
conviene hacer lo mismo con el filtro.
Esto sería de la siguiente forma:
fh=fft(h);
sfh=fftshift(fh);
msfh=abs(sfh);
4
FIR: Finite Impulse Response o Respuesta finita al impulso. Se trata de
un tipo de filtros digitales cuya respuesta a una señal impulso como entrada
tendrá un número finito de términos no nulos.
Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento.
Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc
5
El filtro se vería de la siguiente forma. (Ver figura 4)
Figura 4. Grafica del espectro en frecuencia del filtro pasa altas, FIR.
Nótese que todas las frecuencias que están entre 0KHz y
5KHz están atenuadas. Y no permitirá su paso.
Para unir la señal del filtro con la señal del mensaje, lo
que se hace es multiplicar esas dos señales en frecuencia
para obtener una sola señal con salida en relación a las
frecuencias que permita dicho filtro.
En Matlab seria de la siguiente forma.
fY= fX.*fh;
sfY=fftshift(fY);
msfY=abs(sfY);
La forma como se vería dicha señal filtrada se refleja en
la figura 5.
Figura 5.Grafica del espectro en frecuencia de la señal filtrada, sin ruido
Gaussiano
Quinto paso
Luego de tener la señal en frecuencia y filtrada se debe
modular pero antes de ese ´paso es necesario que esa
señal que está en frecuencia vuelva a estar en función del
tiempo para que pueda ser modulada, ya que la señal
como tal tiene modulación FSK que tiene longitud de
160 bits en un tiempo de 3,2 s y duración por bits de 20
milisegundos por ello es necesario trabajar en función
del tiempo para modular, para ello se le hace la
transformada inversa de Fourier5
. Mediante el uso del
siguiente comando:
Y=ifft(fY);
De acuerdo a esto la señal filtrada en función del tiempo
es la que se ve en la figura 6.
Figura 6. Grafica de la señal filtrada en función del tiempo
Para modular dicha señal que se refleja en la Figura 6 se
realiza el siguiente paso
for i=1:160
for j= 1: 883
Z(i,j)=Y(j+(i-1)*883);
end
W=Z(i,1:883);
FW=fft(W);
FFW=fftshift(FW);
MFW=abs(FW);
[ma ima]=max(MFW);
fre=ima*Fs/883;
if fre<12000
A(i)=0;
else
5
La transformada inversa de Fourier es llevar una función que está en
frecuencia a su función en relación al tiempo.
Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento.
Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc
6
A(i)=1;
end
end
Lo que se hace es un programa para que cree un vector
con cada uno de los bits que existen en dicha señal,
como la señal tiene una longitud de 160 bits entonces
colocamos un incrementado que recorra de 1 a 160
mediante el uso de un for, luego otro for anidado que
me realiza un recorrido desde 1 hasta 883, debido a que
el numero de muestras tomadas fueron de 141280 con
una separación de 20 milisegundos cada una en los 3.2s
que duro dicha toma de muestras.
Luego de tener el vector se hace necesario pasar a
frecuencia nuevamente y rescatar el valor absoluto en la
matriz, en este caso vector y lograr determinar cuales
están en 10KHz y cuales son mayores o iguales a
15KHz. Y así definir cuáles son ceros y cuales son unos.
La codificación del mensaje permitirá definir las letras o
caracteres en el mensaje o en la señal, de acuerdo a los
parámetros dados inicialmente.
Dicha codificación del mensaje es el mostrado en la
siguiente figura.
Figura 7. Grafica que muestra la serie de datos en el mensaje ceros y unos.
Sexto paso:
Por último, como la idea del sistema es conocer el
mensaje codificado, para ello se hace la necesidad de
primero separar las tramas de bit, en paquetes o grupos
de 8 bits, al final como son 160 el total de bits. Serian 20
caracteres en el mensaje.
Para realizar esta separación se realiza lo siguiente en
Matlab:
for n=1:20
val(n)=0;
for m=1:8
v(n,m)=A(((n-1)*8)+m);
if A(((n-1)*8)+m)==1
val(n) = val(n)+ (2^(8-m));
end
end
end
v
val
Este código tiene la particularidad principal de hacer dos
procedimientos al mismo tiempo, el primero es el de
agruparme en una matriz de 20x8 todos los unos y ceros
de la señal codificada, y la segunda particularidad, es
que permite convertir los valores de ceros y unos en
números enteros y ese número le corresponde a una letra
del código ASCII lo cual permite una mayor facilidad a
la hora de pasar el mensaje a caracteres y lograr entender
lo que dice el mensaje en dicha señal.
Para lograr lo anterior primero que todo se pregunta si
hay un uno en dichas filas que en este caso son filas n
entonces si hay un uno lo opere realizando la conversión
de binario a decimal normal y general usado para este
tipo de conversión que mediante las potencias en base 2,
para cada uno de los términos que contenga m columnas,
sabemos que se debe empezar de izquierda hacia la
derecha de ahí el porqué de ser 2^(8-m)mediante esta
conversión es mucho más fácil pasar esos números a su
carácter correspondiente de acuerdo al código ASCII.
Matlab cuenta con una instrucción o comando que
permite convertir un vector que contiene una serie de
números enteros en su correspondiente carácter, el
código es el siguiente;
sprintf('%s', ”Vector a convertir”)
De esta forma se mostrara o imprimirá en el command
window cada uno de los caracteres de dicho vector.
El resultado final de todo el procedimiento va ser una
matriz que contiene agrupados los unos y ceros por
grupos de filas de 8, se muestra en la figura 8 luego un
vector que contiene los valores en decimal de dicha
matriz, ver figura 9 y como resultado final se muestra el
mensaje en caracteres. (Ver figura 10)
Universitaria de investigación y Desarrollo UDI.
Muestreo y Procesamiento de una señal discreta
Figura 8. Matriz resultante con el mensaje codificado
Figura 9. Vector con el mensaje convertido en decimal.
Figura 10. Mensaje decodificado en caracteres.
Universitaria de investigación y Desarrollo UDI. J Saavedra.
señal discreta y su análisis en Matlab.doc
con el mensaje codificado.
convertido en decimal.
Figura 10. Mensaje decodificado en caracteres.
V. CONCLUSIONES
Este artículo deja como resultado el análisis en Matlab
de un muestreo y procesamiento de una señal, mostrando
su mensaje codificado, Matlab es una herramienta
altamente importante y útil a la hora de realizar este tipo
de análisis ya que permite que a través de código
programado reemplacemos equipos electrónicos que
muchas veces resultan poco atractivos por su
complejidad a la hora de su uso, por ello con este
software es mucho más fácil y muy eficiente para
realizar este tipo de procedimientos.
modelo más real se hace necesario la implementación de
un sistema electrónico existente, para realizar este
procedimiento, por ello la idea de que cada vez
sistemas de comunicación deben ser más exactos o
precisos y además tienen que implementar sistemas
digitales, que dan como resultado índices positivos en
cuanto a la comunicación que usa conversión Análoga
Digital A/D.
APÉNDICE:
Para este articulo se hace necesario la utilización de la
tabla de códigos ASCII para una vez finalizado el
proceso de modulación y codificación contribuya a
conocer el mensaje oculto en la señal, El código
(siglas en ingles para American Standard Code for
Information Interchange, es decir Código Americano
estándar para el intercambio de Información, es
un código de caracteres basado en el
como se usa en inglés moderno y en otras lenguas
occidentales. Fue creado en
Estadounidense de Estándares (ASA, conocido desde
1969 como el Instituto Estadounidense de Estándares
Nacionales, o ANSI) como una refundición o evolución
de los conjuntos de códigos utilizados entonces
en telegrafía. Más tarde, en
minúsculas, y se redefinieron algunos códigos de control
para formar el código conocido como
El código ASCII utiliza 7 bits para representar los
caracteres, aunque inicialmente empleaba un bit
adicional (bit de paridad) que se usaba para detectar
errores en la transmisión.
Muestreo y procesamiento. 7
ONCLUSIONES
Este artículo deja como resultado el análisis en Matlab
de un muestreo y procesamiento de una señal, mostrando
su mensaje codificado, Matlab es una herramienta
altamente importante y útil a la hora de realizar este tipo
de análisis ya que permite que a través de código
programado reemplacemos equipos electrónicos que
muchas veces resultan poco atractivos por su
complejidad a la hora de su uso, por ello con este
software es mucho más fácil y muy eficiente para
realizar este tipo de procedimientos. Quizás en un
modelo más real se hace necesario la implementación de
un sistema electrónico existente, para realizar este
procedimiento, por ello la idea de que cada vez los
sistemas de comunicación deben ser más exactos o
precisos y además tienen que implementar sistemas
digitales, que dan como resultado índices positivos en
cuanto a la comunicación que usa conversión Análoga-
CÓDIGO ASCII
ste articulo se hace necesario la utilización de la
tabla de códigos ASCII para una vez finalizado el
proceso de modulación y codificación contribuya a
conocer el mensaje oculto en la señal, El código ASCII
(siglas en ingles para American Standard Code for
Information Interchange, es decir Código Americano
estándar para el intercambio de Información, es
basado en el alfabeto latino, tal
como se usa en inglés moderno y en otras lenguas
occidentales. Fue creado en 1963 por el Comité
e de Estándares (ASA, conocido desde
1969 como el Instituto Estadounidense de Estándares
) como una refundición o evolución
de los conjuntos de códigos utilizados entonces
. Más tarde, en 1967, se incluyeron las
minúsculas, y se redefinieron algunos códigos de control
para formar el código conocido como US-ASCII.
El código ASCII utiliza 7 bits para representar los
caracteres, aunque inicialmente empleaba un bit
) que se usaba para detectar
Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento.
Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc
8
La figura 11. Muestra la codificación ASCII de los
caracteres imprimibles.
Figura 11. Códigos ASCII imprimibles
REFERENCIAS
[1] Alan V. Oppenheim, Alan S. Willsky,S. Hamid Nawab,
“Señales y sistemas,” 2nd ed. Mexico:Pearson educacion,
1998, pp. 514–544.
[2] Moyano B José M, “Procesamiento analógico
colaborativo”, (2013, Abril 19), [Online]. Disponible:
https://es.scribd.com/doc/136860087/PROCESAMIENT
O-ANALOGICO-COLABORATIVO-2
[3] Morales M Luis J, “Señales en tiempo discreto”, (n.d.),
[Online]. Disponible:
http://www.ingenierias.ugto.mx/profesores/ljavier/docum
entos/Lec02%20-
%20Se%C3%B1ales%20%20en%20Tiempo%20Discreto
.pdf
[4] Mathworks, “help matlab”, (n.d.), [Online]. Disponible:
http://www.mathworks.com/help/matlab/ref/abs.html
[5] El código ASCII, “Códigos ASCII”, (n.d.), [Online].
Disponible:
http://www.elcodigoascii.com.ar/codigos-ascii/letra-c-
minuscula-codigo-ascii-99.html
[6] Universitat Politecnica de Valencia, “Tratamiento de
señales en comunicación. Conversiones. Procesado
discreto de señales continuas,” (2013, noviembre 5 ),
[Online], Disponible:
https://www.youtube.com/watch?v=fqBbWJT3Lkc
Autor
Jeisson Julián Saavedra García
Cod. 2116012
CEL: 321 458 99 81
Graduado como bachiller técnico en el año de 2009 en la
institución educativa José María Vargas Vila,
actualmente cursa el octavo semestre de la carrera
INGENIERÍA ELECTRÓNICA en la universitaria de
investigación y desarrollo UDÍ, en la ciudad de
Barrancabermeja-Santander participa en proyecto de
investigación en los semilleros de Investigación de la
universidad.

More Related Content

What's hot

Utp sirn_sl4 la rna perceptron
 Utp sirn_sl4 la rna perceptron Utp sirn_sl4 la rna perceptron
Utp sirn_sl4 la rna perceptron
c09271
 
Implementacion de la funcion logica xor, mediante un modelo neuronal y el alg...
Implementacion de la funcion logica xor, mediante un modelo neuronal y el alg...Implementacion de la funcion logica xor, mediante un modelo neuronal y el alg...
Implementacion de la funcion logica xor, mediante un modelo neuronal y el alg...
Tribunal Electoral Provincia de Misiones
 
Utp sirn_sl2 la rna perceptron
 Utp sirn_sl2 la rna perceptron Utp sirn_sl2 la rna perceptron
Utp sirn_sl2 la rna perceptron
jcbenitezp
 
Utp sirn_s6_adaline y backpropagation
 Utp sirn_s6_adaline y backpropagation Utp sirn_s6_adaline y backpropagation
Utp sirn_s6_adaline y backpropagation
jcbp_peru
 
REDES NEURONALES RECURRENTES Elman
REDES NEURONALES RECURRENTES ElmanREDES NEURONALES RECURRENTES Elman
REDES NEURONALES RECURRENTES Elman
ESCOM
 
Donde se utilizan_las_senales_cuantificadas
Donde se utilizan_las_senales_cuantificadasDonde se utilizan_las_senales_cuantificadas
Donde se utilizan_las_senales_cuantificadas
Victor Vazquez
 
Utp 2015-2_ia_lab1.pdf
 Utp 2015-2_ia_lab1.pdf Utp 2015-2_ia_lab1.pdf
Utp 2015-2_ia_lab1.pdf
jcbp_peru
 
Utp 2015-2_sirn_s6_adaline y backpropagation
 Utp 2015-2_sirn_s6_adaline y backpropagation Utp 2015-2_sirn_s6_adaline y backpropagation
Utp 2015-2_sirn_s6_adaline y backpropagation
jcbenitezp
 
Utp 2015-2_ia_s6_adaline y backpropagation
 Utp 2015-2_ia_s6_adaline y backpropagation Utp 2015-2_ia_s6_adaline y backpropagation
Utp 2015-2_ia_s6_adaline y backpropagation
jcbp_peru
 

What's hot (20)

Paperman
PapermanPaperman
Paperman
 
Utp sirn_sl4 la rna perceptron
 Utp sirn_sl4 la rna perceptron Utp sirn_sl4 la rna perceptron
Utp sirn_sl4 la rna perceptron
 
Implementacion de la funcion logica xor, mediante un modelo neuronal y el alg...
Implementacion de la funcion logica xor, mediante un modelo neuronal y el alg...Implementacion de la funcion logica xor, mediante un modelo neuronal y el alg...
Implementacion de la funcion logica xor, mediante un modelo neuronal y el alg...
 
Utp sirn_sl2 la rna perceptron
 Utp sirn_sl2 la rna perceptron Utp sirn_sl2 la rna perceptron
Utp sirn_sl2 la rna perceptron
 
Algoritmo de Retropropagación
Algoritmo de RetropropagaciónAlgoritmo de Retropropagación
Algoritmo de Retropropagación
 
Redes neuronales
Redes neuronalesRedes neuronales
Redes neuronales
 
Utp sirn_s6_adaline y backpropagation
 Utp sirn_s6_adaline y backpropagation Utp sirn_s6_adaline y backpropagation
Utp sirn_s6_adaline y backpropagation
 
REDES NEURONALES RECURRENTES Elman
REDES NEURONALES RECURRENTES ElmanREDES NEURONALES RECURRENTES Elman
REDES NEURONALES RECURRENTES Elman
 
Presentacion ip algoritmia_2012_i_v2_parte_i
Presentacion ip algoritmia_2012_i_v2_parte_iPresentacion ip algoritmia_2012_i_v2_parte_i
Presentacion ip algoritmia_2012_i_v2_parte_i
 
Donde se utilizan_las_senales_cuantificadas
Donde se utilizan_las_senales_cuantificadasDonde se utilizan_las_senales_cuantificadas
Donde se utilizan_las_senales_cuantificadas
 
Utp 2015-2_ia_lab1.pdf
 Utp 2015-2_ia_lab1.pdf Utp 2015-2_ia_lab1.pdf
Utp 2015-2_ia_lab1.pdf
 
Redes neuronales artificiales de base radial
Redes neuronales artificiales de base radialRedes neuronales artificiales de base radial
Redes neuronales artificiales de base radial
 
Utp 2015-2_sirn_s6_adaline y backpropagation
 Utp 2015-2_sirn_s6_adaline y backpropagation Utp 2015-2_sirn_s6_adaline y backpropagation
Utp 2015-2_sirn_s6_adaline y backpropagation
 
RED NEURONAL Backpropagation
RED NEURONAL BackpropagationRED NEURONAL Backpropagation
RED NEURONAL Backpropagation
 
El Perceptrón Multicapa
El Perceptrón  MulticapaEl Perceptrón  Multicapa
El Perceptrón Multicapa
 
Utp 2015-2_ia_lab3
 Utp 2015-2_ia_lab3 Utp 2015-2_ia_lab3
Utp 2015-2_ia_lab3
 
Utp 2015-2_ia_s6_adaline y backpropagation
 Utp 2015-2_ia_s6_adaline y backpropagation Utp 2015-2_ia_s6_adaline y backpropagation
Utp 2015-2_ia_s6_adaline y backpropagation
 
Redes de neuronas recurrentes
Redes de neuronas recurrentesRedes de neuronas recurrentes
Redes de neuronas recurrentes
 
REDES NEURONALES ADALINE
REDES NEURONALES ADALINEREDES NEURONALES ADALINE
REDES NEURONALES ADALINE
 
Dsp2
Dsp2Dsp2
Dsp2
 

Similar to Muestreo y procesamientopdf

Similar to Muestreo y procesamientopdf (20)

Informe matlab.
Informe matlab.Informe matlab.
Informe matlab.
 
Trabajo matlab
Trabajo matlabTrabajo matlab
Trabajo matlab
 
Clasificador Caracteres Logsig Tansig
Clasificador Caracteres Logsig TansigClasificador Caracteres Logsig Tansig
Clasificador Caracteres Logsig Tansig
 
Diagrama de bode
Diagrama de bodeDiagrama de bode
Diagrama de bode
 
Universidad técnica del norte
Universidad técnica del norteUniversidad técnica del norte
Universidad técnica del norte
 
Respuesta en frecuencia
Respuesta en frecuenciaRespuesta en frecuencia
Respuesta en frecuencia
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial de matlab [101 paginas en español]
Tutorial de matlab [101 paginas   en español]Tutorial de matlab [101 paginas   en español]
Tutorial de matlab [101 paginas en español]
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
matlab (2).pptx
matlab (2).pptxmatlab (2).pptx
matlab (2).pptx
 
Informe funciones singulares
Informe funciones singularesInforme funciones singulares
Informe funciones singulares
 
Deber 7-cap-2-matlab-nise
Deber 7-cap-2-matlab-niseDeber 7-cap-2-matlab-nise
Deber 7-cap-2-matlab-nise
 
Carmen
CarmenCarmen
Carmen
 
Carmen
CarmenCarmen
Carmen
 
Carmen
CarmenCarmen
Carmen
 

Recently uploaded

Sesión N°2_Curso_Ingeniería_Sanitaria.pdf
Sesión N°2_Curso_Ingeniería_Sanitaria.pdfSesión N°2_Curso_Ingeniería_Sanitaria.pdf
Sesión N°2_Curso_Ingeniería_Sanitaria.pdf
annavarrom
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
bcondort
 
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
vladimirpaucarmontes
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
CristhianZetaNima
 

Recently uploaded (20)

Sesión N°2_Curso_Ingeniería_Sanitaria.pdf
Sesión N°2_Curso_Ingeniería_Sanitaria.pdfSesión N°2_Curso_Ingeniería_Sanitaria.pdf
Sesión N°2_Curso_Ingeniería_Sanitaria.pdf
 
Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcción
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
 
osciloscopios Mediciones Electricas ingenieria.pdf
osciloscopios Mediciones Electricas ingenieria.pdfosciloscopios Mediciones Electricas ingenieria.pdf
osciloscopios Mediciones Electricas ingenieria.pdf
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOCAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
 
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesUNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...
 
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
 
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
 
Ejemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - EjerciciosEjemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - Ejercicios
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 

Muestreo y procesamientopdf

  • 1. Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento. Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc 1 Resumen—Este trabajo es un informe sobre el muestreo y procesamiento de una señal discreta y su análisis en Matlab, para ello hace un enfoque en cuanto a lo referente a la temática de procesamiento de señales discretas en tiempo continuo en relación a lo que es teorema de muestreo. Para ello relaciona un ejemplo de una señal que es capturada y se desea saber lo que contiene dicha señal, además resalta y presenta el software de Matlab, como una herramienta muy útil para simular estos sistemas y lograr excelentes resultados. Índice de Términos— Modulación, Procesamiento, Señales Discretas, Codificación, Matlab. Abstract —This paper is a report on the sampling of a discrete signal processing and analysis in Matlab, for it makes an approach to the issue regarding discrete signal processing in continuous time in relation to what is theorem sampling. This relates an example of a signal that is captured and wants to know what the signal is, plus highlights and presents the Matlab software as a useful tool to simulate these systems and achieve excellent results tool. Key words — Modulation, Processing, Discrete Signals, Coding, and Matlab. I. INTRODUCCIÓN Bajo ciertas condiciones, una señal continua puede representarse y reconstruirse por completo partiendo del conocimiento de los valores, o de muestras, en puntos igualmente espaciados en el tiempo. Esta propiedad un tanto sorprendente se deriva de un resultado básico que se le conoce como el teorema de muestreo. Este teorema es un extremo importante y útil. J. Saavedra, estudiante de la Universitaria de investigación y desarrollo UDI, Estudiante de ingeniería Electrónica, Barrancabermeja, Colombia Gran parte de la importancia del teorema de muestreo reside en su papel de puente entre las señales continuas y las discretas. Bajo ciertas condiciones, una señal continua se puede recuperar por completo a partir de una secuencia de sus muestras, proporciona un mecanismo para representar una señal continua mediante una señal discreta. En muchos contextos, el procesamiento de señales discretas es más flexible y a menudo se prefiere al procesamiento de señales continuas. Esto se debe en gran parte al impresionante desarrollo de la tecnología digital en las últimas décadas, la cual da como resultado la disponibilidad de sistemas discretos de bajo costo, ligeros, programables y de fácil reproducción. MATLAB es un programa que integra matemáticas computacionales y visualización para resolver problemas numéricos basándose en arreglos de matrices y vectores. Esta herramienta posee infinidad de aplicaciones, pero existen funciones que involucran la resolución de problemas específicos de control de procesos como la definición y estudio de funciones transferencia entre otras. MATLAB es un poderoso lenguaje de programación que incluye los conceptos básicos comunes a la mayoría de los lenguajes de programación. Puesto que se trata de un lenguaje con base en scripts, la creación de programas y su depuración en MATLAB con frecuencia es más fácil que en los lenguajes tradicionales de programación, como C++. Esto hace de MATLAB una valiosa herramienta para las clases introductorias a la programación. Muestreo y Procesamiento de una señal discreta y su análisis en Matlab SAAVEDRA G, JEISSON J. Jeisson20saavedra@gmail.com Universitaria de investigación y desarrollo UDÍ Asignatura Procesamiento de señales discretas, Escuela de ingeniería electrónica y telecomunicaciones. Ingeniería electrónica, Barrancabermeja, Santander, Colombia. Tel: 6202638-6222863, fax: 6200790
  • 2. Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento. Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc 2 MATLAB fue adoptado en sus orígenes por profesionales de los campos de procesamiento de señales e ingeniería eléctrica, la mayoría de dichos textos daban ejemplos principalmente de dichas áreas, enfoque que no se adaptaba a un currículo general de ingeniería. Este texto muestra cómo se puede usar MATLAB para resolver problemas de ingeniería de un rango amplio de disciplinas. El ejemplo mostrado o la señal a la cual se le realizara el análisis con Matlab comprende una serie de sucesos para lograr interpretar el mensaje y todo esta será realizado bajo la plataforma de Matlab esto como contexto de lo visto en la temática de procesamiento de señales digitales. Las funciones principales se van a explicar sobre el ejemplo o ejercicio propuesto, con el fin de que su uso y comprensión sean lo más sencillos posible. II. PROCESAMIENTO DISCRETO DE SEÑALES CONTINUAS En muchas aplicaciones, se puede obtener una ventaja significativa en el procesamiento de una señal continua al convertirla primero en una señal discreta y, después de procesarla de ese modo, convertirla de nuevo en una señal continua. El procesamiento de la señal discreta se puede llevar a cabo con una computadora general o de propósito especial, con microprocesadores o con cualquiera de la gran variedad de dispositivos que están diseñados específicamente para el procesamiento de señales discretas. La base teórica para la conversión de una señal continua a una señal discreta y la reconstrucción de una señal continua a partir de su representación de tiempo discreto reside en el teorema de muestreo. El esquema general para el procesado discreto de señales continuas es el de la figura 1. Figura 1. Procesamiento de tiempo discreto de señales continúas. Lo que vemos representado en la figura 1 es el modelo general de un sistema de conversión análogo digital, veamos una señal cualquiera o a la que se le pretende realizar dicha conversión entra al sistema pasando por un conversor análogo digital o A/D, obtenemos en la salida una señal que tiene propiedades discretas en un cierto periodo de muestreo o n valores de muestras bajo cierto tiempo periódico determinado que dicho conversor realiza. Recordemos que el tiempo es importante ya que permite saber el momento exacto en el que dicho conversor toma cada una de las muestras y así cuando se le realice el proceso inverso el D/A ya que debe poner muestras de la señal digital en la analógica en el mismo tiempo o periodo de muestreo. III. PROCESAMIENTO DE SEÑALES DISCRETAS EN MATLAB Existen algunos aspectos que se deben tener en cuenta cuando se pretende hacer un procesamiento como tal de una señal, estos son los siguientes: • Señales y sistemas en tiempo discreto • Transformada discreta de Fourier • Muestreo de señales en tiempo continúo • Filtros Matlab es una herramienta que permite realizar cada uno de los anteriores aspectos temáticos bajo la programación, y de esta forma es que llevaremos a cabo el proceso de muestreo y procesamiento de una señal discreta. A. Comandos usados para la práctica con Matlab. Durante el análisis de señales con Matlab es importante tener en cuenta los siguientes comandos, cabe recordar que existen muchas más, pero no serán contemplados en nuestro caso de análisis. load() %Permite importar datos. fft(x) %Transformada discreta de Fourier del vector x ifft(x) %Transformada inversa rápida de Fourier del vector x fftshift()%para obtener el espectro estándar. tittle - %añade título a la gráfica xlabel - %añade encabezamiento al eje-x
  • 3. Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento. Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc 3 ylabel - %añade encabezamiento al eje-y plot - %crea una gráfica de vectores ó columnas de matrices. Axis() %Escala y apariencia de los ejes fir1 %Crea un filtro pasa bajas IV. PLANTEAMIENTO DEL PROBLEMA A PROCESAR CON MATLAB A. Decodificador de Mensaje Extraterrestre Se nos informa que una señal de origen extraterrestre ha sido recibida en el radiotelescopio de Arecibo, Puerto Rico. La señal tiene una duración de 3.2 segundos. La señal tiene las siguientes características: • Longitud de la señal: 160 bits (3.2 segundos). • Número de muestras: 141280 muestras • Frecuencia de muestreo: 44100 Hz. • Codificación del mensaje: 8 bits/muestra (ASCII ver tabla adjunta). • Modulación FSK (1: 15 KHz, 0: 10 KHz) • Duración de cada bit: 20 milisegundos. La señal fue recibida con ruido blanco Gaussiano1 adicionado que dificulta la decodificación. Usando Matlab® diseñe un programa que sea capaz de decodificar el mensaje extraterrestre. La señal se entrega en formato .mat para propósitos de decodificación usando Matlab. La idea de este ejercicio es descifrar el mensaje contenido en una señal cuyas características son dadas, Matlab es una herramienta que nos permite realizar todo el procedimiento y lograr conocer el contenido de dicho mensaje. 1 El ruido blanco Gaussiano es un ruido simultáneamente blanco(aquel en el que no hay correlación en el tiempo) y Gaussiano, combinando las dos características. B. Paso a seguir para la decodificación del mensaje. Primer paso: Como primer paso es abrir un nuevo New Script y cargar la señal en Matlab, este paso lo hacemos con el comando load de la siguiente forma: load('senalrx.mat') Recordemos que la señal lleva el nombre de senalrx en un formato .mat. Es muy usual que cuando se programa en Matlab se use las siguientes líneas para garantizar que el workspace este totalmente limpio así mismo el command window: clc clear all close all Segundo Paso: En el Segundo Paso se asignan las especificaciones de dicha señal. De la siguiente forma: Fs=44100; %frecuencia de muestreo Ts=1/Fs; %periodo de muestreo Np=141280; %numero de muestras Tt=Np*Ts; %tiempo total t=0:Ts:Tt-Ts; %vector de tiempo X=xn; %se asignan en X la señal La señal gráficamente con esos valores se ve de la siguiente forma: (ver figura 2). Figura 2. Grafica del mensaje recibido
  • 4. Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento. Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc 4 Tercer paso: Durante este paso como ya se tiene la señal guardada en una variable a la que llamamos X, lo que se hace ahora es pasar una señal que tengo en tiempo pasarla a su frecuencia para permitir un análisis mucho más fácil, primero pasamos a frecuencia de la siguiente forma: finc=Fs/Np; %incremento en frecuencia sf=-Fs/2:finc:Fs/2-finc; %vector de frecuencia con eje centrado fn=Fs/2; %frecuencia de Nyquist . Se toma el rango de muestreo en el que se desea hacer dicha modulación y la frecuencia con la que se va a tomar la muestra. Cuando se están haciendo tomas de muestras es importante usar y tener en cuenta el teorema de Nyquist 2 para hacer dicho muestreo. Luego de tomar el rango en el que se va a tomar dichas muestras se pasa a frecuencia, usando la transformad de Fourier3 . De la siguiente forma: fX=fft(X); sfX=fftshift(fX);% uso de la funcion "fftshift" para obtener el espectro estandar. msfX=abs(sfX); La grafica que se ve de dicha señal vista en la figura 2 ahora vista desde un espectro en frecuencia seria la siguiente. (Ver figura 3). 2 Frecuencia de Nyquist: Según el teorema de muestreo de Nyquist-Shannon, para poder replicar con exactitud (es decir, siendo matemáticamente reversible en su totalidad) la forma de una onda es necesario que la frecuencia de muestreo sea superior al doble de la máxima frecuencia a muestrear. 3 Es una transformación matemática empleada para transformar señales entre el dominio del tiempo(o espacial) y el dominio de la frecuencia, que tiene muchas aplicaciones en la física y la ingeniería. Es reversible, siendo capaz de transformaciones de cualquiera de los dominios al otro. El propio término se refiere tanto a la operación de transformación como a la función que produce. Figura 3. Grafica del espectro en frecuencia de la Señal recibida Cuarto paso: El ejercicio plantea una señal que trae un ruido Gaussiano o ruido blanco este ruido que se ve en la figura anterior, perturba nuestra señal y la recepción del mensaje por ello hay que eliminarlo, para ello los sistemas electrónicos utilizan filtros FIR4 o cualquiera dependiendo del ruido que desean eliminar. Para ello Matlab permite crear filtros virtuales que hacen este procedimiento; de la siguiente forma: Wp=[5000 fn-1]/fn; %ANCHO DE FRECUENCIA h=fir1(Np-1,Wp); Para nuestro caso como se trata de un Ruido Gaussiano, definimos que el filtro sea un pasa altas y que deje pasar las frecuencias a partir de 5KHz en adelante ya que las frecuencias que nos interesa rescatar están en 10KHz y 15KHz. Este filtro que se crea en función del tiempo, ahí la necesidad de pasar a frecuencia ya que la señal que va a filtrar están ahora en frecuencia por que se les realizo la transformada de Fourier, así que de la misma forma conviene hacer lo mismo con el filtro. Esto sería de la siguiente forma: fh=fft(h); sfh=fftshift(fh); msfh=abs(sfh); 4 FIR: Finite Impulse Response o Respuesta finita al impulso. Se trata de un tipo de filtros digitales cuya respuesta a una señal impulso como entrada tendrá un número finito de términos no nulos.
  • 5. Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento. Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc 5 El filtro se vería de la siguiente forma. (Ver figura 4) Figura 4. Grafica del espectro en frecuencia del filtro pasa altas, FIR. Nótese que todas las frecuencias que están entre 0KHz y 5KHz están atenuadas. Y no permitirá su paso. Para unir la señal del filtro con la señal del mensaje, lo que se hace es multiplicar esas dos señales en frecuencia para obtener una sola señal con salida en relación a las frecuencias que permita dicho filtro. En Matlab seria de la siguiente forma. fY= fX.*fh; sfY=fftshift(fY); msfY=abs(sfY); La forma como se vería dicha señal filtrada se refleja en la figura 5. Figura 5.Grafica del espectro en frecuencia de la señal filtrada, sin ruido Gaussiano Quinto paso Luego de tener la señal en frecuencia y filtrada se debe modular pero antes de ese ´paso es necesario que esa señal que está en frecuencia vuelva a estar en función del tiempo para que pueda ser modulada, ya que la señal como tal tiene modulación FSK que tiene longitud de 160 bits en un tiempo de 3,2 s y duración por bits de 20 milisegundos por ello es necesario trabajar en función del tiempo para modular, para ello se le hace la transformada inversa de Fourier5 . Mediante el uso del siguiente comando: Y=ifft(fY); De acuerdo a esto la señal filtrada en función del tiempo es la que se ve en la figura 6. Figura 6. Grafica de la señal filtrada en función del tiempo Para modular dicha señal que se refleja en la Figura 6 se realiza el siguiente paso for i=1:160 for j= 1: 883 Z(i,j)=Y(j+(i-1)*883); end W=Z(i,1:883); FW=fft(W); FFW=fftshift(FW); MFW=abs(FW); [ma ima]=max(MFW); fre=ima*Fs/883; if fre<12000 A(i)=0; else 5 La transformada inversa de Fourier es llevar una función que está en frecuencia a su función en relación al tiempo.
  • 6. Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento. Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc 6 A(i)=1; end end Lo que se hace es un programa para que cree un vector con cada uno de los bits que existen en dicha señal, como la señal tiene una longitud de 160 bits entonces colocamos un incrementado que recorra de 1 a 160 mediante el uso de un for, luego otro for anidado que me realiza un recorrido desde 1 hasta 883, debido a que el numero de muestras tomadas fueron de 141280 con una separación de 20 milisegundos cada una en los 3.2s que duro dicha toma de muestras. Luego de tener el vector se hace necesario pasar a frecuencia nuevamente y rescatar el valor absoluto en la matriz, en este caso vector y lograr determinar cuales están en 10KHz y cuales son mayores o iguales a 15KHz. Y así definir cuáles son ceros y cuales son unos. La codificación del mensaje permitirá definir las letras o caracteres en el mensaje o en la señal, de acuerdo a los parámetros dados inicialmente. Dicha codificación del mensaje es el mostrado en la siguiente figura. Figura 7. Grafica que muestra la serie de datos en el mensaje ceros y unos. Sexto paso: Por último, como la idea del sistema es conocer el mensaje codificado, para ello se hace la necesidad de primero separar las tramas de bit, en paquetes o grupos de 8 bits, al final como son 160 el total de bits. Serian 20 caracteres en el mensaje. Para realizar esta separación se realiza lo siguiente en Matlab: for n=1:20 val(n)=0; for m=1:8 v(n,m)=A(((n-1)*8)+m); if A(((n-1)*8)+m)==1 val(n) = val(n)+ (2^(8-m)); end end end v val Este código tiene la particularidad principal de hacer dos procedimientos al mismo tiempo, el primero es el de agruparme en una matriz de 20x8 todos los unos y ceros de la señal codificada, y la segunda particularidad, es que permite convertir los valores de ceros y unos en números enteros y ese número le corresponde a una letra del código ASCII lo cual permite una mayor facilidad a la hora de pasar el mensaje a caracteres y lograr entender lo que dice el mensaje en dicha señal. Para lograr lo anterior primero que todo se pregunta si hay un uno en dichas filas que en este caso son filas n entonces si hay un uno lo opere realizando la conversión de binario a decimal normal y general usado para este tipo de conversión que mediante las potencias en base 2, para cada uno de los términos que contenga m columnas, sabemos que se debe empezar de izquierda hacia la derecha de ahí el porqué de ser 2^(8-m)mediante esta conversión es mucho más fácil pasar esos números a su carácter correspondiente de acuerdo al código ASCII. Matlab cuenta con una instrucción o comando que permite convertir un vector que contiene una serie de números enteros en su correspondiente carácter, el código es el siguiente; sprintf('%s', ”Vector a convertir”) De esta forma se mostrara o imprimirá en el command window cada uno de los caracteres de dicho vector. El resultado final de todo el procedimiento va ser una matriz que contiene agrupados los unos y ceros por grupos de filas de 8, se muestra en la figura 8 luego un vector que contiene los valores en decimal de dicha matriz, ver figura 9 y como resultado final se muestra el mensaje en caracteres. (Ver figura 10)
  • 7. Universitaria de investigación y Desarrollo UDI. Muestreo y Procesamiento de una señal discreta Figura 8. Matriz resultante con el mensaje codificado Figura 9. Vector con el mensaje convertido en decimal. Figura 10. Mensaje decodificado en caracteres. Universitaria de investigación y Desarrollo UDI. J Saavedra. señal discreta y su análisis en Matlab.doc con el mensaje codificado. convertido en decimal. Figura 10. Mensaje decodificado en caracteres. V. CONCLUSIONES Este artículo deja como resultado el análisis en Matlab de un muestreo y procesamiento de una señal, mostrando su mensaje codificado, Matlab es una herramienta altamente importante y útil a la hora de realizar este tipo de análisis ya que permite que a través de código programado reemplacemos equipos electrónicos que muchas veces resultan poco atractivos por su complejidad a la hora de su uso, por ello con este software es mucho más fácil y muy eficiente para realizar este tipo de procedimientos. modelo más real se hace necesario la implementación de un sistema electrónico existente, para realizar este procedimiento, por ello la idea de que cada vez sistemas de comunicación deben ser más exactos o precisos y además tienen que implementar sistemas digitales, que dan como resultado índices positivos en cuanto a la comunicación que usa conversión Análoga Digital A/D. APÉNDICE: Para este articulo se hace necesario la utilización de la tabla de códigos ASCII para una vez finalizado el proceso de modulación y codificación contribuya a conocer el mensaje oculto en la señal, El código (siglas en ingles para American Standard Code for Information Interchange, es decir Código Americano estándar para el intercambio de Información, es un código de caracteres basado en el como se usa en inglés moderno y en otras lenguas occidentales. Fue creado en Estadounidense de Estándares (ASA, conocido desde 1969 como el Instituto Estadounidense de Estándares Nacionales, o ANSI) como una refundición o evolución de los conjuntos de códigos utilizados entonces en telegrafía. Más tarde, en minúsculas, y se redefinieron algunos códigos de control para formar el código conocido como El código ASCII utiliza 7 bits para representar los caracteres, aunque inicialmente empleaba un bit adicional (bit de paridad) que se usaba para detectar errores en la transmisión. Muestreo y procesamiento. 7 ONCLUSIONES Este artículo deja como resultado el análisis en Matlab de un muestreo y procesamiento de una señal, mostrando su mensaje codificado, Matlab es una herramienta altamente importante y útil a la hora de realizar este tipo de análisis ya que permite que a través de código programado reemplacemos equipos electrónicos que muchas veces resultan poco atractivos por su complejidad a la hora de su uso, por ello con este software es mucho más fácil y muy eficiente para realizar este tipo de procedimientos. Quizás en un modelo más real se hace necesario la implementación de un sistema electrónico existente, para realizar este procedimiento, por ello la idea de que cada vez los sistemas de comunicación deben ser más exactos o precisos y además tienen que implementar sistemas digitales, que dan como resultado índices positivos en cuanto a la comunicación que usa conversión Análoga- CÓDIGO ASCII ste articulo se hace necesario la utilización de la tabla de códigos ASCII para una vez finalizado el proceso de modulación y codificación contribuya a conocer el mensaje oculto en la señal, El código ASCII (siglas en ingles para American Standard Code for Information Interchange, es decir Código Americano estándar para el intercambio de Información, es basado en el alfabeto latino, tal como se usa en inglés moderno y en otras lenguas occidentales. Fue creado en 1963 por el Comité e de Estándares (ASA, conocido desde 1969 como el Instituto Estadounidense de Estándares ) como una refundición o evolución de los conjuntos de códigos utilizados entonces . Más tarde, en 1967, se incluyeron las minúsculas, y se redefinieron algunos códigos de control para formar el código conocido como US-ASCII. El código ASCII utiliza 7 bits para representar los caracteres, aunque inicialmente empleaba un bit ) que se usaba para detectar
  • 8. Universitaria de investigación y Desarrollo UDI. J Saavedra. Muestreo y procesamiento. Muestreo y Procesamiento de una señal discreta y su análisis en Matlab.doc 8 La figura 11. Muestra la codificación ASCII de los caracteres imprimibles. Figura 11. Códigos ASCII imprimibles REFERENCIAS [1] Alan V. Oppenheim, Alan S. Willsky,S. Hamid Nawab, “Señales y sistemas,” 2nd ed. Mexico:Pearson educacion, 1998, pp. 514–544. [2] Moyano B José M, “Procesamiento analógico colaborativo”, (2013, Abril 19), [Online]. Disponible: https://es.scribd.com/doc/136860087/PROCESAMIENT O-ANALOGICO-COLABORATIVO-2 [3] Morales M Luis J, “Señales en tiempo discreto”, (n.d.), [Online]. Disponible: http://www.ingenierias.ugto.mx/profesores/ljavier/docum entos/Lec02%20- %20Se%C3%B1ales%20%20en%20Tiempo%20Discreto .pdf [4] Mathworks, “help matlab”, (n.d.), [Online]. Disponible: http://www.mathworks.com/help/matlab/ref/abs.html [5] El código ASCII, “Códigos ASCII”, (n.d.), [Online]. Disponible: http://www.elcodigoascii.com.ar/codigos-ascii/letra-c- minuscula-codigo-ascii-99.html [6] Universitat Politecnica de Valencia, “Tratamiento de señales en comunicación. Conversiones. Procesado discreto de señales continuas,” (2013, noviembre 5 ), [Online], Disponible: https://www.youtube.com/watch?v=fqBbWJT3Lkc Autor Jeisson Julián Saavedra García Cod. 2116012 CEL: 321 458 99 81 Graduado como bachiller técnico en el año de 2009 en la institución educativa José María Vargas Vila, actualmente cursa el octavo semestre de la carrera INGENIERÍA ELECTRÓNICA en la universitaria de investigación y desarrollo UDÍ, en la ciudad de Barrancabermeja-Santander participa en proyecto de investigación en los semilleros de Investigación de la universidad.