EL125x - Funktionsweise

Allgemeine Features

Die EL1252, EL1254 zeigt je Kanal nicht nur die Eingangspegel an, sondern auch den letzten Zeitpunkt (Timestamp), wann ein Kanal eine steigende oder fallende Flanke aufwies. Über Änderungen in den Latchvorgängen informiert ein Statusbyte für jeden Kanal.

Kalibrierung

Die Zeitverzögerung zwischen der physikalisch realen Flanke der Signalspannung am Klemmeneingang und der Zeitstempelung im EtherCAT Slave Controller (ESC) ist durch die Elektronik mit < 1 µs zwar optimiert, aber nicht beliebig kurz. Bei erhöhten Genauigkeitsanforderungen ist vom Anwender eine Kalibrierung durchzuführen und die exakte Zeitverzögerung in Abhängigkeit von den Umgebungsbedingungen zu messen.

Die Klemme stellt für jeden Kanal folgende Informationen zur Verfügung (s. Abb. TwinCAT Baum, EL1252):

EL125x - Funktionsweise 1:
TwinCAT Baum, EL1252
  • Status1/Status2
    je nach Klemme und Einstellung im SingleEvent-Mode werden Änderungen im Zustand des Kanals im jeweiligen Statusbyte Status1/Status2 in den Bits 0,1 und 2 angezeigt. Die Bits 3..7 sind reserviert und nicht zur Auswertung empfohlen.

Status Byte

EL1252

0

0->1

1

1->0

ContinuousMode (default)

0 (b#00000000)

0 (b#00000000)

0 (b#00000000)

0 (b#00000000)

SingleEventMode

0 (b#00000000)

1 (b#00000001)

1 (b#00000001)

2 (b#00000010)

 

 

 

 

 

EL1254

0

0->1

1

1->0

ContinuousMode (default)

0 (b#00000000)

4 (b#00000100)

4 (b#00000100)

0 (b#00000000)

SingleEventMode

0 (b#00000000)

5 (b#00000101)

4 (b#00000100)

0 (b#00000000)

  • Änderungsanzeigen 0->1/1->0 werden im SingleEventMode nur 1 EtherCAT Zyklus lang angezeigt, da durch das Auslesen der Zeit LatchPosY/LatchNegY auch die Änderungsanzeigen zurückgesetzt werden.
  • LatchPos1/LatchPos2
    Zeitpunkt der ersten/letzten steigenden Signalflanke (im Zeitraum zwischen dem letzten Feldbuszyklus und dem aktuellen Auslesen der Klemme durch den EtherCAT-Frame)
  • LatchNeg1/LatchNeg2
    Zeitpunkt der ersten/letzten fallenden Signalflanke (im Zeitraum zwischen dem letzten Feldbuszyklus und dem aktuellen Auslesen der Klemme durch den EtherCAT-Frame)
  • Channel 1 Input / Channel 2 Input
    Eingangspegel 0 oder 1

Die Flanken-Zeitpunkte werden als 64-bit Zeit, d.h. als 8 Byte als Prozessdaten basierend auf der Distributed Clocks-Uhr der Klemme zur Verfügung gestellt.
Sie stellen sich wie folgt dar: LatchPosXXXY (XXX: POS/NEG, steigende bzw. fallende Flanke; Y: Kanal, 1 bzw. 2).

Zeitliche Konsistenz der Inputdaten

Die Inputdaten der EL1252, EL1254 lassen sich funktional in zwei Gruppen einteilen. Dies ist auch an ihrem Speicherort in den Registern des ESC ersichtlich:
- Eingangskanäle (Channel x Input) und DistributedClocks-Statusbytes
- DistributedClocks-Latch-Zeiten.

Beide Datenblöcke werden unterschiedlich "schnell" aktualisiert - während die Inputdaten beim Eintreffen des Ethernet-Frame am EtherCAT-Slave eingelesen und bereitgestellt werden, können die DC-Latch-Zeiten noch während der Datagrammbearbeitung aufgrund des äußeren Latch-Events aktualisiert werden. Bis wenige ns vor dem Einlesevorgang in den Ethernet-Frame können sich die Latchzeiten also noch ändern - dadurch ist sichergestellt, dass in den Frame der wirklich letztmögliche Status der Inputs gemappt wird.
Beispiel: Am Kanal 1 liegt Low/0V an und der abholende Ethernet-Frame trifft an der EL1252/EL1254 ein. Während der Frameverarbeitung, aber noch vor dem Einlesen, der DC-Latch-Daten tritt eine steigende Flanke ein, die zu einer Aktualisierung von LatchPos1 führt - diese aktualisierte Zeit wird dann in das abholende Datagramm geschrieben. Die Informationen "steigendeFlanke" vs. "Signalpegel" sind in diesem Fall also nicht konsistent.
Empfehlung: Zur exakten Analyse der Eingangskanäle insbesondere bei kurzen Pulsen an den Eingängen sollten ausschließlich die 64-Bit-Zeitstempel LatchNeg/LatchPos ausgewertet werden.