I am new to the forum and have learned quite alot by lurking. I now have a question that I cannot find the answer to, so time to post!
We have an old tensile tester at work. It is basically a load frame (a frame with a moving head, pulls apart or crushes things) and an old 1970's controller unit. I would like to replace the control unit with an arduino-based solution. It needs to control a large stepper motor in the load frame. Torque 2076 oz-in, terminal voltage 62.7 V, continuous current 7.9 A.
Question: Is there a simple circuit which an Arduino can use to control current to each terminal? Or do we need to use a driver such as this? Anaheim Automation
Tyguy:
Thanks for the reply. I had imagined that the Arduino could be used to sense and control current via PWM. It appears that's incorrect...
You don't use PWM with a stepper motor. Stepper motor drivers just need short step pulses at suitable intervals.
PWM is used to control the speed of a DC motor or the brightness of LEDs. But even then you need some sort of driver between the Arduino and the motor. The Arduino cannot handle the current required even by a very small motor.
Within the stepper driver PWM is probably used to manage the current in the motor coils - but that is nothing to do with the Arduino.
Robin2:
Within the stepper driver PWM is probably used to manage the current in the motor coils
That's exactly my thought. Why does a stepper driver need to do it? Why not build a dual H-bridge which is controlled by the Arduino's PWM? If the Arduino is given feedback from a current sensor, then it could control the coil current by controlling the duty cycle?
The larger stepper drivers are costly, but a dual H-bridge would be much more affordable
Because it makes life SOOOO much easier. There is a lot of complexity built into a stepper driver.
The sampling of current in the stepper coils has to happen at very high speed (many times per step). Even if an Arduino cold do it fast enough it would have no time for anything else.
And stepper motor controllers are often dirt cheap. Fully loaded (with voltage regulators and filtering caps) breakout boards are often not much more expensive than the bare chips.
And you can get away with only two pins... STEP and DIR. The others can be set permanently via pull-up or pull-down resistors.
If the worst happens and your lines to the stepper motor develop a fault, that will often take your stepper motor controller down (permanently) due to high voltage flyback that is greater than what internal flyback diodes can handle. Better that a cheap drive board go than your $30 Arduino!
This also means you can control the motor controller with a very simple device. Like an AtTiny85. Who can say no to a tiny little computer with only 8 pins that costs a few dollars?
Robin2:
Because it makes life SOOOO much easier. There is a lot of complexity built into a stepper driver.
The sampling of current in the stepper coils has to happen at very high speed (many times per step). Even if an Arduino cold do it fast enough it would have no time for anything else.
...R
I understand now. The Arduino could not monitor and respond to the current fast enough. Thank you for taking the time to answer, very much appreciated!
Rylee_Isitt:
And stepper motor controllers are often dirt cheap. Fully loaded (with voltage regulators and filtering caps) breakout boards are often not much more expensive than the bare chips.
And you can get away with only two pins... STEP and DIR. The others can be set permanently via pull-up or pull-down resistors.
If the worst happens and your lines to the stepper motor develop a fault, that will often take your stepper motor controller down (permanently) due to high voltage flyback that is greater than what internal flyback diodes can handle. Better that a cheap drive board go than your $30 Arduino!
This also means you can control the motor controller with a very simple device. Like an AtTiny85. Who can say no to a tiny little computer with only 8 pins that costs a few dollars?
Unfortunately in this case, the driver is not dirt cheap... See the specs in my first post. If you know of a suitable driver for <$30, please share!!
Available from Digikey for about $4 for a single unit.
However it looks like this sucker needs a lot more supporting components than the lower-power devices from the same company. That's because it's intended to drive enough power that you want power MOSFETs with their own heat sinks. And of course you'd be looking at making your own PCB and dealing with surface mount stuff.
Hi,
Do you have a part/model number for the "stepper motor"
Can you post a picture of the motor, please?
Can it be a servo motor?
Do you have any circuit diagrams of the old equipment?
I use Veroboard as well. I've been thinking of getting into SMD stuff, though.
I watched a few how-to vids and it seems like it could actually be easier than through-hole soldering if you use solder paste, a solder mask, and a stencil. But there's that initial investment in tools, plus prototyping is a bit more annoying I'm sure.
You might be able to make do by getting the chip put on a breakout board (you'll be able to buy pre-made ones for different chip packages) with solder paste and an electric skillet. Then use veroboard for the rest.
Myself, I'd risk the cheaper units with the understanding that QA on such devices is simple (in theory). So if they tested it, and are providing a warranty against DOA units, I think it's worth the risk.
Most of these high current drivers are marketed to CNC folks, and that makes a good way to find them. Searching for "stepper motor controller cnc" brought up some decent results in Amazon. eBay is another option. Most are below your specified current, but some of them are getting close, and for far less than $300.
I can't attest to the quality of any of these units, but in general I've had good luck with "cheap" units from Amazon/eBay. For those that have reviews, avoid ones with lots of bad reviews. And I'd spend the extra bucks for a decent power supply, though. Bad ones can start fires. The quality of the capacitors is important.