controlar dos motoreductores a la misma velocidad?

Hola
Quisiera controlar dos Motoreductores a la misma velocidad con arduino ONE; es para un carrito el cual tiene que ir en una linea recta inicialmente, el problema es que al escribir el mismo PWM un motor va mas rapido que el otro y no se que es lo que sucede
este es el codigo:

int PWM_A = 6; //velocidad motorA 
int dirmotorA_1 = 7; // direccion motorA 
int dirmotorA_2= 8; // direccion motorA 
int conta_1 = 0;
int conta_2 = 0;

int PWM_B = 9; //velocidad motorB 
int dirmotorB_1 = 10; // direccion motorB
int dirmotorB_2= 11; // direccion motorB 

int Velocidad_Motores = 127; 


void Avanzar(){ 

digitalWrite (dirmotorA_1,HIGH);// gira motor A derecha 
digitalWrite (dirmotorA_2,LOW); 
analogWrite (PWM_A, Velocidad_Motores); 

digitalWrite (dirmotorB_1,LOW);// gira motor B izquierda 
digitalWrite (dirmotorB_2,HIGH); 
analogWrite (PWM_B, Velocidad_Motores); 

}

Gracias por su ayuda.

lo mas probable es por el tiempo de instruccion ademas que un motor puede girar mas rapido.
prueba activando el pwm uno desdues del otro y antes solo la direccion.

No se si sea acertada mi respuesta pero creo que lo mas logico seria usar un L293D Para controlarlos los 2 al mismo tiempo y velocidad.

SALUDOS :smiley:

Hola,

Me temo que la respuesta de un motor de DC al PWM no sea homogénea.

Yo estoy con un problema similar para una aplicación de juguetes.

¿Tiene encoder el motor?

Saludos

Hola, tengo el mismo problema. Por ahora lo que voy a hacer es tratar de calibrar los motores cada uno con diferentes velocidades.
¿Un Shield - Motor L298P puede solucionar el problema?
Si alguien encuentra la solución a este problema por favor comentela. Gracias!