-> Hier kostenlos registrieren
Hi miteinander,
ich habe da mal eine Frage...
Mein System ist wie folgt aufgebaut:
Ich habe 2x eine 1516-3 PN/DP CPU und das TIA Portal Professional V13 SP1 Upd7.
Die beiden CPUs sind per PN X1 Schnittstelle miteinander verbunden.
Dabei wird ja automatisch eine CPU zum IO Controller.
Den IO-Controller nenne ich im folgenden Master, die Andere CPU nenne ich Slave.
Ich möchte jetzt alle gesteckten IO Karten der Slave CPU in das Prozessabbild des Masters transferieren.
Jetzt werden einige schon sagen, kein Problem... nimm doch einfach die i-Slave Kopplung und transferiere es damit.
Wie einige von Euch bestimmt schon festgestellt haben funktioniert das aber im PLCSIM nicht :sad:
Die Frage ist nun: wie kann ich eine RealTime(RT oder IRT)-Kommunikation zwischen den beiden CPUs nutzen um die einzelnen Karten als Block in mein Prozessabbild zu laden?
Das ganze sollte dann auch noch im PLCSIM simulierbar sein.
Ich habe folgendes versucht:
- TSEND_C >> viel zu langsam und Pakete im falschen OSI Layer da ISOonTCP
- PUT/GET >> viel zu langsam und brauche mehr als einen Zyklus um Werte zu holen
- DPRD_DAT >> kann die HardwareIDs der IO Karten aus der Slave CPU nicht erreichen
Wie es aussieht wäre die Funktion DPRD_DAT die schnellste von allen.... aber in meinen Systemkonstanten wird nur die HWID der PN Schnittstelle der Slave CPU angezeigt.
Ob DPRD_DAT jetzt RealTime ist oder nicht steht auch nirgendwo.
Der Siemens Support kann mir dazu auch keine Aussage machen was jetzt davon RT IRT oder nonRT ist.
PUT/GET und TSEND_C TRCV_C verhalten sich eher wie nonRT
Ziel des ganzen ist:
Die gesteckten Karten in der Slave CPU sektionsweise in das Prozessabbild der Master CPU zu laden.
schnelle Karten jeden Zyklus und nicht priorisierte Karten nur alle 100ms.
Wäre schön wenn ich jeden Zyklus einen neuen Wert bekämt falls vorhanden.
Wäre noch schöner wenn das ganze dann auch im PLCSIM funktioniert.
P.S.:
Wenn ich die I-Slave Kopplung benutzte um alle IOs vom Slave zum Master zu transferieren bekomme ich inklusive der Programm Abarbeitung circa 1200 Zyklen pro Sekunde hin (0,8 ms pro Zyklus in beiden CPUs)
ich habe da mal eine Frage...
Mein System ist wie folgt aufgebaut:
Ich habe 2x eine 1516-3 PN/DP CPU und das TIA Portal Professional V13 SP1 Upd7.
Die beiden CPUs sind per PN X1 Schnittstelle miteinander verbunden.
Dabei wird ja automatisch eine CPU zum IO Controller.
Den IO-Controller nenne ich im folgenden Master, die Andere CPU nenne ich Slave.
Ich möchte jetzt alle gesteckten IO Karten der Slave CPU in das Prozessabbild des Masters transferieren.
Jetzt werden einige schon sagen, kein Problem... nimm doch einfach die i-Slave Kopplung und transferiere es damit.
Wie einige von Euch bestimmt schon festgestellt haben funktioniert das aber im PLCSIM nicht :sad:
Die Frage ist nun: wie kann ich eine RealTime(RT oder IRT)-Kommunikation zwischen den beiden CPUs nutzen um die einzelnen Karten als Block in mein Prozessabbild zu laden?
Das ganze sollte dann auch noch im PLCSIM simulierbar sein.
Ich habe folgendes versucht:
- TSEND_C >> viel zu langsam und Pakete im falschen OSI Layer da ISOonTCP
- PUT/GET >> viel zu langsam und brauche mehr als einen Zyklus um Werte zu holen
- DPRD_DAT >> kann die HardwareIDs der IO Karten aus der Slave CPU nicht erreichen
Wie es aussieht wäre die Funktion DPRD_DAT die schnellste von allen.... aber in meinen Systemkonstanten wird nur die HWID der PN Schnittstelle der Slave CPU angezeigt.
Ob DPRD_DAT jetzt RealTime ist oder nicht steht auch nirgendwo.
Der Siemens Support kann mir dazu auch keine Aussage machen was jetzt davon RT IRT oder nonRT ist.
PUT/GET und TSEND_C TRCV_C verhalten sich eher wie nonRT
Ziel des ganzen ist:
Die gesteckten Karten in der Slave CPU sektionsweise in das Prozessabbild der Master CPU zu laden.
schnelle Karten jeden Zyklus und nicht priorisierte Karten nur alle 100ms.
Wäre schön wenn ich jeden Zyklus einen neuen Wert bekämt falls vorhanden.
Wäre noch schöner wenn das ganze dann auch im PLCSIM funktioniert.
P.S.:
Wenn ich die I-Slave Kopplung benutzte um alle IOs vom Slave zum Master zu transferieren bekomme ich inklusive der Programm Abarbeitung circa 1200 Zyklen pro Sekunde hin (0,8 ms pro Zyklus in beiden CPUs)