Robot Bailón Desarrollado por: Jesús López Méndez Valerio Rodríguez Robledo.

Slides:



Advertisements
Presentaciones similares
Análisis de Potencia en estado estable
Advertisements

ALGORITMOS GENETICOS EVOLUCIÓN DE UNA POBLACIÓN DE
SERVOMOTORES.
Aplicación Web Programación Docente
Diseño de Interfaces Humanas
TEMA 2: ANÁLISIS DEL SONIDO
Pruebas de hipótesis.
COMPENSACIÓN DE MOVIMIENTO
Convertidores A/D y D/A
La distribución normal
Servicios de red e Internet
Unidad 4 Transmisión Digital.
Códigos Detectores y Correctores de Errores
Tema 3 Revisión de diversos métodos robustos aplicados en algunos problemas fotogramétricos.
Investigación Operativa
Brean León Rodríguez Diego Ochoa Moreno
Capitulo 10: La metodología Box-Jenkins
Profesor: Julio Canales
EXPONENTES Y RADICALES
Ventajas de la señal digital Inconvenientes de la señal digital
Programación Lineal Unidad 1 Parte 3.
Control Digital /Avanzado Señales Analógicas/Discretas
TIPOS DE DATOS ABSTRACTOS
ANALISIS DE DATOS CATEGORICOS
Mt. Martín Moreyra Navarrete.
3. Funciones discriminantes para la f.d.p normal.
Ancho de Banda de Señales
TEOREMA DE FOURIER.
Programación Básica con NQC Patricio A. Castillo Pizarro 25/08/2007.
Reconocimiento y resolución de ecuaciones impresas Luis Fernández Pérez Marco Antonio Formoso Trigo.
Detección de Silencio Basado en Umbral de Energía Auto-Ajustable Redes de Alta Velocidad Presentan:Felipe Galaz Cristian Romero Profesora: Marta Barría.
U2. Grabación, edición y postproducción de audio
Departamento de Física
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
Distribución de Frecuencias por intervalos
Unidad aritmético-lógica
Capacidad de Proceso.
Inferencia Estadística
Grupo de controlExperimental. Si pudiésemos estudiar a TODOS los individuos de la población determinaríamos la existencia de un efecto verdadero... Pero…
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Procesamiento de Imágenes Digitales Propagación del Error en Codificación de Video Escalable Pablo Fernández Riejos Roberto Fuentes González Francisco.
Analisis exploratorio INGRID TATIANA RODRIGUEZ GUZMAN DIANA COSTANZA BERMUDEZ GORDILLO.
TEMA 2 CARACTERIZACIÓN FRECUENCIAL DE SEÑALES Y SISTEMAS
Unidad 2 Bases Teóricas para la Comunicación Comunicación
José Oliver Alberto Bonastre José Luis Poza
Medidas de Dispersión.
CIFRAS SIGNIFICATIVAS
CIFRAS SIGNIFICATIVAS
COMO CALCULAR LOS LIMITES SUPERIORES E INFERIORES
Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid Simulación del patrón … (5)
Gráfica de número de no conformes (np)
Matrices Pág. 1. Matrices Pág. 2 Se llama matriz traspuesta de A, y se representa por A t a la matriz que resulta de intercambiar las filas y las columnas.
MATRICES.
75.41 Algoritmos y Programación II Cátedra Ing. Patricia Calvo Complejidad algorítmica.
INTERFERENCIA INTERSIMBOLICA
DETECCION DE SEÑALES BINARIAS EN RUIDO GAUSSIANO El criterio de toma de decisión fue descrito por la ecuación Un criterio muy usado para escoger el nivel.
Tema 1- Generalidades sobre Control Digital
Bases de Datos y Sistemas de Gestión de Bases Relacionales.
OPTIMIZACION DEL DESEMPEÑO DE ERROR
Técnicas numéricas para el procesamiento de datos reales Antonio Turiel Instituto de Ciencias del Mar de Barcelona.
Rafael Luis Camiña Cultrera
Máximo nivel de producción que puede ofrecer una estructura económica determinada: desde una nación hasta una empresa, una máquina o una persona. La capacidad.
DILUCIONES.
Principios de Modulación 1. Se llama modulación a la operación mediante la cual ciertas características de una onda, denominada portadora, se modifican.
MEDIDAS DE DISPERSIÓN Pedro Godoy Gómez. Miden qué tanto se dispersan las observaciones alrededor de su media. MEDIDAS DE DISPERSIÓN.
TAMAÑO DE LA MUESTRA. Para definir el tamaño de la muestra se debe tener en cuenta los recursos disponibles y las necesidades del plan de análisis, el.
Física II. J.A.Moleón1 Corriente Alterna Departamento de Física Universidad de Jaén.
TAMAÑO DE LA MUESTRA Alvaro Alfredo Bravo Dpto. de Matemáticas y Estadística Universidad de Nariño - Colombia.
TEMA 7 ANÁLISIS DE LOS RESULTADOS TEMA 7 ANÁLISIS DE LOS RESULTADOS.
Ing. José David Ortiz Salas
Transcripción de la presentación:

