> Wow awesome!
> Just to check, you just cut the 12 volt power wire
> and replaced it with 24 colts?
No young horses were involved. LOL.
I basically made a harness of three HDD power supply connectors,
removed the red wires (the 5v is provided by the 24v through the on-
board 7805). Soldered the three yellow ones to the +24v supply lead.
Soldered the six black ones to the supply ground lead, plus an
additional black wire that I ran over to a black wire near big
motherboard connector. That is an attempt to makes sure the power
supply grounds are equal. There are probably also grounds in the data
lines. This does make multiple grounding paths, which is generally not
a great idea but it seems to work, and is no worse than the original
setup in that manner.
I'll get some photos up today of how I did it. I am not sure the 24v
2.5A desktop supply is up to the task, I bought it for LED lighting
and never really checked the specs against what the 3x steppers would
need.
> What stepper motors are you driving with
> these? (The MakerBot machines' steppers
> are only rated to 14V.)
To my understanding of steppers, (which may be flawed) the limiting
issue is heat. Heat comes from putting in too much current at any
voltage. Since in theory the A3977 limits the current to the same
value at the motor for both 12v and 24v, the heat in the motor should
not change. If you put a constant 14v on a coil of the stepper I think
it would get very hot.
The electrically the motor is a coil. You want to make a magnetic
field with the coil. The magnetic field is created by the current in
the coil (which is why an ideal stepper motor driver would be an ideal
current source).
At rest, the average voltage that the A3977 has to apply to the motor
may be quite low for the motor to draw the current set by the A3977.
This state is governed by the motor's DC resistance and Ohm's law.
V = I * DCR
Since motors DCR is probably small, the A3977 will reduce the voltage
to a small value -- just enough to maintain I. This limits the total
power in the motor:
P = V * I
When a coil is switched on, the transient is governed by:
V = L di/dt
(the voltage seen on the motors coil is equal to the inductance of the
coil, times how fast the current is changing)
The L we can't really change. It is a function of how the motor is
wound.
We want a big di/dt (get the current going quickly so the magnetic
filed and thus the torque happens quickly, so the motor can keep
torque at higher speeds).
If you increase the V you can increase the di/dt and step the motor
more quickly.
Whether the motor can handle this is really about how well the A3977
does its job of limiting the current.
> How are you managing heat generated in the
> A3977 chip? That 2.5A max rating only holds
> if you have it well heat-sinked and possibly
> fan-cooled to keep the internal temperature
> within spec.
I have not changed the vref pot setting on the stepper, so hopefully
MBI set it reasonably and therefore current is reasonable.
I should measure that to makes sure it is an OK value.
The heat in the A3977 is largely dependent on the current and the DCR
of its internal FETs. It has an internal charge pump to drive the
gates of the FETs really high so they turn on hard. Cleverly, this
charge pump allows them to use the better N FETs to pull up and pull
down.
In any case, I'll give the A3977 a "rule of thumb" test today and see
if they have a reasonable package temperature.
The A3977 is a pretty cool chip:
http://www.allegromicro.com/en/Products/Part_Numbers/3977/3977.pdf
Do you have a handy link to the Cupcake stepper motor data sheets? I
poked around on the wiki a bit but did not find it right away.