¿Conducción sin sensor de motor BLDC trifásico para aplicaciones de cardán?

He empezado a trabajar en un proyecto de mines, que consiste en implementar la estabilización de un gimbal de un solo eje usando un microcontrolador genérico (STM32 o Arduino Uno).

El eje del cardán es impulsado por un motor de CC trifásico sin escobillas (BLDC) sin sensor, mientras que en su eje hay una carga útil genérica provista de una placa IMU (giroscopios de 3 ejes + acelerómetros de 3 ejes), que puede dar retroalimentación al microcontrolador sobre el velocidades angulares y aceleraciones del motor.

El microcontrolador está alimentando un puente inversor (L6234) para impulsar el motor BLDC.

ingrese la descripción de la imagen aquí

He buscado en Google un poco sobre este tema y hay tantas soluciones para aplicaciones de alta velocidad, pero no tantas para las de baja velocidad.

Además, lo que realmente no entiendo es sobre el control del motor BLDC, por lo que mis preguntas son:

  1. ¿Puedo usar un control sin sensor del motor, detectando la EMF trasera incluso si el motor está girando muy bajo?
  2. ¿Cómo puedo energizar correctamente las fases del motor BLDC, desde parado, si es sensorless?
  3. ¿Puedo usar la IMU para averiguar cómo hacer girar el motor BLDC correctamente sin contrarrotaciones (lo que significa que sé cuándo conmutar)?
  4. ¿Cómo puedo mantener el motor parado cuando alcance el punto de ajuste?
  5. ¿Debo implementar un controlador de velocidad o uno de par (corriente) para tal aplicación (control sin sensor de motores BLDC a bajas velocidades)?

¿Podrían darme alguna ayuda, por favor?

Estoy bastante seguro de que los controladores de cardán sin escobillas no realizan la detección de EMF posterior en absoluto; simplemente impulsan el motor en bucle abierto (como micropasos en un motor paso a paso, pero trifásico) ya que la velocidad es cero la mayor parte del tiempo.
Pero, ¿qué pasa con las contrarrotaciones debido a la activación de fases incorrectas?
Emite una onda sinusoidal de 0 Hz, mientras aumenta lentamente la amplitud. Luego, el rotor comenzará a alinearse con el campo magnético, lo que hará que el conjunto estabilizado se mueva. El giróscopo lo detectará y su ciclo de control ajustará inmediatamente la fase de esa onda sinusoidal en respuesta para mantener el rotor inmóvil. La rotación espuria en el arranque es solo un problema con los esquemas de conducción sin escobillas sin sensores normales (alta velocidad) porque en esos casos desea que el motor acelere lo más rápido posible en el arranque.
Estas cosas están en todo el mundo de los drones para aficionados, y sería sorprendente que al menos algunas no fueran proyectos de código abierto. Por lo tanto, sería mejor estudiar cómo funcionan realmente que pedirle a la gente aquí que especule a partir de principios básicos sobre cómo podrían hacerlo.

Respuestas (2)

¿Puedo usar un control sin sensor del motor, detectando la EMF trasera incluso si el motor está girando muy bajo?

Técnicamente, sí se puede. Sin embargo, en la práctica, no es posible/difícil. La razón es que debido a que el voltaje de fem posterior es tan bajo, necesita amplificarlo (circuitos adicionales) o trabajar con datos de baja resolución. Dado que se reduce la resolución, se produce un cogging porque se vuelve difícil identificar el punto exacto de cruce por cero. Además, la fuerza contraelectromotriz no puede ser inferior al ruido de su sistema, no lo detectará.

¿Cómo puedo energizar correctamente las fases del motor BLDC, desde parado, si es sensorless?

Hará una secuencia de arranque de bucle abierto y esperará que el motor se ponga al día. Continúe con la operación de bucle abierto hasta que se logre una velocidad crítica de fuerza contraelectromotriz.

¿Puedo usar la IMU para averiguar cómo hacer girar el motor BLDC correctamente sin contrarrotaciones (lo que significa que sé cuándo conmutar)?

IMU generalmente da información sobre aceleraciones. Entonces, integrará eso para encontrar las posiciones del rotor. Esta operación llevará algo de tiempo y habrá errores de cálculo (obtendría cogging en motores BLDC). Diría que este método sería más difícil que el método back-emf. El método IMU es mejor para motores paso a paso. (Motores paso a paso + IMU = buen sistema de cardán)

¿Cómo puedo mantener el motor parado cuando alcance el punto de ajuste?

Cambiarás los mosfets a una frecuencia constante. El motor se moverá a una velocidad constante. ¿Es eso lo que quieres decir con esta pregunta?

¿Debo implementar un controlador de velocidad o uno de par (corriente) para tal aplicación (control sin sensor de motores BLDC a bajas velocidades)?

Los motores BLDC son ineficientes y difíciles de controlar a bajas velocidades. ¿Por qué no usar un motor paso a paso? Sin embargo, si realmente tiene que usar BLDC, use el método actual y el back emf combinados. Tienen sus beneficios.

La mayoría de las soluciones que se ofrecen son BLDC y un sensor de tipo IMU; para comprender por qué estas son buenas opciones, puede ser necesario estudiar cómo funcionan los diseños existentes, en lugar de adivinar a partir de los primeros principios. La IMU no indica la posición del rotor, sino que proporciona la señal de error del bucle de control, ya que el apuntamiento deseado es relativo al mundo circundante, no al avión (o lo que sea) en el que está montado el cardán.

Hay dos métodos viables con respecto al control sin sensor

  1. Detección de EMF.

Relativamente simple: mida el voltaje del terminal durante los períodos en los que no está cambiando. Una solución muy viable una vez que estás por encima de una velocidad mínima.

  1. Inyección.

Al inyectar un componente de voltaje de baja amplitud y frecuencia más alta en el estator, se puede medir la corriente asociada con esta inyección. A partir de esto, se pueden derivar Ld y Lq y, siempre que se conozca la prominencia del rotor, se puede determinar la posición angular. Sin embargo, este método se vuelve menos viable con el aumento de la velocidad del rotor.