Decidí hacer un piano de aire que se basa en la cap-sentido y el arduino.
Materiales;
- Cinta de aluminio o papel de aluminio
- Algunos cables
- 8 resistencias de Ohm de 10 M
- Zumbador piezoeléctrico
- Arduino
- Batería de 9V o el cable USB
Básicamente, hay piezas cuadradas de aluminio cintas pegadas en una tarjeta gruesa que está conectado a un cable puente y un resistor, 8 réplicas de este se hacen, luego los otros extremos de los resistores están conectados juntos y al pin3 del arduino, esto actuará como el pin de la base común para todos los sensores. Los valores de resistencia pueden ser de 2M o 10M o 40 M Ohm. 2 M Ohm hará que sólo se detecta al presionar en la cinta de aluminio, 10M resistencia de Ohm hace que tu mano puede detectar a un altura de 3-5cm más o menos 40 M Ohm detectará bastante un poco más, y se pone un poco desordenado como si las piezas de cinta de aluminio están demasiado juntos en eso altura de interferencias por lo tanto podrían obtener pulsar otras teclas. Si desea utilizar esta versión de 40M Ohm tienes que asegúrese de colocar las piezas de cinta de aluminio un poco lejos uno del otro.
He utilizado 10M Ohm para mi dispositivo y funciona a la perfección cuando onda de mi mano sobre la nota desea utilizar.
El principio básico detrás de esto es que la cinta de aluminio detecta la diferencia entre la capacitancia del cuerpo humano y la capacidad de aire, o en otras palabras la cinta de aluminio da un voltaje pequeño arduino que crea un campo eléctrico en esa zona, y cuando toca el dedo (siendo un conductor), forman un condensador. Este cambio es detectado por la cinta de aluminio y por lo tanto envía una señal al arduino con el que podemos decir que enviar una señal a la alarma.
He oído que también podemos utilizar sensores resistivos en vez de capacitiva pero no exactamente seguro cómo funciona.
Os adjunto un zumbador piezoeléctrico buena pin A0 o Pin analógico 0, el común de pin a pin 3 y las 8 plazas diferentes de cinta de aluminio a 4,5,6,7,8,9,10,11 pernos.
Manual de reparacion en una de las imágenes adjunta a este instructable.
Este es el código que utilicé;
#include #include "pitches.h" #define COMMON_PIN 3 #define BUZZER_PIN A0 #define NUM_OF_SAMPLES 1 #define CAP_THRESHOLD 100 #define NUM_OF_KEYS 8 #define CS(Y) CapacitiveSensor(2, Y) int notes[]={NOTE_C4,NOTE_D4,NOTE_E4,NOTE_F4,NOTE_G4,NOTE_A4,NOTE_B4,NOTE_C5}; CapacitiveSensor keys[] = {CS(4), CS(5), CS(6), CS(7), CS(8), CS(9), CS(10), CS(11)}; void setup() { for(int i=0; i<8; ++i) { keys[i].set_CS_AutocaL_Millis(0xFFFFFFFF); } pinMode(BUZZER_PIN, OUTPUT); } void loop() { for (int i = 0; i < 8; ++i) { if(keys[i].capacitiveSensor(NUM_OF_SAMPLES) > CAP_THRESHOLD) { tone(BUZZER_PIN, notes[i]); delay(100); noTone(BUZZER_PIN); } } }
Lo que hace el código es primero incluyen 2 bibliotecas, capacitivesensors.h y pitch.h, pitch.h se utiliza para el comando tono con notas como A2, B6, F2, etc en lugar de las frecuencias propias. Entonces define los pines y el umbral del condensador, esto es básicamente la cantidad de "detección" del condensador lo hace, si se reduce entonces el sensor detecta más fácilmente si aumenta lo hace el contrario.
Luego se definen las notas para cada tecla, y luego defines los pasadores de a que las teclas o piezas de cinta de aluminio están conectados.
En la configuración de vacío usted configurar zumbador pin como salida y set calibración a 0.
En el bucle vacío quiere decir que si la cinta detecta el dedo, entonces el if instrucción es ejecutada, por lo tanto el zumbador se juega con la nota respectiva. Si esto no sucede entonces ya no hay ninguna función más, simplemente pasa por bucle vacío otra vez.
El comando tone() establece el tono para ser reproducido en el zumbador, también puede utilizar el comando de tono para tocar distintas notas llano como tono (pin, frecuencia, duración) pero utilizamos notas aquí con el pitch.h así que no tenemos que molestar con eso.
Su acumulación de hardware bastante simple que ofrece una gran cantidad de aprendizaje en el lado del software.
Su proyecto recomendado para principiantes que no tienen mucho material de hardware, pero están dispuestos a aprender cómo funciona el software en el ide de arduino.
Según yo es una gran diversión para proyectar y no toma mucho tiempo ya sea.
¿También puede ajustar las notas para hacer todo tipo de diversión diferentes melodías como Umm... tal vez una voz extraterrestre? ¿o un sintonizador de radio?
Esperanza para ver lo que otros hacen con esta combinación de arduino Cap-sentido, y si alguien lo hace sería impresionante si usted comparte fotos del proyecto terminado :)
Enlaces;
- Cap-sentido Arduino biblioteca; http://Playground.Arduino.CC//Main/CapacitiveSensor?from=Main.CapSense
Inspiración/crédito;
- http://www.youtube.com/watch?v=aaBAp47QujA (inicio de la Idea)
- http://HackADay.com/2011/11/21/simple-Touch-sensors-with-the-Arduino-capsense-Library/ (cómo el trabajo del Cap-sentido)
- (iniciativa para Cap-sentido)
- http://www.youtube.com/watch?feature=player_embedded&v=GFp9yhYXTUg (más inspiración)
- http://blog.Makezine.com/2008/05/16/Build-the-Arduino-Pocket/ (inspiración para la fabricación de un piano)
- Tyler Crumpton, J Z Chen y Nicholas Jones fueron las personas que trabajaban alrededor de esta tecnología para hacer todo tipo de cosas para que todo el crédito va para ellos.
Breve Video; (Piano de aire cap-sentido)