Robot Bailón Desarrollado por: Jesús López Méndez Valerio Rodríguez Robledo

Objetivos El propósito de esta práctica es desarrollar un sistema capaz de interpretar una melodía y tomar decisiones de acuerdo a sus características (ritmo, notas,...).El propósito de esta práctica es desarrollar un sistema capaz de interpretar una melodía y tomar decisiones de acuerdo a sus características (ritmo, notas,...). Dicho sistema será desarrollado en tres módulos o partes:Dicho sistema será desarrollado en tres módulos o partes:

Primer módulo Un primer módulo que se encarga de procesar la melodía. Detecta cuándo comienza la melodía y la muestrea en ventanas temporales, decidiendo en cada una de ellas de que nota se trata mediante una correlación con un seno y coseno de cada frecuencia que se espera. Esto da lugar a una secuencia de notas que serán interpretadas por el siguiente módulo.Un primer módulo que se encarga de procesar la melodía. Detecta cuándo comienza la melodía y la muestrea en ventanas temporales, decidiendo en cada una de ellas de que nota se trata mediante una correlación con un seno y coseno de cada frecuencia que se espera. Esto da lugar a una secuencia de notas que serán interpretadas por el siguiente módulo.

Segundo Módulo Un segundo módulo que sirve de interfaz y dará unos parámetros en función de dicha melodía. Se trata de, mediante software, parametrizar la melodía en función del ritmo, nota instantánea, conjunto de notas... (aún por determinar), pasando estos valores al siguiente módulo.Un segundo módulo que sirve de interfaz y dará unos parámetros en función de dicha melodía. Se trata de, mediante software, parametrizar la melodía en función del ritmo, nota instantánea, conjunto de notas... (aún por determinar), pasando estos valores al siguiente módulo.

Tercer módulo Un tercer módulo que comunica con el robot, indicándole los movimientos que debe hacer en función de los parámetros obtenidos. Este último módulo deberá ser diseñado de acuerdo al robot utilizado, teniendo en cuenta las posibilidades de movimiento de este.Un tercer módulo que comunica con el robot, indicándole los movimientos que debe hacer en función de los parámetros obtenidos. Este último módulo deberá ser diseñado de acuerdo al robot utilizado, teniendo en cuenta las posibilidades de movimiento de este.

Desarrollo del primer módulo Hemos simulado el algoritmo de detección de notas mediante MATLAB a fin de dimensionar los parámetros necesarios para su correcta realización (fs, tamaño de ventana…)Hemos simulado el algoritmo de detección de notas mediante MATLAB a fin de dimensionar los parámetros necesarios para su correcta realización (fs, tamaño de ventana…) Posteriormente adaptaremos a ColdFire dicho algoritmo (en progreso).Posteriormente adaptaremos a ColdFire dicho algoritmo (en progreso).

