Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
Er is een tijdperk waarin je kunt spelen en een teclado funcional die me encantaba tocarlo, aunque solo sabia poquitas notas me encantaba tocarlo, un dia le conecte el eliminador equivocado pero no me habia dado cuenta cuando lo conecte todo estabay funcio lo deje ahi conectado es cuando empezo a oler a quemado:(Cuando paso eso si me aguite:c
Pero bueno en ese tiempo no sabia nada de electronica asi que solo llore, tiempo despues ya que me empeze a interesar por la electronica me acorde de ese piano asi que lo abri y empeze a analizar la tarjeta logisch que venia adentro pasen veelo tiempo, identifique la falla en el circuito integrado principal y un transistor de potencia, buscando door google me doy cuenta que el circuito integrado que es marca Yamaha es algo dificil de conseguir ademas de que es viejito y bueno edo me as queeara cio cio
Asi que decidi tomar las partes principales del teclado dañado (Carcasa y la matriz de las teclas) y hacer uno nuevo ya que queria rescatar ese
En este Instructables les contare como lo hize y algunos de los problemas que me encontre en el camino
Asi que partiremos suponiendo que tienes solamente la matriz del teclado ya desmontada
Benodigdheden:
-Matriz de Teclado (La cantidad de teclas geen importa)
En mi caso es de 49 teclas
-Arduino Mega
(Para utilizar un Arduino Uno se necesitaria un shift register por que los pines no alcanzan lo cual tambien llevaria a cambiar el codigo)
-Haarloze MIDI
-Loop MIDI
-Synthesia (O cualquier otro VST que acepte como entrada MIDI)
Stap 1: Identifica La Matriz De Tu Teclado
Bueno en mi caso este teclado tiene un cable de 15 dennen
Que hize yo para identificar la matriz de este teclado?
Lo que yo hice fue
1.-Colocar el multimetro en continuidad con un caiman en una orilla del cable que viene del teclado(Cable 1) y otro caiman en la otra orilla (Cable 15)
De la parte de atras de mi teclado veo que tiene 49 diodos zener lo que significa que cada tecla que cada tecla tiene un diodo zener asignado y por lo tanto al momento de probar continuidad con el multimetro solo funcionara en un sentido
en mi caso puse la punta roja en el kabel 15 y la punta negra en el kabel 1
En tu caso puede cambiar es cosa de probar
2.-Presionar todas las teclas y ver cual da continuidad
3.-Anotarlo
4.-Cambiar uno de los dos caimanes, yo cambie el del kabel 1 al kabel 2 por que el kabel 15 tiene una rayita lo cual me hace entender que es comun
Repetir el processo hasta conseguir la relacion entre los kabels of hasta ver una secuencia
En mi caso documente hasta la decima prueba, en la novena todavia me daba continuidad con alguna tecla, en la decima prueba ya no daba con ninguna esto me indica que es una matriz 9x6 of 6x9
Stap 2: Anotaciones
Stap 3: Matriz-identificatie
Despues de identificar todos los kabels llegue a la conclusie
Kabel 15-10 - Roja (zuilen)
Kabel 9-1 - Negra (Filas)
Siendo la punta que coloque en el cable
Stap 4: Identifica El Diagrama Interno De La Matriz Del Teclado
En la foto vemos un diagrama de una matriz de switches de 3x4, he determinado que asi es como esta internamente mi teclado que yo ponia la punta roja del multimetro en la parte de la columna (Cable 15)
y la punta negra en la parte de la fila lo que hacia que el diodo se polarizara directamente y conduciera
Es por eso que si colocaba las punten al revés no tenia continuidad en ninguna tecla
En mi caso es de 9x6
9 Fila's
6 kolommen
La resistencia de la parte de hasta arriba es la configuracion pull up y se aplica a la parte de las columnas
Bendito Arduino heeft een functie voor het instellen van een pin como PULL UP por lo cual no hay que preocuparse por esa parte
Stap 5: Circuito
Gebruik van Arduino Mega en los digitale dennen
Pin 22-Kabel 15
Pin 23-Kabel 14
Pin 24-Kabel 13
Pin 25-Kabel 12
Pin 26-Kabel 11
Pin 27-Kabel 10
Pin 28-Kabel 9
Pin 29-Kabel 8
Pin 30-Kabel 7
Pin 31-Kabel 6
Pin 32-Kabel 5
Pin 33-Kabel 4
Pin 34-Kabel 3
Pin 35-Kabel 2
Pin 36-Kabel 1
Kabel 15-10 zoon Columnas
Kabel 9-1 zoon Filas
Stap 6: Codigo
Links utiles por si quieres sabre mas como funciona el codigo
www.gammon.com.au/forum/?id=14175
www.arduino.cc/reference/nl/bibliotheken/midi…
Libreria nodig.
github.com/nickgammon/Keypad_Matrix
github.com/FortySevenEffects/arduino_midi_…
Programma's die nodig zijn
projectgus.github.io/hairless-midiserial/
www.tobias-erichsen.de/software/loopmidi.ht…
Codigo
Stap 7: Configureer Los Programas
U kunt kiezen om te installeren en te programmeren om een arduino te installeren mega para saber si funciona vamos a configurar los programas instalados
1.- Loop MIDI
Descargamos el programa lo extraemos, lo abrimos una vez dentro colocamos un nombre en la parte de abajo y damos en mas
Esto nos genera un puerto MIDI
2.-Haarloze MIDI
Una vez descargado, instalado y abierto
-Seleccionamos el puerto del arduino deberia de aparecer como COMx
-Activamos la opcion debug MIDI-berichten (Para saber que numero de tecla estamos tocando)
-Para probar que si funciona seleccionamos en MIDI IN Microsoft Wavetable Synth
U kunt kiezen uit een combinatie van functies en MIDI IN y MIDI OUT in de puerto creado en loopMIDI para usarlo en el programa que desees
-Despues vamos a la parte de
Bestand - Voorkeuren
Y cambiamos el baudrate a 9600
-Activamos el SERIAL - MIDI BRIDGE
Probamos
Si por casualidad tu teclado tiene la misma configuracion de matriz que la mia entonces tu teclado debe estar funcionando correctamente
Stap 8: Como Cambiar Las Notas
En caso de que la configuracion de matriz sea diferente pero si da las notas entonces puede ser que la configuracion no sea la misma en ese caso tendrias que cambiar en el codigo de arduino la tecla que corresponde
Primero identifica que tecla da que numero de nota para despues cambiarla en el codigo de arduino
Ejemplo presionas la primera tecla de derecha a izquierda y da la nota 43
Entonces buscas en el codigo de arduino el numero 43 en la primera parte y lo cambias door la nota que corresponde dependiendo del siguiente codigo MIDI
usermanuals.finalemusic.com/Finale2012Win/Content/Finale/MIDI_Note_to_Pitch_Table.htm
Je gebruikt desde la primera octava hasta la quinta octava