+ All Categories
Home > Documents > RAE 1. TIPO DE DOCUMENTO: INGENIERO DE...

RAE 1. TIPO DE DOCUMENTO: INGENIERO DE...

Date post: 08-Oct-2018
Category:
Upload: ngotuyen
View: 213 times
Download: 0 times
Share this document with a friend
119
RAE 1. TIPO DE DOCUMENTO: Trabajo de grado para optar por el título de INGENIERO DE SONIDO. 2. TÍTULO: DESARROLLO Y CONSTRUCCIÓN DE UN DISPOSITIVO PARA LA RETROALIMENTACIÓN DE SEÑALES DE AUDIO IMPLEMENTANDO UN SISTEMA EMBEBIDO 3. AUTORES: Erick Collante González. 4. LUGAR: Bogotá, D.C. 5. FECHA: Octubre de 2013. 6. PALABRAS CLAVE: Loop, Sistemas Embebido, S.O, BeagleBoard-Xm, WandBoard, Señales de Audio, Conectores TRS, Linux, Qt Creator, Compilador. 7. DESCRIPCIÓN DEL TRABAJO: El presente documento describe el diseño, desarrollo y construcción de un dispositivo para la grabación, manipulación y reproducción de señales de audio, el cual utiliza en su implementación un sistema embebido. El proyecto fue realizado bajo el sistema operativo Ubuntu 12.04 LTS, con la interfaz gráfica LXDE, el entorno de desarrollo utilizado para la programación y creación de la interfaz gráfica del programa fue Qt 4.8, el dispositivo consiste en la adaptación de un hardware electrónico para la interacción con el software, este tiene la posibilidad de capturar una señal de audio y reproducirla en forma cíclica, creando de esta manera ‘loops’ en tiempo real, también puede guardar bancos de sonido y reproducir audios grabados en sesiones pasadas. El primer S.E utilizado es la BeagleBoard-xM, el cual cuenta con un microprocesador de 1GHz ARM® CortexTM- A8, 512 MB de memoria RAM y dispone de puertos de expansión, USB, entrada y salida de audio Ethernet, HDMI y RS232 entro otros. El segundo S.E fue la Wandboard, esta tiene un procesador Freescale i.MX6 Quad de 1GHz, una memoria RAM de 2GB DDR3, entrada y salida de audio, HDMI, 2 Slot de micro SD, Puerto serial, Puerto USB, USB OTG, entre otros. 8. LÍNEAS DE INVESTIGACIÓN: Línea de investigación de la USB: Tecnologías actuales y sociedad. Sub línea de Facultad de Ingeniería: Procesamiento Digital de Señales digitales y/o análogas. Campo temático del programa: Análisis y Procesamiento de Señales. 9. FUENTES CONSULTADAS: Sergi Jordà Puig. (1997). Audio digital y MIDI. Madrid: Guías Monográficas Anaya Multimedia. Disponible en internet: http://es.scribd.com/doc/140416530/Sergi-Jorda-Puig-Audio-Digital-y-MIDI-1997- 243p. Conexiones balanceadas y no balanceadas. 2013. Disponible en internet: http://www.doctorproaudio.com/doctor/temas/balanceado.htm. Procesamiento Audiovisual 3º II/ITIS”, Sesión 1: Programación Visual con Qt Creator, Disponible en la Web: http://dis.um.es/~ginesgm/files/doc/pav/guion1.pdf 10. CONTENIDOS: En un mundo de evolución tecnológica constante, en la cual los procesos son cada día más rápidos, se debe tener a la mano herramientas que faciliten la forma de poder capturar y reproducir señales de audio. Los sistemas embebidos ofrecen las características de un computador la cual está especialmente diseñados para la solución óptima de la tarea o tareas a resolver. 1
Transcript
Page 1: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

RAE

1. TIPO DE DOCUMENTO: Trabajo de grado para optar por el título de INGENIERO DE SONIDO.2. TÍTULO: DESARROLLO Y CONSTRUCCIÓN DE UN DISPOSITIVO PARA LA RETROALIMENTACIÓN DE SEÑALES DE AUDIO IMPLEMENTANDO UN SISTEMA EMBEBIDO3. AUTORES: Erick Collante González.4. LUGAR: Bogotá, D.C.5. FECHA: Octubre de 2013.6. PALABRAS CLAVE: Loop, Sistemas Embebido, S.O, BeagleBoard-Xm, WandBoard, Señales de Audio, Conectores TRS, Linux, Qt Creator, Compilador.7. DESCRIPCIÓN DEL TRABAJO: El presente documento describe el diseño, desarrollo y construcción de un dispositivo para la grabación, manipulación y reproducción de señales de audio, el cual utiliza en su implementación un sistema embebido. El proyecto fue realizado bajo el sistema operativo Ubuntu 12.04 LTS, con la interfaz gráfica LXDE, el entorno de desarrollo utilizado para la programación y creación de la interfaz gráfica del programa fue Qt 4.8, el dispositivo consiste en la adaptación de un hardware electrónico para la interacción con el software, este tiene la posibilidad de capturar una señal de audio y reproducirla en forma cíclica, creando de esta manera ‘loops’ en tiempo real, también puede guardar bancos de sonido y reproducir audios grabados en sesiones pasadas. El primer S.E utilizado es la BeagleBoard-xM, el cual cuenta con un microprocesador de 1GHz ARM® CortexTM- A8, 512 MB de memoria RAM y dispone de puertos de expansión, USB, entrada y salida de audio Ethernet, HDMI y RS232 entro otros. El segundo S.E fue la Wandboard, esta tiene un procesador Freescale i.MX6 Quad de 1GHz, una memoria RAM de 2GB DDR3, entrada y salida de audio, HDMI, 2 Slot de micro SD, Puerto serial, Puerto USB, USB OTG, entre otros.8. LÍNEAS DE INVESTIGACIÓN: Línea de investigación de la USB: Tecnologías actuales y sociedad. Sub línea de Facultad de Ingeniería: Procesamiento Digital de Señales digitales y/o análogas. Campo temático del programa: Análisis y Procesamiento de Señales.9. FUENTES CONSULTADAS: Sergi Jordà Puig. (1997). Audio digital y MIDI. Madrid: Guías Monográficas Anaya Multimedia. Disponible en internet: http://es.scribd.com/doc/140416530/Sergi-Jorda-Puig-Audio-Digital-y-MIDI-1997-243p. Conexiones balanceadas y no balanceadas. 2013. Disponible en internet: http://www.doctorproaudio.com/doctor/temas/balanceado.htm.Procesamiento Audiovisual 3º II/ITIS”, Sesión 1: Programación Visual con Qt Creator, Disponible en la Web: http://dis.um.es/~ginesgm/files/doc/pav/guion1.pdf10. CONTENIDOS: En un mundo de evolución tecnológica constante, en la cual los procesos son cada día más rápidos, se debe tener a la mano herramientas que faciliten la forma de poder capturar y reproducir señales de audio. Los sistemas embebidos ofrecen las características de un computador la cual está especialmente diseñados para la solución óptima de la tarea o tareas a resolver.

1

Page 2: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A diferencia de un PC, el sistema embebido se dota con los módulos estrictamente necesarios para su función, por esta razón su costo es óptimo.La incorporación de un sistema embebido proporciona solución más precisa y rápida en su especialidad, ofrece un mayor número de opciones en los procesos de la actividad específica, y competitividad del producto por su aplicación definida respecto a otros productos similares.11. METODOLOGÍA: El enfoque de esta investigación es empírico-analítico ya que se pretende mejorar por medio de sistemas de electrónica programable la forma de capturar una señal de audio y reproducirla para obtener como resultado final una retroalimentación de señales.12. CONCLUSIONES: Este trabajo presenta el diseño y construcción de un dispositivo para la retroalimentación de señales de audio implementando un sistema embebido, el cual funciona como una herramienta de grabación y reproducción de audio en tiempo real, este sistema permite el almacenamiento de señales de audio provenientes de instrumentos musicales para ser manipuladas por el usuario y reproducir de forma cíclica las señales almacenadas en el sistema, creando de esta manera ‘loops’, también puede cargar archivos de audio preestablecidos y reproducir, detener y pausar audios desde diferentes carpetas del directorio, esto le permite a un músico poder ensayar un solo instrumental en una base armónica generada por el mismo.

2

Page 3: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

DESARROLLO Y CONSTRUCCIÓN DE UN DISPOSITIVO PARA LA

RETROALIMENTACIÓN DE SEÑALES DE AUDIO UTILIZANDO UN SISTEMA

EMBEBIDO

ERICK COLLANTE GONZÁLEZ

UNIVERSIDAD DE SAN BUENAVENTURA - BOGOTÁ

FACULTAD DE INGENIERÍAS

INGENIERÍA DE SONIDO

PROYECTO DE GRADO

BOGOTÁ D.C

2013

3

Page 4: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

DESARROLLO Y CONSTRUCCIÓN DE UN DISPOSITIVO PARA LA

RETROALIMENTACIÓN DE SEÑALES DE AUDIO UTILIZANDO UN SISTEMA

EMBEBIDO

ERICK COLLANTE GONZÁLEZ

Anteproyecto presentado para optar al título de Ingeniero de Sonido

Asesor

Ing. Nelson Rosas Jiménez, M. Sc.

UNIVERSIDAD DE SAN BUENAVENTURA - BOGOTÁ

FACULTAD DE INGENIERÍAS

INGENIERIA DE SONIDO

PROYECTO DE GRADO

BOGOTÁ D.C

2013

4

Page 5: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Nota de aceptación

__________________________

__________________________

__________________________

__________________________

__________________________

__________________________

_________________________

Presidente del jurado

__________________________

Firma del jurado

__________________________

Firma del jurado

Ciudad y fecha (dd/mes/año). ________,__/__/______

5

Page 6: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

“El siguiente trabajo está dedicado a mi madre y a mi hermana”,

Ellas son mi razón de vivir y salir adelante.

6

Page 7: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

AGRADECIMIENTOS

Tengo que agradecer principalmente a Dios el cual me ha dado todo y es quien

hace posible este proyecto, él se encargó de ponerlo todo en su debido momento,

poniendo a las personas indicadas en el lugar y momento exacto.

Gracias Dios por darme esta hermosa familia. Especialmente gracias a mi madre y

a mi tío William, por brindarme la oportunidad de estudiar esta carrera, gracias por

creer y confiar en mi, gracias por todas sus palabras de aliento que en su

momento fueron de gran fortaleza, gracias por darme con tanto cariño y amor todo

lo que necesité para que este sueño fuera realidad. Igualmente debo agradecer a

mis tíos en Bogotá, Fanny González y Nelson Paipa, apoyo incondicional en esta

ciudad, También debo agradecerle con mucho cariño a tía Marina González quien

siempre estuvo ahí cuando lo necesité. Gracias a mis primos Cesar, Karen y Mery

por hacer mi vida más feliz, No existen las palabras para agradecerles a todos,

toda la ayuda y apoyo infinito.

Agradecimientos a mi director de proyecto Ing. Nelson Rosas por darme su

confianza y entusiasmo para desarrollar este proyecto. También debo agradecer a

todas las personas que me colaboraron y que me guiaron en este trabajo,

Especialmente debo extender un total agradecimiento, a mi amigo el matemático

Emmanuel Rosales, su amable y desinteresada ayuda en el proceso de

compilación de programas y librerías para la arquitectura ARM fue indispensable

para que este trabajo saliera adelante.

7

Page 8: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

TABLA DE CONTENIDO

pag.

INTRODUCCION....................................................................................................14

1. PLANTEAMIENTO DEL PROBLEMA..........................................................16

1.1 ANTECEDENTES........................................................................................16

1.2 DESCRIPCIÓN Y FORMULACION DEL PROBLEMA….............................26

1.3 JUSTIFICACIÓN..........................................................................................27

1.4 OBJETIVOS DE LA INVESTIGACIÓN.........................................................28

1.4.1 Objetivo General..........................................................................................28

1.4.2 Objetivo Especifico......................................................................................28

1.5 ALCANCES Y LIMITACIONES.....................................................................29

1.5.1 Alcances.......................................................................................................29

1.5.2 Limitaciones.................................................................................................29

2. METODOLOGÍA...........................................................................................30

2.1 ENFOQUE DE LA INVESTIGACIÓN...........................................................30

2.2 LÍNEA INSTITUCIONAL, SUBLÍNEA DE LA FACULTAD Y

CAMPO DE INVESTIGACIÓN. …................................................................30

2.3 HIPOTESIS..................................................................................................31

2.4 VARIABLES..................................................................................................31

2.4.1 Variables Independientes.............................................................................31

2.4.2 Variables Dependientes................................................................................31

1. MARCO TEÓRICO CONCEPTUAL.............................................................32

3.1 MEDIOS DE CONEXIÓN SEÑALES ANÁLOGAS.......................................32

3.1.1 Conectores de Audio....................................................................................33

3.1.2 Conector TRS...............................................................................................33

3.1.3 Conector XLR...............................................................................................33

3.1.4 Conexión tipo Y.............................................................................................34

3.2 MEDIOS DE CONEXIÓN SEÑALES DIGITALES........................................35

3.2.1 Bus Universal Serial (USB)..........................................................................35

8

Page 9: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.2.2 USB On-The-Go...........................................................................................35

3.2.3 Tasa de Transferencia..................................................................................36

3.2.4 Digital Visual Interface (DVI)........................................................................36

3.2.5 High Definition Multimedia Interface(HDMI).................................................36

3.3 PROCESAMIENTO DIGITAL DE SEÑALES DE AUDIO..............................37

3.3.1 Muestreo.......................................................................................................38

3.3.2 Numero de bits y Rango dinámico................................................................38

3.3.3 Tamaños del audio digital.............................................................................39

3.4 SISTEMAS OPERATIVOS...........................................................................40

3.4.1 GNU/Linux...................................................................................................40

3.4.2 Ubuntu 12.04 LTS........................................................................................41

3.4.3 LXDE (Entorno de Escritorio X11 Ligero)....................................................41

3.5 QT CREATOR..............................................................................................42

3.6 COMPILADOR GCC...................................................................................42

3.7 SISTEMAS EMBEBIDOS............................................................................43

3.7.1 Beagleboard-Xm.........................................................................................45

3.7.2 Wandboard Quad........................................................................................47

4. DESARROLLO INGENIERIL......................................................................48

4.1 DESARROLLO DEL SOFTWARE.............................................................49

4.2 CONSTRUCCIÓN DEL HARDWARE.........................................................59

4.3 INSTALACION Y ADECUACIÓN DEL S.E..................................................61

4.3.1 Instalación de Ubuntu en la BeagleBoard-Xm.............................................62

4.3.2 Compilación del Software en Beagle Board-Xm..........................................63

4.3.3 Compilación del Software en la WandBoard Quad......................................64

4.4 IMPLEMENTACIÓN Y ACOPLAMIENTO DEL S.E

CON EL HARDWARE..................................................................................66

5. MANUAL DE USO........................................................................................70

6. ANÁLISIS DE RESULTADOS......................................................................73

7. CONCLUSIONES.........................................................................................82

8. RECOMENDACIONES................................................................................83

9

Page 10: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

BIBLIOGRAFÍA.......................................................................................................84

GLOSARIO Y ABREVIATURAS.............................................................................88

ANEXOS.................................................................................................................90

10

Page 11: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

LISTA DE TABLAS

Pag.

Tabla 1. Comparativa de Pedales de Loop en el mercado.....................................23

Tabla 2. Comparativa de otros S.E con arquitectura ARM......................................44

Tabla 3. Características de Hardware BeagleBoard_Xm........................................46

Tabla 4. Especificaciones WandBoards..................................................................47

Tabla 5. Comparativa Beagleboard vs. WandBoard...............................................70

11

Page 12: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

LISTA DE GRÁFICAS

pag.

Gráfica 1. Des-balanceado de la señal Análoga.....................................................32

Gráfica 2. Asignación habitual de pines de ¼” TRS...............................................33

Gráfica 3. Asignación habitual de pines conector XLR...........................................34

Gráfica 4. Conexión en “Y” conector XLR...............................................................34

Gráfica 5. Discretización de una Señal continua....................................................37

Gráfica 6. Sistema Embebido BeagleBoard...........................................................45

Gráfica 7. Etapas principales del desarrollo del proyecto.......................................48

Gráfica 8. Vista de la consola alsamixer del PC.....................................................55

Gráfica 9. Interfaz Gráfica del Software en el PC...................................................56

Gráfica 10. Diagrama de Conexiones Prueba del Software en el PC....................57

Gráfica 11. Flujo de señal del dispositivo...............................................................58

Gráfica 12. Vista en perspectiva realizado en sketchup.........................................59

Gráfica 13. Vista desde arriba realizado en sketchup............................................59

Gráfica 14. Fotos del chasis vista lateral (1era Parte)............................................60

Gráfica 15. Fotos del chasis vista Frontal (1era Parte)..........................................60

Gráfica 16. Fotos del chasis Base Blanca..............................................................60

Gráfica 17. Fotos del chasis Laca Verde................................................................60

12

Page 13: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Gráfica 18. Diagrama de bloques interacción periféricos con S.E..........................61

Gráfica 19. Conexión de audio en forma de “Y”.....................................................66

Gráfica 20. Adaptación conector 3.5 mm a Hembra TRS de 1/4”..........................66

Gráfica 21. Adaptación a la tarjeta del teclado USB..............................................67

Gráfica 22. Configuración del Shorcut en Qt Creator.............................................68

Gráfica 23. Fotos del chasis Montaje Final (Frontal)..............................................69

Gráfica 24. Fotos del chasis Montaje Final (Perspectiva).......................................69

Gráfica 25. Fotos del chasis Montaje Final (Respaldo)..........................................69

Gráfica 26. Gráfica frontal del manual realizado en sketchup................................71

Gráfica 27. Gráfica Atrás del Manual realizado en sketchup..................................72

Gráfica 28. Procesamiento en el Portátil con htop..................................................73

Gráfica 29. Procesamiento en el Portátil 10 min después......................................74

Gráfica 30. Procesamiento en la BeagleBoard-Xm …............................................76

Gráfica 31. Procesamiento en la WandBoard reproduciendo 4 Audios..................77

Gráfica 32. Procesamiento en la WandBoard con Audios más livianos.................78

Gráfica 33. Procesamiento en la WandBoard con USB 2.0...................................79

