“adquisición de audio usando matlab” (data acquisition toolbox) slidesdaq_2

36
Instructor: Juan Carlos Moctezuma Eugenio [email protected] Sep - 2007 “Adquisición de Audio usando MATLAB” (Data (Data Acquisition Acquisition Toolbox Toolbox ) ) Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB 1 Agenda Introducción Intro a MATLAB Sistema de Adquisición de Datos Data Acquisition Toolbox Intro al Data Acquisition Toolbox Sesión de un sistema de adquisición de datos Entradas Analógicas Salidas Analógicas Uso del SoftScope Entradas/Salidas Digitales (opcional) Laboratorios

Upload: e09081110

Post on 14-Apr-2015

72 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Instructor:Juan Carlos Moctezuma Eugenio

[email protected] - 2007

“Adquisición de Audio

usando MATLAB”(Data (Data AcquisitionAcquisition ToolboxToolbox))

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB1

Agenda

• Introducción– Intro a MATLAB– Sistema de Adquisición de Datos

• Data Acquisition Toolbox– Intro al Data Acquisition Toolbox– Sesión de un sistema de adquisición de datos– Entradas Analógicas– Salidas Analógicas– Uso del SoftScope– Entradas/Salidas Digitales (opcional)

• Laboratorios

Page 2: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB2

Antecedentes

• Surge de los proyectos LINPACK y EISPACK

• La empresa MathWorks es fundada en 1984

• The Mathworks es líder en el desarrollo de software de computación técnica, además la empresa tiene más de 1 millón de usuarios alrededor del mundo

• The Mathworks tiene más de 1,500 empleados trabajando en el desarrollo de las herramientas MATLAB y SIMULINK para innovar tecnología en empresas, laboratorios gubernamentales, instituciones financieras y en más de 3,500 Universidades

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB3

El programa MATLAB

• MATLAB � Matrix Laboratory

• Definiciones:– MATLAB es un conjunto de comandos o funciones que realizan tareas específicas,

además dispone de un código básico y más de 30 librerías especializadas llamadas “Toolboxes” las cuales trabajan en áreas especiales como Control, Coumunicaciones, Procesamiento de Señales, etc

– MATLAB es un lenguaje de alto rendimiento el cual integra la computación, la visualización y la programación en un ambiente fácil de usar en donde los problemas y las soluciones son expresadas en una notación matemática amable.

• Aplicaciones:– Matemáticas y computación en general. – Desarrollo de algoritmos– Adquisición de datos– Prueba, modelado y simulación de prototipos– Análisis, manipulación y visualización de datos– Diferentes tipos de Graficación– Desarrollo de aplicaciones como Interfaces Gráficas de Usuario.

Page 3: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB4

Organización de MATLAB (1)

MATLAB System

Development Environment

The MATLAB Mathematical Function Library

The MATLAB Language

Graphics

The MATLAB Application Program Interface (API)

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB5

Organización de MATLAB (2)

MATLAB(código básico)

Simulink

ToolboxComunicaciones

ToolboxImágen

ToolboxRedes

Neuronales

ToolboxLógica Difusa

BlocksetDSP

BlocksetControl

BlocksetXilinx System

Generator

ToolboxAdquisición

Datos

Page 4: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB6

Entorno de trabajo

1

3

5

4

2

Ventana Estándar

Matlab Desktop

Command Window

Current Directory

Workspace

Command History

Otras ventanas: •Array Editor•Launch Pad•Editor/Debugger

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB7

Agenda

• Introducción– Intro a MATLAB– Sistema de Adquisición de Datos

• Data Acquisition Toolbox– Intro al Data Acquisition Toolbox– Sesión de un sistema de adquisición de datos– Entradas Analógicas– Salidas Analógicas– Uso del SoftScope– Entradas/Salidas Digitales (opcional)

• Laboratorios

Page 5: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB8

Anatomía de un experimento de AD

• Instalación– 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

aplicación

• Calibración– Proceso posterior a la conexión 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

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB9

Sistema de AD

• Un sistema de Adquisición de Datos (AD) se usa cuando se esta interesado en medir y analizar algún fenómeno físico

• Un sistema de AD es una colección de herramientas HW/SW que nos permite interactuar con el mundo físico

• Un sistema de AD es un equipo que nos permite tomar señales físicas del entorno y convertirlas en datos que posteriormente podremos procesar y presentar

Page 6: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB10

La función principal es la conversión de señales A/D y D/A

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB11

