12 votos

Alta voltaje PWM Controlador de Motor - Mosfets Explotar

He buscado en cada publicación una respuesta a este problema. He construido un circuito controlador de motor como se muestra en este diagrama. Enlace del circuito
Hice el diagrama lo más preciso posible. Los diodos en los mosfets fueron agregados para que el símbolo del mosfet se pareciera justo al símbolo en la hoja de datos.
Como puedes ver, es un circuito PWM muy simple utilizando una placa Arduino UNO. Un pedal potenciómetro está conectado a una de las entradas analógicas y se utiliza para determinar el ciclo de trabajo de la salida pwm en el pin de salida digital 6.

El motor es el motor más pequeño de 48v de este tipo que fabrica motenergy, pero este es un motor muy grande en comparación con otros circuitos que he visto así. Puede tirar fácilmente alrededor de 200 Amperios al arrancar.

El circuito funciona de cierta manera - cuando el vehículo está elevado para que las ruedas no toquen el suelo. En ese estado, es muy fácil para el motor girar y no consume tanta corriente. Cuando las ruedas están en el suelo, los mosfets explotan en el momento en que comienzas a presionar el pedal. He construido este circuito unas 4 veces por ahora. Incluso usé 18 mosfets en paralelo en una versión, y todos los 18 explotaron instantáneamente. (200/18 = cerca de 7 Amperios/mosfet) Cada mosfet debería manejar 32 Amperios.

Finalmente, solo compramos un controlador de motor de alltrax, y el vehículo funciona bien, pero estoy decidido a descubrir por qué mi propio controlador de motor no funcionó. Amo la electrónica, y he construido muchos circuitos complicados a lo largo de los años. No podré dormir bien hasta que descubra qué estoy haciendo mal.

Hablé con un técnico de Alltrax, y dijo que sus controladores no son más que un montón de mosfets y capacitores. Dijo que los capacitores evitaban que los mosfets explotaran, pero no tenía idea de cómo estaban cableados en el circuito. Creo que tiene parte de mi información faltante.

Entonces, ¿alguien puede decirme qué estoy haciendo mal? ¿Cómo debo agregar capacitores para solucionar esto? ¿Podría ser la frecuencia? Modificamos el temporizador en el Arduino para que nuestra frecuencia PWM fuera alrededor de 8000 Hercios, pero el controlador de Alltrax funciona a increíbles 18,000 Hercios. Sé que 18k es poco en comparación con otros controladores de motor, pero pensé que un motor gigante preferiría una frecuencia más baja.

Además, antes de que digas que los mosfets no pueden estar cableados en paralelo debido a pequeñas diferencias entre ellos, utilicé exactamente 7 pulgadas de alambre calibre 18 para conectar cada uno en paralelo. El alambre pequeño actuaría como una resistencia minúscula y garantizaría que cada uno compartiera la carga de corriente.

Gracias por sus respuestas.

2 votos

Sigues hablando sobre algún controlador Alltrax, pero no es visible en el esquema.

0 votos

Tuve que renunciar a construir un controlador de motor y usar un controlador de motor Alltrax debido al tiempo.

1 votos

¿El número de parte de los MOSFET en el esquemático es preciso/correcto?

30voto

chharvey Puntos 121

Aquí está el hoja de datos que debería estar vinculado a su pregunta. No debería tener que buscarlo.

Cada mosfet debe manejar 32 amperios

Eso es con \$V_{GS}=10\$ V


Usted establece \$V_{GS}\$ a \$5V×\frac{R_2}{R_1+R_2}=4.54V\$ , realmente quieres todo el voltaje que puedas aquí (5V parece ser tu máximo). Si yo fuera usted, cambiaría \$R_1\$ a 10~50 y \$R_2\$ a 100k~1M. Porque si no estás abriendo el MOSFET completamente, entonces tendrá demasiada resistencia y.... explotar.

Con \$V_{GS}=10V\$ El \$R_{DS(on)}\$ es como máximo 35m

\$P=I^2×R=(32A)^2×0.035=35.84W\$ esto significa que ~36W es la disipación de energía esperada cuando \$V_{GS}=10V\$

Con \$V_{GS}=5V\$ El \$R_{DS(on)}\$ es de un máximo de 45m según la hoja de datos.

\$35.84W=I^2×0.045\$ y si movemos la I de un lado a otro obtenemos: \$I=\sqrt{\frac{35.84}{0.045}}=28.2A\$ por lo que se puede esperar que 28A pasen con seguridad por el MOSFET SI se fijan los valores de las resistencias. Definitivamente deberías conseguir un disipador de calor para los MOSFETS. Quizás incluso una refrigeración activa con un ventilador.

