Get Flexible Encoder Pattern Status

Recovers the status of the referenced flexible encoder pattern definition. The pattern is considered invalid if a value other than zero is returned.

Block ID

Get Encoder Pattern Status

Library

motohawk_flexenc_lib

Description

Overview

Recovers the status of the referenced flexible encoder pattern definition. The pattern is considered invalid if a value other than zero is returned.

Typically this block is used in conjunction with pattern definitions that support calibrated features. Such patterns may have bad data that prevents their use. The returned status will indicate whether a pattern is considered invalid by MotoHawk. The value can also provide a clue as to the cause.

The Encoder System block's active signal will report an error (-1) if an encoder pattern is used by the system that has been detected as invalid.

Available Status

The m-script motohawk_flexible_encoder_pattern_status_enum enumerates the status value.

OK (value=0)

The pattern is only considered valid if a status of zero is returned.

Indeterminate error (value=1)

The referenced pattern is considered invalid, but the specific cause has not been identified.

Tooth zero not zero (value=2)

Tooth 0 of the referenced pattern must have a logical displacement value of zero. A non-zero value was detected.

Tooth value out of range (value=3)

The referenced pattern has at least one logical displacement values that is greater than or equal to 360.

Tooth value out of order (value=4)

The referenced pattern has at least one logical displacement value that is smaller than or equal to a preceeding tooth definition. Values should be monotomically increasing.

ToothPosition exceeds teeth in pattern (value=5)

The tooth position of a key of the referenced pattern is larger than the number of teeth in the pattern. Tooth position should correspond to a tooth of the pattern.

SetHalfCycleTooth equals ClrHalfCycleTooth (value=6)

The SetHalfCycleTooth attribute equals the ClrHalfCycleTooth attribute. The values need be different.

ClrHalfCycleTooth exceeds teeth in pattern (value=7)

The ClrHalfCycleTooth attribute is larger than or equal to the number of teeth being used by the pattern.

SetHalfCycleTooth exceeds teeth in pattern (value=8)

The SetHalfCycleTooth attribute is larger than or equal to the number of teeth being used by the pattern.

More missing teeth than teeth (value=9)

The Number of missing teeth attribute is too large given the number of equidistant teeth defined for the pattern.

Too many missing teeth in pattern (value=10)

The Number of missing teeth attribute is more than can be supported by the flexible encoder.

N minus M key overflows (value=11)

The calculated key for the pattern has overflowed.

N minus M key underflows (value=12)

The Key Tolerance attribute is too large for a legal N minus M key to be calculated.

N plus 1 tooth angle not legal (value=13)

The Plus 1 Tooth Angle does not locate the plus 1 tooth between the equidistant teeth. It is too large.

N plus 1 key not legal (value=14)

The resulting key is not considered legal. The calculation likely suffered from overflow or underflow. The ratio, when combined with the Key Tolerance, must not underflow (become less than zero) or overflow (become greater 16).

N plus 1 key too near 1.0 (value=15)

The resulting key is not considered legal because the ratio, when combined with the Key Tolerance, leads to an indistinguishable key. This is where the resulting key is unable to distinguish the plus 1 tooth from the equidistant teeth. A tolerance range that encapsulates a ratio of 1.0 is such a key.

Block Parameters

Parameter Field Values Comments/Description
Pattern Definition Name Alpha-numeric text, quote enclosed The name of the Pattern Definition block whose status is to be recovered