Optimierung von verteilten CAN-basierten Applikationen durch ein erweitertes Bus-Monitoring

Jürgen Nützel; Wolfgang Fengler; Ralf Blume
E-mail: nuetzel;wfengler;blume@theoinf.tu-ilmenau.de
Technische Universität Ilmenau
Fakultät für Informatik und Automatisierung
98684 Ilmenau, Thüringen

Kurzfassung

Es wird ein Verfahren beschrieben, welches durch ein erweitertes Bus-Monitoring, die zeitlichen Auswirkungen der Zuordnung von CAN-Identifiern zu CAN-Nachrichten ermittelt. Durch den Einsatz dieses Verfahrens erhält der Anwender entweder die Möglichkeit zur Optimierung der System-Performance bzw. zur Feststellung der realen Zeitparameter des CAN-Bus-Systems.

Durch das erweiterte Bus-Monitoring nun, bei dem alle übertragenen Nachrichten einen zusätzlichen Zeitstempel beim Einschreiben in den Sendepuffers erhalten, kann festgestellt werden wie lange (bzw. wie oft) eine CAN-Nachricht vom Buszugang durch höherpriore Nachrichten abgehalten wurde.

Durch die nachträgliche Auswertung dieser protokollierten Zugangsverzögerungszeiten läßt sich eine veränderte Version der CAN-Applikation erstellen, bei der die Identifier- und Sperrzeitzuordnung diese Meßergebnisse berücksichtigen.

Zum flexiblen Test mit verschiedenen System-Konfigurationen wird eine Petrinetz-basierte Simulation des Verfahrens vorgestellt.

Einleitung

Das stochastische Medienzugangsverfahren CSMA/CA (Collision Avoidance) des CAN-Feldbusses bringt für verteilte Steuerungen mit engen zeitlichen Restriktionen verschiedene Vor- und Nachteile mit sich.

Zum einem können beim CAN, welches seine Telegramme durch vorangestellte Identifier priorisiert, hochpriore Nachrichten (Telegramme mit niedrigem Identifier) nahezu ohne Verzögerung den Empfänger erreichen. Es muß nicht auf die Zuteilung der Sendeerlaubnis, wie z.B. bei Systemen mit Tokenweitergabe, gewartet werden. Zum anderen können alle niederprioren Nachrichten (Telegramme mit hohem Identifier) durch höherpriore Nachrichten vom Buszugang abgehalten werden. Die Zeit, die diese Nachrichten warten müssen, kann stark schwanken. Dadurch gestaltet sich die Festlegung von engen Schranken für die Latenzzeit des Gesamtsystems als sehr problematisch.

Das vorgestellte Verfahren wurde primär für Systeme konzipiert, in denen Prozeß-Ausgänge unmittelbar aufgrund von Signalen entfernter Prozeß-Eingängen aktiviert bzw. verändert werden müsssen; Regelvorgänge, die auf Sollwert-Änderungen sehr schnell reagieren können sind ein Beispiel dafür.

Es existieren einige analytische Ansätze, die die maximale Zugangsverzögerungszeit (ZVZ) [Staub95] aller im System vorkommender COBs (Communication-Object - CAN-Nachricht, die eindeutig durch ihren Identifier gekennzeichnet wird) ermittelt.

Ein anderer Ansatz [Wang92] beschreibt den umgekehrten Weg. Es wird ein Schema eingeführt, das allen im System vorkommenden Nachrichten Prioritäten (die Identifier) zuordnet, so daß die vorgegebenen Zeitschranken (maximale ZVZ) der einzelnen Nachrichten nach Möglichkeit eingehalten werden.

Solche analytischen Ansätze müssen naturgemäß auch den ungünstigsten Fall, bei dem ein COB durch alle vorhanden höherprioren COBs verdrängt wird, berücksichtigen und kommen somit zu Lösungen, die für das reale System nicht unbedingt optimal sein müssen. Solch ein analytischer Ansatz [Wang92] kann jedoch für eine erste Konfiguration herangezogen werden. Das so parametrierte System wird daraufhin über einen Zeitraum in seiner realen Prozeß-Umgebung beobachtet. Die dabei gewonnenen Statistiken über die real auftretenden Telegrammketten TKs (Folge von höherprioren Telegrammen, die eine niederpriore Nachricht verdrängen) werden in einem zweiten Systemkonfigurationslauf dazu genutzt um entweder Teiloptimierungen durchzuführen oder die realen Zeitparameter der COBs zu ermitteln.

Mail to: Juergen Nuetzel
Last update: July 1996

Back to my homepage