The EncoderAxisConfigType provides configuration Properties and Variables belonging to the Encoder’s axis and scaling functions.

Table 28 – EncoderAxisConfigType Definition

Attribute

Value

BrowseName

EncoderAxisConfigType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the 0:BaseObjectType defined in OPC 10000-5.

0:HasProperty

Variable

PositionScalingFactor

0:Float

0:PropertyType

O, RO

0:HasProperty

Variable

AxisType

EncoderAxisTypeEnumeration

0:PropertyType

O, RO

0:HasProperty

Variable

CodeSequence

EncoderCodeSequenceEnumeration

0:PropertyType

O, RO

0:HasProperty

Variable

PresetOrShiftValue

0:Float

0:PropertyType

O, RO

0:HasComponent

Variable

VelocityReference

0:Float

0:BaseAnalogType

O, RO

0:HasComponent

Variable

VelocityDampingTimeConstant

0:Float

0:BaseAnalogType

O, RO

0:HasComponent

Variable

AccelerationDampingTimeConstant

0:Float

0:BaseAnalogType

O, RO

0:HasComponent

Method

SetAxisConfig

O

Conformance Units

PNENC Config Readable

PNENC Config Writable

The PositionScalingFactor Variable contains the Encoder’s position scaling factor.

The AxisType Variable contains the Encoder’s axis type encoded as EncoderAxisTypeEnumeration.

The CodeSequence Variable contains the Encoder’s code sequence setting encoded as EncoderCodeSequenceEnumeration.

The PresetOrShiftValue Variable contains the Encoder’s preset value.

The VelocityReference Variable contains the velocity reference (100% value) for N2/N4 normalised speed actual values (signals NIST_A and NIST_B).

The VelocityDampingTimeConstant Variable contains the Encoder’s velocity damping time constant.

The AccelerationDampingTimeConstant Variable contains the Encoder’s acceleration damping time constant.

This Method sets the Value of components of the AxisConfig Object to the desired value. The security constraints defined in chapter 6.6 apply. Clients must also have locked the parent EncoderChannelType Object before invoking the Method.

Signature

SetAxisConfig (

[in] 0:KeyValuePair[] AxisConfigParameters,

[out] 0:KeyValuePair[] AxisConfigParametersResult

);

Argument

Description

AxisConfigParameters

Array of 0:KeyValuePair structures containing the desired settings. The key field of each structure contains the BrowseName of one component of the AxisConfig Object. The value field contains the desired value to set for this component and must have the same DataType.

AxisConfigParametersResult

Array of 0:KeyValuePair structures. The array shall be empty if successful.

The array shall contain one element for each failed setting and the Result Code shall be Uncertain (See Table 29). The key field of each structure contains the BrowseName of the component of the AxisConfig Object for which the setting failed.

The value field is encoded as EncoderConfigParameterResultEnumeration and contains one of the following values:

INVALID:The value is rejected by the Server.

NOT_SUPPORTED: The component with the specified BrowseName does not exist.

READ_ONLY:The value cannot be changed.

The Method Result Codes (defined in Call Service) are defined in Table 29. The requested changes are applied if a Result Code with severity Good is returned. Otherwise, no Variable is changed.

Table 29 – Possible Method Result Codes

Result Code

Description

Good

The Method execution was successful. The AxisConfigParametersResult array is empty.

Uncertain

The Server is not able to apply the requested changes due to invalid parameters. The AxisConfigParametersResult array is not empty.

Bad_ConfigurationError

The set of parameters passed in the AxisConfigParameters array is not consistent.

Bad_InvalidArgument

The AxisConfigParameters argument array is empty or there are member type mismatches.

Bad_Locked

The parent EncoderChannelType Object is locked by a different Client’s Session.

Bad_RequiresLock

The parent EncoderChannelType Object is not locked. Clients must lock the parent EncoderChannelType Object before invoking a Method.

Bad_UserAccessDenied

The user has not the right to execute the Method.

Bad_UnexpectedError

The Server is not able to execute the function because an unexpected error occurred. The Device might be temporarily unavailable or unreachable due to network failure.

If the desired settings do not deviate from the actual settings, the Method shall do nothing and return Good as result code.