Richtige Konfiguration Profinet zwischen 2 CPU´s

P.E.

Level-1
Beiträge
7
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich stehe momentan vor einem kleinen Problem.

Ich habe 2 Siemens ET200S IM151-8 CPU´s per Profinet miteinander verbunden, und jede einzelne steuert einen Hydraulikzylinder.
Beide Zylinder hängen mechanisch zusammen und müssen sich im Gleichlauf bewegen.

Gesteuert wird beides über einen PID-Regler. Bei Regelabweichung zwischen den beiden Wegmesssystemen in den Zylindern wird den Proportionalventilen der Reglerwert addiert, bzw. subtrahiert . CPU1 z.B. 50% - 2,5%, CPU2 z.B. 50% + 2,5%.

Nun zu meinem Problem... die beiden Messwerte werden ja miteinander verglichen, dies geschieht allerdings nur in einer CPU. Der Messwert der anderen CPU muss über die Kommunikation zum anderen Teilnehmer übertragen werden. Die Standartkommunikation über GET und PUT Bausteine ist dafür teilweise zu langsam. Meine Frage - wie muss ich die Kommunikation über Profinet richtig konfigurieren das eine Echtzeitkommunikation erreicht wird?

Ich hoffe ihr könnt mir helfen.
 
Erstmal danke für eure Antworten.

Ja, eine Echtzeitkommunikation funktioniert, wenn man die Partner CPU als Slave anbindet. Mein Problem besteht nur darin, das beide CPU´s bei Ausfall der Gegenseite auch alleine funktionieren soll und die Anlage sozusagen im "Schleppbetrieb" fahren soll.
Konfiguriere ich die 2. CPU also als Slave gebe ich doch mit der ersten die IO´s vor oder?

Mfg
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Mein Problem besteht nur darin, das beide CPU´s bei Ausfall der Gegenseite auch alleine funktionieren soll und die Anlage sozusagen im "Schleppbetrieb" fahren soll.

Was passiert, wenn eine spannungslos ist?

Grundsätzlich musst du beim Anlegen des Transferbereichs entscheiden, ob:
1. Applikationstransferbereiche, das sind so gesehen virtuelle E/As die es nur zwischen I-Device und Controller gibt.
2. Peripherietransferbereiche, das geht wirklich auf physikalisch E/As des I-Device.

So:

Bei 1. muss man "händisch" im Programm den Transferbereich mit etwas aus den physikalischen E/A befüllen.
> Ist eine CPU in Stop passiert das nicht mehr und das wars.
Bei 2. müsste man den Peripherietransferbereiche - den der Controller schon beschreibt - nochmal im eigenen CPU Programm überbeschreiben.
> Was dabei passiert habe ich noch nicht probiert, das Warnschild im Handbuch lässt nichts Gutes vermuten:

ACHTUNG
Zugriff auf Ausgangs-Peripherie

Im Anwenderprogramm des I-Devices darf nicht per Direktzugriff auf Ausgänge, die zu
einem Peripherietransferbereich gehören, zugegriffen werden.

https://support.industry.siemens.com/cs/ww/de/view/19292127
> S 108
 
Hallo

Man kann doch einen PN/PN-Koppler einbauen. Somit kannst du im 1ms Takt Daten austauschen.

Gruss
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ohne PN/PN-Koppler kann man auch im 1ms Takt Daten austauschen :cool:
Wie schonmal geschrieben: direkt via Profinet I-Device
Das ist extra dafür "erfunden" worden, auch unabhängig funktionierende CPUs zu koppeln.

Harald
 
Zurück
Oben