Step 7 S7 UND Baustein Bedingungen erfüllt, schaltet im FB nicht weiter

Zuviel Werbung?
-> Hier kostenlos registrieren
Ok, dass hatte ich überlesen


D.h. dass Problem war dass vorherige Netzwerk? Wurde dort kein VKE übergeben?

Es wurden U-Anweisungen ohne Sprünge benutzt.
Da L und T zu jederzeit passieren darf hat hier wahrscheinlich jemand was probiert und nicht komplett gelöscht gehabt.
Habe die U Zeilen entfernt -> alles funktionert!
 
Hi

Um das ganze besser zu verstehen habe Ich eine MOVE-Box in FUP programmiert und auf AWL umgestellt.
Warum wird der ENO auf 1 gesetzt obwohl vor der Und Anweisung ein CLR steht?
Oder habe Ich einen Denkfehler ?

Code:
      U     #Merker1                    //En
      SPBNB _001
      L     #Wort1                      //In
      T     #Wort2                      //Out
      SET   
      SAVE  
      CLR   
_001: U     BIE
      =     #Merker2                    //Eno

MfG Jan

PS: Wie kann Ich ein FUP Baustein einfügen, auf Step7 kopieren und einfügen geht ja nicht?
 
Zuletzt bearbeitet:
Hi Tia

Wenn das VKE=1 ist wird ja nicht gesprungen und auch nicht das BIE gerettet oder ???
So steht´s in der Step7 Hilfe "SPBNB Springe, wenn VKE = 0 und rette VKE ins BIE"

SAVE speichert ja das VKE im BIE-Bit.

Aber eine UND-Anweisung braucht ja ein VKE=1 das CLR setzt das VKE aber auf 0 ???

MfG Jan
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Quattro,

das Clr setzt aber das Erstabfrage Bit und somit kann eine neue Vernknüpfungskette Beginnen. Das Bie hat wie du oben richtig erkannt hast ein Vke 1 durch die set Save Anweisung.
Somit beginnt eine neue Verknüpfungskette mit neuen Vke am Ende.


Hier ist beitrag 9 sehr hilfreich Das Statuswort - ein nützliches Werkzeug?


Mfg Tia
 
Warum wird der ENO auf 1 gesetzt obwohl vor der Und Anweisung ein CLR steht?
Der ENO wird durch das "SET + SAVE" auf 1 gesetzt. Das CLR danach hat mit dem ENO nichts zu tun - es beeinflußt ENO (das BIE-Statusbit) nicht.

Oder meinst Du eigentlich, warum Dein #Merker2 am ENO eine 1 zugewiesen bekommt? Weil da ENO (BIE) 1 ist und weil die "U BIE"-Anweisung eine Erstabfrage ist. (Wenn das "U BIE" ausgeführt wird, dann wurde davor entweder der SPBNB-Sprung oder das CLR ausgeführt. Beide Anweisungen schreiben das /ER-Statusbit auf 0)
SET und CLR kann man gefahrlos verwenden - die setzen zwar das VKE, das ist aber nicht der Beginn einer neuen Verknüpfung. Erst das nächste U/O/X... ist die Erstabfrage.
Bei der ...+SAVE+CLR-Sequenz zur ENO-Steuerung von FUP/KOP-Boxen scheint mir das CLR "sicherheitshalber" immer vorhanden zu sein, auch wenn es nicht wirklich gebraucht wird - vermutlich aus dem selben Grund warum ich in #15 und #18 auf das "vorsichtshalber" Einfügen von SET/CLR hingewiesen habe: eventuell überflüssige aber garantierte VKE-Abgrenzung! (die S7-Compilerbauer machen es also genau wie ich ;) )

Speziell bei der MOVE-Box ist die komplette SET+SAVE+CLR-Sequenz eigentlich überflüssig - das SPBNB tut bereits alles was für ENO und die VKE-Abgrenzung nötig ist (oder kann OB121 das BIE beeinflussen, was verhindert werden soll??). Bei anderen Boxen (z.B. ADD_DI oder Bausteinaufrufe) ist die Steuerung des ENO-Ausgangs aufwendiger, weil da Laufzeitfehler und absichtliche BIE-Manipulationen "aus der Box" mit-verknüpft werden müssen.

