Piano Arduino – Processing

Este projecto trata de la creación de un piano usando el dispositivo de arduino y el lenguaje processing, el cual al tocar un material que sea conductivo como pueden ser unas latas de gaseosa este hará una acción como en este caso emitir varias melodías

Elementos

Un arduino

6 resistencias de 100k ohmios

Una protoboard

7 Cables macho – macho

mas Cables macho – macho para hacer conección

Procedimiento

Conectar 6 cables que irán de las resistencias a los 6 pines análogos (las resistencias irán siempre conectadadas a la banda positiva de la protoboard) y un cable irá conectado de la linea de las resistencias a el pin de 5 voltios. Guiándose por los colores correspondientes a cada cable conectaremos los materiales conductivos que en este caso son las latas de gaseosa así como aparece en el siguiente diagrama

Código de Arduino

Conectar el arduino e ingresar el siguiente codigo en el entorno de arduino y subirlo

//Do
int melodia1 = 1046;
//Sol
int melodia2 = 783;
//La
int melodia3 = 880;
//Fa
int melodia4 = 698;
int melodia5 = 598;
int melodia6 = 498;


int valor1, valor2, valor3, valor4, valor5, valor6;


void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  

  valor1 = analogRead(0);
  valor2 = analogRead(1);
  valor3 = analogRead(2);
  valor4 = analogRead(3);
  valor5 = analogRead(4);
  valor6 = analogRead(5);
}

void loop() {
  
 


  valor1 = analogRead(0);
  valor2 = analogRead(1);
  valor3 = analogRead(2);
  valor4 = analogRead(3);
  valor5 = analogRead(4);
  valor6 = analogRead(5);
  

 
  if(valor1 < 1000){
    Serial.println('a'); 
    
  }
  if(valor2 < 1000){
    Serial.println('b');
    
  }
  
  if(valor3  < 1000){
    Serial.println('c');
    
  }
  
  if(valor4  < 1000){
    Serial.println('d');
    
  }
  
  if(valor5  < 1000){
    Serial.println('e');
    
  }
  
  if(valor6  < 1000){
    Serial.println('f');
    
  }

 
}

Código de Processing

Una vez subido el codigo correspondiente al arduino abriremos processing y montaremos el siguiente codígo

nos descargaremos de internet las melodias que quieran

Como sugerencia pueden acceder al siguiente link

https://elements.envato.com/es-419/audio/royalty-free-music
import processing.serial.*;
import processing.sound.*;

Serial puerto;
SoundFile sonido1, sonido2, sonido3, sonido4, sonido5, sonido6;


char dato;


void setup(){
 //printArray(Serial.list());
  puerto = new Serial(this, Serial.list()[2], 9600);
  sonido1 = new SoundFile(this, "40.wav");
  sonido2 = new SoundFile(this, "41.wav");
  sonido3 = new SoundFile(this, "42.wav");
  sonido4 = new SoundFile(this, "43.wav");
  sonido5 = new SoundFile(this, "44.wav");
  sonido6 = new SoundFile(this, "45.wav");
  
  
  
}

void draw(){
  
}

void serialEvent (Serial puerto){
  
  
  dato = puerto.readChar();
  println(dato);
  println(" ");
  
  if(dato == 'a'){
  sonido1.play();
  }
  
 
  
  if(dato == 'b'){
  sonido2.play();
  }
  
  
  
  if(dato == 'c'){
  sonido3.play();
  }
  
  
  
  if(dato == 'd'){
  sonido4.play();
  }
  
  
  
  if(dato == 'e'){
  sonido5.play();
  }
  
  if(dato == 'f'){
  sonido6.play();
  }
  
  
 
}

En cada audio descargado cambiar el nombre y la extensión del archivo correspondiente al que descargaron, de las lineas de la 13 a la 19 en la funcion soundFile

Guardar el código en una carpeta del pc con el nombre de piano y dentro de la misma carpeta crear una nueva con el nombre de data y dentro de esta nueva carpeta guardar los audios descargados

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

You may also like