2 motores de CC conectados en paralelo al puente H se mueven con diferente velocidad

En primer lugar, dado que vengo del mundo de la programación web, soy bastante nuevo en la electrónica y tal vez algunas de las cosas que estoy haciendo están mal o podrían mejorarse, por lo que cualquier pista es muy apreciada.

Estoy construyendo un robot/oruga con 4 ruedas. Cada rueda está conectada directamente a un Motor DC de 6V 210RPM con codificadores.

Tengo un controlador de motor de doble vía con 2 puentes H

El controlador se alimenta de una batería LiPo 2S de 7,4 V

ingrese la descripción de la imagen aquí

2 motores derechos están conectados en paralelo a un puente H y 2 motores izquierdos al segundo puente H del controlador.

Estoy controlando los motores a través de un arduino UNO enviando señales PWM a los PWM del controlador.

Dado que los motores tienen codificadores, pude leer las rotaciones de un codificador de cada lado (uno desde la izquierda y otro desde la derecha) y ajustar dinámicamente el PWM para el otro lado, tomando el lado más lento como maestro y el más rápido como un esclavo, para forzarlos a moverse en sincronía.

El problema que tengo es que los motores que están conectados en paralelo se mueven a diferente velocidad, aunque reciben la misma señal de voltaje/PWM. Además, sus especificaciones son idénticas.

Entiendo que mecánicamente no son idénticos y diferentes factores pueden afectar su desempeño, pero ¿cómo solucionar este problema? ¿Es posible?

Aquí están mis ideas:

  • ¿Tiene sentido leer los valores del codificador de ambos motores conectados en paralelo? Creo que no, porque si intentara reducir/aumentar el PWM, ambos se verían afectados y el motor más rápido seguiría siendo más rápido.
  • Tal vez conectando una resistencia al motor más rápido y tratando de encontrar un buen valor para el motor más rápido para reducir la velocidad hasta el momento en que gira en sincronía con el otro. Pero entonces esto funcionaría solo si su diferencia de velocidad también es proporcional.
  • La última idea es unirlos por la menor diferencia de velocidad y conectar en paralelo aquellos pares que están más cerca entre sí.

Tal vez haya otras formas adecuadas de resolver el problema de las que no tengo idea. Pero por la gran cantidad de proyectos similares que encontré en Internet, supongo que tienen una solución para esto. ¿O tal vez a nadie le importa que la rueda delantera del lado derecho gire más lento que la rueda trasera del mismo lado?

¿Qué tipo de motores son estos? Los motores DC con escobillas tienen una dirección preferida de giro. De todos modos, debe controlarlos individualmente, siempre hay suficientes diferencias de fabricación para que no sean lo suficientemente iguales como para no preocuparse.
Sí, estos son motores de CC con escobillas de 6 V. ¿Debería considerar comprar otro controlador para los otros 2 motores y controlar los 4 individualmente? Gracias

Respuestas (1)

Los motores de CC siempre funcionarán a diferentes velocidades.

Si tiene dos motores en paralelo en un controlador y solo detecta la velocidad de uno de ellos, entonces la velocidad del otro motor será impredecible siempre y cuando los motores no estén conectados mecánicamente. No hay una forma real de corregir eso usando la electrónica sin agregar controladores y retroalimentación separados para cada motor.

Si los motores son ruedas motrices que tocan el suelo y la diferencia de par entre ellos no es lo suficientemente grande como para hacer que las "llantas" patinen, esto puede no ser un problema ya que el contacto con el suelo actuará como un acoplamiento mecánico entre los motores. Nota: Así es como las ruedas motrices de su automóvil se mantienen a la misma velocidad a pesar de pasar por una caja de cambios diferencial. Sin embargo, la pérdida de contacto con el suelo puede causar algunos efectos extraños.

De lo contrario, es prudente colocar una correa de distribución u otro enlace mecánico entre los ejes del motor para mantenerlos juntos. Si su rastreador tiene pistas, esto no es un problema.

En algunos casos, puede ser posible compartir el controlador de ambos motores. Es decir, tenga un arreglo de conmutación que canalice la energía a cada motor un porcentaje del tiempo, dando más porcentaje al motor más lento. Sin embargo, eso, por supuesto, reduciría el rendimiento de cada motor en un 50% cuando ambos están en velocidad. Pero eso se complica y no compra mucho en comparación con tener un accionamiento individual para los cuatro motores.

