Library Class

This class provides various operations for E-CAT component.

Namespace:  IntervalZero.MaxRT.Ecat.Api.NetApi
Assembly:  IntervalZero.MaxRT.Ecat (in IntervalZero.MaxRT.Ecat.dll) Version: 1.0.0.0 (File version: 1.0.1)

Syntax

Copy
public class Library

 

The Library class exposes the following members:

Constructors

 

Name Description

Public method

Library

Default constructor.

Methods

Axis Control

 

Name Description

Public method

ForceAxisActualCurrent

Writes the actual current of a simulated axis.

Public method

ForceAxisActualPosition

Writes the actual position of a simulated axis.

Public method

ForceAxisActualTorque

Writes the actual torque of a simulated axis.

Public method

ForceAxisActualVelocity

Writes the actual velocity of a simulated axis.

Public method

ForceAxisCustomInput1

Writes the first custom input variable of a simulated axis.

Public method

ForceAxisCustomInput2

Writes the second custom input variable of a simulated axis.

Public method

ForceAxisDigitalInputs

Writes the digital inputs of a simulated axis.

Public method

ForceAxisFollowingError

Writes the following error of a simulated axis.

Public method

ForceAxisInputBit

Writes a bit value into an input buffer of a simulated axis.

Public method

ForceAxisInputByte

Writes a byte value into an input buffer of a simulated axis.

Public method

ForceAxisInputDWord

Writes a double word into an input buffer of a simulated axis.

Public method

ForceAxisInputWord

Writes a word into an input buffer of a simulated axis.

Public method

ForceAxisMopDisplay

Writes the modes of operation display of a simulated axis.

Public method

ForceAxisSecondEncoder

Writes the secondary encoder's position of a simulated axis.

Public method

ForceAxisStatusWord

Writes the status word of a simulated axis.

Public method

ForceAxisTouchProbeStatus

Writes the touch probe status of a simulated axis.

Public method

GetAxisStatus

Gets the status of an axis.

Public method

OpenAxisByIndex

Opens an axis by its index.

Public method

OpenAxisByLocation

Opens an axis by its location.

Public method

ReadAxisActualCurrent

Reads the actual current of an axis.

Public method

ReadAxisActualPosition

Reads the actual position of an axis.

Public method

ReadAxisActualTorque

Reads the actual torque of an axis.

Public method

ReadAxisActualVelocity

Reads the actual velocity of an axis.

Public method

ReadAxisControlWord

Reads the control word of an axis.

Public method

ReadAxisCustomInput1

Reads the first custom input variable of an axis.

Public method

ReadAxisCustomInput2

Reads the second custom input variable of an axis.

Public method

ReadAxisCustomOutput1

Reads the first custom output variable of an axis.

Public method

ReadAxisCustomOutput2

Reads the second custom output variable of an axis.

Public method

ReadAxisDigitalInputs

Reads the digital inputs of an axis.

Public method

ReadAxisDigitalOutputs

Reads the digital outputs of an axis.

Public method

ReadAxisFollowingError

Reads the following error of an axis.

Public method

ReadAxisInputBit

Reads a bit value from the input buffer of an axis.

Public method

ReadAxisInputByte

Reads a byte value from the input buffer of an axis.

Public method

ReadAxisInputDWord

Reads a double word from the input buffer of an axis.

Public method

ReadAxisInputWord

Reads a word from the input buffer of an axis.

Public method

ReadAxisMaxCurrent

Reads the maximum current of an axis.

Public method

ReadAxisMaxTorque

Reads the maximum torque of an axis.

Public method

ReadAxisMop

Reads the modes of operation of an axis.

Public method

ReadAxisMopDisplay

Reads the modes of operation display of an axis.

Public method

ReadAxisOutputBit

Reads a bit value from the output buffer of an axis.

Public method

ReadAxisOutputByte

Reads a byte value from the output buffer of an axis.

Public method

ReadAxisOutputDWord

Reads a double word from the output buffer of an axis.

Public method

ReadAxisOutputWord

Reads a word from the output buffer of an axis.

Public method

ReadAxisProfileAcceleration

Reads the profile acceleration of an axis.

Public method

ReadAxisProfileDeceleration

Reads the profile deceleration of an axis.

Public method

ReadAxisProfileVelocity

Reads the profile velocity of an axis.

Public method

ReadAxisSecondEncoder

Reads the secondary encoder's position of an axis.

Public method

ReadAxisStatusWord

Reads the status word of an axis.

Public method

ReadAxisTargetPosition

Reads the target position of an axis.

Public method

ReadAxisTargetTorque

Reads the target torque of an axis.

Public method

ReadAxisTargetVelocity

Reads the target velocity of an axis.

Public method

ReadAxisTouchProbeControl

Reads the touch probe control of an axis.

Public method

ReadAxisTouchProbeStatus

