Rechenleistung Sparen mit der richtigen Wahl der Sampling-Zeit

Sebastian Süss, Signal Processing Engineer
Lesedauer: 4 min.

Insight in Brief

Bei der Auslegung oder der Optimierung der benötigten Rechenleistung von Regelungs-Systemen ist die Wahl der Abtastzeit ein zentraler Punkt. In diesem Artikel werden unterschiedliche Aspekte für eine fundierte Wahl behandelt.

  • Einfluss auf die Regler Performance
  • Einfluss der Totzeit auf das Führungs- und Störungsverhalten
  • Abhängigkeit von numerischen Problemen und kleinen Abtastzeiten

Einleitung

Bei der Auslegung eines Embedded Systems, welches mit seiner physikalischen Umgebung interagiert, ist die Wahl der Abtastzeit (Sampling Time) essenziell. Sie hat Einfluss auf die Qualität bzw. Erreichbarkeit der Steuerungs- bzw. Regelungsaufgaben, aber auch auf die benötigte Rechenleistung.

Vereinfacht gesagt führt eine kürzere Abtastzeit zu besserer Regler-Performance, benötigt jedoch auch mehr Rechenleistung. Damit ist das Ziel soweit eigentlich klar: Wähle die Abtastzeit nur so schnell als nötig.

Doch wie schnell ist das nun?
Um für unseren Kunden ein Kosteneffizientes Produkt, welches alle technischen Anforderungen erfüllt, liefern zu können, ist es wichtig diese Frage beantworten zu können.

1. Faustregel zur Wahl der Abtastzeit

Für die Wahl der Abtastzeit gibt es, zumindest gefühlt, eine Unmenge an unterschiedlichen Faustformeln. Was diese alle gemeinsam haben ist, dass sie sich immer auf die eine oder andere Art auf die gewünschte Geschwindigkeit des geschlossenen Regelkreises beziehen. Die Parameter welche dabei herangezogen werden sind unter anderem:

  • t_r Anstiegszeit (Rise Time)
  • t_s Einschwingzeit (Settling-Time)
  • \omega_c Durchtrittsfrequenz des offenen Regelkreises (Cross-over Frequency)
  • T_i Zeitkonstante (Time Constant)

 

Zudem hat das Vorgehen welches für die Reglerauslegung verwendet wird einen Einfluss. Wird der Regler im kontinuierlichen Zeitbereich ausgelegt und dieser dann in den diskreten Zeitbereich transformiert, vereinfacht dies den Auslegungsprozess, benötigt aber etwas schnellere Abtastzeiten um gute Regler-Performance zu liefern. Dies ist im Wesentlichen der Tatsache geschuldet das die Approximation des kontinuierlichen Reglers mit kleineren Abtastzeiten besser wird.

Erfolgt die Reglerauslegung direkt im Zeitdiskreten Raum kann die Abtastzeit etwas grösser gewählt werden, da die Regler-Performance nicht auf die Genauigkeit einer Approximation angewiesen ist.

Vielleicht erhöhen wir die Anzahl der existierenden Faustregeln durch die folgenden beiden noch weiter, aber in erster Linie geht es dabei nur darum ein Gefühl für einen sinnvollen Bereich für die Abtastzeit T zu erhalten. Der intuitivste Parameter ist wohl die gewünschte Anstiegszeit, in Kombination mit den «schönen» Zahlenwerten ergibt dies eine recht einprägsame Regel, welche wir im Anschluss auch anhand eines Beispiels noch etwas genauer beleuchten werden.

Approximation eines äquivalenten digitalen Reglers:

    \[ \frac{t_r}{5}\geq T\geq\frac{t_r}{100} \]

Direkt digital ausgelegter Regler:

    \[ \frac{t_r}{2}\geq T\geq\frac{t_r}{100} \]

 

 

2. Reglerperformance in Abhängigkeit von der gewählten Abtastzeit

Um den Einfluss der gewählten Abtastzeit T auf die Performance der Regelung zu untersuchen, soll für eine PT1 Strecke der Form:

    \[ P\left(s\right)=\ \frac{1}{s+1} \]

 

