VB6, OPC, S7 Verbindung

Garog

Level-1
Beiträge
197
Reaktionspunkte
32
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo, ich habe ein altes VB6 Projekt, welches mittels sopcdaauto.dll auf eine PC Station mit Simatic OPC Server (OPC 6.2.1) auf eine 314C-2 PtP zugreift.

Bisher war in dem PC ein CP5611 verbaut, welches mittels MPI auf die Steuerung verbunden war.
Im NetPro ist dann eine Verbindung vom OPC Server zur SPS projektiert gewesen.

Nun haben wir die Konfiguration der PC Station angepasst und den CP5611 durch die USB Version CP5711 ersetzt.
Die SPS neu übersetzt und geladen und die PC Station neu übersetzt und mittels .xdb Datei übertragen.
Die Station wird dann auch sauber angelegt und eine Verbindung vom OPC Server zur SPS funktioniert. Greife ich mittels OPC Scout auf den OPC Server zu, zeigt er mir eine grüne Verbindungsdiagnose im Tool "S7-Verbindungsdiagnose" an und ich kann auch Daten von der Verbindung vom OPC Server lesen.

Soweit so gut. Nun greift das VB Programm aber nicht über Namen auf die SPS Daten zu, also nicht über die SYM, den dort sind keine konfiguriert, sondern geht über die S7-Verbindung und möchte direkt auf die Datenbausteine zugreifen.
Der Itemname ist dann wie folgt: "S7:[S7-Verbindung_1]DB10,B0,6"
Nun bringt uns das alte VB Programm immer den Fehler das die S7-Verbindung einen Fehler in der Kommunikation hat.

Das man überhaupt so über den OPC Server auf einer SPS etwas lesen kann, war mir schon neu, wieso aber nun auf einmal die Verbindung nicht mehr geht ist das eigentliche Problem.
Was noch dazu gesagt werden sollte. Wir testen dies nun mit einer 313C-2DP, ursprünglich war eben eine 314C-2 PtP drin. Ein Kollegen aus der Zeit der Anlage meinte auch das sie aus irgend einem Grund extra die PtP CPU nehmen mussten und es könnte ggf. wirklich mit dem OPC Server zu tun haben.

Hat da jemand Erfahrungen mit oder Infos die helfen ?
Vielen Dank
 
Hallo,

das ist leider wirklich schon sehr veraltet, mittlerweile gibt es weit bessere Lösungen für solche Funktionen.

Aber eventuell kann ich dir etwas helfen, die CPUs dürfen egal sein weil PtP ja nur für die serielle Kommunikation verwendet wird.
Ich könnte mir nur vorstellen dass der alte Treiber irgendwie über eine echte S7-Verbindung arbeitet, eventuell kannst du deinen Altstand noch einmal prüfen ob in NetPro für die CPU irgendwelche speziellen Verbindungen konfiguriert sind die du beim CPU-Tausch nicht mit übernommen hast.

Andernfalls könntest du dich noch an alte Handbücher halten und prüfen ob du nicht im Station Configurator was erstellen musst, leider finde ich das Dokument auf der Siemens Seite nicht, aber hier die Anleitung im DocPlayer.


Ich hoffe dass ich dir mir den Ansätzen helfen konnte.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke dir, das ist schon ein recht interessantes Dokument.
Ich habe in der Zwischenzeit einige Tests mit dem OPC Server gemacht und dem CP5711.

Die S7 Verbindung funktioniert und das Abfragen von z.B. Merkern funktioniert.
S7:[S7-Verbindung_1]MX0.7
z.B. liefert mir im OPC Scout einen blinkendes Item.

Versuche ich das ganze nun mit einem DB
S7:[S7-Verbindung_1]DB10,B1,1

funktioniert dies nicht. Dort sagt er mir dann bei der Qualität "ungültig"
Auch das VB Programm habe ich dahingehend zum testen genutzt. Einen Merker kann ich auslesen, aber möchte ich auf einen DB zugreifen, geht dies nicht mehr.

Ich habe ein altes Dokument, S7-Kommunikation über MPI / Beitrags-ID: 16518346 -> https://support.industry.siemens.com/cs/de/de/view/16518346
Dieses bin ich Schritt für Schritt durchgegangen und habe es genau so angelegt.
Ich bekomme jedoch keine Datenbausteine angezeigt, so wie es in dem Dokument in der "Abbildung 2-28 Objekte im OPC-Navigator, und kann sie eben auch nicht lesen, wenn ich den Pfad von Hand eingebe. Muss da noch irgendwo etwas konfiguriert werden, was nicht beschrieben ist oder ich übersehen habe ?
 
Die S7 Verbindung funktioniert und das Abfragen von z.B. Merkern funktioniert.
S7:[S7-Verbindung_1]MX0.7
z.B. liefert mir im OPC Scout einen blinkendes Item.

Versuche ich das ganze nun mit einem DB
S7:[S7-Verbindung_1]DB10,B1,1

funktioniert dies nicht. Dort sagt er mir dann bei der Qualität "ungültig"
Als ob DB10 nicht geladen ist.
Oder es gibt ein DB10, aber es ist leer.
Wie mit S7:[S7-Verbindung_1]DB10,INT0,1 ?

Kannst du mit STEP7 die DB online beobachten ?
 
Ja genau so zeigt es sich, als wäre kein einziger DB auf der SPS.

Diese sind aber drauf, ich kann sie mit Step 7 auf der SPS öffnen, Aktualwerte anschauen, die Bereich stimmen auch alle.
Es hat sich an der SPS Software und der VB Software ja auch nix geändert, nur an der PC Station mussten wir den CP5611 durch den CP5711 ersetzten und dann die S7 Verbindung neu anlegen. So viel Parameter hat die nun auch nicht, haben alles genauestens nachgeschaut.

Ich habe es mit deiner Frage probiert, auch mit INT geht es nicht :/
 
Eine hilfreiche Antwort kann ich dir leider nicht geben.
Aber du schreibst das es wenige Parameter sind.
Kannst du die DB.xxx nicht einfach in einen Merkerbereich kopieren?
Das ist sicherlich keine saubere Lösung aber das ganze würde erst mal wieder laufen
 
Ich hab es gerade mal bei uns auf dem System getestet mit Deinem Item String. Hat ohne Probleme funktioniert. OPC ist bei uns V6.3 in der Konfig und V15 auf dem System.
Der DB ist wirklich da und ist auch nicht evtl. leer oder nur im Ladespeicher?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielen Dank für all die Infos und Ideen, wie sich aber zeigte muss beim Update von 2008 SP0 auf SP6 etwas schief gelaufen sein. Ich hatte es mit der Konfiguration der PC Station in einer anderen VM mit 2008 SP2 probiert und dort hat es problemlos funktioniert. Zeigte mir schon mal das es an der Konfiguration nicht gelegen haben kann. Bin aktuell dabei die VM neu zu konvertieren und dort es dann mit dem SP2 noch mal zu probieren. Da scheint irgendwas bei der Installation vom SP6 schief gegangen zu sein.

Ich hatte auch mit Siemens bereits kontakt, die kannten das Problem ebenfalls nicht.
 
Zurück
Oben