Performance
Die erreichbare Zykluszeit bei einem EtherCAT-Master hängt von einigen wesentlichen Umgebungsbedingungen ab, die teilweise projektspezifisch sehr unterschiedlich sind. Im Folgenden erhalten Sie Hinweise zur Projektierung und Tipps, wie Sie erkennen, ob die benötigte Funktionalität durch das Gerät geleistet werden kann.
Folgende Faktoren sind dafür ausschlaggebend:
- Auf welcher Gerätehardware wird die Software eingesetzt?
- Wie groß ist das Gesamt-Prozessdatenabbild des Busses?
• Abhängig von den Teilnehmern und ggf. deren modularen Aufbau - Welche Zykluszeit darf maximal verwendet werden, um den notwendigen Steuerungsprozess ausführen zu können?
- Welche Taskpriorität kann dem EtherCAT-Task eingeräumt werden?
- Wie stark ist das Gerät bereits mit anderen Aufgaben ausgelastet?
Je nachdem, wie die obenstehenden Fragen beantwortet werden, ergeben sich andere Leistungsgrenzen dieser Funktion. Bei der Inbetriebnahme wird nachfolgend dargestelltes Vorgehen empfohlen:
Annahme:
- Es wird ein PFC200 (2. Generation) als Controller eingesetzt.
- Das Prozessabbild überschreitet 200 Byte nicht (z. B. beliebig viele Feldbuskoppler 750-354 mit insgesamt 25 8-Kanal-Digitalmodulen).
- Der Prozess erlaubt es, die Zykluszeit auf maximal 5 ms zu setzen.
Vorgehen:
- Projektieren des modularen Aufbaus der I/O-Knoten sowie des Busses gemäß e!COCKPIT-Handbuch.
- Schreiben des PLC-Programms, der Visu-Anwendung etc.
- Einstellen der Zykluszeit der EtherCAT-Task auf 5ms.
- Einstellen der Priorität der EtherCAT-Task auf 6.
- Download der Applikation und Starten des Systems.
Das System wird nun versuchen, die geforderten Aufgaben auszuführen. Mit Hilfe der Onlinefunktionen von e!COCKPIT ist es möglich, zu ermitteln, ob dieses erfolgreich gelingt:
- „Online“-Gehen mit e!COCKPIT
- Öffnen des Registers „Status“ im EtherCAT-Feldbuskonfigurator
- Kontrollieren Sie in diesem Dialog,
• ob die geforderte Zykluszeit erreicht wird (Zykluszeit = 1 / FramesPerSecond [s], im Beispiel 1 / 201 s = 47,6 ms),
• ob in der Statistik Telegrammverluste oder Fehler angezeigt werden.
- Prüfen Sie, ob die Zykluszeit im Durchschnitt eingehalten wird, oder sich die Angaben zum Jitter häufig ändern.
• Jitter (µs): Letzter gemessener Jitter – Jitter ist der Unterschied zwischen dem Zeitpunkt, an dem die Task starten soll und dem Zeitpunkt, ab dem die Tasks dann wirklich startet. Beispiel: Wenn eine Task alle 1000 µs starten soll und sie startet erst wieder nach 1100 µs dann ist der Jitter 100 µs.
• Min. Jitter (µs): Minimaler gemessener Jitter
• Max. Jitter (µs): Maximaler gemessener Jitter
Treten keine Telegrammverluste, Fehler oder ein großer Jitter auf, befindet sich die CPU-Auslastung im geforderten Rahmen. Das System kann mit diesen Einstellungen betrieben werden. Bei Bedarf kann versucht werden, die Zykluszeit zu verringern und die Prüfung erneut durchzuführen. Ergibt die Prüfung jedoch Fehler, so muss versucht werden, diesen Zustand durch Änderung der oben genannten Einstellungen zu verbessern.
Treten Telegrammverluste, Fehler oder ein großer Jitter auf, obwohl die CPU-Auslastung sich im empfohlenen Bereich befindet (~80 %), so kann dies ggf. durch eine höhere Taskpriorität (=kleinere Zahl) positiv beeinflusst werden. Ist dies nicht erfolgreich, so bleibt nur die Möglichkeit, die Zykluszeit zu verringern. Alternativ muss bewertet werden, ob sporadische Telegrammverluste von der Applikation akzeptiert werden können.
Die Zykluszeit bei einem PFC200 (2. Generation) sollte nicht kleiner als 2 ms eingestellt werden.