# Beckhoff CX1010 Kommunikation über Ethernet



## Eisbaer_vw (21 September 2011)

Hallo
Ich arbeite mich gerade in meine Diplomarbeit ein und habe eine Frage zu der Verbindung von 2 CX1010 über Ethernet.

Aber erst mal die verwendete Hardware.
2 mal SPS CX1010-0011 Grundmodule mit den Netzteilen CX1100-0002 und digitalen I/O Klemmen
1 PC Arbeitsplatz mit TwinCAT PLC und CoDeSys
Alles ist über Netzwerk verbunden.

Die SPS Grundmodule verfügen standardmäßig über eine RJ45 (Ethernet) Schnittstelle (kein EtherCAT). Laut Beckhoff HP können darüber mehrer Geräte kommunizieren. 

Ich habe gelesen das man im TwinCAT System Manager mehrere SPS Projekte laden kann. Die Anzahl der Laufzeitsysteme habe ich dabei schon auf 2 erhöht.

Ich würde gern von einem Prozess an der 1. SPS eine Verbindung (Verknüpfung) zu einem Prozess an der 2. SPS schaffen.
z.B. wird ein Leuchtmelder im 1.Prozess an der 1. SPS gesetzt, der auch im 2. Prozess an der 2. SPS aufleuchten soll. Also über die Ethernet Schnittstelle
gesendet wird.

Meine erste Frage ist. Was unterscheidet ein Zielsystem von einem Laufzeitsystem? Im Manager kann ich nur ein Zielsystem(SPS) wählen und dann max. 4 Laufzeitsysteme aktivieren.
Ich bekomme immer die Meldung "Laufzeitsystem ist bereits von anderem Projekt belegt" wenn ich ein zweites SPS-Projekt einfügen möchte.

Kann die Schnittstelle überhaupt als Feldbus genutzt werden, oder habe ich da was falsch verstanden?

Wie kann ich zwei Projekte auf zwei verschiedenen SPS in einem Manager verwalten?

Ich hoffe ihr habt mein Problem verstanden 

Gruß

Michael


----------



## cas (21 September 2011)

*Was unterscheidet ein Zielsystem von einem Laufzeitsystem? *
Zielsystem ist deine Steuerung (SPS) 
Laufzeitsystem ist sozusagen ein Task in der SPS. davon gibt es 4 Stück die unabhängig von einander Laufen.

*Im Manager kann ich nur ein Zielsystem(SPS) wählen und dann max. 4 Laufzeitsysteme aktivieren.
Ich bekomme immer die Meldung "Laufzeitsystem ist bereits von anderem Projekt belegt" wenn ich ein zweites SPS-Projekt einfügen möchte.*
Erklärung dazu sie oben

*Kann die Schnittstelle überhaupt als Feldbus genutzt werden, oder habe ich da was falsch verstanden?*
Ja geht auf mehrere Arten:
-Z.B. über Netzwerkvariablen (sehr schnelle kommunikation), macht die SPS selber
- Über ADS mittel Datenaustausch. (Muß man programmieren, geht aber einfach)
- Über andere Protokolle (Modbus...)

*Wie kann ich zwei Projekte auf zwei verschiedenen SPS in einem Manager verwalten?*
Geht nicht. Soll in Twincat 3 irgendwann wohl gehen.

MfG CAS


----------



## Eisbaer_vw (21 September 2011)

Hallo CAS

Wenn ich das richtig verstanden habe, kann ich, mittels Netzwerkvariablen, den Eingang einer Klemme der 1.SPS über das Ethernet auf eine Ausgangsklemme einer anderen SPS schalten. (Publisher/Subscriber-Prinzip) Dann werde ich mich da mal reinlesen.
Vielen Dank

Michael


----------



## cas (21 September 2011)

hallo,

soweit ich weiss geht das mit "Hardware" nicht.
Du mussst den Eingang auf eine Variable legen und "veröffenlichen" (im Systemmanager).

Dann nimmst du auf der anderen SPS eine Variable und holst diese veröffentlichte var ab. Dann noch diese Variable dem Ausgang zuweisen und fertig.

Stichwort: publisher ! im Systemmanager

MfG CAS


----------



## Eisbaer_vw (22 September 2011)

*schon ein bischen weiter*

Hallo

Habe mir die Sache mit den Netzwerkvariablen mal bei Beckhoff durchgelesen, und konnte auch einen Taster an der 1.SPS auf einen Leuchtmelder der 2.SPS über die Netzwerkvariablen verbinden.
Musste aber erst mal verstehen, das auch eine Verknüpfung im Programm notwendig ist .

Jetzt habe ich mir weiter Gedanken gemacht. Diese Verknüpfung mit den Netzwerkvariablen ist im Systemmanager nur mit Variablen möglich, die auch eine (Hardware)-Adresse bekommen haben. Somit belege ich aber unnötiger weise Klemmen. Bzw. habe einfach Adressen doppelt vergeben, nur damit die Variable im SysMan auftauchen. Dort habe ich dann die Zuordnung getrennt vorgenommen. 

Anscheinend kann ich immer nur 2 Variablen verknüpfen.
Oder kann man auch auf eine Klemme und eine Netzwerkvariable verweisen?

Außerdem würde ich gern wissen ob ich auch ganz ohne Adresse eine Verknüpfung setzen kann. Z.B. einen Merker im Programm der 1.SPS auf eine Variable im Programm der 2.SPS, ohne das dabei Klemmen-Adressen (doppelt) verwendet werden.

Ich hoffe ihr haltet mich nicht für total bescheuert. Bin noch nicht lange in dem Thema drin. 

Vielen Dank

Gruß
Michael


----------



## cas (22 September 2011)

schön das du es geschafft hast.

Wie bereits oben mitgeteilt, gebe es noch die ADS-Variant mittel FB 'ADSREAD' / write.

Diese wird manuell getriggert und gestartet. Gibt aber keine 100%ige Sicherstellung der Ankunft der Daten. In der Regel sehr schnell.

Du kann somit auf die andere SPS schreiben oder von ihr lesen. Nicht nur eine Variable sondern ganze Strukturen mit einem klick.
Die Strukturen müssen nur auf beiden SPSn sein.

Hat den großen Vorteil, nur einmal eine Kommukation zu schreiben und man muß den Systemmanager nicht jedesmal nutzen.

MfG CAS


----------

