Sonstiges PLCopen enable-Verhalten und LGF

striezel

Level-2
Beiträge
129
Reaktionspunkte
36
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

arbeite grade mit der LGF unter anderem mit FIFO (V4.0.0) und bin in dem Zusammenhang auf folgendes gestoßen:

https://sieportal.siemens.com/en-ww/support/forum/posts/lgf-fifo-in-tiav20-v5-2/338180

Wieso muss ich erst "enable" setzen, es wieder wegnehmen und dann neu setzen?

Kann da eventuell jemand die Hintergründe erklären. Bin jetzt mit PLCopen nicht so vertraut.

Oder ist das jetzt nur was ganz spezielles bei dem LGF_FIFO V4.0.0?

VIelen Dank!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hm hört sich falsch an....
Verhält der sich wirklich so?
Wäre mir nicht bekannt & wäre für ein Enable-Template auch ein fehlerhaftes Verhalten.
Klingt für mich eher nach einem Implementierungs-Problem....

Außerdem:
Sind wir bei der LGF Bibliothek nicht schon bei V5.2 oder sowas?
V4 war doch TIA V18/19...
 
Hallo,
ja der verhält sich wirklich so. Ich habe mich ewig gewundert warum der Baustein nichts macht 🫣

Habe ihm dann einmal das enable weggenommen und neu gegeben, dann läuft er. Vorher bleibt er im Status 16#0000.

Mit "enable" liefert er auch permanent "Busy" und "valid".

Konkret ist es LGF V5.2.1 - FIFO Version V4.0.0
 
Habe ihm dann einmal das enable weggenommen und neu gegeben, dann läuft er.
Das klingt falsch. Vielleicht braucht der eine steigende Flanke an enable und muss deshalb zuerst einmal FALSE sehen? Oder muss vor dem ersten enable=TRUE noch was anderes gemacht werden? Oder bastelt da jemand unsachgemäß mit TEMP-Variablen oder mit "ungünstigen" Initialwerten in der Instanz?
Steht zu dem Verhalten nichts in der Dokumentation des Bausteins?
Frag doch mal den Siemens Support.
 
War die Variable evtl. bereits auf TRUE?
Wäre auch meine Vermutung...
@striezel , kannst du mal nach den Startwerten im DB schauen?
Vllt. hat da jemand ne Momentaufnahme in die Startwerte kopiert. War der FIFO während der Momentaufnahme Enabled würde es das beschriebene Verhalten erklären, da die positive Flanke zum Bausteinstart fehlt.
Ist das Gleiche Thema wie bei den TON Bausteinen...
 
Servus,

ich kann mir jetzt nicht vorstellen, dass das gewolltes Verhalten ist. Falls es doch Gewünscht ist, sind Variablennamen und Kommentare meines Erachtens etwas irreführend, wenn nicht sogar falsch.

Enable wird nicht direkt auf eine positive Flanke abgefragt, sondern ob Enable true ist und der Diagnosestatus auf "wurde disabled" (#STATUS_NO_CURRENT_JOBS -> 16#7000) steht.
Der "Disable-Vorgang" wird aber tatsächlich über eine fallende Flanke abgefragt.
1765528188775.png

Beim "Disablen" werden diverse interne Variablen wieder auf ihren Defaultwert zurückgeschrieben...... mit Ausnahme des Diagnosestatus'.
Dieser wird nicht auf Defaultwert 16#0 gesetzt sondern #STATUS_NO_CURRENT_JOBS -> 16#7000.
1765528466769.png

1765528500611.png

1765528529069.png

Und jetzt würds auch wieder mit dem Enable richtig funktionieren...


Ich würde einfach den Defaultwert von dem Diagnosestatus auf 16#7000 setzen, dann sollte es beim ersten Versuch funktionieren.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
danke für die Antworten bisher. Das Projekt muss leider Grade pausieren, es brennt wo anders.

Wäre auch meine Vermutung...
@striezel , kannst du mal nach den Startwerten im DB schauen?
Vllt. hat da jemand ne Momentaufnahme in die Startwerte kopiert. War der FIFO während der Momentaufnahme Enabled würde es das beschriebene Verhalten erklären, da die positive Flanke zum Bausteinstart fehlt.
Ist das Gleiche Thema wie bei den TON Bausteinen...
Momentaufnahmen kann ich ausschließen, das war ein neu erstelltes Projekt. Der Baustein wurde bei laufender CPU erstellt und eingefügt.

@R4m80
Danke für deine Mühe. Leider kam hier ein Feuerwehrprojekt dazwischen, ich werde das im neuen Jahr anpassen und ausprobieren.

Ich habe jetzt als schnellen Workaround letzte Woche noch ein Togglebit auf den "firstrun" gesetzt, also:
1. Zyklus true
2. Zyklus false
Ab dem 3. True

Dann bin ich das Problem erstmal los und, dass in den ersten drei SPS Zyklen ein kompletter Datensatz fürs Leitsystem erstellt wird, halte ich erstmal für sehr gering.

Bibliotheksbausteine zu bearbeiten widerspricht irgendwie meiner Intention Bibliotheken zu benutzen.

Viele Grüße
 
Zurück
Oben