Unfortunately, the power distribution to the 12v motors appears to be unequal with approximately 10.2v measured at the input of the strong motor and only 8.2v going to the weak motor.
This sort of ruins the functionality because the motors have terrible torque with less than 9v, so the track easily locks up and the robot spins.
I'm willing to buy another shield if necessary, but I was hoping to get some advice on how to troubleshoot the root cause and maybe a few potential fixes to try.
Your motor controller allows you to measure the current used by each motor. Have you done that? The voltages you gave are meaningless. The motors use current to move them and the controller will tell you how much current each motor used.
Have you tried switching the motors to see if the same weak motor stays being weak?
Paul
Paul_KD7HB:
Your motor controller allows you to measure the current used by each motor. Have you done that? The voltages you gave are meaningless. The motors use current to move them and the controller will tell you how much current each motor used.
Have you tried switching the motors to see if the same weak motor stays being weak?
Paul
Thanks for the quick reply!
If I understand the current sensing feature of the board, measuring the analog value out of A0 (0-> 255) corresponds to 0->2A at the Channel A motor (the strong one) and A1 is Channel B (the weak one in original configuration). I'm not able to find the conversion between (can I assume it to be linear?).
Result:
strong motor (aka, A1, Ch. B) = 15
weak motor (aka, A0, Ch. A) = 14
Switching the motor channel resulted in the "weak motor" switching, so I guess at this point its more accurate to say motor channel A is weak
edit: I found the conversion (2.96mA per integer out) and found my output settings were wrong, real values are approx 175 ch. B and 150 to ch. A.
I'm noticing an odd behavior where the output to ch. A is pulsing from effectively 0 to 150 every second, while the ch. B output is steady around 175.
Ok, now, just to be sure of the components, disconnect one lead of each motor. Measure the resistance of each of each motor as you rotate the shaft, Does the resistance stay the same, except at the point where the brushes contact the insulation between armature segments. What is the minimum resistance found for each motor? Should be very, very, close the the same resistance.
Are you using double ended motors, so the motor on the left rotates the same direction as the right hand motor?
Paul_KD7HB:
Ok, now, just to be sure of the components, disconnect one lead of each motor. Measure the resistance of each of each motor as you rotate the shaft, Does the resistance stay the same, except at the point where the brushes contact the insulation between armature segments. What is the minimum resistance found for each motor? Should be very, very, close the the same resistance.
Are you using double ended motors, so the motor on the left rotates the same direction as the right hand motor?
Paul
I'm using the following motors:
Since the "weak motor" changed when the channels were switched, doesn't that confirm that the issue is with the r3 motor driver and is independent of the actual motors? Why would the motor resistance matter at this point?
I only ask because I'm having some trouble measuring resistance on these and don't want to go through the trouble of a disassembly and test if they don't seem to be the issue.
There is one other possibility and that is the PWM going to pin D3 is not the same as the PWM going to pin D11, as per the board documentation. The current shown by your measurement indicates they are not the same.
Can you do a test by connecting both pins D3 and D11 on the driver board to the same pin on the Arduino?
Then you will be sure the same PWM is going to both motor driver circuits.
Paul
Hello,
PWM frequency on various pins by default is different.
This could be the cause of your troubles.
I could not find the io outputs you are using but the default frequencies can differ.
Some of the pins even to not support PWM at all! How To Change Frequency On PWM Pins Of Arduino UNO (etechnophiles.com)
Best regards,
Johi.