I am going to do one project in labview my requirement is to control the stepper motor in following way

while pressing one button in front panel the stepper motor should run in one direction in less than 30 RPM continuously. I have seen in USB 6008 specification we can only send digital I/O at 20mA. But, my application require minimum one kg -cm torque, for that the stepper motor that I am having will draw more than 20mA...(probably 0.5 to 1 A)

and I don't know what exactly the stepper motor driver will do... Can anyone elaborate the function of stepper motor driver ...? Can stepper motor driver amplify the current pulses (digital output) to produce required torque?

  • 5
    \$\begingroup\$ Reading the L297 & L298 data sheets would provide a good introduction, even if you don't choose to use those chips. \$\endgroup\$ – Chris Stratton Dec 21 '11 at 6:07
  • \$\begingroup\$ What kind of stepper motor do you want to drive? \$\endgroup\$ – abdullah kahraman Dec 21 '11 at 8:46

Is your project the stepper motor driver, or is this for another, larger project?

Unless you specifically want to learn about the intricacies of driving stepper motors, I would recommend just buying an off-the-shell stepper driver, either in IC form, or completely assembled.

I'm a big fan of the Allegro Micro stepper drivers.

If you want a simple, off-the-shelf solution, spark run offers a couple really inexpensive stepper-driver boards (seriously, they pretty much cost as much as the equivalent parts).

enter image description here enter image description here
(Images are links)

They would be quite simple to interface with your USB DAQ system too. It would just take two DIO lines. One would set the direction, and the other would cause the motor to step - one step per cycle.

  • \$\begingroup\$ what about the cost of these kind of drivers \$\endgroup\$ – vijay Dec 21 '11 at 14:16
  • \$\begingroup\$ what is the maximum current rating of this driver . i need 2A ouput \$\endgroup\$ – vijay Dec 21 '11 at 15:52
  • \$\begingroup\$ The current capability of each driver is listed on it's product page. (The images are links). \$\endgroup\$ – Connor Wolf Dec 21 '11 at 23:12
  • \$\begingroup\$ @Vijay - The question ultimately becomes 2A at what winding inductance and step rate? At higher rate * inductance, it's necessary to use a driver voltage many times the rated motor voltage and use a PWM current-regulating "chopper" architecture in order to force rated current through the winding inductance quickly. Otherwise the inductance means that current, and thus torque falls off rapidly with step speed and the motor may start skipping steps under load. \$\endgroup\$ – Chris Stratton Dec 22 '11 at 7:44
  • \$\begingroup\$ @Chris Stratton - both linked stepper drivers are "chopper" drivers. \$\endgroup\$ – Connor Wolf Dec 22 '11 at 10:01

Controlling higher currents and voltages with the digital output is done using switches. Stepper motor driving is basically the same. It may change depending on your drive technique and stepper motor type, however it will be just your digital output to electronic switches that controls the windings.

Go to here and scroll down to "Using a transistor as a switch" to learn more about this. Also, this video is a great tutorial. Don't forget the flyback (kickback, freewheeling) diode. Here is a video about that.

Also it is important to know your stepper motor type. Driving techniques differ by stepper motor and winding type, however the electronic switch theory remains the same.Here is a simple approach for a 5 or 6 wire, uni-polar stepper motor, when the transistors are powerful enough:

Simple transistor stepper motor driver

Using ICs like ULN2003A is an easy solution. However, watch out for the current and voltage ratings. ULN2003A is a 500-mA-Rated Collector Current (Single Output). That means when only one channel (like 1B or 2B or 3B... in this case) is ON, it can supply a current of maximum 500mA. If you are not going to do half-stepping, that may suit your work. I once drove a stepper motor with this IC. Also, check out L297 & L298 as Chris Stratton suggested. Don't forget to check out L293D.

  • \$\begingroup\$ It's worth noting that the schematic shown requires a unipolar stepper motor. If you have a bipolar-only stepper (recognizable as it only has 4 lead-wires), you will need a different driver setup. \$\endgroup\$ – Connor Wolf Dec 21 '11 at 8:22
  • \$\begingroup\$ Yes. I should add that there are different stepper motor types. Thanks. \$\endgroup\$ – abdullah kahraman Dec 21 '11 at 8:25
  • \$\begingroup\$ it helps me to learn how to use transistor as switch \$\endgroup\$ – vijay Dec 21 '11 at 14:15
  • \$\begingroup\$ @vijay, Is this a good comment or bad? I mean, positively or negatively? \$\endgroup\$ – abdullah kahraman Dec 21 '11 at 14:21
  • \$\begingroup\$ good only abdullah thanks yaar.... now i know how to amplify the current using transistor using ur source...my problem now is why we are using ic in stepper motor driver ...can u explain the function of some ic used in stepper motor driver....but thanks a lot for let me to see the valuable source about transistor... thats let me to learn more things \$\endgroup\$ – vijay Dec 21 '11 at 14:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.