B&R und Siemens via OPC UA verbinden

Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Ich hätte ein ähnliches Problem Ich würde gerne eine B&R X20-CP1584 mit einer S7-1211 via OPC-UA sprechen lassen. Die S7-1200 ist der Server da diese nur dies kann, und die X20-CP1584 als Client.

Ich habe es mit zwei B&R Steuerungen schon gemacht und funktioniert auch, somit wollte ich das mit der S7 als Partner auch machen, aber hier komme ich irgendwie nicht weiter. Stehe evtl. hier auf den schlauch, somit bitte um einen anstoß.

Habe es so gemacht, wie in der Anleitung von B&R beschrieben:

hier wird ja beim NamespaceUri : urn:B&R/pv/ eingetragen
1678287605583.png
1678287685474.png

Das mit der Verbindungaufbauen funktioniert mit der Siemens aber bei dem 2-Step geht er nicht weiter:
1678288013546.png
Aber was muss ich bei der Siemens für einen NamespaceUri eintragen und irgendwie finde ich in den Anleitungen auch nichts passendes?

1678287775807.png

Hier kommt die Meldung bei der B&R bei der Funktion UA_GetNamespaceIndex.ErrorID aber diese finde ich auch nicht in der Anleitung
1678288097444.png

Bitte um einen kurzen Anstoß.

Dankeschön
 
Warum verwendest du nicht das OPC System im Automation Studio? Warum der Verbindungsaufbau über die Applikation? OpcUa Any Device und die Reise geht los.

Dann verwendest du ein Tool wie z.B. UaExpert, und Browst alles raus.

Grüße

Markus
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Warum verwendest du nicht das OPC System im Automation Studio? Warum der Verbindungsaufbau über die Applikation? OpcUa Any Device und die Reise geht los.

Dann verwendest du ein Tool wie z.B. UaExpert, und Browst alles raus.

Grüße

Markus
@da_kine: Das mit dem OPC UA Any Device hab ich mir auch schon angeschaut, aber ich wollte mir dieses Thema mit der Applikation auch durchgehen. Denn meine Idee wäre ja einen Funktionsbaustein zu haben, denn ich von außen mit den nötigen Daten beschreiben, somit wäre hier einmal eine Entwicklungsarbeit.

Idee:
Inputs wären die LoginName; LoginPassword; ServerEndpointUrl; NamespaceUri; InputOpcUaDaten; OutputOpcUaDaten; ReqRcvSnd

Die InputOpcUaDaten und OutputOpcUaDaten würden somit in einem DataObject drin stehen sind ja quasi Strings mit denen die Applikation die einzelnen Variablen zusammen verknüpft.

Somit hätte man einen Baustein der dir die Kommunikation macht und muss nicht einen Device anlegen....

Hoffe das dies evtl. den Zugang ein bisschen beschreibt was ich mir da, gedacht habe...

Nur jetzt beim testen mit der S7-1200 OPC-Server bin Ich noch nicht draufgekommen was man hier als NamespaceUri eintragen soll, damit dies hier auch funktioniert,...

Beste Grüße
 
Danke, dabei wollte ich das schon hineinschreiben aber hab mir gedacht, dass wird ja nicht das richtige sein da es Blau hinterlegt wird wie halt ein Link 🫣

hier sieht man halt hin und wieder einfach probieren
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Habe es nun lauffähig, hier war noch einmal der Unterschied zur B&R;
Das man hier anstelle IdentifierType := "String" --> "Numeric" nehmen soll...

NodeIDs_write[0].IdentifierType := UAIdentifierType_String;
NodeIDs_write[0].IdentifierType := UAIdentifierType_Numeric;

Im UAExpert: Habe Ich es auf der Seite dann gesehen
1678354984269.png

1678355009938.png
 
Vielleicht noch ein paar Bemerkungen am Rande zur S7 1200 und zur S7 1500.

Bei der S7 1200 muss man ein Serverinterface Konfigurieren:

1679084304793.png

Das Serverinterface erscheint dann auch im Namespacearray:

1679084420405.png

Dieser Namespace unterstützt aber nur Numeric als Identifier.

Bei einer S7 1500 kann die Standard-Server-Schnittstelle aktiviert werden:

1679084586337.png

Dann können auch alle freigegebenen Variablen ohne explizierter Serverschnittstelle gebrowsed werden:

1679084694811.png

Hier sind die Identifier dann auch Strings:


1679084741335.png

Es wird dann aber auch der Namespace 3 "http://www.siemens.com/simatic-s7-opc-ua" statt der erzeugten Serverschnittstelle verwendet.

Im Screenshot wurde Out_Int1 einmal über die Standard-Serverschnittstelle und einmal über die Server-Schnittstelle_1 eingefügt. Es wird aber bei beiden auf fbOPC_DB."OPC_DATA.Out_Int1 verwiesen, was oben auch zu sehen ist.

Probleme hat das auf der B&R Seite gemacht, da ich per UA_LIB in gleicher Art und Weise auf beide Steuerungen zugreifen wollte, was dann aber nicht ging und andere Einstellungen notwendig machte:

1679085733507.png

An die TIA Spezialisten hier: Falls ich auf der S7 Seite was falsch ausgedrückt habe, bitte korrigieren.

PS: der Zugriff über die "Server-Schnittstelle_1" auf die S7 1500 klappt auch, da hier die Serverschnittstelle analog zur S7 1200 konfiguriert ist. Persönlich finde ich die Adressierung über die Standard-Server-Schnittstelle aber um einiges übersichtlicher.
 
Hallo @GeWer & @da_kine,

jetzt hätte ich noch eine Frage weißt du evtl. wie man in der Siemens S7-1500 für mehrere verschiedene Steuerungen einen eigenen OPCUA-Server macht,...

Denn der Sinn dahinter wäre das ich eine Visualisierung habe InTouch und unterschiedliche Partner B&R-Steuerungen,... es brauchen aber diese Steuerungen unterschiedlichen Zugriff, dies habe ich ja schon auf die DB's aufgeteilt und zugewiesen aber leider sehen hier alle die Schnittstellen und dies finde ich nicht ganz schön...

Hättest du hier einen Ansatzt oder geht es nicht da die S7-1500 ein OPC_UA Server ist?

Edit.: hier könnte ich dies umdrehen das die B&R der Server ist und die 1500er der Client.

1695649569599.png1695649548166.png

BG Daniel
 
Zuletzt bearbeitet:
Hallo @da_kine ,

Jetzt verstehe ich aber etwas nicht ganz?

im UAExpert sehe ich das was unter dem User freigegeben ist aber im Tia nicht,... habe ich hier etwas falsch auch unter dem anderen USer der alles sieht ist das so nur Objekt zuerst ist ein schwarzes kästchen zum auseinanderklappen aber da kommt nichts..

1695884980694.png1695885020649.png
 
Zurück
Oben