Ein Regler entworfen werden, welcher die Anstiegszeit des Systems von ca. 3 Sekunden auf etwa 1 Sekunde verkürzt. Um dies zu erreichen, verwenden wir einen kontinuierlichen Regler der Form:

    \[ C\left(s\right)=1+\frac{1}{0.5\ s} \]

 

Für die Approximation eines äquivalenten digitalen Reglers verwenden wir die Bilineare-Transformation (im englischen auch Tustin’s method gennant). Damit erhält man einen Regler der Form:

    \[ C_{ed}\left(z\right)=2\ \bullet\frac{z}{z-1} \]

 

Der direkt digital ausgelegte Regler wird so gewählt, dass die Pole des geschlossenen Regelkreises an derselben Stelle liegen wie die Pole des kontinuierlichen geschlossenen Regelkreises nach einem ‘Sample and Hold’ Glied. Auf diese Weise wird versucht die Sprungantwort des kontinuierlichen Systems zu approximieren. Hier zeigt sich auch schon, dass diese Art der Auslegung aufwendiger ist, da sich für jede gewählte Abtastzeit ein neuer Regler ergibt, bei welchem die Parameter von der Abtastzeit abhängen.

    \[ C_{dd}\left(z\right)=\ \kappa(T)\bullet\frac{z-\beta(T)}{z-\alpha(T)} \]

 

In Abbildung 1 sind die Sprungantworten für Abtastzeiten T =1 bis T = 0.01 animiert dargestellt.

Sampling Article

Abbildung 1: Sprungantwort für unterschiedliche Abtastzeiten.

 

Für beide Auslegungsverfahren ist gut zu erkennen, dass diese der kontinuierlichen Zielvorgabe immer näherkommen, je kürzer die Abtastzeit wird. Gute Ergebnisse erhält man bereits für \frac{t_r}{2} = 0.5 (direkte digitale Auslegung) bzw. \frac{t_r}{5} = 0.2 (digitale Approximation).

 

Geht es noch langsamer?

Die Durchtrittsfrequenz des geschlossenen Regelkrieses beträgt für unser Beispiel \omega_c = 1.41. Die Nyquist-Frequenz liegt bei \omega_N=\frac{\pi}{T} , um das Nyquist-Kriterium zu erfüllen muss die Abtastzeit also kleiner als 2.23 s sein. Was so hohe Abtastzeiten für die Regler-Performance bedeuten ist in Abbildung 2 ersichtlich. Für sehr hohe Abtastzeiten von mehr als 3 s ist gut zu erkennen, dass die Information über die Geschwindigkeit des Systems nicht mehr abgebildet werden kann. Für dieses Beispiel führt dies zwar nicht zu einer Instabilität, aber das System nähert sich immer mehr der ungeregelten Strecke an.

 

Sampling Article

Abbildung 2: Sprungantwort für grosse Abtastzeiten.

 

 

3. Totzeit durch die digitale Implementation

Im oben dargestellten Beispiel wird nicht berücksichtigt, dass ein real implementierter digitaler Regler immer Zeit braucht, um den Ausgabewert zu berechnen. Die Zeit, die benötigt wird um den Eingangswert zu messen, die Berechnungen für den Regelalgorithmus durchzuführen und das Resultat auszugeben, führt unweigerlich zu einer Totzeit (im englischen ‘transport delay’). Wird dies bei der Auslegung des Reglers nicht berücksichtigt kann dies zu einem instabilen System führen, da die Totzeit einen Phasenverlust darstellt und dieser direkt den Phasenabstand des Reglers reduziert.

In der technischen Umsetzung gibt es mehrere Möglichkeiten mit der ‘Durchlaufzeit’ des Reglers umzugehen. Das Problem, das sich dabei stellt ist, dass diese nicht immer gleich sein muss und dies zeitlichen Schwankungen beim Applizieren der Ausgangswerte führen kann. Dies entspricht also einer variablen Totzeit, und wie bereits erwähnt können nicht berücksichtigte Totzeiten zu Instabilitäten führen. Um diese Unsicherheit zu vermeiden ist es möglich die Ausgänge immer erst beim nächsten Abtastzeitpunkt zu schreiben. Dieses Vorgehen wird vor allem bei Sicherheitskritischen Anwendungen bevorzugt, um die damit einhergehenden Risiken zu minimieren. Auch für unser Beispiel wurde dieser Ansatz gewählt und man erhält damit eine konstante Totzeit von der Grösse der Abtastzeit T.