Detección: teoría La detección se basa en correlaciones con senos de las frecuencias que queremos detectar (desde Sol3 al Do5 del violín), obteniendo un conjunto de valores proporcionales a la potencia del sonido escuchado a dichas frecuencias.La detección se basa en correlaciones con senos de las frecuencias que queremos detectar (desde Sol3 al Do5 del violín), obteniendo un conjunto de valores proporcionales a la potencia del sonido escuchado a dichas frecuencias. De acuerdo con la teoría de la DFT:De acuerdo con la teoría de la DFT:

Detección: teoría Cada muestra debe ser multiplicada por la muestra equivalente de un seno y un coseno a cada frecuencia y cada uno de estos valores es sumado al acumulador del seno y del coseno respectivos de esta ventana temporal y esta frecuencia. Al final de la ventana, se suman los cuadrados de el acumulador del seno y del coseno a cada frecuencia, obteniendo una magnitud proporcional a la potencia de la señal en dicha ventana, a la frecuencia del seno y el coseno utilizados.Cada muestra debe ser multiplicada por la muestra equivalente de un seno y un coseno a cada frecuencia y cada uno de estos valores es sumado al acumulador del seno y del coseno respectivos de esta ventana temporal y esta frecuencia. Al final de la ventana, se suman los cuadrados de el acumulador del seno y del coseno a cada frecuencia, obteniendo una magnitud proporcional a la potencia de la señal en dicha ventana, a la frecuencia del seno y el coseno utilizados.

Detección: ventanas temporales En nuestra detección, la forma de determinar la nota que está sonando, es decidir en cada ventana temporal, cual es la frecuencia predominante.En nuestra detección, la forma de determinar la nota que está sonando, es decidir en cada ventana temporal, cual es la frecuencia predominante. Las ventanas tendrán un número de muestras fijo (que determinaremos en la simulación) y estarán solapadas con el fin de dar la resolución temporal que necesitemos (el margen de solapamiento será determinado en simulación), reaprovechando cálculos ya que las ventanas solapadas tienen muestras en común.Las ventanas tendrán un número de muestras fijo (que determinaremos en la simulación) y estarán solapadas con el fin de dar la resolución temporal que necesitemos (el margen de solapamiento será determinado en simulación), reaprovechando cálculos ya que las ventanas solapadas tienen muestras en común.

Teoría: Frecuencia de muestreo y Tamaño de ventana Si la máxima frecuencia que detectaremos es f máx, la frecuencia de muestreo de acuerdo al Criterio de Nyquist será: f s =2·f máx.Si la máxima frecuencia que detectaremos es f máx, la frecuencia de muestreo de acuerdo al Criterio de Nyquist será: f s =2·f máx. Si la mínima diferencia de frecuencias a detectar es f dmín, el tamaño de ventana deberá tener N muestras de acuerdo a:Si la mínima diferencia de frecuencias a detectar es f dmín, el tamaño de ventana deberá tener N muestras de acuerdo a:

Simulación con MATLAB Según la teoría expuestas, hemos implementado el algoritmo con MATLAB, de forma que detecte las notas de un wav (grabación del violín).Según la teoría expuestas, hemos implementado el algoritmo con MATLAB, de forma que detecte las notas de un wav (grabación del violín). Tomando sólo determinadas muestras de la grabación simulamos la frecuencia de muestreo que utilizaremos con ColdFire.Tomando sólo determinadas muestras de la grabación simulamos la frecuencia de muestreo que utilizaremos con ColdFire. Definiremos dos variables:Definiremos dos variables: k (f s =44100/k)k (f s =44100/k) c (nº muestras/ventana)c (nº muestras/ventana)

