CODESYS - das IEC 61131-3 Programmiersystem

Willkommen im offiziellen CODESYS - Forum von 3S-Smart Software Solutions | A member of the CODESYS Group
Deutsche Version English version russian version 
Aktuelle Zeit: Do Nov 15, 2018 2:08 am

Alle Zeiten sind UTC




Ein neues Thema erstellen  Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Di Mai 29, 2018 12:38 pm 
Offline

Registriert: Di Mai 29, 2018 8:57 am
Beiträge: 5
Hallo,

ich hätte ein paar Fragen zur OPC UA Server Funktion von Codesys.
Im Rahmen eines Uniprojektes arbeite ich gerade daran, ein bestehendes Codesys Steuerungsprogramm per OPC UA ansprechbar zu machen. Es handelt sich um eine recht simple Steuerung einer Kaffeemaschine, die auf einem Raspberry Pi 3 ausgeführt wird. Ziel ist es, die Ausführung bestimmter Funktionsblöcke des Steuerungsprogramms von einem OPC UA Client aus zu triggern.
Ich habe es bereits geschafft, die OPC UA Funktionalität in der Symbolkonfiguration zu aktivieren und konnte daraufhin auch zur Laufzeit mit UAExpert per OPC UA die Steuerungsvariablen auslesen.
Leider funktioniert das ganze nicht mehr, sobald ich in Codesys den Simulationsmodus anschalte und die Software lokal am PC statt auf dem PI ausführe. In diesem Fall finde ich in UAExpert keinen OPC UA Server in der Discovery, und eine direkte Verbindung zum Endpoint opc.tcp://<meineIP>:4840 klappt auch nicht.
Dazu sei noch gesagt, dass ich gerade auf einem anderen PC arbeite als auf demjenigen, auf dem ich die OPC UA Verbindung erfolgreich herstellen konnte, aber da ich das Projekt auch hier erfolgreich bauen und starten kann denke ich nicht, dass das der Grund für mein Problem ist. Ich vermute eher, dass es am Simulationsmodus liegt.

Daher meine Fragen:
  1. Funktioniert der Codesys OPC UA Server überhaupt, wenn das Programm im Simulationsmodus läuft?
  2. Wie kann ich den OPC UA Server in Codesys weiter konfigurieren? Ich würde gerne Endpoint URL, den verwendeten Port und ggf. sogar NodeIDs der freigegebenen Variablen selbst einstellen.
  3. Bezieht sich das Tool "OPC Configurator" auch auf den OPC UA Server, oder ist das nur für OPC zuständig? Soweit ich weiß ist OPC ja die Vorgängertechnologie von OPC UA und nicht direkt kompatibel.
  4. Und aus Interesse: gibt es eine Möglichkeit, Funktionsbausteine als OPC UA Method im Namespace des Servers bereitzustellen, sodass ich diese von einem OPC UA Client aus direkt aufrufen kann?

Ich bin für jede Hilfe sehr dankbar!

Falls das relevant ist: ich nutze für die Simulation Codesys V3.5 SP12 Patch 4 (32 bit)


Nach oben
   
BeitragVerfasst: Do Mai 31, 2018 4:31 am 
Offline
Site Admin

Registriert: Mo Sep 05, 2005 8:42 am
Beiträge: 2953
Hallo,
Zu deinen Fragen:
1. Nein der OPCUA Server geht in Simulation nicht allerdings hast du ja auf deinem PC Control Win die
Du ja einfach starten kannst und dich darauf einloggen kannst. Dann geht der OPCUA Server.
2. Der UA Port lässt sich über das SPS Konfig file CODESYSControl.cfg einstellen ... liegt unter c:/ProgramData/CODESYS Url und
NodeID usw sind fest eingestell lassen sich nicht ändern am besten mal mit OPCUA EXPERT browsen ..
3. OPCDA Konfigurator - nur für OPCDA
4. Aktuell öeider noch nicht wird aber kommen ( allerdings dauert das noch)
Grüsse
Edwin


Nach oben
   
BeitragVerfasst: Mo Jun 04, 2018 9:40 am 
Offline

Registriert: Di Mai 29, 2018 8:57 am
Beiträge: 5
Hallo Edwin,
vielen Dank für deine Antwort, die hat mir schon sehr geholfen!
Zu deinen Antworten hätte ich noch weitergehende Fragen:
1. Inwiefern muss ich das Codesys Projekt anpassen, damit ich mich in Control Win einloggen kann?
Muss ich z.B. ein neues Gerät im Projekt hinzufügen (das "Originalprojekt" ist ja für Codesys Control for Raspberry Pi geschrieben)?
Ich habe hier gerade das Problem, dass ich im Projekt unter Device > Kommunikation wenn ich "Netzwerk durchsuchen..." auswähle kein Gerät finde. (Siehe angehängter Screenshot).
2. Gibt es für das Configfile irgendwo eine Dokumentation der möglichen/nötigen Angaben und der Syntax?

Danke noch einmal für die schnellen und hilfreichen Antworten!

Grüße
Jakob


Dateianhänge:
Dateikommentar: Bei "Netzwerk durchsuchen..." finde ich trotz laufender PLC kein Gerät
Screenshot1.png
Screenshot1.png [ 127.6 KiB | 2566 mal betrachtet ]
Nach oben
   
