The Method ReadByIndex reads the value of a POWERLINK Object addressed by Index and Sub-Index.

Signature

ReadByIndex (

[in]UInt16 Index

[in]Byte SubIndex

[out]BaseDataTypeData

[out]UInt32 PowerlinkAbortCode

);

Argument

Description

Index

Index of the POWERLINK Object in the POWERLINK Object Dictionary

SubIndex

Sub-Index of the POWERLINK Object in the POWERLINK Object Dictionary

Data

Value of the POWERLINK Object

PowerlinkAbortCode

SDO Abort Code as defined in EPSG DS 301

Some of the SDO Abort Codes defined in POWERLINK are mapped to an OPC UA ResultCode, see table for ‘Method Result Codes’

Method Result Codes

ResultCode

SDO Abort Code

Description

Good

0

The read access was successful

Bad_ResourceInvalid

-

The POWERLINK Device is not available, the output argument PowerlinkAbortCode will be set to 0x0504 0000 (timeout)

Bad_NotFound

0x0602 0000

Object does not exist in the POWERLINK Object Dictionary

0x0609 0011

Sub-Index does not exist

Bad_Timeout

0x0504 0000

The operation timed out / SDO protocol timed out

Bad_NotReadable

0x0601 0001

Attempt to read a write-only POWERLINK Object

Bad_CommunicationError

All other SDO Abort Codes