Reads the touch probe status of an axis.

Public method

ReadAxisTorqueOffset

Reads the torque offset of an axis.

Public method

SetAxisCustomName

Sets a custom name for an axis. The custom name is not unique.

Public method

WriteAxisControlWord

Writes the control word of an axis.

Public method

WriteAxisCustomOutput1

Writes the first custom output variable of an axis.

Public method

WriteAxisCustomOutput2

Writes the second custom output variable of an axis.

Public method

WriteAxisDigitalOutputs

Writes the digital outputs of an axis.

Public method

WriteAxisMaxCurrent

Writes the maximum current of an axis.

Public method

WriteAxisMaxTorque

Writes the maximum torque of an axis.

Public method

WriteAxisMop

Writes the modes of operation of an axis.

Public method

WriteAxisOutputBit

Writes a bit value into an output buffer of an axis.

Public method

WriteAxisOutputByte

Writes a byte value into an output buffer of an axis.

Public method

WriteAxisOutputDWord

Writes a double word into an output buffer of an axis.

Public method

WriteAxisOutputWord

Writes a word into an output buffer of an axis.

Public method

WriteAxisProfileAcceleration

Writes the profile acceleration of an axis.

Public method

WriteAxisProfileDeceleration

Writes the profile deceleration of an axis.

Public method

WriteAxisProfileVelocity

Writes the profile velocity of an axis.

Public method

WriteAxisTargetPosition

Writes the target position of an axis.

Public method

WriteAxisTargetTorque

Writes the target torque of an axis.

Public method

WriteAxisTargetVelocity

Writes the target velocity of an axis.

Public method

WriteAxisTorqueOffset

Writes the torque offset of an axis.

Public method

WriteAxisTouchProbeControl

Writes the touch probe control of an axis.

Command

 

Name Description

Public method

AbortCommand (CommandStatus)

Aborts a CommandStatus type command.

Public method

AbortCommand (CommandStatus<byte[]>)

Aborts a CommandStatus<byte[]> type command.

Public method

AbortCommand (CommandStatus<uint>)

Aborts a CommandStatus<uint> type command.

Public method

AbortCommand (CommandStatus<ushort>)

Aborts a CommandStatus<ushort> type command.

Public method

AbortCommand (CommandStatus<ushort[]>)

Aborts a CommandStatus<ushort[]> type command.

Public method

AbortCommand (CommandStatus<SdoEntryDescription>)

Aborts a CommandStatus<SdoEntryDescription> type command.

Public method

AbortCommand (CommandStatus<SdoObjectDescription>)

Aborts a CommandStatus<SdoObjectDescription> type command.

Public method

GetCommandsStatus

Gets the status of multiple commands.

Public method

GetCommandStatus (CommandStatus)

Gets the status of a CommandStatus type command.

Public method

GetCommandStatus (CommandStatus<byte[]>)

Gets the status of a CommandStatus<byte[]> type command.

Public method

GetCommandStatus (CommandStatus<uint>)

Gets the status of a CommandStatus<uint> type command.

Public method

GetCommandStatus (CommandStatus<ushort>)

Gets the status of a CommandStatus<ushort> type command.

Public method

GetCommandStatus (CommandStatus<ushort[]>)

Gets the status of a CommandStatus<ushort[]> type command.

Public method

GetCommandStatus (CommandStatus<SdoEntryDescription>)

Gets the status of a CommandStatus<SdoEntryDescription> type command.

Public method

GetCommandStatus (CommandStatus<SdoObjectDescription>)

Gets the status of a CommandStatus<SdoObjectDescription> type command.

Public method

WaitForCommand (double, bool, CommandStatus)

Waits for a CommandStatus type command for a specified time duration.

Public method

WaitForCommand (double, bool, CommandStatus<byte[]>)

Waits for a CommandStatus<byte[]> type command for a specified time duration.

Public method

WaitForCommand (double, bool, CommandStatus<uint>)

Waits for a CommandStatus<uint> type command for a specified time duration.

Public method

WaitForCommand (double, bool, CommandStatus<ushort>)

Waits for a CommandStatus<ushort> type command for a specified time duration.

Public method

WaitForCommand (double, bool, CommandStatus<ushort[]>)

Waits for a CommandStatus<ushort[]> type command for a specified time duration.

Public method

WaitForCommand (double, bool, CommandStatus<SdoEntryDescription>)

Waits for a CommandStatus<SdoEntryDescription> type command for a specified time duration.

Public method

WaitForCommand (double, bool, CommandStatus<SdoObjectDescription>)

Waits for a CommandStatus<SdoObjectDescription> type command for a specified time duration.

Diagnostics

 

Name Description

Public method

ResetDiagnostics

Resets MainDevice and SubDevice diagnostics information.

Mailbox

 

Name Description

Public method

