Excel OPC Client über Netzwerk auf OPC Server

Sorry, war im Urlaub.

Es hört sich so an als ob die Kiste schon "zerkonfiguriert" ist.

Erstmal grundsätzlich JA: die Einstellung auf "klassisch" ist natürlich was für den Server (wird üblicherweise vom Setup der OPC Server Produkte vorgenommen, Kontrolle schadet nicht). Aber auch am Client sollte "klassisch" eingestellt werden, den beim "DataChange" (dem Melden von Änderungen) ruft der Server ja den Client (also in umgekehrte Richtung) und da sollten die Credentials auch nicht auf den "Guest" verbogen werden, sonst kommen die Daten nicht an.

Nun geht es bei Dir anscheinend immer noch nicht. Da hilft nur eins "systematisch" vorgehen:
1) Geht ein "ping"? (wackel mal am Kabel)
2) Wer Besitzt welche exe? (auf Svr- und Cli-seite mit dem Taskmanager nachachauen)
3) Wenn es die selben Personen sind, müssen auch die PWDs identisch sein ("blank" ist nicht erlaubt), beide admins macht die Sache einfacher
4) Wenn der Server als "service" läuft, muss im Client "access permission" für den "Network-Account" (remote) gewährt werden
5) Wenn es unterschiedliche Personen sind, müssen diese auf beiden Rechnern "bekannt" sein (also einen Login/PWD besitzen) und die Rechner müssen in derselben Workgroup sein
6) Wenn es unterschiedliche Personen sind, die Rechner aber in derselben Domaine sind, reicht das gegenseitige hinzufügen der Domain/User in die DCOM-Zugriffsberechtigung
7) solage an den DCOM Einstellungen "gefummelt" wird, sollten die Firewalls (auf beiden Rechnern) ausgeschaltet werden.
8 ) wenn alles geht, beide Rechner booten, nochmal probieren und dann Firewalls wieder anschalten (DCOM-Port 134, und die EXEen als Ausnahme)

DCOM-Hilfe zum Download habe ich hier gefunden: http://www.ascolab.com/de/dokumente.html
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo allerseits ich hab da mal eine Frage.
Und zwar will ich in Excel Daten einer SPS auslesen, und diese Daten dann auch wieder automatisch zurückgeben an die SPS, sodass ich quasi einmal im VBA auf start klicke und dann dauerhaft daten hin und her geschickt werden können.
Mein Problem ist das "automatische" datenversenden. Wenn ich aktiv auf Taster drücke, werden daten versandt, will aber nicht immer drücken müssen.

Ich hoffe es versteht jemand mein Problem und kann mir dabei helfen!?

MFG sneaky
 
Zuletzt bearbeitet:
Da kannst du einen Timer aufziehen und immer wenn der auslöst, prüfen ob du etwas schreiben müsst und dann einen "Write" auf die entsprechenden OPC Items machen.

Schöner wird es wenn du nur dann schreibst wenn es erforderlich ist, also beispielsweise Daten neu berechnet worden sind. Z.B. im DataChange die Daten wegkopieren und dann mit Timer Event "Berechnungen" durchführen und wenn es neue Werte gibt diese dann auf den Server schreiben.

HINWEIS: Ein Schreibaufruf bei OPC geht IMMER auf das "Device" also bis runter in die SPS. Das bedeutet auch dass ein Kommunikationsauftrag/Telegramm an die SPS geht und diese damit "belästigt" wird. Daher sollten immer so VIELE Daten wie möglich in EINEM OPC-Write-Aufruf gepakt werden und NICHT viele Aufrufe mit nur einem Item gemacht werden. Anders gesagt: wenn der Client sich blöd verhält, kann die SPS-Kommunikation in die Knie gezwungen werden.

ACHTUNG: was auf keinen Fall gemacht werden sollte, ist direkt im DataChange Event die Daten "berechnen" und dann sofort wieder "Write" aufrufen. Dann besteht die Gefahr das während noch geschrieben wird wieder ein neuer DataChange Event rein kommt und sich das Ganze ineinander verschachtelt. Also immer schön entkoppeln z.B. über einen Timer.
 
Kannst du mir mal ein Beispiel geben wie das mit den OPC Items aussieht? Will das mit der OPC Data Control machen wo man die einzelnen Variablen von einem DB100 Baustein mit z.B. S7Buttons verknüpft!? Also quasi mit der Userform Oberfläche von VBA!? Kenn mich nämlich nich soo arg aus mit der snytax bei VBA !

MFG sneaky
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Excel hat kein Timer-Control wie bei VB aber eine OnTime Methode am Application Object.

Beispiel gibt es hier: http://www.cpearson.com/excel/OnTime.aspx

Das OPC Data Control kann zum einfachen verschalten genommen werden, aber es ist auch eine Programmierschnittstelle dran mit der man viele schöne Dinge tun kann. Beispiele sollten auf der SimaticNET CD mit drauf sein und auch installiert worden sein. Beschreibung der Schnittstelle ist im Handbuch (heißt Band 2 glaube ich)
 
Also, Ich konkretisier mal mein Problem!

-Ich habe eine SPS Simatic 7 300 maschine
-Ich habe Excel 2003 mit VBA
-OPC-Server 6.3

Nun möchte ich mit der VBA Userformoberfläche in der ich Buttons einfügen kann, das ich Daten hin und her schicken kann, und das automatisch!
ich habe in der SPS einen Datenbaustein DB100 generiert und kann auf diese variablen zugreifen über VBA! bekomme Daten an die SPS und von der SPS!
Mein Problem ist aber, das ich immer nur durch klicken des jeweiligen Tasters eine Übertragung bekomme, das bedeutet ich bekomme keine "Automatisierung" rein wenn ich dauernd irgendwo draufdrücken muss.
Habe mal nen einfachen code dafür verwendet:


Private Sub S7vbBttn3_Change(Value As Boolean)
If S7vbBttn3.Value = True Then
Cells(1, 1).Value = "X"
Else
Cells(1, 1).Value = ""
End If
If Cells(1, 1).Value = "X" Then
S7vbBttn2.Value = True
Else
S7vbBttn2.Value = False
End If
End Sub



Also die S7vbBttn... sind die Buttons die ich mit der SPS über den Datcon verknüpft habe.
Der Wert des 2. Buttons soll normal automatisch (ohne direktes klicken), deshalb S7vbBttn2.value = True bzw False, übertragen werden.
Die SPS erkennt es aber nur durch aktives Drücken des jeweiligen Tasters!






Hoffe ich habe es nicht alzu kompliziert erklärt..





mfg sneaky
 
Ich habe mir überlegt es dann vllt auch mit den OPC-Items /groups usw zu programmieren, aber weiss nich genau wie nich das machen kann!?

Unter SYM: finde ich variablennamen wie:
"SIMATIC 300(1).CPU 315-2 DP.Test.A1"


Vllt kann ich dann eine direkte adressierung durch die variablen erreichen, ohne es über die Taster zu realisieren, nur wie is halt mein Problem.


mfg sneaky
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So wollte mal Danke an der PPC Dr aussprechen hab jetzt hin bekommen.

Hab da aber noch ein ähnliches Problem aber bei dem du mir sicher auch weiter helfen kannst.
 
Zurück
Oben