Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Homing Open Loop Steppers
Is there a prescribed method for homing stepper motors? I am referring to stepper motors controlled via open loop, direct micro-stepping without any feed back whatsoever. I am interested in performing a homing search move into a hard stop, then setting registers appropriately (software-style position capture). Open loop homing moves with the rotor locked against a stop will cause the motor torque to reverse when the phase position rolls past the 180 degree point, complicating matters. It would seem to me that in order to lock on to the correct magnetic detent on the motor, one would have to manipulate the phase position register to get it “in sync” with the command position register.

I don’t see any built-in Pmac routines for this.
Anyone done this…or have any advice ?

(System is TurboClipper Drive)

- Thanks in advance.
I see two ways of handling this. The simple way is just to command an incremental jog move toward the hard stop with a commanded distance long enough to guarantee you will reach the hard stop. At some point during the move, the motor will hit the stop, and for the duration of the commanded move it will "bang its head against the wall", so to speak, each electrical cycle. When this is done, you can command a single commutation cycle out of the stop and use the HOMEZ command to set the motor's zero position. Of course, you must make sure that there will be neither mechanical nor electrical damage during the period that it is pushing into the hard stop.

The second way will require some analysis. For a given commanded current level, the current loop will need to command a greater voltage output when moving (to overcome the motor back EMF) than when stalled (no significant back EMF). This difference is the fundamental distinction for stepper motor stall detection.

The question is whether you can come up with a simple but reliable method to detect this. I would monitor either the Phase A and B PWM commands (sum of squares), or the direct and quadrature current loop integrator registers in memory (again sum of squares) to see if there is a distinct difference. I would first just use data gathering and plotting to understand what happens to these values when you hit the hard stop. If you can see a clear difference, you can write a PLC program to monitor registers and see when they go below some threshold.

Forum Jump:

Users browsing this thread: 1 Guest(s)