Sekundenereignis in WinCCflexible

extruder_luder

Level-1
Beiträge
64
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich habe ein MP370 von Siemens. Nun möchte ich ein Skript jede Sekunde einmal aufrufen. Der Aufgabenplaner gibt als kleinstes Intervall jedoch nur eine Minute her. Kennt jemand einen Trick um ein 1 Sekundenintervall zu erzeugen. Es muss auch ohne angeschlossene SPS funktionieren, d.h. den Taktmerker der S7 kann ich nicht benutzen.

Vielen Dank schon mal im voraus.
 
Hallo,
da kannst du nur einen Taktmerker nehmen - den würde ich allerdings für Script-Funktionen NIEMALS auf 1 Sek setzen. Du würdest hier m.E. sehr schnell einen Überlauf des Script-Handlers erhalten ...

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Luder,

theoretisch könnte es zumindest innerhalb eines Bildes gehen.


  • interne Integervariable anlegen
  • diese unter Bildeigenschaften - Ereignis "Aufgebaut" mit "SimuliereVariable" verändern (Basistakt 200ms)
  • bei Änderung der Variable Script ausführen

Gruß, Onkel
 
@Onkel:
meines Wissens werden die Ereignisse wie z.B. "Wert-Änderung" bei internen Variablen nicht ausgewertet / überprüft ...

Gruß
LL
 
Hallo Onkel,

es stimmt leider das die Änderung der Variablen nicht ausgewertet wird solange sie per "simuliere" verändert wird. D.h das Ereignis der Wertänderung wird nicht angestossen. Ändere ich dagegen die Variable per Eingabe, so wird das Ereignis getriggert.
Der Ansatz war/ist nicht schlecht und vielen Dank dafür. Leider funktioniert es nicht ganz.

Gruss

Extruder Luder
 
Zuviel Werbung?
-> Hier kostenlos registrieren
wie beschrieben eine Variable (Bool) aus der SPS nehmen, die alle Xsec auf 1 setzen diese Variable im HMI auf ständig lesen setzen, dein Script bei wertänderung ausführen und im script so verarbeiten, dass

1. es nur ausgeführt wird wenn die Variable 1 ist ansonsten macht dein script einen sprung ans ende. Der grund ist sonst passiert das auch bei 1->0
2. Am ende des scripts die Variable auf 0 gesetzt wird
aber ob du mit 1sec rankommst bezweifle ich.
 
Hallo Waelder,

dass ich das Ereignis von der SPS aus triggern kann, weiss ich. Deshalb habe ich ja in meiner Fragestellung beschrieben, das es auch OHNE SPS gehen muss. Wenn ich es von der SPS aus haette machen koennen, haette ich erst gar nicht gefragt. Das Skript ist sehr klein, deshalb denke ich das OP wuerde das schaffen. Vielleicht bastel ich mir dafür ein ActiveX und binde es ein. Danke trotzdem.

Gruss

Oliver
 
Hallo Larry,

@Onkel:
meines Wissens werden die Ereignisse wie z.B. "Wert-Änderung" bei internen Variablen nicht ausgewertet / überprüft ...

Gruß
LL

Aha! Dann also keine interne Variable verwenden, sondern eine externe! Hierfür eine Verbindung anlegen und den Onlinestatus auf "off" setzen. Siemens macht es in den Demo-Projekten so.

Gruß, Onkel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Onkel:
interessanter Ansatz - den kannte ich noch nicht. das kann ich sehr wahrscheinlich auch noch mal gut gebrauchen

Allerdings setzt das dann immer noch voraus, dass es diese Variable dann in der SPS gibt und (sehr wahrscheinlich auch) das es die Verbindung zur SPS gibt (Frage vom TE).

Gruß
LL
 
meines Wissens werden die Ereignisse wie z.B. "Wert-Änderung" bei internen Variablen nicht ausgewertet / überprüft ...

Siehe dazu auch die folgende Siemens-FAQ:

Tipps und Tricks für das Erstellen von Skripten

Warum wird ein Skript, das am Ereignis "Wertänderung" einer internen Variable projektiert ist, nicht ausgeführt?

Dies ist bei internen Variablen nicht möglich, da die Software dies nicht zulässt (Loop breaker). Der "Loop breaker" ist ein Sicherheitsmechanismus, um mögliche Schleifen in der Projektierung zu verhindern.

Ausnahme:
Bei Wertänderung einer Variable über ein E/A-Feld wird das Skript ausgeführt.

Abhilfe:
Verwenden Sie eine externe Variable, die an eine Steuerung angebunden ist.

ID26165877 Tipps und Tricks für das Erstellen von Skripten

Gruß Kai
 
...Allerdings setzt das dann immer noch voraus, dass es diese Variable dann in der SPS gibt und (sehr wahrscheinlich auch) das es die Verbindung zur SPS gibt (Frage vom TE)...

Eine Verbindung muß angelegt werden. Die Variablen bekommen auch eine Adresse wie jede externe Variable. Die Steuerung muß jedoch nicht zwangsläufig online verhanden sein.

http://support.automation.siemens.com/WW/view/de/22900091
Siehe Runtime-Projekt ganz unten auf der Seite.

Voraussetzung für den Einsatz dieser Demo-Applikation ist WinCC flexible 2008 SP1.


Gruß, Onkel
 
Zuletzt bearbeitet:
Zurück
Oben