easy-forum
Deutsch - Software => easySoft => Thema gestartet von: Benni am August 13, 2007, 10:35:23 Vormittag
-
Im Anhang habe ich ein kleines Beispiel eingefügt, in dem nichts so funktioniert, wie es eigentlich sollte:
Ausgangslage:
T01 als Einschaltverzögerung, der Sollwert wird von einem DB gelesen.
M01 (der den T01 startest) wird aktiviert.
Start der Simulation
1. Fehler
T01 ist geschaltet, obwohl die Zeit nicht abgelaufen ist.
2. Fehler
M01 abwählen
Simulation Starten
M01 anwählen
Den Zeitsollwert über das Display verändern.
--> Der neue Sollwert wird zwar angezeigt, aber nicht übernommen
3. Fehler
M01 abwählen
Simulation Starten
M01 anwählen
Warten, bis der Timer geschaltet hat, dann die Sollzeit nach oben Stellen
--> Der Timer läuft nicht mehr an (Wahrscheinlich der gleiche Fehler wie oben)
Das Wichtigste noch zum Schluss:
Die Fehler treten leider nicht nur in der Simulation auf, sondern auch in Hardware
-
Hallo Benni,
zu 1. wenn du T01 in ersten Zyklus bereits startest, mit Merker 1 dann ist der Wert im DB noch Null und somit wird der Ausgang sofort geschaltet. Merker 96 wird erst im 2. Zyklus gesetzt.
zu 2. der Wert am Zeiteingang wird mit positiver Flanke am Triggereingang übernommen, dieser war zu diesem Zertpunkt eben 10 Sek.
zu 3. wie du schon geschrieben hast gleich wie bei 2,
Gruß
Jürgen
-
zu 1:
Das Thema habe ich leider schon mehrfach angesprochen (http://easy-forum.net/index.php?topic=1785.msg7482#msg7482 oder http://easy-forum.net/index.php?topic=1425.0) ohne das bisher eine Lösung, die mehr als ein Programmupdate überdauert hätte angeboten wurde.
zu2/3:
Wo soll das denn stehen? Auszug aus der Hilfe im Anhang
-
Hallo Benni
zu 1. Dieser Fehler kann nur in der Simulation auftreten, in der Easy kann man keinen Merker "im Halt" = 1 setzen und dann starten ( Ausnahme: Remanente Merker), ansonsten ist der Ablauf wie von Jürgen beschrieben.
2/3. Sobalt der Zeitablauf gestartet ist kann der Timer keinen neuen Wert übernehmen, erst mit dem Wechsel am EN = 1-> 0 ->1 wird der Wert übernommen.
Gruss Kurt
-
zu 1) ersetze M01 durch I01, lade das Programm setze I01 auf HIGH und starte das Programm. Das Ergebnis ist das gleiche.
-
Hallo benni,
im Anhang eine Lösung wie ich dieses Problem umgehen würde.
-
Hat jemand eine Idee, wie man das Problem mit den sich Ändernden Sollwerten umgehen kann?
Auf dem MFD könnte man das schon so machen, dass, wenn eine Seite umgeschaltet wird, der Timer auch neu gestartet wird. Aber andererseits würden dann viele Zeitabläufe gestört werden.
Bei einer Inbetriebnahme gestern habe ich dem Betreiber gesagt, dass er die Anlage nach einer Parameteränderung neu starten muss (Hauptschalter Aus und wieder Ein).
Aber das ist ja keine dauerhafte oder Schöne Lösung.
-
Hallo Benni,
(soviel Zeit muss sein), im Anhang ein Timerprogramm, wie es schon des öfteren im Forum behandelt wurde, mit Zähler. Ich habe als Blinker 0,1 sek. gewählt, was man aber auch höher stellen kann, wegen der ev. längeren Zykluszeit (ich weis ja nicht wie lange dein kpl. Programm ist). Vorteil ist das bei Änderung der Zeit nach oben die restliche Zeit nachgeholt wird. In der Simulation stimmen die Zeiten nicht so ganz, aber in der Steuerung exakt, max. Toleranz +0,1sek + Zykluszeit. Ich hoffe dies hilft dir weiter.
Gruß
Jürgen :) ;) ;D
-
Servus Juergen,
das ist zwar eine Lösung, mir aber zu aufwendig und vor allem zu fehlerträchtig. Denk nur mal, was passiert, wenn ein anderer in 5 Jahren das Programm ändern will.
Ich glaube ich werde es doch so machen, dass ich alle Zähler bei einem Maskenwechsel zurücksetzen lasse, das ist einfach und sicher programmiert.
Gruß
Benjamin
-
Hallo Benni,
ich kenn nicht deine Anwendung und somit auch nicht den Aufwand. Ob deine Anlage in 5 Jahren noch existiert bzw. bei einer Änderung die Easy noch ausreicht? Wenn jemand ohne Vorlage der Kommentare das Programm morgen ändern soll hat es es schon schwer, da er erst einmal die Zusammenhänge sich erdenken muss. Also von daher gesehen finde ich musst du am besten wissen was tun.
Gruß
Jürgen ;)
-
hallo Ihr Zwei
im Anhang habe ich ein Testprogramm das o.g. Effekt beim Programmstart behebt.
Ansonsten bleibt es bei meinen Aussagen zu den Punkten 2 und 3.
MfG Kurt