View Full Version : Quick/stupid question about motor power

big_mark

03-24-2007, 01:48 AM

Hi

I have some bipolar stepper motors (4.25volts, 0.425 amps per coil) that I want to drive with an Allegro A3980. I'll be powering them with 24 volts and the A3980 will limit the current with PWM. My question is what should I limit the current to? Should I limit it to 0.425 amps per coil, or should it be lower so that the total power does not exceed 1.80625VA (4.25 volts x 0.425 amps)? If its the latter, the current should be limited to 0.0753 amps (1.80625VA / 24 volts).

T Chap

03-24-2007, 01:53 AM

Limit to the motors max A rating. The formula for the Ref pin is in the data sheet. I would recommend the 3986 if you have not already built the boards. i.e. a 2 amp rated motor would use a formula at Vref to not exceed 2 amps.

big_mark

03-24-2007, 02:07 AM

Thanks for the quick reply!

I think I'll stick with the A3980 as my preferred supplier (Farnell, in the UK) does not stock the A3986. And the A3986 needs external bridges. The A3980 doesn't.

From the A3980 datasheet, the formula for calculating the current limiting sense resistor is Itrip=Vref/(8*Rsense). I want to use the chip in microstepping mode, so Vref cannot be more than 4volts. I'd rather not have to add another voltage regulator so Vref will be 3.3volts but 3.3volts/8=0.4125amps which is less than the 0.425amps my motors can tolerate so does that mean I do not need a resistor??

Edit: Just had another look at the Allegro A3986 datasheet, and it uses the same formula for working out Itrip. But the maximum Vref is even lower at only 2 volts! So 2volts/8=0.25 which means that the A3986 can only supply 0.25 amps per phase! This is obviously wrong, so what part of this am I not understanding correctly?

Post Edited (big_mark) : 3/23/2007 7:17:59 PM GMT

T Chap

03-24-2007, 02:47 AM

The 3986 is not supplying any current to the motor. The mosets supply the current, switched by the 3986. The mosfets switch the supply and the max amp rating is based on the mosfet selection, not the IC.

The max Ref in to he 3986 is 2v, but look at the formula again and understand what that Ref is doing. It is feeding a comparator inside the chip, the Rsense value sets the sense voltage, and is compared to the Ref.

If you want flexibility in the future, design around the 3986 and you can run motors up to 50V, any amp rating. The 3980 is finite with no room to expand beyond it's 1amp limit.

In any case, use the highest voltage you can get up to 35v, then limit to .425 is that is your motor rating. Most steppers have the A rating stamped or stickered on the motor. The hiher the voltage, the better the performance. Start with the Ref pin very low when you start testing, meter the Ref pin and sloly bring it up to the rated value(formula), check for heat on the chip and the motor.

Post Edited (TChapman) : 3/23/2007 10:00:29 PM GMT

big_mark

03-24-2007, 05:34 AM

TChapman said...

The 3986 is not supplying any current to the motor.

Not directly, no. But it is regulating the mosfets based on the values of Vref and Rsense.

TChapman said...

If you want flexibility in the future, design around the 3986 and you can run motors up to 50V, any amp rating. The 3980 is finite with no room to expand beyond it's 1amp limit.

I fail to see how using the A3980 will cause me any problems. Since my motors are only rated to 0.425 amps per coil, the total for both is only 0.85 amps. As you say, the A3980 can only handle 1 amp. I'm not whether thats in total or for each winding, but either way it is as much as I think I need. Surely too much current will overheat and/or shorten the life of the motors?

TChapman said...

The max Ref in to he 3986 is 2v, but look at the formula again and understand what that Ref is doing. It is feeding a comparator inside the chip, the Rsense value sets the sense voltage, and is compared to the Ref.

So assuming I'm using an A3980, given a Vref of 3.3 volts and a maximum current of 0.425 amps what should the value of Rsense be? This is what I'm stuck on. Lets say, for arguments sake, I use a 50ohm resistor for Rsense. Using the formula in the data sheet Itrip = Vref/(8*Rsense), we get Itrip = 3.3/(8*50) = 3.3/400 = 0.00825 amps current limit???? That cannot be right, surely.

Edit : After working through the formula like this :

I=V/(8*R)

I*8*R=V

8*R=V/I

R=(V/I)/8

R=(3.3/0.425)/8

R=0.9706

I came up with a value for Rsense of 0.9706 Ohms!

Post Edited (big_mark) : 3/23/2007 10:44:30 PM GMT

T Chap

03-24-2007, 05:46 AM

I was respnding to your quote that "the A3986 can only supply 0.25 amps per phase", in which case the 3986 isn't supplying ANY current to the motors, only current/voltage to the fets, which has nothing to do with motor current ratings. Sorry if I misunderstood what you are saying.

Taking a real wolrd example of the 3986,

Itrip(max) = Vref/(8xRsense)

Itrip = 2v/(8 x .4) using .05 ohm sense

Itrip = 2/(.4) = 5 amps

Itrip = x/(.4) = .425

Itrip = .17/(.4) = .425

