Unidad Aplicaciones Sesión 1 Musitrónica Musitrónica ¿Qué aprenderemos en esta sesión? En esta sesión generaremos una gran variedad de sonidos por medio de nuestra tarjeta innobot, para luego crear tonos musicales como por ejemplo La música de fondo del clásico video juego “Mario Bross” o alguno en particular que te guste. Actividad 1 – ¿Qué es Musitrónica? 1. Haz clic en el siguiente enlace http://www.youtube.com/watch?v=wkPt9MYqDW0. Y observa los ejemplos de “pianos” musicales que se pueden hacer. 2. ¿Qué más aplicaciones se te ocurren? Escalas musicales ¡La música es un arte! Dirían la mayoría de artistas y cantantes hoy en día, pero la verdad es mucho más que eso, la música es el arte de combinar sonidos basados en 3 reglas, que son la melodía, la armonía y el ritmo. Vamos a leer el siguiente verso: Ut queant laxis Resonare fibris Mira gestorum Famili torum Solve polluti Labii reatum Sancte Iohannes. DO C RE MI FA SOL LA SI D E F G A B "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" Capítulo: Musitrónica De este verso, se sacaron el nombre de las notas musicales que conocemos, las cuales se llaman notas naturales y son: 2 Ejercicio: Para lograr hacer melodías con la tarjeta Innobot, necesitamos identificar un elemento que genere sonido dentro de ella, en este caso la tarjeta posee un elemento llamado buzzer, este hace las veces de un parlante en el equipo de sonido FIG. 1 - BUZZER TARJETA INNOBOT. FUENTE: PYGMALION® Como entramos a un nuevo módulo necesitamos una nueva librería, con los siguiente pasos podrás hacer uso de ella. 1. Debes ingresar a la página http://innobotica.pygmalionrobotics.com dar click al link Software/ y bajarte los archivos Transmedia.h y Transmedia.cpp. "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" Capítulo: Musitrónica 2. Una vez descargados los archivos, abrimos el Innobot IDE, y vamos a agregar ambos archivos, haciendo click en la pestaña Sketch y luego a la opción Agregar Archivo… 3 3. Ingresar a la sección de Programa y luego sobre Add. ZIP Library "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" Capítulo: Musitrónica 4. Luego buscar y seleccionar la carpeta comprimida Transmedia.zip. 4 5. Finalmente click sobre Transmedia: Ahora que ya tenemos todos listo #include "Transmedia.h" //Incluimos la nueva librería Transmedia Transmedia robot; // Le damos nombre a nuestro Robot void setup(){ robot.myTime(1000); robot.myTone(Do4,negra); robot.myTone(Re4,negra); robot.myTone(Mi4,negra); robot.myTone(Fa4,negra); robot.myTone(Sol4,negra); robot.myTone(La4,negra); robot.myTone(Si4,negra); } void loop(){ } Tenemos una función nueva llamada myTone() , ahora miremos como utilizarla, esta le permite a nuestra tarjeta emitir sonidos. myTone() Descripción Genera un tono en el pin que está conectado el Buzzer. Sintaxis robot.myTone(NOTE, DURATION); "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" Capítulo: Musitrónica Parámetros NOTE: Es la nota que se quiere reproducir, cada nota de la escala musical puede tomar valores desde 0, hasta 10, por ejemplo Do0, Do3….. Do10. Donde las notas con valores de 0 son notas muy graves, 4 son notas de registro medio y notas con valores de 7 son muy agudas, frecuencias cercanas a 10 son casi inaudibles. DURATION: duración de la nota, esto es: redonda, blanca, negra, corchea, semicorchea, fusa y semifusa. Devuelve NA: Nada 5 Actividad: Ahora que sabemos cómo es el funcionamiento de la nueva función: 1. Haz que todas las notas en el código duren 250 milisegundos y escucha lo que sucede. 2. Ahora juega con la duración de las notas musicales y haz tu propia melodía ¿Qué pasaría si colocamos la duración de alguna nota en 0? 3. Realiza una melodía con los posibles valores de DO, desde el más grave (DO2) hasta el más agudo (DO7). Una nueva escala Si las canciones que escuchamos hoy, se hicieran con base en las notas naturales, escucharíamos melodías muy sencillas tanto que no serían nada atractivas, y probablemente nunca escucharíamos música. Para lograr melodías que escuchemos mejor, se crea la escala cromática, que tiene 12 notas, también conocidas como los 12 semitonos. DO DO# RE RE# MI FA FA# SOL SOL# LA LA# SI Donde las notas con # al lado derecho, se les agrega en el nombre “Sostenido”, por ejemplo DO#, seria DO Sostenido, que es un sonido intermedio entre DO y RE. Ejercicio: Ahora probemos el siguiente código: #include "Transmedia.h" void setup(){ robot.myTime(1000); robot.myTone(Do4,blanca); robot.myTone(DoS4,blanca); robot.myTone(Re4,blanca); robot.myTone(ReS4,blanca); robot.myTone(Mi4,blanca); robot.myTone(Fa4,blanca); robot.myTone(FaS4,blanca); robot.myTone(Sol4,blanca); robot.myTone(SolS4,blanca); robot.myTone(La4,blanca); robot.myTone(LaS4,blanca); robot.myTone(Si4,blanca); } void loop(){ "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" Capítulo: Musitrónica Transmedia robot; 6 } Mundo musical y la duración de las notas Los músicos para simplificar la tarea de copiar nota por nota, y la duración de cada una en un cuaderno, crearon las partituras, donde combinan las notas con la armonía, melodía y ritmo. FIG. 5 – P ARTITURAS También crearon unos símbolos o figuras musicales para saber la duración de cada una de las notas que son interpretadas en una canción, en la imagen anterior el símbolo que se utiliza es conocido como la Redonda, a esta se le asigna una duración, por ejemplo de 1 segundo (1000ms), las otras notas se calculan en base a esta, en la siguiente tabla esta una relación entre la duración de los símbolos. Volviendo al ejemplo, para una redonda de 1000ms, una nota Blanca dura 500ms ( 1⁄2 ∗ 1000 𝑚𝑠), la negra dura 250ms (1⁄4 ∗ 1000 𝑚𝑠 ), la Corchea dura 125ms (1⁄8 ∗ 1000 𝑚𝑠). "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" Capítulo: Musitrónica FIG. 6 – T ABLA D URACIÓN S ÍMBOLOS . 7 Actividad: Ahora probemos el siguiente código: #include "Transmedia.h" Transmedia robot; void setup(){ robot.myTime(1000); robot.myTone(Do4,redonda); robot.myTone(Re4,redonda); robot.myTone(Mi4,blanca); robot.myTone(Fa4,blanca); robot.myTone(Sol4,negra); robot.myTone(La4,corchea); robot.myTone(Si4,semicorchea); } void loop(){ } Tenemos una nueva función que se llama myTime(), la cual nos sirve para calcular los valores de los símbolos automáticamente con base en la nota Redonda, para que en cualquier momento de nuestro programa, si queremos que una canción vaya lento y después se acelere podemos modificarlas volviendo a llamar la función time y crear nuestra propia opera. FIG. 7 – E JERCICIO . "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" Capítulo: Musitrónica Para el ejemplo anterior, se calculan los valores de los símbolos, con base a una Redonda que vale 1000ms. Ahora te proponemos un ejercicio donde tienes que calcular el valor de la duración de los símbolos con base a una redonda de 2000ms. 8 Actividad: Ahora probemos el siguiente código: #include "Transmedia.h" Transmedia robot; void setup(){ robot.myTime(1000); robot.myTone(Do4,blanca); robot.myTone(Re4,blanca); robot.myTone(Mi4,blanca); robot.myTone(Fa4,blanca); robot.myTime(500); robot.myTone(Do4,blanca); robot.myTone(Re4,blanca); robot.myTone(Mi4,blanca); robot.myTone(Fa4,blanca); robot.myTime(2000); robot.myTone(Do4,blanca); robot.myTone(Re4,blanca); robot.myTone(Mi4,blanca); robot.myTone(Fa4,blanca); } void loop(){ } Ahora en nuestra función myTone() puedes utilizar la duración de las notas del mundo musical, y de esa forma no tienes que estar copiando la duración en ms, sino que colocas el nombre del símbolo (redonda, blanca, negra, corchea, semicorchea), no olvides llamar la función time() antes de empezar el programa, ten esto muy en cuenta para realizar el desafío. Desafío 1. Tenemos las siguientes melodías, escoge una y ajusta la pausa entre notas, para que suenen correctamente (Si quieres hacer una pausa entre notas, puedes utilizar la función delay() ): Las notas minúsculas (do, re, etc.) son agudas (valor 6) normales (Do, Re, etc.) son de registro medio (valor 4) minúsculas con asterisco (do*, re*, etc.) son muy agudas (valor 7) "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" Capítulo: Musitrónica mayúsculas (DO, RE, etc.) son graves (valor 3) 9 COMENTARIO: La forma en cómo se copian las notas musicales en este ejemplo, no cambia la forma en que hemos venido copiando las notas anteriormente, siguen siendo en mayúsculas (DO0, DO3, DO4, DO7….). La cucaracha: La cucaracha, La cucaracha, Porque le falta, "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" Capítulo: Musitrónica Ya no puede caminar. 1 0 Porque no tiene, Una patita para caminar. Tema principal – Super Mario Bros: mi* mi* mi* do* mi* sol* sol do* sol mi la si la# sol, mi* sol* la* fa* sol* mi* do* re* si do* sol mi la si la# sol, mi* sol* la* fa* sol* mi* do* re* si sol* fa#* fa* re#* mi* sol# la do* la do* re* sol* fa#* fa* re#* mi* do* do* do* sol* fa#* fa* re#* mi* sol# la do* la do* re* re#* re* do* Capítulo: Musitrónica O si quieres buscar tus propias melodías, ingresa a http://flautad.blogspot.com/ y busca una melodía para implementa "Esta Metodología, y todas sus guías, manuales y componentes, fue desarrollada por PYGMALION (R), quien tiene los derechos de uso, distribución, comercialización y autorización a terceros. Queda prohibida la reproducción parcial o total del presente documento, por medio de cualquier proceso reprográfico, sea fónico, microfilme, mimeográfico, offset, electrónico o por fotocopia. Esta edición y sus características gráficas son propiedad de FUNDACIÓN PARQUE DEL SOFTWARE MEDELLÍN, ParqueSoft Medellín.Todos los derechos Reservados" 1 1
© Copyright 2024