Gráfica 34. Procesamiento en la WandBoard con 2 Audios...................................80

Gráfica 35. Interfaz Gráfica Final del software en la WandBoard...........................81

13

Page 14: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

INTRODUCCIÓN

En el mundo actual existe cada día más la necesidad de realizar procesos de

producción mucho más rápidos, por esta razón el interés por los sistemas

embebidos ha sufrido un aumento considerable en la última década.[1]

Los sistemas embebidos se han masificado y expandido de tal modo que es

común encontrar este tipo de arquitecturas ARM en diferentes dispositivos,

equipos reproductores de video, reproductores portátiles de música, televisores

inteligentes y tablets, son algunos de los dispositivos comúnmente

comercializados, los encontramos desde dispositivos móviles (smartphones) hasta

sistemas de automatización en procesos de producción, son dispositivos usados

para controlar equipos, operación de maquinarias o plantas industriales completas.

Los sistemas embebidos son sistemas Hardware/Software de propósito específico,

diseñados para realizar una o más actividades en tiempo real. Esto permite su

optimización, con el objetivo de mejorar el desempeño, eficiencia y confiabilidad,

teniendo la posibilidad de reducir el tamaño y costo de producción.

El presente documento describe el diseño, desarrollo y construcción de un

software y hardware para ser implementado en un S.E embebido, este permite la

reproducción, grabación y manipulación de señales de audio en tiempo real.

El sistema embebido trabaja bajo el sistema operativo Ubuntu 12.04 LTS, la

programación fue realizada mediante el entorno de desarrollo Qt creator 2.4.1

basado en Qt 4.8 C++. El software tiene la posibilidad de capturar una señal de

audio y reproducirla en forma cíclica, creando de esta manera ‘loops’ en tiempo

real, también puede cargar archivos de audio preestablecidos y reproducir, detener

y pausar audios desde diferentes carpetas del directorio.

[1]Enlace de Articulo de soporte, [En Linea], 2000, 26 de julio de 2013, 11:00 a.m; Disponible en la web: http://www.eltiempo.com/tecnologia/telecomunicaciones/ARTICULO-WEB-NEW_NOTA_INTERIOR-12604488.html

14

Page 15: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

El dispositivo cuenta con la adaptación de un hardware para la interacción con el

software, es decir, funciona como una superficie de control, la cual por medio de la

implementación de pulsadores permiten activar y desactivar procesos y funciones

del programa. Este dispositivo es un chasis fabricado en acero inoxidable que

provee los conectores de audio para la entrada y salida de la señal.

El S.E utilizado principalmente fue la BeagleBoard-xM, el cual cuenta con un

microprocesador de 1GHz ARM® CortexTM- A8, 512 MB de memoria RAM y

dispone de puertos de expansión, USB, Ethernet, HDMI, RS232, audio y video

para monitores LCD. Debido a que el sistema tuvo problemas con la grabación y

reproducción cíclica de las señales, se implementó la placa Wandboard, esta tiene

un procesador Freescale i.MX6 Quad de 1GHz, una memoria RAM de 2GB

DDR3, entrada y salida de audio, HDMI, 2 Slot de micro SD, Puerto serial, Puerto

USB, USB OTG, entre otros.

En el S.E Wandboard se logró grabar y reproducir audios simultáneamente,

sincronizados con un reloj cíclico modificable. A diferencia de otros pedales de

loops en el mercado, este permite interactuar visualmente con el software por

medio de la interfaz gráfica. Las librerías de audios rítmicos pueden ser

modificadas por el usuario, los pulsadores de la superficie de control pueden ser

configurados de acuerdo a las exigencias del usuario. La relación funcionalidad

precio es óptima.

15

Page 16: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

1. PLANTEAMIENTO DEL PROBLEMA

1.1 ANTECEDENTES

La primera clase de equipos embebidos fueron desarrollados por IBM

(International Business Machine) a mediados de los años de 1980. Estos

sistemas han sido implementados para diferentes aplicaciones como sistemas de

telefonía fija y móvil, automatización de procesos de producción, equipos e

instrumentación industrial y sistemas robotizados de todo tipo.

En la Audio Engineering Society (AES), en la afiliación de comunicaciones y

departamento de sistemas embebidos se encuentran diferentes artículos, uno de

estos artículos es una revisión de varios esquemas de controladores inteligentes

de volumen acústico.

• “A Review of Smart Acoustic Volume controllers for consumer

electronics” [1].

Este trabajo evalúa y comprueba esquemas de televisores, sistema estéreo de

autos, reproductores de cd, teléfonos móviles y radio Am/Fm, hay varios ejemplos

de aplicaciones de los controladores de volumen inteligente en dispositivos

electrónicos de consumo, como por ejemplo el sistema estéreo de un automóvil,

en estos sistemas el nivel de volumen automáticamente cae cuando el sistema

detecta que el teléfono suena.

Los móviles inteligentes con un volumen de controlador proporcionan una calidad

de voz mejorada, incluso en presencia de altos niveles de ruidos de fondo[1].

16

Page 17: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

• “Acoustic personalization of mobile phones” [2].

Este documento propone la personalización acústica de los teléfonos móviles

basados en los requisitos de audición de un individuo para mejorar la calidad de la

voz. Este propone un sintonizador de acústica inteligente de volumen que utiliza la

lógica difusa para mejorar la calidad de voz basadas en audiogramas. El teléfono

móvil está personalizado con el diseño de la base de reglas difusas para

adaptarse a los requisitos de audiencia de la persona. El sintonizador de volumen

inteligente monitorea continuamente los niveles y clase de ruido de fondo[2].

• “Embedded Controller for audio devices” [3].

En Diciembre de 1994, Barlett, Greg. Expuso un artículo en la cual se trata una

vista general de controladores MIDI la cuales puedes ser fácilmente adaptados

para el uso en productos y sistemas de audio, la intención del artículo es introducir

un simple desarrollo de procedimientos y herramientas para agregar

características a dispositivos de audio controlados por computador[3].

Por otro lado en la IEEE se encuentran varios artículos relacionados con el

procesamiento digital de señales de audio implementando sistemas embebidos.

• “Digital Sound Projector Implementation and Verification within DTV

Embedded System” [4].

En el trabajo de Petrovic, T. y Samardžija, Se propone un sistema embebido para

la separación de la señal de televisión y proyección de sonido digital (DTV) con

procesamiento en tiempo real, esto en base a que el sonido digital ofrece la

tecnología de proyectores de sonido envolvente con un solo parlante mediante la

producción de haces de sonido[4].

17

Page 18: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

• “Embedded implementation of acoustic field enhancement for stereo

headphones” [5].

En el artículo postulado por Iwanaga, N. et al. (2002), se expone la aplicación de

sistemas embebidos para la mejora del campo acústico ha sido elaborado con

dedicación para auriculares estéreo. Basándose en el análisis del sentido auditivo

humano, este enfoca con éxito el procesamiento de la señal acústica con el fin de

ampliar un campo acústico generado a través de auriculares estéreo con bajos

costos computacionales.

La implementación del software se evalúa mediante el uso de un DSP integrado y

un procesador RISC con el fin de confirmar la viabilidad del enfoque propuesto[5].

• “3D sound movement system for embedded applications” [6].

Este articulo describe la implementación VLSI de un sistema de sonido en

movimiento es por medio de aplicaciones embebidas. Este sistema se basa en un

método de bajo costo en 3D para la localización del sonido, se intentó la

extracción de características de la cabeza relacionadas con la función de

transferencia a fin de realizar el movimiento del sonido en todas las posiciones en

el espacio 3D por medio de un sistema de coeficiente de almacenamiento

eficiente. El sistema propuesto puede ser implementado por sólo 30.000 com-

puertas, que es lo suficientemente pequeño para aplicaciones embebidas.

Por otra parte, un sistema prototipo se construyó mediante el uso de una tarjeta

FPGA, además se realizaron pruebas subjetivas para evaluar la viabilidad de la

propuesta[6].

18

Page 19: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

• “Optimization of AVS Audio Decoder Implemented on RISC Core” [7].

El trabajo realizado por Kwok-Tung Lo y Haijun Lei (2008) proponen la

optimización de un software para la aplicación de AVS-P3 en tiempo real en ARM

9. Esto debido a que la optimización de los sistemas embebidos han sido

reconocidos como un tema clave en la mejora de costos y rendimiento.

El resultado de la prueba muestra que la velocidad de decodificación mejora 10

veces más que el original AVS la señal de audio de onda de decodificación

decodificador estéreo con el bit-rate de 128 kbps y 48 KHz de muestreo. Mientras

tanto, el espacio de memoria se reduce de 130,78 KB a 59.91 KB, y alcanzó el

54,2% de mejora [7].

• “Embedded auditory system for small mobile robots” [8].

Este articulo muestra un sistema capaz de localizar fuentes de sonido por medio

de seguimiento y separación en tiempo real de señales de audio utilizando un

conjunto de 8 micrófonos la cual es procesado en un computador. El sistema es

capaz de localizar y hacer un seguimiento de hasta cuatro fuentes, y hasta tres

fuentes en entornos ruidosos ambas en tiempo real.

Sin embargo el procesamiento de la señal es muy complejo para el equipo, por

esta razón aborda e informa sobre la implementación del sistema integrado en un

DSP (Digital Signal Processor). La implementación de DSP es totalmente

funcional, los resultados demuestran que es factible en plataformas integradas, la

apertura de su uso en aplicaciones de campo, tales como interacción humano-

robot en la vida real[8].

19

Page 20: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

• “Design of Embedded Audio and Video Compression System” [9].

Este diseño presenta una estructura ARM + GO7007SB como la solución de audio

integrado y sistema de compresión de vídeo. Esta propuesta de diseño se

caracteriza por la alta velocidad de procesamiento, bajo costo, buena calidad de

imagen y la ejecución en tiempo real. La combinación con la tecnología 3G

próxima, el diseño se podría aplicar a los servicios de vídeo móvil, como sistema

móvil de video vigilancia remota, con la perspectiva del mercado brillante[9].

• “Video collection system based on embedded system and USB

communication” [10].

Este articulo plantea principalmente una solución de implementación del sistema

de videojuegos y colección de audio basado en el microprocesador S3C2410, el

sistema operativo Linux y la comunicación USB. Luego describe el diseño del

hardware del sistema de recolección, además se discute el proceso de

recopilación de datos basados en la plataforma S3C2410. Finalmente se centran

en el método de realización de software de vídeo y recolección de audio[10].

A nivel mundial, diferentes universidades han desarrollado proyectos

implementando sistemas embebidos.

• “Programación de un sistema embebido multimedia” [11].

Este articulo muestra como programar un sistema embebido con aplicaciones

multimedia. La plataforma de desarrollo es un ARM OMAP3530 de Texas

Instruments corriendo un kernel Linux como sistema operativo.

El sistema consta de una placa DevKit8000 de la empresa Embest y un panel

táctil de 7 pulgadas. Se explica cómo utilizar la pantalla táctil, programar una

interfaz gráfica con las librerías Qt de Nokia, reproducir audio a través de la

20

Page 21: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

interfaz estándar en audio de Linux denominado ALSA, descodificar MP3 con la

librería open-source MAD, realizar funciones de procesado en un DSP y

programación de un driver completo para un conversor analógico-digital.

• “Diseño de un prototipo embebido para la gestión del padrón

electrónico del T.S.E.” [12].

El documento describe el diseño e implementación de un sistema embebido para

ser empleado como alternativa de búsqueda en el padrón electoral durante los

comicios en Costa Rica. El kit de desarrollo utilizado es el BeagleBoard-xM, el cual

cuenta con un microprocesador de 1GHz ARM® Cortex™- A8, 512 MB de

memoria RAM y dispone de puertos de expansión, USB, Ethernet, HDMI, RS232,

audio y video para paneles LCD.

El sistema trabaja bajo el sistema operativo Ångström, y las aplicaciones fueron

desarrolladas mediante el ambiente Qt 4.7, la cual cuenta con un cross-

compilador. Cuenta además con una pantalla táctil LCD de colores de 7’’, una

impresora de matriz de puntos, teclado externo, y lector de cédulas en formato

PDF417.

• “Transferencia tecnológica y de conocimientos en el diseño de

sistemas embebidos” [13].

Este trabajo pretende ser el punto de partida en el área de diseño de sistemas

embebidos que contribuya a dar soluciones en el problema de atraso y

dependencia tecnológica de la industria electrónica nacional. Para ayudar en el

proceso de aprendizaje y con el fin de facilitar la difusión en la industria, se

diseñaron una serie de plataformas hardware que pueden ser utilizadas como

diseños de referencia en la fabricación de nuevos productos, la información

necesaria para entender, reproducir, modificar y programarlas se encuentra

disponible a quien esté interesado.

21

Page 22: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

• “Diseño e Implementación De Un Sistema Embebido Para La

Adquisición Y Transmisión De Señales Biomédicas A Través De La Red

Celular.”[14]

Esta tesis presenta el diseño e implementación de un Sistema Embebido, el cual

captura y transmite por diversos tipos de redes de telecomunicaciones la

información de señales biomédicas, correspondientes a señales de

electrocardiografía, frecuencia cardíaca, saturación de oxígeno en la sangre y

presión arterial.

• “Desarrollo de un controlador midi no convencional, implementado en

un sistema embebido, utilizando el Kinect” [15].

El siguiente proyecto de grado describe y argumenta el desarrollo de un

controlador MIDI[2] no convencional en sistemas embebido utilizando el Kinect. El

dispositivo implementa el protocolo MIDI para controlar hardware y/o software

remoto vía WiFi por medio de la captura de movimientos.

Con la utilización de este tipo de herramientas tecnológicas se puede construir

controladores no convencionales aplicados a la ingeniería de sonido, integrables a

diferentes redes de comunicación de forma práctica, eficaz e innovadora.

En el mercado actual existe diferentes clases de pedales que hacen loops, entre

los más reconocidos están los de la marca Boss, LoopStation RC2, RC3, RC20,

RC20 XL, RC30, RC50, RC300 y el RC 505, Siendo este último uno de los más

completos[3]. De la compañía Digitech existen varios prototipos como el JamMan

Solo Loop Pedal, el DL8, el Digi delay, el JamMan Stereo Loop Pedaly el Jam Man

express XT [4]. Vox tiene a disposición el VDL1 Dynamic Looper Effect Pedal, Lil

[2]Protocolo de comunicación serial que permite la comunicación entre dispositivos electrónicos musicales[3]Enlace de la página en internet; [En Linea], 2000, 1 de julio de 2013, 1:00 p.m; Disponible en la web: http://www.bossus.com/gear/productlist.php?ParentId=251[4]Enlace de la página; [En Linea], 2000, 4 de Septiembre de 2013, 10:00 p.m; Disponible en la web: http://www.digitech.com/en-US/product_families/loopers-delay

22

Page 23: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Looper y el delayLab[5], de Electro Harmonix está disponible el Stereo Memory

Man with Hazarai Looping Pedal y el 45000[6] y La marca line 6 tiene el JM4 Guitar

Looper Effect Pedal[7].

En la siguiente tabla podemos observar una comparativa con las características

principales, tales como conectores de entrada y salida de audio, memoria de

almacenamiento y formatos de grabación de algunos de los pedales de Loop más

usados en el mercado a nivel mundial.

Tabla 1. Comparación Pedales de Loop en el mercado.

Modelo Conectores Efect No. de Tracks

Loops salvados

Max. total Grabación

Sample Rate y

Bits

Precio $US

Boss RC2

USB: No

1 AUX IN 1 INPUT 1 OUTPUT

No 1 11 16 min No se especifica

$189,00

Boss RC3

USB: Si

2 INPUT 1 AUX IN 2 OUTPUT

No 1 99 3 horas aprox.

44.1 kHz, 16-bit, stereo

$199,00

Boss RC20

USB: No

1 AUX IN 1 MIC 1 SHIFT 1 INPUT 1 OUTPUT

Si 1 10 5 min 30s. aprox.

No se especifica

$259,00

Boss RC20XLUSB: No

1 INST 1 MIC 1 AUX IN 1 OUTPUT

Si 1 11 16 min No se especifica

$259,00

Boss RC30

USB:Si

1 MIC IN XLR 1 INST IN 1 AUX IN 1 OUTPUT 1 FOOT SW

Si 2 99 3 horas aproximadamente

44.1 kHz, 16-bit linear stereo

$299,00

[5]Enlace de la página; Enlace de la página; [En Linea], 2000, 4 de Septiembre de 2013, 10:00 p.m; Disponible en la web::http://www.voxamps.com/pedals/[6]Enlace de la página; [En Linea], 2000, 4 de Septiembre de 2013, 10:00 p.m; Disponible en la web:http://www.ehx.com/browse/delay-loopers[7]Enlace de la página; [En Linea], 2000, 4 de Septiembre de 2013, 10:00 p.m; Disponible en la web::http://line6.com/jm4looper/

23

Page 24: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Boss RC50USB

/MIDI: Si

1 INST R (MONO)/L 1 MIC (XLR phantom power).1 AUX 1 MAIN OUTPUT R (MONO)/L 1 PHONES SUB 1 OUTPUT R (MONO)/L 1 EXP/CTL 3, 4 1PEDAL ,1CTL

No 3 99 24 min en stereo Aprox 49 min en mono aprox

44.1 kHz, 24-bit

$499,00

Boss RC300USB

/MIDI: Si

1 INPUT MIC 1 INPUT INST 1 INPUT AUX1 MAIN OUTPUT (L/MONO, R) SUB OUTPUT (L/MONO, R) 1 PHONES CTL 1,2 / EXP

Si 3 99 3 Horas Aprox.

44.1 kHz, 16-bit linear, stereo

$490.00

Digitech JamMan

Solo Loop Pedal

1 INPUT 1 INPUT AUX 1 FOOT SW

No 1 99 35 min. 44.1 kHz, 24-bit

$199,95

Digitech JamMan Stereo Loop Pedal

1 INPUT 1 INPUT MIC 1 INPUT AUX 1 HEADPHON 1 FOOT SW

No 1 99 35min 44.1 kHz, 24-bit

$299,95

Vox VDL1

1 INPUT MIC IN XLR 1 OUTPUT

Si 2 100 1 min 44.1 kHz, 24-bit

$249,99

Electro Harmoni Hazarai

1 INPUT (L/MONO, R) MAIN OUTPUT (L/MONO, R)

