¿Cómo controlar una válvula solenoide de 12V con un mosfet?

Estoy intentando controlar una electroválvula de 12V DC a través de un MOSFET (BS170), que recibe su señal de control (5V) de un microcontrolador Arduino. Este es el esquema básico:ingrese la descripción de la imagen aquí

Cuando pruebo el MOSFET, poniendo como Carga un LED con una resistencia de 1.5k ohm (ver foto), funciona bien y puedo controlar la corriente de 12V con la señal de 5V, sin problema.

Pero luego conecto mi válvula solenoide en lugar del LED. Funciona durante unos segundos, luego deja de funcionar y el MOSFET termina conduciendo corriente permanentemente, independientemente del estado del pin de control de 5V.

El MOSFET está permanentemente dañado, porque cuando conecto el LED de nuevo, ya no funciona.

¿Demasiada corriente? Pero cuando agrego una resistencia antes de la válvula, ya no funciona... ¿Tal vez necesito un MOSFET/transistor más pesado?

¿Cuánta corriente consume tu solenoide? Debe elegir un MOSFET de tamaño apropiado y no podemos responder esa pregunta sin conocer los requisitos actuales.
¿Puedes vincular la hoja de datos del solenoide? O al menos conectarlo con un amperímetro a 12V y decirnos la corriente que consume?
¿Se calienta el MOSFET?
markrages: ebay.com/itm/290655223999 Rocketmagnet: Sí, lo hace.
Pobre tensión de conducción. Use un transistor NPN bipolar universal para llevar su voltaje de control a 12 V, luego conduzca un MOSFET de canal P con eso (porque el transistor adicional cambiará la polaridad). Use una resistencia limitadora de corriente para la base y una resistencia pull-up para el colector como de costumbre. También conecte una tapa de filtrado entre D y S del MOSFET porque un diodo en sí mismo puede no ser lo suficientemente rápido para interceptar el pico de la bobina. Si la inductancia es enorme, es posible que desee crear un desvanecimiento con un elemento RC integrador en la entrada.

Respuestas (1)

Lea la entrada de mi blog "Byte and Switch" , cubre este escenario exacto.

La respuesta corta es que necesita un diodo de rueda libre 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 apaga el MOSFET, la inductancia generará la cantidad de voltaje necesaria para continuar el flujo de esa corriente. El pulso de voltaje resultante causará una ruptura en el MOSFET que causa el daño que está viendo.

También debe agregar un par de resistencias, una desde la salida del microcontrolador a tierra, para asegurarse de que esté apagada cuando su microcontrolador esté reiniciado, y la otra desde el microcontrolador a la puerta MOSFET, para agregar un poco de aislamiento resistivo entre su interruptor de alimentación y su microcontrolador

ingrese la descripción de la imagen aquí


editar: acabo de notar 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 alimentación de un microcontrolador.

En primer lugar, el MOSFET se especifica en 10V Vgs. Lo estás suministrando desde un microcontrolador de 5V. Debe asegurarse de usar MOSFET que sean de "nivel lógico" y que tengan una resistencia de encendido especificada en 4,5 V o 3,3 V Vgs. (Le sugiero que no use MOSFET de voltaje ultra bajo, ya que existe la posibilidad de que se encienda débilmente cuando cree que está apagado).

Más importante aún, es un MOSFET TO-92 pequeño especificado a 5 ohmios máximo Rdson a 10V Vgs. Este MOSFET está bien para cargas muy pequeñas como los LED que consumen unos pocos miliamperios. Pero los solenoides generalmente consumen decenas o cientos de miliamperios, y debe calcular la pérdida I2R en su MOSFET para la carga actual que consume, y asegurarse de que no provoque el sobrecalentamiento de su transistor. Mire la resistencia térmica R theta JA en la hoja de datos y podrá estimar cuánto aumento de temperatura hay en la pieza.

