Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
CURSO TEMA
INTRODUCCION A MATLAB Y
LAB. PROCESAMIENTO DE SEÑALES DIGITALES
GRAFICACION DE FUNCIONES
NÚMERO
10/05/19 17/05/19
1
GRUPO PROFESOR
G2 Edgard Oporto
LAB.PROCESAMIENTO DE SEÑALES DIGITALES UNMSM – FIEE
(1) En el que las constantes a, b, c y d varían de un caso a otro, ya que dependen de la natalidad y
agresividad de cada especie. Obsérvese que ahora se tienen dos incógnitas y dos ecuaciones. A este
sistema habrá que añadir, como en el caso de una sóla ecuación, unas condiciones iniciales que
indiquen cúal es la situación de partida, es decir, cúantos individuos de cada especie hay en el
enstante inicial:
(2) Para resolver con MATLAB este sistema se debe, en primer lugar, escribir con notación vectorial:
(3) Ahora es necesario definir la función f que depende de t y del vector y, y que toma
(4) valores vectoriales: Después, la resolución es análoga, observando que la condición inicial
también es ahora un vector. Se conoce que en ciertos sistemas predador-presa la población oscila
en el tiempo. Establecido en términos rigurosos se trataría:
b) que el número medio de presas se mantenga por debajo de un cierto valor umbral;
c) que el sistema global sea estable, en el sentido que de un aumento brusco de la plaga sea
neutralizada de forma rápida.
La forma clásica de abordar los problemas presa-predador se basa en las ecuaciones de Lotka-
Volterra (LV), que recogen los conceptos darwinistas de las interacciones presa-predador y el
LAB.PROCESAMIENTO DE SEÑALES DIGITALES UNMSM – FIEE
Una vez aclaradas las diferencias básicas entre la tecnología analógica y la digital, veamos ahora
cómo se efectúa el proceso de conversión de una tecnología a otra.
Para realizar esa tarea, el conversor ADC (Analog-to-Digital Converter - Conversor Analógico
Digital) tiene que efectuar los siguientes procesos:
Para convertir una señal analógica en digital, el primer paso consiste en realizar un
muestreo (sampling) de ésta, o lo que es igual, tomar diferentes muestras de tensiones o voltajes en
diferentes puntos de la onda senoidal. La frecuencia a la que se realiza el muestreo se denomina razón,
tasa o también frecuencia de muestreo y se mide en kilohertz (kHz). En el caso de una grabación digital
de audio, a mayor cantidad de muestras tomadas, mayor calidad y fidelidad tendrá la señal digital
resultante.
Las tasas o frecuencias de muestreo más utilizadas para audio digital son las siguientes:
Por tanto, una señal cuyo muestreo se realice a 24 kHz, tendrá menos calidad y fidelidad que otra
realizada a 48 kHz. Sin embargo, mientras mayor sea el número de muestras tomadas, mayor será
también el ancho de banda necesario para transmitir una señal digital, requiriendo también un
espacio mucho mayor para almacenarla en un CD o un DVD.
Una vez realizado el muestreo, el siguiente paso es la cuantización (quantization) de la señal analógica.
Para esta parte del proceso los valores continuos de la sinusoide se convierten en series de valores
numéricos decimales discretos correspondientes a los diferentes niveles o variaciones de voltajes que
contienelaseñalanalógicaoriginal.
Después de realizada la cuantización, los valores de las tomas de voltajes se representan numéricamente
por medio de códigos y estándares previamente establecidos. Lo más común es codificar la señal digital
en código numérico binario.
En este ejemplo gráfico de codificación, es posible observar cómo se ha obtenido una señal digital y el
código binario correspondiente a los niveles de voltaje que posee la señal analógica.
La siguiente tabla muestra los valores numéricos del 0 al 7, pertenecientes al sistema decimal y sus
equivalentes en código numérico binario. En esta tabla se puede observar que utilizando sólo tres bits
por cada número en código binario, se pueden representar ocho niveles o estados de cuantización.
Scripts
Cuando invoca un script, MATLAB simplemente ejecuta los comandos que se encuentran en el
archivo. Los scripts pueden operar en datos existentes en el área de trabajo, o pueden crear datos
nuevos en los cuales operar. Aunque los scripts no devuelven argumentos de salida, cualquier
variable creada por ellos permanece en el área de trabajo para ser utilizada en cálculos posteriores.
Además, los scripts pueden producir gráficas mediante el uso de funciones como plot.
Por ejemplo, cree un archivo llamado magicrank.m que contenga estos comandos de MATLAB:
% Investigate the rank of magic squares
r = zeros(1,32);
for n = 3:32
LAB.PROCESAMIENTO DE SEÑALES DIGITALES UNMSM – FIEE
r(n) = rank(magic(n));
end
r
bar(r)
Si escribe la instrucción
magicrank
MATLAB puede ejecutar los comandos, calcular el rango de los primeros 30 cuadrados mágicos y
producir un gráfico de barras del resultado. Una vez concluida la ejecución del archivo, las
variables n y r se conservan en el área de trabajo.
Funciones
Las funciones son archivos que pueden aceptar argumentos de entrada y devolver argumentos de
salida. Los nombres del archivo y de la función deben ser iguales. Las funciones operan en
variables dentro de su propia área de trabajo, en un espacio separado del área de trabajo a la que
se accede desde la línea de comandos de MATLAB.
La función rank es un buen ejemplo. El archivo rank.m está disponible en la carpeta
toolbox/matlab/matfun
Puede ver el archivo con
type rank
Este es el archivo:
function r = rank(A,tol)
% RANK Matrix rank.
% RANK(A) provides an estimate of the number of linearly
% independent rows or columns of a matrix A.
% RANK(A,tol) is the number of singular values of A
% that are larger than tol.
% RANK(A) uses the default tol = max(size(A)) * norm(A) * eps.
s = svd(A);
if nargin==1
tol = max(size(A)') * max(s) * eps;
end
r = sum(s > tol);
La primera línea de una función comienza con la palabra clave function. En ella se proporciona el
nombre de la función y el orden de los argumentos. En este caso, hay hasta dos argumentos de
entrada y un argumento de salida.
Las siguientes líneas, hasta la primera línea en blanco o ejecutable, son líneas de comentarios que
contienen el texto de ayuda. Estas líneas se imprimen cuando se escribe
LAB.PROCESAMIENTO DE SEÑALES DIGITALES UNMSM – FIEE
help rank
La primera línea del texto de ayuda es la línea H1. MATLAB muestra esta línea cada vez que se
usa el comando lookfor o se solicita help en una carpeta.
El resto del archivo está conformado por el código ejecutable de MATLAB que define la función. La
variable s introducida en el cuerpo de la función, así como las variables de la primera
línea, r, A y tol, son locales de la función; están separadas de cualquier otra variable del área de
trabajo de MATLAB.
En este ejemplo se ilustra un aspecto de las funciones de MATLAB que no se encuentra
comúnmente en otros lenguajes de programación: el número variable de argumentos. La
función rank se puede usar de varias formas diferentes:
rank(A)
r = rank(A)
r = rank(A,1.e-6)
Muchas funciones operan de esta forma. Si no se proporciona un argumento de salida, el resultado
se almacena en ans. Si no se proporciona el segundo argumento de entrada, la función calcula un
valor predeterminado. Dentro del cuerpo de una función, hay dos cantidades
llamadas nargin y nargout que indican la cantidad de argumentos de entrada y salida implicados
en cada uso particular de la función. La función rank utiliza nargin, pero no necesita
usar nargout.
V. BIBLIOGRAFIAS
1. Richard Goering, "Matlab edges closer to electronic design automation world," EE Times,
10/04/2004 online (en inglés)
2. ↑ «MathWorks - Fabricantes de MATLAB y Simulink». la.mathworks.com. Consultado el 4 de junio
de 2018.
3. ↑ «System Requirements for MATLAB & Simulink R2016b (Professional & Student Versions)».
MathWorks. Consultado el 17 de noviembre de 2016.
4. ↑ «MATLAB for Student Use» (en inglés). MATLAB. Consultado el 19 de septiembre de 2015.