Si 1 8 30 SEG 46,88 kHz, 24-bit

$217,50

JM4 Guitar Looper Effect Pedal

1 MIC IMPUT 1 INST 1 AUX INPUT 1 CD INPUT 1 OUT(MONO) 1 OUTPUT (STEREO)

Si 1 36 34 min 44.1 kHz, 24-bit

$329,99

Fuente Propia

24

Page 25: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

En la actualidad, la universidad de San Buenaventura desarrolla diversos

proyectos de grado que incursionan en el procesamiento digital de señales que

aplican sistemas embebidos.

Algunos de estos proyectos son:

• Desarrollo de un sistema de adquisición del nivel de presión sonora y

variables ambientales utilizando sistemas embebidos, realizado por Nicolás

Arias.

• Desarrollo de un sistema Tele home Care para la monitorización de un

electrocardiograma y un fono-cardiograma fetal, realizado por María

Fernanda Boscan.

• Desarrollo de una interfaz hardware/software de audio para un sistema

embebido, realizado por Yerson Rojas.

25

Page 26: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

1.2 DESCRIPCIÓN Y FORMULACIÓN DEL PROBLEMA

En el ámbito de la ingeniería de sonido se ha presenciado en las últimas décadas

una creciente y rápida evolución en los procesos de grabación de audio, esto

debido a que el mundo actual exige cada vez más, eficiencia y productividad. En

compañías y empresas audiovisuales existe la necesidad de grabar señales de

audio automáticamente en formato digital para luego ser editadas y procesadas

utilizando programas especializados.

Muchas empresas, fábricas y organizaciones industriales transmiten información

constantemente en el día a sus empleados y usuarios, debido a que no cuentan

con un sistema de grabación de audio fácil de usar, estas empresas requieren a

una persona exclusiva para transmitir la misma información en el transcurso de

todo el día, esta es una labor extenuante la cual puede ser realizada una única

vez.

Por otro lado siempre ha existido en el mundo artístico la falta de herramientas

para que un solo músico pueda ensayar, practicar y ensamblar una composición

musical propia con varios elementos rítmicos y melódicos. Productores,

compositores y arreglistas deben tener una idea solida de como sonarán sus

líneas rítmicas y melódicas de los solos instrumentales, fraseos de vientos,

arreglos vocales y armonías de la canción, y esto solo se puede saber hasta que

todos los músicos se encuentren presentes o esto sea grabado.

Las pedaleras actuales especializadas en la grabación y reproducción de audio

‘Loops Station’ manejan muy poca memoria para almacenar audio, por esta misma

no tiene muchos ritmos predeterminados, además no cuenta con la posibilidad de

descargar esta información a dispositivos externos de almacenamiento. ¿Cómo

retro-alimentar señales de audio en tiempo real implementando sistemas

embebidos?

26

Page 27: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

1.3 JUSTIFICACIÓN.

En un mundo de evolución tecnológica constante, en la cual los procesos son

cada día más rápidos, se debe tener a la mano herramientas que faciliten la forma

de poder capturar y reproducir señales de audio.

Los sistemas embebidos ofrecen las características de un computador la cual

está especialmente diseñado para la solución óptima de la tarea o tareas a

resolver. A diferencia de un PC, el sistema embebido se dota con los módulos

estrictamente necesarios para su función, por esta razón su costo es óptimo.

La incorporación de un sistema embebido proporciona solución más precisa y

rápida en su especialidad, ofrece un mayor número de opciones en los procesos

de la actividad específica, y competitividad del producto por su aplicación definida

respecto a otros productos similares.

En el ámbito musical este dispositivo es muy útil debido a que músicos,

compositores, arreglistas y productores podrán grabar una secuencia armónica

una sola vez y luego tocar encima de esta pista, se podrá ensayar una

improvisación cuantas veces sea necesario o inventar nuevas melodías. Esta

herramienta ayuda a agilizar el proceso de captura y retroalimentación de señales

de audio, debido a un fácil proceso de captura.

Para presentaciones en vivo un solo músico puede generar una composición

completa comenzando por la parte rítmica hasta la voz. Si no es posible practicar

con otras personas, este pedal es de mucha útil para improvisaciones las cuales

deben ser practicadas una y otra vez. Para grupos con pocos integrantes también

es de mucha ayuda ya que podrá traer por medio de un solo click una secuencia

melódica de vientos, coros y melodías de guitarra o piano.

Con esta herramienta se puede guardar información de audio muy fácilmente para

hacer propaganda continua y repetitiva.

27

Page 28: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

1.4 OBJETIVOS DE LA INVESTIGACIÓN

1.4.1 Objetivo General

• Diseñar y construir un dispositivo para la retroalimentación de señales de

audio en tiempo real utilizando sistemas embebidos.

1.4.2 Objetivos específicos

• Diseñar y desarrollar un software para la grabación, reproducción y

repetición continua de una señal de audio en tiempo real.

• Diseñar e implementar en el sistema, 3 bancos de almacenamiento de

audio que puedan ser accedidos por el usuario.

• Implementar en el sistema embebido un banco de memoria con audios

rítmicos pre-establecidos.

• Diseñar y construir un dispositivo el cual permita controlar los procesos de

grabación, reproducción y repetición de señales de audio para el sistema

embebido.

• Implementar un circuito electrónico el cual me permita escuchar a la vez, la

señal proveniente del sistema embebido y la señal directa del instrumento.

28

Page 29: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

1.5 ALCANCES Y LIMITACIONES

1.5.1 Alcances

• Realizar procesamiento de tiempo como retardos y reverberaciones a las

señales de entrada en tiempo real.

• Realizar uno o varios procesos dinámicos como lo son compresores y

compuertas a la señal de audio en tiempo real.

1.5.2 Limitaciones

• Las actividades en el sistema embebidos corren a una velocidad

predeterminada, lo que impone una limitación la capacidad de memoria del

sistema para realizar actividades de procesamiento en tiempo real.

• Limite en procesamiento del software utilizado para el desarrollo del

algoritmo.

29

Page 30: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

1. METODOLOGIA

2.1 ENFOQUE DE LA INVESTIGACION

El enfoque de esta investigación es empírico-analítico ya que se pretende mejorar

por medio de sistemas de electrónica programable la forma de capturar una señal

de audio y reproducirla para obtener como resultado final una retroalimentación de

señales.

2.2 LÍNEA INSTITUCIONAL, SUBLÍNEA DE LA FACULTAD Y CAMPO DE

INVESTIGACIÓN.

La línea institucional de mi proyecto es TECNOLOGÍAS ACTUALES Y

SOCIEDAD, ya que en los últimos años los sistemas embebidos responden a las

demandas de un mundo en constante crecimiento tecnológico, siendo estos

usados en diferentes dispositivos electrónicos de vanguardia.

La Sub-línea de la facultad es PROCESAMIENTO DIGITAL DE SEÑALES debido

a que el dispositivo que se fabricará graba y reproduce señales de audio para

luego ser manipuladas a voluntad.

El campo temático del programa de Ingeniería de Sonido al cual se suscribe el

proyecto es de ANÁLISIS Y PROCESAMIENTO DE SEÑALES, ya que la

investigación se enfoca en el uso de los sistemas embebidos para la captura y

reproducción de audio.

30

Page 31: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

2.3 HIPÓTESIS

Si los sistemas embebidos ofrecen la manera de capturar y reproducir una señal

de audio para realizar una retro-alimentación constante, bajo condiciones de

programación específica debido a su electrónica programable, entonces estos

sistemas pueden ser programados para realizar la función de tarjeta de

adquisición de datos, guardar bancos de sonidos y poder combinar en forma

aleatoria señales de audio con sesiones de audio guardadas con anterioridad.

2.4 VARIABLES

2.4.1 Variables Dependientes

La velocidad de procesamiento del sistema embebido para realizar procesos de

captura y reproducción.

2.4.2 Variables independientes

Las señales de entrada al sistema solo serán controladas por el nivel que se le

asigne desde el instrumento.

31

Page 32: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3. MARCO DE TEÓRICO CONCEPTUAL

Para el desarrollo y construcción del dispositivo se debe tener en cuenta las

siguientes temáticas: Señales Análogas y digitales, formatos de audio digital,

sistemas operativos de código Abierto, sistemas embebidos, y Qt Creator.

3.1 MEDIOS DE CONEXIÓN SEÑALES ANÁLOGAS

Las señales de audio análogo, las cuales son generadas por micrófonos o

instrumentos musicales como guitarras, bajos y teclados, pueden ser

transportadas de dos maneras básicas. La primera es de forma no-balanceada, en

la cual la señal se lleva a través de un cable de dos conductores.

La otra manera es balanceada, la cual implementa conectores de tres pines y

cable de tres conductores, la misma señal se lleva dos veces pero una de ellas

con la polaridad invertida. Esto es conocido como el balanceado de una señal [16]

[17] [18][19][20].

Gráfica 1. Des-balanceado de la señal análogo

Extraído de: “Dopa”, Conexiones balanceadas y no balanceadas, [En Línea], 2000, 26 de mayo

de 2013,8:00 a.m.; Disponible en la web:

http://www.doctorproaudio.com/doctor/temas/balanceado.htm

32

Page 33: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.1.1 Conectores de Audio.

Los conectores son elemento físicos que permiten adecuar la conexión entre los

dispositivos que se van a comunicar por medio del cable, la conexión debe

acoplarse perfectamente, por eso existen los conectores macho, y los conectores

hembra. El conector macho encaja en el conector hembra. El cable se puede unir

a estos por contacto físico o por soldadura.[16][17][18] [19][20].

3.1.1 Conector TRS

Al conector de 1/4" con tres terminales se le denomina en inglés TRS, abreviatura

de tip-ring-sleeve (punta-anillo-malla), este es un conector balanceado, La parte

positiva siempre van en la punta del conector y la masa o tierra en la parte

interior. [16][17][18] [19][20].

Gráfica 2. Asignación habitual de pines en conector de ¼” TRS

Fuente: [En Línea], 2000, 26 de mayo de 2013,8:00 a.m.; Disponible en la web:

http://www.doctorproaudio.com/doctor/temas/balanceado.htm

3.1.3 Conector XLR

Este tipo de conector de 3 contactos es el estándar para la conexión entre los

dispositivos de audio y los micrófonos. Normalmente usa tres contactos para su

uso con cable coaxial. El indicado como 1 generalmente es la masa, el 2 para la

señal positiva y el 3 para la señal negativa en las conexiones balanceadas.

33

Page 34: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Si no es balanceada, se une el pin 1 y 3 para la masa. Posee una pestaña

especial que hace que quede anclado al equipo para evitar que se suelte por

posibles tirones. [16][17][18] [19][20].

Gráfica 3. Asignación habitual de pines en conector XLR

Fuente: [En Línea], 2000, 26 de mayo de 2013,8:00 a.m.; Disponible en la web:

http://www.doctorproaudio.com/doctor/temas/balanceado.htm

3.1.3 Conexión Tipo Y

Con el propósito de obtener una copia la señal se realiza una conexión en

paralelo, a esto se le conoce como un cable o conexión Y, En la siguiente

ilustración se observa la conexión esquemática en Y, con unos conectores XLR

balanceado de salida a dos XLRs balanceados de entrada [21].

Gráfica 4 . Conexión en “Y”, conectores XLRs.

Fuente: [En Línea], 2000, 26 de mayo de 2013,8:00 a.m.; Disponible en la web:

http://www.doctorproaudio.com/content.php?148-cables-y-puenteo-paralelos

34

Page 35: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.2 MEDIOS DE CONEXION SEÑALES DIGITALES

3.2.1 Universal Serie Bus USB

El Universal Serial Bus, abreviado comúnmente como USB, es un puerto que sirve

para conectar dispositivos a un computador, este diseño propone mejorar las

capacidades plug-and-play permitiendo a los dispositivos ser conectados o

desconectados al sistema sin necesidad de reiniciar.

El USB puede conectar varios tipos de dispositivos como pueden ser: Mouse,

teclados, escáneres, cámaras digitales, teléfonos móviles, reproductores

multimedia, impresoras, discos duros externos, tarjetas de sonido, sistemas de

adquisición de datos y componentes de red [22] [23].

3.2.2 USB On-The-Go

También conocido como OTG, es una extensión del protocolo USB 2.0, este

permite a los dispositivos USB tener más opciones de conexión entre ellos. Este

tipo de conector habilita a un reproductor de audio o a un teléfono móvil para que

actúe como host, lo que hace posible se les puede conectar una memoria USB, un

ratón, un teclado, un disco duro, etc.

Dichos dispositivos tienen una limitación de consumo, y no permite conectar

dispositivos que consuman en exceso, como, por ejemplo, un disco duro de 2.5” o

un dispositivo USB de gran consumo.

Existen varios tipos de USB OTG, dependiendo de la conexión del dispositivo con

el que lo vayamos a utilizar [47].

35

Page 36: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.2.3 Tasa de transferencia

El término tasa de bits o tasa de transferencia hace referencia al número de bits

que se transmiten por unidad de tiempo a través de un sistema de transmisión

digital o entre dos dispositivos digitales. La tasa de transferencia del protocolo

USB 2,0 es de hasta 480 Mbit/s (60 MB/s) pero con una tasa real práctica máxima

de 280 Mbit/s (35 MB/s). La Interfaz transferencia de datos SERIAL SATA [8] en la

primera generación es de 150 MB/s. Actualmente se comercializan dispositivos

SATA II, a 300 MB/s, también conocida como Serial ATA-300 y los SATA III con

tasas de transferencias de hasta 600 MB/s [24][25].

3.2.4 Digital Visual Interface

La interfaz visual digital DVI es una interfaz de video diseñada para obtener

mayor calidad de visualización en pantallas digitales, tales como monitores LCD[9],

LED's[10] y proyectores digitales. Fue desarrollada por el consorcio industrial Digital

Display Working Group. El conector usado es tipo DVI [26].

3.2.5 High-Definition Multimedia Interface (HDMI)

La interfaz multimedia de alta definición (HDMI) es un protocolo de audio y vídeo

digital cifrado sin compresión, apoyada por la industria para que sea el sustituto

del euroconector. HDMI provee una interfaz entre cualquier fuente de audio y

vídeo digital como reproductores de Blu-ray[11], Tablets[12] y computadores[27,28].

[8]Serial ATA o SATA (acrónimo de Serial Advanced Technology Attachment) es una interfaz de transferencia de datos entre la placa base y dispositivos de almacenamiento como por ejemplo un disco duro.[9]Pantalla de cristal líquido ó LCD sigla del inglés liquid crystal display es una pantalla delgada y plana formada por un número de píxeles en color.[10]Las pantallas LED están compuestas de paneles o módulos de ledes (diodos emisores de luz) monocromáticos o policromáticos (RGB) que en conjunto forman píxeles, haciendo posible ver video.[11]Blu-ray es un formato de disco óptico de nueva generación, empleado para vídeo de alta definición, con capacidad de almacenamiento de datos mayor que el DVD.[12]Computador portátil un poco mas grande que un teléfono inteligente, integra una pantalla táctil.

36

Page 37: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.3 PROCESAMIENTO DIGITAL DE SEÑALES

Para poder manipular señales de audio en un computador es necesario la

conversión de señales análogas a señales digitales, esto nos ofrece muchas

ventajas como lo son facilidad para el procesamiento de la señal y la posibilidad

de realizar copias idénticas. Los audios digitales son una señal eléctricamente

exacta a una señal sonora y se encuentra acotada al rango de frecuencias

audibles para los seres humanos que está entre los 20 y los 20KHz,

aproximadamente [29].

Para obtener un audio digital se debe discretizar las señales sonoras continuas en

unas secuencias de números binarios[13]. Este proceso se lleva a cabo en dos

niveles, el temporal y el de la amplitud. En la Gráfica 15 se muestra una señal

continua, discretizada en el tiempo (cuadros blancos) y en la amplitud (puntos

negros). Entre más corta sea la distancia entre puntos, mayor similitud existirá

entre la señal original y la señal digitalizada.”[30].

Gráfica 5. Discretización de una señal continua

Fuente: Sergi Jordà Puig. (1997). Audio digital y MIDI. Madrid: Guías Monográficas Anaya

Multimedia.

[13]Sistema que utilizan los computadores, debido a que trabajan internamente con dos niveles de voltaje, encendido 1 y apagado 0.

37

Page 38: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.3.1 Muestreo

El muestreo (en inglés, sampling) consiste en tomar muestras periódicas de la

amplitud de onda. La frecuencia de muestreo es la velocidad con que se toma esta

muestra, es decir, el número de muestras por segundo. Según el teorema de

muestreo de Nyquist-Shannon, para cubrir el espectro audible entre 20 y 20KHz

se necesita una tasa de muestreo de más del doble, 44.1KHz es el estándar CD-

Audio [30][31].

3.3.2 Número de bits y Rango dinámico

En cuanto más alto sea el número de bit del archivo de audio, mejor será la

calidad del sonido, este tendrá más parecido al sonido analógico original. El rango

dinámico en decibelios viene dado aproximadamente por la fórmula:

Rango dinámico en dB = 10 x log10 (amplitud máxima2/amplitud mínima2)

Por lo tanto un sistema de conversión de 8 bits posee un rango dinámico de

aproximadamente 48 dB, mientras que uno de 16 bits, tendrá un rango dinámico

de 96 dB.

Cuando no se necesite una calidad de alta fidelidad, se pueden utilizar

especificaciones inferiores. Por ejemplo, una frecuencia de muestreo de 11.025 Hz

y una resolución de 8 bits, ofrecen una calidad comparable a la de una línea

telefónica convencional, por lo que serán suficientes para algunas aplicaciones de

voz[31].

38

Page 39: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.3.3 Tamaños del Audio Digital

Teniendo en cuenta que un byte son ocho bits, un archivo de audio de 16 bits, en

rango dinámico, ocupará dos bytes por segundo, si la frecuencia de muestreo es

de 44.100 Hz, significa que cada segundo requiere de 44.100 muestras. Si el

sonido es estéreo, utiliza dos canales, las cuales duplican los tamaños de los

archivos de audio.

2 bytes/muestra x 44.100 muestras/segundo x 2 (canales) = 176.400 bytes/segundo o 172,2 Kb/s.

Realizando una multiplicación más, se observa que un minuto de audio digital

estéreo, ocupa un valor muy cercano a los 10 Mb.

Los CD's de Audio por lo general no superan los 70 minutos. Esta duración se

