Grundlagen zur Oversampling-Funktion

Die EtherCAT Klemme EL5101-0011 ist ein Interface zum direkten Anschluss von Inkremental-Encodern mit Differenzeingängen (RS422). Durch die Oversampling-Eigenschaft kann die Klemme mehrmals je Buszyklus den aktuellen Zählerstand erfassen.

Oversampling

Eine herkömmliche Inkremental-Encoder-Interface Klemme erfasst mit jedem Buszyklus einen Zählerstand ("Counter Value") und gibt ihn im nächsten Feldbuszyklus an die übergeordnete Steuerung weiter. Die EL5101-0011 erfasst zwischen zwei Feldbuskommunikationszyklen konfigurierbar und zeitäquidistant mehrmals den aktuellen Zählerstand. Die Übergabe eines Pakets von x Positionswerten von je 32 Bit an die übergeordnete Steuerung findet im nächsten Feldbuskommunikationszyklus statt. Dieses Verfahren wird "Oversampling" genannt.

Distributed Clocks

Für das Oversampling ist ein Taktgeber in der Klemme nötig, der die einzelnen Messwerterfassungen auslöst. Dazu wird die lokale Uhr in der Klemme genutzt, genannt Distributed Clock.

Die Distributed Clock stellt eine lokale Uhr im EtherCAT Slave Controller (ESC) dar mit den Eigenschaften:

In der EL5101-0011 ist ein Umfang von 64 Bit realisiert.

Beispiel Oversampling mit Sync0 und Sync1:

Der Feldbus/EtherCAT Master wird mit 1 ms Zykluszeit (TSYNC1) betrieben weil z. B. die übergeordnete SPS mit 1 ms Zykluszeit betrieben wird. Damit wird alle 1 ms ein EtherCAT-Frame zur Abholung der Prozessdaten der EL5101-0011 geschickt. Im ESC (EtherCAT Slave Controller) wird deshalb durch die lokale Uhr in der Klemme alle 1 ms (1 kHz) ein Interrupt ausgelöst, der die Prozessdaten rechtzeitig für den abholenden EtherCAT-Frame bereitstellt. Dieser erste Interrupt wird SYNC1 genannt.

Die EL5101-0011 sei im TwinCAT System Manager auf einen Oversampling-Faktor n = 100 eingestellt. Dadurch generiert der ESC in der Klemme einen zweiten Interrupt mit einer n-fach höheren Frequenz (FSYNC0), hier also 100 kHz oder 10 µs Periode (TSYNC0). Dieser Interrupt wird SYNC0 genannt. Bei jedem SYNC0-Signal wird der Zählerstand erfasst, diese werden nacheinander in einem Puffer abgelegt. Durch die Generierung des SYNC0-Pulses aus der lokalen synchronisierten Uhr im Distributed-Clocks-Verbund ist gewährleistet, dass die Erfassung des Positionswertes in zeitlich hochkonstant gleichen Abständen mit der Periode des SYNC1-Pulses erfolgt.

Grundlagen zur Oversampling-Funktion 1:

Maximale Sampling-Frequenz / Minimale Zykluszeit

Eine kleinere Sampling-Zeit (TSYNC0) als 10 μs ist für die EL5101-0011 nicht zulässig!
Die maximale Sampling-Frequenz (FSYNC0) beträgt für die EL5101-0011 also 100 kSps (Samples per second).
Die minimale Zykluszeit (TSYNC1) von 500 µs bei einem Oversampling-Faktor von n = 50 darf nicht unterschritten werden.
Bei der Berechnung des SYNC0 aus dem SYNC1-Puls durch die manuelle Vorgabe eines Oversampling-Faktors ist darauf zu achten, dass für TSYNC0 nur ganzzahlige Werte im Nanosekundenabstand berechnet werden.
Beispiel: 187.500 ns sind zulässig, 333.333,3333 ns sind nicht zulässig.

Beispiel zulässige und unzulässige Oversampling-Faktoren:

Bei TSYNC1 = 1 ms sind Oversampling-Faktoren wie 1,2,5 oder 100 zulässig, nicht aber 3! Wird mit unplausiblen Werten gearbeitet, erreicht die Klemme zwar den OP-State, liefert aber keine Prozessdaten.
Dies drückt sich ggf. auch durch einen Working Counter Error aus.
Die im Puffer gesammelten Messwerte von je 32 Bit Umfang werden als Paket an die übergeordnete Steuerung übergeben.

Zusammenfassung:

Grundlagen zur Oversampling-Funktion 2:

Zeitbezogene Zusammenarbeit mit anderen Klemmen

Die Messwerterfassung in der EL5101-0011 wird durch einen Interrupt ausgelöst, der von der lokalen Uhr in der Klemme generiert wird. Alle lokalen Uhren in den unterstützenden EtherCAT-Slaves sind synchronisiert. Dadurch ist es möglich, EtherCAT-Slaves (hier: Klemmen) unabhängig von ihrer jeweiligen Entfernung untereinander gleichzeitig ihre Messwerte erfassen zu lassen (gleichzeitige Interrupt-Erzeugung). Diese Gleichzeitigkeit liegt im Rahmen der Distributed-Clocks-Genauigkeit von < 100 ns.

Beispiel für die Abstimmung zweier EL5101-0011 untereinander:

Der EtherCAT Master wie z. B. Beckhoff TwinCAT konfiguriert beide EL5101-0011 so, dass ihre SYNC1 zum gleichen Zeitpunkt auftreten.

Annahme: die EtherCAT-Buszykluszeit TSYNC1 = 500 μs. Somit wird der SYNC1 in allen EL5101-0011 alle 500 μs ausgelöst.

Zeitstempel der Prozessdaten

Die EL5101-0011 bietet einen Zeitstempel für jeden Prozessdatenblock. Dieses Prozessdatum ist als StartTimeNextLatch durch die Aktivierung von 0x1A01 ENC NextSync1Time im Reiter Prozessdaten als 64-Bit-Wert in der Werkseinstellung bereits aktiviert, siehe auch die Kapitel Prozessdaten.
Dabei ist der in jedem Zyklus übertragene Datenblock Sample-Werte + Zeitstempel nicht zusammenhörig. Der Zusammenhang ist in der folgenden Abb. dargestellt.

Zur Erläuterung:

Grundlagen zur Oversampling-Funktion 3:
Zeitlicher Zusammenhang SYNC-Signale und SyncManager-Interrupt