Transductores: dispositivo capaz de convertir un tipo de energía de entrada en otra, obtiene información de entornos físicos y la convierte en señales eléctricas o viceversa.

Page 7: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB12

• Los transductores generalmente son incompatibles con el “Hardware de adquisición”• Para resolver esta incompatibilidad, las señales adquiridas se deben acondicionar de alguna forma

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB13

Proporciona el microprocesador, un reloj, un bus de datos, memoria y espacio en disco para el almacenamiento de datos

Page 8: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB14

Permite la interacción 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 adquisición de datos

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB15

• Dos cosas importantes a resaltar:

1. Las entradas son adquiridas por un sensor, se acondicionan, después se convierten en ‘bits’ para que la computadora las pueda leer y son manipuladas o analizadas para extraer información relevante

2. Los datos desde la computadora son transformados en señales analógicas y son pasados hacia el ‘exterior’ por medio de un actuador

Page 9: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB16

Más acerca del Hardware de AD …

• El hardware de AD puede presentarse de dos maneras:– interna e instalada directamente en un ranura de expansión dentro de la

computadora– externa que se conecta a la computadora a través de una cable externo

• Se caracteriza por lo subsistemas que posee– Un subsistema es un componente que realiza una tarea específica– Existen 4 subsistemas:

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB17

Más de Sensores …

• Sensores Digitales: Switches, Encoders, Botones, etc.

• Sensores Analógicos: Acelerómetros, Micrófonos, medidores de presión, medidores de temperatura, etc.

DOS CARACTERÍSTICAS IMPORTANTES:• Salida del sensor

– Salidas digitales o analógicas– Salidas de corriente.- 4 – 20 mA, uso de una resistencias de precisión para

convertir a voltaje– Salidas de voltaje.- caracterizadas por Amplitud, Frecuencia y Duración

• Ancho de Banda del sensor– Se refiere a las frecuencias presentes en la señal que esta siendo medida– Se puede pensar también como la razón de cambio de la señal

Page 10: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB18

Más del Acondicionamiento de la señal …

• El acondicionamiento se usa por la “incompatibilidad” de las señales adquiridas

• Tipos de acondicionamiento:– Amplificación.- niveles bajos de entrada (100 mvolts) necesitan ser amplificados– Filtrado.- eliminación de ruido de la señal de interés– Ajuste.- ajustar el rango del transductor al del convertidor A/D– Conversión.- transformar la información para que sea siempre voltaje (que las

corrientes sean proporcionales a voltajes)– Multiplexación.- técnica que permite mandar distintas señales sobre un mismo

canal– Acondicionamiento de impedancias.- cuando se conectar un segundo circuito a

la salida de un primero, hace que la tensión de salida del primero se vea modificada.

Sensor

Carga Re Rth << Re

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB19

Más 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

Page 11: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB20

Agenda

• Introducción– Intro a MATLAB– Sistema de Adquisición de Datos

• Data Acquisition Toolbox– Intro al Data Acquisition Toolbox– Sesión de un sistema de adquisición de datos– Entradas Analógicas– Salidas Analógicas– Uso del SoftScope– Entradas/Salidas Digitales (opcional)

• Laboratorios

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB21

Data Acquisition Toolbox

• Proporciona un framework para adquirir y medir datos en MATLAB

• Soporta Subsistemas AI, AO, Digital I/O

• Proporciona soporte para los siguientes dispositivos:– Advantech boards that use the Advantech Device Manager– Agilent Technologies E1432A/33A/34A VXI modules– Keithley boards that use DriverLINX drivers.– Measurement Computing Corporation (ComputerBoards) boards– National Instruments boards that use Traditional NI-DAQ or NI-DAQmx software

except SCXI)– Parallel ports LPT1-LPT3– Windows sound cards

http://www.mathworks.com/products/daq/supportedio.html

• Adquisición de datos por medio de eventos

Page 12: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB22

Componentes del DAQ Toolbox

• M-Files Functions– Funciones del toolbox– Adquirir o sacar datos– Configurar propiedades

• Data Acquisition engine– DLL que guarda el objeto

asociado al dispositivo– Controla la sincronización de

los eventos– Controla el almacenamiento

de los datos adquiridos

• Hardware driver adaptors– Permite la interacción entre el

driver hw y la engine– Software que pasa

información entre matlab y el dispositivo hardware a través de su driver

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB23

Flujo para Adquirir Datos

