Softing OPC Server und AGLink (Updatezyklus)

Beiträge
195
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute,

ich hab bischen mit der Deltalogic AGLink Library rumgespielt...und festgestellt auch hier durch andere Threads... das ne Siemens SPS rel. langsam ist was daten übertragung zum PC angeht.

Nun der Softing OPC Server verwendet ja auch nur dise Library, und kann so auch net schneller daten änderungen pollen als wie wenn ichs selber programmieren würde.

Aber trozdem schaft es der Softing Server irgendwie die Daten in millisekunden aktuell zu halten , wenn ich bspw. über nen OPC Client 10.000 REAL Tags anlege.

10.000 * 4 Byte= 40 KB -> S7-400 PDU ca. 448 Byte.. Übertragung einer PDU dauert ca. 50ms (ohne gewähr):)

40KB in PDU packet = ca. 90 lese zyklen

90 *50 ms =4,5 S

Aber es kommt mir so vor, das die Aktualisierungsraten beim SoftingServer wesentlich besser sind, als wenn ichs selber mache.. oder seh ich das falsch?

Gibt irgendwelche tricks um updateraten zu beschleunigen?
 
dass der Softing bzw. DELTALOGIC-S7/S5-OPC-Server generell schneller ist als ACCON-AGLink ist kaum möglich, da für die Kommunikation zur SPS die Kommunikationsbibliothek AGLink verwendet wird. Ansonsten verzögert die OPC-Softwareschicht, wenn auch kaum merkbar, eher den Datenaustausch. Vermutlich liegt es also an der Art wie AGLink verwendet wird.
Einige Hinweise dazu:
Der S7/S5-OPC-Server verwendet die AGLink-Funktionen für den Datenaustausch generell AGL_ReadMixEx und AGL_WriteMixEx. Diese Funktionen werden verwendet um Aufträge aus verschiedenen Datenbereichen mit einem Funktionsaufruf an die Steuerung zu senden.
Wenn von AGLink nun AGL_ReadDataBytes verwendet wird, kann es sein dass die Kommunikation vom OPC-Server effektiver gehandelt wird.
En weiterer Unterschied könnte in der verwendeten AGLink-Version liegen. Generell kann man sagen dass die AGLink Verion 4.0 performanter ist als die AGLink 3.7x.
AGLink kann synchron und asynchron aufgerufen werden. Der S7/S5-OPC-Server verwendet generell den asynchronen Datenaustausch.
Der synchrone Aufruf hat zur Folge dass die AGLink-Applikation vom Versenden des Auftrags bis zum Empfang der Antwort von der Steuerung blockiert ist. Der synchrone Aufruf macht sich also auf Applikationsseite deutlich bemerkbar.
Beim asynchronen Aufruf läuft die Kommunikation im Hintergrund ab und die Applikation ist somit nicht blockiert. Die synchrone Kommunikation ist nicht langsamer aber je nach Verwendung eben deutlich spürbar.

Ich hoffe der Beitrag hat etwas Licht in die Sache gebracht.

Hanns-Joerg Renschler
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aber trozdem schaft es der Softing Server irgendwie die Daten in millisekunden aktuell zu halten , wenn ich bspw. über nen OPC Client 10.000 REAL Tags anlege.

Vielleicht liegt es daran, dass die S7-Kommunikation im OPC-Server
optimiert ist. Wenn Du in Deiner Applikation alle AGLink-Funktionen
ideal verwendest, schaffst Du sicher die selbe Datenrate.

Allerdings wird man sich mit dem Optimieren einfacher tun, wenn man
eine langjährige Erfahrung mit SPS-Kommunikation wie Herr Hönle hat.
Vielleicht kannst Du beim ihm auch Dienstleistung kaufen, so zur
Schulung oder auch zur Optimierung Deines Quellcodes.
 
Danke Leute,

das hat bischen licht ins dunkle geworfen.. mit AGL_mixdata oder wie das heist kann man schon bischne was raus holen.. bei libnodabe wäre das dann wohl "Preparemixed" data!

Hab mal nen TCP Viewer zwischen PLC und PC gehängt.. die TCP Frames sind eig. einfach zu entschlüssen.. könnte mir nen eigen treiber programmieren^^
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aaarrgghhh

Hallo,

Boris schrieb:
könnte mir nen eigen treiber programmieren^^

Wenn Du ein paar Jahre Zeit hast, kein Problem. Allerdings befürchte ich nach der Durchsicht Deiner in allen möglichen Unterforen wahllos und orientierungslos verteilten Threads zum Thema Kommunikation eher ein Defizit, das Du nicht vor Deiner Pensionierung lösen wirst ..
Es nervt langsam .......................

Gruß

Question_mark
 
Zurück
Oben