Step 7 Datenaustausch (S7)OPC-Client--->(Win7)OPC-Server--->(S7)OPC-Client

-SPS

Level-1
Beiträge
6
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo in die Runde,
ich stehe vor der folgenden Herausforderung und habe im Netz bisher nichts passendes finden können.

-Die SPS kommuniziert mit dem Kunden über einen OPC-Server.
-Aufgabe: Es soll ein Simulator entwickelt werden, der die Kundenseite simuliert.
-Vorgabe: Der Kundensimulator muss mit einer SPS in Setp7 realisiert werden. (Ein Simulator in einer Hochsprache unter Windows, Linux etc. ist leider nicht erlaubt.)

Die beiden SPSen mit dem OPC-Server zu verbinden ist kein Problem. Nur wie bringe ich die "Kundensimuatons SPS" dazu Daten über OPC mit der "Hersteller SPS" auszutauschen?
(Eine direkte Verbindung über Profinet geht nicht, da explizit die OPC-Kommunikation getestet werden soll.)

Wer kann mir weiter helfen?
 
Also so ganz komme ich mit deinem Aufbau nicht klar.

(S7)OPC-Client--->(Win7)OPC-Server--->(S7)OPC-Client

Du meinst vermutlich eher so etwas.

Code:
            OPC Server <--------->  OPC Client
              ^ ^ ^
              | | 
              | | 
PLC_1 <-------+ | 
                | 
PLC_2 <---------+

Ein direkter Zugriff zwischen PLC_1 und PLC_2 mittels OPC ist imho nicht möglich. Dies muss über den OPC Client erfolgen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
kannst du das noch ein wenig klarer formulieren - also nicht "Die SPS" - sondern Hersteller-SPS, und Kundensimulations-SPS usw.

ich verstehe "Hersteller(deine)-SPS" und "Kunden-OPC-Server"

erstmal:
-welche SPS-Typen, welche OPC-Server/Client-Typen?

jetzt soll der "Kunden-OPC-Server" durch einen "OPC-Server + Simulations-SPS" ersetzt werden - oder?

und wer (SPS/OPC-Server/Client) schreibt/ließt Daten von wem?
 
Erst mal vielen Dank für eure Antworten.
Die obige Grafik finde ich sehr gut.
Ich versuche daran mal die Begriffe etwas klarer zu formulieren.


- PLC1 (meine SPS)
- OPC Client (der spätere Kunde )
- PLC2 (Simulations-SPS die für Testzwecke den OPC Client des Kunden nachbilden soll)

- PLC1 und OPC-Server (Vorinstalliert) laufen auf (m)einer Microbox IPC427D.



Hinter Grund ist, dass der "Aufgabensteller" seine Daten bisher über Profibus und einen DP/DP Koppler mit dem Kunden ausgetauscht hat. Und die Kundenseite mit einer S7-300 oder Microbox nachbilden konnte.
Die einfachste Weg wäre wohl einen Test-Client in C++, Java oder ähnlichem zu schreiben. Nur wird die Kundenschnittstelle ständig verändert und an den jeweiligen Kunden angepasst. Da der "Aufgabensteller" sich mit Hochsprachenprogrammierung nicht auskennt, möchte er die Anpassungen am liebsten wie gewohnt nur in seiner Test SPS durchführen.
 
OPC UA sollte angeblich direkt Daten zwisschen OPC Servers austauschen. Habe leider kein Erfahrung damit. Wurde mich auch interessieren.

Für OPC DA gibt es viele Lieferanten von "Data Bridges".
Damit kann man Daten zwischen OPC Servers austauschen.
Device <----> OPC Server <---> OPC Data Bridge Client <---> OPC Server <---> Device.
Probier Google "OPC Data Bridge".
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Okay, durch die neuen Informationen kommt Licht ins Dunkel.

Genau OPC UA Clients können dies.
Sollte auf der zweiten PLC ein WinAC RTX (Mircobox) zum Einsatz kommen, kann auf diesem mittels WinAC – OPC UA Client direkt via SPS, OPC UA Server Items geschrieben und gelesen werden.
Siemens bietet hierfür eine Lösung an.
Ich habe dies 2014 selber mal gemacht, funktioniert ganz gut.

Es gibt auch Dokumentationen und Beispielprogramme von Siemens, um den Client in den Betrieb zu nehmen. War bei mir eine ordentliche Frickelarbeit. Eventuell ist das mittlerweile etwas besser.

Direkt auf S7-300/400/1200/1500 gibt es ein solche Lösung nicht, andere Hersteller (z.B. B&R) können dies in ihren Steuerungen schon längst.
 
Eine Microbox als Simulations-Plattform, würde ich beim "Aufgabensteller" sicher durch bekommen.
Hast du noch einen Link auf die Doku und Beispielprogramm?

Was ich bisher unter "OPC Data Bridge" gefunden habe liest sich so, als ob zwei separate OPC-Server zu einem großen verschmolzen werden. Was ich bräuchte wäre ein Client der sich leicht parametrieren lässt und die Daten von einer SPS in die Andere liest und schreib.


zum Beispiel:
Von [PLC1 DB100DBW0 bis 50] liest und nach [PLC2 DB100DBW0 bis 50] kopiert/schreibt
und von
[PLC2 DB100DBW200 bis 300] nach [PLC1 DB100DBW200 bis 300] kopiert/schreibt.
 
Leicht ist natürlich immer relativ. Es ist zumindest machbar und würde deinen Anwendungsfall abdecken.
Ich kann dir allerdings nicht sagen was der OPC UA Client kostet, da musst du deinen Siemens Vertriebler fragen.

Eine Dokumentation für Step7 findest du hier.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke, das Dokument sieht nach der ersten Durchsicht sehr vielversprechend aus.
Die Sätze:
So ist es jetzt
möglich, aus der WinAC RTX SPS Programm direkt mit einen anderen OPCServer
Daten auszutauschen. Einzige Voraussetzung ist, dass sich der OPCServer
auf demselben PC-System befindet wie die WinAC RTX Runtime.
Verstehe ich so dass die Simulations-SPS nur auf den OPC Server zugreifen, kann der sich auf der Simulatons Microbox befindet. Das würde also bedeuten, ich benötige noch eine "OPC Data Bridge", um auf die Prüflings-SPS zu kommen...

PrüflingsMicroboxPrüflingsMicroboxPrüflingsMicroboxSimulationsMicroboxSimulationsMicroboxSimulationsMicroboxSimulationsMicroboxSimulationsMicrobox
SPS(1)<----->OPC-Server(1)<-->OPC-Brücke<---->OPC-Server(2)<----->SPS(2)


Ich frage gerade bei Siemens an, ob es den "SIMATIC WinAC OPC-Client" auch für die neue MicroboxIPC427D unter Win 7 gibt.
Wenn ich neue Infos habe werde ich hier davon berichten.
 
edit: da hier vorher Unsinn stand.

Die Frage ist, der OPC Server muss zwangsläufig auf der ersten Microbox laufen?
 
Zuletzt bearbeitet:
Was ich bisher unter "OPC Data Bridge" gefunden habe liest sich so, als ob zwei separate OPC-Server zu einem großen verschmolzen werden. Was ich bräuchte wäre ein Client der sich leicht parametrieren lässt und die Daten von einer SPS in die Andere liest und schreib.
Nur als Kommentar: Ein Data Bidge für OPC DA ist genau ein OPC Client der Daten zwischen Verbindungen oder OPC Servern liest und schreibt.

Die Lösung über OPC UA interessiert mich. Hat jemand ein Link zu ein Anleitung ?
 
Zurück
Oben