S7 OPC-UA Server

 Traeger Industry Components GmbH

© by TIS

Version 1.36

S7 OPC UA Server Mobile HMI


  • S7-1500
  • S7-1200
  • S7-300/400 mit TCP/IP on Board / PN oder CP 343-x/443-x
  • S7-300/400 MPI/Profibus mit S7-LAN
  • Win AC RTX
  • S7-200 mit CP 243-1
  • S7-Soft-PLC
  • SIMATIC-S5 über S5-LAN

Windows

  • 10
  • 8
  • 7

Windows Server

  • 2012 R2
  • 2012
  • 2008 R2
  • 2008
  • Visualisierung / Steuerung via Web-Browser / Mobilgerät (optional)
  • OPC-UA-Server möglich
  • Benutzerkontensteuerung
  • automatische Generierung der Anzeige
  • eigene Skalierungen definieren
  • Visualisierung
  • Steuerung
  • Datenaustausch via OPC-UA

Starten Sie „S7 OPC UA & Mobile HMI Setup 1.0.36.0.exe“. Bei der Installation wird geprüft, ob Sie die benötigten Softwarepakete installiert haben.

  • Systemsteuerung → Programme und Feautures → S7 OPC UA & Mobile HMI → Deinstallieren
  • den Ordner, wo die Konfigurationsdaten gespeichert sind entfernen


Nach dem Start erhalten Sie folgende Meldung:
Servereinstellungen

Wählen Sie den Speicherort für die Serverdaten aus und klicken auf OK.

Anschließend werden Sie aufgefordert das Adminpasswort zu setzen:
Passwort Admin eingeben

Im darauf folgenden Startfenster loggen Sie sich als admin und Ihrem gewählten Passwort ein:
Startfenster

Die Anwendung ist unterteilt in den Menü- und Anzeigebereich.

Menü

Name Beschreibung
home Startseite aufrufen
eine Seite zurück
eine Seite vorwärts
license Machine Code generieren, Lizenzschlüssel eingeben
settings Servereinstellungen aufrufen
info Informationen über das Produkt und die Lizenzierung

Anzeigebereich

Startbildschirm
Zeigt die aktuell ausgewählte Seite mit den verfügbaren Daten und Optionen an.
Im obigen Bild sehen Sie z.B. die Startseite.

Felder die mit * makiert werden, müssen ausgefüllt werden.

Sie erreichen alle verfügbaren Seiten mit einem Klick auf Menüpunkt. Folgende Menüpunkte sind verfügbar:
Hauptmenü

Menüpunkt Beschreibung/Aufgabe
Home Startseite aufrufen
Benutzerverwaltung Verwalten Sie Ihre Benutzer und legen den erlaubten Zugriff auf die Daten fest
Verbindungen Legen Sie die Verbindungen zu Ihren Siemens-SPSen fest
Datenpunkte Verknüpfen Sie die Verbindungen mit den gewünschten Daten-Adressen in der SPS. Anhand der Baumstruktur können Sie sofort Ihre Daten vorsortieren
Skalierungen Hier haben Sie die Möglichkeit verschiedene Steuer- und Eingabeelemente für die Ansicht zu definieren
HMI-Config Gestalten Sie die gewünschte Ansicht mit Haupt- und Unterseiten und fügen den jeweiligen Datengruppen die gewünschten Datenpunkte hinzu
OPC-Konfiguration Sammelmenü für OPC-Einstellungen
OPC-Server OPC UA Server erstellen und verwalten
OPC-Client Zertifikate Zertifikate von OPC UA Clients für die authentifizierte Verbindung zum OPC UA Server. Zudem weisen Sie dem Benutzer die gewährten Rechte zu

Standardfunktionen im Menüpunkt:

Funktion Aufgabe
Neu neue Einstellung hinzufügen
Editieren Einstellungen bearbeiten
Löschen Einstellungen löschen

Benutzerverwaltung

Benutzerverwaltung
Übersicht existierende Benutzer.

