Main Menu

All times are in GMT -8 (DST) :: The time is now 10:54 pm.

Login or Register
Create an account and register your LMI products to gain access to useful resources.

Register Account

Login

Sub Menu

Knowledge Base
Article Data
Article Ref
5590-PDJZ-5217
Date Created
Mon, 10th Nov 2014
Date Modified
Wed, 6th May 2015

   Gocator encoder index and encoder index pulse (Z)

Question 

What do Gocator encoder index and encoder index pulse (Z) mean?

Answer 

Sensor Model All
Firmware Version 3.6, 4.x
SDK Version 3.6, 4.x

The encoder index pulse (Z) is a signal that is triggered once every revolution of the encoder. This signal is typically used for aligning data in a rotational application.

In the diagram below, the encoder count (EC) is given as 5 when the Z0 index pulse is triggered. It could be any value however. The important point is that at each index pulse (Z), the encoder count is increased by the number of pulses of the encoder per revolution, and it is this value

In firmware 4.x, the following can be used to retrieve what the encoder count value was at the last index (Z) pulse, which is issued only once per revolution of the encoder. During the scan of a part, an index (Z) pulse may not be even issued, that is, if the encoder does not revolve enough for the index (Z) pulse to be reached.

switch(GoDataMsg_Type(dataObj))
{
    case GO_DATA_MESSAGE_TYPE_STAMP:    
    {
        GoStampMsg stampMsg = dataObj;
        for (j = 0; j < GoStampMsg_Count(stampMsg); ++j)
        {
            GoStamp *stamp = GoStampMsg_At(stampMsg, j);
            printf("  Encoder: %lld\n", stamp->encoderAtZ); 
        }
    }
    break;
}

In firmware 3.6, the SDK function Go2Data_EncoderIndexValue() returns the last encoder count at the index (Z) pulse:

Go2Data_EncoderIndexValue(data);