debe a que su capacidad suele ser de 700 Mb.

Cuando los archivos de audio son monofónicos, estos tamaños descienden a la

mitad, y lo mismo sucede si la resolución es de 8 bits en lugar de 16 bits, o la

frecuencia de muestreo es de 22.050 Hz. Por ello, limitando la calidad al mínimo,

el tamaño necesario para un minuto de sonido monofónico de 8 bits y 11.025 Hz,

se reduce aproximadamente a 646 Kb. [29][30][31].

39

Page 40: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.4 SISTEMAS OPERATIVOS

3.4.1 GNU / Linux

Linux es un sistema operativo multitarea, multiusuario, multiplataforma basado en

Unix[14]. Las características principales es que es un S.O libre, esto significa que no

se tiene que pagar ningún tipo de licencia por el uso del software, la segunda, es

que el sistema viene con el código fuente.

El sistema lo forman el núcleo del sistema (kernel) más la implementación de

bibliotecas que hacen posible su utilización. Muchos de estos programas y

bibliotecas han sido posibles gracias al proyecto GNU [15], por esta razón, muchos

llaman a Linux, GNU/Linux, para resaltar que el sistema lo forman tanto el núcleo

como gran parte del software producido por el proyecto GNU General Public

License, por lo tanto, el código fuente tiene que estar siempre accesible y

cualquier modificación o trabajo derivado tiene que tener esta licencia. [32][33].

Existen varios sistemas operativos basados en el núcleo Linux[16], entre las más

utilizadas encontramos:

• Red Hat Enterprise Linux, su fabricante Red Hat, apoya el desarrollo de

software libre con el proyecto Fedora, del cual se derivan distribuciones

compatibles como Oracle Enterprise Linux, CentOS y Mandriva Linux.

• SUSE Linux de Novell. Originalmente liberado por la compañía alemana

SuSE. Es popular por sus herramientas de administración centralizada. De

manera análoga a RedHat con Fedora, apoya el proyecto openSUSE.

• Debian GNU/Linux. Con una de las comunidades más grandes y antiguas

del movimiento de software libre, es base para distribuciones como

Xandros, Mepis, Linspire y Ubuntu.[33]

[14]UNIX es un sistema operativo portable, multitarea y multiusuario; desarrollado en 1969, por un grupo de empleados de los laboratorios Bell de AT&T[15]En 1983, Richard Stallman fundó el Proyecto GNU, con el proposito crear un sistema similar a Unix, que pudiese ser distribuido libremente.[16]En 1991, Linus Torvalds empezó a proponer el núcleo Linux y a reunir colaboradores

40

Page 41: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.4.2 Ubuntu 12,04 LTS[17]

Este sistema operativo utiliza el núcleo Linux y tiene sus orígenes en Debian/GNU

Linux, debido a que hace parte del proyecto GNU, es mantenido por una gran

comunidad informática[18]. La distribución de Ubuntu está orientado al usuario

común, su interfaz de usuario Unity[19] creada para el entorno de escritorio

GNOME[20], y desarrollado por Canonical[21], ofrece facilidad de uso, esta tiene un

fuerte enfoque en mejorar la funcionalidad para sus usuarios.

Ubuntu 12.04 está compuesto de múltiples software normalmente distribuido bajo

una licencia libre o de código abierto. Al mantenerse libre y/o gratuito, aprovecha

los desarrolladores de todo el mundo para mejorar los características de su

sistema operativo. La comunidad de desarrolladores proporciona soporte para

otras derivaciones de Ubuntu, con otros entornos gráficos, como Kubuntu,

Xubuntu, Ubuntu Studio, Ubuntu Gnome y Lubuntu[34].

3.4.3 LXDE (Entorno de Escritorio X11 Ligero).

LXDE[22] es una interfaz gráfica ligera de código abierto licenciado bajo la GPL

para Unix y otras plataformas POSIX compatibles, como Linux. El nombre LXDE

significa "Lightweight X11 Desktop Environment". LXDE es la solución para el

ahorro de energía y consumo de recursos de procesamiento. Trabaja bien con

computadoras de bajo rendimiento tales como netbooks de nueva generación y

S.E. Puede ser instalado en varias distribuciones de Linux como Ubuntu o

Debian[35].

[17]Enlace a la pagina web; [En Linea], 2000, 26 de mayo de 2013, 8:00 a.m; Disponible en la web:http://www.ubuntu.com/[19]Enlace a la pagina web; [En Linea], 2000, 26 de mayo de 2013,8:00 a.m; Disponible en la web: https://unity.ubuntu.com/[20]Entorno de escritorio para sistemas operativos GNU/Linux.[21]Empresa que brinda venta de soporte y servicios relacionados con Ubuntu.[22]Enlace a la pagina web; [En Linea], 2000, 26 de mayo de 2013,8:00 a.m; Disponible en la web: http://lxde.org/es

41

Page 42: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.5 QT CREATOR [23]

Qt es una biblioteca Multi-plataforma usada mundialmente para desarrollar

aplicaciones con interfaz gráfica, así como también para el desarrollo de

programas sin interfaz gráfica.

Qt es un Entorno de Desarrollo Integrado o IDE la cual consta de un editor,

compilador y depurador bastante completo y fácil de manejar, Utiliza el lenguaje de

programación orientado a objetos C++, permite realizar programación visual y

programación dirigida por eventos, es posible el desarrollo rápido de aplicaciones

en entornos MS Windows, Mac OS y Linux.

Qt es desarrollada como un software libre y de código abierto a través de Qt

Project[24], donde participa tanto la comunidad, como desarrolladores de Nokia,

Digia y otras empresas.[36][37]

3.6 COMPILADOR GCC

Un compilador es un programa informático que traduce un programa escrito en un

lenguaje de programación a otro lenguaje de programación, generando un

programa equivalente que la máquina será capaz de interpretar. Usualmente el

segundo lenguaje es lenguaje de máquina, pero también puede ser un código

intermedio (bytecode), o simplemente texto. Este proceso de traducción se conoce

como compilación [38].

El compilador GCC[25] está integrado en el proyecto GNU para C, C++, Objective C

y Fortran; es capaz de recibir un programa fuente en cualquiera de estos

lenguajes y generar un programa ejecutable binario en el lenguaje de la máquina

donde va a correr.

[23]Enlace a la pagina web; [En Linea], 2000, 26 de mayo de 2013,8:00 a.m; Disponible en la web: http://qt.digia.com/[24]Enlace a la pagina web; [En Linea], 2000, 26 de mayo de 2013,8:00 a.m; Disponible en la web:http://qt-project.org/[25] GCC significa "GNU Compiler Collection". Originalmente significaba "GNU C Compiler".

42

Page 43: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.7 SISTEMAS EMBEBIDOS

Los sistemas embebidos son sistemas Hardware y Software de propósito

específico, están diseñados para realizar una o más actividades, generalmente en

tiempo real. Estos sistemas permite su optimización, mejorando el desempeño,

eficiencia y confiabilidad, teniendo la posibilidad de reducir el tamaño y costo de

producción.

Las principales diferencias de los sistemas embebidos con los computadores personales son [13][46]:

• Pueden ser implementados en diferentes Proyectos con arquitecturas de

procesadores ARM.

• El desarrollo se puede optimizar por medio de un diseño particular de

hardware y software, esto con el objetivo de satisfacer las tareas

específicas que se desea cumplir.

• Poseen recursos limitados de procesamiento, memoria RAM [26], ROM[27]

y al manejo de los dispositivos y periféricos de almacenamiento.

• En los sistemas embebidos el consumo de potencia es muy bajo, por esta

razón permiten implementar soluciones con bajos consumos de energía.

• Generalmente, los sistema embebidos poseen limitaciones de tiempo,

debido a esto, un gran número aplicaciones desarrolladas en estos

sistemas se realizan en tiempo real.

[26] RAM proviene de ("Read Aleatory Memory") ó memoria de lectura aleatoria, esta encarga de almacenar datos e instrucciones de manera temporal.[27] Es un medio de almacenamiento utilizado en ordenadores y dispositivos electrónicos, que permite sólo la lectura de la información y no su escritura,

43

Page 44: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A continuación se presenta una tabla con las características de los sistemas

embebidos RaspBerry[28], Hackberry[29], BeagleBone[30], PandaBoard [31], Cubioard [32]y Odroid U2[33] de arquitectura ARM, la información fue recolectada de las

paginas oficiales de cada distribución.

Tabla 2. Comparativa de otros S.E con arquitectura ARM

Fuente propia.

[28]Enlace a la pagina web; [En Linea], 2000, 8 de Julio de 2013, 9:00 p.m; Disponible en la web: http://www.raspberrypi.org/[29]Enlace a la pagina web; [En Linea], 2000, 8 de Julio de 2013, 9:00 p.m; Disponible en la web: https://www.miniand.com/products/Hackberry%20A10%20Developer%20Board[30]Enlace a la pagina web; [En Linea], 2000, 8 de Julio de 2013, 9:00 p.m; Disponible en la web: http://beagleboard.org/[31]Enlace a la pagina web; [En Linea], 2000, 8 de Julio de 2013, 9:00 p.m; Disponible en la web: http://pandaboard.org/[32]Enlace a la pagina web; [En Linea], 2000, 8 de Julio de 2013, 9:00 p.m; Disponible en la web: http://cubieboard.org/[33]Enlace a la pagina web; [En Linea], 2000, 8 de Julio de 2013, 9:00 p.m; Disponible en la web: http://www.hardkernel.com/renewal_2011/main.php

44

Page 45: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.7.1 Beagle Board-Xm

El procesador de la BeagleBoard-xm es el OMAP3730 CBP1 de 1 GHz, este es un

procesador de aplicaciones multimedia de Texas Instruments, basado en la

arquitectura de doble núcleo, optimizada para sistemas operativos eficientes y

ejecución de código de multimedia. Contiene en su interior procesadores ARM

(CPU) y procesadores DSP[34], además de puertos de conexión a USB, cámara,

LCD, memoria, y periféricos inalámbricos. Combina el comando y las

características de control de los microprocesadores ARM y DSP de alto

desempeño y bajo consumo de potencia. En la siguiente tabla se muestran las

características principales de la BeagleBoard-xm[39].

Gráfica 6. Sistema embebido BeagleBoard-xm destacando sus principales características

Fuente: [En Línea], 2000, 26 de mayo de 2013,8:00 a.m.; Disponible en la web: http://beagleboard.org/

[34] Un procesador digital de señales o DSP (sigla en inglés de digital signal processor) es un sistema basado en un microprocesador para aplicaciones que requieran operaciones numéricas de muy alta velocidad.

45

Page 46: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Tabla 3 .Características de hardware BeagleBoard

Fuente: BeagleBoard –xM Rev C System Reference Manual, [En Línea], Abril 4 de 2010, 29 de

mayo del 2013,11:00 a.m; Disponible en Web: http://beagleboard.org/static/BBxMSRM_latest.pdf

46

Page 47: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3.7.2 WANDBOARD QUAQ

La WandBoard es un computador completo de bajo consumo de poder con un alto

desenvolvimiento en tareas multimedia basado en un procesador Freescale i.MX6

Quad, Cortex-A9 Quad core y memoria de 2GB DDR3 [40].

Tabla 4. Especificaciones WandBoard

Fuente: WandBoard.org, [En Linea], Abril 4 de 2010, 11:00 a.m ; Disponible en Web:

http://www.wandboard.org

47

Page 48: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

4. DESARROLLO INGENIERIL

En esta sección se describe el diseño y construcción de un dispositivo para la

retroalimentación de señales de audio implementado un sistema embebido. A

continuación se describe mediante un diagrama de bloques las 3 etapas de

desarrollo principales del proyecto.

Gráfica 7. Etapas principales del desarrollo del proyecto.

El primer bloque de desarrollo expone en la implementación del código realizado

en Qt Creator, Aquí se explica cómo se adquiere la señal de audio a través del

código y funciones que ofrece el software para la manipulación de los audios.

48

Page 49: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

El segundo bloque explica cómo fue fabricado el hardware, se muestra la

construcción del dispositivo la cual permite interactuar con el programa y el

proceso se realiza para la adquisición de la señal.

El tercer y último bloque presenta la adecuación y configuración de los sistemas

operativos y el entorno de desarrollo Qt en los sistemas embebidos, En esta

sección se muestra el acoplamiento de S.E con el hardware y el análisis de

resultados.

4.1 DESARROLLO DEL SOFTWARE

La primera labor realizada fue la instalación de un S.O de código abierto en el

computador portátil, el PC consta de un procesador Intel® Core™ i5-3337U CPU

@ 1.80GHz × 4, memoria RAM de 8GB, gráficos Intel® Ivybridge Mobile ,Disco

duro de 1TB, además consta el dispositivo de audio Intel Corporation 7

Series/C210 Series Chipset Family High Definition Audio Controller.

Se decide trabajar con Ubuntu 12.04 LTS debido a su facilidad de uso, este es un

sistema operativo muy estable y rápido, además cuenta con una amplia

comunidad de desarrolladores en pro de la mejora de los componentes de su

sistema operativo, no tiene problemas de virus y se tiene total acceso a las líneas

de código fuente. La instalación y adecuación de Ubuntu en el PC se puede ver en

Anexo A16.

Luego se instaló nuestro entorno de desarrollo, el software utilizado es Qt Creator

4.8 basado en Qt 2.4.1 descargado desde el Centro de Software de Ubuntu, para

arquitecturas Linux de 64- bits. Qt Creator es un entorno integrado de desarrollo

multiplataforma (IDE) a la medida de las necesidades de los desarrolladores de

Qt. Ver Anexo A17.

49

Page 50: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Qt Creator puede ser ejecutado en los sistemas operativos de escritorio como

Windows, Linux/X11 y Mac OS X y permite a los desarrolladores crear

aplicaciones para múltiples escritorios y plataformas de dispositivos móviles.

Qt Proporciona, un editor de código de C++ y JavaScript, un diseñador de interfaz

de usuario integrado, herramientas de gestión de versiones y proyectos,

Depuradores GDB y CDB, Control de versiones, simulador para las interfaces de

usuario móviles, además ofrece compatibilidad con la creación y ejecución de

aplicaciones Qt para ordenadores de escritorio y sistemas embebidos, la

configuración generada te permite cambiar rápidamente entre los destinos de

generación.

Qt cuenta con la posibilidad de utilizar varios compiladores (toolchains)

previamente instalados en la PC y dispone de la herramienta de diseño Qt Creator

para crear aplicaciones gráficas (GUI, Graphical User Interface).

Para la realización de este proyecto se inició un nuevo proyecto en Qt 4.8 de la

siguiente manera:

• File->New file or Project-> Applications->Qt Gui Application

Luego se nombró con el título provisional LoopStation, el cual generó los archivos.

LoopStatio.pro, loopstation.h, loopstation.cpp, main.cpp y loopstation.ui

La principal librería de audio usada es qtmultimediaKit1, en esta página se

encuentra información acerca de esta:

• http://doc.qt.digia.com/qtmobility/multimedia.html

Estas son las funciones (Apis) que necesite de esta librería.

#include <QtMultimediaKit/qmediarecorder.h>#include <QtMultimediaKit/qmediaplayer.h>#include <QtMultimediaKit/qaudiocapturesource.h>#include <QtMultimediaKit/QAudioFormat>

50

Page 51: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Otra librería usada es phonon, esta cuenta con muchas posibilidades, permite

reproducir un audio desde cualquier carpeta, detener, pausar y borrar el audio de

la memoria del programa. Una de las desventajas más importantes es que no

cuenta con un módulo de grabación de audio, otra desventaja es que al reproducir

el audio en loop este se demoraba en entrar, es decir presentó retraso en la señal

el cual no permite la sincronización perfecta con los demás audio, por esta razón

la librería phonon es usada en el software solo para cargar música, y no realiza

funciones de loop.

Debido a las falencias de la librería phonon se procede a trabajar con la librería

qtmultimediaKit1, también descargada desde el centro de software Ubuntu, esta

librería permite grabar y reproducir audio simultáneamente, también ofrece

posibilidades de play, stop y pause.

Para poder crear un software el cual permita sincronizar la grabación y

reproducción de todos los sample, se creó un reloj llamado timer y un contador

que marca los 4 tiempos del compás [45].

Este software solo trabaja con compases binarios y cuaternarios, (2/4 y 4/4), de

esta forma la porción de tiempo siempre está dividida en cuatro partes. El

numerador indica los tiempos en los que se divide, y el denominador 4 indica que

en cada una de las partes entra una negra [45].

Para poder activar y desactivar este proceso se creó el botón START/STOP BPM,

este botón está configurado como un interruptor de encendido y apagado del reloj

principal (timer). Ver Anexos A.5

El timer se configuró con la siguiente formula:

timer->start(60000/bpm);

Donde el bpm por defecto es 100;

51

Page 52: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Partiendo de que 1 minuto tiene 60 segundos y 1 que un segundo son 1000

milisegundos, un minuto tendrá 60000 segundos, al dividir esto por el número de

bits por minuto (bpm) esto nos arroja como resultado la cantidad de milisegundo

que hay entre cada bit. En Anexos se puede observar el código final de cada

función con las explicaciones detalladas de cada línea.

El reloj contador está alojado en el slot void LoopStation::Contador(), su función es

contar de 0 a 3 de manera cíclica, esto es realizado por medio de la variable t , la

cual se ha configurado como t++ dentro del contador .

Cuando t=0, graba un audio y reproduce todos los sample seleccionados

simultáneamente incluyendo el click del metrónomo.

La variable que activa y desactiva la grabación es r, es decir, cuando r=0 y t=0,

captura audio, y cuando r=1 y t=0, detiene la captura.

Cuando t =1, t=2 y t=3 simplemente reproduce los sample de click del metrónomo.

Ver código en Anexos A.6

Al metrónomo es posible aumentarle o disminuir la velocidad, también puede ser

apagado (Mute). Ver Anexos A.7

También es posible Modificar el metrónomo con el tap tempo, Ver Anexo A.8

El Programa Cuenta Con 3 Bancos para almacenar audios, en cada banco se

crearon 3 canales para la grabación de audios, el programa almacena todos los

audios grabados en la carpeta "Audios".

Para el acceso rápido a los bancos se creó un único botón el cual permite ubicarse

en cada uno de los bancos ascendentemente, cuando llega al banco 3

