Step 7 Profinet: Welches Gateway für eine Siemens 1500?

Yealink

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

in ein bestehendes Profinet-Netzwerk mit einem Siemens 1500 Controller soll ein neues Profinet-Gateway eingebaut werden.
Ich soll als Programmierer via C# mit diesem Gateway dann Daten austauschen.

1.) Gibt es Gateway das man hier typischerweise benutzt? (Ein Lan-Port für den Profinet und ein Lan-Port zum PC.)
Mit googeln komme ich hier irgendwie nicht weiter.

2.) Gibt es für C# dann eine fertige API die man aufrufen/verwenden kann oder wie gehe ich hier vor?

3.) Spielt es dann eine Rolle ob es Step7, Step5 oder TIA ist? Ist mir aktuell nicht bekannt.

Danke für Hilfe

Grüße
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
in ein bestehendes Profinet-Netzwerk mit einem Siemens 1500 Controller soll ein neues Profinet-Gateway eingebaut werden.
Was meinst Du mit "Profinet-Gateway"?

Ich soll als Programmierer via C# mit diesem Gateway dann Daten austauschen.
Welches Kommunikations-Protokoll?

1.) Gibt es Gateway das man hier typischerweise benutzt? (Ein Lan-Port für den Profibus und ein Lan-Port zum PC.)
Es gibt keine LAN-Ports für Profibus. Du meinst vermutlich Profinet.

2.) Gibt es für C# dann eine fertige API die man aufrufen/verwenden kann oder wie gehe ich hier vor?
Das ist abhängig davon, welches Kommunikations-Protokoll verwendet wird.

3.) Spielt es dann eine Rolle ob es Step7, Step5 oder TIA ist? Ist mir aktuell nicht bekannt.
Siemens S7-1500 sind immer mit irgendeiner TIA-Version programmiert. Mit Step7 oder Step5 können die nicht programmiert werden.
Je nachdem welches Kommunikations-Protokoll verwendet werden soll, kann es sein, daß in bestimmten TIA-Versionen das Protokoll erst freigeschaltet werden muß oder Zertifikate installiert werden müssen oder ... es wäre nützlich, wenn man die verwendete TIA-Version weiß.

Harald
 
>Was meinst Du mit "Profinet-Gateway"?

Unter Profinet-Gateway stelle ich mir ein eigenständiges Gerät vor, dass im Profinet enthalten ist mir einer eigenen ID/Name.
An dieses soll mein PC über Lan angeschlossen sei.
Nun ist die Idee dass der Profinet-Controller einen "Start-Befehl" an das Gateway schickt und ich das am PC auslese.
Als Qutitierung, dass ich den Start mitbekommen habe soll das dann vom PC in den Profinet zum Controller geschrieben werden.
Also eigentlich nur ein read/write.

Die anderen Punkte kläre ich gerade.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
also ich vermute, er will ein C#-Programm schreiben, welches Daten aus einer S7-1500 auslesen/schreiben soll.

Dazu braucht er eigentlich kein Gateway, sondern das S7-Protokoll in seinem C# Programm.

Falls das S7-Protokoll zu kompliziert ist, kann man natürlich auch noch x-beliegige andere Protokolle verwenden, die dann u.U. ein Gateway benötigen würden...

also welches Protokoll soll das C#-Programm benutzen? Dann kann man ein Gateway, Protokollxyz<->S7-1500 kaufen, oder man braucht auch vielleicht garkeins...
 
Den CP habe ich auch nur vorgeschlagen, falls er die Netze trennen möchte. Aber wie gesagt, evtl. hat er eine CPU mit mehreren Schnittstellen und ggf. ist da noch ein Port frei so dass die Netze getrennt sind.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Anstatt auf die Hardware oder Software fokusieren auf genau welche Aufgabe gelöst werden muss.
Wenn z.B eine Forderung ist dass S7 SPS und die PC von einander getrennt werden soll, dann muss ein Gerät dazwischen - konnte ein Router, ein 1-to-1 NAT, oder ein PN/PN Koppler sein.
Wenn z.B die PC auf unterschiedliche Netzte sind aber nicht getrennt werden sollen, dann konnte man die SPS mit ein CP erweitern.
Usw.

Was ist die eigentliche Aufgabe ?
 
Es handelt sich später um ein industrielle Produktionslinie an der ich ein eigene Station bin. Jeder Station der Linie soll über Profinet die Info bekommen jetzt zu starten. D.h. der Profinet-Controller ist weit weg von mir und kann nicht modifiziert werden.
Meine Idee war ein "Gerät", dass in den Profinet eingeschleift wird und auf das ich mit eiinem zweiten Netzwerk vom PC aus zugreife. Deshalb die Idee mit den zwei Ports am Gerät (=Profinet-Gateway).
Sobald ich das Paket empfangen habe soll es quittiert werden.
Es muss also eigentlich nicht in Echtzeit abgefragt werden.

