Motor shield output voltage issue

Hello everyone,

I am against an issue with my motor shield. Specifically, I am trying to drive 4 DC motors and i measured the output voltage of the 4 motors. Guess what? It seems that it is not the same. For example the first motor has 4.5V, the second 4.4V, the third 2.5V and the last one 4.7V. As far as the coding concern, I set every motor move FORWARD with the same speed. I am using a LiPo battery 11.1V with 2200mah.

Do you have any idea why all my motors do not have the same voltage -> rpm ? Do I need to specify anything else?

thank you.

(deleted)

Hello @spycatcher2k,

first of all thank you answering. I am not sure if I am driving it with PWM, I suppose yes i do. My motor shield is mounted in my arduino Mega so I guess so. I do not really want to measure the Voltage. I would like to have same RPM in all of my wheels when moving forward. It seems that one or two of them are turning with different RPM and as a result the vehicle seems to have a little drag to the right or left depending to the wheel with the lower RPM.

I hope this is clear enough,

I am not sure if I am driving it with PWM.

If you are controlling the speed with software, you're using PWM. And, it's (hopefully) PWM knocking 11V down to 4V "average". (We can't really count on a DMM to read average with PWM.)

It seems that one or two of them are turning with different RPM and as a result the vehicle seems to have a little drag to the right or left depending to the wheel with the lower RPM.

That's always a problem unless you have some kind of speed/direction feedback.

Stepper motors can be good or, you can mount the L/R wheels on the same axle, but I assume you need some way of steering. And without feedback there's always some slippage or something that keeps it from going perfectly straight. ...Your can can't go straight down a straight-road without feedback (you steering).

Oh, notice that I am not moving with 255 speed. I am using ~100 and this is why I am getting 4V and not 12V. (i guess). No?

So I have to install encoders, right? :confused:

Hi,
What Arduino are you using?
What motor driver board?

Have you tried swapping motor around to different outputs, to see if the problem follows the motor?

Tom.. :slight_smile:

Hello Sir,

I am using Arduino Mega and as far as shield concern, it is L293D (L293D Arduino Dual Motor Shield – Art of Circuits).

Of course I have tried that, but I saw no pattern. It seems that the motor shield gives the according Voltage to the first motor, -0.1 to the second motor and less voltage to the rest of the motors. I am not even sure of what I am saying, I just observe the whole project.

Hi,
Can I and most forum members suggest you forget about that shield, you loose 2V thought the control ICs L293 and it is very inefficient.

You would be best to search for a MOSFET based motor controller.

They also have an excellent Library and How to PDF.

Tom.. :slight_smile:

So, there is no way to fix that? Damn... :expressionless:

Hi,
Unfortunately no. Data sheets quote 1.8V from Vcc or Gnd, most of the time its about 2V.

Tom.. :slight_smile:

If used a h-bridge, those two numbers have to be added.
So 1.4volt + 1.2volt = 2.6volt typical loss @ 600mA.
Leo..

So, what exactly is MOSFET driver and how it differ from what I have? With other words, how will it solve my problem?

You have not read the link given in post#7.

MOSFET driver will give your motors higher voltage.