¿Cómo operar un motor BLDC?

0

Estoy usando un Arduino Uno para operar un motor BLDC usando el controlador MOSFET IR2110 y el MOSFET IRFZ44N. Pero cada vez, todos los MOSFET del lado bajo y el controlador de fase 3 (IR2110) se están quemando. En esta posición, mi motor solo vibra pero no se mueve. ¿Cómo resuelvo esto?

void AH_BL()
{
  PORTB  =  0x04;
  PORTD &= ~0x18;
  PORTD |=  0x20;
  TCCR1A =  0;            // Turn pin 11 (OC2A) PWM ON (pin 9 & pin 10 OFF)
  TCCR2A =  0x81;         //
}
void AH_CL()
{
  PORTB  =  0x02;
  PORTD &= ~0x18;
  PORTD |=  0x20;
  TCCR1A =  0;            // Turn pin 11 (OC2A) PWM ON (pin 9 & pin 10 OFF)
  TCCR2A =  0x81;         //
}
void BH_CL()
{
  PORTB  =  0x02;
  PORTD &= ~0x28;
  PORTD |=  0x10;
  TCCR2A =  0;            // Turn pin 10 (OC1B) PWM ON (pin 9 & pin 11 OFF)
  TCCR1A =  0x21;         //
}
void BH_AL()
{
  PORTB  =  0x08;
  PORTD &= ~0x28;
  PORTD |=  0x10;
  TCCR2A =  0;            // Turn pin 10 (OC1B) PWM ON (pin 9 & pin 11 OFF)
  TCCR1A =  0x21;         //
}
void CH_AL()
{
  PORTB  =  0x08;
  PORTD &= ~0x30;
  PORTD |=  0x08;
  TCCR2A =  0;            // Turn pin 9 (OC1A) PWM ON (pin 10 & pin 11 OFF)
  TCCR1A =  0x81;         //
}
void CH_BL()
{
  PORTB  =  0x04;
  PORTD &= ~0x30;
  PORTD |=  0x08;
  TCCR2A =  0;            // Turn pin 9 (OC1A) PWM ON (pin 10 & pin 11 OFF)
  TCCR1A =  0x81;         //
}
    
pregunta Pradhan Ashutosh

1 respuesta

1

Creo que las causas más comunes para quemar mosfets del lado bajo son: falta de tiempo muerto en modo PWM o errores en las tablas de conmutación.

Lo que yo aconsejaría:

  • Haga una tabla de conmutación simple en una caja de conmutador sin PWM. Solo para verificar que el motor gire y que sus componentes electrónicos estén correctos (el voltaje y la corriente deben limitarse mediante el uso de una fuente de alimentación de laboratorio). O no conecte el motor y mida los voltajes de la puerta con un multimetro paso a paso.
  • Asegúrese de hacer los cálculos en los componentes. Concéntrese en los tiempos de encendido / apagado de MOSFET, la tasa de carga de la puerta, la corriente máxima del controlador y el voltaje máximo de la fuente de drenaje. Esto permite calcular un valor correcto del condensador de arranque (¿está utilizando 22uF? Esto es camino a alto).
  • Comience a cavar en la hoja de datos de los microcontroladores para encontrar una manera de habilitar PWM de complemento con tiempo muerto; si no está disponible, la mayor parte de la corriente se moverá libremente a través de los diodos del MOSFET, lo que puede ser la causa de un sobrecalentamiento extremo. Así que una solución rápida pero muy sucia es agregar diodos paralelos (con amante Vf) a los MOSFET.
respondido por el Frank Berndsen

Lea otras preguntas en las etiquetas