BlockWerk Dokumentation
PID

PID Controller

Continuous

Der PIDController-Block implementiert einen Standard-Proportional-Integral-Differential-Regler für geschlossene Regelkreise (Feedback-Regelung). Er kombiniert drei parallele Regelglieder zur präzisen Prozessführung: einen proportionalen Anteil für die unmittelbare Reaktion, einen integralen Anteil zur Beseitigung der bleibenden Regelabweichung und einen differenzierenden Anteil zur Dämpfung von Überschwingern.

In BlockWerk simulieren

Interaktive Sandbox direkt im Browser — keine Installation, WebAssembly-Engine.

In BlockWerk simulieren →

Mathematisches Modell

u(t)=Kp e(t)+Ki∫0te(τ) dτ+Kd ddte(t)u(t) = K_p \, e(t) + K_i \int_{0}^{t} e(\tau) \, d\tau + K_d \, \frac{d}{dt} e(t)

Diskrete numerische Approximation:

I[n] = I[n-1] + Ki × e[n] × Δt                              (Vorwärts-Euler)
D[n] = (Kd × N × (e[n] - e[n-1]) + D[n-1]) / (1 + N × Δt)  (Rückwärts-Euler-Filter)

Die Übertragungsfunktion des Differenzierfilters lautet Kd × N × s / (s + N), wobei NN der Filterkoeffizient ist. Dieser Tiefpassfilter verhindert eine übermäßige Verstärkung von Messrauschen. Ein größeres NN bewirkt eine geringere Filterung (N→∞N \to \infty entspricht einer idealen Differenzierung). Typische Werte liegen im Bereich N=10–100N = 10\text{–}100.

Ein- & Ausgänge

Direction ID Label Typ Status
→ In error Error number Required
→ In reset Reset number Optional
← Out out Output number Output

Parameter

Parameter Label Typ Standardwert Beschreibung
kp Proportional Gain (Kp) number 1 Controls immediate response to error
ki Integral Gain (Ki) number 0.1 Eliminates steady-state error over time
kd Derivative Gain (Kd) number 0.1 Dampens oscillations by responding to error rate of change
n Filter Coefficient (N) number 100 Derivative filter cutoff frequency. Higher = less filtering
form PID Form select parallel Parallel: u = Kp·e + Ki·∫e + Kd·de/dt. Series: u = Kp·(1 + 1/(Ti·s) + Td·s)·e
min Saturation Min number -1000000000000000 Lower output limit for anti-windup protection
max Saturation Max number 1000000000000000 Upper output limit for anti-windup protection

Anwendungsbeispiele

Temperaturregelung eines Ofens

Setpoint (200°C) → [+]
                     \
Gemessene Temp → [-] → Fehler → PIDController (Kp: 2, Ki: 0.05, Kd: 1) → Heizelement

Positionsregelung eines Servomotors

Ein Sprungsignal als Zielposition erfordert Kd>0K_d > 0, um zu verhindern, dass der Servomotor über die Zielposition hinausschießt und um den Endwert pendelt.

Hinweise & Best Practices

  • Industriestandard: Die überwiegende Mehrheit industrieller Regelkreise basiert auf dem PID-Prinzip.
  • Einstellen (Tuning): Typischerweise beginnt man mit reinem P-Anteil (Ki=0,Kd=0K_i=0, K_d=0), optimiert das Ansprechverhalten, aktiviert das I-Glied gegen bleibende Regelabweichungen und fügt das D-Glied zur Schwingungsdämpfung hinzu.
  • Schrittweite: Alle Verstärkungswerte arbeiten unabhängig von der Integrationsschrittweite der Simulation korrekt, da Δt\Delta t intern berücksichtigt wird.

Verwandte Blöcke