PID: Unterschied zwischen den Versionen
John (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
John (Diskussion | Beiträge) |
||
Zeile 18: | Zeile 18: | ||
! Parameter !! Wertebereich !! Default !! Beschreibung | ! Parameter !! Wertebereich !! Default !! Beschreibung | ||
|- | |- | ||
| | |pidActorValueDecPlaces||[0..5]||0||Anzahl der Nachkommstellen für Ausgabewert zu Aktor | ||
|- | |- | ||
|pidActorInterval||uint||180||minimale Wartezeit in Sekunden, bis neue Ausgabe an das Stellglied erfolgen kann | |pidActorInterval||uint||180||minimale Wartezeit in Sekunden, bis neue Ausgabe an das Stellglied erfolgen kann | ||
Zeile 24: | Zeile 24: | ||
|pidActorThreshold||uint||1||Notwendige minimale Änderung zum Altwert der Stellgliedausgabe, damit diese erneut erfolgt | |pidActorThreshold||uint||1||Notwendige minimale Änderung zum Altwert der Stellgliedausgabe, damit diese erneut erfolgt | ||
|- | |- | ||
|pidActorErrorAction||[freeze, errorPos]||freeze|| | |pidActorErrorAction||[freeze, errorPos]||freeze||legt das Verhalten der Ausgabe zum Stellglied fest, wenn der Istwert nicht innerhalb von <pidSensorTimeout> aktualisiert wurde (Sensor-Ausfall) <br /> | ||
freeze: | freeze: Position des Stellgliedes beibehalten<br /> | ||
ErrorPos: Position anfahren, die unter Attribut <pidActorErrorPos> angegeben ist." | ErrorPos: Position anfahren, die unter Attribut <pidActorErrorPos> angegeben ist." | ||
|- | |- | ||
|pidActorErrorPos||int||0||Diese Position ist einzunehmen, wenn pidActorErrorAction auf errorPos steht und der | |pidActorErrorPos||int||0||Diese Position ist einzunehmen, wenn pidActorErrorAction auf errorPos steht und der Istwert-Geber ausgefallen ist. | ||
|- | |||
|pidActorKeepAlive||uint||1800||Spätestens nach dieser Zeit erfolgt eine Zwangsausgabe an das Stellglied | |||
(wenn PID nicht disabled und nicht stopped) | |||
|- | |||
|pidActorLimitLower||float||0||untere Begrenzung für das Stellglied | |||
|- | |||
|pidActorLimitUpper||float||100||obere Begrenzung für das Stellglied | |||
|- | |||
|pidCalcInterval||uint||60||Berechnungszyklus in Sekunden, nach dem die PID-Berechnung durchgeführt wird. | |||
|- | |||
|pidDeltaTreshold||uint||0||wenn die Regeldifferenz(delta) kleiner al pidDeltaThreshold,, dann wird der Regler eingefroren (state= idle) | |||
|- | |||
|pidDesiredName||string||desired||Name für das Reading, das den Sollwert für den Regler aufnehmen soll | |||
|- | |||
|pidMeasuredName||string||measured||Name für das Reading, das den Istwert für den Regler aufnehmen soll | |||
|- | |||
|pidSensorTimeout||uint||3600||Zeitlimit in Sekunden, nach dessen Überschreitung der Ausfall des Istwert-Gebers anzunehmen ist | |||
|- | |||
|pidReverseAction||[0,1]||0||Umgekehrter Wirksinn des Reglers | |||
|- | |||
|pidUpdateInterval||uint||300||Zeitlimit in Sekunden, nach der ein Zwangsupdate der Readings erfolgen muss (Kurvendarstellung). | |||
|- | |||
|pidFactor_P||pos. float||25||Proportionalitätskonstante für P-Anteil | |||
|- | |||
|pidFactor_I||pos. float||0,25||Proportionalitätskonstante für I-Anteil | |||
|- | |||
|pidFactor_D||pos. float||0||Proportionalitätskonstante für D-Anteil | |||
|- | |||
|disable||[0,1]||0||Freigabe/Sperren des Reglers | |||
|} | |} | ||
Version vom 20. Oktober 2013, 15:20 Uhr
PID ist ein Modul, das nach dem P-I-D Algorithmus einen Regelkreis realisiert.
Dieser besteht grundsätzlich aus folgenden Komponenten
- Sollwert (desired value)
- Istwert (measured value)
- Stellgröße für Stellglied (actuation/actor)
Projekt-Status
Das neue Modul befindet sich in der Evaluations-Phase und ist noch nicht für produktiven Einsatz freigegeben. Die nachfolgenden Ausführungen dienen zu Spezifizierung der neuen geplanten Funktionalitäten.
Features
Parameter | Wertebereich | Default | Beschreibung |
---|---|---|---|
pidActorValueDecPlaces | [0..5] | 0 | Anzahl der Nachkommstellen für Ausgabewert zu Aktor |
pidActorInterval | uint | 180 | minimale Wartezeit in Sekunden, bis neue Ausgabe an das Stellglied erfolgen kann |
pidActorThreshold | uint | 1 | Notwendige minimale Änderung zum Altwert der Stellgliedausgabe, damit diese erneut erfolgt |
pidActorErrorAction | [freeze, errorPos] | freeze | legt das Verhalten der Ausgabe zum Stellglied fest, wenn der Istwert nicht innerhalb von <pidSensorTimeout> aktualisiert wurde (Sensor-Ausfall) freeze: Position des Stellgliedes beibehalten |
pidActorErrorPos | int | 0 | Diese Position ist einzunehmen, wenn pidActorErrorAction auf errorPos steht und der Istwert-Geber ausgefallen ist. |
pidActorKeepAlive | uint | 1800 | Spätestens nach dieser Zeit erfolgt eine Zwangsausgabe an das Stellglied
(wenn PID nicht disabled und nicht stopped) |
pidActorLimitLower | float | 0 | untere Begrenzung für das Stellglied |
pidActorLimitUpper | float | 100 | obere Begrenzung für das Stellglied |
pidCalcInterval | uint | 60 | Berechnungszyklus in Sekunden, nach dem die PID-Berechnung durchgeführt wird. |
pidDeltaTreshold | uint | 0 | wenn die Regeldifferenz(delta) kleiner al pidDeltaThreshold,, dann wird der Regler eingefroren (state= idle) |
pidDesiredName | string | desired | Name für das Reading, das den Sollwert für den Regler aufnehmen soll |
pidMeasuredName | string | measured | Name für das Reading, das den Istwert für den Regler aufnehmen soll |
pidSensorTimeout | uint | 3600 | Zeitlimit in Sekunden, nach dessen Überschreitung der Ausfall des Istwert-Gebers anzunehmen ist |
pidReverseAction | [0,1] | 0 | Umgekehrter Wirksinn des Reglers |
pidUpdateInterval | uint | 300 | Zeitlimit in Sekunden, nach der ein Zwangsupdate der Readings erfolgen muss (Kurvendarstellung). |
pidFactor_P | pos. float | 25 | Proportionalitätskonstante für P-Anteil |
pidFactor_I | pos. float | 0,25 | Proportionalitätskonstante für I-Anteil |
pidFactor_D | pos. float | 0 | Proportionalitätskonstante für D-Anteil |
disable | [0,1] | 0 | Freigabe/Sperren des Reglers |