🎹 Piano de papel con sensor táctil

 

Piano de papel con sensor táctil

Un piano de papel que se basa en el toque humano para la salida de audio mediante transistores.

 

Componentes y suministros

TRANSISTOR 2N3904 (NPN)
× 1
Cables de puente macho/macho
× 1
Industrias adafruit ada1536 imagen
Alarma sonora
× 1
Kingbright wp7113sgd
LED de 5 mm: verde
× 1
Ph a000067 iso (1) wzec989qrf
Arduino Mega 2560
× 1

Acerca de este proyecto

El concepto del piano táctil es simple. El voltaje se alimenta a través del colector del transistor NPN. También se agrega un cable abierto en el colector para agarre. En cuanto a la base del transistor, está conectado al piano de papel. El emisor está conectado al LED que conduce a tierra, y un pin analógico también lee el voltaje en el emisor. Si una persona toca el cable con la mano con la tecla del piano, la persona conecta la base y el colector juntos, proporcionando así un camino alternativo para que la corriente fluya desde el colector al emisor, esencialmente las manos son una forma de interruptor para activar /desactivar señales. El pin analógico detecta el cambio de voltaje, que luego proporciona una salida de audio basada en el pin de la tecla del piano.

VÍDEO DE PIANO:

https://drive.google.com/file/d/1_wpoYDR0XaQcjk

para obtener más información sobre los transistores y sus principios de funcionamiento – https://learn.sparkfun.com/tutorials/transistors/all

– cosas a tener en cuenta:

las llaves tienden a conducir electricidad en el mismo papel, por lo que es recomendable cortar y pegar las llaves a una lámina de plástico.

codificado

códigos pianísticos.arduino
int pin[7] = {A0,A1,A2,A8,A9,A10,A11}; // pin that reads voltage
int x;int y;int z;
 #define speaker 3                     // speaker output pin
int volts[10] = {analogRead (pin[x])};  //stores 10 readings of voltage for ONE pin
                //number of samples for the average mean vaule is 10
int sum;int sum1;int average;       // aVERAGE VARIABLES
int store [7];                    //stores AVERAGE reading of voltages of ALL pins

void setup() {
  
for (x = 0;x<=6; x++){
pinMode (pin[x], INPUT);
pinMode(speaker,OUTPUT);

Serial.begin (115200);}}                     

void loop() {
const int samples = 10;  
                     
    for ( x = 0; x <= 6 ; x++){   
      for ( y = 0;y<= 9 ; y++){               
       analogRead (pin [x]);                    //read voltage at each pin
        volts [y] = analogRead (pin [x]);          // store voltage of each pin in the array volts(up to 10 values as the array can only store 10 values)
        sum = volts[y];                    // sum of all the votlage (10 values)
        sum1 = sum += analogRead (pin [x]);  //add the previous analog reading to the current
        average = sum1/samples;
         store [x] = average; 
          Serial.println ("");
          Serial.println (store [5]);}}


const int EV =97;                     //value obtained through testing and observing how the voltage changes during serial.
   
  if ( (store [0]) > EV){   // if average voltage for the first pin value stored in the array (pin A0) is larger than 97
tone (speaker,195.9977);}   // tone(pin,frequency) to play

  
   else if ((store [1]) > EV ){
    tone (speaker,220.0000);}
    

     else if(store [2] > EV){                                                               
     tone(speaker,246.9417);}                                     
                                    
        
  else if (store [3] > EV ){                                            
     tone ( speaker,261.6256);}
     
      
       else if (store [4] > EV){
        tone (speaker,293.6648);}
         
            
         else if (store [5] > EV){
           tone(speaker,329.6276);}
             
                
                else if (store [6] > EV){
                  tone(speaker,523.2511);}

                  else {noTone(speaker);}} // prevents speaker from playing continuously.

diagramas

diagrama de circuito (para UNA TECLA DE PIANO).
Descargar

este es el diagrama de circuito para el piano. En la imagen de portada, se puede ver que es complicado, por lo tanto, este circuito es para UNA SOLA TECLA DE PIANO. El colector está conectado a dos elementos, a saber, un riel de 5 voltios y un cable que la persona debe sujetar para completar el circuito. La base está conectada a la tecla del piano y el emisor está conectado al LED, que conduce a un pi analógico para leer el cambio de voltaje, así como la tierra.

En cuanto al zumbador, está conectado a un pin digital para su cable vivo, por lo que solo emite audio cuando hay un cambio de voltaje que es captado por el pin analógico y obviamente conectado a tierra en la masa.

Se recomienda enfáticamente crear un riel de tres para simplificar el circuito para todas las teclas. Estos rieles consisten en un riel vivo para 5v de arduino, un riel de tierra y un riel de cable manual.

Imagen WhatsApp 2018 11 18 a 20 57 39 lbsycs7wi4

Fuente Arduino.cc