Home     Contact     Forum     Projects     Experiments     Circuits     Theory     BLOG     PIC Tutorials     Tech-BLOG     RSS     Terms of services     Privacy policy  
 Home     Contact     Forum     Projects     Experiments     Circuits     Theory     BLOG     PIC Tutorials     Tech-News     RSS   

PCB Fabrication
15 July 2010
Author: Giorgos Lazaridis
Simple Unipolar Stepper Motor Full Step Controller


The circuit on a breadboard for test

It is not really necessary to use a micro controller or a special IC to control a stepper motor. So, here i present a very simple and basic full-step stepper controller for a unipolar motor. If you do not know how stepper motors work and how they are made, what is unipolar and bipolar, or what is full-step, half-step and micro stepping, i strongly suggest that you read first the theory page "How stepper motors work and how they are made" that i wrote a few months ago.







The circuit

Here is the schematic circuit for the controller:





As you see, i only use the 4017 CMOS chip. This is a decade counter/divider. The input pulses comes from your pulse generator. Each pulse, will increase one count to the 4017. This will happen 4 times, for counts 0 to 3. When in count 4, the chip will self reset (from the wire Q4 to reset) and will start over again. The first 4 outputs (Q0 to Q3) are driving the 4 mosfets. Power the CMOS with 5 volts otherwise the mosfets will not work! This is very important. You can use whatever voltage for the motor, but for the chip you must use 5 volts! Not more. If you badly want to use more, then you need resistors for driving the mosfets!

Notice that i have no interface for the input pulses. I suppose that the pulsing circuit that you will use, will have the same supply and output power as the 4017. If not, then i suggest you use the following circuit to drive the pulses to the 4017:





This will work for low and medium voltages. If your pulses are more than 12 volts amplitude, you may consider increasing R2. As for the mosfets, these are my favorites-yet a little bit expensive. They have some remarkable DC characteristics. Can handle up to 100 Volts, with the incredible 0.055 Ohms RDS(on)! The voltage drop due to the mosfet is ridiculously low. 22 amperes can go through continuously, while up to 88 amperes pulsed can be controlled! I like it.




How to connect the stepper motor

My stepper is unipolar with 5 wires - this means it has one common

From each mosfet, there is a pin output, a total of 4 outputs comes from the circuit. Also, notice on the right side the fifth pin. This is the power supply of the motor. This must have the positive supply, whatever it is. In my case, the motor has 12V coils and therefore my supply is 12 volts. This may change according to the motor power supply.

The first 4 pins, must be connected to the 4 coil outputs of the motor. You need to pay attention to the coil sequence. If the sequence is incorrect, then the motor will not rotate correct. It may go clockwise and counterclockwise with no certain order. In any case, the pulses from the above circuit are delivered in the following order: 1 - 2 - 3 - 4. It's up to you to find the correct coils of your stepper.

The fifth pin goes to the common of the coils. As i said at the beginning of this article, the stepper must be unipolar. This means that there is one (if your stepper has 5 wires like mine) or two common wires (if your stepper has 6 wires). If your motor has 5 wires, then the common wire goes to the 5th connector. If your stepper has six wires, then both common wires goes to the 5th connector!

There is also one case that your stepper has 8 wires. Most probably, you have an 8-lead stepper. This type can be connected both as unipolar and bipolar. Read this page to see how to connect the wires.




Bill Of Materials
Semiconductors
D1-D41N4001 General Purpose Diode Rectifier 
Transistors
Q1-Q4IRF540 22A, 100V, 0.055 Ohm, N-Channel LOW GATE CHARGE STripFET(tm) Power MOSFET 
Integrated Circuits
IC1CD 4017 Decade Divider/Counter 