AoeReadCommand

Reads data from a SubDevice through Automation Device Specification over EtherCAT (AoE).

Public method

AoeReadSdoObject

Reads data from a SubDevice through the Automation Device Specification over EtherCAT (AoE) SDO method.

Public method

AoeReadWriteCommand

Simultaneously reads data from and writes data to a SubDevice through Automation Device Specification over EtherCAT (AoE).

Public method

AoeWriteCommand

Writes data to a SubDevice through Automation Device Specification over EtherCAT (AoE).

Public method

AoeWriteControlCommand

Sends a command to a SubDevice through Automation Device Specification over EtherCAT (AoE).

Public method

AoeWriteSdoObject

Writes data to a SubDevice using the Automation Device Specification over EtherCAT (AoE) SDO method.

Public method

CoeReadSdoEntryDescription

Reads the description of an entry in an object dictionary through the CANopen over EtherCAT (CoE) SDO method.

Public method

CoeReadSdoObject

Reads an object value through the CANopen over EtherCAT (CoE) SDO method.

Public method

CoeReadSdoObjectDescription

Reads the description of an object through the CANopen over EtherCAT (CoE) SDO method.

Public method

CoeReadSdoODList

Reads the list of object indexes in a dictionary table through the CANopen over EtherCAT (CoE) SDO method.

Public method

CoeWriteSdoObject

Writes data to a SubDevice using the CANopen over EtherCAT (CoE) SDO method.

Public method

FoeReadFileToFile

Reads a file from a SubDevice and saves it to a file on the local machine.

Public method

FoeWriteFileFromFile

Writes a file from the local machine to a SubDevice.

Public method

ReadAxisSdoObject

Reads an object value from an axis through the CANopen over EtherCAT (CoE) SDO method.

Public method

ReadModuleSdoObject

Reads an object value from a module through the CANopen over EtherCAT (CoE) SDO method.

Public method

SoeReadSsc

Reads data from a SubDevice through Servo Drive Profile over EtherCAT (SoE).

Public method

SoeWriteSsc

Writes data to a SubDevice through Servo Drive Profile over EtherCAT (SoE).

Public method

VoeWrite

Writes data to a VoE-enabled device through Vendor-Specific Protocol over EtherCAT (VoE).

Public method

WriteAxisSdoObject

Writes an object value to an axis through the CANopen over EtherCAT (CoE) SDO method.

Public method

WriteModuleSdoObject

Writes an object value to a module through the CANopen over EtherCAT (CoE) SDO method.

MainDevice

 

Name Description

Public method

CloseHandle

Closes an open E-CAT handle. When a MainDevice handle is closed, all handles derived from it become invalid.

Public method

CreateMainDevice

Creates a MainDevice instance.

Public method

DestroyMainDevice

Destroys a MainDevice, causing all handles derived from the corresponding MainDevice to become invalid.

Public method

GetDCSystemTime

Gets the timestamp of the selected Sync0’s signal of the distributed clock (DC).

Public method

GetFeatureStatus

Gets the configuration of an E-CAT startup feature.

Public method

GetStatus (Status)

Gets the status of a MainDevice.

Public method

GetStatus (Diagnostics)

Gets the diagnostics information of a MainDevice.

Public method

GetStatus (Status, Diagnostics)

Gets the status and diagConfigurenostics information of a MainDevice.

Public method

IsMainDeviceRunning

Returns a MainDevice's running status.

Public method

OpenMainDevice

Opens a MainDevice.

Public method

PulseHeartbeat

Sends a signal to notify E-CAT Fieldbus that the user application is running properly.

Public method

RequestState

Requests a MainDevice to switch to a specified EtherCAT state.

Public method

Restart

Restarts a MainDevice.

Public method

SetFeatureStatus

Sets the configuration of an E-CAT startup feature.

Public method

SetHeartbeat

Configures the heartbeat settings of a MainDevice.

Public method

Start

Starts a MainDevice and requests it to switch to the Op state.

Public method

StartFromConfiguration

Starts a MainDevice using a configuration file created by the E-CAT Configuration Tool. Calling this method also requests the MainDevice to switch to the Op state.

Public method

Stop

Stops a MainDevice and requests it to switch to the Offline state.

Module Control

 

Name Description

Public method

ForceModuleInputBit

Writes a bit value into an input buffer of a simulated module.

Public method

ForceModuleInputByte

Writes a byte value into an input buffer of a simulated module.

Public method

ForceModuleInputDWord

Writes a double word into an input buffer of a simulated module.

Public method

ForceModuleInputWord

Writes a word into an input buffer of a simulated module.

Public method

GetModuleStatus

Gets the status of a module.

Public method

OpenModuleByIndex

Opens a module by its index.

Public method

OpenModuleByLocation

Opens a module by its location.

Public method

ReadModuleInputBit