Mit einem Klick auf Neu fügen Sie einen neuen Benutzer hinzu und erhalten folgenden Dialog:
Benutzer hinzufügen

Name Funktion
ID Benutzer zugewiesene ID
Full Name Benutzername der angezeigt wird
Is Active Benutzer darf sich anmelden
Login Name Name zur Identifikation des Benutzers
Password Passwort für den Login
Admin Groups Zuweisen zur gewünschten Admingruppe(n). Siehe Tabelle Benutzergruppe
User Groups Zuweisen zur gewünschten Benutzergruppe(n). Siehe Tabelle Benutzergruppe
Benutzergruppe Funktion
A1 Admin ohne Einschränkung
A2 OPC-Admin, Datenpunkte und OPC relevante Daten verwalten
A3 HMI-Admin, Datenpunkte und HMI-Seiten verwalten
U1 - U8 Benutzergruppe 1 bis 8. In Benutzergruppen können Sie mehrere Benutzer zusammenfassen. Dieser Gruppe können Sie anschließend, an Ihre Anforderungen angepasst, unterschiedliche Datenpunkte zuweisen.
Zum Beispiel:
Benutzergruppe U1 = alle Schichtführer (sieht alle Maschinen und kann diese steuern),
U2 = Maschinenführer H2 (sieht nur die Maschinen in seinem Aufgabenbereich)

SPS-Verbindungen

Verbindungen
Übersicht konfigurierter Siemens SPS-Verbindungen.

Neu

Name Funktion
ID Vom System zugewiesene ID
Name Name der Verbindung in der Anzeige
IP-Adresse IP-Adresse unter der die SPS erreichbar ist
Rack Racknummer der CPU
Slot Steckplatz der CPU
Gerätetyp Typenpezeichnung der SPS. Verfügbare Typen:
Logo
S7200
S7300_400
S71200
S71500
Verbindungstyp Default: Standardverbindung zur SPS (OperationPanel)
OperationPanel: Verbindung über den OP-Kanal
ProgrammerDevice: Verbindung über den PG-Kanal
Other: Verbindung über den Other-Kanal
Connect Timeout Timeout in ms für Verbindungsaufbau
Recieve Timeout Timeout in ms für das Empfangen der Daten von der SPS
Transmit Timeout Timeout in ms für das Senden zur SPS
BreakDetection Timeout Keepalive-Time für die Überwachung der TCP/IP-Verbindung (interessant bei großen Intervallen)
User Break Detection eingestellter BreakDetection Timeout wird verwendet
Ref Anzahl der Datenpunkte die auf diese Verbindung verweisen

Datenpunktdefinition

Datenpunkte
Hier werden die Adressen der Datenpunkte definiert, die als Datenquellen dienen.
Der erste Knoten ist immer die Verbindung. Einer Verbindung kann man einen

  • neuen Knoten
  • neuen Datenpunkt

hinzufügen.

Name Beschreibung
Links Neu Fügt unter dem ausgewählten Knoten einen neuen Knoten hinzu
Rechts Neu Hinzufügen eines Datenpunktes
Editieren Umbenennen des ausgewählten Punktes
Löschen Löschen des ausgewählten Punktes

Datenpunkt hinzufügen

Name Beschreibung
ID vom System zugewiesene ID
Name Anzeigename des Datenpunktes. Wenn leer, wird die Adresse (ohne Leerzeichen) als Name verwendet.
Verbindung wird zu dieser Verbindung hinzugefügt (die Verbindung muss bereits erstellt worden sein)
Adresse zu verarbeitende Daten-Adresse in der SPS z.B. DB1.DBB 0 für Datenbaustein 1, Datenbyte 0
Datentyp Gibt den Datentyp an, den der Softwaretreiber von der SPS liest
Verfügbare Datentypen
Arraylänge Länge des zu lesenden Arrays
Anzahl der zu erstellenden, konsekutive DPs Es können automatisch mehrere, hintereinander liegende Datenpunkte erstellt werden. Wenn die Anzahl größer 1 ist, wird jeweils die Endadresse eines Datenpunkts berechnet und diese als Adresse für den jeweils nächsten Datenpunkt eingetragen.
Beispiel:
Name:Temperatur, Adresse: DBW100.DBD10, Typ: Int16, Anzahl: 3
Erzeugt werden:
Name: Temperatur_1 Adresse: DBW100.DBD10
Name: Temperatur_2 Adresse: DBW100.DBD12
Name: Temperatur_3 Adresse: DBW100.DBD14
Aktualisierungsintervall (ms) Zeitraster der Datenaktualisierung
Nur lesen Daten können nur gelesen werden. Auch wenn dieser in der GUI als Sollwert eingetragen wird, kann auf diesem DP nicht mehr geschrieben werden
Ist Aktiv Datenpunkt kann verwendet werden
Ref Anzahl der verwendeten Verweise

