Autor Thema: BLIND_CONTROL ohne Tolerranz  (Gelesen 6170 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

AE

  • Gast
BLIND_CONTROL ohne Tolerranz
« am: 10. März 2010, 16:50:01 »
Hallo,

ich habe die BLIND Bausteine in meinem Gebäude zum Testen übernommen.
Dabei ist mir eine kleine Unstimmigkeit in BLIND_CONTROL  aufgefallen.
Folgende Punkte:

1.Position vor Regelung abfragen:
Die Position wir nach der Regelung abgefragt daher hat man immer einen SPS Zyklus Versatz, was in meinem Beispiel 5/256 des verfahr weg ausmacht.
Bei entsprechend langer Zykluszeit wird das immer mehr.
(bei einer Zykluszeit von max 23ms und eine T_ANGLE von 1200ms  ergibt sich 1200/256 = 4,7 ms Pro Pos Verstellung das heist     23/4,7=5   sens = 5)

Lösung:
Position Berechnung von BLIND_ACTUATOR in einer Aktion dadurch ist es einfach möglich vor der Regelung die Position schon mal zu berechnen

2.Tolerranz für Position ANG
Unter (* regulate angle *)
Wird delta := 0 gesetzt wo bei der Rollo aber 5/256pro Zyklus (in meinem Fall) verfährt, folge die Position wird überfahren
Lösung:
In den beiden ElSIF von (* regulate angle *)
delta := sense/2;

Die geänderten Bausteine kann ich zum testen euch zukommen lassen.

Hier noch mal der geänderte Code:
(* Check Position*)
act.aPosition();



IF UP AND DN THEN
(* automatic modus detected *)
(* first find correct position *)
IF BYTE_TO_INT(act.pos) < BYTE_TO_INT(pi) - delta THEN
act.UP := TRUE;
act.DN := FALSE;
delta := 0;
STATUS := 121;
ELSIF BYTE_TO_INT(act.pos) > BYTE_TO_INT(pi) + delta THEN
act.UP := FALSE;
act.DN := TRUE;
delta := 0;
STATUS := 122;
(* regulate angle *)
ELSIF BYTE_TO_INT(act.ang) < BYTE_TO_INT(ai) - delta AND T_angle > T#100ms THEN
act.UP := TRUE;
act.DN := FALSE;
delta := sens/2;
STATUS := 123;
ELSIF BYTE_TO_INT(act.ang) > BYTE_TO_INT(ai) + delta AND T_angle > T#100ms THEN
act.UP := FALSE;
act.DN := TRUE;
delta := sens/2;
STATUS := 124;


Gruß Andreas

Offline martin.k

  • Entwickler
  • *****
  • Beiträge: 179
    • Profil anzeigen
Re:BLIND_CONTROL ohne Tolerranz
« Antwort #1 am: 11. März 2010, 09:29:08 »
Hi AE,

Du bekommst von mir ein großes Lob. Durch Leute wie Dich kommt das Projekt Oscat vorwärts.

Grüße
Martin

AE

  • Gast
Re:BLIND_CONTROL ohne Tolerranz
« Antwort #2 am: 11. März 2010, 11:24:15 »
Hi Martin,

Danke das freut mich.
hier hab ich die geänderten Bausteine als Export im Anhang.


[gelöscht durch Administrator]