Estoy probando un motor BDLC trifásico. Tengo una MCU que toma el estado de los sensores de posición (3 basados en el efecto Hall) e impulsa los transistores adecuados en un puente completo para que el motor pueda girar. Los transistores laterales altos del puente están modulados PWM. Hasta ahora, el motor gira, pero he notado un par de cosas que parecen anormales: Si aumento la tensión del enlace de CC (es un suministro de laboratorio regulable) el motor gira más rápido, pero la corriente también aumenta. ¿Por qué el aumento de BEMF no impide que la corriente se incremente? Lo mismo sucede cuando mantengo constante el voltaje del enlace de CC e incremento el ciclo de trabajo. El motor no tiene carga mecánica conectada, pero se sobrecalienta al aumentar la velocidad por cualquiera de los métodos anteriores. Esto indica que no todo el exceso de energía eléctrica se está convirtiendo en energía mecánica. ¿Cuál podría ser la causa de esto?
Si necesita información sobre el motor o el conductor, con gusto lo publicaremos.
EstoyusandounpuenteIGBT.LoscontroladoressonIR2110,optoaisladosdelaMCU.LaMCUdecodificalaentradaysalidadelsensorencuáldelostransistoresdebeestarencendido.LascompuertaslógicasestánconectadasentrelassalidasMCUylasentradasoptoysirvenpara2propósitos:
ModulelasseñalesdecompuertadelladoaltoconlaúnicaseñalPWM,ymodulelasseñalesdelacompuertadelladobajodetalmaneraqueseasegurelacargadelcapacitordearranque.
Soloparaaclararestoúltimo,supongamosqueQ1yQ4deberíanestaractivados.Q4seactivaduranteladuracióndeestepaso.Q1estáactivadoyQ2estáapagadocuandolaseñalPWMesalta.Q1estádesactivadoyQ2estáactivadocuandoPWMestábajo.Estoledaalcapacitorbootstrapunpocodejugoextra.
Acercadelasespecificacionesdelmotor,esunMaxon351144.Suvoltajenominalesde36V.Heprobadoconhasta20Vymenosdel50%deciclodetrabajo.¿Podríaserestaunarazónparalaaltacorriente?Velocidadnominal:60kRPM.Sincorrientedecarga:240mA.Cuandosepruebacon10VyD=35%,alcanzaaproximadamente6000RPM,peromisuministromuestraunacorrientedeaproximadamente0.9AenelenlacedeCC.
Actualización:revisandomiestudiodelmotor,heencontradounproblemaconlasecuenciadepasosqueestabausando.Lasiguienteimagenmuestraloscódigosdelsensordeposiciónylasposiblesdireccionesdelcampodelestator.
En el firmware anterior, la MCU estaba realizando estas combinaciones:
010 - > Un
011 - > B
001 - > C
101 - > D
100 - > E
110 - > F
El campo del estator efectivamente arrastraba el rotor, pero el ángulo era inferior a 90 °. Que yo sepa, esta no es la forma más eficiente de hacer girar el motor.
Cambié la secuencia de pasos a:
010 - > B
011 - > C
001 - > D
101 - > E
100 - > F
110 - > Un
de modo que el ángulo entre el campo del estator y el rotor esté más cerca de 90 °.
Hizo una prueba, nuevamente DClink = 10 V, D = 0.39.
La velocidad es de aproximadamente 6780 RPM y el suministro reporta una corriente de 0.39 A. La corriente aún es alta para mi gusto, pero muy lejos del 0.9 A de antes. El motor se calienta un poco, pero no hace tanto calor como antes.
Actualización 2: Revisé el código mcu y tomé un fsm como enfoque. La corriente bajó unos 100 mA. Esto indica que tuve un problema con la conducción cruzada de hecho. Moraleja de la historia: no intente programar un mcu como si estuviera configurando un fpga. Podrías disparar un transistor antes de apagar el otro en la misma pierna. Sin embargo, lo que hizo una diferencia más significativa fue poner algunos inductores en serie con el motor. Por alguna razón, el motor puede sobrecalentarse si la corriente se interrumpe. Como la inductancia del devanado del motor es tan baja, se necesita cierta inductancia adicional para reducir la ondulación y permanecer en modo de conducción continua. Aún no tiene un suministro para probar con voltaje nominal, pero a 20 V y fpwm = 61 kHz, el motor toma hasta 200 mA (a D = 100% y ~ 40 kRPM) con un calentamiento mínimo. ¡Gracias por toda la ayuda! Intentaré publicar algunos rastreos de alcance cada vez que use el alcance de laboratorio.