Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Construye un Mini Piano con Arduino UNO – Tutorial Paso a Paso

Componentes y Suministros

Componente Cantidad
Arduino UNO 1
Protoboard (genérica) 1
Pulsadores 12 mm (SparkFun) 7
Cables jumper (genéricos) 1
Zumbador piezoeléctrico (buzzer) 1

Herramientas Necesarias

Sobre el Proyecto

Paso 1: Piezas y Material

Paso 2: Conexiones

Paso 3: El Código

Requiere la librería Tone de Arduino (descargable de GitHub). Si no sabes instalar librerías de terceros, consulta la guía oficial de Arduino.cc. Descarga el archivo Arduino_Piano.rar, descomprímelo, abre Arduino_Piano.ino en el IDE y súbelo a la placa.

Paso 4: ¡A Tocar!

Ya puedes pulsar las teclas y oír las notas correspondientes. Si la afinación no es exacta, ajusta los valores de frecuencia en el sketch. También puedes cambiar la escala descomentando otras escalas incluidas o crear la tuya propia. ¡Comparte fotos y vídeos de tu piano!

Funcionamiento

El sketch define las frecuencias de las notas (Do, Re, Mi, Fa, Sol, La, Si) y asigna cada pulsador a un pin con resistencia pull-up interna. En el bucle principal, mientras se mantiene pulsado un botón, se genera el tono correspondiente en el zumbador y se enciende el LED integrado (pin 13). Al soltar, cesa el tono y el LED.

Código

// Arduino Piano
/* Canal: https://www.youtube.com/channel/UCks-9JSnVb22dlqtMgPjrlg */
#define T_C 262
#define T_D 294
#define T_E 330
#define T_F 349
#define T_G 392
#define T_A 440
#define T_B 493

const int C = 10, D = 9, E = 8, F = 7, G = 6, A = 5, B = 4;
const int Buzz = 11, LED = 13;

void setup() {
  pinMode(LED, OUTPUT);
  pinMode(C, INPUT_PULLUP);
  pinMode(D, INPUT_PULLUP);
  pinMode(E, INPUT_PULLUP);
  pinMode(F, INPUT_PULLUP);
  pinMode(G, INPUT_PULLUP);
  pinMode(A, INPUT_PULLUP);
  pinMode(B, INPUT_PULLUP);
  digitalWrite(LED, LOW);
}

void loop() {
  if (digitalRead(C) == LOW) { tone(Buzz, T_C); digitalWrite(LED, HIGH); }
  else if (digitalRead(D) == LOW) { tone(Buzz, T_D); digitalWrite(LED, HIGH); }
  else if (digitalRead(E) == LOW) { tone(Buzz, T_E); digitalWrite(LED, HIGH); }
  else if (digitalRead(F) == LOW) { tone(Buzz, T_F); digitalWrite(LED, HIGH); }
  else if (digitalRead(G) == LOW) { tone(Buzz, T_G); digitalWrite(LED, HIGH); }
  else if (digitalRead(A) == LOW) { tone(Buzz, T_A); digitalWrite(LED, HIGH); }
  else if (digitalRead(B) == LOW) { tone(Buzz, T_B); digitalWrite(LED, HIGH); }
  else { noTone(Buzz); digitalWrite(LED, LOW); }
}

Repositorio del proyecto: GitHub

Esquemáticos

Explicados en el vídeo adjunto. Ver imagen del esquema en el proyecto original.

Proceso de manufactura

  1. Crea un Cerrojo RFID Seguro con Arduino – Guía Paso a Paso
  2. Proyecto Dados Digitales Arduino: Construye tu Propio Generador de Números Aleatorios con LCD
  3. Construye un Piano Táctil Capacitivo Portátil con Arduino – Guía Paso a Paso
  4. Construye un Iron Man animado con Arduino: componentes, sensores y guía paso a paso
  5. Find Me: Localizador Inteligente de Objetos con Arduino y Bluetooth
  6. Construye un Brazo Robótico Impreso en 3D Controlado por Arduino – Guía Paso a Paso
  7. Controlador de Humidificador DIY con Arduino y Relé: Configuración Segura de Alto Voltaje
  8. Reloj Preciso de 7 Segmentos con Arduino Pro Mini y RTC DS1302
  9. PiBot: Robot Pianista con Arduino para Interpretación Musical de Precisión
  10. Pong Neón en Matriz NeoPixel con Arduino Nano
  11. Tutorial Arduino para Principiantes 01: Inicia tu Primer Proyecto