Modificamos el temporizador en el Arduino para que nuestra frecuencia PWM fuera de unos 8000 Hertz.

No es necesario tan alto, 800Hz sería aceptable, eso es lo que los controladores BLDC comunes (ESC) cambiar en. (Si no me equivoco).


Lo que intentas hacer es cargar una compuerta con una resistencia en serie, se parece a la imagen de abajo y podemos usar ese modelo para más ecuaciones.

La capacitancia de la puerta( \$C_{iss}\$ ) tiene un valor máximo de \$1040pF\$

Las resistencias y el MOSFET forman este circuito:

RC circuit

\$C=C_{iss}×3=3120pF\$ porque tienes 3 en paralelo.

\$R=R_1||R_2=909\$

\$Vs=4.54V\$

La tensión sobre el condensador sigue esta ecuación: $$V_c=V_e×(1-e^{\frac{-t}{RC}})$$ donde \$V_c\$ es la tensión en el condensador y \$V_e\$ es con lo que lo alimentas, en nuestro caso es \$Vs=4.54V\$ .

Estás enviando PWM's y te voy a poner en el peor de los casos, Es cuando estás tratando de hacer analogWrite(1) , es decir, un ciclo de trabajo de \$\frac{1}{256}\$ . Así que el tiempo que su señal comienza a subir hasta que termina con ese ciclo de trabajo y 8kHz es \$\frac{1}{256}×\frac{1}{8000}=\$ 488,3 nanosegundos.

Introduzcamos los números en la ecuación anterior para ver cuál será el voltaje en la puerta. $$V_c=4.54V×(1-e^{\frac{-488.3×10^-9}{(909)×(3120×10^-12)}})=0.71V$$

El MOSFET comienza a abrirse a un mínimo de 1V y a un máximo de 2,5V. Así que en el peor de los casos ni siquiera se puede abrir la puerta. Así que ha estado cerrada todo el tiempo.


Otra cosa que realmente necesito señalar que es la razón más probable de por qué sus MOSFETS se están rompiendo es porque cuando se conmuta lo hace de manera lentamente debido a las gigantescas resistencias y con tantas capacitancias de puerta. Eso significa que cuando los MOSFET's están a punto de conmutar pasan mucha corriente mientras tienen mucho voltaje sobre ellos. Y \$P=I×V\$ => realmente mucho calor.

Vea esta imagen:

switching losses

Como puede entender, usted no quiere estar donde la línea azul y la línea roja se cruzan. Y la anchura de esa transición es la misma independientemente de la frecuencia de conmutación, así que cuanto más a menudo se conmuta, más tiempo se pasa en esa dolorosa transición. Se llama pérdidas de conmutación. Y se escala linealmente con la frecuencia de conmutación. Y tus altas resistencias, alta capacitancia, alta frecuencia de conmutación, muy probablemente te hace permanecer en esa fase de transición todo el tiempo. Y eso equivale a explosiones o a la rotura de MOSFETS.


No tengo tiempo para hacer más cálculos, pero creo que se entiende lo esencial. Aquí tienes una enlace a un esquema si quieres jugar. Lo que ¡debería! .


Mi último consejo es que consigas un driver MOSFET para que puedas bombear varios AMPS a la puerta, ahora mismo estás bombeando miliamperios.


Por cierto Doctor Circuit, con respecto a su último párrafo, eso es sólo un problema con los transistores BJT, que entregan más corriente cuanto más calientes están, los MOSFET sin embargo entregan menos corriente cuanto más calientes están, por lo que no necesitan ningún tipo de equilibrio especial, se equilibrarán automáticamente.


CONTINUACIÓN, tiempo de subida y tiempo de bajada.

Fui bastante mezquino en el ejemplo anterior, 8kHz de conmutación y 1/256 de ciclo de trabajo. Seré más amable y miraré el 50% de ciclo de trabajo = 128/256. Quiero saber y decirle cuánto tiempo está en su transición dolorosa.

Así que tenemos los siguientes parámetros relevantes para el doloroso transición:

\$t_{d(on)}\$ = Tiempo de retardo de encendido
\$t_r\$ = Tiempo de subida del encendido
\$t_{d(off)}\$ = Tiempo de retardo de apagado
\$t_f\$ = Tiempo de caída de la desconexión

