Denkfehler oder Fehler in dre Simulation

alb

Level-1
Beiträge
68
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich bin ein ziemlicher neuling und übe momentan mit der Demoverson von TRysim. Jetzt passiert etwas das ich nicht verstehe.
Die Situation:
Ich experimentiere mit FBs, DBs, parameterübergabe herrum.
im 0B1 wird dem Merker 0.1 eine 0 zugewiesen.

UN M 0.1
R M 0.1

im nächsten netzwerk des OB1 wird der FB1 mit dem DB1 instanziert aufgerufen. Der Merker m 0.1 wird als eingang gesetzt, Die Rückgabevariable led wird mit dem Ausgang A 0.5 vedrbunden. Daran hängt eine led.

U M 0.1
= L 20.0
BLD 103
CALL FB 1,DB 1
test_in := L 20.0
led := A 0.5
NOP 0

Der FB1 tut nichts weiter als test_in an led durchreichen.

U #test_in
= #led
Erwartetes verhalten:
Über m 0.1 läßt sich einstellen ob die led leuchtet oder nciht.

beobachtetes verhalten:
m 0.1 ist 0 , Baustein übertragen, Simulation starten, led dunkel -> klappt
r m 0.1 durch s m 0.1 ersetzen, baustein übertragen, simulation starten, led leuchtet -> klappt
s wieder durch r ersetzten, baustein übertragen, simu starten, led leuchtet weiter -> klappt nicht. erst nachdem ich die sps resetet habe, wird led wieder dunkel. warum ist das so? Simulationsfehler oder Denkfahler bei mir?

noch eine Frage:
Der Aufruf von FB1 hat so eine komische form, weil er in fup erzeugt und in awl rückübersetzt wurde. ein reiner awl aufruf könnte z.B. so aussehen:

CALL FB 1,DB 1
test_in := M 0.1
led := A 0.5

Währe dieser Aufruf richtig und fachgerecht? KAnn man sich die zusätzlichen befehle, welche die darstellbarkeit in fup gewährleisten irgendwie plausiebel erklären?

gruß und dank im vorraus
 
Der Fehler liegt hier

Du willst M0.1 rücksetzen, nur wenns Null ist, wenn M0.1 = TRUE, dann ändert sich nichts. Um feste Potentiale zu erstellen, wäre folgendes angebracht:

Also es hat funktioniert wie Dieter geschrieben hat.
Alternativ:

VKE = 0
U M0.1
UN M0.1
= M0.1

VKE = 1
O M 0.1
ON M0.1
= M 0.1
Und das zyklisch im OB 1 aufrufen und es funktioniert auch mit dem VKE :rolleyes:

bike
 
Zurück
Oben