Use un MOSFET en el rango de 20V-60V que tenga una resistencia de encendido más baja; como dije en mi comentario, necesitamos saber cuánta corriente consume su solenoide si vamos a ayudarlo.

Aquí se necesita absolutamente un diodo de captura, pero esa no es la causa del tipo de falla "falla después de unos segundos".
¡Gracias por su pronta respuesta! Tonto de mí que no especifiqué la válvula. Este es el: ebay.com/itm/290655223999 Tiene algunos datos, incluida la corriente: 500 mA. Entonces, ¿estoy usando el mosfet equivocado? Por cierto, ¿dónde ves que está clasificado para 10V Vgs? En la hoja de datos veo "+-20" en la fila VGss.
Acabo de cambiar "calificado para" a "especificado en". Puede usar hasta +/-20 V de voltaje de puerta a fuente sin daños, pero si desea que el MOSFET tenga una resistencia de fuente de drenaje garantizada, debe proporcionar 10 V de puerta a fuente, momento en el cual el la resistencia de encendido es como máximo de 5 ohmios, normalmente de 1,2 ohmios, con una carga de 200 mA (consulte Rds (ENCENDIDO) en la página 2). Con una fuente de compuerta de 5 V, habrá una mayor resistencia, por lo que está hablando de uno o dos vatios de disipación de potencia de I2R... todo lo que sabe es que probablemente sea varias veces mayor que 1,2 * (0,5 A)^2 = 0.3W... hasta que el dispositivo se sobrecaliente y falle.
Agregaría un diodo zener para proteger la fuente de puerta de MOSFET. ¿Sería un exceso de matanza?
@JasonS: ¡El diodo de rueda libre funcionó! ¡Así que mi problema está resuelto! Acerca de su último comentario, las válvulas nunca se alimentarán por más de ... digamos 10 segundos (generalmente solo unos segundos). Entonces, ¿supongo que estoy a salvo con esta configuración? Me alegro de que funcione ahora en cualquier caso :-)) Muchas gracias por ayudar.
hmmm... bueno, tienes suerte por ahora. Si necesita que esto funcione correctamente durante mucho tiempo, cambie a un MOSFET de nivel lógico con menor resistencia de encendido.
@abdullah: No es excesivo, aunque rara vez se necesita, a menos que exista el riesgo de que el ruido haga que el voltaje de la puerta/fuente exceda los niveles seguros.
@JasonS: ¿qué sugiere como valor para la resistencia R2 en su diagrama? ¿También en el rango de 100-1Kohm? ¡Gracias!
10K es una especie de valor de resistencia predeterminado en el diseño de circuitos de nivel lógico: es lo suficientemente grande como para mantener bajo el flujo de corriente, pero lo suficientemente bajo como para evitar que los efectos de EMI y corriente de fuga sean un problema. Por lo general, usamos resistencias pullup o pulldown de 10K en nuestros diseños, y eso sería apropiado aquí. Probablemente podría salirse con la suya con un menú desplegable de 100K. No iría por debajo de 10K a menos que necesite un tiempo de apagado súper rápido para el MOSFET en caso de falla de la fuente de alimentación.
@Dyte: MOSFET DEBE estar completamente encendido por 3V o un nivel lógico inferior para funcionar correctamente con microcontroladores de suministro 3V3. Zener de puerta a fuente MUY recomendable, especialmente con cargas inductivas. El diodo inverso (o equivalente) a través de cargas inductivas es absolutamente esencial.
Russell: En 16 años de diseño, nunca tuve que usar un zener desde la puerta hasta la fuente. Supongo que si el diseño tiene mucha inductancia parásita entre la fuente MOSFET y la tierra del microcontrolador, entonces sí, podría estropear la forma de onda de la compuerta, y un zener ayudaría a proteger la compuerta MOSFET, pero ahí hay un problema mayor, como las oscilaciones. en el accionamiento de puerta podría causar pérdidas de conmutación muy grandes.