nuevamente vuelve a 1. Ver código en Anexos A.9

52

Page 53: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Es posible acceder a cada banco directamente por medio de Botones ubicados en

el recuadro Options Bank. Ver Anexos 10.

El programa cuenta con audios pre-establecido con bases de percusión rítmica

para la interacción en tiempo real. Para este proceso se tomó una librería de 20

samples, con diferentes ritmos como Rock, Pop, Salsa, Merengue, Bolero y

Reguetón entre otros. Estos samples fueron creados en el estudio de grabación

Marlon Polo de la ciudad de Barranquilla, fueron donados al proyecto con

posibilidad de ser modificados para su uso comercial, posteriormente cada audio

se editó en Protools 8.0.4 para que fueran muy cortos y que al reproducirse en

loop entrarán en el tiempo fuerte del compás. Cada audio tiene un nombre y se

almacenó en el siguiente directorio:

Music1->setMedia(QUrl::fromLocalFile("/home/erick/Loops/1Pop75.wav"));

Se crearon 2 botones con los cuales se pueda moverse entre los ritmos cargados .

Este código se generó por medio de la variable l++, el cual cada vez que

presionamos el botón aumenta o disminuye esta variable, por ejemplo si l=1, p1=0

y reproduce el primer audio, si l=2 entonces p1=1, detiene el primer audio y p2=0,

reproduce el segundo audio. Ver Anexos A.11

El software permite cargar música desde cualquier directorio, para esto se usó la

librería phonon, en la página siguiente se encuentra la manera correcta de

emplear esta librería:

• http://doc.qt.digia.com/4.7/phonon-overview.htm

En anexos A.12 se muestra la parte del código que trabaja con la librería Phonon.

Esta librería también puede reproducir, pausar y detener audios.

53

Page 54: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Para poder configurar las propiedades de los audios grabados se utilizó la

siguiente configuración.

QAudioEncoderSettings audioSettings; audioSettings.setCodec("audio/PCM"); audioSettings.setSampleRate(44100); audioSettings.setBitRate(16); audioSettings.setQuality(QtMultimediaKit::VeryHighQuality); recorder->setEncodingSettings(audioSettings);

La carpeta audios es creada manualmente en el directorio /home/erick/, aquí es

donde se almacenaran los archivos grabados.

Por medio de la siguiente línea podemos capturar la señal proveniente de la

entrada de micrófono.

recorder->setOutputLocation(QUrl("/home/erick/Audios/1A-3C-2B.wav"));

Este es el Audio 1 grabado en el canal 3 del banco 2, en el Anexo A.13 se

presenta el código de un canal, el código para los otros 2 canales es similar.

La programación cuenta con 2 Modos de Operaciones que son:

• Modo Grabación el cual Permite Grabar y reproducir los audios grabados en

tiempo real.

• Modo Reproducción, diseñado para reproducir y detener los audios

grabados.

Ambos pueden ser accedidos con el botón (RECORD MODE/PLAY MODE),

estando activado se encuentra en Modo grabación, desactivado en modo

reproducción. Ver código en Anexos A.14

En modo grabación, el botón (REC/PLAY) permite grabar y reproducir el audio

grabado en tiempo real, para grabar se debe activar antes del primer tiempo para

iniciar la grabación y desactivar antes del primer tiempo para reproducir el audio

inmediatamente grabado. El primer tiempo es el BIT 1 y este es el tiempo fuerte

del compás de 4 tiempos.

54

Page 55: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

El boton (CLEAR) permite borrar el último audio si este no es de nuestro agrado

para volver a grabarlo. Cabe apuntar que esta librería no me permite borrar audios

de la carpeta donde se encuentra, por esta razón se utiliza un archivo en blanco el

cual reemplaza el audio grabado. Ver código del botón Clear en Anexos A.15

En Modo Reproducción el botón (REC/PLAY) permite detener y reproducir el audio

grabado de este canal, el pulsador (CLEAR) permite borrar los audios de los 3

canales del banco seleccionado.

También se configuró las opciones de Entrada y Salida de audio del PC por medio

de alsamixer y se establece la configuración como la predeterminada.

Ejecutamos desde el terminal el siguiente comando:

> root@erick-desktop:/# sudo alsamixer

> root@erick-desktop:/# alsactl store

Gráfica 8: Vista de la consola alsamixer del PC.

Fuente Propia.

55

Page 56: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

En la siguiente imagen podemos observar la interfaz gráfica del software

LoopsStation ejecutado en el computador de escritorio, Abajo el reproductor de

audio creado con Phonon.

Gráfica 9. Interfaz Gráfica del software en el PC

Fuente Propia.

56

Page 57: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

En el siguiente diagrama podemos observar el diagrama de conexiones para la

prueba del software funcionando en el PC.

Gráfica 10 . Diagrama de Conexiones Prueba del Software en el Portátil.

Fuente propia

El plugin alsamixer instalado para configurar la tarjeta de audio, ofrece las

opciones de pre y post escucha, en pre solo se puede escuchar las señales que

ingresan al sistema pero no se puede escuchar lo que sale de este, En post se

escucha lo que está en el sistema y no lo que ingresa.

Por esta razón se decide construir e implementar un divisor de señal, el propósito

de dividir la señal es tener la opción de poder escuchar lo que se está ejecutando

sin necesidad de estar grabando y escuchar simultáneamente lo que se ha

grabado anteriormente. esto libera recursos de procesamiento al sistema

embebido.

57

Page 58: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

En la gráfica siguiente se representa por medio de un diagrama de bloques el flujo

de la señal, se observa que existe una señal directa y una señal procesada la cual

pasa por el sistema embebido.

Gráfica 11. Flujo de señal del dispositivo

Fuente Propia.

58

Page 59: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

4.2 CONSTRUCCIÓN DEL HARDWARE

Para la construcción del chasis se realizó un boceto del diseño en sketchup con

las acotaciones, esto fue realizado para tener una idea clara de cómo quedaría el

dispositivo, estas gráficas fueron llevadas a la empresa Impleaceros de la ciudad

de Barranquilla, especializada en la construcción en todo tipo de estructuras de

acero. Este trabajo fue realizado paralelamente con el desarrollo del software en

Qt Creator.

Gráfica 12. Vista en perspectiva, realizado en sketchup

Gráfica 13 . Vista desde arriba, realizado en sketchup

Fuente Propia

59

Page 60: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

El material escogido fue el acero inoxidable ya que este nos ofrece mayor

durabilidad y resistencia.

Gráfica 14. Foto vista lateral (1era parte) . Gráfica 15. Foto vista Frontal(1era parte) .

Gráfica 16. Fotos de Chasis Base Blanca. Gráfica 17. Fotos del Chasis Laca Verde

Fuente Propia.

60

Page 61: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

4.3 INSTALACIÓN Y ADECUACIÓN DEL SISTEMA EMBEBIDO.

Los sistemas embebidos tienen la capacidad de soportar un sistema operativo

embebido y lograr la comunicación con diferentes periféricos como teclados,

mouse, monitores de vídeo, micrófono y parlantes entre otros.

Estas tarjetas cuentan con un microprocesador dedicado para el procesamiento de

señales de audio, además cuenta con los conectores de entrada y salida de audio

indispensable para poder capturar y reproducir.

En la gráfica a continuación se muestra por medio de un diagrama de bloque la

interacción de los periféricos de control y adquisición de la señal con el sistema

embebido.

Gráfica 18. Diagrama de bloques interacción periféricos con S.E

Fuente Propia

61

Page 62: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Para cumplir con los requisitos planteados, fue necesario probar 2 de los sistemas

embebidos más robustos que existen actualmente en el mercado, Principalmente

se propuso la BeagleBoard-Xm.

4.3.1 Instalación de Ubuntu en la BeagleBoard

Por defecto, el Beagleboard-xM trae pre-instalado el sistema operativo Ångström,

el cual es una distribución basada en el Debian Project y está orientado para ser

utilizado en sistemas embebidos.

Otro sistema operativo evaluado en la BeagleBoard-Xm es el Ubuntu 12.10, el

cual también está basado en Linux, pero está más orientado al uso en

computadoras personales, de escritorio y servidores. Este cuenta con una

cantidad mucho mayor de paquetes de software disponibles en comparación con

el sistema Ångström. Además, existe mayor soporte por parte de la comunidad de

desarrolladores por lo que su estabilidad es muy superior.

Para la instalación de Ubuntu en la BeagleBoard-xM, se realiza el procedimiento

de esta página:

• http://elinux.org/BeagleBoardUbuntu

En estas páginas se encuentran diferentes imágenes pre-compiladas para la

beagleboard-xm :

• http://ynezz.ibawizard.net/beagleboard/

• http://rcn-ee.net/deb/rootfs/

En el Anexo A.18 se encuentra el procedimiento paso a paso realizado para la

instalación de Ubuntu en la BeagleBoard_Xm.

62

Page 63: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

4.3.2 Compilación del software en la BeagleBoard-Xm

Para correr el ejecutable que produce Qt Creator en los sistemas embebidos,

existen 2 maneras, la primera forma es realizando una cross-compilación o

colchan, el cual es una aplicación capaz de producir un código ejecutable para

una arquitectura diferente a la que está ejecutándose. Por ejemplo, si el cross-

compilador fue instalado en un computador Intel x86, ahora es posible que este

compile el código para ser ejecutado en el sistema operativo Linux de la

BeagleBoard-xM.

Las paginas disponibles en internet usadas de referencia para la instalación y

configuración son estas:

• http://qt-project.org/doc/qt-4.8/qt-embedded-install.html

• http://treyweaver.blogspot.com/2010/10/setting-up-qt-development-

environment.html

• http://zarzamora.com.mx/archivo-historico/1233

• http://harmattan-dev.nokia.com/docs/library/html/qt4/qt-embedded-

crosscompiling.html

En esta página se encuentran los toolchains de la distribución Armstrong:

• http://www.angstrom-distribution.org/toolchains/

La ventaja de este proceso es que no hay que instalar Qt en el sistema embebido,

para correr el programa solo hay que copiar y pegar el ejecutable.

La desventaja es que no permite saber inmediatamente si el código funciona,

debido a que después de ser compilado en el PC, se debe copiar en una memoria

63

Page 64: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

USB y pegarlo en el sistema embebido para verificarlo, además este proceso de

cross-compilación tarda mucho tiempo en arrojar el ejecutable.

La otra forma es instalando Qt en la plataforma ARM, luego crear un nuevo

proyecto para copiar y pegar las líneas de código, esto con el propósito de hacer

la compilación con los compiladores propios de cada arquitectura.

Este procedimiento tiene una desventaja y es que no todos los sistemas

embebidos pueden correr plataformas de desarrollo que exijan demasiado

procesamiento, en este caso, la Beagleboard corre sin ningún problema este

software y compila y compila el códigos en menos de 15 segundos.

La otra desventaja es que se debe instalar Qt en el sistema embebido, agotando

almacenamiento en la SD card, Para evitar esto, se almacenaron los archivos de

audio en el segundo slot que ofrece la Wandboard, además se usaron tarjetas

micro SD de gran capacidad y de alta velocidad de transferencia.

La ventaja más importante de este proceso, es que me permite comprobar si el

código está corriendo bien, inmediatamente hecha alguna modificación en el

código, por esta razón se decide implementar este método.

4.3.3 Compilación del software en la WandBoard Quad

La instalación de Ubuntu en la Wandboard es un proceso mucho más sencillo, ya

que en la página oficial se encuentran diferentes imágenes pre-compiladas con

sistemas operativos para cada tarjeta.

El proceso de instalación se encuentra en un archivo .pdf también ubicado en la

página de descargas[40].

64

Page 65: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

La tabla a continuación es una comparativa con las características principales de

cada Sistema.

Tabla 5. Comparativa Beagleboard vs. WandBoard

Fuente Propia.

65

Page 66: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

4.4 IMPLEMENTACION Y ACOPLAMIENTO DEL S.E CON EL HARDWARE

Para la adquisición de la señal de audio fue necesario construir un acople de

entrada al S.E.

Debido a que las tarjetas no cuenta con conectores de uso profesional como el

XLR o TS propio de instrumentos musicales, se adaptó una conexión Y

balanceada (Divisor de señal), el cual permita recibir la señal con un conector XLR

hembra (Señal Balanceada), a su vez este fuera al S.E usando el conector de 3.5

mm y al conector hembra TRS para proporcionar una copia de la señal sin

ingresar a la tarjeta.

Para la salida de audio se adaptó un conector de 3.5 mm a un conector hembra

TRS de 1/4”, por medio de un cable balanceado de 15 cm

Gráfica 19. Conexión de audio en forma Y. Gráfica 20 . Adaptación de salida de

audio. Conector 3.5 a TRS de 1/4”

Fuente Propia

Para poder interactuar con el software, se adaptó un circuito electrónico a la tarjeta

interna de un teclado USB. Las tarjetas de los teclados tienen 2 puertos con 13

66

Page 67: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

terminales cada uno, las letras números, símbolos y funciones se activan con la

combinación de estos terminales.

En anexos A19 se presenta una lista con las combinaciones de terminales que se

detectaron y el carácter que habilita.

Las terminales usadas son las siguientes:

Q 1+6W 2+6Z 1+10 X 2+10, 6+10A 1+8S 2+8K 6+8L 7+8ENTER 8+8

En una placa se conectaron por medio de cables las terminales de la tarjeta que

se van usar, esto generó una matriz donde se pueden hacer las combinaciones.

Gráfica 21. Adaptación a la tarjeta del teclado USB y Diagrama de Conexiones en la placa matriz

Fuente Propia

67

Page 68: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Por medio de pulsadores conectados a la placa, se hace continuidad, cerrando el

circuito y de esta manera se puede enviar la letra configurada para cada función

del software, en el programa se configuraron los shorcuts para cada Botón.

Al conectar el dispositivo con esta implementación se obtienen unas ventajas

como los son poder conectar y usar inmediatamente (plug and play). El voltaje

necesario para encender el dispositivo es suministrado por el USB. La

configuración por medio de letras asignadas al software, permite modificar las

funciones de los pulsadores a gusto propio.

En la gráfica 25 se observas parte de la interfaz gráfica, en este se encuentra

seleccionado el botón llamado Bank Up, a la derecha se encuentran las

propiedades de este botón, aquí podemos configurar, texto, icono, tamaño del

icono y atajo del teclado(Shorcut), este se ha configurado con la letra Q.

Gráfica 22. Configuración del Shorcut en Qt Creator

En las gráficas siguientes se observa el montaje final del dispositivo con todos sus

entradas y salidas de audio, puerto HDMI ,switch de encendido y apagado, Jack

de alimentación y pulsadores.

68

Page 69: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Gráfica 23. Fotos del chasis Montaje Final (Frontal)

Gráfica 24. Fotos del chasis Montaje Final (Perspectiva)

Gráfica 25. Fotos del chasis Montaje Final (Respaldo)

Fuente Propia

69

Page 70: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

5. MANUAL DE USO

La pedalera Loop WorkStation está basada en un sistema embebido. Cada uno de

los tres canales de frase permite ser detenido y reproducido individual o

simultáneamente. La reproducción perfectamente sincronizada y el funcionamiento

intuitivo permiten crear un conjunto de sonidos incluso en actuaciones en vivo y en

directo.

Cuenta con una entrada de micrófono, conector XLR, una salida copia de la señal

de entrada y salida de audio de los loops, conectores TRS, además cuenta con

conectividad USB para el acople del teclado y mouse.

Cuenta con un Tempo modificable (B.p.m) este puede ser accedido por un

interruptor.

Esta pedalera cuenta con 3 bancos de almacenamiento, en cada banco hay 3

canales, con la posibilidad de grabar y borrar hasta que este sea de su agrado.

Reproduce los 3 canales de cada banco simultáneamente, todos sincronizados

por medio de un B.p.m interno. Los canales podrán ser activados y desactivados

con el pie por medio de pulsadores.

Grabación en tiempo real. Para activar la grabación se deberá activar el pulsador

del canal, este se podrá hacer en cualquier tiempo del compás, la grabación

finaliza al pulsar nuevamente el canal, el loop será el audio determinado por estas

dos pulsaciones. este grabará el número de compases deseados.

Este tiene la posibilidad de borrar el último loop grabado o toda la información del

banco si no es de nuestro agrado.

Cuenta con ritmos de percusión en la memoria, La posibilidad de acceder a

diferentes ritmos como Rock, Pop, Hip Hop, Jazz Salsa y Regueton, en diferentes

compases y tiempos. Estos ritmos no podrán ser modificables en tiempo.

Este también tiene la posibilidad de cargar archivos de audio para ser

reproducidos, desde cualquier directorio, contara con puerto USB para realizar

copias de seguridad de datos/audio, importación/exportación de loops como

archivos wav, wma, mp3, ogg, entre otros.

70

Page 71: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Gráfica 26 . Diseño parte frontal realizado en sketchup

Fuente Propia

Parte frontal

1. Channel 1: Este pulsador permite en modo grabación grabar y reproducir

inmediatamente el audio en forma de loop. En modo reproducción permite

reproducir y detener el loop de este canal.

2. Channel 2: Este pulsador permite en modo grabación grabar y reproducir

inmediatamente el audio en forma de loop. En modo reproducción permite

reproducir y detener el loop de este canal.

3. Channel 3: Este pulsador permite en modo grabación, grabar y reproducir

inmediatamente el audio en forma de loop. En modo reproducción permite

reproducir y detener el loop de este canal.

4. Start: Este pulsador activa y desactiva el programa.

5. Clear: Este pulsador en modo grabación permite borrar el ultimo audio

grabado, en modo reproducción permite borrar el banco seleccionado.

6. Mute: Activa y desactiva el mute del metrónomo, si deseas apagar el BPM

debes presionar el Botón (MUTE) o (F10) en teclado.

7. Bank: selecciona entre los bancos 1,2 y 3. Si deseas cambiar de banco

estos pueden ser modificados con los botones (UP/DOWN) BANK o (1,2 y

3) en teclado.

8. Mode: Permite escoger entre el Modo grabación y el modo reproducción.

71

Page 72: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

9. Bpm: Si desea cambiar el BPM este puede ser accedido fácilmente por el

switch BPM o los botones (UP/DOWN)BPM, (Arriba/Abajo) en el teclado.

10. RHYTHMS: Si deseas cambiar los ritmos, estos pueden ser accedidos de

forma rápida pulsando este switch o haciendo click en los botones

