Proyecto Fin De Grado
Total Page:16
File Type:pdf, Size:1020Kb
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA Y SISTEMAS DE TELECOMUNICACIÓN PROYECTO FIN DE GRADO TÍTULO: Implementación de un sintetizador en un kit de desarrollo de bajo coste AUTOR: Arturo Fernández TITULACIÓN: Grado en Ingeniería de Sonido e Imagen TUTOR: Antonio Mínguez Olivares DEPARTAMENTO: Teoría de la señal y Comunicación VºBº Miembros del Tribunal Calificador: PRESIDENTE: Eduardo Nogueira Díaz TUTOR: Antonio Mínguez Olivares SECRETARIO: Francisco Javier Tabernero Gil Fecha de lectura: Calificación: El Secretario, Agradecimientos − A mis padres y mi hermana, por apoyarme en todos los aspectos (con discrepancias inevitables) a lo largo de esta carrera de fondo. − A mis amigos y la novia, por no verme el pelo durante largos periodos de tiempo. − A los profesores que han conseguido despertar mi interés y dedicarme horas en tutorías. − A mi tutor por aceptar mi propuesta y tutelar el proyecto sin pensárselo. − A mi cuñado Rafa, que, a pesar de estar eternamente abarrotado, sacaba un hueco para ayudarme en los momentos más difíciles, motivarme y guiarme a lo largo de todos estos años. Sin su ayuda, esto no habría sido posible. − Finalmente, darme las gracias a mí mismo, por aguantar este ritmo de vida, tener la ambición de seguir y afrontar nuevos retos. Como me dice mi padre: “Tú hasta que no llegues a la Luna, no vas a parar, ¿no?”. Implementación de un sintetizador en un kit de desarrollo de bajo coste Resumen La realización de este proyecto consiste en el diseño de un sintetizador ‘Virtual Analógico’ basado en sintetizadores de los años 60 y 70. Para ello, se estudia la teoría que conforma la topología básica de los sintetizadores sustractivos, así como, los elementos que intervienen en la generación y modificación del sonido. La implementación se lleva a cabo mediante un lenguaje basado en objetos gráficos Pure Data, cuya flexibilidad permite el diseño de un sintetizador, así como otros proyectos audiovisuales. Dispone de una interfaz gráfica sencilla de manejar, aparte de admitir otros objetos programados en lenguaje C. Una vez planteado el diagrama de bloques del prototipo, se procede al diseño de un patch que permite la implementación de un sintetizador polifónico y monofónico bajo una misma interfaz gráfica. Además, se añaden algunas funcionalidades nuevas, así como, la implementación de una cadena de efectos digitales. A continuación, se configura la tarjeta Raspberry PI 3 (micro-ordenador de bajo coste) como un DSP y se migra el patch al sistema operativo Raspbian. Este último paso, precisa de algunas adaptaciones y modificaciones para el correcto funcionamiento. Finalmente, se hacen mediciones y se explican las problemáticas encontradas en la etapa de diseño e implementación, proponiendo posibles soluciones y mejoras como objeto de futuras líneas. Palabras clave: Sintetizador, síntesis sustractiva, Pure Data, Raspberry PI i Implementación de un sintetizador en un kit de desarrollo de bajo coste Abstract The development of this project consists in the design of a ‘Virtual Analog’ synthesizer based on synthesizers from the 60s and 70s. To that end, it is necessary to study the theory that satisfies the basic topology of subtractive synthesis, as well as the elements that are involved in the generation and modification of sound. The implementation process is based on Pure Data graphic objects, whose possibilities allow the design of a synthesizer, as well as many other audio-visual projects. It has a simple graphical user interface easy to manage, besides allowing to support other objects programmed in C language. Once the block diagram of the prototype has been developed, a patch is designed to implement a polyphonic and monophonic synthesizer under the same graphic interface. In addition, some new features are added, as well as, the digital effect chain. Next, the Raspberry PI 3 card (low cost microcomputer) is configured as a DSP and the patch is migrated to the Raspbian operating system. This last step requires some fixes and modifications for proper functioning. Finally, when measurements are made and problems are found in the design and implementation process, some possible solutions and improvements are proposed for future research. Keywords: Synthesizer, subtractive synthesis, Pure Data, Raspberry PI ii Implementación de un sintetizador en un kit de desarrollo de bajo coste Índice de contenidos RESUMEN .......................................................................................................................................... I ABSTRACT ......................................................................................................................................... II ÍNDICE DE CONTENIDOS ................................................................................................................... III LISTA DE ACRÓNIMOS ...................................................................................................................... VI ÍNDICE DE FIGURAS ......................................................................................................................... VII ÍNDICE DE TABLAS ........................................................................................................................... XII 1. INTRODUCCIÓN ........................................................................................................................ 1 2. MARCO TECNOLÓGICO .............................................................................................................. 3 2.1. ¿QUÉ ES UN SINTETIZADOR? .............................................................................................................. 3 2.2. CONTEXTO HISTÓRICO ...................................................................................................................... 3 2.3. FUNDAMENTOS MATEMÁTICOS .......................................................................................................... 7 2.3.1. Movimiento oscilatorio ....................................................................................................... 7 2.3.2. Descomposición de una onda compleja ............................................................................. 7 2.3.3. Caracterización de sistemas lineales .................................................................................. 8 2.3.3.1. Filtrado y ecualización ................................................................................................................................... 9 2.3.3.2. Filtro FIR de tipo peine .................................................................................................................................. 9 2.3.3.3. Filtro IIR de tipo peine ................................................................................................................................... 9 2.3.3.4. Diseño de algoritmos para ecualización y filtrado ...................................................................................... 10 2.4. ESTADO DEL ARTE .......................................................................................................................... 10 2.4.1. MIDI .................................................................................................................................. 10 2.4.2. Síntesis aditiva .................................................................................................................. 11 2.4.3. Síntesis sustractiva............................................................................................................ 12 2.5. COMPONENTES Y SEÑALES DE UN SINTETIZADOR ................................................................................. 12 2.5.1. El teclado .......................................................................................................................... 13 2.5.1.1. Señales de control ....................................................................................................................................... 13 2.5.1.2. Distribución de intervalos ............................................................................................................................ 14 2.5.2. VCO o DCO ........................................................................................................................ 14 2.5.2.1. Señal sinusoidal ........................................................................................................................................... 15 2.5.2.2. Señal triangular ............................................................................................................................................ 15 2.5.2.3. Señal de diente de sierra ............................................................................................................................. 16 2.5.2.4. Señal cuadrada, rectangular y tren de pulsos ............................................................................................. 17 2.5.2.5. Generadores de ruido .................................................................................................................................. 19 2.5.2.6. Parámetros de control básicos .................................................................................................................... 19 2.5.3. VCF o DCF .......................................................................................................................... 19 2.5.4. VCA o DCA ......................................................................................................................... 21 2.5.4.1. LFO ..............................................................................................................................................................