IBHLink S7++:PLC-PLC communication
Contents
Ethernet to MPI / PROFIBUS
Requirements
- SIMATIC Manager
- IBH Link S7++ / HS >= Firmware 2.142
- CPU with MPI or DP-Interface
- CPU with Ethernet on board or Ethernet CP. The Inteface has to support S7 connections. It can be checked within the properties: S7 connection active (Server) menas passive.
Download: STEP®7 Sample: Ethernet to MPI/PROFIBUS
Passive:
Iamge:EthernetMPICPpassiv.png
Within NetPro the CPU must be connected with the Etherent. An unspecifued connection is needed:
Datei:EthernetMPIS7Verbindung.png
To access several CPUs accordingly several S7 connections need to be configured. The connection ID is relevant for the call of the FBs/SFBs . If the No. of CPUs exceeds the No. of possible S7 connections, Ethernet to PROFIBUS via PROFIBUS-CP can be choosen.
Within the properties of the S7 connection the IP address of the IBH Links must be entered:
Datei:EthernetMPIS7Verbindung2.png
Within the Address Details enter the MPI address of the destination CPU.
Datei:EthernetMPIS7Verbindung3.png
The communication will be established usings the blocks FB14/FB15. There are different FB14/FB15 available. Depending if a CPU with on board Ethernet or a CPU with Ethernet-CP is used the matching blocks msut be choosen, otherwise there will b no data exchange.
CPU with on bord Ethernet = Standard Library
CPU with Ethernet CP = SIMATIC_NET_CP
Datei:FB14.png
Sample:
CALL "GET" , DB14 REQ :=M0.0 //Start reading with positive edge ID :=W#16#1 //S7 connection ID configured within NetPro NDR :=M0.1 //Job status ERROR :=M0.2 //ERROR flag STATUS:=MW2 //STATUS infomation(Siemens documentation) ADDR_1:=P#M 10.0 BYTE 20 //Source address connected CPU RD_1 :=P#M 10.0 BYTE 20 //Destination address local CPU
Depending on the type of CPU the matching blocks FB14/15 or SFB14/15 must be choosen. The final step si to tranfer the program and the system data to the CPU.
Ethernet nach PROFIBUS über PROFIBUS-CP
Voraussetzungen
- Simatic Manager
- IBH Link S7++ / HS ab Firmware 2.142
- CPU mit PROFIBUS-CP
- CPU mit Ethernetschnitstelle oder Ethernet CP; Die Schnittstelle muss S7-Verbindungen unterstützen. Zu erkennen an folgenden
- Eigenschaften: S7-Verbindung aktiv (Server bedeutet passiv).
Download: STEP®7 Beispiel: Ethernet nach PROFIBUS über PROFIBUS-CP
Aktiv:
Datei:EthernetMPICPaktiv.png
Passiv:
Datei:EthernetMPICPpassiv.png
In NetPro muss die CPU mit einem Industrial Ethernet verbunden werden. Es wird eine unspezifizierte S7-Verbindung benötigt:
Datei:EthernetMPIS7Verbindung.png
In den Eigenschaften der S7-Verbindung muss die IP-Adresse des IBH Links angegeben werden:
Datei:EthernetMPIS7Verbindung2.png
In den Adressendeteils muss die Rack- und Steckplatznummer eine spezielle IBH Link Routing Kennung angegeben werden: Rack 7, Steckplatz 31
Datei:EthernetMPIS7VerbindungCP.png
Verbindungsaufbau per FB/SFB 15 (PUT)
Da beim Verbindungsaufbau mit einem IBH Link S7++ über einen PROFIBUS-CP mehr Verbindungsinformationen benötigt werden, als in NetPro angegeben werden können, kann der IBH Link S7++ mit einer speziellen Kennung in einen Modus versetzt werden, in dem er die benötigten Verbindungsparameter mit einem Aufruf des Bausteins "PUT" als Datenstruktur übergeben bekommt. Diese Verbindung eignet sich auch für den Datenaustausch mit mehreren Ziel-CPUs, selbst wenn die Ethernet-CPU von sich aus keine ausreichensde Anzahl an S7-Verbindungen aufbauen kann.
OB1 erstellen
Im ersten Netzwerk wird der Baustein SFB15 zur Parameterübergabe aufgerufen. Im zweiten Netzwerk wird der SFB14/15 für den Datenaustausch aufgerufen.
Datei:OB1.png
CALL "PUT" , DB15
REQ :=M0.0 //Lesevorgang bei steigender Flanke ID :=W#16#1 //S7-Verbindungs ID wie in NetPro projektiert DONE :=M0.1 //Schreibvorgang abgeschlossen ERROR :=M0.2 //Fehlerbit STATUS:=MW2 //Statuswort (siehe Dokumentation Siemens) ADDR_1:=P#DB65535.DBX 224.0 BYTE 8 //IBH Link S7++ Kennung für PROFIBUS-Verbindungsaufbau.
Der IBH Link S7++ bekommt mit dieser Kennung den Verbindungsaufbau mitgeteilt.
ADDR_2:= ADDR_3:= ADDR_4:= SD_1 :="PLC_CONNECTION_RECORDS".Connection[0] SD_2 := SD_3 := SD_4 :=
"PLC_CONNECTION_RECORDS" – Symbolischer Name des DBs welcher die Verbindungsparameter enthält. Connection[0] – Zeiger auf die gewünschte Start Adresse im DB welcher die Verbindungsparameter enthält. Enthält der DB mehrere Verbindungen, können sie über diesen Parameter ausgewählt werden und somit auf verschiedene CPUs zugreifen.
CALL SFB 14 , DB14
REQ :=M10.0 //Lesevorgang bei steigender Flanke starte ID :=W#16#1 //S7-Verbindungs ID wie in NetPro projektiert NDR :=M10.1 //Lesevorgang abgeschlossen ERROR :=M10.2 //Fehlerbit STATUS:=MW20 //Statuswort (siehe Dokumentation Siemens) ADDR_1:=P#M 10.0 BYTE 20 // zu lesende Daten entferte CPU ADDR_2:= ADDR_3:= ADDR_4:= RD_1 :=P#M 10.0 BYTE 20 //zu schreibende Daten lokale CPU RD_2 := RD_3 := RD_4 :=
Abhängig von der verwendeten CPU müssen die passenden Bausteine FB14/15 oder SFB14/15 verwendet werden.
Es wird ein DB benötigt, welcher die Verbindungsparameter enthält.
Es werden die Parameter MPI-Adresse, Slot- und Racknummer verwendet. Eine Angabe der IP Adresse ist bei dieser Art der Verbindung ist nicht nötig. Bei mehreren Verbindungen empfiehlt es sich mit UDTs zu arbeiten.
MPI – Ethernet – MPI ohne Projektierung / MPI – Ethernet / MPI – IBH Link S5++
Voraussetungen
- Simatic Manager oder S7 für Windows von IBHsoftec
- 2 x IBH Link S7++ / HS ab Firmware 2.142
- CPU muss die Bausteine XPUT und XGET (SFC67, SFC 68) enthalten. Ob eine CPU die Bausteine enthält, ist in der Siemens Dokumentation zur entsprechenden CPU ersichtlich. Für diese Verbindung ist keine Projektierung nötig. Die Bausteine XPUT / XGET werden im SPS Programm aufgerufen und bauen dadurch die Verbindung von einem IBH Link S7 zu einem andern IBH Link auf. Für eine komfortable Konfiguration der Kommunikationsparameter sind die von IBHsoftec entwickelten Baustein XPUT_IBH und XGET_IBH verfügbar.
Download: STEP®7 Beispiel: MPI – Ethernet – MPI ohne Projektierung
CALL FB 67 , DB67
REQ :=M10.0 //Start Lesevorgang DEST_ID :=0 //Zeiger im Parameter DB DB_PARA :=100 //Nr. des Parameter DBs IBHLINK_ADDR:=B#16#0 //MPI Adresse Quell IBH Link SRC_ADDR :=P#M 100.0 BYTE 20 //zu lesende Daten entfernte CPU DST_ADDR :=P#M 100.0 BYTE 20 //zu schreibende Daten lokale CPU RESULT :=MW2 //Statuswort BUSY :=M3.0 //Lesevorgang in Arbeit
Die Verbindungsdaten des IBH Links der Quell CPU werden in einem DB hinterlegt.
Rack und Slot Nummer sind bei MPI 0. Bei S5 Verbindungen folgende Parameter für den IBH Link S5++ verwenden:
Ziel-IP-Adresse: IP-Adresse des IBHLink S5++
Ziel-MPI-Adresse: 2
Ziel-Rack: 0
Ziel-Steckplatz: 0
MPI – Ethernet – MPI mit S7-Verbindung (Projektiert) / MPI – Ethernet / MPI – IBH Link S5++
Voraussetzungen
- Simatic Manager
- 2 x IBH Link S7++ / HS ab Firmware 2.142
- CPU mit MPI Schnistelle
- Schnittstelle muss S7-Verbindungen unterstützen
Download: STEP®7 Beispiel: MPI – Ethernet – MPI mit S7-Verbindung (Projektiert)
In NetPro muss die CPU mit einem Industrial Ethernet verbunden werden. Es wird eine unspezifizierte S7-Verbindung benötigt:
Datei:S7Verbindung600px.png
In den Eigenschaften der S7-Verbindung muss die MPI-Adresse des Quell-IBH Links angegeben werden:
Datei:S7Verbindung2.png
Verbindungsaufbau per FB/SFB 15 (PUT)
Da beim Verbindungsaufbau mit einem IBH Link S7++ mehr Verbindungsinformationen benötigt werden, als in NetPro angegeben werden können, kann der IBH Link S7++ mit einer speziellen Kennung in einen Modus versetzt werden, in dem er die benötigten Verbindungsparameter mit einem Aufruf des Bausteins "PUT" als Datenstruktur übergeben bekommt. Ein weiterer Grund für die Verwendung dieser Verbindung ist, wenn Sie Daten mit mehreren Ziel-CPUs austauschen möchten.
OB1 erstellen
Im ersten Netzwerk wird der Baustein SFB15 zur Parameterübergabe aufgerufen. Im zweiten Netzwerk wird der SFB14/15 für den Datenaustausch aufgerufen.
Datei:OB1.png
CALL "PUT" , DB15
REQ :=M0.0 //Lesevorgang bei steigender Flanke ID :=W#16#1 //S7-Verbindungs ID wie in NetPro projektiert DONE :=M0.1 //Schreibvorgang abgeschlossen ERROR :=M0.2 //Fehlerbit STATUS:=MW2 //Statuswort (siehe Dokumentation Siemens) ADDR_1:=P#DB65535.DBX 224.0 BYTE 8 //IBH Link S7++ Kennung für PROFIBUS-Verbindungsaufbau.
Der IBH Link S7++ bekommt mit dieser Kennung den Verbindungsaufbau mitgeteilt.
ADDR_2:= ADDR_3:= ADDR_4:= SD_1 :="PLC_CONNECTION_RECORDS".Connection[0] SD_2 := SD_3 := SD_4 :=
"PLC_CONNECTION_RECORDS" – Symbolischer Name des DBs welcher die Verbindungsparameter enthält. Connection[0] – Zeiger auf die gewünschte Start Adresse im DB welcher die Verbindungsparameter enthält. Enthält der DB meherere Verbindungen, können sie über diesen Parameter ausgewählt werden und somit auf verschiedene CPUs zugreifen.
CALL SFB 14 , DB14
REQ :=M10.0 //Lesevorgang bei steigender Flanke starten ID :=W#16#1 //S7-Verbindungs ID wie in NetPro projektiert NDR :=M10.1 //Lesevorgang abgeschlossen ERROR :=M10.2 //Fehlerbit STATUS:=MW20 //Statuswort (siehe Dokumentation Siemens) ADDR_1:=P#M 10.0 BYTE 20 //zu lesende Daten entfernte CPU ADDR_2:= ADDR_3:= ADDR_4:= RD_1 :=P#M 10.0 BYTE 20 //zu schreibende Daten lokale CPU RD_2 := RD_3 := RD_4 :=
Abhängig von der verwendeten CPU müssen die passenden Bausteine FB14/15 oder SFB14/15 verwendet werden.
Es wird ein DB benötigt, welcher die Verbindungsparameter enthält.
Es werden die Parameter MPI-Adresse, Slot- und Racknummer verwendet. Eine Angabe der IP Adresse ist bei dieser Verbindung ist nicht nötig. Bei mehreren Verbindungen empfiehlt es sich, mit UDTs zu arbeiten.
Bei S5 Verbindungen folgende Parameter für den IBH Link S5++ verwenden:
Ziel-IP-Adresse: IP-Adresse des IBHLink S5++
Ziel-MPI-Adresse: 2
Ziel-Rack: 0
Ziel-Steckplatz: 0
Verbindung über IBH Link im Projektierten Modus
Voraussetungen
- Simatic Manager
- IBH Link S7++ / HS ab Firmware 2.142
- Schnittstelle muss S7-Verbindungen unterstützen
Download: STEP®7 Beispiel: Verbindung über IBH Link im Projektierten Modus
Diese Verbindungsvariante hat den Vorteil das Große Datenmengen schnell ausgetauscht werden können - bis zu 64K. Für die Kommunikation werden die Standardbausteine FB/SFB 8/9 (USEND / URCV) und FB/SFB 12/13 (BSEND / BRCV).
Routing-Modus muss in IBHLink S7++ aktiviert sein. Dieser Modus ist ab Firmware Version 2.142 verfügbar. In diesem Modus sind keine unprojektierte Verbindungen über RFC1006 mehr möglich! Verbindungen über den IBHNet-Treiber funktionieren weiterhin.
Der IBHLink S7++ wird in NetPro als eine Station angelegt.
Datei:IBH Link als Station.png
Folgende Baugruppe muss vrwendet werden:
MLFB: 6ES7 412-2EK06-0AB0 V6.0 in Rack 0, Steckplatz 2
MPI/Profibusadresse wie IBHLink S7++
IP-Adresse von IBHLink S7++
Konfiguration der Station im Hardwarekonfigurator:
Datei:IBH_Link_als_Station_HWK.png
In NetPro müssen neben der IBH Link Station auch alle CPUs angelegt werden, mit denen kommuniziert werden soll. Die S7-Verbindung wird von der tatsächlichen CPU über Ethernet zur IBH Link Station aufgebaut. Hierbei ist die tatsächliche CPU der aktive Teilnehmer.
Datei:Verbindung1.png
Datei:Verbindung1Parameter.png
Die Partner-Verbindungsresource wird automatisch vergeben und ist für den nächsten Schritt relevant.
Die IBH Link Station baut nun eine S7-Verbindung über Profibus zur zweiten tatsächlichen CPU auf. Hierbei ist die IBH Link Station der aktive Teilnehmer. Als lokale Verbindungs-ID wird hier nun die im vorherigen Schritt automatisch zugewiesene Verbindungsresource (im Beispiel: 10) angegeben.
Der Verbindungsstatus kann direkt in NetPro angezeigt werden:
Datei:Verbindungsstatus aktivieren.png
Mit dieser Verbindungsvariante sind komplexe Vernetzungen möglich:
Für eine Verbindung zu einem IBH Link S5++ muss keine Dummy-CPU in NetPro angelegt werden. Es reicht aus, lediglich eine unspezifizierte S7-Verbindung über Ethernet einzurichten. Die Partner-IP-Adresse ist in diesem Fall die IP-Adresse des IBH Link S5++. Zur Kommunikation müssen die Bausteine PUT/GET verwendet werden - SFB14/15.
Datei:VerbindungS5px800.png