Es gibt vermutlich in der TIA-Hilfe, ganz sicher aber im Step7-Systemhandbuch extra ein Kapitel "Programmflusssteuerung / EN-/ENO-Mechanismus",
wo ausführlich erklärt wird, wie der ENO-Ausgang in SCL und FUP/KOP beeinflusst wird. Das würde ich als erstes mal lesen.
Ja, die TIA-Hilfe, die dem Handbuch entsprechen dürfte- Im Systemhandbuch Systemhandbuch, 03/2014 auf Seite 199/200. Aber leider steht da als Überschrift 'EN und ENO in KOP, FUP und SCL'. ...
- Kennt jemand evtl. eine andere Lösung?
TIA-Hilfe F1 schrieb:Mit dem Freigabeausgang ENO können Sie den Fehlerstatus des Bausteins abfragen. Er führt Signal "1", sobald die Bausteinbearbeitung beginnt. Wenn Sie den Ausgang ENO im Programmcode nicht explizit auf "0" setzen, behält er Signal "1".
Sie können ihn jedoch explizit auf "0" setzen, um eine Fehleraussage an den aufgerufenen Baustein zurückzumelden. In KOP oder FUP wird der Ausgang ENO mit der Anweisung "RET: Zurück springen" gesetzt.
Beispiel:TIA-Hilfe: Beschreibung RET schrieb:Mit der Anweisung "Zurück springen" beenden Sie die Bearbeitung eines Bausteins. Hierdurch ergeben sich drei Arten, wie die Bearbeitung eines Bausteins beendet werden kann:
Wenn das Verknüpfungsergebnis (VKE) am Eingang der Anweisung "Zurück springen" "1" ist, wird die Programmbearbeitung im aktuell aufgerufenen Baustein beendet und im aufrufenden Baustein (z. B. im aufrufenden OB) nach der Aufruffunktion fortgesetzt. Der Status (ENO) der Aufruffunktion wird durch den Parameter der Anweisung bestimmt. Dieser kann die folgenden Werte annehmen:
- Ohne Aufruf der Anweisung "Zurück springen"
Nach der Ausführung des letzten Netzwerks wird der Baustein verlassen. Das ENO der Aufruffunktion wird auf den Signalzustand "1" gesetzt.- Aufruf der Anweisung "Zurück springen" mit Vorverknüpfung (siehe Beispiel)
Hat der linke Anschluss den Signalzustand "1", wird der Baustein verlassen. Das ENO der Aufruffunktion entspricht dem Operanden.- Aufruf der Anweisung "Zurück springen" ohne Vorverknüpfung
Der Baustein wird verlassen. Das ENO der Aufruffunktion entspricht dem Operanden.
Hinweis In einem Netzwerk darf nur eine springende Spule verwendet werden ("Zurück springen", "Springen bei VKE = 1", "Springen bei VKE = 0").
Um die Werte des Parameters einzustellen, doppelklicken Sie auf die Anweisung und wählen Sie in der Klappliste den entsprechenden Wert aus.
- RLO
- TRUE/FALSE
- <Operand>
Die folgende Tabelle zeigt den Status der Aufruffunktion, wenn die Anweisung "Zurück springen" in einem Netzwerk innerhalb des aufgerufenen Bausteins programmiert ist:
VKE Parameterwert ENO der Aufruffunktion 1 RLO 1 TRUE 1 FALSE 0 <Operand> <Operand> 0 RLO Die Programmbearbeitung wird im nächsten Netzwerk des aufgerufenen Bausteins fortgesetzt. TRUE FALSE <Operand>
Zum Thema: |
schön wäre es, die Quellen deiner Zitate für Mitleser irgendwie erkennbar zu machen,
TIA-Hilfe F1 schrieb:
Wie bist Du denn heute drauf? Missfällt Dir, das Deutschland im Halbfinale gegen Brasilien ran muss?Der TE will sein ENO gezielt auf "0" setzen, die RET-Anweisung setzt ihn jedoch auf "1" und beendet
überdies den aufgerufenen Baustein.
Weitere Kriterien des TE, die im aufgerufenen Baustein das ENO bei ihrer fehlerfreien Bearbeitung
auch beinflussen können, werden wegen des Rücksprungs dann gar nicht mehr bearbeitet.
Weil er den ENO bis dato nicht oder nur umständlich (durch fehlerhaften Zusatzcode) nach seinen Vorstellungen selbst beeinflussen konnte.warum soll das ENO umständlich bedient werden ?
Es kann doch der vorgegebene (nachvollziehbare) Mechanismus benutzt werden, wie er vorgegeben ist.
Keine Ahnung!Und noch die stellvertretende Frage für die Mitleser: was ist denn nun RLO ?
Hab' ein deutsches TIA mit deutscher Hilfe. Wenn das englische Mnemonik ist, dann beschwer' Dich bei Siemens.Vor allem wird die Mnemonik Deutsch-Englisch ("RLO") auch schon einigen zu schaffen machen.
Keine Ahnung!
Wer von uns beiden ist denn der Profi beim Programmieren?
Hat mich ehrlich gesagt auch nicht die Bohne interessiert.
Dank bikes Link kann ich Dir nun verkünden, das RLO für Result of Logic Operation steht.Und noch die stellvertretende Frage für die Mitleser: was ist denn nun RLO ?
Dank bikes Link kann ich Dir nun verkünden, das RLO für Result of Logic Operation steht.
Damit hat Bike wohl Recht (wenn mein rudimentäres Englisch mich nicht im Stich lässt), dass es die englische Bezeichnung für das VKE ist.
Ist RLO nicht das VKE in deutsch?
Bike vergisst doch gern mal so kleine Wörter, wie das "was" zwischen nicht und das und das "ist" am Ende des Satzes, so das sich das Geschriebene vom Gemeinten im Sinn verkehrt.danach ist die deutsche Bezeichnung RLO und die englische VKEIst RLO nicht das VKE in deutsch?
Da beziehst Du Dich auf die ENO-Kurzbeschreibung im S7-1200 Systemhandbuch- Im Systemhandbuch Systemhandbuch, 03/2014 auf Seite 199/200. Aber leider steht da als Überschrift 'EN und ENO in KOP, FUP und SCL'
Glücklicherweise kennt das Step7-Systemhandbuch (und die TIA Hilfe) nicht die unwissende Meinung von SoftMachine und schreibt auf Seite 2560 einfach folgendes:In KOP/FUP wird EN und ENO zwar benutzt, du kannst sie aber nicht ohne weiteres
beinflussen, wie es mit SAVE und BIE-Abfrage in AWL bei STEP7 möglich ist.
EN-/ENO-Mechanismus für Bausteinaufrufe in KOP/FUP schrieb:Mit dem Freigabeausgang ENO können Sie den Fehlerstatus des Bausteins abfragen. Er führt Signal "1", sobald die Bausteinbearbeitung beginnt. Wenn Sie den Ausgang ENO im Programmcode nicht explizit auf "0" setzen, behält er Signal "1".
Sie können ihn jedoch explizit auf "0" setzen, um eine Fehleraussage an den aufgerufenen Baustein zurückzumelden. In KOP oder FUP wird der Ausgang ENO mit der Anweisung "RET: Zurück springen" gesetzt.
Ein weiteres Beispiel für "keine Ahnung und ich mag' auch nicht nachlesen". :roll:Der TE will sein ENO gezielt auf "0" setzen, die RET-Anweisung setzt ihn jedoch auf "1" und beendet
überdies den aufgerufenen Baustein.
Weitere Kriterien des TE, die im aufgerufenen Baustein das ENO bei ihrer fehlerfreien Bearbeitung
auch beinflussen können, werden wegen des Rücksprungs dann gar nicht mehr bearbeitet.
// Baustein beenden und ENO auf 1 setzen:
| TRUE
|--------------------------(RET)
|
// Baustein beenden und ENO auf 0 setzen:
| FALSE
|--------------------------(RET)
|
// Baustein bedingt beenden und ENO auf 0 setzen:
| #Fehler FALSE
|----| |-------------------(RET)
|
// Baustein beenden und ENO auf den Wert der Variablen #Ergebnis setzen:
| #Ergebnis
|--------------------------(RET)
|
Anscheinend nur Dir...Vor allem wird die Mnemonik Deutsch-Englisch ("RLO") auch schon einigen zu schaffen machen.
Auch das ist unmittelbar bei der RET-Anweisung erklärt, man müsste allerdings lesen.Und noch die stellvertretende Frage für die Mitleser: was ist denn nun RLO ?
deutsches Step7-Systemhandbuch schrieb:Die folgende Tabelle zeigt die Parameter der Anweisung "Zurück springen":
Parameter Deklaration Datentyp Speicherbereich Beschreibung
Status der
aufrufenden
Funktion bei VKE = 1:RLO - - Wird auf den
Signalzustand des
VKE gesetzt.TRUE - - 1 FALSE - - 0
englisches Step7-Systemhandbuch schrieb:The following table shows the parameters of the "Return" instruction:
Parameter Declaration Data type Memory area Description
Status of the
calling function
with RLO = 1:RLO - - Is set to the signal
status of the RLO.TRUE - - 1 FALSE - - 0
An den OUT kannst du aber keine VKE-"Linie" dranzeichnen, und wenn Du hinter dem automatisch erzeugten ENO-Ausgang was dranhängst, da kann es passieren, daß der ENO mal unabsichtlich/unerwartet 0 wird.Ich habe es jetzt so gelöst das ich meinen Funktionsbaustein um einen Status-Ausgang erweitert habe, den ich dann
im Programmfluss mit einem Vergleicher abfrage.
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?