Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

unipolar step motor

my 4 axis(X,Y,W,Z) and 6 wired step motor goes clockwise and anti clockwise if I go through X-Y-W-Z and Z-W-Y-X respectively. However, If I try to go in order X and W, motor is not rotating(clockwise) as expected. It's doing the opposite. Why is this happening?Isn't it supposed to go clockwise because I am moving it in clockwise direction.

 

Can I do something like whatever position motor is , if I am trying to work with the motor I want to assume the present position as the first position(X)?

 

Do you think this is something to do with calibration?

 

Thank you.

 

0 Kudos
Message 1 of 6
(2,756 Views)

I'm a bit confused on your application. Would you be able to post a snippet of the code? 

Additionally, what NI SoftMotion hardware are you working with? 

R Dahlman

Message 2 of 6
(2,731 Views)

Thank you. I am attaching the snippet. So if I am going step by step in CW or CCW direction it moves accordingly. If I skip a step say I move the knob from X-Z(CW) and run the vi, motor instead of rotating in clockwise direction rotates in Counter clock wise direction. 

 

Download All
0 Kudos
Message 3 of 6
(2,728 Views)

Would you be able to describe your hardware setup? (What drives, NI-DAQmx hardware, etc you are using?) 

Typically, I'd say this behavior is being caused by some incorrect signals being sent to the motor or the drive for the direction.

Message 4 of 6
(2,704 Views)

I am using a voltage supply, myDAQ card and a motor. So when I run the program with the knob position as A,B,C,D and the reverse order D,CB,A it goes from clockwise and counterclockwise respectively. When I turn the motor in order A and C, skipping the step B, it will not rotate clockwise, because the order is not sequential enough to energise the motor windings. How can I solve this?

 

 

0 Kudos
Message 5 of 6
(2,687 Views)

Since I don't have specific information from you on what signals the motor is expecting, I can give a couple suggestions on what I understand so far. 

1) Keep track of the previous motor state using shift registers in a loop. You can then implement logic for what to do when steps are skipped to ensure that a move from A to C actually performs the actions for A, B, and C. 

OR

2) Your loop may not be running fast enough to catch the intermediate moves. An Event Structure looking at value changes on the phase knob will queue up each value change. 

0 Kudos
Message 6 of 6
(2,675 Views)