Anhang | EtherCAT-Dokumentation
Um aufgrund der Asynchronität zwischen Masterzyklus und Slavezyklus sicherzustellen, dass keine Samples verloren gehen, sollte
die Masterzykluszeit immer kleiner als die Zeit für das Zusammenstellen eines Blockes aus n Samples sein.
Ein ganzer Block wird mit den angegebenen Samples erst der EtherCAT - Seite zur Verfügung gestellt, nachdem alle angegebenen
Samples in den Block geschrieben wurden. Ist die Zeit für das Füllen eines Blockes kürzer als die Masterzykluszeit, werden einzelne
Blöcke nicht übertragen. Es kann nämlich vorkommen, dass bereits der nächste Block mit Samples gefüllt wird, bevor mit einem
Masterzyklus der bereits vorher gefüllte Block abgeholt wird.
Zeit für n Samples < Masterzykluszeit
Wird die Anzahl der Samples dagegen so groß gewählt, dass die Zeit für das Füllen eines Blockes größer als die Masterzykluszeit
wird, wird jeder Block durch einen Masterzyklus abgeholt. Allerdings werden einzelne Blöcke (und somit Samples) doppelt oder
mehrfach übertragen. Das kann durch Übertragen des Timestamp oder Valuecounter (siehe Objekt 0x6002, 0x6003) auf der Master-
seite detektiert werden.
Zeit für n Samples > Masterzykluszeit
optoNCDT 1900 / EtherCAT
Masterzyklus > 1 ms
nicht übertragene Blöcke
Masterzyklus < 1 ms
doppelt (mehrfach) übertragene Blöcke
Block
4 Samples im Abstand 250 µs = 1 ms
4 Samples = 1 ms
Block
5 Samples im Abstand 250 µs = 1,25 ms
5 Samples = 1,25 ms
Seite 102