TIA Kommunikation S7-1510SP OPC Client <-> Beckhoff CX OPC Server

OPC_Tester

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen!

Ich habe auf einer CX5130 den Twincat OPC Server (TcOpcUaServer) installiert. In TIA V15.1 versuche ich nun vergeblich mit der S7-1510SP (FW 2.6.1) als OPC Client eine Verbindung zu dem Server aufzubauen. In den Client-Schnittstellen wird der Server und die freigegeben Variablen auch gefunden, jedoch bekomme ich keinen Verbindungsaufbau mit OPC_UA_Connect. Über den SFB OPC_UA_ConnectionGetStatus erhalte ich den Fehlercode A000_0105. Andere Clients, wie z.B. der OPC Scout, funktionieren tadellos.

Über Tipps wäre ich sehr dankbar, da ich mich nun schon eine ganze Weile damit rumschlage.


Vielen Dank!
OPC_Tester
 

Anhänge

  • OPC_Client2.zip
    978,1 KB · Aufrufe: 18
Zuletzt bearbeitet:
Moin,

welchen Fehler bekommst du denn beim OPC_UA_Connect? Denk daran, dass es sich um azyklische Bauteine handelt, d.h. du musst bei ERROR = TRUE im gleichen Zyklus den STATUS wegsichern (z.b. in stat Variable).

Ansonsten gibt es für den Client inzwischen auch ein Anwendungsbeispiel, bzw. einen fertigen Baustein von Siemens.
https://support.industry.siemens.com/cs/de/de/view/109762770
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin,

vielen Dank für den Tipp und den Link zum Anwendungsbeispiel von Siemens.
Leider hat der Baustein auch kein besseres Resultat gezeigt. Getriggert bekomme ich beim OPC_UA_Connect den Fehler 8005_0000. Der (Siemens-) Client will einfach keine Kommunikation zum Server aufbauen.
 
Du könntest mal eine Wireshark Aufzeichnung anfertigen, dann kann ich dir evtl. mehr sagen.
 
OPC_UA_Wireshark.JPG

Hallo,
hier der Wireshark-Auszug.
192.168.20.99 ist der OPC Server, 192.168.20.201 ist die S7-1510SP als Client. Es wird wohl vom Server die Verbindung abgebrochen, wenn ich das richtig deute, oder?
 
Ich teste hier auch gerade mit den methoden rum.

Als erstes solltest du für die ersten tests ohne security arbeiten

Ich habe hier 2 1515er aufgebaut und nutze auf dem pc den UaAnsiCServer-Demo.
unter den s7 funktioniert es gut (ohne security (mit hab ich noch nicht probiert)). eine ist dabei der client die andere der server.
mit der server-cpu wird auch auf den demserver auf dem pc zuggegriffen

hier ein paar notizen zu meinem bisherigem stand
Code:
getestet mit UaAnsiCServer-Demo
lan oder wlan macht keinen unterschied.

error 8005
server-adresse hat host namen. s7 greift über ip zu.
möglicherweise kann der name nicht aufgelöst werden. bleibt bei connect hängen.

ändert man in der config den host-name auf ip funktioniert es bei verbindungen ohne security.


error 8013
erscheint wenn security aktiviert aber das client-certifikat noch nicht akzeptiert.


error 8018 
BadCertificateUseNotAllowed = 0x80180000
ua-expert meldet badcertificatehostnameinvalid
s7 baut keine verbindung auf
passiert wenn man den server mit der ip-adresse startet im certifikat aber der hostname eingetragen ist.

das scheint schon zu passieren wenn der connect-string nicht zum certifikat passt
z.b. server hat namensauflösung. opc.tcp://notebook17:48020
uaexpert. opc.tcp://192.168.1.11:48020 meldet den fehler
uaexpert. opc.tcp://notebook17:48020 meldet keinen fehler

ping -4 hostname liefert ip von virtual-box.
vbox -ip deaktiviert ping -4 liefert netzwerkadresse.
s7 meldet denoch fehler8005 wenn wieder der hostname im server eingetragen ist

s7 haken weg bei server-zertifikat zur laufzeit automatisch akzeptieren liefert fehler 80a1
 
Zuletzt bearbeitet:
Meine Vermutung bei OPC_Tester ist ebenfalls, dass der Server sich mit Namen meldet. Dies würde ich durch den Trace bestätigen. Wenn das der Fall ist, müsste man einen DNS Server einsetzen udn in der Steuerung konfigurierten. Zusätzlich müsste man statt der IP den Namen nutzen (im Anwenderprogramm).
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das mit dem DNS funktioniert auch nicht so wirklich. zumindest bei mir in der Firma. Dort läuft logischerweise ein DNS-server.
Beheben kann man das evtl wenn man mit Zertifikat arbeitet und im Zertifikat die IP-Adresse mit hinterlegt ist. Aber keine Ahnung wie man sowas hinbekommt.
Im Anwenderprogramm (S7-1500er) kann man leider nicht mit Namen arbeiten.

aus der tia-hilfe
Somit verknüpft ein X509-Zertifikat eine Identität (Name eines Programms, einer Person oder einer Organisation) mit dem öffentlichen Schlüssel des Programms, der Person oder Organisation.
Prüfung beim Verbindungsaufbau
Beim Verbindungsaufbau zwischen Client und Server prüfen die Teilnehmer alle Informationen aus dem Zertifikat, die zur Feststellung der Integrität notwendig sind, z. B. Signatur, Gültigkeitsdauer, Applikationsname (URN) und ab Firmware Version V2.5 auch die IP-Adressen des Clients im Client-Zertifikat.

Außerdem wird der Gültigkeitszeitraum geprüft, der im Zertifikat hinterlegt ist. Die CPU-Uhr muss daher gestellt sein und Datum/Uhrzeit müssen sich im Gültigkeitszeitraum befinden, sonst findet keine Kommunikation statt.
 
Also mit DNS Server und der entsprechenden Anpassung im Anwenderprogramm funktioniert das bei mir. Der DNS muss den Namen natürlich entsprechend auflösen und der CPU muss der Server bekannt sein.
Mit FW 2.6 wird die IP übrigens nicht mehr geprüft. Hier wurde die Spezifikation anscheinend bei 2.5 falsch interpretiert.
 
Zurück
Oben