Reads a bit value from the input buffer of a module.

Public method

ReadModuleInputByte

Reads a byte value from the input buffer of a module.

Public method

ReadModuleInputDWord

Reads a double word from the input buffer of a module.

Public method

ReadModuleInputWord

Reads a word from the input buffer of a module.

Public method

ReadModuleOutputBit

Reads a bit value from the output buffer of a module.

Public method

ReadModuleOutputByte

Reads a byte value from the output buffer of a module.

Public method

ReadModuleOutputDWord

Reads a double word from the output buffer of a module.

Public method

ReadModuleOutputWord

Reads a word from the output buffer of a module.

Public method

SetModuleCustomName

Sets a custom name for a module.

Public method

WriteModuleOutputBit

Writes a bit value into an output buffer of a module.

Public method

WriteModuleOutputByte

Writes a byte value into an output buffer of a module.

Public method

WriteModuleOutputDWord

Writes a double word into an output buffer of a module.

Public method

WriteModuleOutputWord

Writes a word into an output buffer of a module.

Shared Memory

Reads and writes the shared memory provided by E-CAT Fieldbus.

Shared memory is a pool of memory accessible by multiple E-CAT applications, allowing them to exchange data directly. This functionality supports communication between programs written in different languages, such as C applications and PLC applications. Each MainDevice instance has a dedicated section of this shared memory.

 

Name Description

Public method

ReadMemoryBit

Reads a bit value from the E-CAT Fieldbus shared memory.

Public method

ReadMemoryByte

Reads a byte value from the E-CAT Fieldbus shared memory.

Public method

ReadMemoryDWord

Reads a double word from the E-CAT Fieldbus shared memory.

Public method

ReadMemoryLWord

Reads a quad word from the E-CAT Fieldbus shared memory.

Public method

ReadMemoryWord

Reads a word from the E-CAT Fieldbus shared memory.

Public method

WriteMemoryBit

Writes a bit value into the E-CAT Fieldbus shared memory.

Public method

WriteMemoryByte

Writes a byte value into the E-CAT Fieldbus shared memory.

Public method

WriteMemoryDWord

Writes a double word into the E-CAT Fieldbus shared memory.

Public method

WriteMemoryLWord

Writes a quad word into the E-CAT Fieldbus shared memory.

Public method

WriteMemoryWord

Writes a word into the E-CAT Fieldbus shared memory.

Simulated Hardware

 

Name Description

Public method

ConfigureAxis

Configures an axis. If the corresponding index contains a real axis module, the configuration set will be overridden.

Public method

ConfigureIo

Configures an I/O module. If the corresponding index contains a real I/O module, the configuration set will be overridden.

Public method

GetConfiguredAxisCount

Gets the number of configured axes.

Public method

GetConfiguredIoCount

Gets the number of configured I/O modules.

Public method

SetConfiguredAxisCount

Sets the number of configured axes. If the actual number of detected real axes is less than the number configured, simulated axes will be generated during Library.Start to match the configured number.

Public method

SetConfiguredIoCount

Sets the number of configured I/O modules. If the actual number of detected real I/O modules is less than the number configured, simulated I/O modules will be generated during Library.Start to match the configured number.

SubDevice

 

Name Description

Public method

GetSubDeviceStatus

Gets the status of a SubDevice.

Public method

OpenSubDeviceByExplicitId

Opens a SubDevice by its explicit identification.

Public method

OpenSubDeviceByIndex

Opens a SubDevice by its index.

Public method

OpenSubDeviceByStationAddress

Opens a SubDevice by its station address.

Public method

OverrideSubDevicePdoConfiguration

Changes the input and output PDO lengths of a SubDevice. This can be used to programmatically configure a SubDevice.

Public method

ReadAllSubDeviceEEprom

Reads all data from a SubDevice's EEPROM.

Public method

ReadSubDeviceAlias

Reads the alias address from a SubDevice.

Public method

ReadSubDeviceEEprom

Reads a uint value from a SubDevice's EEPROM.

Public method

ReadSubDeviceRegister

Reads data from a SubDevice's register.

Public method

ReloadSubDeviceEEprom

Reloads a SubDevice's EEPROM.

Public method

RequestSubDeviceState

Requests a SubDevice to go into a specified EtherCAT state.

Public method

ResetSubDeviceEsc

Resets the EtherCAT SubDevice Controller (ESC) of a SubDevice.

Public method

RestartSubDevice

Restarts a SubDevice.

Public method

WriteAllSubDeviceEEprom

Writes all data into a SubDevice’s EEPROM.

Public method

WriteSubDeviceAlias

Writes an alias address into a SubDevice.

Public method

WriteSubDeviceEEprom

Writes a uint value into a SubDevice’s EEPROM.

Public method

WriteSubDeviceRegister

Writes data into a SubDevice's register.

See Also: