Minimice la reacción en el motorreductor de CC

Soy nuevo aquí, actualmente trabajo en programación de aplicaciones.

Como hobby comencé a trabajar con arduino y motores dc. Pronto terminé con problemas de contragolpe. En este momento estoy usando un codificador rotatorio que da 4000 conteos por rotación.

Esto es con un motor de CC con engranajes planetarios de 12v. También probé con un motorreductor de dientes rectos.

Soy capaz de controlar el motor. Pero no es muy preciso. La diferencia entre los recuentos cambia cada vez.

Por ejemplo, cuando trato de detener el motor en 2000 conteos, se detendrá en cualquier lugar entre 2004-2016 conteos. Este problema se debe a la reacción. Conecté el codificador al eje del motor usando una polea de sincronización.

¿Qué pasa si conecto un disco al eje del motor y lo detengo usando un solenoide ? Alguien alguna vez probó algo así o cualquier otra idea económica.

Soy de la India y no consigo productos precisos fácilmente aquí. Puedo publicar fotos de la configuración si es necesario. ¿Me rendiré con el motor de CC y optaré por el paso a paso?

Esto no se debe a la holgura, porque el motor se detendría en 2000 conteos, no conoce la holgura. Puede verificar la holgura solo con una escala: como si el motor se detuviera en 2000 conteos, luego aplica una fuerza externa y tiene +/- mm de holgura, esto se llama holgura.
Hay contragolpe mecánico. Hay alguna manera de evitarlo
Sí, si su codificador está conectado a una carga, entonces el motor debe rastrear el error de posición cada vez.
La única forma de eliminar la reacción es obtener una configuración mecánica que no tenga ninguna. Los engranajes helicoidales serían mejores que los simples, pero aún no son perfectos. De lo contrario, estará limitado a algoritmos como los que usa un maquinista manual en una herramienta con tornillos acme tradicionales: disminuya la velocidad a medida que se acerca al punto de ajuste y asegúrese de no cruzarlo. Si lo hace, tendrá que retroceder más que la distancia de retroceso y volver a acercarse en la misma dirección. Un PID simple con reacción en su retroalimentación oscilará o se detendrá en una posición imprecisa.
Hacen engranajes antiretroceso cargados por resorte. (Google)
Los engranajes antibaclash son raros y muy costosos en India
@Marko Encoder está conectado al eje de salida de la caja de cambios. Es eso correcto. También me gustaría mencionar que cuanto más gira directamente la carga con 60 mm de longitud. Como un brazo
Para evitar la reacción total, debe usar la unidad armónica.

Respuestas (3)

¿Por qué no usa un bucle de control para integrar el error de conteo? Desea detenerse en 2000 y, sin un controlador, se detiene quizás en 2010. Si tuviera un sistema de retroalimentación, podría sobrepasar hasta 2016, pero la retroalimentación devolvería el eje de salida rápidamente a la posición 2000.

¿Se puede vivir con este tipo de exceso? Se puede incorporar más sofisticación para que el motor comience a decelerar a medida que se alcanza la posición 2000. Un controlador de 3 términos podría ser lo que necesita y el sobreimpulso básico podría reducirse a la mitad o más.

Sin embargo, si el codificador óptico no está en el eje de salida, no funcionará.

Gracias por la respuesta rápida. He adjuntado el codificador al eje de salida usando una polea de sincronización que no es un problema, ¿verdad? y estoy usando un controlador de motor de CC que rompe (detiene) el motor de CC de inmediato. como sugirió volver a colocarlo en su posición, habría muchos problemas si ya cruzara el punto dado. En segundo lugar, sugirió reducir la velocidad del motor. Creo que esto realmente funcionaría si el motor gira continuamente durante algún tiempo. ¿Qué pasa si tengo que tomar el próximo paso de 2000 a 2020? Aquí creo que el motor arranca y la distancia restante ya estará cubierta por el juego.
La retroalimentación no ayudará en presencia de una reacción mecánica. Lo más probable es que el sistema busque de un lado a otro alrededor del punto de ajuste.
Sí, hay un contragolpe mecánico menor, como puedo leer en los puntos del codificador con movimientos manuales del eje.
Estoy listo para cambiar de motor, proporciona 38kgcm de torque. Ahora bien, ¿cuál es el equivalente de lo que debo comprar? Además, ¿qué pasa con el texto en negrita en mi pregunta, funcionará?
@WhatRoughBeast hay muchos sistemas (si no la mayoría) que tienen una reacción mecánica y usan sistemas de retroalimentación y viven con los problemas que crea la reacción. No obstante, el beneficio neto de la retroalimentación, incluso en presencia de contragolpe, puede ser valioso.
@Aadam: el problema no es el motor, son los engranajes. Presta atención a los comentarios a tu pregunta.
Entiendo que hay una reacción violenta debido a los engranajes. Entonces, ¿estoy haciendo mal al conectar el codificador con el eje de la caja de cambios? ¿Es eso lo que estás tratando de decir? ¿Cómo puede ayudar si conecto el codificador al eje del motor? Además. Estoy tomando posición del codificador. Esto significa que mi sistema tiene retroalimentación, ¿verdad? Por favor corrigeme. Puedo estar totalmente equivocado también
@Aadam si tiene el codificador en el eje de salida, entonces esa es la forma correcta. Lamento que mi respuesta no haya sido clara al respecto.

El contragolpe es causado por los dientes del engranaje que no encajan bien entre sí. El resultado es que el eje de salida de la caja de cambios se asentará en una posición diferente dependiendo de si se tira en una dirección u otra. Si la carga siempre tira en contra de la dirección en la que conduce la caja de cambios, entonces los engranajes permanecerán juntos y la holgura no debería ser un problema. Si la carga puede tirar en cualquier dirección, es posible que pueda desviarla hacia un lado con un resorte.

Sin embargo, creo que su problema no es la reacción, sino la inercia .

cuando trato de detener el motor en 2000 conteos, se detendrá en cualquier lugar entre 2004-2016 conteos.

Esto sugiere que la caja de cambios no se detiene tan pronto como detiene el motor. Cuando elimina la energía del motor, no se detendrá inmediatamente porque la armadura y los engranajes tardan en desacelerar, y la carga también puede tener inercia que atrae la salida de la caja de engranajes junto con ella. La única forma de solucionar esto es detener el motor antes de que el conteo llegue a donde lo desea. Por ejemplo, si sabe que se ejecuta en 10 conteos, puede detenerse en 1990 conteos y dejar que se ejecute hasta 2000.

Obtener un conteo de corrimiento exacto puede ser difícil si la carga varía. Puede reducir este problema ralentizando el motor a medida que se acerca a la posición de destino, entonces tardará menos tiempo en detenerse y la variación del conteo de arranque será menor. Si hace que la velocidad del motor sea proporcional al error de posicionamiento, automáticamente se volverá más y más lento a medida que se acerque a la posición de destino.

Estoy de acuerdo con todo lo que dijiste. El problema es que el número de errores varía. También es diferente para avance y retroceso. Un problema más es qué pasa si quiero moverme poco a poco. Me gusta de 0 a 10. ¿Cómo puedo minimizar el error de posicionamiento en este caso? Como el desplazamiento sería casi igual al error
Disminuya la velocidad del motor hasta que cada cuenta tarde más de lo que tarda el motor/caja de cambios en detenerse. Entonces solo debería ir por un conteo más como máximo.

Puede usar el relé para detener el motor de CC rápidamente, hacer algún circuito que haga que el motor de CC se cortocircuite después de cambiar el contacto del relé.

Es probable que un relé sea una elección bastante mala para el control del motor.