PWM constant current source ... help

R

Robert Latest

Guest
Hi folks,

I'm trying to think of a good way to implement a PWM cc source for an
inductive load (a small DC motor). For resistive loads like battery
chargers it's obviously enough to just toss a current-sensing resistor
into the source leg of the low-side driver. But for an inductive load I
need to take the current trough the freewheel diode into account.
Currently my basic current-sensing circuit looks like this:

,---+--+27V
| |
Motor |
V prop | |
/ to I /+|-----+ D1
/ / | | |
--+-R1---<G=1| Rs |
| \ | | |
C1 \-|-----+---'
| |
gnd D
PWM---G Q1
25kHz S
|
gnd

(plus, of course, error amp, sawtooth generator, comparator, gate
driver).

This kind of works (with some , but I need an auxiliary supply for the
diff amp because the drain of Q1 swings between 0V and Vcc + diode drop,
and the other node goes Rs*I higher. I'd like to avoid this. I added
dividers into the diff amp's inputs to circumvent this (CMMR not an issue
due to low accuracy requirements), but things are getting a bit messy
now. I can't put Rs into the top leg of the motor because I can't break
the connection between the +27V line and the motor (it's inside a black
box, quite literally).

Seeing that I need to build about 20 of these I started thinking: Maybe
there's a better way to do all this that I'm not aware of. Especially
since I'm not familiar at all with the electrical properties of DC motors
except that they are inductive (I'm thinking that they behave like a
constant inductance in series with a resistor that increases with rpm).
Perhaps there's some cool exploit to use.

The idea is to have a roughly constant-torque setup. The motor is rated
24V/1A. My first lashup simply used a 24V/25W lightbulb which almost
works well enough but dissipates too much power.

Thanks,
robert
 
Robert Latest wrote:
Seeing that I need to build about 20 of these I started thinking:
Maybe there's a better way to do all this that I'm not aware of.
Especially since I'm not familiar at all with the electrical
properties of DC motors except that they are inductive (I'm thinking
that they behave like a constant inductance in series with a resistor
that increases with rpm). Perhaps there's some cool exploit to use.

The idea is to have a roughly constant-torque setup. The motor is
rated 24V/1A. My first lashup simply used a 24V/25W lightbulb which
almost works well enough but dissipates too much power.

robert, there is not so much inductance as you think, and it will vary a bit
depending on the commutator , but there is an opposing voltage source that
models the back EMF of the motor and is depending on the rpm. Very important
is the DC resistance, which can be easily measured and is the foundation of
your design. That lightbulb is IMHO an appropriate test object for the
stalled motor, but when moving the voltage source might even revers the
current, what cannot happen with the light-bulb. You can also easily measure
the inductance with a L-meter.
--
ciao Ban
Bordighera, Italy
 
On 2005-06-10, Ban <bansuri@web.de> wrote:


robert, there is not so much inductance as you think, and it will vary a bit
depending on the commutator, but there is an opposing voltage source that
models the back EMF of the motor and is depending on the rpm. Very important
is the DC resistance, which can be easily measured and is the foundation of
your design.
Is it really? In the design i'm currently pursuing it isn't, but do you mean I
can replace the differential I measurement (including the I through the flyback
diode) by a more simple measurement with a source resisitor if I know more about
the motor charcteristics?

That lightbulb is IMHO an appropriate test object for the
stalled motor, but when moving the voltage source might even revers the
current, what cannot happen with the light-bulb.
I should have clarified: I didn't use the bulb as a "dummy motor", but
as a PTC current source in series with the motor. I'm seeking to replace the
bulb with an electronic circuit that is more accurate and gets less hot.

robert
 
Robert Latest wrote:
Hi folks,

I'm trying to think of a good way to implement a PWM cc source for an
inductive load (a small DC motor). For resistive loads like battery
chargers it's obviously enough to just toss a current-sensing resistor
into the source leg of the low-side driver. But for an inductive load I
need to take the current trough the freewheel diode into account.
Currently my basic current-sensing circuit looks like this:

,---+--+27V
| |
Motor |
V prop | |
/ to I /+|-----+ D1
/ / | | |
--+-R1---<G=1| Rs |
| \ | | |
C1 \-|-----+---'
| |
gnd D
PWM---G Q1
25kHz S
|
gnd

(plus, of course, error amp, sawtooth generator, comparator, gate
driver).

This kind of works (with some , but I need an auxiliary supply for the
diff amp because the drain of Q1 swings between 0V and Vcc + diode drop,
and the other node goes Rs*I higher. I'd like to avoid this. I added
dividers into the diff amp's inputs to circumvent this (CMMR not an issue
due to low accuracy requirements), but things are getting a bit messy
now. I can't put Rs into the top leg of the motor because I can't break
the connection between the +27V line and the motor (it's inside a black
box, quite literally).

Seeing that I need to build about 20 of these I started thinking: Maybe
there's a better way to do all this that I'm not aware of. Especially
since I'm not familiar at all with the electrical properties of DC motors
except that they are inductive (I'm thinking that they behave like a
constant inductance in series with a resistor that increases with rpm).
Perhaps there's some cool exploit to use.

The idea is to have a roughly constant-torque setup. The motor is rated
24V/1A. My first lashup simply used a 24V/25W lightbulb which almost
works well enough but dissipates too much power.
If you move the sense resistor to above the motor, things get a lot
easier. The voltage stays below the positive supply and does not have
the fast, large swings riding on it.

There are also differential amplifier based chips available that tie
to such a resistor and produce currents that are proportional to the
shunt current that can drive negative rail circuits, such as Zetex
ZXCT1008:

http://www.zetex.com/3.0/a4-5.asp

This series is limited to 20 volt supplies, but it may give you some
ideas.
 
On 2005-06-10, John Popelish <jpopelish@rica.net> wrote:

If you move the sense resistor to above the motor, things get a lot
easier.
I know, but I can't, as I have mentioned in my post. The motors are internally
tied to a common +24V supply rail.

robert
 
Robert Latest wrote:
On 2005-06-10, Ban <bansuri@web.de> wrote:


robert, there is not so much inductance as you think, and it will
vary a bit depending on the commutator, but there is an opposing
voltage source that models the back EMF of the motor and is
depending on the rpm. Very important is the DC resistance, which can
be easily measured and is the foundation of your design.

Is it really? In the design i'm currently pursuing it isn't, but do
you mean I can replace the differential I measurement (including the
I through the flyback diode) by a more simple measurement with a
source resisitor if I know more about the motor charcteristics?
Yes, measure first the DC-resistance and inductance.
Then measure the rpm and I with different voltages applied, 6/12/18/24V.. in
a no_load condition or if that isn't possible in the normal load condition.
You can now calculate the back EMF vs. rpm(should be quadratic). Then there
will be some friction, a more constant term. You can easily measure these
things by applying a regulated voltage with a Lab supply which can also sink
current.

o
|+
/ \
(_M_)
\_/
|-
|
|
.--------. |
|LAB +| o -'
|Power |
|Spply |
| |
| -| o -.
'--------' |
|
|
===
GND
(created by AACircuit v1.28 beta 10/06/04 www.tech-chat.de)


hope this helps
--
ciao Ban
Bordighera, Italy
 
On Fri, 10 Jun 2005 10:11:39 +0000, Robert Latest wrote:

Hi folks,

I'm trying to think of a good way to implement a PWM cc source for an
inductive load (a small DC motor). For resistive loads like battery
chargers it's obviously enough to just toss a current-sensing resistor
into the source leg of the low-side driver. But for an inductive load I
need to take the current trough the freewheel diode into account.
Why? If you're looking for constant torque, torque is proportional
to current, right? I think your circuit is way overkill. I did a
PWM once where I just used a constant-current sink, with a 0R6 or
so in the emitter of a TIP36 and a couple of 1N4148 diodes to drive
a constant voltage at the base. That's a fairly standard circuit,
and it gave full torque all the way down to a crawl.

