Asked — Edited

Dc Motor Control Question

Hello,

We are a team of engineering students working on a robotics project about to participate in a robotics competition. We have only a few days to finish up and we are currently having a problem with the DC motors for our second robot. We are trying to drive two DC motors to move the robot using PWM signals sent from an arduino card. Using an H bridge we are able to deliver PWM signals with a controllable duty cycle from the arduino card, which are -24V/+24V. Thus in theory at 50% the motors are at 0V, and close to +24V or -24V at 100% or 0% respectively by average voltage. When the cables we use to connect to the motors are checked with an oscilloscope, the signals are fine and as expected.

When we connect our motors to them, the signals are significantly degraded (can tell its supposed to be a PWM cycle but it's not as clean as before) and the over all average voltage is lower then what we had before. In this situation, with the robot lifted off the ground and the wheels not touching anything, the motors seem to turn fine, at a decent speed etc. However the torque seems quite low, not as much as we should be getting from our motors.

The real issue is as soon as we place the robot on the ground, the wheels can not move. In this situation the expected rough 21.5V average voltage we measured previously drops to around 3 to 3.2V. If observed at this point the PWM cycles are totally degraged, can barely make out a square signal, and the average voltage is around 3V.

We can not figure out what is causing this problem. When we connect our generator directly to the motors without going through our electronic card, as soon as we go above 5V on a motor the wheel is able to move the robot easily, and at a decent speed above 7 or 8V. What adds to our confusion is another team last year used these motors and drove them with a -24/+24 V PWM signal in the same way as far as we know.

We are totally stuck, and are available to answer any questions or provide any data that could help debug our issue.

Thanks for any help!

We are using the 2322G/GP022C motors from this datasheet, the last one (24V/1621) : http://store.mdpmotor.fr/media/documents/pdf/2322g_gp022c.pdf


ARC Pro

Upgrade to ARC Pro

Elevate your robot's capabilities to the next level with Synthiam ARC Pro, unlocking a world of possibilities in robot programming.

#1  

Wouldn't you get better help if you posted this on an Arduino forum? Not trying to be rude at all (and you are certainly welcome here), but here we use the EZB controller not Arduino... Just saying that if I needed help with my Ford truck, I would seek out a Ford forum rather than GM...Maybe however, there still might be someone here that knows how to use the Arduino...

South Africa
#2  

I agree wit Richard R.Anyway which competition are you entering.Maybe next year you can enter a robot which is controlled with an ezb

#3  

Well the Arduino is pretty much irrelevant to the problem, we are just delivering 2 opposed phase PWM signals which we convert to 0-24V with an H bridge. And those signals are perfectly fine, it's close to the motor that we are having issues.

This is really a general electronics question, we are kind of stuck and desperate, so posting anywhere people are knowledgeable about such things.

We are going to upload our schematics and stuff, do you not think we will be able to get an answer here?

PRO
Canada
#4  

I know that the Arduino forums are quite difficult to get assistance from at times as posts get pushed quickly down the que.

Here, we are a helpful and knowledgeable bunch so we'll try to help where we can.

What battery supply are you using exactly? It seems that if you are using 12V lead acid batteries in series they would be a considerable weight for your robot. The motors may not have the torque to move such a weight, you could try your tests with a lighter LiPo battery and see if that helps.

To clarify, if your robot is held off the ground (on a stand of some sort) do you see any voltage drop at the motors?

Another question: What kind of motor controller (H-bridge) are you using?

A picture of your robot may help.

#5  

We have 2 14.8V Lipo batteries, but currently for testing and such we are powering with a standard generator that can easily deliver enough power (and less risk of imploding if we screw something up ^^).

There is no observable voltage drop when the robot is on the the ground or elevated with the wheels not touching.

Here is the H-bridge being used : https://www.sparkfun.com/datasheets/Robotics/L298_H_Bridge.pdf

As for the torque, there seems to be no issue. when we power one of the motors directly with our generator as soon as we go over 5-6V the robot moves without any issue slowly and faster as we increase it.

I've got 3 oscilloscope pictures, in descending quality of signal :

  • signals that arrive to the motors with them disconnected (after passing from the Arduino, through the optocoupler and leaving the H-bridge)
  • signals with the motors attached but the robot raised from the ground (wheels turning with low torque)
  • signals with the robot placed on the ground and wheels unable to turn

As well as our Isis diagrams of our electronic cards but having no luck uploading anything here

PRO
Canada
#7  

Ok thanks, two items that generate questions for me:

How many peak amps can this generator deliver? Most bench top power supplies can deliver up to 10A continuous but have a hard time with the in-rush current spikes that DC motors can draw. Testing with LiPo batteries directly is likely a better scenario. Just use a high current in-line fuse (like a 20A automotive fuse) just in case anything happens.

What does your L298 based H-Bridge look like, do you have flyback diodes installed and do you have a good sized heatsink on the L298?

Are you using PWM signals on the input lines or the enable lines?

South Africa
#8  

To upload a picture you need a link so post the picture in a nother website and enter the websites URL so you can upload the picture on this website