Abarbeitungsreihenfolge in TIA

Zuviel Werbung?
-> Hier kostenlos registrieren
@Heinileini:
- Löschen des Puffers sollte überflüssig sein, kann Dir aber behilflich sein, ein Fehlverhalten zu beobachten. --> sag ich ja
- Die ganzen MOVEs in den Puffer würde ich auf einen einzigen Zyklus begrenzen, in dem dann auch an den Server gemeldet wird, dass er lesebereit ist. --> genau so hatte ich es ja (siehe meinen vorherigen Beitrag)

@JesperMP:
Wäre schön wenn den Thementitel "Easylog" inkludiert hätte. Dann hätte Rainer vielleicht seinen Senf mitteilen können. --> ich weiß nicht, wer Rainer ist, hatte aber heute früh schon Probleme damit, das Thema treffend zu benennen :cry:


... Jedenfalls habe ich die "Kunstpause" jetzt eingebaut und werde das beobachten. Ist zwar unschön aber möglicherweise zielführend: bis jetzt gab's noch keine fehlerhaften Dateien wieder :)

Danke für euer (Mit)Denken
 
jetzt hab ich mal noch ne allgemeine Handlingsfrage (aber net auslachen!)
Wie macht ihr das eigentlich, wenn ihr einzelne Textabschnitte zitiert? Ich kann immer nur den ganzen Beitrag zitieren (mit der Schaltfläche unten rechts am Kasten) ... ??? :(
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Rainer Hönle ist von DeltaLogic und ist sehr hilfreich wenn es um Deltalogic geht.

Wenn du etwas zitierst, dann ensteht es ein Textblock der mit reckteckige Klammer und QUOTE umgerandet ist.
Innerhalb von die QUOTEs kannst du editieren (und verfälschen) wie du willst.
 
ich weiß nicht, wer Rainer ist
Damit ist Rainer Hönle gemeint, der Chef von Delta Logic, dem Hersteller der Software ACCON-EasyLog. Rainer liest hier oft mit, und könnte Hinweise zu Details von ACCON-EasyLog geben.

... Jedenfalls habe ich die "Kunstpause" jetzt eingebaut und werde das beobachten. Ist zwar unschön aber möglicherweise zielführend: bis jetzt gab's noch keine fehlerhaften Dateien wieder :)
Das ist vermutlich auch nur unsichere Stümperei. Macht ein funktionierendes Handshake mit dem Triggerbit, siehe Beitrag #20

Harald
 
Damit ist Rainer Hönle gemeint, der Chef von Delta Logic, dem Hersteller der Software ACCON-EasyLog.

na DAS wäre ja tatsächlich der richtige Ansprechpartner für mein Problem gewesen.
Wie schon im Verlauf erwähnt, hatte ich beim Service von Delta Logic angerufen und dort die Aussage erhalten, dass die gelesenen Daten tatsächlich aus dem jeweils gleichen SPS-Zyklus stammen (überzeugend klang der aber nicht)

Das ist vermutlich auch nur unsichere Stümperei. Macht ein funktionierendes Handshake mit dem Triggerbit, siehe Beitrag #20

mit Sicherheit ist das unsichere Stümperei. Aber wie der EasyLog liest hab ich weder Ahnung noch Einfluss. Ich kann mich nur auf die Beschreibung der Software verlassen (... und bin vermutlich damit verlassen)

Roland
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wie macht ihr das eigentlich, wenn ihr einzelne Textabschnitte zitiert? Ich kann immer nur den ganzen Beitrag zitieren (mit der Schaltfläche unten rechts am Kasten) ... ??? :(
(Komplettes) Zitat kopieren und erneut einfügen. Dann beim jeweiligen Zitat das rauslöschen, was nicht benötigt wird.
Links oben kann man auch zum Standard-Editor umschalten und dann nur die Zitat-(Ende)-Tags kopieren und an entsprechender Stelle einfügen.
 
Wenn die Server-Anwendung sich an den richtige Leseablauf mit dem Handshake hält, dann ist es relativ egal wie genau EasyLog die Variablen liest. Die Aufgabe des SPS-Programms ist lediglich, die Daten während gesetztem Triggerbit nicht zu verändern. Und die ServerAnwendung darf keinen Daten von Zeitpunkten vor dem gesetzten Triggerbit verarbeiten.

Harald
 
Wenn die Server-Anwendung sich an den richtige Leseablauf mit dem Handshake hält, dann ist es relativ egal wie genau EasyLog die Variablen liest. Die Aufgabe des SPS-Programms ist lediglich, die Daten während gesetztem Triggerbit nicht zu verändern. Und die ServerAnwendung darf keinen Daten von Zeitpunkten vor dem gesetzten Triggerbit verarbeiten.

Harald

ja, das ist schon klar.
nur das zweite kann weder sicher nachvollziehen geschweige denn beeinflussen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Beim Hersteller der Serveranwendung habe ich angerufen: der behauptet, die Daten werden beim Trigger zyklusgenau gelesen.
Was meint der mit "zyklusgenau"? Daß alle Variablen und das Triggerbit in einer einzigen Abfrage gelesen werden?

Harald
 
ja.
das ist allerdings meine Fofmulierung; ich hatte das so gefragt. Aber wie gesagt: überzeugend klang die Antwort nicht (eher so "man muss auch manchmal ja sagen, damit man seine Ruhe hat)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
... also aus dem gleichen SPS-Zyklus stammen


Was für eine SPS ist das denn jetzt? Oder hab ichs überlesen? Ich vermute S7-1500 oder S7-1200 wegen TIA? Da werden die VAriablen immer parallel zum SPS-Zyklus gelesen.

Bei S7-300 war das noch anders...

Gruß.
 
Also wenn die Serveranwender behaupten, daß die Variablenwerte inkl. Triggerbit alle aus dem selben SPS-Zyklus stammen, dann müssen sie die Werte in nur einer Kommunikationsanfrage lesen, und dann auch zusammen "konsistent" verarbeiten. Als Block oder Multi-Variablen-Read. (Oder kann man bei der S7-1200 das Bearbeiten aller Kommunikationsanfragen im selben SPS-Zyklus besonders mitteilen/erzwingen? Und wird das auch tatsächlich gemacht?)

In der SPS habe ich das jetzt so gelöst, dass ich in einem Bereich von mehreren Netzwerken die benötigten Daten in den vom Server zu lesenden Bereich kopiere. Dieser Bereich wird bedingt übersprungen, wenn die Bedingung zum lesen nicht erfüllt ist. Im letzten Netzwerk des sonst übersprungenen Bereichs wird das Triggerbit gesetzt und die Einsprungbedingung rückgesetzt. (...)
Somit wird der Bereich, in dem die Daten von der SPS in den zu lesenden Bereich kopiert werden für einen Zyklus bearbeitet.
Hast Du Dich nur unklar/unvollständig ausgedrückt oder wird das Kopieren der Werte in den Kommunikationsbereich dauernd ausgeführt solange der Kommunikationspartner lesen soll? Wann genau wird kopiert, wann genau wird übersprungen?

Oder kopierst Du tatsächlich nur einmalig (nur einen Zyklus lang) die Werte in den Kommunikationsbereich und setzt anschließend das Triggerbit? Und solange das Triggerbit TRUE ist, schreibst Du nicht in den Kommunikationsbereich? Weder sich ändernde Daten noch Löschwerte?
Dann kann es nicht zu falschen Daten beim Kommunikationspartner kommen, wenn die Serveranwendung so liest wie behauptet: das Triggerbit = 1 stammt aus dem selben SPS-Zyklus bzw. der selben Kommunikationsanfrage wie die Variablenwerte. (Es wäre sogar egal, ob die Variablen am Stück oder einzeln gelesen werden, nachdem das Triggerbit als 1 gelesen wurde).
Irgendjemand macht was anders als behauptet.
Kannst Du uns auszugsweise Deinen Code mit der Logik zum Überspringen des Kopier-Codes und Setzen des Triggerbits und Löschen des Bereichs zeigen? 1000 Worte können nicht so klar und korrekt ausdrücken was der Code tut, als wenn man den Code selber zeigt.

In den meisten Fällen funktioniert das wie erwartet, ab und zu sind aber Felder in der erzeugten csv-Datei leer.
Was meinst Du mit "leer"? Wirklich ganz leer oder sind die Werte = 0?

Nochmal nachfragen: wie schnell und oft müssen die Werte vom Server gelesen werden?

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
meinst du jetzt von easylog? oder wer liest parallel zum Zyklus?
Das ist so gemeint: Bei der S7-1200 wird S7-Kommunikation nicht im Zykluskontrollpunkt bearbeitet, sondern "parallel" während das SPS-Programm ausgeführt wird und unterbricht dafür irgendwann das SPS-Programm. Das kann auch mitten in Deinem Kopieren der Werte in den Kommunikationsbereich passieren - dann ist die Aussage "zyklusgenau" für die Katz, wenn ein Teil der Werte von vor dem kompletten Füllen des Kommunikationsbereiches stammt.

Harald
 
Das ist so gemeint: Bei der S7-1200 wird S7-Kommunikation nicht im Zykluskontrollpunkt bearbeitet, sondern "parallel" während das SPS-Programm ausgeführt wird und unterbricht dafür irgendwann das SPS-Programm. Das kann auch mitten in Deinem Kopieren der Werte in den Kommunikationsbereich passieren - dann ist die Aussage "zyklusgenau" für die Katz, wenn ein Teil der Werte von vor dem kompletten Füllen des Kommunikationsbereiches stammt.

Harald
kommt auch noch drauf an, wieviele Daten das sind und wie viele Kommunikationsaufträge das sind. U.U. wird das SPS Programm mehrfach unterbrochen und dass sogar über mehrere SPS Zyklen, bis alles einmal gelesen ist...
 
Zurück
Oben