Agenda
Introduccin
Intro a MATLAB Sistema de Adquisicin de Datos
Laboratorios
Antecedentes
Surge de los proyectos LINPACK y EISPACK La empresa MathWorks es fundada en 1984 The Mathworks es lder en el desarrollo de software de computacin tcnica, adems la empresa tiene ms de 1 milln de usuarios alrededor del mundo The Mathworks tiene ms de 1,500 empleados trabajando en el desarrollo de las herramientas MATLAB y SIMULINK para innovar tecnologa en empresas, laboratorios gubernamentales, instituciones financieras y en ms de 3,500 Universidades
El programa MATLAB
MATLAB Definiciones:
MATLAB es un conjunto de comandos o funciones que realizan tareas especficas, adems dispone de un cdigo bsico y ms de 30 libreras especializadas llamadas Toolboxes las cuales trabajan en reas especiales como Control, Coumunicaciones, Procesamiento de Seales, etc MATLAB es un lenguaje de alto rendimiento el cual integra la computacin, la visualizacin y la programacin en un ambiente fcil de usar en donde los problemas y las soluciones son expresadas en una notacin matemtica amable.
Matrix Laboratory
Aplicaciones:
Matemticas y computacin en general. Desarrollo de algoritmos Adquisicin de datos Prueba, modelado y simulacin de prototipos Anlisis, manipulacin y visualizacin de datos Diferentes tipos de Graficacin Desarrollo de aplicaciones como Interfaces Grficas de Usuario.
Juan Carlos Moctezuma Eugenio, ADQUISICIN DE AUDIO CON MATLAB
Development Environment
MATLAB (cdigo bsico) Toolbox Lgica Difusa Blockset Xilinx System Generator
Entorno de trabajo
Ventana Estndar 1 Matlab Desktop 3 Current Directory
2 Command Window
Agenda
Introduccin
Intro a MATLAB Sistema de Adquisicin de Datos
Laboratorios
Anatoma de un experimento de AD
Instalacin
Instalar Hardware y Software HW: consiste en conectar alguna tarjeta en la computadora SW: consiste en instalar los drivers necesarios para el hardware y el software de aplicacin
Calibracin
Proceso posterior a la conexin de los sensores Proporcionar una entrada conocida al sistema y verificar la salida
Pruebas
Comenzar a adquirir datos Proceso en el que se trata con datos del mundo real
Sistema de AD
Un sistema de Adquisicin de Datos (AD) se usa cuando se esta interesado en medir y analizar algn fenmeno fsico Un sistema de AD es una coleccin de herramientas HW/SW que nos permite interactuar con el mundo fsico Un sistema de AD es un equipo que nos permite tomar seales fsicas del entorno y convertirlas en datos que posteriormente podremos procesar y presentar
10
Transductores: dispositivo capaz de convertir un tipo de energa de entrada en otra, obtiene informacin de entornos fsicos y la convierte en seales elctricas o viceversa.
Juan Carlos Moctezuma Eugenio, ADQUISICIN DE AUDIO CON MATLAB
11
Los transductores generalmente son incompatibles con el Hardware de adquisicin Para resolver esta incompatibilidad, las seales adquiridas se deben acondicionar de alguna forma
Juan Carlos Moctezuma Eugenio, ADQUISICIN DE AUDIO CON MATLAB
12
Proporciona el microprocesador, un reloj, un bus de datos, memoria y espacio en disco para el almacenamiento de datos
Juan Carlos Moctezuma Eugenio, ADQUISICIN DE AUDIO CON MATLAB
13
Permite la interaccin entre la computadora y el hardware: configurar la tasa de muestreo de la tarjeta adquirir una predeterminada cantidad de datos y visualizar uso del toolbox de adquisicin de datos
Juan Carlos Moctezuma Eugenio, ADQUISICIN DE AUDIO CON MATLAB
14
1. Las entradas son adquiridas por un sensor, se acondicionan, despus se convierten en bits para que la computadora las pueda leer y son manipuladas o analizadas para extraer informacin relevante 2. Los datos desde la computadora son transformados en seales analgicas y son pasados hacia el exterior por medio de un actuador
15
16
Ms de Sensores
Sensores Digitales: Switches, Encoders, Botones, etc. Sensores Analgicos: Acelermetros, Micrfonos, medidores de presin, medidores de temperatura, etc.
17
Rth << Re
18
Ms del Software
Debe haber alguna forma de manipular o mandar que hacer al hardware Dos clases de Software:
Driver SW.- accesa y controla las capacidades del hardware Aplication SW.- funciones de alto nivel para realizar aplicaciones
19
Agenda
Introduccin
Intro a MATLAB Sistema de Adquisicin de Datos
Laboratorios
20
21
22
23
24
25
Sesin prctica
26
Agenda
Introduccin
Intro a MATLAB Sistema de Adquisicin de Datos
Laboratorios
27
28
Para crear este tipo de objetos se hace por medio de los constructores de objetos (funciones M de MATLAB)
analoginput analogoutput digitalio
Juan Carlos Moctezuma Eugenio, ADQUISICIN DE AUDIO CON MATLAB
29
30
31
Los IDs de los canales hardware son valores numricos asignados por el fabricante para identificar los canales de sus dispositivos
Algunso comienzan con el ndice 0 y otros con el ndice 1 (tarjetas de sonido)
Sin embargo si queremos referenciar algn canal, debemos hacerlo por medio de ndices de MATLAB (comienzan en 1)
32
3. Configurar propiedades
Se usan las funciones set y get (o la notacin punto) para cambiar y acceder a las propiedades respectivamente Dos tipos de propiedades
Comnes.- son propiedades que se aplican a cada canal o lnea del objeto Canal/Lnea.- son propiedades que configuran canales/lneas de forma individual
33
Cuando los datos estn siendo transferidos entre MATLAB y el dispositivo hardware, el objeto puede estar en dos estados:
Running Logging/Sending Propiedades del objeto que llevan el mismo nombre son puestas en On u Off
Los objetos digitales no guardan datos en la engine los estados de Logging/Sending no existen (solo el estado Running)
34
Para arrancar un objeto se usa la funcin start Para adquirir o sacar datos se usan getdata, putdata, peekdata Para el estado de Logging la propiedad TriggerType esta muy relacionada en cuando los datos se van a guardar en el engine (o en archivo) Un objeto se detiene cuando:
La funcin stop es usada Cuando el nmero de muestras en recibida (AI) o enviada (AO) Cuando ocurre un error en tiempo de ejecucin Cuando el tiempo de la propiedad timeout ha transcurrido
35
8. Finalizar sesin
Cuando ya no vayamos a usar ms los objetos-dispositivos, debemos eliminarlos tanto de la memoria (engine) como del workspace de MATLAB Esto se logra con las funciones delete y clear respectivamente La funcin daqfind encuentra todos los objetos que tiene el engine conectados a l
Si se usa solamente clear, el objeto se borra del workspace pero todava permanece conectado al engine
36
Sesin prctica
37
Agenda
Introduccin
Intro a MATLAB Sistema de Adquisicin de Datos
Laboratorios
38
39
StandardSampleRates.- indica si el SampleRate puede tomar cualquier valor o solo valores estndar (8.0 kHz, 11.025 kHz, 22.050 kHz, y
44.100 kHz), con la funcin propinfo se pueden encontrar los valores permitidos
40
41
42
Manejo de memoria
La propiedad BufferingConfig indica la memoria asignada por canal
Devuelve un vector de 2 valores: [block size number of blocks] La memoria total asignada esta dada por: (block size)*(no. blocks)*(no. channels)*(native data type) El tipo de dato nativo se puede encontrar con la funcin daqhwinfo
La asignacin de memoria puede hacerse en forma manual o automtica dependiendo de la propiedad BufferingMode
La memoria asignada se cambia automticamente dependiendo del SampleRate
43
La propiedad MaxSamplesQueued indica el nmero mximo de muestras que pueden ser puestas en espera en la engine
Solo para objetos de salida ao Propiedad de solo lectura Este valor es el mismo que nos da la funcin daqmem(ao)
Se usa la funcin daqmem para asignar o mostrar el tamao de memoria asignado al objeto de salida ao
44
45
Definiendo el trigger
46
Cuando el tipo de trigger es Software se deben configurar las propiedades TriggerCondition, TriggerConditionValue y TriggerChannel TriggerChannel indica el canal que sirve como fuente para el trigger
47
Trigger Delays
Los datos pueden ser cargados (logging) ya sea antes de ocurrir el trigger (pretriggering) o bien despus de que el trigger ocurre (posttriggering) Esto se controla con la propiedad TriggerDelay donde:
Valores negativos indican pretriggering Valores positivos indican posttriggering 0 indica que no hay delay
La propiedad TriggerDelayUnits indica si el valor en TriggerDelay son unidades de tiempo o de muestras El pretriggering solo puede usarse cuando el TriggerType es Manual o Software
48
Pretriggering
Posttriggering
49
Repeticin de triggers
Se puede configurar los triggers para que ocurran una o ms veces mediante la propiedad TriggerRepeat La propiedad TriggerExecuted devuelve el nmero de triggers que se han ejecutado (funciona en tiempo de ejecucin) La funcin showdaqevents muestra informacin acerca de cuando ocurrieron los eventos en un objeto dado
Tambin se puede adquirir esta informacin con la propiedad EventLog
50
Tipos de eventos
Se pueden aumentar la potencia y flexibilidad de nuestra aplicaciones al usar eventos y callbacks Un evento ocurre cuando alguna condicin se cumple y resulta en la ejecucin de callbacks (funciones-M)
51
Sesin prctica
52
Agenda
Introduccin
Intro a MATLAB Sistema de Adquisicin de Datos
Laboratorios
53
Creacin de objetos-dispositivo AO
Se usa la funcin analogoutput para la creacin de un objeto dispositivo de tipo AO De igual forma se usa la funcin addchannel para agregar canales al objeto Propiedades relacionadas a los canales de un AO
54
La propiedad TriggerType en un AO puede ser manual o immediate (el trigger software no es soportado) Existen otros tipos de trigger disponibles dependiendo de la tarjeta hardware que se este usando Para sacar datos por medio de un AO se siguen los siguientes pasos:
1. Colocar en espera los datos mediante la funcin putdata 2. Arrancar el objeto con la funcin start () 3. Detener el objeto, ste se detiene cuando alguna de las siguientes acciones ocurre:
Se usa la funcin stop Los datos en espera son sacados por el AO Un error en tiempo de ejecucin ocurre Cuando el tiempo de espera se ha alcanzado
Juan Carlos Moctezuma Eugenio, ADQUISICIN DE AUDIO CON MATLAB
55
Propiedades importantes en un AO
Propiedades involucradas en el status de un objeto AO
56
Cuando se colocan datos en cola con la funcin putdata, stos se colocan de la siguiente forma:
57
AO triggers
Un trigger para un AO se define como un evento que inicia la salida de datos
58
Solamente 1 solo trigger puede ocurrir para un AO, as la propiedad TriggersExecuted solo puede tomar los valores 0 1
59
La funcin por default es daqcallback, la cual simplemente proporciona informacin del evento que ocurri Esta misma funcin se usa por default par los objetos AI
60
Sesin prctica
61
Agenda
Introduccin
Intro a MATLAB Sistema de Adquisicin de Datos
Laboratorios
62
63
64
Canales
Reference channels
Los datos asociados a este tipo de canal son variables o expresiones de MATLAB
Math channels
Los datos asociados a este tipo de canal son calculados en MATLAB a partir de los canales hardware, o de canales de tipo math o reference
65
66
Botones de escalamiento
Botones Horizontales.- realizan un offset en forma horizontal (mover hacia la izq o der) y cambian las unidades en el eje horizontal (periodo de visualizacin de la seal) Botones Verticales.- realizan un offset en forma vertical (mover arriba o abajo) y cambian la escala en el eje horizontal (amplitud de la seal)
67
Triggers en el Osciloscopio
Existen 3 tipos de trigger:
One shot.- adquiere el nmero de muestras especificado, una vez Continuous.- continuamente adquiere el nmero de muestras especificadas Sequence.- continuamente adquiere el nmero de muestras especificadas y usa el trigger dependiente cada vez
68
Realizar Mediciones
Pueden realizarse distintos tipos de mediciones a los datos adquiridos, mediante cursores horizontales o verticales Mediciones de tipo matemtico tambin estn disponibles o bien mediciones hechas por el usuario
69
Sesin prctica
70
Agenda
Introduccin
Intro a MATLAB Sistema de Adquisicin de Datos
Laboratorios
71