(LEFT/RIGHT)RHYTHMS o (izquierda/derecha) en teclado.

Gráfica 27. Parte Trasera, realizado en sketchup

Fuente Propia

Parte Trasera

1. On/Off: Activa y corta el flujo de corriente a la Beagle Board.

2. LED: Indica si este esta encendido o apagado

1. AC IN: Permite conectar un adaptador de 5V 1A

2. MIC IN: Entrada de micrófono, la entrada de instrumento debe realizarse

por medio de una caja directa.

3. LINK: Esta es una salida con una copia de la señal de entrada.

4. OUT ST: Salida estéreo de loop , metrónomo y ritmos

5. USB PORT 1: Puerto USB para adaptar teclado o memoria.

6. USB PORT 2: Puerto USB para adaptar mouse o memoria.

7. HDMI: Puerto de conexión pantalla LCD.

72

Page 73: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

6. ANÁLISIS DE RESULTADOS

Los resultados del software desarrollado y ejecutado en el procesador del

computador están por encima de los objetivos planteados en el proyecto, este es

capaz de grabar y reproducir en tiempo real 3 audios simultáneamente en perfecta

sincronización con un sample del banco de audios predeterminados.

Posteriormente se creó la opción de almacenar estos 3 audios en un banco y

luego se crearon 2 bancos más con 3 canales cada uno, el reloj de sincronización

de los audios BPM funciona de manera constante reproduciendo los audios click

seleccionados para este metrónomo, también puede cargar los 20 audios del

banco de baterías, sin presentar problemas de retraso de señal en la grabación de

los audios.

A continuación se observa una gráfica generada con la función htop en el terminal

del PC, este muestra el porcentaje de la carga procesal y consumo de memoria

RAM del software reproduciendo simultáneamente 1 sample del banco de ritmos,

3 audios grabados de 1 compás de duración y las aplicaciones que se ejecutan en

paralelo.

Gráfica 28. Visualización de Procesamiento en el PC

Fuente Propia

73

Page 74: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Gráfica 29. Visualización de Procesamiento en el PC 10 min Después.

Fuente Propia.

Se puedo constatar durante un periodo de 10 minutos que el que el consumo de

CPU del computador estuvo entre el 10% y el 20%, generalmente este se mantuvo

por debajo del 15% en el uso de sus procesadores, se notó que el porcentaje de

memoria RAM usada por el software inicio en 0.5%, siendo la carga total del

sistema de 700 MB, pasado 10 minutos de ejecución la cantidad de memoria RAM

usada por el software fue de 2.5 % aumentando la carga total del PC a 854 MB.

Este aumento de memoria no presentó problemas para la reproducción simultánea

y continua de los audios, Cabe resaltar que el computador cuenta con cuenta con

8 GB de memoria RAM y un procesador de audio dedicado para los procesos

grabación y reproducción de audio.

Las características de la tarjeta de sonido permite la grabación de señal de línea,

es decir puedo grabar directamente un instrumento como guitarra, bajo o piano.

También me permite la grabación microfónica utilizando un micrófono tipo electrect

Genius MIC-01A , patrón omnidireccional.

74

Page 75: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Al correr el ejecutable compilado en la BeagleBoard, se observaron varios

problemas. Uno de estos es que después de cierto tiempo de operación la tarjeta

se recalentó demasiado. Por esta razón se decide no introducir la placa dentro del

dispositivo para evitar daños por recalentamiento.

También hubo problemas en la reproducción de los sample del click usados para

el metrónomo, estos tenían mucho retraso en la reproducción de audio, haciendo

muy difícil poder seguir el tiempo o ritmo del compás.

Se procede a quitar los samples clicks del metrónomo y sin embargo sigue

presentando problemas de retraso el contador principal, este no generó un tiempo

constante, imposibilitando los procesos de reproducción simultanea de todos los

audios.

También se observó que cada audio que se carga en el programa es una

aplicación, es decir, los 20 audios cargados por el software, son 20 aplicaciones

del programa que se abren simultáneamente, Por esta razón se realizaron

modificaciones en el software para que solo cargara el audio que se va a

reproducir.

Con el propósito de darle más capacidad de procesamiento al programa se

prosigue a desinstalar aplicaciones y procesos que estén ejecutándose paralelo al

programa. Esto se hace por medio del siguiente código:

> ps -A

> Kill -9 (PID)

También se intentó quitar la interfaz gráfica, pero no fue posible ya que Qt utiliza el

X11, protocolo encargado de la interfaz gráfica en los sistemas Unix.

Debido a esto decide instalar LXDE una interfaz gráfica mucho más ligera.

> sudo apt-get install lxde

75

Page 76: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Al eliminar los procesos paralelos e instalar una interfaz gráfica más ligera no se

observó mejora alguna en la reproducción del Samples. El procesador de la

BeagleBoard se sobresaturó al reproducir un Sample de Batería y un audio

grabado trabajando continuamente en el contador (Metrónomo).

En las Gráficas siguientes se observa la carga en procesamiento de la CPU y

memoria de la Beagle Board a través de la aplicación Monitor del Sistema.

Gráfica 30. Visualización de Procesamiento en la BeagleBoard

Fuente Propia.

Debido a que las necesidades básicas de grabación y reproducción no pudieron

ser implementadas con la BeagleBoard, se adquiere el S.E WandBoard, Esta

tarjeta tiene un disipador de calor en la placa base, la cual la protege de

recalentamiento. Sin embargo, no se instalará la tarjeta dentro del chasis para

evitar algún posible daño. El chasis queda funcionando solo como superficie de

control y se conecta a la tarjeta por el puerto USB OTG de la Wandboard. Las

conexiones de Audio, el suministro de corriente y salida de vídeo también se hace

directamente en la tarjeta.

76

Page 77: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Al correr el programa en la placa Wandboard las mejoras fueron notables. El reloj

central BPM ya reproduce los 2 audios clicks del metrónomo. A pesar de que el

tamaño promedio de cada audio es de 3.5 Kb , se observó que hubo un pequeño

retardo durante esta reproducción. Esto se debe a que el software debe cargar

constantemente estos 2 audios almacenados en la tarjeta Micro SD, la cual hacen

la ejecución de este proceso muy pesado. Por esta razón se eliminan estos audios

disminuyendo la carga en procesamiento del software. Es posible la visualización

del metrónomo por medio de los displays implementados en la interfaz gráfica.

A continuación se muestra por medio de la función htop el consumo de CPU y

memoria del S.E reproduciendo simultáneamente 3 audios grabados y un sample

del banco de baterías.

Gráfica 31. Procesamiento en la WandBoard reproduciendo con 4 Audios

Se Observa que el software está consumiendo entre un 40 y 50% los recursos del

procesador de la CPU, el consumo de memoria RAM total inicio en 298 MB y

pasado 10 minutos este aumento a 300 MB.

77

Page 78: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

En un lapso de tiempo de 10 minutos la reproducción de los sample rítmicos se

mantuvo en sincronía con el BPM un 80% del tiempo, estos presentaron retrasos

menores en la reproducción, la cual provoca que al audio sobrepase el primer bit

de inicio de reproducción y entre nuevamente en el primer bit del compás

siguiente, la programación desarrollada en el software permite que el audio se

acople en el siguiente compás.

Con respecto al proceso de grabación, la tarjeta permite grabar los 3 audios en

cada banco de almacenamiento pero no los reproduce constantemente, también

se notó que en este proceso aumenta considerablemente la memoria RAM del

Software.

Con el propósito de mejorar el proceso de grabación se procede a bajar la

resolución de captura de los audios, es decir se disminuye el Sample Rate de 44.1

KHz a 8KHz y se disminuye el bit rate de 16 a 8, también se modifica la cantidad

de canales de grabación, de estero (2 Canales) a monofónico (1 Canal).

En la Gráfica 35 observamos que existe una notable disminución en la carga

procesal de la CPU del sistema cuando hacemos los audios más livianos, El

software consumió aprox. un 10% menos de CPU.

Gráfica 32. Procesamiento en la WandBoard Audios Más livianos

78

Page 79: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Se pudo verificar por medio de la ventana de Application Output de Qt creator que

los audios del banco de baterías predeterminados solo son cargados por el

software la primera vez que son reproducidos y extraídos del directorio de

almacenamiento.

Los audios grabados en los canales son cargados cada vez que se reproducen,

debido a este modo de operación del programa, se tuvo en cuenta es la velocidad

de transferencia de los dispositivos de almacenamiento. Para la instalación del

Sistema operativo se utilizó una tarjeta micro SD HC I de 16 GB, clase 10,

Scandisk ultra. La velocidad de transferencia teórica de esta tarjeta es de 30MB/s.

10 veces mayor a la velocidad de transferencia de una micro sd clase 4. Para

mejorar los procesos de lectura y escritura de los archivos de audio y con el

propósito de disminuir latencias en la reproducción simultanea de estos, se opta

por almacenar estos archivos en una memoria USB 2.0 ya que esta ofrece una

velocidad teórica hasta 60MB/s, el doble de la tarjeta micro SD clase 10.

A continuación observamos el consumo de recursos del sistema una vez realizada

la modificación en el software permitiendo almacenar en una memoria externa.

Gráfica 33. Procesamiento en la WandBoard con USB 2.0

79

Page 80: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Se Observa que el porcentaje de procesamiento por parte del CPU disminuyó un

5%, sin embargo sigue presentando problemas de retraso en la grabación de

audios.

En este punto los procesos de reproducción de los samples predeterminados han

mejorado notoriamente, al reproducir solo una batería con un audio grabado

observamos que el porcentaje de carga la CPU disminuye hasta un 12% aprox.

Gráfica 34. Procesamiento en la WandBoard 2 Audios

Ahora el audio sample se reproduce perfectamente en sincronización con el BPM

central y el audio grabado.

Con el propósito de consumir la menor cantidad de recursos del sistema se instala

la interfaz gráfica ligera LXDE, por medio de la función htop se observó que la

interfaz gráfica Unity aumenta el consumo de procesamiento del sistema

aproximadamente un rango entre 5 y 7% de la carga total de la CPU.

En la Gráfica 37 observa la interfaz gráfica el software ejecutado en la

WandBoard, con las modificaciones de parámetros y funciones para su mejor

procesamiento.

80

Page 81: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Gráfica 35. Interfaz Gráfica software en la WandBoard

Fuente propia

Finalmente se configuró el sistema para que abriera el software sin necesidad de

usar periféricos como mouse o teclado, en Ubuntu 12,04 Buscamos en Inicio,

aplicaciones de Inicio, este muestra una ventana con los programas que se inician

automáticamente.

También puedes ejecutar en el terminal el siguiente código:

> gnome-session-properties

Añadimos el ejecutable y se reinicia el sistema para comprobar la configuración.

81

Page 82: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

7. CONCLUSIONES

Debido a las características que posee el procesador de la BeagleBoard Xm no

fue posible la implementación del metrónomo programado en Qt creator en este

sistema, por esta razón, tampoco se pudo reproducir los audios samples del banco

de baterías en forma continua.

La implementación del sistema embebidos WandBoard en proyectos de

procesamiento de audio es una opción fiable, estos permiten la captura,

almacenamiento y reproducción de señales de audio provenientes de instrumentos

musicales electrónicos, sin embargo este proceso funcionando en tiempo real se

ve afectado por los recursos de procesamiento que ofrece el sistema y la

velocidad de transferencia de datos de los dispositivos de almacenamiento.

Este trabajo presenta el diseño y construcción de un dispositivo para la

retroalimentación de señales de audio implementando un sistema embebido, el

cual funciona como una herramienta de grabación y reproducción de audio en

tiempo real, este sistema permite el almacenamiento de señales de audio

provenientes de instrumentos musicales para ser manipuladas por el usuario y

reproducir de forma cíclica, las señales almacenadas en el sistema, creando de

esta manera ‘loops’, también puede cargar archivos de audio preestablecidos, este

dispositivo le permite a un músico poder ensayar un solo instrumental en una base

armónica generada por el mismo.

La portabilidad de hardware y software posicionan a los sistemas embebidos como

una herramienta de desarrollo eficiente, los sistemas operativos GNU/Linux se

encuentran en la capacidad de brindar las herramientas suficientes para el

desarrollo de nuevas tecnologías dentro de los Sistemas Embebidos aplicados a la

Ingeniería de Sonido .

82

Page 83: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

8. RECOMENDACIONES

Este dispositivo puede ser mejorado implementando la transferencia de datos a

través del puerto SATA, hubo mejoras notables al cambiar el tipo de

almacenamiento de la micro SD a la memoria USB, Implementar el uso de un

disco duro con transferencia de datos SATA mejoraría la velocidad de

transferencia y bajaría la latencia de reproducción.

Se recomienda utilizar un lenguaje de programación más ligero que no necesite la

previa instalación de un sistema operativo con interfaz gráfica para poder ser

desarrollado, el procesamiento de vídeo en el S.O consume muchos recursos de

memoria y CPU las cuales podrían ser mejor aprovechados por el programa . Este

proyecto puede ser mejorado implementando el lenguaje de programación phyton,

este lenguaje también esta basado en C++, y permite desarrollar aplicaciones de

audio y video, con y sin interfaz gráfica.

83

Page 84: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Bibliografía.

[1] Kumar, S. (2003). Review of Smart Acoustic Volume controllers for consumer

electronics. AES-E Library, 5917.

[2] Kumar, S. (2003) Acoustic personalization of mobile phones. AES-E Library,

5837.

[3] Barlett, Greg. (1994). Embedded Controller for audio devices. AES-E Library,

13-020.

[4] Petrovic, T., & Samardžija, D. (2009.) Digital Sound Projector Implementation

and Verification within DTV Embedded System. IEEE CS Digital library, pp.152-

153.

[5] Iwanaga, N.; Kobayashi, W.; Furuya, K.; Sakamoto, N.; Onoye, T.; Shirakawa, I.

(2002). Embedded implementation of acoustic field enhancement for stereo

headphones. IEEE Xplorer Digital library,(1) 51-54.

[6] Matsumura, T.; Iwanaga, N.; Onoye, T., Kobayashi, W.; Shirakawa, I.;

Arungsrisangchai, I.(2005). 3D sound movement system for embedded

applications, IEEE Xplorer Digital library,(5) 5345-5348.

[7] Kwok-Tung Lo,; & Haijun Lei. (2008). Optimization of AVS Audio Decoder

Implemented on RISC Core. IEEE Xplorer Digital library,(53) 1204 -1210.

[8] Briere, S.; Valin, J.-M.; Michaud, F.; Letourneau, D. (2008)Embedded auditory

system for small mobile robots. IEEE Xplorer Digital library, 3463-3468.

[9] Yongqiang Zhang.; & Bing Zhang. (2007) Design of Embedded Audio and Video

Compression System. IEEE Xplorer Digital library,(53) 116 -119.

[10] Xu Lijun; Gao Guohong; Li Xueyong; Qu Peixin. (2010).Video collection

system based on embedded system and USB communication. IEEE Xplorer Digital

library, 112-114.

[11] Viedma Ponce, Ramón.(2010). Programación de un sistema embedded

multimedia. Escuela técnica superior de Ingeniería de telecomunicaciones de

Barcelona.

[12] Castro Murillo Jorge. (2011). Diseño de un prototipo embebido para la gestión

84

Page 85: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

del padrón electrónico del T.S.E.; Instituto tecnológico de Costa Rica.

[13] Camargo Barreño, Carlos Iván. "Transferencia tecnológica y de conocimientos

en el diseño de sistemas embebidos". Universidad Nacional de Colombia. Bogotá,

Colombia. 2011

[14] Rosas Jiménez, Nelson Felipe. Diseño E Implementación De Un Sistema

Embebido Para La Adquisición Y Transmisión De Señales Biomédicas A Través

De La Red Celular. Universidad Nacional De Colombia. Bogotá, Colombia. 2011

[15] Caballero Paz, Andrés.(2012). Desarrollo de un controlador midi no

convencional, implementado en un sistema embebido, utilizando el Kinect.

Universidad de San Buenaventura, Bogotá, Colombia.

[16] “Dopa”, Conexiones balanceadas y no balanceadas, [En Linea], 2000, 26 de

mayo de 2013,8:00 a.m; Disponible en la web:

http://www.doctorproaudio.com/doctor/temas/balanceado.htm

[17] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 26 de mayo del 2013, 8:00

a.m; Disponible en Web: http://es.wikipedia.org/wiki/Línea_balanceada_de_audio

[18] “D.A.S”, [En línea], 2012, 19 de Octubre de 2013,11:00 p.m.; Disponible en la

Web: http://www.dasaudio.com/soporte/faq/electronica-de-audio/que-es-una-linea-

balanceada/

[19] “Tipo de conexiones Multimedia”, [En Linea], 2000, 26 de mayo de 2013, 8:00

a.m; Disponible en la web:

http://recursostic.educacion.es/observatorio/web/es/equipamiento-

tecnologico/hardware/1002-tipos-de-conexiones-multimedia

[20] “Manual para radialistas analfatecnicos”, [En Linea], 2000, 9 de mayo de

2013,1:00 p.m.; Disponible en la web: http://www.analfatecnicos.net/pregunta.php?

id=33

[21] “Dopa”, Conexiones balanceadas y no balanceadas, [En Linea], 2000, 26 de

mayo de 2013, Disponible en la web: http://www.doctorproaudio.com/content.php?

148-cables-y-puenteo-paralelos

[22] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 26 de mayo del 2013, 8:00

a.m; Disponible en Web: http

85

Page 86: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

[23] “Universal Series Bus”, [En línea], 2008, 27 de mayo del 2013, 9:00 p.m.;

Disponible en Web: http://www.siliconimaging.com/universal_serial_bus.htm

[24] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 27 de mayo del 2013, 9:00

p.m.; Disponible en Web: http://es.wikipedia.org/wiki/Tasa_de_bits

[25] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 27 de mayo del 2013, 9:00

p.m.; Disponible en Web: http://es.wikipedia.org/wiki/Serial_ATA

[26] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 27 de mayo del 2013, 9:00

p.m.; Disponible en Web: http://es.wikipedia.org/wiki/Digital_Visual_Interface

[27] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 27 de mayo del 2013, 9:00

p.m.; Disponible en Web: http://es.wikipedia.org/wiki/High-

Definition_Multimedia_Interface

[28] “Home Theather Review.com”, [En Linea], 2000, 28 de mayo de 2013, 9:00