Vref = .17V to get max current .425

BTW your motor should have a rating on it, not per phase, just a number, usually part of the part number or model number. That is the number to use for max.

**You shouldn't use anything larger than a .1, even .05 is good.

Post Edited (TChapman) : 3/23/2007 11:09:37 PM GMT

big_mark

03-24-2007, 05:59 AM

From my motors datasheet :

Tamagawa Hybrid Stepper motor model ETS535

Step angle : 0.9 degrees

Rated voltage : 4.25V dc

Rated Current : 0.425A per phase

Winding resistance : 10ohm

Winding inductance : 8.5mH

I'm still confused though. The formula on page 10 of www.allegromicro.com/datafile/3980.pdf (http://www.allegromicro.com/datafile/3980.pdf) says that the value of Rs is given in ohms, in which case I need a 0.9ohm resistor. Is that right?

T Chap

03-24-2007, 06:01 AM

"It is critical that the maximum rating (0.5 V) on the SENSE

pin is not exceeded"

Hang on I made an error in the formula, I will update it now.

.1 is typical, even .05, .9 is too high, check the datasheet for maximum Sense pin as I posted above.

I changed the formula, I was * instead of /.

Ok, your motor has two phases, and two sense resistors. Each phase is rated at .425, so you calculate based on .425, NOT .425 * 2

said...

I'm still confused though. The formula on page 10 of www.allegromicro.com/datafile/3980.pdf says that the value of Rs is given in ohms, in which case I need a 0.9ohm resistor. Is that right?

Yes it is given in ohms. But that factor is not a fixed number, it is what you use in your circuit. Usuaqlly a .1 or .25, or .05.

Post Edited (TChapman) : 3/23/2007 11:12:37 PM GMT

big_mark

03-24-2007, 06:10 AM

So if I use a 0.5 resistor for Rsense I get

Itrip = 3.3/(8*0.5)

Itrip = 3.3/4

Itrip = 0.825 - way too high!

However, with a 1 ohm resistor we ge the following :

Itrip = 3.3/(8*1)

Itrip = 3.3/8

Itrip = 0.4125 - Perfect! Just a little under the max. rating for my motors

So I do need a 1 ohm resistor then...

T Chap

03-24-2007, 06:11 AM

Not .5, use .05 or .1

Why do you keep putting 3.3v? The Ref pin is set by a trim pot, from 0 to 3.3. That is how you set it. You going about it backwards, you set the Vref by a pot, usually a multiturn 10k.

Post Edited (TChapman) : 3/23/2007 11:18:12 PM GMT

big_mark

03-24-2007, 06:13 AM

Alright then. Lets put a 0.1ohm resistor in the equation!

Itrip = 3.3/(8*0.1)

Itrip = 3.3/0.8

Itrip = 4.125 amps!!!! WAY TOO HIGH

T Chap

03-24-2007, 06:15 AM

Read my last post. You are right it is too high, that's why you have a trim pot to bring it down. I have clearly shown the example of 2v as REf, then I modified it to your case. Re-read the above posts, as they show what needs to happen.

Adjust the trip pot to set the voltage, the trim pot is configured as a voltage divider.

You should write to Allegro tech support and ask for the schematic to the 3980 demo board, just copy what it shows. I understand that you do not have the complete schematic, but Vref is a number that gets set externally by a pot, not by sending it straght Vdd.

Somebody said...

The recommended value of the sense resistor, RS (Ω), is

given by

RS = 0.5 / ITripMAX

up to a maximum of 1 Ω for ITripMAX of 0.5 A. Below 0.5 A,

RS should be 1 Ω, and VREF reduced accordingly, as shown

in the following table.

The datasheet has a lot of inof on setting the values for Sense, read page 16 for more info. 1 ohm is suggested bo below .5 amps

Post Edited (TChapman) : 3/23/2007 11:24:15 PM GMT

big_mark

03-24-2007, 06:20 AM

Ok its starting to make sense now. I was working from a fixed Vref and varying the Rsense, not the other way round. I do have to ask though, what difference does it make? And what is wrong with the way I was doing it??

Edit : Just read the table on page 16 and the recommended values for Vref and Rsense are almost exactly what I was suggesting in the first place.

Post Edited (big_mark) : 3/23/2007 11:29:07 PM GMT

T Chap

03-24-2007, 06:28 AM

The problem is, the higher the sense, the higher the sense voltage. There is a maximum sense voltage you can send to the IC. above .5 volts and you kill it. The Ref is most always set by metering the trim pot to set precisely the Itrip value. In some case, the value can simply be set by a voltage divider (two resistors), to set the Ref pin value as fixed. The current changes also depending on whole, half, etc, so you have to first decide which mode you want, then set the ref accordingly. This is all covered in the datasheet, which I recommend you study till it becomes clear.

There are min and max values for Vref. I didn't check the 3980, but the MAX REF input on the 23986 is 2volts! The 3980is higher, up to 4. . You have to know what ALL the parameters are before making sense R decisions, and REF decisions.

Post Edited (TChapman) : 3/23/2007 11:43:17 PM GMT