6 votos

El MOSFET de canal P como interruptor de lado alto se calienta

Estoy intentando controlar las luces delanteras de mi coche con un Arduino Nano. En total hay 14 luces (incluyendo los faros antiniebla y los intermitentes, etc.). Estoy usando dos registros de desplazamiento 75HC595 para controlar estas luces. En mi coche también tengo 14 LEDs para poder ver qué luces están encendidas. Para conmutar las luces quería usar MOSFETs, pero como todas las luces tienen una tierra común debo usarlos como interruptor de lado alto -> canal P. Estoy usando el IRF4905. Las luces que estoy conmutando son de 55W. A 12V la corriente que fluye es de unos 5A, lo que no debería ser un problema, ¿verdad? El problema es que el MOSFET se calienta mucho después de poco tiempo.

Este es el circuito que utilicé para conmutar una luz (todas las luces serían un cuadro enorme). El transistor es el BC547C. El relé es el estándar de mi coche. No pude encontrar la bombilla en Fritzing así que usé una resistencia (R6 es la bombilla). El valor de R6 no es correcto

p-channel mosfet arduino 74hc959 high-side switch Cuando la luz está encendida hay unos 11,52V a través del terminal (+) de la batería y el lado negativo de la luz, pero hay 10,85V a través de la propia luz. Entonces, ¿estoy en lo cierto si digo que hay 0,67V a través del MOSFET? He medido la corriente y es de unos 2,58A.

\$0.67V \cdot 2.58A = 1.7W\$ en el MOSFET

\${{0.67V}\over{2.58A}} = 0.26\Omega\$ mientras que \$R_{dson} = 0.02\Omega\$

Si estoy haciendo algo mal en mis cálculos, por favor, dímelo. Hay algo mal en mi circuito o tengo un lote defectuoso de MOSFETs (probado 3 diferentes)?

Editar : Ya he intentado quitar el 74HC595 del circuito pero sigue funcionando en caliente.

p-channel mosfet arduino high-side switch

0 votos

Lo que tienes en tu diagrama es un MOSFET de canal N.

0 votos

@brhans buena decisión, lo cambié

0 votos

Y 0,67 / 2,58 no es igual a 0,02 ohmios, es más bien 0,3. Esto sugiere que necesitas medir la tensión de puerta del FET. Debe ser menos de 2 voltios.

6voto

Asher M Puntos 11

El problema

El pin /OE (output enable) del 74CH595 conmuta los controladores de salida entre dos estados: conducción de las salidas (alta o baja) y alta impedancia (dejando flotar las líneas de salida). Es activo bajo Por lo tanto, si /OE está bajo, el 74CH595 conduce las salidas a un nivel alto o bajo, dependiendo de los datos que se hayan introducido, mientras que si /OE está alto, las salidas flotan sin ser conducidas.

Has unido el pin /OE a la alimentación de 5 V a través de la resistencia de 10 kΩ R29, por lo que los drivers de salida están siempre en estado de alta impedancia .

Lo ideal sería que no fluyera ninguna corriente en este estado y, en consecuencia, el bjt NPN sin nombre nunca conduciría ninguna corriente, pero en la práctica siempre hay alguna corriente de fuga presente:

No existe un "BC447C", así que supongo que el transistor es un BC447, un BC547C o alguna otra pieza similar. Si, por ejemplo, se filtrara +1 μA de la salida del 74CH595 al colector del BJT, la ganancia de corriente continua del transistor (probablemente entre 100 y 600) haría que condujera de 100 μA a 600 μA de corriente del colector al emisor. Por ejemplo, una corriente de colector de 300 μA conduciría a una caída de tensión de 3 V sobre la resistencia R7 de 10 kΩ, lo que llevaría a una Vgs (tensión de puerta a fuente) de -3 V.

Esta hipótesis es coherente con lo que has visto (Ids de 2,58 A y Vds de 0,67V), la tensión de puerta debe estar muy cerca de la tensión de umbral (Vgsth):

El arreglo

  • Añade una resistencia pull-down entre la base del BJT y tierra para evitar que las corrientes parásitas lo enciendan.

  • Retira la innecesaria resistencia de 10 kΩ R29, y conecta el pin /OE directamente a tierra.

  • El LED se iluminaría muy débilmente en su configuración actual. Ponlo en paralelo con la base del transistor, con una resistencia limitadora de corriente independiente.

  • Añade un condensador de bypass para el 74HC595, lo más cerca posible del 74HC595.

  • Si esto se va a instalar en un coche, yo añadiría una protección contra transitorios para la puerta del MOSFET con el fin de protegerlo de cualquier pico de tensión (el óxido de la puerta se destruye fácilmente por sobretensión). Un diodo TVS de 15 V sería ideal, pero un zener también funcionará.

Los componentes que has elegido están bien para lo que estás haciendo.

schematic

simular este circuito - Esquema creado con CircuitLab

1 votos

Excelente respuesta, quizás mencionar que la tapa de desacoplamiento C1 debe estar físicamente lo más cerca posible del registro de desplazamiento para tener el efecto deseado.