Haré algunas aproximaciones desagradables, supondré que la meseta de Miller no existe, supondré que el voltaje a través del MOSFET disminuye linealmente cuando se enciende y aumenta linealmente cuando se apaga. Asumiré que la corriente que fluye a través del MOSFET aumenta linealmente cuando se enciende y disminuye linealmente cuando se apaga. Asumiré que tu motor consume 200A durante el estado estacionario de un ciclo de trabajo del 50% con alguna carga, digamos tu cuerpo. Así que 200A mientras estás en él y acelerando. (Cuanto más par tenga el motor, más corriente consumirá proporcionalmente).

Ahora a los números. De la hoja de datos sabemos los siguientes valores máximos:

\$t_{d(on)}\$ = 40ns
\$t_r\$ = 430ns
\$t_{d(off)}\$ = 130ns
\$t_f\$ = 230ns

Así que bien, primero quiero saber cuánto tiempo de 8kHz dura la transición anterior. La transición ocurre una vez cada período. Los retrasos no afectan realmente a la transición (a menos que estemos cambiando a frecuencias realmente muy altas, como 1MHz).

tiempo en transición con un ciclo de trabajo del 50% y fs a 8kHz = \$\frac{t_r+t_f}{\frac{1}{8000}} = 0.00528 = 0.528\%\$ Pensé que vería un valor mucho más grande, esto es ignorando el miller-plateau y las cosas parásitas, e ignorando la carga lenta de la puerta. También se ignora el hecho de que el tiempo de subida y el tiempo de bajada es en realidad del 10% al 90% de la señal, no del 0% al 100% que estoy asumiendo en mis cálculos. Así que yo multiplicaría el 0,528 por 2 para hacer mi aproximación más cercana a la realidad. Así que el 1%.

Ahora sabemos con qué frecuencia pasamos por esa dolorosa transición. Veamos cuán dolorosa es realmente.

\$P = \frac{1}{T}\intop_0^T P(t)dt\$

\$V_r(t)=48V(1-\frac{t}{430ns})\$
\$I_r(t)=\frac{200A}{430ns}t\$

\$V_f(t)=\frac{48V}{230ns}t\$
\$I_f(t)=200A(1-\frac{t}{230ns})\$

\$P = P_r+P_f\$
\$P_r = \frac{1}{t_r}\intop_0^{t_r} V_r(t)×I_r(t) dt\$
\$P_f = \frac{1}{t_f}\intop_0^{t_f} V_f(t)×I_f(t) dt\$

\$P_r = 1600W\$ ¡LOL!integrate((48(1-x%2F(43010%5E-9)))(200%2F(43010%5E-9)))+from+0+to+(43010%5E-9))
\$P_f = 1600W\$ [La misma respuesta, extraña](http://www.wolframalpha.com/input/?i=(1%2F(230
10%5E-9))integrate((48x%2F(23010%5E-9))(200(1-x%2F(23010%5E-9))))%20from%200%20to%20(230*10%5E-9))
\$P = P_r + P_f = 3200W\$

Ahora volvamos a la frecuencia con la que pasó en esta transición de 3200W. Fue alrededor del 1% cuando la realidad se hace presente. (y pensé que sería mucho más a menudo).

\$P_{avg}=3200W×1\%=32W\$ Hmm, de nuevo pensé que vería algo mucho... más grande.


Y... ¡calculemos el otro 99% del tiempo! Que se me olvidó por completo. ¡Aquí está la mayor explosión! Sabía que había algo que había olvidado.

\$P=I^2×R=(200A)^2×(0.045)=1800W\$ Y pasas el 49,5% del tiempo en este modo de conducción. Así que su total \$P_{50\%@8kHz}=32W+1800W×49.5\%=923W\$

Con 3 MOSFET's en paralelo es \$32W+\frac{1800W×49.5\%}{3}=329W\$ por MOSFET. Eso sigue siendo... ¡EX-PU-LOSIVO!

Ya está. Ahí está la bomba que estás buscando. EX-PU-LOSION

Esta es mi última edición.

4 votos

Creo que estás mostrando claramente lo difícil que es conducir 13 caballos de manera segura y fiable. ¿Y qué pasa con los bocetos dudosos? ¿Qué hace el motor cuando el OP carga un nuevo boceto y los pines están flotando/indefinidos? Y posiblemente poniendo en corto la fuente de 48V, eso será interesante. Hay mucho por hacer para evitar la decepción/un incendio...

7 votos

Bueno, vamos a alegrarnos de que esté jugando con 48V y no con 480V. Puedes sobrevivir quemaduras y aprender para toda la vida, pero es difícil aprender de la muerte por un fallo cardíaco.

1 votos

