laboratorio 11 - media.utp.edu.co 11... · figura 5: ejemplo de operaciones entre vectores....
TRANSCRIPT
Laboratorio 11
INTRODUCCIÓN A MATLAB
Laboratorio de Biofísica, U.T.P
11.1 Objetivos
Familiarizarse con el entorno de la herramienta MATLAB.
Iniciación en la utilización de toolbox de procesado de señales biomédicas (ECG).
11.2 Pre-informe
Consultar los factores de ruido que pueden alterar las medidas en señales biomédicas.
En que consiste la interferencia de línea de potencia en la medida de señales ECG y cómo puede
evitarse dicha interferencia.
De manera general, en que consiste el algoritmo FFT.
Revisar la introducción y el taller previo de preparación de MATLAB.
11.3 Introducción a MATLAB
MATLAB cuenta con diversos comandos y operaciones matemáticas que pueden ejecutarse en múltiples áreas
de la ingeniería, en esta pequeña introducción se presentan brevemente los comandos que se usaran durante
la práctica del laboratorio.
11.3.1 Entorno de MATLAB:
Figura 1: Entorno grafico de MATLAB.
Ventana de comando: (Command Window) es el lugar donde se ingresan las variables, se ejecutan funciones
y se corren los archivos M.
Directorio de trabajo y actual: es el directorio de referencia donde matlab ejecuta archivos M o los guarda, es
importante estar en el directorio adecuado sino es posible que algunas funciones creadas no sirvan.
Editor: donde se crean y corren archivos de script (M).
Historial de comandos: guarda los últimos comandos ejecutados (más útil de lo que piensan).
Workspace (espacio de trabajo): es donde se muestran las variables creadas, es muy útil a la hora de buscar
errores en el código.
11.3.2 Declaración de variables:
Número entero: sin punto decimal.
Número real: Con punto decimal.
Número complejo: Se guardan en su representación rectangular, la i indica que es imaginario.
Variable simbólica: Valor simbólico.
Cadena de caracteres: Datos con letras y números.
Booleano: true o false.
Inf: Representa un infinito ya sea positivo o negativo (-Inf).
NaN: Representa una indeterminación como 0/0.
Rand: Devuelve un único número aleatorio entre 0 y 1.
Figura 2: Ejemplo declaración de variables.
En el Workspace se pueden observar las variables que han sido declaradas y muestra el tipo de asignación de
las variables. En las variables de tipo booleano el false se representa con un cero y el true con un uno.
11.3.3 Comandos básicos:
ans: Se crea automáticamente cuando no se especifica un argumento de salida (asignación).
close all: Cierra todas las ventanas abiertas dentro del entorno.
clear all: Elimina todas las variables declaradas presentes en el Workspace.
clc: Borra todas las entradas y salidas de la pantalla de la ventana de comandos.
Whos: Esta función muestra en orden alfabético todas las variables en el área de trabajo actualmente
activa, con información sobre sus tamaños y tipos.
Figura 3: Ejemplo de comando whos.
NOTA: Comprobar la última línea “clc, close all, clear all”.
11.3.4 Arreglos en MATLAB:
Declaración de vector fila: V = [0 1 2 3 4] separa cada elemento por un espacio.
Declaración de vector columna: V = [0; 1; 2; 3; 4] separa cada columna con ‘;’.
Declaración de matrices: M = [11 12 13; 21 22 23; 31 32 33] separa los elementos de cada
fila con espacio y cada columna con un ‘;’.
Generar vectores: Para generar un vector, existen múltiples comandos, entre ellos están:
V=a:div:b; donde a es el punto inicial, b es el punto final y div es el número de pasos entre
cada par de elementos cercanos. V=linspace(a,b,c); crea un vector de a hasta b de c
elementos.
Figura 4: Ejemplo de vectores.
11.3.5 Operaciones básicas entre vectores:
Suma – Resta (+/-): Para sumar o restar 2 o más vectores deben contener la misma cantidad
de elementos entre sí para poder realizar la operación. La operación se realiza de igual
manera que la adición de números, de la siguiente manera: A + B – C, donde A, B y C son
vectores. Esto también puede extenderse a las operaciones con matrices.
Transpuesto (‘): El transpuesto es el que permite convertir un vector fila en un vector
columna y viceversa, al igual que sacar la transpuesta de una matriz. La operación se realiza
con el carácter especial ‘, Ej. A’.
Multiplicación (*): Para multiplicar dos vectores se deben seguir las mismas condiciones del
algebra lineal. Ej. sea A y B dos vectores fila de igual número de elementos, el producto entre
ambos debe ser A por B transpuesto, Ej. res = A*B’=escalar.
Multiplicación punto a punto (.*): La multiplicación punto a punto entre vectores da como
resultado otro vector en el que sus componentes son el resultado del producto de elemento
a elemento entre los vectores, Ej. A=[a1 a2 a3]; B=[b1 b2 b3]; A.*B=[a1*b1 a2*b2 a3*b3].
Figura 5: Ejemplo de operaciones entre vectores.
11.3.5.1 Gráficas
El comando de fácil manipulación para graficar funciones en MATLAB es el comando plot(x,y) el
cual tiene varias propiedades de entorno que aportan a una mejor apariencia de las gráficas. Uso:
se necesitan dos vectores de igual dimensión que correspondan al eje x y al eje y; el comando
plot permite poner títulos a los gráficos, al igual que sus ejes verticales y horizontales (caso 2D)
con los comandos title(‘título del grafico’), xlabel(‘nombre del eje x’), ylabel(‘nombre del eje
y’), al igual que puede ponerse cuadricula de fondo en la figura con el comando grid on, entre
otras más. Ejemplo:
Figura 6: Ejemplo de gráfica en Command Window.
Figura 6: Ejemplo de gráfica figura.
11.4 Taller previo de preparación
Realizar la suma y el producto entre tres números complejos.
Crear un vector fila y un vector columna de igual cantidad de datos y realizar el producto entre ellos.
Con los vectores creados anteriormente realizar la multiplicación punto a punto del vector fila por el
vector columna. (tenga en cuenta que para poder realizar esta operación debe trabajar con el
transpuesto del vector columna).
Generar un vector fila llamado t de -1 a 1 en pasos de 0.05 e ingrese el vector y = [2.45e-16 0.31 0.59
0.81 0.95 1 0.95 0.81 0.59 0.31 -1.22e-16 -0.31 -0.59 -0.81 -0.95 -1 -0.95 -0.81 -0.59 -0.31 0 0.31 0.59
0.81 0.95 1 0.95 0.81 0.59 0.31 1.22e-16 -0.31 -0.59 -0.81 -0.95 -1 -0.95 -0.81 -0.59 -0.31 -2.45e-16];
grafique con el comando plot(t,y), poner el eje x con el nombre de “tiempo”, el eje y con el nombre
“señal” y de título poner el tipo de función que se ha encontrado en la gráfica.
11.5 Trabajo en laboratorio:
Durante los primeros 45 minutos del laboratorio se resolverán dudas del trabajo previo y se explicaran
algunas cosas extra de MATLAB, como lo es el algoritmo FFT y señales biomédicas básicas que éste
contiene, incluyendo un tratamiento básico de una señal en específico.
En el resto de tiempo que quede se entregará a cada grupo una actividad corta similar a lo que se
explique en el laboratorio y deberá ser entregado al finalizar la clase.
NOTA: De ser posible traer computador portátil con el programa MATLAB instalado.