Relative pages
  • 555 timer basic circuits
  • How Brushless Motors Work (BLDC Motors)
  • How are DC motors made and how they work
  • Learn how RC Servos work
  • How the Stepper Motors work
  • Why and How to control PC Fans
  • High frequency PWM fan rpm controller with the 555




  •  Rate this article!


    Comments

  • At 21 August 2011, 19:07:48 user Mike wrote:   [reply @ Mike]
    • i have used CD4017BE and had hard time in the beginning to make it work but i found out that i need to connect PIN # 8 to the ground and PIN # 16 to 5 VDC.

      After that it works good.
      thank you the author for sharing his knowledge with us


  • At 9 March 2011, 21:36:28 user arc_0425@yahoo.com.ph wrote:   [reply @ arc_0425@yahoo.com.ph]
    • hi again sir. I tried putting resistor (470 ohms) as what you've said and finally my cmos ic did not get hot anymore. My another problem was when I try to connect the motor,it didn't work, and as some electronics book that I have read,mosfet are very delicate to static charges,please help what should be done to prevent these damages because these stuffs are quite expensive to buy. Also can I replace these with medium power transistors such as the TIP31 / TIP 41? Please advise again. Thank you very much.


  • At 9 March 2011, 6:40:29 user Kammenos wrote:   [reply @ Kammenos]
    • fernando try a resistor between the CMOS and the mosfet. A value between 100 ohm and 1 kOhm. Test


  • At 8 March 2011, 21:50:05 user c fernando wrote:   [reply @ c fernando]
    • hi again sir.I had this problem regarding the driver. I used already the 4017 cmos ic and found out that its getting hot while i connected it with the mosfets ( I did not connected yet the stepper motor ). I used two kinds namely IRF740 and IRFZ44. Does these mosfets match with the 4017 ic? I also followed the schematic diagram provided in your webpage. Thanks again...


  • At 8 March 2011, 6:33:50 user Kammenos wrote:   [reply @ Kammenos]
    • fernando, regarding the 1.3V, i strongly suggest you use STK chip (http://pcbheaven.com/circuitpages/Full_Half_Stepper_Motor_with_STK672). But for the 12V, i suppose that the only limitation is the current. The IRF540 are very tough guys. Most probably this will work. Share with us your results if you test it


  • At 8 March 2011, 5:53:58 user c fernando wrote:   [reply @ c fernando]
    • your experiment looks more simplier, anyways I'm working on a semiconductor company and I had lots of stepper motors that are quite bigger and heavier. Does the circuit can run these motors? They are 5.1V
      while the other one is 12.2V, and the worse is that I had this 1.3V stepper motor..Please advise..


  • At 10 January 2011, 2:23:34 user gumilard wrote:   [reply @ gumilard]
    • Thanx for the info before, I'll check the following link :D

      Uniquely your project is so simple frend :P . do your steppers that you use are for a high rpm or not? how about my mine? here I guide you to my stepper 12V, it say step per revolution is 48 and step angle 7,5. hearing that, does my stepper construct for high rpm or not? hoiya, in a fact I'm using BD139 to drive it And my PIC program drive it for double phase.


  • At 10 January 2011, 1:50:36 user Kammenos wrote:   [reply @ Kammenos]
    • hi gumilard. this is a normal reaction of the motor. the maximum speed is mostly determined by the mechanical characteristics of the motor. if you are using a simple full or half stepper motor controller, then this will be the maximum speed. you may want to test a micro stepping that will definitely increase a bit more the speed, but do not expect an awesome increase. check these links:
      - http://pcbheaven.com/circuitpages/Microstepping_Driver_with_the_Sanyo_STK672_080
      - http://pcbheaven.com/blogpages/Product_Review_Linistepper


  • At 10 January 2011, 1:37:47 user gumilard wrote:   [reply @ gumilard]
    • hi frend, I gotta a hard case at least for me. Mmm I want to increase an unipolar stepper motor (55M048D2U) 12 volt. when I try to increase pulse, The motor looks jammed. what should I do? oh yea, I\'m using PIC microcontrol to generate the pulse. Do that circuit can use for my stepper to? would you like to help me for all following circuit of my project?


  • At 26 August 2010, 22:53:44 user Ed K. wrote:   [reply @ Ed K.]
    • I ordered a 4017 chip and used IRF630's mosfets. This was my first attempt at operating stepper motor. I used a 555 timer to generate the pulses. Trial and error with the motor phases connections finally got my stepper turning in one direction only. I used a small 7.5 degree, 5 volt motor. Great circuit for learning about stepper motor operation.


     

      Name

      Email (shall not be published)

      Website

    Notify me of new posts via email


    Write your comments below:

          






    delicious
    digg
    reddit this Reddit this
    Faves

    Search PCB Heaven


     HOT in heaven!



    PCB Heaven chirps on Follow me on Twitter

    TAGS cloud

    Stepper Motor  Motor Controller  Stepper Controller  Electronic Circuit 



    NEW in heaven!



    New Calculus: Common Base transistor amplifier - Design Calculator

    Random Circuits!
     LED Fade-In Fade-Out Dimmer
     PIC Precision Thermometer and Humidity meter using the SHT15



     Home     Contact     Forum     Projects     Experiments     Circuits     Theory     BLOG     PIC Tutorials     Tech-News     RSS   

    Site design: Giorgos Lazaridis
    © Copyright 2008
    Please read the Terms of services and the Privacy policy