@Sven: Ja, genau - durch die drei Parameter wird die Regelung optimiert.
Das Prinzip der PID-Regelung findet ja an verschiedenen Stellen im Code statt (Verfolgen der Induktionsschleife, Anpassung der Messer-Motordrehzahl, Kompaßkurs einhalten etc.).
Da nicht jedem sofort ersichtlich ist, welche Funktion die Parameter P,I und D allgemein erfüllen, gibt es z.B. hier eine gute Einführung in das Thema PID-Regelung: http://tutorial.cytron.com.my/2012/06/22/pid-for-embedded-design/
Ganz kurz:
P: der P-Anteil gewichtet nur die momentane Differenz zwischen Soll- und Istwert. Ist P klein, ist die Regelung langsam und der Sollwert (hier rosa) wird nie ganz erreicht (Restfehler):
Ist P groß, ist die Regelung zwar schnell, aber schwingt:
Man stellt daher P gerade so ein, dass es nicht schwingt und benutzt zusätzlich I- und D -Anteile.
I: der I-Anteil gewichtet nur die aufsummierten Differenzen zwischen Soll- und Istwert und senkt so den Restfehler auf Null. Das Schwingen kann er nicht verhindern:
D: der D-Anteil gewichtet nur die Änderung der Differenz zwischen Soll- und Istwert. Wenn sich die Differenz verringert (negative Änderung), sorgt dies für eine zusätzliche Dämpfung beim Erreichen des Istwertes:
Alle drei Anteile (richtig eingestellt) sorgen für eine optimale Regelung (wenig Schwingen, kein Restfehler):
Das finden der optimalen PID-Parameter braucht manchmal Erfahrung und/oder Geduld
Evtl. baue ich noch 3 Schieberegler (für die P,I,D-Anteile) in die pfodApp ein mit denen man verschiedene PID-Parameter für alle verwendeten Regler live ausprobieren kann...
Das Prinzip der PID-Regelung findet ja an verschiedenen Stellen im Code statt (Verfolgen der Induktionsschleife, Anpassung der Messer-Motordrehzahl, Kompaßkurs einhalten etc.).
Da nicht jedem sofort ersichtlich ist, welche Funktion die Parameter P,I und D allgemein erfüllen, gibt es z.B. hier eine gute Einführung in das Thema PID-Regelung: http://tutorial.cytron.com.my/2012/06/22/pid-for-embedded-design/
Ganz kurz:
P: der P-Anteil gewichtet nur die momentane Differenz zwischen Soll- und Istwert. Ist P klein, ist die Regelung langsam und der Sollwert (hier rosa) wird nie ganz erreicht (Restfehler):
Ist P groß, ist die Regelung zwar schnell, aber schwingt:
Man stellt daher P gerade so ein, dass es nicht schwingt und benutzt zusätzlich I- und D -Anteile.
I: der I-Anteil gewichtet nur die aufsummierten Differenzen zwischen Soll- und Istwert und senkt so den Restfehler auf Null. Das Schwingen kann er nicht verhindern:
D: der D-Anteil gewichtet nur die Änderung der Differenz zwischen Soll- und Istwert. Wenn sich die Differenz verringert (negative Änderung), sorgt dies für eine zusätzliche Dämpfung beim Erreichen des Istwertes:
Alle drei Anteile (richtig eingestellt) sorgen für eine optimale Regelung (wenig Schwingen, kein Restfehler):
Das finden der optimalen PID-Parameter braucht manchmal Erfahrung und/oder Geduld
Evtl. baue ich noch 3 Schieberegler (für die P,I,D-Anteile) in die pfodApp ein mit denen man verschiedene PID-Parameter für alle verwendeten Regler live ausprobieren kann...