Gracias por la respuesta rápida. Esto me dio una mejor idea de todo, ya que no estaba seguro de si lo estaba haciendo bien o muy mal. El rastreador no tiene orugas, pero sus ruedas tocarán el suelo la mayor parte del tiempo, así que si eso no es un problema, entonces esto es perfecto. También podría considerar comprar un nuevo controlador para los otros 2 motores y sincronizarlos perfectamente a través del software. Con respecto a la disposición de conmutación, supongo que este es un dispositivo separado que permanecería entre el controlador y los motores conectados en paralelo.
@gsdaemon sí, como sospechas, sería una nueva etapa intermedia. Pero nuevamente, para cuando lo haga, podría haber creado/agregado otro controlador.
La respuesta es correcta, sin embargo, hay una solución simple al problema: al conectar los dos motores de CC en serie , la corriente es la misma y también lo es el par resultante (dado que ambos motores tienen la misma característica de par/velocidad) en ambos motores. teniendo la misma velocidad. Este es el equivalente eléctrico de una conexión mecánica directa que también hace que el par sea el mismo.
@Janka eek... Conectar motores de CC en serie es una mala idea. Su suposición de que la relación par/velocidad es idéntica. nunca lo es Con las ruedas levantadas, una se detendrá, la otra sufrirá una sobretensión e irá demasiado rápido.
Se trata de experimentar para encontrar y entender cosas. Las posibles malas ideas tienen que ser ejecutadas para avanzar en la comprensión.
Sí, eso es exactamente lo que haría un engranaje diferencial. gsdeamon puede detectar ese estado con los sensores de velocidad individuales y reducir el voltaje externo hasta que desaparezca el deslizamiento.
Sin embargo, el problema de @Janka sería que si es el motor de accionamiento controlado el que se ha estancado, nunca podría ponerlo en marcha.
@gsdaemon Supervisar ambos motores sería una buena idea, como mínimo. Tal vez use el motor que sea más lento como su retroalimentación de velocidad. Con acoplamiento mecánico ligero debería equilibrarse.
@Janka, Trevor: ¡muchas gracias por sus comentarios adicionales! Estoy tentado de probar la conexión en serie y ver si esto hace que ambos motores giren a la misma velocidad sin carga, pero no estoy seguro de por qué conectarlos en serie sigue siendo una mala idea. Además de eso, si uno de los motores muere, ambos dejarán de girar. Además, dado que los motores son de 6 V y los estoy alimentando con una batería LiPo de 7,4 V, que da una salida de 8,3 V cuando está 100 % cargado, cuando se conecta en serie, cada motor recibirá ~4 V. ¿Esto no los hará más lentos? Además, ¿no es un problema alimentar 8.3V a un motor de CC de 6V?
Trevor se opuso porque el par es el mismo con un motor funcionando libremente mientras el otro está atascado, la velocidad puede comenzar a diferir. Esto se debe a que el punto de trabajo de las dos unidades ya no es el mismo. Es cierto, pero, de nuevo, esta es una situación excepcional. Mientras ambas ruedas estén conectadas por el contacto con el suelo, debería estar bien. No olvide verificar si la velocidad de las unidades individuales difiere demasiado.
El problema de @gsdaemon con los motores de CC en serie es que cualquiera que tenga el mejor par acelerará más rápido robando energía del otro. Entonces, el otro tiende a detenerse mientras que el primero va demasiado rápido. Es un sistema diferencial. Sin embargo, con el acoplamiento mecánico todavía se equilibra. PERO ahora debe tomar medidas adicionales para protegerse contra sobrevoltaje y sobrevelocidad.
Ah, y sí, tuvo que aumentar el voltaje externo para la conexión en serie. La sobretensión no destruirá un motor de CC, solo la sobrevelocidad lo hará. Puede limitar eso con su PWM.
Otro problema con los motores de CC conectados en serie son los efectos de conmutación. Recuerde que la energía que va al segundo motor también será interrumpida/perturbada por el conmutador del primer motor. Esto dará como resultado algunos efectos de torsión extraños y una EMI considerable en la unión/los cables entre los motores y un aumento de las chispas y el desgaste de las escobillas.
@Janka en realidad, la sobretensión aumenta el arco y el desgaste del cepillo, pero tiene razón, suponiendo que mantenga la corriente por debajo del límite, el voltaje en sí no lo dañará, suponiendo que no sea ridículamente alto.
Muy bien, la mejor manera que se ajuste a mis necesidades es comprar un segundo controlador o dejarlos como están y confiar en el acoplamiento mecánico por contacto con el suelo. También leería las 4 velocidades de los motores y tomaría como valor maestro la velocidad más baja entre las velocidades más altas del lado derecho e izquierdo. Algo así como: LHigh = (L1 > L2 ? L1 : L2); RHigh = (R1 > R2 ? R1 : R2); SideToLowerPWM = (LHigh < RHigh ? 'RIGHT' : (LHigh > RHigh ? 'LEFT' : 'NONE'));Tendré que tomar las velocidades más altas de cada lado, porque cuando una de las ruedas se detenga, la oruga se detendrá. También se necesita un cheque para 0
@gsdaemon sí, comenzaría con un controlador y espero que el acoplamiento a tierra + software sea suficiente. Si tiene que conducir por terrenos más accidentados donde las ruedas pierden contacto con regularidad, utilice una correa de acoplamiento mecánica o consiga otro conductor.