Hauptaugenmerk der S7-Compiler-Designer war vermutlich nicht die Optimier-Effizienz des FUP/KOP/AWL-Compilers sondern Kompatibilität verschiedener CPU, Umschaltbarkeit der FUP/KOP/AWL-Ansichten, sichere Funktion der MC7-Macro-Bausteine unabhängig von der äußeren Beschaltung und "Doppelt hält besser".


PS: Wie kann Ich ein FUP Baustein einfügen, auf Step7 kopieren und einfügen geht ja nicht?
Meinst Du: ein FUP-Netzwerk hier in einen Forumsbeitrag einfügen? Das geht nur als Bild (Screenshot) oder man kann es "malen":
Code:
          +--------+
          |  MOVE  |
#Merker1--|EN      |
          |     OUT|-#Wort2    #Merker2
          |        |           +-----+
  #Wort1--|IN   ENO|-----------|  =  |
          +--------+           +-----+

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Set und Clr ... setzen aber nicht das Erstabfragebit.
Laut Harald löschen sie das /ER sogar, was das wirklich Entscheidende ist:
Für die VKE-Abgrenzung kann man auch noch andere Anweisungen verwenden - es ist lediglich wichtig, daß die verwendete Anweisung das /ER-Statusbit auf 0 schreibt (die VKE-Abgrenzung)
 
Wenn das VKE=1 ist wird ja nicht gesprungen und auch nicht das BIE gerettet oder ???
So steht´s in der Step7 Hilfe "SPBNB Springe, wenn VKE = 0 und rette VKE ins BIE"
Das VKE wird immer ins BIE gerettet. So lautet der letzte Satz in der Step7-"Hilfe zu AWL" bei SPBNB:
SPBNB schrieb:
Unabhängig vom VKE wird bei der Operation SPBNB <Sprungmarke> das VKE ins BIE kopiert.

Harald
 
Können wir uns einigen: Die Aussagen "setzt das Erstabfragebit" und "schreibt das /ER-Statusbit auf 0" meinen das Selbe - es ist halt negative Logik weil das /ER-Statusbit "0-Aktiv" ist (deswegen ja auch der / vor dem ER) :cool:

Harald
 
Moin Moin

Jetzt hab Ich es verstanden, die Sache mit der Erstabfrage war mir überhaupt nicht klar. :ROFLMAO:
Danke für eure Hilfe.

Mfg Jan
 
Zuletzt bearbeitet:
Meinst Du: ein FUP-Netzwerk hier in einen Forumsbeitrag einfügen? Das geht nur als Bild (Screenshot) oder man kann es "malen":

Ja genau das meinte Ich Harald. das ist aber umständlich.

Wie kann man ein "Zitat von einfügen" ?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin Jan!
... die Sache mit der Erstabfrage war mir überhaupt nicht klar.
Das ist aber traurig, denn das ist die Grundlage der BitVerknüpfungen in AWL.
Spätestens, wenn man in AWL mehrere BitVerknüpfungen hintereinander sieht oder selbst programmiert, dann fragt man sich doch, ob die CPU Gedanken lesen kann oder warum sie in der Lage ist, das Gewollte richtig auszuführen ...
Gruss, Heinileini
 
das ist aber umständlich.

Wie kann man ein "Zitat von einfügen" ?
unten rechts unter jedem Beitrag ist ein Button "Zitieren"

"umständlich" - denkst Du, die Forumssoftware sollte jedes weltweit existierende SPS-Programmiersystem kennen und wissen in welchem Format grafische Netzwerke in der Windows-Zwischenablage liegen, nur damit jedermann Programmteile posten kann mit minimalem Gehirneinsatz? ;) vermutlich wird das aus lizenzrechtlichen Gründen sowieso nicht gehen

Harald
 
unten rechts unter jedem Beitrag ist ein Button "Zitieren"

"umständlich" - denkst Du, die Forumssoftware sollte jedes weltweit existierende SPS-Programmiersystem kennen und wissen in welchem Format grafische Netzwerke in der Windows-Zwischenablage liegen, nur damit jedermann Programmteile posten kann mit minimalem Gehirneinsatz? ;) vermutlich wird das aus lizenzrechtlichen Gründen sowieso nicht gehen

Harald

Oh *ROFL*:TOOL: Danke Harald.

Mfg Jan
 
Zurück
Oben