Step 7 Offene Kommunikation bei Profinet CPU's. Verbindungen Begrenzt?

hope_jippos

Level-1
Beiträge
4
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich Rufe mit einer Master CPU IM151-8 PN mehrere "Slave" CPU'S deren Daten ab. Zurzeit geschieht die Verbindung per einseitig Projektierter S7 Verbindung und die Daten werden per GET (SFB14) abgerufen.

Problem ist, die Verbindungen sind nun mal stark begrenzt.


Meine Überlegung: Ich Projektiere keine Verbindungen sondern löse das ganze über eine Offene Kommunikation per FB Bausteine (TCON, ...).
Verbindung Aufbauen -> Daten abrufen -> Verbindung Abbauen -> Nächste Verbindung.


Wie sieht das mit den Resourcen aus? Kann ich hiermit so viele Verbindungen nacheinander aufbauen wie ich will?
 
Ja, kannst Du. Mit den T-Bausteinen kann man dynamisch mehr Verbindungen nutzen als Ressourcen vorhanden sind.
Natürlich kann man auch da nicht mehr Verbindungen gleichzeitig nutzen als Ressourcen vorhanden sind, aber nacheinander geht es - sprich, wenn die Ressourcen alle belegt sind, dann muß man eine Verbindung abbauen um eine Ressource frei zu bekommen und sie für eine andere Verbindung nutzen zu können.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Obwohl es gehen wurde, ist das nicht etwas zu kompliziert ?
Alternativ wäre der "Master" CPU als IO Controller für die "Slave" CPUs als IO Devices. Die Slave CPUs sind dann I-device's. Wenn notwendig können die Slave CPUs gleichzeitig IO Controller für andere IO Devices sein.
Es ist ziemlich einfach zu konfigurieren.
Der grenze liegt bei 128 IO Devices für ein IM151-8.

Einzigste Nachteil bei diesen Verfahren ist das die Daten die man übertragt sind fest und nicht variabel.
Mit PUT und GET kann man unterschiedliche Daten abfragen nach bedarf.
 
Könntest du mal näher erläutern wie das grht. bzw wie man das paramertiert (hw-konfig)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ich hab mal eine hw-lonfig angelegt.
ziel ist es, das jede cpu mit den anderen 2 daten austauschen kann. ohne einen übergeordneten master.
dh. wenn eine cpu aus ist muss die kommunikation zwischen den anderen beiden immer noch laufen

1 projekt mit 3 cpu's. alle cpu's als i-device und einen haken bei 'übergeordnet als shared device betreiben'. 3 gsd-dateien erzeugt.

in cpu 1 nun cpu 2 und 3 eingepflegt.
in cpu 2 nun cpu 1 und 3 eingepflegt.
in cpu 3 nun cpu 1 und 2 eingepflegt.

ist das so korrekt und ich kann nun über den e/a-bereich mit den jeweils anderen cpu's kommunizieren?

ist es nötig, dass sich alle cpu's in dem gleichen projekt befinden?
 
Du hast es so angelegt:
CPU_1 ist IO Controller für CPU_2 und CPU_3
CPU_2 ist IO Controller für CPU_1 und CPU_3
CPU_3 ist IO Controller für CPU_1 und CPU_2
?

Ich glaube es genügt wenn
CPU_1 ist IO Controller für CPU_2
CPU_2 ist IO Controller für CPU_3
CPU_3 ist IO Controller für CPU_1

edit: Oder
CPU_1 ist IO Controller für CPU_2 und CPU_3
CPU_2 ist IO Controller für CPU_3

ist es nötig, dass sich alle cpu's in dem gleichen projekt befinden?
nein. Nur muss man den GSD Datei übertragen von einer Projekt nach der/die andere(n).
 
Zuletzt bearbeitet:
Zurück
Oben