How to control a 3A/3,6V Stepper motor ?

Hi,

Here's the background for my question : i have a 3 axis robot which works with 3 stepper motors. The whole thing worked with specific electronic cards stepper control which could handle up to 7A and 19V (Motors are 57BYGH405A and they need 3,6V and 3A current feeding).
For some reasons i don't want to use the electronic control card anymore and would like to change them with an arduino-based system. I've read tons of tutorials about the way to control stepper motors with L293, L298, L6203 or even LMD18200
I found that the L293 was not strong enough to handle 3A and 3,6V but i can't figured out if L298 could be OK. I found this tutorial http://ikalogic.com/shm_hb_l298.php which seems to be able to handle 4A Steppers - it would be great if anyone could confirm that it could control my motors. For the LMD18200 i saw that it works with at least 12V so i wonder if i can feed my motor with 12V and 3A without problem (as you can see my knowledge in electricity is extremely low !). Thanks for help and for any advice.

You can't run the LMD18200 at as low a voltage as 3V6, 12V is the minimum. At that voltage you will be driving way more that 3A through your motor.
To use 12V (or more) you need a switching regulator (or chopping regulator) driver. This is one but it can only be adjusted to 2A per winding and you will need a bit of a heat sink on it.

Do you actually need to run your motor at 3A? Most projects you could perhaps get way with running your motor at less.

Thank for your answer.
You're right, i saw that LMD18200 needs at least 12V, that's why i was focusing on the L298. The link i gave specify that L298 needs a minimum of 9V and can go up to 4A... If i feed the L298 with a 3A/9V current, will the motor be OK ? don't know if giving more voltage than what's needed will be a problem or not. I can't figured out what will be the problems if i use a 2,6A / 12V current or a 3A/9V current (these are what my supply can deliver).
I would like to keep the 3A level because my robot is quite heavy and needs a high torque to be moved. Maybe i could run it with a lower current but i'm really not sure, so keeping close to 3A is a kind of security !

If i feed the L298 with a 3A/9V current, will the motor be OK ?

No there is no such thing. If you power supply is limited to 3A then what happens if you try and take more current is the voltage drops and so it is less than the required voltage. The L298 is not a regulating driver. At these sorts of currents this is what you need. Note that 3A is the current in each winding, so for one motor you will need a 6A supply, unless you are microstepping the motor, if so you only need about 70% of the current on each winding at any one time.
If you want to drive at 3A that is fine but there is a price break at 2A after that stepping drivers get suddenly more expensive.

The L298n is rated at 2A absolute maximum DC per channel. However, the data sheet says you can parallel two channels to drive higher current - see Fig. 7 of http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00000240.pdf. That's what's been done in the tutorial you referred to. Of course, if you do this, you need one L298n per winding.

Thanks again for your answers.
I've noticed that there is a price break for controlling motors with more than 2A. And as price is unfortunatly an issue, i prefer to make my own shield rather than buying it. For my first test, i'll use regular stepping - i'd like to do some microstepping, but... later, once i'll be OK with the current issues. DC42, are you sure i need two L298N for controlling one step motor ? In this tutorial, only one seems to be required, but i'm not sure if that system is for a DC or a stepper motor. Do you know any good tutorial on that, because the link you gave is far too technical for my poor skills !
But i still wonder one thing : if i wire a supply than deliver 9V and 3A to one (or two) L298N to control my 3A / 3,6V motor, what will happen ? This voltage could dommage the motor ? Maybe there is a way to downgrade the voltage to 3,6V just before it comes in the motor ?

if i wire a supply than deliver 9V and 3A to one (or two) L298N to control my 3A / 3,6V motor, what will happen ?

I have already told you:-

If you power supply is limited to 3A then what happens if you try and take more current is the voltage drops and so it is less than the required voltage.

Also the motor overheats and the power supply overheats, shuts down at best and blows up at worst.

as price is unfortunatly an issue, i prefer to make my own shield rather than buying it.

But:-

because the link you gave is far too technical for my poor skills

Sadly in the world of electronics the price of economy is knowledge. The reason these things are expensive is because they are difficult to design and construct. So I would suggest that only with skills can you save.

Well, so i have to improve my skills !!! I didn't understand your answer about my current problem - sorry for repeating the question. I guess i have to better understand electricity issues... I think i'm gonna make a try with a L298 and feed it with 2A and 3V power supply and see if the motor runs in this configuration - if anyone has experience and/or a link toward a good L298 stepper control schematic, it would help me a lot

I strongly recommend using sense resistors and current limiting in your design, otherwise you risk damaging the L298n if the motor supply voltage is slightly too high. If you look at the L298n data sheet, you will find that it shows a design using the L297 and L298n to control a 2-phase stepper motor with current limiting.

I think i'm gonna make a try with a L298 and feed it with 2A and 3V power supply

Please no don't.

The data sheet says the minimum supply voltage is 2.5V above the supply voltage. The supply voltage has to be 5V to match the arduino so the smallest voltage you can use is 7.5V. The don't say these things in data sheets for fun. Even if it appears to work, which I doubt, it will not be a repeatable design, a reliable design, or a safe design.