• Los datos adquiridos son temporalmente guardados en la engine(memoria)

• El proceso consiste en dos pasos– Los datos capturados desde el hardware son guardados en la “engine”– Los datos son extraídos de la engine (función ‘getdata’) y exportados a MATLAB

o algún archivo en disco

Page 13: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB24

Flujo para Sacar Datos

• Los datos almacenados en la “engine” son pasados al hardware• Se tienen que poner en espera los datos en la engine mediante la

función “putdata”– Los datos desde MATLAB son puestos en espera en la engine– Los datos en la engine son puestos en el hardware

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB25

Examinando los recursos hardware

• Mediante la función “daqhwinfo” podemos obtener:

• Información General del Toolbox– Versión del toolbox y de Matlab– Los adaptadores instalados en la computadora

• Información específica del adaptador– Nombre y versión del adaptador– Nombre de la tarjeta– Constructor del objeto

• Información de un objeto – dispostivo– Presenta información acerca de un objeto (variable) relacionado a un dispositivo

en específico

Page 14: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB26

Sesión práctica

• Funciones de ayuda• Función ‘daqhwinfo’

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB27

Agenda

• Introducción– Intro a MATLAB– Sistema de Adquisición de Datos

• Data Acquisition Toolbox– Intro al Data Acquisition Toolbox– Sesión de un sistema de adquisición de datos– Entradas Analógicas– Salidas Analógicas– Uso del SoftScope– Entradas/Salidas Digitales (opcional)

• Laboratorios

Page 15: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB28

Sesión de adquisición de datos

1. Crear un objeto tipo dispositivo2. Agregar canales (E/S analógicas) o líneas (E/S digitales)3. Configurar propiedades4. Colocar en fila datos (solo para Salidas Analógicas)5. Arrancar la adquisición de datos (o sacar datos)6. Esperar a que la adquisición se complete7. Extraer los datos adquiridos (solo para entradas analógicas)8. Finalizar la sesión (limpiar variables del workspace y de memoria)

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB29

1. Crear un objeto tipo dispositivo

• Por medio de este tipo de objetos se puede acceder al dispositivo hardware (en realidad es una estructura)

• Cada objeto tipo dispositivo es asociado a un subsistema específico

• Para crear este tipo de objetos se hace por medio de los constructores de objetos (funciones M de MATLAB)

– analoginput– analogoutput– digitalio

Page 16: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB30

• Pueden crearse vectores de objetos-dispositivo

• Cuando creamos un objeto-dispositivo, éste existe tanto en el workspace como en el engine

– Cuando creamos una copia de ese objeto, este último es idéntico al original

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB31

2. Agregar canales o líneas

• Los canales o líneas son los elementos primordiales con los cuales se adquieren o sacan datos

• Después de crear un objeto-dispositivo se le tiene que agregar canales o líneas, de otra forma NO se podrán adquirir/sacar datos

– addline– addchannel– addmuxchannel (solo para tarjetas NI-DAQ)

Page 17: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB32

• Los IDs de los canales hardware son valores numéricos 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 algún canal, debemos hacerlo por medio de índices de MATLAB (comienzan en 1)

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB33

3. Configurar propiedades

• Se usan las funciones ‘set’ y ‘get’ (o la notación punto) para cambiar y acceder a las propiedades respectivamente

• Dos tipos de propiedades– Comúnes.- son propiedades que se aplican a cada canal o línea del objeto– Canal/Línea.- son propiedades que configuran canales/líneas de forma individual

Page 18: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB34

4, 5, 6 y 7. Adquirir / Sacar Datos

• Adquirir o sacar datos involucra tres pasos:– Arrancar el objeto– Cargar o mandar datos (Logging/Sending Data)– Detener el objeto

• Cuando los datos están 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)

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB35

• Para arrancar un objeto se usa la función ‘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 (oen archivo)

• Un objeto se detiene cuando:– La función ‘stop’ es usada– Cuando el número de muestras en recibida (AI) o enviada (AO)– Cuando ocurre un error en tiempo de ejecución– Cuando el tiempo de la propiedad ‘timeout’ ha transcurrido

Page 19: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB36

8. Finalizar sesión

• Cuando ya no vayamos a usar más 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 función “daqfind” encuentra todos los objetos que tiene el engine conectados a él

– Si se usa solamente ‘clear’, el objeto se borra del workspace pero todavía permanece conectado al engine

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB37

Sesión práctica