In Abbildung 3 ist die Sprungantwort für unser Beispiel dargestellt, wenn die Totzeit bei der Regler-Auslegung nicht berücksichtigt wird. Die Animation zeigt die Ergebnisse für Abtastzeiten von T =1 bis T = 0.01.

 

Sampling Article

Abbildung 3: Sprungantwort für unterschiedliche Abtastzeiten, wenn die Totzeit beim Design nicht berücksichtigt wurde.

 

Es ist zu erkennen, dass das Resultat besser ist, je kürzer die Abtastzeit ist. Dies ist leicht nachzuvollziehen, da die Totzeit/Abtastzeit sich direkt über den Phasenabstand auf die Regler Performance auswirkt.

Berücksichtigt man bei der Auslegung des Reglers aber diese zusätzliche Totzeit kann auch hier eine gute Regler Performance erreicht werden. In Abbildung 4 sind die Sprungantworten für Abtastzeiten T =1 bis T = 0.01 animiert dargestellt.

 

Sampling Article

Abbildung 4: Sprungantwort für unterschiedliche Abtastzeiten, wenn die Totzeit beim Design berücksichtigt wurde.

 

Einen Einfluss hat die Totzeit auch bei der Reaktion auf Störungen von aussen. In Abbildung 5 ist die Reaktion auf eine plötzlich auftretende konstante Störung dargestellt. Auch hier ist diese wieder über die Abtastzeit von T = 1 bis T = 0.01 animiert.

 

Sampling Article

Abbildung 5: Störantwort für unterschiedliche Abtastzeiten, Best-Case timing.

 

Bei dieser Abbildung ist allerdings zu beachten das es sich um den ‘Best-Case’ Fall handelt bei welchem die Störung genau zu der Zeit auftritt, bei welcher der Wert auch abgetastet wird. Betrachtet man den ‘Worst-Case’ Fall, das gerade nach dem Einlesen des Messwerts die Störung auftritt, erhält man das in Abbildung 6 dargestellte Bild.

 

Sampling Article

Abbildung 6: Störantwort für unterschiedliche Abtastzeiten, Worst-Case timing.

 

Es kann also festgehalten werden das lange Abtastzeiten für das Störverhalten einen grösseren Einfluss haben als für das Führungsverhalten.

 

 

4. Numerische Probleme bei kleinen Abtastzeiten

Man könnte nun also annehmen, dass für die Performance generell gesagt werden kann: Je schneller je besser. Wie man aber schon dem Titel dieses Abschnitts entnehmen kann, ist die erforderliche Rechenleistung nicht der einzige Grund für ein unteres Limit der Abtastzeit bei den oben angeführten Faustregeln.

 

Wieso hat die Abtastzeit einen Einfluss auf numerische Probleme bei der Implementation?

Sehr anschaulich kann dies anhand des Pol-Nullstellendiagramms gezeigt werden. In Abbildung 7 ist das Pol-Nullstellen Diagramm für ein System mit zwei deutlich unterschiedlichen Polstellen (s1=1 und s2 = 10) nach der Diskretisierung mit unterschiedlichen Abtastzeiten dargestellt. Es zeigt sich, dass mit abnehmender Abtastzeit die Pole immer näher an den Einheitskreis rücken und sich dabei der Abstand immer weiter verkleinert. Es ist nun leicht sich vorzustellen das bei einer beschränkten Präzision der numerischen Darstellung die beiden Pole nicht mehr auseinandergehalten werden können.

 

Sampling Article

Abbildung 7: Pol-/Nullstellen nach der Diskreditierung mit unterschiedlichen Abtastzeiten.

 

Mit geringerer Abtastzeit steigt also auch die Anforderung an die numerische Repräsentation eines digitalen Reglers und da diese nicht beliebig erhöht werden kann ergibt sich hier auch ein unteres Limit für die Abtastzeit.

 

Was bedeutet dies nun für unseren Beispiel Regler?

