The EncoderChannelType is the representation of the Encoder Object. Clients gain access to the Encoder Object’s data, properties, error log and configuration settings using an EncoderChannelType Object.
Table 13 – EncoderChannelType Definition
Attribute |
Value |
||||
BrowseName |
EncoderChannelType |
||||
IsAbstract |
False |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
Subtype of the 0:BaseObjectType defined in OPC 10000-5. |
|||||
0:HasProperty |
Variable |
ApplicationTag |
0:String |
0:PropertyType |
O, RO |
0:HasComponent |
Method |
SetApplicationTag |
|
|
O |
0:HasProperty |
Variable |
EncoderProfileVersion |
0:String |
0:PropertyType |
O, RO |
0:HasComponent |
Variable |
EncoderChannelState |
EncoderChannelStateEnumeration |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Object |
Lock |
|
2:LockingServicesType |
O, RO |
0:HasComponent |
Variable |
NIST_A |
0:Int16 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
NIST_B |
0:Int32 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
G1_STW |
0:UInt16 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
G1_ZSW |
0:UInt16 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
G1_XIST1 |
0:UInt32 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
G1_XIST2 |
0:UInt32 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
G1_XIST3 |
0:UInt64 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
STW2_ENC |
0:UInt16 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
ZSW2_ENC |
0:UInt16 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
G1_XIST_PRESET_B |
0:UInt32 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
G1_XIST_PRESET_C |
0:UInt64 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
G1_XIST_PRESET_B1 |
0:UInt32 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
Position |
0:Double |
0:AnalogUnitRangeType |
O, RO |
0:HasComponent |
Variable |
Velocity |
0:Float |
0:AnalogUnitRangeType |
O, RO |
0:HasComponent |
Variable |
Acceleration |
0:Float |
0:AnalogUnitRangeType |
O, RO |
0:HasComponent |
Variable |
PositionSensorSignalValue |
0:Number |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
Temperature |
0:Float |
0:AnalogUnitRangeType |
O, RO |
0:HasComponent |
Object |
SensorConfig |
|
EncoderSensorConfigType |
O |
0:HasComponent |
Object |
AxisConfig |
|
EncoderAxisConfigType |
O |
0:HasComponent |
Object |
ControlConfig |
|
EncoderControlConfigType |
O |
0:HasComponent |
Object |
Logbook |
|
LogbookType |
O |
0:HasComponent |
Object |
Sensor |
|
EncoderSensorType |
M |
0:HasComponent |
Object |
Probes |
|
EncoderProbesType |
O |
0:GeneratesEvent |
ObjectType |
EncoderDiagnosisEventType |
|
|
|
Conformance Units |
|||||
PNENC Signals |
|||||
PNENC Measurement |
|||||
PNENC Diagnosis Events |
Some components of the EncoderChannelType have additional subcomponents which are defined in Table 14.
Table 14 – EncoderChannelType additional Subcomponents
BrowsePath |
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Others |
Position |
0:HasComponent |
Variable |
Resolution |
0:Double |
0:BaseAnalogType |
O, RO |
Position |
0:HasProperty |
Variable |
AbsolutePositionRange |
0:Range |
0:PropertyType |
O, RO |
G1_XIST1 |
0:HasProperty |
Variable |
ShiftFactorXIST1 |
0:UInt16 |
0:PropertyType |
O, RO |
G1_XIST1 |
0:HasProperty |
Variable |
XIST1PresetControl |
EncoderPresetControlEnumeration |
0:PropertyType |
O, RO |
G1_XIST2 |
0:HasProperty |
Variable |
ShiftFactorXIST2 |
0:UInt16 |
0:PropertyType |
O, RO |
Velocity |
0:HasComponent |
Variable |
Damping |
0:Float |
0:BaseAnalogType |
O, RO |
PositionSensorSignalValue |
0:HasProperty |
Variable |
SignalType |
EncoderSignalTypeEnumeration |
0:PropertyType |
O, RO |
The Resolution Variable contains the resolution of the Encoder’s Position Variable Value.
The AbsolutePositionRange Variable contains the possible range of absolute position values represented as 0:Range Value.
The ShiftFactorXIST1 Variable contains the Encoder’s G1_XIST1 Standard Signal shift factor.
The XIST1PresetControl Variable contains the Encoder’s configured preset control setting for the G1_XIST1 Signal encoded as EncoderPresetControlEnumeration.
The ShiftFactorXIST2 Variable contains the Encoder’s G1_XIST2 Standard Signal shift factor.
The Damping Variable contains the damping constant associated with the Velocity Variable Value.
The SignalType Variable contains the type of the position sensor’s signal value encoded as EncoderSignalTypeEnumeration.
General Properties
The ApplicationTag Variable contains information determined by configuration or by applications. The Client can change the Value of this Variable by invoking the SetApplicationTag Method.
Before invoking a Method of the EncoderChannelType Object, Clients must gain exclusive write access (“lock” the EncoderChannelType Object) using the Lock Object.
This Method sets the Value of the ApplicationTag Variable. The security constraints defined in chapter 6.6 apply.
Signature
SetApplicationTag (
[in] 0:String ApplicationTag
);
Argument |
Description |
ApplicationTag |
String containing the desired content of the ApplicationTag Variable. |
The Method Result Codes (defined in Call Service) are defined in Table 15.
Table 15 – Possible Method Result Codes
Result Code |
Description |
Good |
The Method execution was successful. |
Bad_UserAccessDenied |
The user has not the right to execute the Method. |
Bad_InvalidArgument |
The Server is not able to apply the name. The ApplicationTag string may be too long or may contain invalid characters. The server may also reject duplicates. |
Bad_Locked |
The EncoderChannelType Object is locked by a different Client’s Session. |
Bad_RequiresLock |
The EncoderChannelType Object is not locked. Clients must lock the EncoderChannelType Object before invoking a 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. |
The EncoderProfileVersion Variable contains the encoder profile version of the Encoder Object the EncoderChannelType Object represents.
The EncoderChannelState Variable contains the representation of the G1_ZSW Signal as EncoderStateEnumeration.
The Lock Object ensures exclusive Method call for one Client. The Client locks the EncoderChannelType Object by invoking the InitLock Method of the Lock Object. The Client invokes ExitLock to release the lock.
The scope of the lock comprises all components except the EncoderProbeType Objects providing a LatchStart Method. These “controllable” probes have their own Lock Object and Clients shall be able to lock the EncoderProbeType Object separately and to invoke the LatchStart Method although the parent EncoderChannelType Object is locked.
Signal Variables
The following Variables represent the Standard Signals as defined in [ENCP], chapter 5.6.1. The supported Standard Signals are determined by the configured Standard Telegram. The Server shall provide the Variables representing the Standard Signals of the configured Standard Telegram.
The NIST_A Variable represents the “speed actual value” 16-bit signal encoded as 0:UInt16 (See [ENCP], Table 13, Signal No. 6). Mandatory for Class 4 Encoders.
The NIST_B Variable represents the “speed actual value” 32-bit signal encoded as 0:UInt32 (See [ENCP], Table 13, Signal No. 8). Mandatory for Class 2 Encoders.
The G1_STW Variable represents the “Sensor 1 control word” 16-bit signal encoded as 0:UInt16 (See [ENCP], Table 13, Signal No. 9). Mandatory for Class 3 and Class 4 Encoders.
The G1_ZSW Variable represents the “Sensor 1 status word” 16-bit signal encoded as 0:UInt16 (See [ENCP], Table 13, Signal No. 10). Mandatory for Class 3 and Class 4 Encoders.
The G1_XIST1 Variable represents the “Sensor 1 position actual value 1” 32-bit signal encoded as 0:UInt32 (See [ENCP], Table 13, Signal No. 11). Mandatory for Class 3 and Class 4 Encoders.
The G1_XIST2 Variable represents the “Sensor 1 position actual value 2” 32-bit signal encoded as 0:UInt32 (See [ENCP], Table 13, Signal No. 12). Mandatory for Class 3 and Class 4 Encoders.
The G1_XIST3 Variable represents the “Sensor 1 position actual value 3” 64-bit signal encoded as 0:UInt64 (See [ENCP], Table 13, Signal No. 39).
The STW2_ENC Variable represents the “Encoder control word 2” 16-bit signal encoded as 0:UInt16 (See [ENCP], Table 13, Signal No. 80). Mandatory for Class 1, Class2, Class 3 and Class 4 Encoders.
The ZSW2_ENC Variable represents the “Encoder status word 2” 16-bit signal encoded as 0:UInt16 (See [ENCP], Table 13, Signal No. 81). Mandatory for Class 1, Class2, Class 3 and Class 4 Encoders.
The G1_XIST_PRESET_B Variable represents the “Encoder preset control word 31 bit with trigger bit included” signal encoded as 0:UInt32 (See [ENCP], Table 13, Signal No. 82). Mandatory for Class 1 and Class2 Encoders.
The G1_XIST_PRESET_C Variable represents the “Encoder preset control word 64 bit” signal encoded as 0:UInt64 (See [ENCP], Table 13, Signal No. 83).
The G1_XIST_PRESET_B1 Variable represents the “Encoder preset control word 32 bit” signal encoded as 0:UInt32 (See [ENCP], Table 13, Signal No. 84). Mandatory for Class 1 and Class2 Encoders.
Measurement / Actual Values
The Position Variable contains the current Encoder’s position encoded as 0:Double data type. The Position Variable shall be linked to the Signal Variables representing the current position (G1_XIST1, G1_XIST2, G1_XIST3) that are part of the configured Standard Telegram using a 0:RepresentsSameEntityAs Reference.
The Velocity Variable contains the current Encoder’s velocity encoded as 0:Float data type. If a NIST_A or a NIST_B Signal Variable is part of the Information Model, the Velocity Variable shall be linked to the source Signal Variable using a 0:RepresentsSameEntityAs Reference.
The Acceleration Variable contains the currents Encoder’s rate of velocity change encoded as 0:Float data type.
The PositionSensorSignalValue Variable contains the Encoder’s position Signal encoded as numeric data type. Dependent on Encoder resolution and configured Standard Telegram number, the data type may be 0:UInt32 or 0:UInt64.
The Temperature Variable contains the Encoder’s temperature measurement value encoded as 0:Float data type.
Configuration
The SensorConfig Object contains sensor related configuration settings of the Encoder Object. See section 7.8 for details.
The AxisConfig Object contains Encoder axis related configuration settings of the Encoder Object. See section 7.6 for details.
The ControlConfig Object contains control related configuration settings of the Encoder Object. See section 7.7 for details.
Sensor & Probes
The Sensor Object offers Variables and Methods for sensor related preset- and latch control. See section 7.2 for details.
The Probes Object has References to EncoderProbeType Objects offering Variables and Methods for probes related data and latch control. See section 7.3 for details.
Diagnosis
The Logbook Object contains a representation of the Encoder Object’s fault buffer. See section 7.5 for details.
The Server might provide diagnosis data by sending EncoderDiagnosisEventType Events.