El motor en sí mismo también podría ser peligroso, o mejor dicho, el vehículo. Su potencia es una décima parte de la de un motor de coche común, o la potencia promedio utilizada por el conductor que va delante de ti. Es suficiente potencia para lesionar a alguien al golpearlo con un vehículo.

8voto

NuSkooler Puntos 2679

Los modernos MOSFET necesitan un cambio rápido, para evitar permanecer en una región peligrosa donde la retroalimentación positiva (interna al silicio) causa destrucción. Lea los párrafos finales de esta respuesta para la explicación del documento de la NASA.

RESUMEN RÁPIDO: Esa resistencia de puerta ----- 1Kohm ----- es demasiado grande. Utilice un IC controlador de potencia, con un condensador de derivación de 0.1UF en su VDD de 12/15/18 voltios para que las puertas de sus MOSFET puedan cargarse rápidamente para una activación rápida.

Los MOSFET se habrán destruido debido a las clasificaciones del área de operación segura AOS, donde Voltaje * Corriente * Ancho de pulso define la disipación de potencia.

Suponiendo que las uniones del FET tienen 10U de profundidad (estimación bruta) tiene TAU de 1.14 microsegundos para la constante de tiempo térmico del área activa del FET. Con la Multiplicación de Miller, el tiempo de encendido superará eso, con 48 voltios a través de los FET y sin limitación de corriente.

\===================================

edita Marzo 18, 2018

La NASA diagnosticó fallas de MOSFET en varios diseños en curso debido al uso de MOSFET MODERNOS (la descripción de la NASA apareció en 2010; la industria automotriz encontró este mecanismo de falla en 1997). El comportamiento previamente de coeficiente de temperatura negativo de los MOSFET de tecnología anterior se ha trasladado a las regiones de corriente más alta, y ahora existe una nueva región peligrosa en la región moderadamente encendida. La NASA hizo que esos proyectos volvieran a la TECNOLOGÍA ANTIGUA, para que se pudieran construir sistemas confiables.

¿Qué significa esto hoy? Bastante simple

--- No permanezca más de 1 microsegundo en la región de cambio. ---

--- Cargue rápidamente la capacitancia de la compuerta, incluida la capacitancia compuerta-drenaje. ---

El título del documento de la NASA [publicado en 2010] es

"Caracterización de Operación de Inestabilidad Térmica de MOSFET de Potencia" y la frase clave se cita aquí "los diseños que se están produciendo permiten que la región dominada por portadores de carga (una vez pequeña y fuera del área de preocupación) se vuelva importante y esté dentro del área de operación segura (AOS)".

Con respecto a los diseños de MOSFET más antiguos (robustos), extraigo esta oración:

"Los MOSFET anteriores se ejecutaban principalmente en la región dominada por movilidad de carga. Manteniendo el mismo voltaje de puerta, la región dominada por movilidad de carga reduce la corriente a medida que aumentan las temperaturas, disminuyendo a su vez la corriente permitiendo que el sistema tenga retroalimentación negativa alejada del colapso térmico. De hecho, cuando los nuevos MOSFET de potencia tienen voltajes de puerta altos, las piezas están dominadas por movilidad de carga. Ha sido la intención no expresada de los fabricantes mantener los MOSFET en la región dominada por movilidad de carga, ya que se utilizan como un interruptor de alta velocidad. Las partes antiguas tienen un área dominada por portadores de carga. Sin embargo, el área está fuera de la AOS normal y las fallas ocurren por otras razones."

8voto

ShaneB Puntos 1384

Primero, elegiste los FET incorrectos.

El FQP30N06 tiene 40 mOhm RdsON a Vgs=10V. A Vgs=5V no está especificado, lo que significa que no funcionará.

Elegir un MOSFET es un compromiso: los MOSFET grandes con grandes troqueles de silicio y bajo RdsON tienen mucha capacitancia y cambian lentamente. Los MOSFET más pequeños cambian más rápido pero tienen un RdsON más alto.

Sin embargo, vas a cambiar a 500-1000 Hz, y tu corriente es enorme, por lo que RdsON importa mucho más que la velocidad.

Por lo tanto, debes seleccionar MOSFETs To-220 (para enfriamiento) con un RdsON muy bajo (como unos pocos mOhms), especificado en un Vgs de... sigue leyendo.

Segundo, estás utilizando un drive de puerta de 5V en un FET que está especificado para un drive de puerta de 10V, por lo que no está completamente encendido. Por lo tanto se calienta y explota. Cualquiera puede ver eso mirando la hoja de datos.