Nehmen wir eine Implementation mit FixedPoint Werten mit 3 Nachkommastellen an, bedeutet dies das sowohl Fehler bei der Abbildung der Parameter und Zustände wie auch Rundungsfehler bei den Berechnungen auftreten. Was dies für die Sprungantwort des Systems bedeutet ist in Abbildung 8 für Abtastzeiten von T = 1 bis T= 0.01 dargestellt.

Das numerische Verhalten ist dabei auch von der gewählten Implementationsform des digitalen Reglers abhängig. Für dieses Beispiel wurde die Direkte Form I gewählt.

 

Sampling Article

Abbildung 8: Sprungantwort für eine Regler Implementierung mit FixedPoint Werten und 3 Nachkommastellen. Animiert für unterschiedliche Abtastzeiten.

 

Dabei ist dieses Problem unabhängig von der gewählten Auslegungsmethode. In der Animation ist hingegen sogar zu sehen das diese für dieses Beispiel bei kleinen Abtastzeiten oft die exakt selben Sprungantworten liefern. Dies lässt sich dadurch erklären, dass durch die beschränkte Auflösung die erhaltenen Implementationen meist auf denselben abbildbaren Werten zu liegen kommen.

Zusammenfassung

Ausschlaggebend für die Wahl der Abtastzeit ist die Geschwindigkeit des geschlossenen Regelkreises. Hierfür gibt es eine ganze Reihe von Parametern, welche diese abbilden. Wir haben in diesem Artikel eine Faustregel mit dem anschaulichen Parameter der Anstiegszeit aufgestellt. Der Bereich bewegt sich zwischen 2 und 100 Abtastungen innerhalb der gewünschten Anstiegszeit.

Es wurde gezeigt, dass die Regler-Performance von einer kleineren Abtastzeit profitiert. Und dass der Einfluss auf das Störverhalten sogar noch grösser ist.

Gegen zu kleine Abtastzeiten sprechen die benötigte Rechenleistung und mögliche numerische Probleme.

In Abbildung 9 sind die Faustregeln nochmal als farblich hinterlegter Bereich dargestellt. Die beiden Kurven zeigen ein Abweichungsmass, welches umso grösser ist je weniger gut die gewünschte Sprungantwort erreicht wird. Als Sollwert wurde hierbei die Sprungantwort des kontinuierlichen Systems verwendet. Bei hohen Abtastzeiten ergeben sich Abweichungen der Approximation bei kleinen Abtastzeiten kommt es zu numerischen Problemen. Zu beachten ist das eventuell die Störantwort als weitere Dimension für die Wahl der Abtastzeit berücksichtigt werden muss.

 

Sampling Article

Abbildung 9: Bereiche der Faustregeln im Verglich zu einem Abweichungsmass zur gewünschten Sprungantwort.

Sind Sie an weiteren Beiträgen interessiert?

Hinterlassen Sie hier Ihre E-Mail-Adresse und wir informieren Sie, sobald wir neue Beiträge veröffentlichen.

Das könnte Sie auch interessieren

Usability study for medical devices
Lesedauer: 3 Min

Usability-Study für medizinische Geräte

Sicherheitsrelevante Anwendungsfehler oder Schäden für den Benutzer vermeiden mit Usability-Studies
Event-based
Lesedauer: 4 Min

Warum Event-basierte Softwarearchitektur?

Dieser Artikel erläutert die Event-basierten Softwarearchitektur, ihre Vorteile und möglichen Nachteile für...
Expert Blog Architekturprozess
Lesedauer: 4 Min

Die systematische Erstellung einer System- und Softwarearchitektur

Dieser Artikel befasst sich mit der Erarbeitung einer guten Systemarchitektur...
IMT_AdditiveFertigung_Blog
Lesedauer: 5 Min

Additive Fertigung - zuverlässig genug für die Medizintechnik?

Für einen Kunden wurde innerhalb kürzester Zeit eine Komponente für ein medizinisches Messgerät entwickelt...
knowwhatyoudonwknow_cover
Lesedauer: 4 Min

Wissen, was Sie nicht wissen

Typische Klassifikationsalgorithmen weisen jeder Stichprobe eine Klasse zu, auch wenn diese Stichprobe möglicherweise weit entfernt...
Samping time
Lesedauer: 4 Min

Sampling: nicht schneller als nötig

Bei der Auslegung oder der Optimierung der benötigten Rechenleistung...