Effiziente Übertragung von Stringent Variablen in WinCC

mnuesser

Level-1
Beiträge
1.022
Reaktionspunkte
165
Zuviel Werbung?
-> Hier kostenlos registrieren
Strings nicht Stringent! !

Hallo zusammen,
ich habe hier eine Visu vor mir, wo aus dem Programm die Texte für Tooltips in der Visu ausgelesen werden.

Das sind auf einer Seite dann so 200 Tooltips a 30 Zeichen. Trigger war zuerst 250ms (Totaler Blödsinn).
Was wäre eurer Meinung nach der richtige Trigger dafür?

AS ist ne CPU 317 PN

Gruß Markus
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Der Tooltip beinhaltet Informationen für den Elektriker bzw. Kunden. Schaltplanseite oder Kundenbezeichnung... nix wichtiges...

Gesendet von meinem SM-G920F mit Tapatalk
 
Wie stark würde denn der Trigger "bei änderung" die Übertragung belasten?

Gesendet von meinem SM-G920F mit Tapatalk
 
"Bei Änderung" ist meiner Meinung nach die schlechteste Variante. Zu WinCC 6.x gab es mal ein detaillierteres Dokument in dem ein paar Kommunikationsdetails beschrieben waren. Dort stand meine ich, dass "Bei Änderung" zum schnellsten Trigger, d.h. 250ms führt. Außer die Variablen können für zyklische Variablendienste bei der SPS angemeldet werden. Diese Anzahl ist allerdings begrenzt, und funktioniert bei Strings auch nicht.
Bei WinCC 7.2 führt "Bei Änderung" mittlerweile zu einem 1s Trigger, wenn keine zyklische Änderungsübertragung möglich ist.

Wenn sich die Werte so gut wie nie ändern, kannst du z.B. einen Zyklus von 10 Minuten einstellen. Jedes Mal wenn du in das Bild mit der Variable hineinwechselst, wird die Variable zumindest einmal beim Datenmanager angefordert, und dementsprechend auch aus der SPS gelesen.
Wenn sich dann der Wert in der SPS ändert, bekommst du entweder nach Bildwechsel sofort, oder spätestens nach 10 Minuten den aktuellen Wert angezeigt.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Geht es nicht das sich WinCC einmal zb beim verlassen eines Startbildes sich
die Texte abholt, durch irgendeinen Komunikationsdienst oder so.

Mit solche Daten den Bus zu belasten kann doch auch nicht der richtige Weg sein.
 
Geht es nicht das sich WinCC einmal zb beim verlassen eines Startbildes sich
die Texte abholt, durch irgendeinen Komunikationsdienst oder so.

Mit solche Daten den Bus zu belasten kann doch auch nicht der richtige Weg sein.
Dazu müsste man die Variable über ein globales Skript auslesen, und den Wert dann in einer internen Variable ablegen welche dann in den Bildern verwendet wird. Das Skript könnte man dann bei Runtimestart, täglich oder was auch immer einmal ausführen.
Sobald man die Variable mit SPS-Anbindung in einem Bild verwendet, wird diese zumindest bei jedem Bildaufruf abgefragt, was sich auch nicht verhindern lässt.

Wenn sich der String nie ändert, wäre es für alle Seiten am einfachsten den Text als Konstante im WinCC zu hinterlegen.
 
Dazu müsste man die Variable über ein globales Skript auslesen, und den Wert dann in einer internen Variable ablegen welche dann in den Bildern verwendet wird. Das Skript könnte man dann bei Runtimestart, täglich oder was auch immer einmal ausführen.
Sobald man die Variable mit SPS-Anbindung in einem Bild verwendet, wird diese zumindest bei jedem Bildaufruf abgefragt, was sich auch nicht verhindern lässt.

Wenn sich der String nie ändert, wäre es für alle Seiten am einfachsten den Text als Konstante im WinCC zu hinterlegen.

So ähnlich hätte ich mir das auch vorgestellt, wenn es den unbedingt ins SPS Programm muss.

Ein anderer Weg könnte doch auch sein, eine Datei die von WinCC ausgelesen wird.
Vielleicht eine CSV Datei, die beim Vom CAE System erzeugt wurde.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also um noch mal zu resümieren, folgendes Problem hat sich herauskristallisiert:
1. Antwortzeit der CP war >150ms
2. Die Warteschlange der Anfragen des WinCC Systems war 50 bis 60 Einträge gross.

Als erstes habe ich WinCC auf die CPU Schnittstelle konfiguriert, das brachte eine Spürbare Verbesserung, da die Antwortzeit dr CPU nur 50ms beträgt.
Danach habe ich alle 250ms Trigger auf 1s geändert (500stk etwa) und dann noch die Tooltips auf 1Std Trigger.
Das brachte meine Warteschlange auf <10 runter.
Zu guter letzt noch alle zyklischen Trigger zu Variablen Triggern geändert, jetzt rennt das System :)

Danke noch mal für eure Hilfe

Gesendet von meinem SM-G920F mit Tapatalk
 
Zurück
Oben