Teniendo en cuenta la corriente, yo iría con un drive de puerta de 12V para hacer que RdsON sea lo más bajo posible. Por lo tanto, puedes elegir FETs especificados para 5V o 10V Vgs, no hay problema.

Ok. Ahora tienes un montón de FETs y necesitas controlarlos con 12V. Obviamente necesitas un driver que entregue unos pocos amperios a la puerta para encenderlo y apagarlo rápidamente. Revisa la categoría "driver de MOSFET" en mouser/digikey, hay toneladas de productos adecuados que aceptarán los 5V de tu arduino y controlarán correctamente un FET.

Necesitarás una fuente de 12V, pero eso no es un problema ya que tienes algunos 48V, usa un conversor DC-DC.

Tercero, necesitas desechar el arduino.

Este tipo de controlador necesita un límite de corriente, y esto necesita actuarse antes de que los MOSFETs exploten (no después).

La manera de hacer esto es muy sencilla. Colocas un sensor de corriente (probablemente un efecto Hall aquí) y un comparador. Cuando la corriente supera un umbral, se restablece el PWM, espera un poco y luego se reanuda. Cuando la corriente supera un umbral mucho mayor, esto significa que alguien metió un destornillador en los terminales de salida, por lo que el PWM se detiene de forma permanente y no se reanuda.

Esto necesita ocurrir a una velocidad que es incompatible con el software.

La mayoría de los microcontroladores comercializados para el control de motores incluyen comparadores analógicos conectados a la unidad PWM, para este propósito específico. El micro en el arduino no es uno de esos.

4voto

Autistic Puntos 1846

No hay sensado de corriente actual y por lo tanto no hay limitación de corriente en su controlador de motor. La corriente del motor prospectivo a cero rpm podría ser de miles de amperios porque la resistencia del devanado de motores DC grandes puede ser de miliohms. Debería aplicar algún tipo de límite de corriente a menos que quiera usar una enorme cantidad de mosfets y aún así correr el riesgo de que exploten. Su control de gate debe ser verificado en un osciloscopio. Probablemente sea demasiado lento causando un calentamiento excesivo de los mosfets. Considere un chip controlador o algún tipo de circuito de control discreto. Su controlador de motor, al igual que la mayoría, está realizando un switching duro y por lo tanto tiene pérdidas de switching que son proporcionales a la frecuencia. Intente reducir la frecuencia de PWM probando para ver si hay ruido de audio objetable. Puede ser capaz de reducir en gran medida la frecuencia sin obtener mucho chillido. Esto enfriará los fets. Ahora coloque algo de capacitancia de derivación a través de la línea de 48V cerca de los fets para defenderse contra picos de voltaje de apagado. Asegúrese de que su diodo de rueda libre sea rápido. Si es demasiado lento, entonces los mosfets sufren estrés adicional al encenderse, calentándolos más.

2voto

ozmank Puntos 127

Si tienes un modelo preciso de todos los componentes de LTSpice, puedes analizar por qué falla.

Un modelo preciso de la descarga del Q durante el cambio de corriente lleva a la comprensión del diseño de que se necesita seleccionar cuidadosamente el gm de cada etapa o su relación inversa RdsOn.

Si se conoce la relación de interruptores electromecánicos como relés Reed, relés de potencia, solenoides y contactores de potencia grandes, la relación entre la corriente de contacto y la corriente de la bobina disminuye gradualmente de >3k hacia 100:1 La diferencia principal es que la corriente de puerta del FET después del cambio.

Examine la hoja de datos y verifique la tensión RdsOn gate3 que planea utilizar. Debería ser al menos 3 veces el umbral de tensión Vgs(th) para un cambio eficiente.

Sugerencias de Resumen

  • 1) Utilice etapas en cascada de RdsOn como BJT en cascada con una relación hFe de 100

    • por ejemplo, si RdsOn es 1mΩ, entonces use un driver de 100mΩ y eso usará un driver de 10 Ω (o de lo contrario la velocidad de cambio se degrada, la pérdida de potencia aumenta, luego la auto calefacción, lo que lleva a FET fundidos o explotados)
  • 2) Utilice Vgs >= 3x Vgs(th) INDEPENDIENTEMENTE de cuánto esté clasificado Vgs(th) (y < Vgs máx)

  • p.d.

    • Olvidé mencionar junto con 1) que el Rdson de los FET agrupados / la relación DCR del motor debería ser alrededor de 1:100 o 1% (más o menos) para minimizar las pérdidas por conducción. Aunque a menudo se necesita algunos % para la refrigeración por aire forzado y más alto conduce a desastres.

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