0 votos

Buena explicación, pero como he dicho en los comentarios, ya he probado a quitar el 74HC595 del circuito y sigue funcionando en caliente. He cambiado el nombre del transistor, errata. Tuve un error en el dibujo del circuito. También debería haber un cable desde el pin /OE hasta el D7 de Arduino. De esta manera puedo controlar cuando las luces deben funcionar. Cuando conecto /OE directamente a GND todas las luces se encienden al arrancar el Arduino, y eso es algo que no quiero.

0 votos

@fieldhof Todavía quieres esa resistencia de 10k desde la base del BJT NPN a tierra, incluso sin el registro de desplazamiento. Cuando el arduino arranca, los pines IO del ATmega328/ATmega168 se configuran como entradas, y la corriente de fuga de entrada puede llegar a ser de 1 A. ¿Podría medir el voltaje de la puerta del MOSFET a la fuente con un voltímetro, todavía sospecho que la puerta no está siendo impulsada lo suficientemente bajo, ya que el MOSFET sólo debe disipar 133 mW a 2,56 A.

0voto

Autistic Puntos 1846

Ahora podemos decir que el chan de la puerta tiene una resistencia lo suficientemente baja y que los voltios de la fuente de la puerta son adecuados. No hay protección para la puerta, por lo que podría dañar los fets por los picos de la fuente de alimentación. Coloque un zener de 18V entre la fuente de la puerta y pruebe de nuevo. Otra posibilidad son las oscilaciones parasitarias que un osciloscopio podría probar o refutar. Creo que debería colocar una resistencia de la puerta en serie con la puerta de, por ejemplo, 1K ohm para eliminar la posibilidad de parásitos. Su carril de 12V debe tener algunas tapas de desacoplamiento también.

0 votos

¿Puede una batería de coche dar picos cuando no está conectada a nada más que a este circuito? No se está cargando ni nada, sólo este circuito está conectado a la batería. La resistencia de la puerta se puede colocar entre el colector y la puerta, si he entendido bien?

1 votos

Si pones la resistencia de puerta de 1K propuesta en el colector, el accionamiento de la puerta se reduce a la mitad, lo que hará que se caliente más.Si debes ponerla en el colector, entonces haz que R7 sea de 10K ohmios.

0 votos

¿A qué te refieres con lo de poner una resistencia de puerta en serie con la puerta? Ya cambié R7 por una resistencia de 10K ohmios

0voto

mactro Puntos 201

Creo que la respuesta correcta sería que el MOSFET se está calentando porque así debe ser.

Hagamos algunos cálculos: Según la hoja de datos del IRF4905, tiene una resistencia térmica de la unión al ambiente \$R_{ja}\$ =62°C. Supongamos que la temperatura ambiente \$T_a\$ de 25°C y una potencia disipada de 1,7W. Ahora, según este sitio: http://www.rohm.com/web/eu/tr_what7 para calcular la temperatura de la unión se tiene la siguiente ecuación: $$T_j = T_a + R_{ja}*P$$ Al hacer los cálculos para tu caso, obtienes una temperatura de unión de 130°C - bastante caliente, pero no lo suficiente como para causar ningún daño al transistor. Aun así, si quieres ponerlo en algún compartimento, te sugeriría añadir un disipador. Seguir los consejos de diseño del circuito dados por jms es también una buena idea.

1 votos

Aunque tus matemáticas son sólidas, la premisa no lo es. A una temperatura de unión de 130 °C, Rdson se convertiría (según el hoja de datos fig. 4) 1,55 veces los 20 m anunciados (lo que supone una temperatura de unión de 20 °C), 31 m. Para obtener los supuestos 1,7 W de disipación a lo largo de 31 m, se necesitaría una corriente de 54,8 A. Creo que es seguro decir que la lámpara de 55 W no está consumiendo 670 W de potencia. O bien el MOSFET está dañado, o la tensión de puerta es inadecuada.

0 votos

@jms Tienes razón, y creo que yo también (al menos parcialmente) :) Con la caída de voltaje y la corriente dada por fieldhof, habría 1,7W disipados en el transistor y mis cálculos de temperatura son correctos. Pero estoy de acuerdo, que no debería haber tal caída de voltaje allí - probablemente no está completamente abierto.

0voto

luchador Puntos 74

Mi idea es que el punto de tierra del pin de la fuente del MOSFET es inductivo tanto como patear el voltaje de la fuente hacia arriba y caer el voltaje de la puerta bajo theresold después del borde ascendente, causando una nueva patada inductiva después de la subida de Vgs, la preparación de las condiciones casi igual con la primera patada, suficiente para hacer una oscilación estable. Por lo tanto, la receta es reducir la velocidad de subida de la tensión de encendido O mejorar las conexiones a tierra.

Si primero se encienden las luces por el relé, luego se enciende el MOSFET y luego se apaga el relé, y si el MOSFET va bien, entonces esto es una buena pista que apoya mi idea.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X