Library.ReadAxisSdoObject Method
Reads an object value from an axis through the CANopen over EtherCAT (CoE) SDO method.
Namespace:
IntervalZero.MaxRT.Ecat.Api.NetApi
Assembly:
IntervalZero.MaxRT.Ecat (in IntervalZero.MaxRT.Ecat.dll) Version: 1.0.0.0 (File version: 1.1.0)
Syntax
public CommandStatus<byte[]> ReadAxisSdoObject(
EcatHandle axis,
ushort obIndex,
byte obSubIndex,
bool completeAccess,
uint length,
bool priority
)
Parameters
axis
Type: EcatHandle
A handle to an axis. To retrieve the corresponding handle, use OpenAxisByIndex or OpenAxisByLocation.
obIndex
Type: UInt16
An object index in the object dictionary.
obSubIndex
Type: Byte
An object subindex in the object dictionary.
completeAccess
Type: Boolean
true to read all subindexes, false to read a single subindex.
length
Type: UInt32
The length, in bytes, of the value to read.
priority
Type: Boolean
true to use a higher priority queue, false otherwise.
Return Value
This method returns a CommandStatus<byte[]> class. The read result is stored in property Value. If an error occurs, property State in CommandStatus<byte[]> is set to ecatCommandError, and the error code is stored in property ErrorId.
Possible errors:
| Error code | Meaning |
|---|---|
|
ecatErrNoError |
The function succeeded. |
|
ecatErrWrongParameter |
One of the following conditions occurred:
|
|
ecatErrMainDeviceNotReady |
The MainDevice is not ready. |
|
ecatErrWrongEnvironment |
The SDO buffer is full. |
|
ecatErrFeatureUnavailable |
One of the following conditions occurred:
|
|
ecatErrWrongSubDeviceState |
The feature can't be used in the current SubDevice state. The mailbox functionality requires at least a PreOp state to execute. |
Remarks
This method does not support reading from simulated axes.
See Also: