Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Hace un tiempo cuando era pequeño tenia un teclado funcional que 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 estaba pero muy bien pero cuando lo apague y 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 logica que venia adentro pase mucho tiempo intentando arreglarlo, identifique la falla en el circuito integrado principal y un transistor de potencia, buscando por google me doy cuenta que el circuito integrado que es marca Yamaha es algo dificil de conseguir ademas de que es viejito y bueno eso no me aseguraba que vez quedara executando otra
Asi que decidi tomar las partes principais 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 supondo que tienes solamente a matriz do teclado ya desmontada
Suprimentos:
-Matriz de Teclado (La cantidad de teclas no importa)
En mi caso es de 49 teclas
-Arduino Mega
(Para usar um Arduino, se necesitaria un shift register para que los pines no alcanzan lo cual tambien llevaria a cambiar el codigo)
- MIDI sem fios
-Loop MIDI
-Synthesia (O cualquier otro VST que acepte como entrada MIDI)
Etapa 1: Identifica La Matriz De Tu Teclado
Bueno en mi caso este teclado tem um cabo de 15 pinheiros
¿Que hize você deseja identificar a matriz deste teclado?
Lo que yo hice fue
1.-Colocar o multimetro em continuidade com um caiman em uma orilha do cabo que vi o teclado (Cabo 1) e outro caiman na orilha (Cabo 15)
De la parte de atras de mi teclado veo que tem 49 diodos zener lo que significa que cada tecla tem um diodo zener asignado e por lo tanto no momento de probabilidade de continuidade com o multimetro só funcionara em um sentido
em meu caso, entre a punta roja no cabo 15 e a punta negra no cabo 1
En tu caso puede cambiar es cosa de probar
2.-Presionar todas as teclas e ver cual da continuidade
3.-Anotarlo
4.-Cambiar uno de los dos caimanes, yo cambie el del cabo 1 al cabo 2 por que el cabo 15 tiene una rayita local me hace entendre que es comun
Repetir el proceso hasta conseguir la relacion entre los cabos o 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 é uma matriz 9x6 ou 6x9
Etapa 2: Anotaciones
Etapa 3: Matriz Identificada
Despues de identificar todos os cabos llegue a la conclusão
Cabo 15-10 - Roja (Columnas)
Cabo 9-1 - Negra (Filas)
Siendo la punta que coloca en el cabo
Etapa 4: Identifica El Diagrama Interno De La Matriz Del Teclado
En la foto vemos um diagrama de uma matriz de switches de 3x4, ele determinado que es como esta internamente mi teclado por que você ponia la punta roja del multimetro en la parte da coluna asi (Cabo 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 puntas al revés no tenia continuidad en ninguna tecla
Em meu caso é de 9x6
9 Filas
6 colunas
La resistencia de la parte de hasta arriba es la configuracion pull up y se aplica a la parte de las columnas
Bendito Arduino tem uma função para estabelecer um pino como PULL UP por lo cual no hay que preocuparse por esa parte
Etapa 5: Circuito
Utilizando um Arduino Mega y los pines digitales
Pino 22-Cabo 15
Pino 23-Cabo 14
Pino 24-Cabo 13
Pino 25-Cabo 12
Pino 26-Cabo 11
Pino 27-Cabo 10
Pino 28-Cabo 9
Pino 29-Cabo 8
Pino 30-Cabo 7
Pino 31-Cabo 6
Pino 32-Cabo 5
Pino 33-Cabo 4
Pino 34-Cabo 3
Pino 35-Cabo 2
Pino 36-Cabo 1
Cabo 15-10 filho Columnas
Cabo 9-1 filho Filas
Etapa 6: Codigo
Links utiles por si quieres saber mas como funciona el codigo
www.gammon.com.au/forum/?id=14175
www.arduino.cc/reference/en/libraries/midi…
Librerias necesarias.
github.com/nickgammon/Keypad_Matrix
github.com/FortySevenEffects/arduino_midi_…
Programas Necesarios
projectgus.github.io/hairless-midiserial/
www.tobias-erichsen.de/software/loopmidi.ht…
Codigo
Etapa 7: Configurando Los Programas
Uma vez, tente todo instalado e o programa cargado al arduino mega para saber se funciona vamos configurar os 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 generara un puerto MIDI
2.-MIDI sem pêlos
Una vez descargado, instalado y abierto
-Seleccionamos el puerto del arduino deberia de aparecer como COMx
-Ativamos a opção de depurar mensagens MIDI (Para saber que numero de tecla estamos tocando)
-Para probar que ele funcione seleccionamos en MIDI IN Microsoft Wavetable Synth
Uma vez que comprobado que funciona entonces se puede cambiar el MIDI IN y MIDI OUT al puerto creado en loopMIDI para usarlo en el programa que desees
-Despues vamos a la parte de
Arquivo - Preferências
Y cambiamos el baud rate 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 normalmente
Etapa 8: Como Cambiar Las Notas
Em caso de configuração de matriz sea diferente pero si das notas entonces pode ser que la configuracion no sea la misma en este caso tendrias que cambiar en el codigo de arduino la tecla que corresponde
O primeiro identifica a tecla da nota numero 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 por la nota que corresponde dependiendo del siguiente codigo MIDI
usermanuals.finalemusic.com/Finale2012Win/Content/Finale/MIDI_Note_to_Pitch_Table.htm
Você utiliza desde la primera octava hasta la quinta octava