• Todo acerca de una sesión de AD

Page 20: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB38

Agenda

• Introducción– Intro a MATLAB– Sistema de Adquisición de Datos

• Data Acquisition Toolbox– Intro al Data Acquisition Toolbox– Sesión de un sistema de adquisición de datos– Entradas Analógicas– Salidas Analógicas– Uso del SoftScope– Entradas/Salidas Digitales (opcional)

• Laboratorios

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB39

• La función ‘analoginput’ crea un objeto-dispositivo de tipo AI• Cuando se crea el objeto, se le asocia un ID

– Usar daqhwinfo(‘winsound’) para ver los IDs disponibles

• La función ‘addchannel’ agrega canales al objeto– La propiedad ‘Channel’ proporciona información de cada canal– El número de canales que se pueden agregar depende del tipo de tarjeta– Para borrar un canal se usa la función ‘delete’

Page 21: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB40

• Para las tarjetas de sonido, solo pueden manejar 1 o 2 canales– Modo MONO.- 1 solo canal, ID = 1– Modo STEREO.- 2 canales, ID = [1 2]

• Propiedades importantes de configurar

• ‘StandardSampleRates’.- indica si el ‘SampleRate’ puede tomar cualquier valor o solo valores estándar (8.0 kHz, 11.025 kHz, 22.050 kHz, y 44.100 kHz), con la función ‘propinfo’ se pueden encontrar los valores permitidos

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB41

Adquirir datos de un AI subsystem

• Se arranca en objeto con ‘start’• Se adquieren los datos con un trigger (evento) dependiendo de la

propiedad ‘TriggerType’

• Los datos leídos se pueden almacenar en memoria o en disco (o ambos) dependiendo de la propiedad ‘LoggingMode’

• Si se guarda en disco entonces habrá que configurar las propiedades ‘LogFileName’ y ‘LogToDiskMode’

• Si se guarda en memoria los datos se leen con ‘getdata’ / ‘peekdata’• Si se guarda en disco los datos se leen con ‘daqread’

Page 22: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB42

• Propiedades involucradas en el Status del objeto AI

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB43

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 función ‘daqhwinfo’

• La asignación de memoria puede hacerse en forma manual o automática dependiendo de la propiedad ‘BufferingMode’

– La memoria asignada se cambia automáticamente dependiendo del ‘SampleRate’

• La función daqmem asigna o muestra información de la memoria– daqmem(ai) � muestra el número total de memoria asignada al objeto, y

además muestra el número máximo de memoria permitida– daqmem(ai, maxval) � asigna el número máximo de memoria que puede ser

asignada a un objeto

Page 23: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB44

• La propiedad ‘MaxSamplesQueued’ indica el número máximo 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 función ‘daqmem(ao)’

• Se usa la función daqmem para asignar o mostrar el tamaño de memoria asignado al objeto de salida ‘ao’

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB45

Manipulando los datos adquiridos

• ‘peekdata’ .- es solo un preview de los datos adquiridos– Solo se puede llamar una sola vez por cada vez que el objeto se detiene

• ‘getdata’ .- obtiene de la engine los datos adquiridos

Se obtienen los datos más recientes

Se obtienen los datos más viejos

Page 24: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB46

Trigger para un objeto AI

• Un trigger AI esta definido como un evento que inicia la carga de datos (logging)

• Definiendo el trigger

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB47

• 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

Page 25: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB48

Trigger Delays

• Los datos pueden ser cargados (logging) ya sea antes de ocurrir el trigger (pretriggering) o bien después 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’

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB49

• Pretriggering

• Posttriggering

Page 26: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB50

Repetición de triggers

• Se puede configurar los triggers para que ocurran una o más veces mediante la propiedad ‘TriggerRepeat’

• La propiedad ‘TriggerExecuted’ devuelve el número de triggers que se han ejecutado (funciona en tiempo de ejecución)

• La función ‘showdaqevents’ muestra información acerca de cuando ocurrieron los eventos en un objeto dado

– También se puede adquirir esta información con la propiedad ‘EventLog’

• La propiedad ‘InitialTriggerTime’ contiene el tiempo de cuando ocurrió el primer trigger

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB51

Tipos de eventos

• Se pueden aumentar la potencia y flexibilidad de nuestra aplicaciones al usar eventos y callbacks

• Un evento ocurre cuando alguna condición se cumple y resulta en la ejecución de callbacks (funciones-M)

Page 27: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB52

Sesión práctica

