cancel
Showing results for 
Search instead for 
Did you mean: 

powerSTEP01: Why do 1/32, 1/64, and 1/128 step modes yield the wrong number of revolutions?

ABrin.1
Associate

I'm using an X-NUCLEO-IHM03A1 expansion board (powerSTEP01) plugged into a NUCLEO-F401RE development board. When using current control mode in the SPINFamily Evaluation Tool, I have encountered strange results when operating at higher microstepping modes. See below. The values were entered into the Move field (incremental move by number of microsteps) in the SPINFamily tool. Please note that I am using a 1.8-deg, NEMA17 stepper motor (200 steps/rev).

full step mode --> entering 200 steps yields 1 full revolution (normal)

1/2 step mode --> entering 400 steps yields 1 full revolution (normal)

1/4 step mode --> entering 800 steps yields 1 full revolution (normal)

1/8 step mode --> entering 1600 steps yields 1 full revolution (normal)

1/16 step mode --> entering 3200 steps yields 1 full revolution (normal)

1/32 step mode --> entering 6400 steps yields 2 full revolutions (not normal)

1/64 step mode --> entering 12800 steps yields 4 full revolutions (not normal)

1/128 step mode --> entering 25600 steps yields 8 full revolutions (not normal)

The motor runs smoothly, but it does not turn the expected number of turns in the 1/32, 1/64, and 1/128 stepping modes. Is it possible there is an incorrect factor baked into the powerSTEP01 firmware? Is there an interaction with another parameter that is causing this effect?

Any help you can provide would be appreciated.

1 REPLY 1
KiptonM
Lead

Let me guess. You are in Current Mode.

7.4 Microstepping

The driver is able to divide the single step into up to 128 microsteps. Stepping mode can be programmed by the STEP_SEL parameter in the STEP_MODE register (Table 27 on page 61). In current mode driving the maximum microstepping resolution is 1/16th of the step.