Hilfe bei Regelung mit FT_PIDWL und ACTUATOR_3P

Begonnen von Homesps, 05. April 2012, 14:01:26

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 2 Gäste betrachten dieses Thema.

Homesps

Hallo,

mir ist bei der Beobachtung meiner Heizungsregelung aufgefallen, dass der ACTUATOR_3P auf POS 0 steht und mein Kugelhahn mechanisch voll offen (also eigentlich auf POS 255). Simulation der Stellung und die Wirklichkeit weichen also komplett voneinander ab. (Das gab ganz schön warme Füsse...)

Ich konnte folgendes beobachten:
- Meine Soll-Temperatur ist niedriger als meine Ist-Temperatur => POS=0 am ACTUATOR_3P
- Meine Messwerte verändern sich, zB sinkt meine Ist-Temperatur (ist aber immer noch größer als die Soll-Temperatur) => IN am FT_PIDWL wird kleiner
- der Ausgang vom FT_PIDWL schnellt nach oben, dh z.B. auf 20
- sofort schaltet am ACTUATOR_3P OUT1
- der Ausgang vom FT_PIDWL geht sofort wieder auf 0
- OUT1 geht auch sofort wieder auf FALSE
- POS am ACTUATOR_3P hat sich nicht geändert und ist immer noch 0
- mein Kugelhahn hat aber ein kleines Stück geöffnet (OUT1 war ja kurz TRUE)
- das passiert oft genug und wir haben die am Anfangs beschrieben Situation

Momentan sehe ich zwei Ursachen.
1. Mein Eindruck ist, dass eine Vergrößerung des IN am ACTUATOR_3P für eine sehr kurze Zeit zwar den Ausgang OUT1 schaltet, aber die Rampe den Wert von POS nicht erhöht. Das werde ich nochmal in einer Simulation überprüfen.
Der ACTUATOR_3P schaltet nur für eine sehr kurze Zeit. Sehr kurze Impulse sind vermutlich auch für die Technik, Relais und Kugelhahn, nicht gesund. Dazu führen die kurzen Impulse auch zu Abweichungen zwischen träger Mechanik und simulierter Position.

2. Der FT_PIDWL gibt "spitze" Impulse aus. Nach etwas forschen und nachdenken habe ich mir folgendes überlegt.
Meine Temperatursensoren werden alle paar Sekunden abgefragt. Innerhalb eines Taktzyklus ändert sich dann der Wert. Diese Änderung innerhalb eines Taktzyklus hat somit eine große Steigung, auf die der D-Teil des PID reagiert. Im nächsten Taktzyklus ist die Änderung wieder 0, der D-Teil ebenso. Dies führt zu diesen "spitzen" Impulsen des FT_PIDWL.

Als Lösung habe ich mir überlegt, alle Temperatursensoren über einen FT_PT1 zu "analogisieren", d.h. die Messwertänderung über einen längeren Zeitraum zu strecken. Ist das eine gute Idee?
Sollte ich auch etwas am ACTUATOR_3P machen, damit die Impulse immer eine gewisse Mindeszeit haben?

Da ich keine Erfahrung mit sowas habe würde ich mich freuen, wenn mir jemand hier weiterhelfen könnte.

Gruß
Klaus

Homesps

Hier noch ein Codesys2-Projekt, welches das Problem mit dem ACTUATOR_3P zeigt.

Mit enable am SIM_SPIKE wird für duration (default 20ms) der Eingang vom ACTUATOR_3P auf 50 gezogen, dann wieder auf 0.
An den Ausgängen werden die Anzahl der steigenden Flanken gezählt.

Man kann nach Ablauf der Kalibrierung vom ACTUATOR_3P sehen, dass OUT1 alle 5s schaltet, OUT2 schaltet nicht und POS bleibt 0.

Meiner Meinung nach kann das nicht richtig sein.

Gruß
Klaus

[gelöscht durch Administrator]

rrbd

Hallo,

ich hatte gerade ein paar ähnliche
http://www.oscat.de/community/index.php/topic,1866.0.html
http://www.oscat.de/community/index.php/topic,1866.0.html
Probleme und weiß Lösungen bzw. Lösungsansätze, aus denen ich am Wochenende Lösungen machen werde. Ehe ich aber Seiten-lang etwas schreibe: ist dein Problem noch aktuell?

Grüße

Rainer