Home and Index in Motion Control

A home switch is used to calibrate the position of each axis to a known reference. Typically, the home switch is located along the axis of movement between a reverse limit switch and a forward limit switch. When the motor or stage reaches the home switch location, you can reset the position so that you will have a known offset. A home switch is especially important in open loop stepper systems, and closed loop stepper and servo systems with quadrature encoder feedback. This is due to the fact that quadrature encoder only provides incremental feedback, and the motion controller will lose position information during a power cycle or re-initialization.

Use the Find Home command to locate the home switch. During a Find Home, the motor moves in one direction until it hits either a home switch or a limit switch. If the home switch is reached first, the controller stops the motor, giving the user an opportunity to set the encoders to zero or to some arbitrary position value. If the motor hits a limit switch before detecting a home switch, it reverses direction and continues until it hits either a home switch or a limit switch. If there is no home switch, the controller stops searching when it hits the second limit switch. Some common applications for home switches are as follows:

  • An industrial robot that needs to quickly go back to the same place in space every time it is power cycled in order to define its coordinate system.
  • An XY table that needs to know where it's (0,0) spot is every time the controller is turned on.

An Index is a part of the encoder that produces a signal once every revolution. The index pulse is different from the home switch in that the home position is only at one location in the whole system, while the index is pulsed every time the motor completes a revolution. Find Index is used primarily under the following two circumstances:

  • The motor never travels more than one revolution because it is driving a rotary stage and typically will use a high resolution encoder. Find Index is used in place of Find Home.
  • After a find home sequence, find index is used to achieve greater precision in calibration. Find Home is used as a coarse find while Find Index is used as a fine find. This is due to mechanical slack between the lead screw and stage.

When enabled, the home switch is treated as a limit switch. During movement through home, the axis inhibit becomes active. For this reason, after a Find Home (and Find Index) sequence, the user should disable the home limit switch.