Edit: replace Profibus mit Profinet
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich glaube dass die genannte Signale nicht direkt mit ein PC Anwendung direkt verbunden werden sollen. Besser ist dass dies wird von dein Open Controller hantiert.
Sonnst wurde man auch fragen, warum hast du überhaupt ein Open Controller und nicht einfach ein PC ?
Dein PC Anwendung kann dann mehr übergeordnete Funktionen hantieren ohne Echtzeit.

Die Verbindung zwischen die Produktionslinie und dein Open Controller konnte entweder als I-Device oder über PN/PN Koppler passieren.
I-Device wenn dein Open Controller auf denselben Netzwerk befinden kann als die Rest von die Produktionslinie.
PN/PN Koppler wenn sie von einander getrennt werden müssen.
In beide Fällen bekommt die Produktionslinie nur ein GSDML Datei der dein Open Controller repräsentiert. Egal wie muss am mindestens diese Modifikation in die bestehende Produktionslinie gemacht werden. Nachher brauchen beide kein direkten Einfluss auf einander.

Die Verbindung zwischen die Open Controller und die PC Anwendung kann in zig weisen passieren. Bitte noch etwas tiefer erklären. Was ist die eigentliche Aufgabe, was sind deiner Voraussetzungen ...
Die Aufgabe kann nicht 'ich muss ein Gateway einsetzen' sein.
 
Es wird eine Siemens SIMATIC DP, CPU 1516PRO F-2 PN verwendet mit TIA V17.
Das Protokoll ist Profinet/Profisafe.

Was benötige ich hier dann als "Slave" um Telegramm empfangen und senden zu können?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das Protokoll ist Profinet/Profisafe.
Muss deiner Seite in die Safety von die Partner 1516F integriert werden ?
Es ist mir nicht bekannt dass es gibt PC Schnittstellen mit PC Software die in ein Safety System integriert werden können.

Muss deiner Seite überhaupt mit die 1516F in Realzeit (sprich Profinet IO RT) kommunizieren ?
Dann gibt es einige Möglichkeiten, z.B. die Karte die 312C genannt habe.
Wenn nicht, dann gibt es viele Möglichkeiten, aber anstatt das wir unendlich viele Möglichkeiten aufzulisten, erklär was ist die genaue Aufgabe und was sind deiner Voraussetzungen.
 
Zuletzt bearbeitet:
Wenn es wirklich eine Profinet-IO Verbindung sein muss, gibt es beispielsweise diese Karte von Hilscher.
Danke für den Tipp.
Mein Setup sieht so aus, dass ich einen PC habe mit 2 LAN-Ports.
Port1 = DHCP für Internet
Port2 = 10.0.0.100 für Messgeräte. Dieser steckt in einem Switch. Ebenso stecken in diesem Switch meine LXI-Messgeräte (DMM, PowerSupply, Scop usw ebenfalls im 10.0.0.xxx Bereich). Das Profinet-Gateway soll auch in diesem Switch stecken.

Ich suche ein standalone Gerät in dem dann einmal ein Kabel zum Switch geht und das andere zum ProfiNet.

Die Aufgabe ist, dass mein System über Profinet ein "Start"-Telegramm bekommen soll. Sobald das kommt soll eine Messequenz starten.

Dazu gibt es eine eigene C#-API bei der mir dann noch der Profinet-code fehlt.

Wenn ich etwas hätte das im Pseudocode sowas ermöglicht wäre mir schon geholfen.
Bzw. was für eine API man braucht um mit C# darauf zuzugreifen.

Pofinet: Wait for Telegram(999)
if (Telegram999.occured == true)
{
show Popup
Profinet: Send Answer.Telegram(888)
}

Grüße
 
Danke für den Tipp.
Mein Setup sieht so aus, dass ich einen PC habe mit 2 LAN-Ports.
Port1 = DHCP für Internet
Port2 = 10.0.0.100 für Messgeräte. Dieser steckt in einem Switch. Ebenso stecken in diesem Switch meine LXI-Messgeräte (DMM, PowerSupply, Scop usw ebenfalls im 10.0.0.xxx Bereich). Das Profinet-Gateway soll auch in diesem Switch stecken.

Ich suche ein standalone Gerät in dem dann einmal ein Kabel zum Switch geht und das andere zum ProfiNet.

Die Aufgabe ist, dass mein System über Profinet ein "Start"-Telegramm bekommen soll. Sobald das kommt soll eine Messequenz starten.

Dazu gibt es eine eigene C#-API bei der mir dann noch der Profinet-code fehlt.

Wenn ich etwas hätte das im Pseudocode sowas ermöglicht wäre mir schon geholfen.
Bzw. was für eine API man braucht um mit C# darauf zuzugreifen.

Pofinet: Wait for Telegram(999)
if (Telegram999.occured == true)
{
show Popup
Profinet: Send Answer.Telegram(888)
}

Grüße
Also, Du brauchst einen ProfinetController um die ProfinetDevices anzubinden. Dieser ProfinetController soll auf der anderen Seite mit dem PC verbunden werden (möglicherweise über OpenTCP-Kommunikation).
Das kann m.E. nur eine SPS mit zwei Schnittstellen (entweder beide Onboard oder mit zusätzlichem CP) sein.

VG

MFreiberger
 
Zurück
Oben