Implementar un controlador de velocidad para un controlador de posición en cascada

0

Tengo aquí un motor con un codificador magnético, que tiene una resolución de 2 ^ 14 bits. Está conectado a un stm32f3, que uso para el control de posición del motor. Ahora, normalmente el controlador de posición P usa como segunda etapa un controlador de velocidad PI y como tercera etapa un controlador de corriente PI. Tengo algunos problemas con esta estructura, ya que cuando trato de alimentar el controlador de posición al controlador de velocidad, el sistema no parece ser estable, pero cuando alimento directamente la señal de control de posición al bucle de corriente, es bastante estable.

Ahora, ¿cómo debo procesar con el controlador de velocidad? En primer lugar, necesito una medición precisa de mi velocidad, pero esto no es posible con esta resolución para velocidades muy lentas, ¿verdad? Sobre todo porque también hay ruido en el sensor. Como esta estructura de control se usa usualmente para un servomotor PMSM, pregunto aquí, ¿cómo se debe tener en cuenta la velocidad?

    
pregunta HansPeterLoft

1 respuesta

0

Primero, te falta un control D para diferenciar la posición para obtener la velocidad y la integral de la corriente. Entonces le falta información de aceleración de la corriente y la segunda derivada de la posición.

La retroalimentación de Pi agrega retraso y retraso agrega inestabilidad. Desafortunadamente, parece que no comprende los conceptos básicos de las funciones de transferencia de ganancia de bucle, retroalimentación PID, diagramas de Bode, métodos de Locus de raíz y criterios de estabilidad de Barkhausen. y se necesita retroalimentación de primer orden para un control estable con retroalimentación de segundo orden para reducir el jitter. Los comentarios de 3er orden con 2 integradores dan como resultado comentarios positivos.

No detallaré su solución, en lugar de sugerir temas para leer más arriba para aprender cómo resolver los problemas con muchos enfoques.

Un codificador de 14 bits suena como si tuviera suficiente resolución, pero ¿cómo se traduce eso a su tolerancia de error de posición, sobrepasa el SPEC y el perfil de entrada para la búsqueda de posición, la rampa de velocidad y los límites de aceleración con F = ma y la fuerza del motor y los límites de corriente? .

La fuerza no será constante ya que el par disminuye con mayor velocidad, por lo que hay muchas variables para definir, cuantificar y calcular. Una vez que se definen todas estas "especificaciones", el problema se puede manejar mediante cálculos diseñados por ingeniería.

La solución mínima es tener dos bucles de realimentación para error de posición y error de velocidad, luego tener 2 modos de control, rampas de control de velocidad y rampas de control de posición cuando la velocidad está por debajo de un cierto umbral. Esta es una respuesta de primer orden o proporcional (P) y está garantizada como estable en condiciones limitadas, como sin reacción, sin demoras, sin momentos de inercia.

La solución óptima tendrá 3 fuentes de retroalimentación, a, v, p para comparar con un perfil objetivo para obtener una señal de error para controlar cada valor de aceleración, velocidad y error de posición dentro de sus especificaciones definidas. Normalmente, la retroalimentación de aceleración se deriva de la corriente del motor por encima de algún umbral sin carga.

Los discos duros tienen retroalimentación de posición, velocidad y aceleración de alta resolución para obtener la búsqueda más rápida con el menor tiempo y el error de posición más bajo usando estos métodos.

    
respondido por el Tony EE rocketscientist

Lea otras preguntas en las etiquetas