p.m.; Disponible en la web: http://hometheaterreview.com/high-definition-

multimedia-interface-hdmi/

[29] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 28 de mayo del 2013, 9:00

p.m.; Disponible en Web:http://es.wikipedia.org/wiki/Conversi%C3%B3n_anal

%C3%B3gica-digital

[30]Sergi Jordà Puig. (1997). Audio digital y MIDI. Madrid: Guías Monográficas

Anaya Multimedia. <http://es.scribd.com/doc/140416530/Sergi-Jorda-Puig-Audio-

Digital-y-MIDI-1997-243p>

[31] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 29 de mayo del 2013, 8:00

p.m;Disponible en Web: http://es.wikipedia.org/wiki/Frecuencia_de_muestreo

[32] “El rincón de Linux”, Sobre Linux, [En Linea],1998, 29 de mayo de 2013, 8:00

p.m.; Disponible en la web: http://www.linux-es.org/sobre_linux

[33] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 29 de mayo del 2013,

Disponible en Web: http://es.wikipedia.org/wiki/GNU/Linux

[34] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 29 de mayo del 2013,

Disponible en Web: http://es.wikipedia.org/wiki/Ubuntu

[35] “LXDE org”, [En Linea], 29 de mayo del 2013, 9:00 p.m.; Disponible en Web:

http://lxde.org/es/lxde

86

Page 87: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

[36] “Wikipedia la Enciclopedia Libre”, [En línea], 2008, 29 de mayo del 2013, 9:00

p.m.; Disponible en Web: http://es.wikipedia.org/wiki/Qt_%28biblioteca%29

[37] “Procesamiento Audiovisual 3º II/ITIS”, Sesión 1: Programación Visual con Qt

Creator, [En Linea],29 de mayo del 2013, 9:00 p.m.; Disponible en Web:

http://dis.um.es/~ginesgm/files/doc/pav/guion1.pdf

[38]“Wikipedia la Enciclopedia Libre”, [En línea], 2008, 29 de mayo del 2013, 9:00

p.m.; Disponible en Web: http://es.wikipedia.org/wiki/Compilador

[39] BeagleBoard –xM Rev C System Reference Manual,[En Linea], Abril 4 de

2010, 29 de mayo del 2013, 10:00 p.m.; Disponible en Web:

http://beagleboard.org/static/BBxMSRM_latest.pdf

[40]”Wandboard.org”,[En Linea],2012, 30 de Mayo de 2013, 10:00 p.m.; Disponible

en la Web: http://www.wandboard.org

[41] “Instalar Ubuntu 12.10 junto a windows 7”,[En Linea],2013, 30 de Mayo de

2012, 10:00 p.m.; Disponible en la Web: http://www.freetux.com.ar/instalar-ubuntu-

12-10-junto-a-windows-7/

[42]”Como Instalar Linux”,[En Linea],2013, 30 de Mayo de 2012, Disponible en la

Web: http://www.comoinstalarlinux.com/como-instalar-ubuntu-12-10/

[43]”[Tutorial] Como instalar Ubuntu 12.10”,[En Linea],2013, 26 de Mayo de 2012,

10:00 p.m.; Disponible en la web:

http://www.taringa.net/posts/linux/15786709/Tutorial-Como-instalar-Ubuntu-12-

10.html

[44]”Ubuntu.com”,[En Linea], 30 de Mayo de 2013, 10:00 p.m.; Disponible en la

Web: http://http://www.ubuntu.com/download/desktop

[45]”Wikipedia la Enciclopedia Libre”,[En Linea],2012, 26 de Mayo de 2013,

Disponible en la Web: http://es.wikipedia.org/wiki/Compas

[46] P Raghavan, Amol Lad, and Sriram Neelakandan. Embedded Linux System

Desing and Development. Auerbach Publications, 2005.

[47]”Wikipedia la Enciclopedia Libre”,[En Linea],2012, 30 de Mayo de 2013, 10:00

p.m.; Disponible en la Web: http://es.wikipedia.org/wiki/USB_On-The-Go

87

Page 88: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

GLOSARIO Y ABREVIATURAS

S.E.: Sistema Embebido

S.O.: Sistema Operativo.

S.O.E.: Sistema Operativo Embebido.

P.C: Computador personal.

HW: Hardware.

SW: Software.

INPUT: Entrada de Audio.

OUTPUT: Salida de Audio.

RAM: Random-access memory.

ROM: Read-Only Memory

ARM: Advanced RISC Machines.

LAN: Local Area Network o Redes de Area Local.

Ethernet: Red LAN de mayor utilización a nivel mundial.

TERMINAL: Es una forma de acceder al sistema sin utilizar la interfaz gráfica.

COMPILACIÓN: Proceso de traducción de un código a datos que puedan ser

ejecutados por una computadora.

CROSS COMPILACIÓN: Proceso de traducción de un código de datos de un

sistema a otro.

COMANDOS SHELL: Sistemas de comandos utilizados por el sistema UNIX que

permite administrar el sistema sin entorno gráfico.

KERNEL o Núcleo: Es el encargado de conectar el hardware con el software y

gestionar los recursos de manera adecuada.

ROOT FILE SYSTEM (RFS): Es el conjunto de archivos fundamentales para

ejecutar un sistema operativo.

OMAP: Procesador multinúcleo ARM desarrollado para diferentes aplicaciones

embebidas, fabricado por Texas Instruments.

HDMI (High-Definition Multimedia Interface): Conector de audio y vídeo digital

cifrado sin compresión de alta definición.

88

Page 89: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

SAMPLE o Muestra: Sección de audio de corta duración.

LOOP ó Bucle: Repetición continua de un sample.

SAMPLE RATE: Frecuencia de Muestreo. [29][30][31]

BIT RATE: Rango Dinámico.[29][30][31]

89

Page 90: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

ANEXOS

A.1 Código de LoopStation.pro

#-------------------------------------------------

## Project created by QtCreator 2013-04-24T10:21:36##-------------------------------------------------QT += core guiTARGET = LoopStationTEMPLATE = appSOURCES += main.cpp\ loopstation.cppHEADERS += loopstation.hFORMS += loopstation.ui

CONFIG += mobilityMOBILITY = multimedia

RESOURCES +=

A.2 Código de loopstation.h

#ifndef LOOPSTATION_H

#define LOOPSTATION_H

#include <QtCore/qurl.h>#include <QtGui/qmainwindow.h>#include <QMainWindow>#include <QtCore>#include <QtGui>#include <QTimer>#include <QtMultimediaKit/qmediarecorder.h>#include <QtMultimediaKit/qmediaplayer.h>#include <QtMultimediaKit/qaudiocapturesource.h>#include <QtMultimediaKit/QAudioFormat>

class QTimer;class QAudioRecorder;class QAudioCaptureSource;

namespace Ui {class LoopStation;}

class LoopStation : public QMainWindow{

90

Page 91: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Q_OBJECT

public: explicit LoopStation(QWidget *parent = 0); ~LoopStation();

private slots:

//Slots del Metronomo void on_Bpm_clicked(); void on_mute_clicked(); void Contador(); void on_up_clicked(); void on_down_clicked();

//Slots de Grabacion void on_rec1_clicked(); void on_rec2_clicked(); void on_rec3_clicked();

//Slots de de borrar void on_Clear1_clicked();

//Slots del Loop de Baterias

void on_loopup_clicked(); void on_loopdown_clicked(); void on_checkBoxMode_clicked();//Slots de bancos de memoria

private:

Ui::LoopStation *ui; //QLCDNumber *timeLcd; QTimer *timer;

QAudioCaptureSource* audioSource; QMediaRecorder* recorder;

QMediaPlayer *playerclick1; QMediaPlayer *playerclick2; QAudioEncoderSettings audioSettings;

QMediaPlayer *Music1; QMediaPlayer *pista1; QMediaPlayer *pista2; QMediaPlayer *pista3;

bool outputLocationSet;// Banco 1;Canal 1;Pista

91

Page 92: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

int rec1;

// Banco 1;Canal 2;Pista int rec2;

// Banco 1;Canal 3;Pista int rec3;

int g; int bpm; int t; int ti2; int r; int m; int mo; int mu; int tb; int l; int lu; int x; int b; int c1; int c2; int c3;

int p1;int g1;int g2;int g3;int q1;int q2;int q3;int cg1;int cg2;int cg3;int s1;int s2;int s3;

int pr;

};#endif // LOOPSTATION_H

92

Page 93: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.3 Código de main.cpp

#include <QApplication>

#include "loopstation.h"

int main(int argc, char *argv[]){ QApplication a(argc, argv); LoopStation w; w.show(); return a.exec();}

A.4 Gráfica de loopstation.ui

93

Page 94: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.5 Código del PushButton START / STOP BPM

//METRONOMO

/* este es el corazon del programa, es un relog contador (timer), lo tego ajustado al bpm 100 por defecto, pero este puedeser modificable cuando quieres grabar ritmos de acompañamiemnto*/

void LoopStation::on_Bpm_clicked(){ if(tb==0) //la primera vez tb=0y cuando pulso este boton arranca el contador BPM {

// playerclick1->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00Click1.wav")); playerclick1->play(); connect(timer,SIGNAL(timeout()),this,SLOT (Contador())); timer->start(60000/bpm); ti2=(30000/bpm); tb=1; // aqui hago la varible tb= 1 return;

} if(tb==1){// y cuando lo presionapor segunda vez desconecta el contador ui->loopdown->show(); ui->loopup->show(); t=1; timer->stop(); timer->disconnect(SIGNAL(timeout()),this,SLOT (Contador())); tb=0; }}

94

Page 95: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.6 Código del Slot Contador

void LoopStation::Contador() //Este es un Slot y se encarga de contar de de 1 a 4

repetidamente

{ playerclick1->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00Click1.wav")); playerclick2->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00Click2.wav")); // estos son los click del metronomo

