Lea la entrada de mi blog "Byte and Switch" -- cubre este escenario exacto.
La respuesta corta es que se necesita un diodo en vacío para conducir la corriente cuando el MOSFET se apaga; el solenoide tiene una inductancia que almacena energía en el campo magnético, y cuando se apaga el MOSFET la inductancia generará la cantidad de tensión necesaria para continuar el flujo de esa corriente. El pulso de voltaje resultante causará una ruptura en el MOSFET, lo que provoca el daño que usted está viendo.
También deberías añadir un par de resistencias, una desde la salida del microcontrolador a tierra, para asegurarte de que está apagada cuando tu microcontrolador está en reset, y la otra desde el microcontrolador a la puerta del MOSFET, para añadir algo de aislamiento resistivo entre tu interruptor de alimentación y tu microcontrolador.
edit: Acabo de ver que estás usando un MOSFET BS170. ¿Has mirado la hoja de datos? Esta es una mala elección para un MOSFET utilizado como interruptor de potencia de un microcontrolador.
En primer lugar, el MOSFET está especificado a 10V Vgs. Lo estás alimentando desde un microcontrolador de 5V. Tienes que asegurarte de que utilizas MOSFETs que son de "nivel lógico" y tienen una resistencia de encendido especificada a 4,5V o 3,3V Vgs. (Te sugiero que no uses MOSFETs de voltaje ultra bajo ya que existe la posibilidad de que se encienda débilmente cuando crees que está apagado).
Más importante aún, es un pequeño MOSFET TO-92 especificado a 5 ohmios Rdson máximo a 10V Vgs. Este MOSFET está bien para cargas muy pequeñas como los LEDs que consumen unos pocos miliamperios. Pero los solenoides suelen consumir decenas o cientos de miliamperios, y tienes que calcular la pérdida de I2R en tu MOSFET para la carga de corriente que consume, y asegurarte de que no hace que tu transistor se sobrecaliente. Mira la resistencia térmica R theta J-A en la hoja de datos y podrás estimar el aumento de temperatura de la pieza.
Usa un MOSFET en el rango de 20V-60V que tenga una menor resistencia de encendido -- como dije en mi comentario, necesitamos saber cuánta corriente consume tu solenoide si vamos a ayudarte.
2 votos
¿Cuánta corriente consume su solenoide? Tiene que elegir un MOSFET de tamaño adecuado y no podemos responder a esa pregunta sin conocer los requisitos de corriente.
2 votos
¿Puedes enlazar la hoja de datos del solenoide? O al menos conectarlo con un amperímetro a 12V y decirnos la corriente que consume?
0 votos
¿Se calienta el MOSFET?
0 votos
markrages: ebay.com/itm/290655223999 Rocketmagnet: Sí, así es.
0 votos
Tensión de conducción deficiente. Utiliza un transistor NPN bipolar universal para llevar la tensión de control a 12V, y luego conduce un MOSFET de canal P con eso (porque la polaridad será cambiada por el transistor extra). Utiliza una resistencia limitadora de corriente para la base y una resistencia pull-up para el colector, como es habitual. Conecta también una tapa de filtrado entre D y S del MOSFET porque un diodo por sí mismo puede no ser lo suficientemente rápido para interceptar el pico de la bobina. Si la inductancia es enorme, es posible que quieras crear un desvanecimiento con un elemento RC integrador en la entrada.