Beispielvideo verschieben von Datenpunkte:

Datenpunkte automatisch erstellen:

Wird der Name leer gelassen, wird automatisch die SPS Startadresse als Name genommen.
Ansonsten wird am Ende vom Namen die Anzahl hinzugefügt z.B:
Name: Status
Länge: 4
Generierter Variablenname:

  • Status_1
  • Status_2
  • Status_3
  • Status_4


SPS Variablen adressieren:

Operand

Name Abkürzung (Siemens, DE) Abkürzung(IEC)
Eingang E I
Ausgang A Q
Merker M M
Peripherie P P
Zähler Z C
Datenbaustein DB DB
Timer T 16

Datentypen

Name Operant Bits Reichweite Beschreibung Array
BOOL X 1 0 bis 1 Bit-Wert wahr (1) oder falsch (0) x
BYTE B 8 0 to 255 Unsigned 8-Bit Ganzzahl x
WORD W 16 0 to 65.535 Unsigned 16-Bit Ganzzahl (Word) x
DWORD D 32 0 to 232 -1 Unsigned 32-bit Ganzzahl (Double Word) x
CHAR B 8 A+00 to A+ff Unsigned 8-Bit-Zeichen im ASCII-CODE x
INT W 16 -32.768 to 32.767 Signed 16-Bit-Ganzzahl x
DINT D 32 -231 to 231-1 Signed 32-Bit-Ganzzahl x
REAL D 32 +-1.5e-45 to +-3.4e38 IEEE754 32-bit single precision floating point Zahl x
S5TIME W 16 00.00:00:00.100 to 00.02:46:30.000 binär codierte Dezimalzahl (BCD), die eine Zeitspanne repräsentiert
TIME D 32 00.00:00:00.000 to 24.20:31:23.647 Signed 16-Bit-Ganzzahl, die eine Zeitspanne in Millisekunden darstellt
TIME_OF_DAY D 32 00.00:00:00.000 to 00.23:59:59.999 unsigned 16-Bit-Ganzzahl, die eine Zeitspanne in Millisekunden darstellt
DATE W 16 01.01.1990 to 31.12.2168 unsigned 16-Bit-Ganzzahl, die ein Datum in Tagen repräsentiert
DATE_AND_TIME D 64 00:00:00.000 01.01.1990 to 23:59:59.999 31.12.2089 binär codierte Dezimalzahl (BCD), die ein Datum und eine Uhrzeit repräsentiert
S7String B beliebig A+00 to A+ff ASCII-Code, max. 254 Bytes

Die Variablen setzen sich aus Operand und Datentyp zusammen. Beispiele:

Beispiele Datentyp Bsp. Siemens Bsp. IEC
Eingang Byte 1, Bit 0 BOOL E 1.0 I 1.0
Ausgang Byte 1, Bit 7 BOOL A 1.7 Q 1.7
Merker Byte 10, Bit 1 BOOL M 10.1 M 10.1
Datenbaustein 1, Byte 1, Bit 0 BOOL DB1.DBX 1.0 DB1.DBX 1.0
Eingang Byte 1 BYTE EB 1 IB 1
Ausgang Byte 10 BYTE AB 10 QB 10
Merker Byte 100 BYTE MB 100 MB 100
Peripherie Eingang Byte 0 BYTE PEB 0 PIB 0
Peripherie Ausgang Byte 1 BYTE PAB 1 PQB 1
Datenbaustein 1, Byte 1 BYTE DB1.DBB 1 DB1.DBB 1

