Para un (loco) próximo proyecto escolar, estoy convirtiendo un piano para que sea una pianola controlada por computadora. Actualmente estoy planeando usar solenoides montados debajo del extremo de las teclas (obviamente, en el lado de la acción, como el sistema DiskClavier de Yamaha y el sistema PianoDisc).
Estoy planeando usar un Arduino para tomar señales MIDI y controlar todos los solenoides. Necesito PWM en los solenoides para poder controlar la velocidad a la que los solenoides golpean las teclas, determinando así el volumen. El problema es que no es una tarea fácil de controlar, usando PWM, 88 solenoides usando un Arduino.
Pensé que podría usar un generador PWM genérico para generar las señales, y hay placas generadoras servo PWM de 16 canales que son MUY baratas. Sin embargo, los servos requieren un tipo de señal muy específico que es bastante diferente al PWM genérico que necesito aquí. ¿Alguien sabe si estos funcionarán para generar PWM genérico? (enlace: http://www.ebay.com/itm/PCA9685-16-Channel-12-bit-PWM-Servo-motor-Driver-I2C-Module-For-Arduino-Robot-/272557014281?hash=item3f75a9fd09: g:6SIAAOSwax5Yozsi )
Una vez que recibo una señal PWM, ¿puedo usar un MOSFET y un diodo (para protección contra el voltaje de retroceso) para controlar los solenoides directamente?
¿Algo que me esté perdiendo por completo aquí?
Cualquier ayuda y orientación es muy apreciada.
PD Sé que estoy un poco loco tratando de hacer esto.
Olvídese de las locuras: bien por usted, investigar y experimentar es una excelente manera de aprender.
El módulo NXP PCA9685 que identificó controlará los FET, como usted describe. Coloque una resistencia en serie de 1 K entre cada salida PCA9685 y su puerta FET. Esto limita la corriente hacia/desde la capacitancia de la puerta durante la conmutación de la salida PWM a 5 mA máx., de lo contrario, la salida PWM genera un cortocircuito en su flanco ascendente.
También permitiría, o colocaría, un menú desplegable de 10 K a GND en cada salida PWM. La hoja de datos PCA9685 establece que las salidas bajarán durante el reinicio del IC. En el momento del encendido, no desea que docenas de solenoides hagan clic porque no es lo suficientemente inmediato o por algún otro imprevisto. Esto es puramente una precaución, lo que le permite poner un menú desplegable en el pin PCA9685 / OE y hacer que Arduino active la lógica alta una vez que el suministro se haya estabilizado y el circuito se haya asentado. No debería ser necesario, pero es mejor planificarlo y no encajar las piezas en su amarre experimental.
broma
st2000
usuario98663
willem.hill
willem.hill
st2000
usuario98663