Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Stepper Motor help

Status
Not open for further replies.

shico90

New Member
Hello,
I'm using unipolar stepper motor with 4 coils for my robot and i'm programming the micro-controller to drive the stepper motor
The problem is I tried every sequence with the motor and I can't make it rotate in one direction it is always rotate in one direction for two steps then redirect its direction in the other direction
I tried these two sequences
0001
0010
0100
1000

and I tried also
0101
1001
1010
0110

the two sequences don't work at all
Could anyone help please?

Another question
Is there a way to determine the right order of the coils?

thank you
 
I take that you fed the output of the uC directly to the motor? You need to interface for more power to drive the stepper motor. If you've done that, please post the schematic and the code as well.

Cheers.
 
I take that you fed the output of the uC directly to the motor? You need to interface for more power to drive the stepper motor. If you've done that, please post the schematic and the code as well.

Cheers.

no, I used protection circuit with a drive circuit using photo coupler
the code for every step

if (PINB==0x00)
PORTB=0x05;

else if (PINB==0x05)
PORTB=0x09;

else if (PINB==0x09)
PORTB=0x10;

else if (PINB==0x010)
PORTB=0x06;

else if (PINB==0x06)
PORTB=0x05;
 
try this order too...

0011
0110
1100
1001

cheers
 
Last edited:
If the first two steps are in the correct direction then try,
0001
0010
1000
0100

If that doesn't work, which bits correspond to which phases?

Mike.
 
I've had this problem before and it was always caused by connecting the phases up in the wrong order, weak drive current or sequencing the phases to quickly. Check you connections, check your current and try slowing everything down and slowly ramp the speed back up (assuming you don't have a spec sheet for the motor and need to guess).
 
I can suggest a nice way to determine coils of Stepper motor.


Put DMM in Resistor mode.
For Unipolar motor,
Take any wire and measure resistance between that wire and every other wire.
You will get resistance only with 2 wires out of 5/6 wires.So these 3 wires are part of one coil.Same way find other group of coil.

now in each group again measure resistance.One wire will give same resistance with other wires.It is your common and other two wires are your coil!
 
rotation sequence has to be identified before connection and thats the important, then your first output sequence is correct.

the simplest way to find the rotation sequence is using the proper voltage source and connect it between the common and each coil, write down the sequence until you figure out the proper way. I used this way every time.
 
Years ago when I first wanted to learn about uC's and steppers I bought the Square 1 'easy steppin' book. One of the first circuits is a simple one where one can workout the correct sequence for any stepper, I made one and still use it today when I want to find out the stepper sequence.

Another way is to check as described above, the resistance between a coil will be twice that of the common, so with a 5 wire stepper 2 pair will be at say 150 ohms and the common will be 75 ohms. Also 5 and 6 wire unipolar steppers can be run in bipolar mode by leaving the common unconnected.

Cheers Bryan
 
maybe check you clock speed, too fast or too slow the motor doesn't rotate proper due to induction values
 
......mine only worked between frequencies of 100 Hz and 500Hz, after that it would "jitter" , i was using the L297-l298, but had a fair sized motor
 
You could test it on your PC using something like the Phidgets Stepper motor controler. I've used these cheap boards a lot for prototyping etc.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top