|
,--+--,
| |
[M] [D]
| |
`--+--'
|
C
PWM -[R]-+--B
| E
[D] |
| [R]
[D] |
| |
GND GND

With all the obvious values and polarities.

Good Luck!
Rich
 
"Ban" <bansuri@web.de> writes:

Robert Latest wrote:
On 2005-06-10, Ban <bansuri@web.de> wrote:


robert, there is not so much inductance as you think, and it will
vary a bit depending on the commutator, but there is an opposing
voltage source that models the back EMF of the motor and is
depending on the rpm. Very important is the DC resistance, which can
be easily measured and is the foundation of your design.

Is it really? In the design i'm currently pursuing it isn't, but do
you mean I can replace the differential I measurement (including the
I through the flyback diode) by a more simple measurement with a
source resisitor if I know more about the motor charcteristics?

Yes, measure first the DC-resistance and inductance.
Then measure the rpm and I with different voltages applied, 6/12/18/24V.. in
a no_load condition or if that isn't possible in the normal load condition.
You can now calculate the back EMF vs. rpm(should be quadratic).
Surely the back emf is proportional to rpm, not quadratic?

<SNIP>

--

John Devereux
 
In article <3gt7aqFdpjkvU1@individual.net>,
Robert Latest <boblatest@yahoo.com> wrote:

I'm trying to think of a good way to implement a PWM cc source
for an inductive load (a small DC motor). For resistive loads
like battery chargers it's obviously enough to just toss a
current-sensing resistor into the source leg of the low-side
driver. But for an inductive load I need to take the current
trough the freewheel diode into account.
There is a (limited) relationship between Average motor
current and the Source current, depending on the ratio
of the clock frequency of the PWM, to the L/R time constant
of the motor.

With a slow clock, (PWM period large compared to L/R), the
conduction time of the flyback diode is small compared to
the OFF time. In this case the Average motor current is
approximately equal to the Average of the Source current.

With a fast clock, (PWM period small compared to L/R), the
diode conducts for the whole of the OFF time. A Sample-Hold
of the Source current in the centre of the ON period is
approximately equal to the Average motor current.

If the clock is fast enough, the motor ripple current is
small and a simpler Track-Hold of Source current during
the whole of the ON period might be ok.

You can judge whether it is a fast/slow clock by scoping
the Source voltage during the OFF period. If it is up
at (Vsupply + Vdiode) during the whole of the OFF period
then the diode is conducting continuously.

--
Tony Williams.
 
On 2005-06-10, Rich Grise <richgrise@example.net> wrote:

Why? If you're looking for constant torque, torque is proportional
to current, right? I think your circuit is way overkill. I did a
PWM once where I just used a constant-current sink, with a 0R6 or
so in the emitter of a TIP36 and a couple of 1N4148 diodes to drive
a constant voltage at the base. That's a fairly standard circuit,
and it gave full torque all the way down to a crawl.


|
,--+--,
| |
[M] [D]
| |
`--+--'
|
C
PWM -[R]-+--B
| E
[D] |
| [R]
[D] |
| |
GND GND

With all the obvious values and polarities.
But that's a bog-standard linear cc source, and in my application
it would burn ~24W with the motor stalled (27V supply voltage
with the motor dropping 3V at 1A). I'd rather not dissipate that
much heat because I don't want to add a fan to my enclosure.

Thanks,
robert
 
On 2005-06-11, Tony Williams <tonyw@ledelec.demon.co.uk> wrote:

[good stuff deleted]

Thanks, Tony, for your good advice. Of course I haven't gotten
round to taking any measurements but I'll soon do that. I'm
curious how the rpm of the motor influences the flyback time, if
at all.

robert
 

Welcome to EDABoard.com

Sponsor

Back
Top