Datenbaustein 1, Datenbaustein Typ bool, Adresse 1.0 → DB1.DBX 1.0
Datenbaustein 1, Datenbaustein Typ Byte, Adresse 1 → DB1.DBB 1
Peripherie Eingang, Typ DWORD, Adresse 0 → PED 0

Merkhilfe:
DB#.DBB # = Datenbaustein#.Datenbaustein Byte #
DB#.DBW # = Datenbaustein#.Datenbaustein Wort #
DB#.DBD # = Datenbaustein#.Datenbaustein Doppelwort #
# = Adresse

Dienst Einstellungen

  • Unter finden Sie die Einstellungen für den Dienst.

Dienst nicht installiert:
Dienst installieren

Dienst installiert:
Dienst wurde installiert und gestartet

Feld Beschreibung
HTTP Port Port für das Webinterface der Konfiguration/Anzeige
Install + Start Service Installiert die Anwendug als Dienst und startet diesen automatisch
Start Startet den Dienst manuell
Stop Stopt den Dienst, z.B. für Änderungen
Uninstall Service Installierten Dienst entfernen

Wenn Sie den Port ändern wollen, stoppen Sie den Dienst und nehmen die gewünschte Änderung vor und starten diesen wieder.

Damit externe Benutzern auf die Anwendung zugreifen können, müssen folgende Firewallregeln hinzufügt werden:

  • unter Dienst eingestellten Port freigeben
  • ggf. eingestellte OPC Serverports freigeben


OPC Server

Funktion Beschreibung
 Alle Server neustarten Startet alle OPC-Server neu
Server Name Anzeigename für die interne Verwaltung
User Access Berechtigte Benutzergruppen werden angezeigt.
Allgemeine und OPC Administratoren haben generell auf jeden Server Zugriff
Everyone Access E1 = anonymer Login freigeschalten
keine Anzeige = nur eingestellte Benuztergruppen haben Zugriff
URI Adresse für den Verbindungsaufbau
OPC-Status Status vom OPC-Server mit Möglichkeit der Steuerung des Servers
Wenn Sie mit der Maus über das Statusbild fahren, erscheint ein Tooltip zum aktuellen Status
Status Beschreibung
Neutral Server wurde noch nicht gestartet
Ausführung Server wird gestartet/gestoppt
OK Server ist aktiv
Fehler Es ist ein Fehler aufgetreten
Aktion Beschreibung
Server starten OPC-Server starten
Server neustarten OPC-Server neustarten
Server stoppen OPC-Server stoppen

Neuen Server erstellen (Neu):

OPC Server erstellen

Name Beschreibung TCP HTTP
Server Name Anzeigename
Transport Art der Datenübermittlung Binary Protocol, ist effizienter als HTTP Verwendet HTTP-Webservices, höhere Kompatibilität mit Firewalls
Hostname Servername oder IP-Adresse für den Zugriff Nur relevant für die Erstellung des Zertifikats Relevant für die Erstellung des Zertifikats, und gibt den Host-HTTP-Header an, über den der HTTP-Request dem OPC-Server zugeordnet wird
Port Zielport des OPC-Servers Für jeden OPC-Server muss ein separater Port verwendet werden, da jeweils ein eigenes Socket für jede OPC-Verbindung verwendet wird Es kann der gleiche Port wie für die Konfiguration (z.B: 80) und wie für andere (HTTP-)OPC-Server verwendet werden, da ein HTTP-Handler für den Port, Hostnamen und URI-Path registriert wird
URI Path Zieladresse des OPC-Servers Nicht relevant, da der OPC-Server durch den Port identifiziert wird Gibt den URI-Path an, unter der HTTP-Requests diesem OPC-Server zugeordnet werden
Automatically create rejected user certificates abgelehntes Zertifikat wird automatisch abgespeichert und kann unter Clientzertifikate anschließend verarbeitet werden
User Access erlaubte Benutzergruppen
Everyone Access Erlaubnis das auch nicht definierte Benutzer auf den Server verbinden können