i have to improve my skills !

You start by paying attention to what it says in the data sheet.

I didn't understand your answer about my current problem

If you have a 3A 9V power supply, that will give 9V at any current up to 3A. The current (in amps) is the maximum current it can supply. By using ohms law you will see E/I = R that is 9 / 3 = 3 Ohms. So a load of 3 ohms will draw 3A from the supply and the output voltage will be 9V, everything is in spec.
So what happens if you put a 1 ohm resistor across it. Then the current that wants to flow will be:-
E/R = I that is 9 / 1 = 9 Amps
but the supply is only capable of supplying 3A safely so the current increases a bit and the voltage drops a bit and everything is in danger of bursting into flames. Depending on the design of the power supply several things can happen:-

  1. Flames or magic smoke and the odd pop or bang.
  2. The power supply shuts down and it is like it is turned off.
  3. It carries on pumping just over the current limit into your circuit and the voltage drops to match, then it does 1 or 2
  4. Hiccup mode, the power supply turns off, then on sees the over current and turns off, and repeats every half second or so.

Many, many thanks Grumpy_Mike,

i understand (well, i think i understand) and will pay much more attention to datasheet. But it looks like i'm in a dead end : if L298 requires ar least 7,5V and no more than 2A, how can i feed my 3A/3,6V motor ? i guess that somewhere between the L298 and the motor there should be some regulation system. DC42, is it the purpose of the L297+L298 configuration - i think it is what you say but i'm not really sure.
For now, i understand that : i have to find a 7,5V / 2A power supply and a way to manage this current with L298 and the 3A/3,6V motor. The L297/L298 could be a solution for that as the motor could run with a 2A current. If you have other ideas/recommandations, i would be very happy. A tutorial on a arduino/L297-L298 would be great (i haven't found yet) - and many thanks for your answers, it helps a lot.

Yes the L297+L298 configuration will limit the current through your coils to what ever you set. However this then becomes a chopping regulator and there are all sorts of layout considerations to take into account because you have high current being rapidly switched.

These people sell drivers of higher current:-

Also look for people selling / making CNC stuff as they often have circuits you can copy.

Weel, i'd really prefer to do that by myself as it is a good way to understand the way it works. Looking again to the L298 Datasheet, i was wondering if the L297 is really needed to control the current flow. It seems like it is just there to give the good pulse order to the L298 which the arduino can do too. So i think that i can do it with only one L298. I also found a good schematic showing (effluvia of a scattered mind: Arduino L298 stepper motor driver)for a L298-only stepper control card. In both case (L297+L298 and L298 only) i can see that there are 8 2A fast response diodes which functionnality seems to limit current flow in the L298 and in the motor. Did i understand well ? That would mean that with one L298, a 7,5-12V and 2A max power supply and these 8 diodes i could control my 3A/3,6V motor (which will only have less torque than with a 3A current).

  1. The diodes catch the back emf of the motor when the H-bridge transistors turn off. The do nothing to limit the current.

  2. The L298n needs at least 2.5v more on the motor supply pin than on the Vcc pin, i.e. 7.5v. At this input voltage, it can output around 5v to the motors. If you were using motors with a maximum stall current of around 1A at 5v, then you wouldn't need the current limiting and you could drive the L298n directly fro the Arduino. However, as your motors are rated for 3.6v you need PWM control. You can do this with the Arduino, but make the slightest mistake and you will burn out the L298n, seeing that you are running it close to its maximum current. So I think that using the L297 to drive the L298n and limit the current is best.

It would be better to swap your 3.6v 3A motors for e.g. 7.2v 1.5A motors, then you can manage without current limiting if you get the supply voltage right. One other possibility might be to put a 1.8 ohm power resistor in series with each motor winding to bring the current down to just under 2A @ 5v.

Many motors can be wired up in several ways, some ways take less current and need more voltage. Can you post a link to the data sheet of you motor to see if this is the case for you.

Thanks DC42,

    • OK, understood.
    • I'd like to make a try with a L298 : i have a power supply that can deliver up to 1200mA with 7,5V and a small stepper motor that require 4,5 and 450mA. If this works, i'll try to change the small motor with the 3A/3,6V one : it should work too, i think, but with a smaller torque. Am i right ?
      And MANY thanks for your patience ad your answers.

mBlast:
If this works, i'll try to change the small motor with the 3A/3,6V one : it should work too, i think, but with a smaller torque. Am i right ?

If you do that, put a 2.7 ohm power resistor in series with the 3A 3v6 motor to limit the current at 5v to around 1200mA. But see also Mike's comment about driving the motor in different ways.

Guys... you're fantastic !
I'll do that try - i have to buy some 2.7 ohms resistors first. The datasheet of my motor can be found here : http://www.circuitspecialists.com/products/pdf/57BYGH405A.pdf

The datasheet of my motor can be found here

Thanks, sadly the alternative way of wiring that motor will only double the current requirements.