www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Abtastzeit beim I Regler


Autor: Andy11 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Quelle: http://www.rn-wissen.de/index.php/Regelungstechnik

In der Erklärung steht:

>Software I-Regler:

>esum = esum + e
>y = Ki  Ta  esum

>esum ist die Summe aller bisherigen Abweichungen e. Der Parameter des >Software 
I-Reglers ist abhängig von der Rechenschrittweite Ta (Abtastzeit).
>Je öfter gerechnet wird, desto öfter wird auch hinzugezählt >(aufintegriert). 
Eine kleine Abtastzeit erfordert also einen kleineren >Faktor, dies wird durch die 
Multiplikation mit Ta verwirklicht.

und was für mich interessant ist ist das:

>Der Parameter des >Software I-Reglers ist abhängig von der >Rechenschrittweite Ta 
(Abtastzeit).
Wie ist denn das gemeint mit der Rechenschrittweise? Wie schnell der 
Prozessor ist =?

>Je öfter gerechnet wird, desto öfter >wird auch hinzugezählt
Das stelle ich mir mit der GEschwindigkeit des Controllers vor, stimmt 
diese ANnahme?

Wieso brauche ich also einen extra Faktor für die Abtastzeit wenn der 
COntroller eine Fixe Zykluszeit hat und er das soi schnell wie er mag 
hochrechnet?

lg andy

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, das sollte nichts mit der Geschwindigkeit des Controllers zu tun 
haben. Der Sinn dahinter ist, dass die Regelfunktin regelmäßig in immer 
gleichen Zeitschritten aufgerufen wird. Das macht man normal mit einem 
Timer. Damit die Reglerparameter normiert sind, muss dem Regler bekannt 
sein, wieviel Zeit seit seinem letzten Aufruf vergangen ist. Das ist Ta.

Grüße,

Peter

Autor: Andy11 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter Diener schrieb:
> Damit die Reglerparameter normiert sind, muss dem Regler bekannt
> sein, wieviel Zeit seit seinem letzten Aufruf vergangen ist.

Aha, aber das geht dann auch ohne Timer doch auch, wenn auch nur 
ungenau, da ein Zyklus genau ausgemessen/simuliert werden muss.

Aber verstehe jetzt dass das der I Regler nur braucht um zu wissen 
wieviel vergangen ist.
Danke!

lg andy

Autor: Andy11 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber eine Frage noch: Diese Zeit bleibt fix oder?
Dh wenn ich nen Timer in 100ms überlaufen lasse dann bleibt Ta immer 100 
und wird nur zu Programmbeginn festgelegt mit #define oder desweiteren

lg andy

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das ist alles richtig.

Nur meistens ist das Programm so kompliziert, dass es nicht für jeden 
Durchlauf gleich lang braucht. Deswegen erzwingt man das mit einem 
Timer.

Für hochdynamische (und damit sehr schnelle) Regler kann es sein, dass 
die Multiplikation mit Ta störend viel Zeit braucht, dort kann man sie 
dann auch weglassen. Man muss aber wissen, dass man dann die 
Regelparameter ändern muss, wenn sich die Zykluszeit des Reglers ändert.

Grüße,

Peter

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Aber eine Frage noch: Diese Zeit bleibt fix oder?

Das sollte üblicherweise so sein, in Sonderfällen kann man die 
Abtastrate dynamisch ändern, findet man aber eher selten.

Autor: Andy11 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter Diener schrieb:
> Für hochdynamische (und damit sehr schnelle) Regler kann es sein, dass
> die Multiplikation mit Ta störend viel Zeit braucht, dort kann man sie
> dann auch weglassen. Man muss aber wissen, dass man dann die
> Regelparameter ändern muss, wenn sich die Zykluszeit des Reglers ändert.

ok, danke der Erklärungen!!

lg Andy

Autor: Andy11 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
EIne Frage hätte ich da aber noch, und zwar in welcher EInheit das ist.
Wenn ich zB einen PID Regler dimensioniere kann ich dann einfach den 
Faktor 10 einsetzen oder ist dort der Standardwert in Sekungen, dh es 
müsste dann so ausshcuaen
#define Abtastzeit 0.01f
?

lg Andy

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das kann man schon für menschenverständliche Einheiten auslegen, also 
Sekunden für die Nachstellzeit Tn bzw. Hz für Ki. Wenn man den Regler 
aber nicht im Gleitkommaformat rechnen will, sollte man eine Normierung 
wählen, die den Ganzzahlbereich besser ausnutzt, das geht dann meistens 
nicht mehr mit normalen Einheiten.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.