Nos ayudamos de los armónicos Para conseguir una precisión espectral mayor, tenemos en cuenta los armónicos de cada nota, de modo que sumamos la energía de los armónicos a su nota fundamental. Los armónicos de una nota siguen el siguiente orden (el más a la izquierda tiene más potencia):Para conseguir una precisión espectral mayor, tenemos en cuenta los armónicos de cada nota, de modo que sumamos la energía de los armónicos a su nota fundamental. Los armónicos de una nota siguen el siguiente orden (el más a la izquierda tiene más potencia): La imagen corresponde a los armónicos del La2. En nuestro caso nos limitamos a considerar como la potencia de una nota, la suma de su potencia, la de su octava y la de la quinta de su octava superior (13).En nuestro caso nos limitamos a considerar como la potencia de una nota, la suma de su potencia, la de su octava y la de la quinta de su octava superior (13).

Resultados de la simulación con MATLAB A partir de la teoría y la simulación, hemos determinado: k=9 (fs=4900baudios) y c=445.A partir de la teoría y la simulación, hemos determinado: k=9 (fs=4900baudios) y c=445. Al introducir una melodía que es una escala cromática desde el Sol3 hasta el Do5 con 8bits/muestra (mono).Al introducir una melodía que es una escala cromática desde el Sol3 hasta el Do5 con 8bits/muestra (mono). Asignamos el valor 1 a la nota menor (Sol3), 2 a Sol#3… así hasta el 44 que será Re7 (la quinta de la octava del Sol5, la máxima nota que detectamos). El siguiente valor, el 45, representará el silencio, que se asignará cuando la potencia a todas las frecuencias no supera un cierto umbral.Asignamos el valor 1 a la nota menor (Sol3), 2 a Sol#3… así hasta el 44 que será Re7 (la quinta de la octava del Sol5, la máxima nota que detectamos). El siguiente valor, el 45, representará el silencio, que se asignará cuando la potencia a todas las frecuencias no supera un cierto umbral.

Representación Notas-Tiempo de una Escala Cromática

Problema Como se observa en la figura anterior, se confunden las notas que son la misma pero en distinta octava. Esto es debido a la gran cantidad de armónicos que presenta el violín, que causa que tengan más potencia los armónicos de las notas graves que las propias notas, o que tengan más potencia los subarmónicos de la notas agudas que las propias notas agudas.Como se observa en la figura anterior, se confunden las notas que son la misma pero en distinta octava. Esto es debido a la gran cantidad de armónicos que presenta el violín, que causa que tengan más potencia los armónicos de las notas graves que las propias notas, o que tengan más potencia los subarmónicos de la notas agudas que las propias notas agudas. Solución: Reducimos nuestra detección a una escala, considerando solamente qué nota es, sin considerar a qué escala pertenece. Así, sólo diferenciaremos entre 12 posibles notas, lo que es variedad suficiente.Solución: Reducimos nuestra detección a una escala, considerando solamente qué nota es, sin considerar a qué escala pertenece. Así, sólo diferenciaremos entre 12 posibles notas, lo que es variedad suficiente.

Representación Notas-Tiempo de una Escala Cromática Detectando sólo la escala inferior

Comienzo de programación en C: ADC Para comenzar, hemos adaptado el programa de manejo del ADC a nuestras necesidades, haciendo que al leer la muestra tomada, podamos encargar la muestra siguiente, y aprovechar el tiempo de espera hasta la muestra siguiente para realizar el proceso de la muestra anterior.Para comenzar, hemos adaptado el programa de manejo del ADC a nuestras necesidades, haciendo que al leer la muestra tomada, podamos encargar la muestra siguiente, y aprovechar el tiempo de espera hasta la muestra siguiente para realizar el proceso de la muestra anterior. Debido al error de cuantificación que comete el ADC, reducimos el número de bits por muestra de 12 a 8 (eliminando los 4 menos significativos), lo que además favorece las operaciones, pudiendo utilizar tamaños BYTE.Debido al error de cuantificación que comete el ADC, reducimos el número de bits por muestra de 12 a 8 (eliminando los 4 menos significativos), lo que además favorece las operaciones, pudiendo utilizar tamaños BYTE.

Próximos pasos Continuar con el desarrollo del algoritmo en C y mejorar el sistema de detección ya sobre ColdFire.