Question:
How do I synchronize the speed of two(2) DC Motor.?
sumone^^
2009-11-16 02:02:29 UTC
I have a microcontroller with PWM interface, two(2) quadrature encoder, and two Direct Current Motor (with their driver).

What type of closed loop control system to synchronize both of the motor speed in Revolution Per Minute (RPM) by giving the speed set point to both the motor (or one motor).

Thanks. (I am having a hard time in the internet, this is my last resort).
Three answers:
MarkG
2009-11-16 15:01:14 UTC
Each motor will have its own control loop with at least proportional control (best if you use PID control) . Each motor will also have thier own feedback encoders . You really do not need to use quadrature encoders as the only advantages a quadrature encoder gives you is being able to determine direction of rotation. If you know how power is being applied in terms of polarity then you know the direction the motor will operate. So there really isnt a need to use quadrature to determine direction of rotation. This will free up some microcontroller resources and processing.



A single channel speed sensor will give you adequate feedback as a pulse train from which you determine frequency.





As for set point you can send one speed setting command but it is going to be copied and sent to both motor control loops. Unless you are going to be providing differential steering in which case different speed settings would be sent to cause a turn.



If you are going to be turning by using steering wheel(s) you will need to change the motor speeds as well. The wheel on the outside of the turn needs to turn faster. So your control system needs the ability to take turning into account.
sparky_dy
2009-11-16 10:13:30 UTC
You just need to know the speed of each motor (which you can work out from the time between successive tacho pulses), and adjust the PWM values independently to arrive at the same target speed.



Note that this is extremely unlikely to work perfectly in practice. If you need absolute synchronisation, you should be using stepper motors.
datoli
2009-11-16 12:56:24 UTC
use a common pulse source to set the speed of both motors which are similar or adjusted properly to move (interpret)the same revolutions (distance) for a given pulse.

in your case needs a comparator or

try to connect motor(1)'s encoder output to input pulse to motor(2) and motor(2)'s encoder output to motor(1)'s feedback.


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Loading...