• Todo acerca del objeto AI– Crear y configurar el objeto AI– Adquisición y manipulación de datos– Tipos de triggers– Manejo de memoria– Eventos y Callbacks

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB53

Agenda

• Introducción– Intro a MATLAB– Sistema de Adquisición de Datos

• Data Acquisition Toolbox– Intro al Data Acquisition Toolbox– Sesión de un sistema de adquisición de datos– Entradas Analógicas– Salidas Analógicas– Uso del SoftScope– Entradas/Salidas Digitales (opcional)

• Laboratorios

Page 28: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB54

Creación de objetos-dispositivo AO

• Se usa la función ‘analogoutput’ para la creación de un objeto dispositivo de tipo AO

• De igual forma se usa la función ‘addchannel’ para agregar canales al objeto

• Propiedades relacionadas a los canales de un AO

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB55

• 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 función ‘putdata’2. Arrancar el objeto con la función ‘start’ ()3. Detener el objeto, éste se detiene cuando alguna de las siguientes acciones

ocurre:• Se usa la función ‘stop’• Los datos en espera son sacados por el AO• Un error en tiempo de ejecución ocurre• Cuando el tiempo de espera se ha alcanzado

Page 29: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB56

Propiedades importantes en un AO

• Propiedades involucradas en el “status” de un objeto AO

• Otras propiedades en el manejo de datos

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB57

• Cuando se colocan datos en cola con la función ‘putdata’, éstos se colocan de la siguiente forma:

Page 30: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB58

AO triggers

• Un trigger para un AO se define como un evento que inicia la salida de datos

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB59

• Para ejecutar un trigger en un AO:– Colocar en espera los datos en la engine– Configurar las propiedades del trigger– Llamar la función ‘start’– Llamar la función ‘trigger’ (si el trigger es manual)

• Solamente 1 solo trigger puede ocurrir para un AO, así la propiedad ‘TriggersExecuted’ solo puede tomar los valores 0 ó 1

Page 31: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB60

Eventos y Callbacks para AO

• La función por default es ‘daqcallback’, la cual simplemente proporciona información del evento que ocurrió

• Esta misma función se usa por default par los objetos AI

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB61

Sesión práctica

• Todo acerca del objeto AO– Crear y configurar el objeto AO– Tipos de triggers– Eventos y Callbacks

Page 32: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB62

Agenda

• Introducción– Intro a MATLAB– Sistema de Adquisición de Datos

• Data Acquisition Toolbox– Intro al Data Acquisition Toolbox– Sesión de un sistema de adquisición de datos– Entradas Analógicas– Salidas Analógicas– Uso del SoftScope– Entradas/Salidas Digitales (opcional)

• Laboratorios

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB63

El Osciloscopio para Adquisición de Datos

• El softscope es una interfaz gráfica interactiva para mostrar en pantalla datos en “tiempo real”

Page 33: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB64

Agregando nuevas ventanas

Crear un nuevo display (Menu Scope)

Asociar un canal al display (Menu Channel)

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB65

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

Page 34: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB66

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB67

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 visualización de la señal)

• Botones Verticales.- realizan un offset en forma vertical (mover arriba o abajo) y cambian la escala en el eje horizontal (amplitud de la señal)

Page 35: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB68

Triggers en el Osciloscopio

• Existen 3 tipos de trigger:– One shot.- adquiere el número de muestras especificado, una vez– Continuous.- continuamente adquiere el número de muestras especificadas– Sequence.- continuamente adquiere el número de muestras especificadas y usa

el trigger dependiente cada vez

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB69

Realizar Mediciones

• Pueden realizarse distintos tipos de mediciones a los datos adquiridos, mediante cursores horizontales o verticales

• Mediciones de tipo matemático también están disponibles o bien mediciones hechas por el usuario

Page 36: “Adquisición de Audio usando MATLAB” (Data Acquisition Toolbox) slidesDAQ_2

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB70

Sesión práctica

• Uso del Softscope

Juan Carlos Moctezuma Eugenio, ADQUISICIÓN DE AUDIO CON MATLAB71

Agenda

• Introducción– Intro a MATLAB– Sistema de Adquisición de Datos

• Data Acquisition Toolbox– Intro al Data Acquisition Toolbox– Sesión de un sistema de adquisición de datos– Entradas Analógicas– Salidas Analógicas– Uso del SoftScope– Entradas/Salidas Digitales (opcional)

• Laboratorios