BeitragVerfasst: Mo Jun 04, 2018 9:47 am 
Offline
Site Admin

Registriert: Mo Sep 05, 2005 8:42 am
Beiträge: 2953
Hi,
ganz einfach:

1. Update Device / Gerät aktualisieren im Gerätbaum (rechtsclick)
dann COntrol WIn auswählen.
Also das Projekt auf Control Win umändern über diesen Weg.

>2. Gibt es für das Configfile irgendwo eine Dokumentation der möglichen/nötigen Angaben und der Syntax?
nein leider nicht, sorry es gibt nur die online Hilfe:
https://help.codesys.com/webapp/_cds_wi ... n=3.5.12.0
aber da ist das nicht drin.
Für OPC UA den Port ändern:

[CmpOPCUAServer]
NetworkPort=4841


Grüße
Edwin


Nach oben
   
BeitragVerfasst: Mo Jun 04, 2018 11:01 am 
Offline

Registriert: Di Mai 29, 2018 8:57 am
Beiträge: 5
Perfekt, das hat geklappt!
Jetzt läuft es so wie ich es brauche, vielen Dank für die schnelle Hilfe Edwin!


Nach oben
   
BeitragVerfasst: Mi Jun 06, 2018 9:27 am 
Offline

Registriert: Di Mai 29, 2018 8:57 am
Beiträge: 5
Hallo,

ich habe noch einmal eine Frage zu den OPC UA Möglichkeiten von Codesys.

Ist es möglich, einen in Codesys definierten Enum Typ per OPC UA bereitzustellen, sodass Variablen die in Codesys von diesem Enum Typ sind auch im Namespace des OPC UA Servers diesen Datentyp beibehalten? In der Symbolkonfiguration habe ich den Enum Typ nicht gefunden.
Mein konkretes Beispiel kann man in den beiden angehängten Screenshots sehen; leider ist der Datentyp der Variable in OPC UA nicht mehr "PACKML_STATUS" sondern Int16.
Damit kann ich zwar auch arbeiten, aber da OPC UA ja Enums eigentlich auch unterstützt frage ich mich, ob ich nur etwas falsch konfiguriert habe.

Grüße
Jakob


Dateianhänge:
Dateikommentar: Oben sieht man eine konkrete Variable vom definierten Enum Datentyp, unten sieht man diese Variable in UA Expert (also so, wie sie vom Codesys OPC UA Server bereitgestellt wird).
Screenshot3.png
Screenshot3.png [ 33.83 KiB | 2546 mal betrachtet ]
Dateikommentar: Links sieht man den definierten Enum Typ, in der Symbolkonfiguration habe ich ihn leider nicht gefunden.
Screenshot2.png
Screenshot2.png [ 19.71 KiB | 2546 mal betrachtet ]
Nach oben
   
BeitragVerfasst: Mo Jun 11, 2018 12:05 pm 
Offline
Site Admin

Registriert: Mo Sep 05, 2005 8:42 am
Beiträge: 2953
Hi,
das geht schon.
Allerdings nur wenn Support OPC UA Features aktiviert ist.
Der UaExpert zeigt die Enum Werte nur im Attributes Fenster mit an und
auch nur dann, wenn der Wert zum Ändern markiert wird. Die Information steht über OPC UA aber zur Verfügung.

Grüße
Edwin


Dateianhänge:
OPCEnum2.jpg
OPCEnum2.jpg [ 68.67 KiB | 2515 mal betrachtet ]
OPCENUM.jpg
OPCENUM.jpg [ 88.05 KiB | 2515 mal betrachtet ]
Nach oben
   
BeitragVerfasst: Do Jul 12, 2018 10:04 am 
Offline

Registriert: Di Mai 29, 2018 8:57 am
Beiträge: 5
Hi,

vielen Dank noch einmal für die bisherige Hilfe, das hat mich schon sehr voran gebracht!

An sich funktioniert jetzt alles so, wie es geplant war. Jetzt würde ich zusätzlich gerne noch die Security verbessern.
Dazu würde ich den Codesys Server gerne so konfigurieren, dass er nur Sessions mit gültiger Userauthentifizierung (Username + Passwort) zulässt.
Laut dem Profil "Micro Embedded Device Server" das Codesys OPC UA nutzt müsste das möglich sein. Leider finde ich nirgends Informationen dazu wie ich das konfiguriere. Vermutlich muss ich das auch in der CODESYSControl.cfg machen?

Zusätzlich würde ich gerne als SecurityMode SignAndEncrypt und als SecurityPolicy Basic256 oder Basic256Sha256 benutzen, wie kann ich das konfigurieren und wo werden die Zertifikate gespeichert, die Codesys dafür nutzt?

Grüße und einen schönen Tag
Jakob Lammel


Nach oben
   
BeitragVerfasst: Di Jul 17, 2018 5:31 am 
Offline
Site Admin

Registriert: Mo Sep 05, 2005 8:42 am
Beiträge: 2953
Hi,
das geht erst mit 3.5SP13 (ist ja nun verfügbar) verwenden und dann User anlegen in CODESYS + Symbolconfiguration usw..
Ich denke es müsste hier in der Hilfe beschrieben sein:

https://help.codesys.com/webapp/_cds_ru ... ter-opc-ua

Grüße
Edwin


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 9 Beiträge ] 

Alle Zeiten sind UTC


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de