Beim Erstellen des OPC-UA Servers haben Sie die Möglichkeit ein Zertifikat hochzuladen oder automatisch ein Zertifikat erstellen zu lassen. Die hinterlegten Daten werden automatisch angezeigt.

Beispiel OPC Server via TCP

  • Server Name: Halle 1
  • Transport: TCP
  • Hostname: localhost
  • Port: 20000
  • Automatically create rejected user certificates: ausgewählt
  • Generate new self-signed Certificate: ausgewählt
  • Erlaubte Benutzergruppen: U1 und U3

TCP Einstellungen

Nach dem Speichern:
TCP Einstellungen nach Speichern

In der Übersicht erscheint folgender Eintrag:
TCP Einstellungen nach Speichern in der Übersicht

Nach dem Abspeichern können Sie mit einem Klick auf Starten den Server starten.

Beispiel OPC Server via HTTP

  • Server Name: Halle 1
  • Transport: HTTP
  • Hostname: localhost
  • Port: 80
  • URI Path: Halle1
  • Benutzergruppen: U1 und U2

OPC Server erstellen

Nach dem Speichern:
HTTP Einstellungen nach Speichern

In der Übersicht erscheint folgender Eintrag:
HTTP Einstellungen nach Speichern in der Übersicht

Nach dem Abspeichern können Sie mit einem Klick auf Starten den Server starten.

TIPP:
Wenn Sie die Anwendung noch nicht als Dienst erstellt haben oder die Anwendung nicht als Administrator ausführen, erscheint folgende Fehlermeldung:
OPC via HTTP

Da http-Verbindungen über einen Web-Service laufen benötigt man dafür administrative Rechte.

OPC Client Zertifikate

OPC CLient Zertifikate

OPC Benutzer anlegen (Neu):

Client Zertifikat hinzufügen

Feld Beschreibung
Name Frei vergebbar
Is Active ausgewählt Benutzer darf auf die OPC-Server zugreifen
Certificate File Zertifikatsdatei hochladen
Zertifikatsdaten
Subject Zertifikatsnehmer
CN: gemeinsamer Name
DC=
Issuer Zertifikatsausteller
Valid not before gültig ab
Valid not after Ablaufdatum Zertifikat
Fingerprint (SHA-1) Fingerabdruck vom Zertifikat
  • Geben Sie einen Namen ein
  • Laden Sie das Zertifikat
  • setzten Sie die gewünschte Berechtigung(en)
  • Starten Sie alle OPC-Server neu

Wenn Sie im OPC-Server eingestellt haben, dass abgelehnte Zertifikate gespeichert werden sollen, sehen Sie nach einem Verbindungsversuch z.B. folgenden Eintrag in Ihrer Verwaltung:
abgelehntes Zertifikat

  • klicken Sie auf das Editierensymbol

Einstellungen abgelehntes Zertifikat
Wenn Sie auf Download Zertifikat klicken, können Sie das Zertifikat

  • Öffnen
  • Speichern

Zertifikat speichern

  • Setzen Sie den Haken bei „Is active“
  • setzten Sie die gewünschte Berechtigung(en)
  • Starten Sie alle OPC-Server neu

mit OPC-Watch (OPC UA Client)

Mit unserem kostenfreien Werkzeug „OPC-Watch“ können Sie sich auf OPC-UA standartiesierte OPC-Server verbinden. Somit können sie auf bereitgestellte Daten zugreifen und Einstellungen vom OPC-Server einsehen und testen.

OPC-Server via TCP

OPC-Server via TCP

Es werden automatisch alle Einträge wie unter „Datenpunkte“ dargestellt.

Verbindung via TCP:

OPC-Server via TCP

OPC-Server via TCP

Verbindung via HTTP:

OPC-Server via TCP

OPC-Server via TCP

mit OPC-UA-Framework (C# Beispiel)

    OpcCertificateManager.AutoCreateCertificate = true;
 
    OpcClient client = new OpcClient("opc.tcp://localhost:20000/");
    client.UserIdentity = new UserIdentity("MayerHans", "MayerHans");
    client.UseDomainChecks = false;
 
	//Zertifikat automatisch akzeptieren
    client.Configuration.SecurityConfiguration.AutoAcceptUntrustedCertificates = true;
 
    OpcNodeId nodeId = new OpcNodeId("Halle_1/Heizung/Lager", 2);
 
    client.Connect();
 
    Console.WriteLine("ReadNode: {0}", client.ReadNode(nodeId));
 
    try
    {       
       client.WriteNode(nodeId, 14);
    }
    catch (Exception ex)
    {
       Console.WriteLine(ex.Message);
    }
 
    Console.WriteLine("ReadNode: {0}", client.ReadNode(nodeId));
 
    client.Disconnect();
    Console.ReadKey(true);

S7 OPC UA & MobileHMI

  • Home
    • Visualisierung start
  • Benutzerverwaltung
    • Name
    • Login Name
    • Passwort
    • Benutzergruppe
      • Admingruppen A1-A3
      • Benutzergruppen U1-U8
  • Verbindungen
    • Name
    • IP-Adresse
    • Rack
    • Slot
    • Gerätetyp
      • Logo
      • S7200
      • S7300_400
      • S71200
      • S71500
    • Verbindungstyp
      • Default
      • Operation Panel
      • Programmer Device
      • Other
    • Timeouts
      • Connect
      • Recieve
      • Transmit
      • BreakDetection
  • Datenpunkte
    • Verbindung(en)
      • Datenpunkt(e)
      • Knoten
        • Datenpunkt(e)
        • Unterknoten
          • Datenpunkt(e)
    • Name
    • Adresse
    • Datentyp
      • Bool
      • Byte
      • UInt16
      • Int16
      • UInt32
      • Int32
      • UInt64
      • Int64
      • SingleFP (23 bit Mantisse, 8 bit Exponent, 1 bit Vorzeichen)
      • DoubleFP (52 bit Mantisse, 11 bit Exponent, 1 bit Vorzeichen)
      • String
    • Arraylänge
    • Anzahl der zu erstellenden, konsekutiven Datenpunkte
    • Aktualisierungsintervall
    • Nur lesen
  • Skalierungen
    • Name
    • Skalierung
      • Text/String
      • Stufentext
      • Linear
    • Eingabeart
      • Textfeld
      • Numerisches Textfeld
      • Schieberegler
      • Auswahlfeld oder Schalter/Taster
  • HMI-Config
    • Seite(n)
      • Datenpunktgruppe(n)
        • Datenpunkt(e)
      • Unterseite
        • Datenpunktgruppe(n)
          • Datenpunkt(e)
    • Seite anlegen
      • Titel
    • Datenpunktgruppe anlegen
      • Titel
    • Datenpunkt zuweisen
      • Titel
      • Istwert-DP
      • Istwert-Skalierung
      • Sollwert-DP
      • Sollwert-Skalierung
      • Taster-Anzeigewert
      • Taster-Skalierung
      • Numerischer Istwert-Min
      • Numerischer Istwert-Max
  • OPC Server
    • Alle Server neustarten
    • Neuen Server anlegen
      • Server Name
      • Transport
        • TCP
        • HTTP
      • Hostname
      • Port
      • URI Path
      • Automatically create rejected user certificates
      • Server Certificate
      • User Access
      • Everyone Acces
      • URI
    • Server starten
    • Server stoppen
    • Server neustarten
  • OPC Client Zertifikate
    • Name
    • Is active
    • Certificate File
    • Admingruppe festlegen
    • Benutzergruppe festlegen
  • Recipe Manager
    • Clear Selection
    • Product
    • Commission
    • Recipe
    • Rezept laden
    • Recept speichern