¿Cómo puedo optimizar los parámetros de control para un motor paso a paso?


9

Como robotista industrial, pasé la mayor parte de mi tiempo trabajando con robots y máquinas que usaban motores CC sin escobillas o motores lineales, por lo que tengo mucha experiencia ajustando los parámetros PID para esos motores.

Ahora me estoy moviendo para hacer robótica hobby usando motores paso a paso (estoy construyendo mi primer RepRap ), me pregunto qué debo hacer de manera diferente.

Obviamente, sin retroalimentación del codificador, necesito ser mucho más conservador en las solicitudes al motor, asegurándome de mantener siempre dentro del alcance de lo que es posible, pero ¿cómo puedo saber si mi ajuste es óptimo, subóptimo o (el peor de los casos)? marginalmente inestable?

Obviamente, para una carga dada (en mi caso, el cabezal de la extrusora), necesito generar trenes de pulsos escalonados que causen una aceleración y velocidad demandadas que el motor puede hacer frente, sin fallar pasos.

Mi primer pensamiento es hacer algunas secuencias de prueba, por ejemplo:

  • Motor de casa precisamente en su sensor de inicio.
  • Mueva los pasos lejos de casa lentamente.C
  • Muévase pasos fuera de casa con un perfil de movimiento conservador.M
  • Mueve pasos con el perfil de aceleración / velocidad de prueba.N
  • Mueva pasos hacia el inicio del movimiento de prueba con un perfil de movimiento conservador.N
  • Mueva pasos de regreso a casa con un perfil de movimiento conservador.M
  • Mueva los pasos hacia atrás al sensor de inicio lentamente, verificando que el sensor se active en la posición correcta.C
  • Repita para una variedad de perfiles de , , aceleración / velocidad y carga.NM

Esto debería detectar de manera confiable los pasos perdidos en el movimiento del perfil de prueba, pero parece un espacio terriblemente grande para probar, sin embargo, me pregunto qué técnicas se han desarrollado para optimizar los parámetros de control del motor paso a paso.


En el mundo RepRap, el diagnóstico es que la impresión se ve horrible. Esa es la detección de pasos perdidos, que yo sepa. Pero creo que la corriente utilizada por el stepper podría usarse como retroalimentación si el stepper pudiera hacer el movimiento. Pero no he oído hablar de alguien realmente haciendo eso.
Lars Pötter

(Estos temas se están volviendo populares esta semana. Deben ser por ese artículo sobre armas). La mejor / más fácil forma es hacer impresiones de prueba como Torture Test thingiverse.com/thing:33902

Respuestas:


1

La forma "matemática" de hacer esto es generar una curva de velocidad / par para su paso a paso a su voltaje dado, y determinar la fuerza máxima que se aplicará al objeto en movimiento (en este caso, es probable que la fuerza más grande sea aceleración).

Tenga en cuenta que la mayoría de las impresoras 3D hobby son tan endebles que el marco que se dobla bajo aceleración dañará la calidad de impresión mucho antes de que comience a faltar pasos. En este caso, podría modelar la desviación del marco bajo carga.

En mi experiencia, el 90% de los pasos perdidos son causados ​​por problemas mecánicos o de software, como la unión de los ejes o los pulsos que se pierden. Intente mover todo a mano para verificar si es suave.

Las velocidades y aceleraciones excesivamente agresivas deben ser visibles (y audibles) en una impresora 3D mucho antes de que se detengan los steppers.

En general, un solo paso perdido también hará que se pierdan los siguientes pasos (ya que el motor ahora debe trabajar aún más duro para ponerse al día) y obtendrá unos segundos de zumbido en lugar de movimiento.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.