Next: Auswahl des Meßprinzips
Up: Latenzzeitmessung
Previous: Latenzzeitmessung
Für jeden Zugriff auf den CAN Bus entsteht eine Verzögerung, die sich aus
- der nicht erlaubten Unterbrechung einer laufenden Nachricht und
- dem Abweisen einer Nachricht durch eine andere Nachricht mit
höherer Priorität
zusammensetzt. Im Detail ist das bereits in Kapitel 4.1
beschrieben.
Für die Berechnung sind einige Größen notwendig, die im folgenden
definiert werden:
CAN Bustakt: 100 kHz, d.h. 10
s Bitzeit, bzw. Bustaktzyklen
CAN Meßnachricht:
Übertragungsdauer
CAN Störnachricht:
Übertragungsdauer
Sendezeitpunkt der Meßnachricht:
Sendezeitpunkt der Störnachricht: ![\(t_{St\uml {o}r}\)](img21.gif)
Man kann im wesentlichen 3 Fälle unterscheiden:
- 1.
- Der Bus ist frei (idle), so daß die Nachricht sofort übertragen
werden kann. Dies entspricht dem günstigsten Fall.
![\begin{equation}
t_{Lat} = 0 \;\;\pm 3\;\text{Bustaktzyklen}
\end{equation}](img22.gif)
(1)
- 2.
- Zum Zeitpunkt der Sendeanforderung wird bereits eine Nachricht
übertragen. Es muß bis zum Ende der Übertragung gewartet werden, was
bis zu 111 Bitzeiten dauern kann (vgl. Kap. 4.1).
![\begin{equation}
t_{Lat} = \tau_{St\uml {o}r} - (t_{Mess} - t_{St\uml {o}r})
\...
...uml {o}r} < t_{Mess} \leq (t_{St\uml {o}r} + \tau_{St\uml {o}r})
\end{equation}](img23.gif)
(2)
- 3.
- Eine Nachricht mit niedriger Priorität verliert
-Mal die
Arbitrierung und muß die Übertragung der Nachrichten mit höherer
Priorität abwarten. Im ungünstigsten Fall bekommt die Nachricht den Bus
niemals, wartet also ewig auf die Übertragung der anderen
Nachrichten. Bei CANopen wurden für diesen Fall besondere Maßnahmen
getroffen, damit Nachrichten mit niedriger Priorität nicht dauerhaft
vom Bus verdrängt werden können.
![\begin{equation}
\begin{split}
t_{Lat} &= \tau_{St\uml {o}r} - (t_{Mess} - t_{S...
...t_{Mess} \leq (t_{St\uml {o}r} + \tau_{St\uml {o}r})
\end{split} \end{equation}](img25.gif)
(3)
Allgemein (unabhängig von dem vorliegenden Fall) betrachtet ist die
Verzögerung eine statistische Größe, deren Funktion sich aus der Buslast,
den verwendeten Prioritäten und der eigenen Priorität zusammensetzt.
Next: Auswahl des Meßprinzips
Up: Latenzzeitmessung
Previous: Latenzzeitmessung
Holger Müller, TUD-EMK
9/26/1998