if(r==0){if (ti2==30000/bpm)// Con sta variable le indico q cuando ti2 sea este valor pare la grabacion recorder->stop();}

if (t==4){ t=0;

if(m==1){playerclick1->setVolume(0);} // aqui le bajo el volumen al click if(m==0){playerclick1->setVolume(100);// aqui se lo subo playerclick1->play();}

// Audios de bateria p1, p2, p2,p4............................................................if(p1==1){Music1->setVolume(100); Music1->play();}if(p1==0){Music1->stop();}

//-------------ESTE ES EL GRABADOR----------------------------------- if(r==1) { recorder->record();} //Este me permite grabar a partir del 1er compas (tiempo fuerte) if(r==0) { recorder->stop();}// detiene la grabacion en el 1er compas

//-------------------------CANAL1-------------------------------

// Banco 1; Canal 1; Pistas if(rec1==1) pista1->play(); if (rec1==0)pista1->stop();

//---------------------CANAL2 ------------------------------------- // Banco 1; Canal 2; Pistas if(rec2==1) pista2->play(); if (rec2==0) pista2->stop();

//---------------------------------------------------CANAL3-------------------------------------------- // Banco 1; Canal 3; Pistas

95

Page 96: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

if(rec3==1) pista3->play(); if (rec3==0) pista3->stop();

}

//------------------------------------------------------------------------------------------------------//--------------ESTOS SON LOS OTROS 3 TIEMPOS--------------------------------------// Los tiempos solo reproducen click del metronomo if (t==1){ if(m==1){playerclick2->setVolume(0); } if(m==0){playerclick2->setVolume(100); playerclick2->play();} } if (t==2){ if(m==1){playerclick2->setVolume(0); } if(m==0){playerclick2->setVolume(100); playerclick2->play();} } if (t==3){ if(m==1){playerclick2->setVolume(0); } if(m==0){playerclick2->setVolume(100); playerclick2->play();} } t++; ui->lcdNumberNum->display(t);}

96

Page 97: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.7 Código para aumentar, disminuir o mutear el metrónomo

void LoopStation::on_up_clicked(){

bpm++; // con este push button puede aumetar el BPM t=1; ui->lcdNumberBPM->display(bpm); timer->start(60000/bpm);

if(bpm==251){ bpm=250; t=1; ui->lcdNumberBPM->display(bpm); timer->start(60000/bpm);}}void LoopStation::on_down_clicked(){

bpm--; // con este disminuyo el BPM t=1; ui->lcdNumberBPM->display(bpm); timer->start(60000/bpm); if(bpm==49){ bpm=50; t=1; ui->lcdNumberBPM->display(bpm); timer->start(60000/bpm);}}

//----- BOTON QUE MUTEA EL BPM

void LoopStation::on_mute_clicked(){ if(m==0){ playerclick1->setVolume(0); playerclick2->setVolume(0); m=1; qDebug("Apagado m= %d",m); return; } if (m==1){ playerclick1->setVolume(100); playerclick2->setVolume(100); m=0; qDebug("Encendido m= %d",m);

}}

97

Page 98: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.8 Código del Tap Tempo

void LoopStation::on_Tap_clicked()

{

if(tap==0){ timer->disconnect(SIGNAL(timeout()),this,SLOT (Contador())); connect(timer,SIGNAL(timeout()),this,SLOT (Contador2())); timer->start(1); tap=1;

qDebug("El ta es de vale %d",ta); qDebug("El tap es de vale %d",tap); return;}

if(tap==1){ tap=2; qDebug("El ta es de vale %d",ta); qDebug("El tap es de vale %d",tap); ta=0; return; }

if(tap==2){ tap=3;

qDebug("El ta es de vale %d",ta); qDebug("El tap es de vale %d",tap); ta=0; return; }

if(tap==3){ timer->stop(); timer->disconnect(SIGNAL(timeout()),this,SLOT (Contador2())); tap=0;

connect(timer,SIGNAL(timeout()),this,SLOT (Contador())); timer->start(ta);

qDebug("El ta es de vale %d",ta); qDebug("El tap es de vale %d",tap);

bpm=(60000/ta); ui->lcdNumberBPM->display(bpm); t=4; ta=0; return; }

}

98

Page 99: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.9 Código del Pushbutton Bankup

void LoopStation::on_Bankup_clicked()

{ b++;s1=0;s2=0;s3=0; ui->lcdNumberBank->display(b); ui->rec1->show(); ui->rec2->show(); ui->rec3->show();

if(b==4){b=1;ui->lcdNumberBank->display(b); rec311=0; rec321=0; rec331=0; rec111=1; rec121=1; rec131=1;

} if (b==2){ rec111=0; rec121=0; rec131=0; rec211=1; rec221=1; rec231=1;

} if (b==3){ rec211=0; rec221=0; rec231=0; rec311=1; rec321=1; rec331=1;

} }

A.10 Código para cambiar entre bancos directamente

void LoopStation::on_Banco1_clicked()

{ b=1;s1=1;s2=1;s3=1; ui->lcdNumberBank->display(b); rec111=1; rec121=1; rec131=1; rec211=0; rec221=0; rec231=0; rec311=0; rec321=0; rec331=0;

ui->rec1->show(); ui->rec2->show(); ui->rec3->show();}

void LoopStation::on_Banco2_clicked(){ b=2;s1=1;s2=1;s3=1; ui->lcdNumberBank->display(b); rec111=0; rec121=0; rec131=0; rec211=1; rec221=1; rec231=1; rec311=0; rec321=0; rec331=0;

99

Page 100: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

ui->rec1->show(); ui->rec2->show(); ui->rec3->show();}

void LoopStation::on_Banco3_clicked(){ b=3;s1=1;s2=1;s3=1; ui->lcdNumberBank->display(b); rec111=0; rec121=0; rec131=0; rec211=0; rec221=0; rec231=0; rec311=1; rec321=1; rec331=1;

ui->rec1->show(); ui->rec2->show(); ui->rec3->show();}

A.11 Código hacia arriba y hacia abajo en Playlist

void LoopStation::on_loopup_clicked()

//Este boton me permite ascender entre los ritmos predeterminados// es un contador q cada q vez q pulso sube al siguiente ritmo{ l++; ui->lcdNumberSound->display(l);

playerclick1->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00Click1.wav")); playerclick1->play();

if (l==1){ p1=1; // para cada uno de ellos defino el BPM y la variable ti2 ui->down->hide(); ui->up->hide(); ui->dialbpm->hide(); bpm= 75; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==2){ p1=0;p2=1; bpm= 82; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==3){p2=0;p3=1;

100

Page 101: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

bpm= 90; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==4){ p3=0;p4=1; bpm= 102; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==5){ p4=0;p5=1; bpm= 105; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==6){ p5=0;p6=1; bpm= 108; timer->start(60000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==7){ p6=0;p7=1; bpm= 110; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==8){ p7=0;p8=1; bpm= 60; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==9){ p8=0;p9=1; bpm= 66; timer->start(60000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==10){ p9=0; p10=1; bpm= 84; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

101

Page 102: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

if (l==11){ p10=0;p11=1; bpm= 84; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==12){ p11=0;p12=1; bpm= 98; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==13){p12=0;p13=1; bpm= 110; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==14){ p13=0;p14=1; bpm= 110; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==15){ p14=0;p15=1; bpm= 115; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==16){ p15=0;p16=1; bpm= 60; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==17){ p16=0;p17=1; bpm= 73; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==18){ p17=0;p18=1; bpm= 73; timer->start(60000/bpm);

102

Page 103: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==19){ p18=0;p19=1; bpm= 81; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==20){ p19=0; p20=1; bpm= 95; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);}

if (l==21){p20=1; bpm= 95; timer->start(60000/bpm); ti2=(30000/bpm); qDebug("El ti2 es de vale %d",ti2); ui->lcdNumberBPM->display(bpm);} if (l==21){ l=20;ui->lcdNumberSound->display(l);}

}

//-------------------------------------BOTON HACIA ABAJO PLAYLIST----------------------------------------------------void LoopStation::on_loopdown_clicked(){ //Este boton me permite descender entre los ritmos predeterminados // es un contador q cada q vez q pulso baja al siguiente ritmo l--; ui->lcdNumberSound->display(l); playerclick1->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00Click1.wav")); playerclick1->play(); if (l==-1){ l=0;ui->lcdNumberSound->display(l);}

if (l==0){ p1=0; ui->down->show(); ui->up->show(); ui->dialbpm->show(); bpm=100; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==1){ p2=0;p1=1; bpm= 75;

103

Page 104: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==2){ p3=0;p2=1; bpm= 82; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==3){p4=0;p3=1; bpm= 90; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==4){ p5=0;p4=1; bpm= 102; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==5){ p6=0;p5=1; bpm= 105; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==6){ p7=0;p6=1; bpm= 108; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==7){ p8=0;p7=1; bpm= 110; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==8){ p9=0;p8=1; bpm= 60; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==9){ p10=0;p9=1; bpm= 66; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

104

Page 105: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

if (l==10){ p11=0;p10=1; bpm= 84; timer->start(60000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==11){ p12=0;p11=1; bpm= 84; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==12){ p13=0;p12=1; bpm= 98; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==13){p14=0;p13=1; bpm= 110; timer->start(60000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==14){ p15=0;p14=1; bpm= 110; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==15){ p16=0;p15=1; bpm= 115; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==16){ p17=0;p16=1; bpm= 60; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==17){ p18=0;p17=1; bpm= 73; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==18){ p19=0;p18=1; bpm= 73; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

105

Page 106: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

if (l==19){ p20=0;p19=1; bpm= 81; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}

if (l==20){ /*p21=0*/ ;p20=1; bpm= 95; timer->start(60000/bpm); ti2=(30000/bpm); ui->lcdNumberBPM->display(bpm);}}

A.12 Codigo Usando la librería Phonon

void LoopStation::on_AddAudio_clicked(){

// Para poder hacer este descargue la libreria Phonon QString file = QFileDialog::getOpenFileName(this,"Chose Audio File",ui->label_2->text()); mediaObject= Phonon::createPlayer(Phonon::MusicCategory,Phonon::MediaSource(file)); mediaObject->play(); // Muestro el nombre del archivo en el label if(!file.isNull()) ui->label_2->setText(file + QString("/")); setFocus();

ui->label->setText("Reproduciendo loop"); e=1; a=1;}void LoopStation::on_Play_clicked(){ mediaObject->play(); a=1;//reproduce // Muestro el mensaje en el label if (e==1){ ui->label->setText("Reproduciendo loop");} if (e==0){ ui->label->setText("Loop Eliminado debes cargar otro audio");}}void LoopStation::on_Stop_clicked(){ mediaObject-> stop(); a=0;// Stop if (e==1) { ui->label->setText("Loop Detenido"); } if (e==0) {ui->label->setText("Loop Eliminado debes cargar otro audio"); }}void LoopStation::on_Pause_clicked(){ mediaObject-> pause(); if (e==1) { ui->label->setText("Loop en pausa");} if (e==0) { ui->label->setText("Loop Eliminado debes cargar otro audio"); }

106

Page 107: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

}void LoopStation::on_Clear_clicked(){ mediaObject->clear(); ui->label->setText("Loop Eliminado debes cargar otro audio"); e=0;}

A.13 Código para el canal de grabación

void LoopStation::on_rec1_clicked(){ c1=1;c2=0;c3=0;

if(mo==0){ //cuando m=0 , esta en modo grabacion if(g1==0){ // la primera vez cuando g1=0 comienza la grabacion ui->label_5->setText("Chanel 1 ***RECORDING***"); QAudioEncoderSettings audioSettings; audioSettings.setCodec("audio/PCM"); audioSettings.setSampleRate(44100); audioSettings.setBitRate(16); audioSettings.setQuality(QtMultimediaKit::VeryHighQuality); recorder->setEncodingSettings(audioSettings); // dependiendo del banco me almacena con nombres diferentes if(b==1)recorder->setOutputLocation(QUrl("/home/erick/Audios/1A-1C-1B.wav")); if(b==2)recorder->setOutputLocation(QUrl("/home/erick/Audios/1A-1C-2B.wav")); if(b==3)recorder->setOutputLocation(QUrl("/home/erick/Audios/1A-1C-3B.wav")); r=1; //recorder->record(); g1=1; return; } if (g1==1) //cuando g1=1 le digo q reproduzca el audio { // Con esta vaiable puedo saber si use este canal r=0; //recorder->stop(); ui->label_5->setText("Channel 1 ***PLAYING*** "); ui->rec1->hide();// escondo este boton para q si la persona lo hunde por error no exista conflicto if(b==1){pista111->setMedia(QUrl::fromLocalFile("/home/erick/Audios/1A-1C-1B.wav")); rec111=1; g1=0; return;} if(b==2){pista211->setMedia(QUrl::fromLocalFile("/home/erick/Audios/1A-1C-2B.wav")); rec211=1; g1=0; return;} if(b==3){pista311->setMedia(QUrl::fromLocalFile("/home/erick/Audios/1A-1C-3B.wav")); rec311=1; g1=0; return;} }} if (mo==1){ //MODO REPRODUCCION if (s1==1) { // cuando s1=1 reproduce if(b==1){ ui->label_5->setText("Channel 1 -*- Bank 1

107

Page 108: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

***PLAYING*** "); rec111=1; s1=0;return;} if(b==2){ ui->label_5->setText("Channel 1 -*- Bank 2 ***PLAYING*** "); rec211=1; s1=0;return;} if(b==3){ ui->label_5->setText("Channel 1 -*- Bank 3 ***PLAYING*** "); rec311=1; s1=0;return;} } if(s1==0){ // cuando s1=0 para el audio if(b==1){ ui->label_5->setText("Channel 1 -*- Bank 1 ***IN STOP *** "); rec111=0; s1=1;return;} if(b==2){ ui->label_5->setText("Channel 1 -*- Bank 2 ***IN STOP *** "); rec211=0; s1=1;return;} if(b==3){ ui->label_5->setText("Channel 1 -*- Bank 3 ***IN STOP *** "); rec311=0; s1=1;return;} } }}

A.14 Codigo PushButton Mode

//-----CHECHBOX MODE

// este boton me permite escoger entre modo grabación el cual me permite grabr y reproducir// y el modo reproducción q me permite detener y reproducir pistas por independiente en cada banco

void LoopStation::on_checkBoxMode_clicked(){if(mo==1){ ui->label_5->setText(" ***MODE RECORDING*** "); mo=0; return;}if(mo==0){ ui->label_5->setText(" ***MODE PLAYING*** "); ui->rec1->show(); ui->rec2->show(); ui->rec3->show(); mo=1;s1=0;s2=0;s3=0;}}

108

Page 109: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.15 Codigo PushButton Clear

void LoopStation::on_Clear1_clicked()// la opcion eliminar audio de la carpeta no existe dentro de esta libreria// por eso decidí cargar un audio en blanco para q lo reprodujera{

if(mo==0){ //cuando m=0 , esta en modo grabacion

if(b==1&&c1==1){ ui->label_5->setText("1 Track -*- 1 Channel -*- 1 Bank +++CLEAR LOOP+++"); pista111->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec111=0; ui->rec1->show();return;} if(b==2&&c1==1){ ui->label_5->setText("1 Track -*- 1 Channel -*- 2 Bank +++CLEAR LOOP+++"); pista211->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec211=0; ui->rec1->show();return;} if(b==3&&c1==1){ ui->label_5->setText("1 Track -*- 1 Channel -*- 3 Bank +++CLEAR LOOP+++"); pista311->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec311=0; ui->rec1->show();return;}

if(b==1&&c2==1){ ui->label_5->setText(" Track -*- 2 Channel -*- 1 Bank +++CLEAR LOOP+++"); pista121->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec121=0; ui->rec2->show();return;} if(b==2&&c2==1){ ui->label_5->setText(" Track -*- 2 Channel -*- 2 Bank +++CLEAR LOOP+++"); rec221=0;ui->rec2->show();return;} pista221->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); if(b==3&&c2==1){ ui->label_5->setText(" Track -*- 2 Channel -*- 3 Bank +++CLEAR LOOP+++"); pista321->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec321=0;ui->rec2->show();return;}

if(b==1&&c3==1){ ui->label_5->setText(" Track -*- 3 Channel -*- 1 Bank +++CLEAR LOOP+++"); pista131->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec131=0;ui->rec3->show();return;} if(b==2&&c3==1){ ui->label_5->setText(" Track -*- 3 Channel -*- 2 Bank +++CLEAR LOOP+++"); rec231=0;ui->rec3->show();return;} pista231->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); if(b==3&&c3==1){ ui->label_5->setText(" Track -*- 3 Channel -*- 3

109

Page 110: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Bank +++CLEAR LOOP+++"); pista331->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec331=0;ui->rec3->show();return;}}

if (mo==1){ //MODO REPRODUCCION if(b==1){ ui->label_5->setText("+++CLEAR BANK 1+++"); pista111->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec111=0; ui->rec1->show(); pista121->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec121=0; ui->rec2->show(); pista131->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec131=0; ui->rec3->show();return;}

if(b==2){ ui->label_5->setText("+++CLEAR BANK 2+++"); pista211->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec211=0; ui->rec1->show(); pista221->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec221=0; ui->rec2->show(); pista231->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec231=0;ui->rec3->show();return;}

if(b==3){ ui->label_5->setText("+++CLEAR BANK 3+++"); pista311->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec311=0; ui->rec1->show();

pista321->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec321=0; ui->rec2->show();

pista331->setMedia(QUrl::fromLocalFile("/home/erick/Loops/00AudioFile.wav")); rec331=0; ui->rec3->show();return;}

}}

110

Page 111: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.16 INSTALACION DE UBUNTU EN EL PC

Este proceso se llevo a cabo con diferentes guías de instalación encontradas en

internet. [41][42][43][44].

La imagen iso fue descargada desde el siguiente enlace en la pagina oficial de

Ubuntu :

• http://www.ubuntu.com/download/desktop

Luego de haber instalado la imagen lo primero que se hizo fue actualizar el

sistema, esto se hizo desde la terminal ingresando las siguientes lineas de código:

> sudo apt-get update && sudo apt-get upgrade

También se Instaló ubuntu-restricted-extras, este es un paquete que incluye todo

el software que por razones de patentes y conflictos con la legislación de ciertos

países, Canonical, la empresa madre de Ubuntu, no puede incluir por defecto en la

distribución.

Este contiene el codec multimedia Gstreamer la cual brinda brinda soporte para

Audio y vídeo en diferentes formatos, decodificadores de MP3, también se

encuentra en este paquete Flash Player, iTunes Music Store, Playing DVDs,

Adobe Shockwave, Streaming Video, Realplayer, Apple Quicktime and RealVideo

y Java.

sudo apt-get install ubuntu-restricted-extras

Para poder usar comandos como "gcc" "make" .Se instaló un software básico de

compilación debido a que algunas veces no encontramos un ejecutable .deb para

111

Page 112: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

instalar y sí el código fuente.

sudo apt-get install build-essential

La actualización puede tardar, dependiendo de la velocidad de Internet, y del

numero de paquetes a actualizar.

En la siguiente imagen se observa una imagen del S.O Ubuntu 12.04 LTS con la

ventana de detalles del sistema.

Gráfica 8 . Imagen imagen del S.O Ubuntu 12.04 LTS con la ventana de detalles del sistema.

Fuente Propia.

112

Page 113: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.17 INSTALCION DE QT CREATOR EN EL PC

Qt Creator está disponible gratuitamente y puede ser descargado de la siguiente

pagina:

• http://qt-project.org/downloads

También se puede instalar con el siguiente código:

> apt-get install qtcreator

Al instalar Qt se instalaron los siguientes paquetes extras:

imagemagick imagemagick-common libcdt4 libdrm-dev libdrm-nouveau2

libgl1-mesa-dev libglu1-mesa-dev libgraph4 libgvc5 libilmbase6 libkms1

liblqr-1-0 libmagickcore4 libmagickcore4-extra libmagickwand4 libnetpbm10

libopenexr6 libpathplan4 libpthread-stubs0 libpthread-stubs0-dev

libqt4-declarative-gestures libqt4-declarative-particles libqt4-dev

libqt4-opengl-dev libqt4-qt3support libqtwebkit-dev libx11-dev libx11-doc

libxau-dev libxcb1-dev libxdmcp-dev libxext-dev mesa-common-dev netpbm

qt4-demos qt4-designer qt4-dev-tools qt4-doc qt4-linguist-tools qt4-qmake

qt4-qmlviewer qtcreator-doc x11proto-core-dev x11proto-input-dev

x11proto-kb-dev x11proto-xext-dev xorg-sgml-doctools xtrans-dev

Estos fueron los paquetes sugeridos:

imagemagick-doc autotrace curl enscript ffmpeg gimp gnuplot grads hp2xx

html2ps libwmf-bin mplayer povray radiance texlive-base-bin transfig

ufraw-batch libmysqlclient-dev libpq-dev libsqlite3-dev unixodbc-dev

libxcb-doc qt4-doc-html cmake git kdelibs5-data subversion

113

Page 114: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Se instalaron los siguientes paquetes nuevos:

imagemagick imagemagick-common libcdt4 libdrm-dev libdrm-nouveau2

libgl1-mesa-dev libglu1-mesa-dev libgraph4 libgvc5 libilmbase6 libkms1

liblqr-1-0 libmagickcore4 libmagickcore4-extra libmagickwand4 libnetpbm10

libopenexr6 libpathplan4 libpthread-stubs0 libpthread-stubs0-dev

libqt4-declarative-gestures libqt4-declarative-particles libqt4-dev

libqt4-opengl-dev libqt4-qt3support libqtwebkit-dev libx11-dev libx11-doc

libxau-dev libxcb1-dev libxdmcp-dev libxext-dev mesa-common-dev netpbm

qt4-demos qt4-designer qt4-dev-tools qt4-doc qt4-linguist-tools qt4-qmake

qt4-qmlviewer qtcreator qtcreator-doc x11proto-core-dev x11proto-input-dev

x11proto-kb-dev x11proto-xext-dev xorg-sgml-doctools xtrans-dev

Luego de este proceso se instalaron las librerías que hacen posible diferentes

funciones de audio en Qt, estas pueden ser descargadas por medio del terminal

con la siguiente linea de código:

> apt-get install libqtmultimediakit1

Estas son algunas de las librerías instaladas:

libphonon4 - multimedia framework from KDE - core library

libphonon-dev - multimedia framework from KDE - development files

libqtmultimediakit1 - Qt Mobility MultimediaKit module

qtmobility-dev - APIs for mobile device functionality - development files

La gráfica siguiente muestra la interfaz gráfica del programa en una de las

ventanas principales, Qt se caracteriza por ser un entorno de desarrollo amigable.

114

Page 115: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

Gráfica 9. Qt Creator Instalado en el PC.

Fuente Propia

A.18 Proceso de Instalación Ubuntu 12.10 en la BeagleBoard_xm

1.Insertemos la SD en el Pc: observamos en utilidades de disco con que nombre

aparece, en mi caso se llama sdc.

Abrimos el Terminal y con el siguiente comando descargamos la imagen del OS:

> wget ynezz.ibawizard.net/beagleboard/quantal/ubuntu-12.10-console-armhf-

2013-05-29.tar.xz

2. Verificamos la imagen con:

> md5sum ubuntu-12.10-console-armhf-2013-05-29.tar.xz

Debe arrojar lo siguiente:

c883668c655897ce20bf5fbdc9875f6fubuntu-12.10-console-armhf-2013-05-

29.tar.xz

115

Page 116: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

3. Descomprimimos el ubuntu:

> tar xJf ubuntu-12.10-console-armhf-2013-05-29.tar.xz

4. Nos ubicamos en el directorio:

> cd ubuntu-12.10-console-armhf-2013-05-29

5. Para instalar la imagen ejecutamos el siguiente script:

> sudo ./setup_sdcard.sh --mmc /dev/sdb --uboot beagle_xm –swap file 512

6. Ejecutamos la clave de usuario.

Después de la instalación aparecerán 2 particiones en la SD, una contiene los

archivos de arranque (boot) y en la segunda esta el root file system (rootf) donde

el sistema operativo será instalado.

7. Insertamos la SD dentro de la Beagle: conectamos a la Beagleboard_xm el

teclado y mouse en los puertos USB,el cable de red en el puerto RJ45 y el monitor

de video usando el cable HDMI a DVI, por ultimo conectamos el adaptador de 5V

y esperamos a que pregunte usuario y contraseña.

Usuario: ubuntu

Pass: temppwd

8. Una vez ingresamos al sistema desde Minicom, configuramos el internet.

> sudo ifconfig -a

9. miramos las conexiones activas.

> sudo dhclient eth0 -v

10. Completamos la instalación con los siguientes comandos, e instalamos el

Essentials Packages.

116

Page 117: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

> sudo apt-get update

> sudo apt-get upgrade

> sudo apt-get install xserver-xorg-video-omap3 network-manager

> sudo apt-get install build-essential libavformat-dev ffmpeg cmake

11. una vez agregados podemos instalar una interfaz gráfica ligera, el gestor de

paquetes synaptic y el automake:

> sudo apt-get install lxde

> sudo apt-get install synaptic

Al finalizar reiniciamos la Beagle y ya tendremos una interfaz gráfica para arrancar

directamente desde la Beagle sin utilizar minicom.

117

Page 118: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

A.19 COMBINACIONES DE TERMINALES Y CARACTERES

Con las terminales hacia abajo de frente a esta, la terminal 12 del lado izquierdo y

la terminal 5 en lado derecho activan F11

CARACTER COMBINACIÓN

Q 1+6W 2+6E 3+6R 4+6I 6+6O 7+6+ 8+69 9+68 10+67 11+6

BOTON TAB 1+7BLOQ MAYUSCULA 2+7F3 3+7T 4+7U 5+7+ 6+7, 8+76 9+75 10+74 11+7DEL 13+7

A 1+8S 2+8D 3+8F 4+8J 5+8K 6+8L 7+8ENTER 8+83 9+82 10+81 11+8

< 2+9G 4+9H 5+9FLECHA ARRIBA 8+9, 9+90 10+9

118

Page 119: RAE 1. TIPO DE DOCUMENTO: INGENIERO DE …biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/79482.pdf · Los sistemas embebidos se han masificado y expandido de tal modo que es común

CARACTER COMBINACIÓN

Z 1+10X 2+10C 3+10V 4+10M 5+10, 6+10. 7+10* 9+10/ 10+10BLOQ NUM 11+10SUBE VOLUMEN 12+10

F1 2+11B 4+11N 5+11FLECHA IZQUIERD 8+11- 9+11BAJA VOLUMEN 12+11

| 1+12F2 3+125 4+126 5+12¿ 6+12INICIO 8+12

1 1+132 2+133 3+134 4+137 5+138 6+139 7+13FIN 8+13

119


Recommended