PDO-Informationen vom EtherCAT-Gerät laden

Manche EtherCAT-Slaves haben ein dynamisches CoE-Interface, dessen PDO-Konfiguration nicht statisch in der ESI-Datei hinterlegt ist. In diesem Fall können die PDO-Informationen direkt vom angeschlossenen Gerät abgefragt werden. Zusätzlich lässt sich das vollständige CoE-Objektverzeichnis, das Online-Dictionary, per SDO-Upload laden. Dies ist nützlich, um die tatsächlichen Objektindizes und -typen eines Geräts zu ermitteln.

Voraussetzungen

C# Beispiel

ITcSmTreeItem ecSlave = sysManager.LookupTreeItem(@"TIID^EtherCAT Master^EK1100^Term 3 (EL5101)");

// Load PDO information from device
// (corresponds to "Load PDO Info from Device" in TwinCAT XAE)
ecSlave.ConsumeXml(
    @"<TreeItem><EtherCAT><Slave><Mailbox><CoE>
        <LoadPdoInfoFromDevice>1</LoadPdoInfoFromDevice>
    </CoE></Mailbox></Slave></EtherCAT></TreeItem>");

// Load online dictionary from device
// (corresponds to CoE dictionary upload via SDO)
ecSlave.ConsumeXml(
    @"<TreeItem><EtherCAT><Slave><Mailbox><CoE>
        <LoadOnlineDictionary>1</LoadOnlineDictionary>
    </CoE></Mailbox></Slave></EtherCAT></TreeItem>");

PowerShell Beispiel

$ecSlave = $sysManager.LookupTreeItem("TIID^EtherCAT Master^EK1100^Term 3 (EL5101)")

# Load PDO information from device
$ecSlave.ConsumeXml("<TreeItem><EtherCAT><Slave><Mailbox><CoE><LoadPdoInfoFromDevice>1</LoadPdoInfoFromDevice></CoE></Mailbox></Slave></EtherCAT></TreeItem>")

# Load online dictionary from device
$ecSlave.ConsumeXml("<TreeItem><EtherCAT><Slave><Mailbox><CoE><LoadOnlineDictionary>1</LoadOnlineDictionary></CoE></Mailbox></Slave></EtherCAT></TreeItem>")
PDO-Informationen vom EtherCAT-Gerät laden 1:

LoadPdoInfoFromDevice lädt die PDO-Konfiguration des Slaves direkt über EtherCAT. Dies ist nützlich, wenn das Gerät nicht in der ESI-Datenbank eingetragen ist oder konfigurierbare PDOs hat. LoadOnlineDictionary lädt das vollständige CoE-Objektverzeichnis über SDO-Upload. Beide Operationen erfordern eine aktive EtherCAT-Verbindung zum Slave.