Treibereinstellungen

Übersicht

Die Treibereinstellungen dienen der Parametrierung einer Verbindung zwischen PROCON-Connect und Automatisierungssystemen oder Feldgeräten. Dies ermöglicht den Austausch von Daten, die für die Visualisierung, Steuerung und Überwachung von Prozessen erforderlich sind.

Die gesammelten Daten können mit PROCON-Connect bspw. über einen Connector an einen MQTT-Broker eines überlagerten Systems gesandt oder über einen Datalogger in eine Datenbank für weitere Auswertungen gespeichert werden.

Treiber konfigurieren

In der Übersicht sind die konfigurierbaren Treiber gelistet. Die Treiber für OPC-UA und Modbus stehen immer zur Verfügung. Nach Lizenzierung können auch die Treiber für Codesys, Allen-Bradley oder TIA genutzt werden.

Nach dem Herstellen einer Verbindung kann die Verbindung für den Import von Tags genutzt werden. Dieser wird über die Tag-Übersicht durchgeführt.

Treiber_Uebersicht
  1. Treibername und Lizenz: Name des jeweiligen Treibers. Der Status „Dienst aktiv“ zeigt an, dass der Treiberdienst läuft und eine Lizenz vorhanden ist.

  2. Verbindundsübersicht: Liste der Verbindungen zu diesem Treiber.

  3. Neue Verbindung: Anlage einer neuen Verbindung auf Basis des jeweiligen Treibers.

  4. Verbindung: Status der Verbindung: Verbunden (grün), keine Verbindung (grau) oder Verbindungsfehler (rot) wird farblich angezeigt.

  5. Treiberparameter: Treiberparameter sind globale Einstellungen. Sie gelten für alle Verbindungen des Treibers. Sie können aufgerufen und bearbeitet werden. Diese Parameter sind treiberspezifisch und unterschieden sich zwischen den einzelnen Treibern.

  6. Verbindung duplizieren: Die ausgewählte Verbindung wird als Kopie erneut angelegt, um schnell eine Vielzahl gleichartiger Verbindungen anlegen zu können.

  7. Verbindung bearbeiten: Die ausgewählte Verbindung kann bearbeitet werden.

  8. Verbindung löschen: Löschen der Verbindung. Das Löschen kann nicht rückgängig gemacht werden.

Allen-Bradley

Konfigurationsparameter für den Aufbau einer Verbindung zu einer Allen-Bradley-Steuerung.

Die Verwaltung von Treiberverbindungen ist für alle Treiber gleich und im Abschnitt Treiber konfigurieren geregelt.

Verbindungseinstellungen

Allen-Bradley
  1. Verbindungsname: Der Verbindungsname muss eindeutig sein. Er wird in der Treiberübersicht angezeigt.

  2. Verbindungstyp: EtherNet/IP ist aktuell voreingestellt und kann nicht verändert werden.

  3. IP-Adresse: IP-Adresse oder Hostname der Steuerung.

  4. Gateway Path: ControlLogix Gateway Path.

  5. Verbindungsversuch Wartezeit (ms): Zeit zwischen den Verbindungsversuchen nach einem fehlgeschlagenen Verbindungsversuch.

  6. Tag Definition Verbinden Lese-Timeout: Timeout-Zeit für das Lesen von Tag-Definitionen von der SPS beim Verbinden.

  7. Tag Handle Erstellungs-Timeout (ms): Timeout-Zeit für das Erstellen der Tag-Handles beim Verbinden zur SPS.

  8. Lese Timeout (ms): Timeout-Zeit für das Lesen von Tags.

  9. Schreib Timeout (ms): Timeout-Zeit für das Schreiben von Tags.

  10. Tag Definition Lese-Timeout: Timeout-Zeit für das Lesen von Tag-Definitionen von der SPS beim Importieren von Tag-Definitionen.

  11. Prio 0 bis Prio 3: Aktualisierungszeiten in msec für Variablen mit entsprechender Priorität.

Zeitstempel

Die Zeitstempel an Tags mit Allen-Bradley-Anbindung werden beim Einlesen der Werte in PROCON-Connect erzeugt. Das Protokoll selbst liefert keine Zeitstempel.

Codesys

Konfigurationsparameter für den Aufbau einer Verbindung zu einer Codesys-Steuerung.

Die Verwaltung von Treiberverbindungen ist für alle Treiber gleich und im Abschnitt Treiber konfigurieren geregelt.

Treiberparameter

Reconnect Time (s)

Default-Wert

10 Sekunden

Funktion

Zeit in Sekunden zwischen zwei Verbindungsversuchen. Wirkt sich aus, wenn die Verbindung verloren wurde oder ein Verbindungsversuch erfolglos war.

Verbindungseinstellungen

Codesys
  1. Verbindungsname: Der Verbindungsname muss eindeutig sein. Er wird in der Treiberübersicht angezeigt.

  2. Verbindungstyp: Auswahl zwischen ARTI3/GATEWAY3/INI-FIle. ARTI3 ist der Standard für Codesys v3 auf u-OS.

  3. IP-Adresse: IP-Adresse oder Hostname der Steuerung.

  4. Port: Port-Konfiguration für die Verbindung. Standardmäßig kommuniziert Codesys über den Port 11740.

  5. Zugangsdaten: Gültiger Benutzernamen und Passwort zur Kopplung mit dem Codesys-System.

  6. Casesensitive: Bei Aktivierung wird bei symbolischen Namen wird auf Groß- und Kleinschreibung geachtet.

  7. Kill: Bei Aktivierung wird keine echte Verbindung hergestellt, sodass offline Tests durchgeführt werden können.

  8. Prio 0 bis Prio 3: Aktualisierungszeiten in msec für Variablen mit entsprechender Priorität.

  9. ArrayAsSingle: Bei Aktivierung werden anstelle des Lesens eines Arrays am Stück die einzelnen Array-Elemente gelesen.

Zeitstempel

Die Zeitstempel an Tags mit Codesys-Anbindung werden beim Einlesen der Werte in der Codesys-Runtime erzeugt. Dieser Zeitstempel wird beim Einlesen in PROCON-Connect unverändert übernommen.

Modbus TCP

Konfigurationsparameter für den Aufbau einer Verbindung zu einem Modbus-Gerät über TCP.

Die Verwaltung von Treiberverbindungen ist für alle Treiber gleich und im Abschnitt Treiber konfigurieren geregelt.

Treiberparameter

Poll Intervall (ms)

Default-Wert

1000 ms

Funktion

Zeitliches Intervall, das zwischen zwei Wertabfragen liegt.

Modbus ist nicht für hochfrequente Pollings ausgelegt. Ein zu geringes Poll Intervall kann zu folgenden Problemen führen:

  • Überlastung des Netzwerks oder der seriellen Verbindung. Bei seriellen Verbindungen kann es zudem zu Kollisionen oder Timeouts kommen.

  • Angefragte Geräte müssen alle Anfragen beantworten, dadurch können sie in den Status busy oder error übergehen.

  • Manche Modbus-Server haben eine Begrenzung der Anfragen pro Sekunde. Bei Überschreitung wird die Verbindung abgebrochen oder weitere Anfragen ignoriert.

  • Auf pollender Seite muss jede Antwort verarbeitet werden. Bei embedded Geräten kann das zu hoher CPU-Auslastung führen.

Verbindungseinstellungen

ModbusTCP
  1. Verbindungsname: Der Verbindungsname muss eindeutig sein. Er wird in der Treiberübersicht angezeigt.

  2. Verbindungstyp: TCP (TCP/IP-Netzwerk) oder RTU-Connection (serielle Schnittstelle) auswählbar.

  3. Host-Adresse: IP-Adresse oder Hostname der Steuerung.

  4. Port: Port-Konfiguration für die Verbindung. Standardmäßig kommuniziert Modbus TCP über den Port 502.

  5. Unitid: Unit-ID/Slave-ID der Steuerung. Für spezielle Geräte oder für Kommunikation über Modbus-Gateways, sonst ohne Bedeutung.

  6. Gerätetyp: DropDown zur Auswahl eines Energiemessgeräte-Templates. Ist ein Template ausgewählt, können im Template enthaltene Tags direkt über den Tag-Import in die Tag-Liste aufgenommen werden. Eine manuelle Adressierung der Register entfällt.

  7. Refresh-Zyklus (msec): Zeitspanne in Millisekunden, nach der der komplette benötigte Variablenhaushalt einer Verbindung aktualisiert wird.

  8. Antwort Timeout (s): Zeitspanne, nach der ein Fehler wegen Kommunikationsabbruchs gemeldet wird.

  9. SwapWords: Modbus überträgt Daten standardmäßig in 16-Bit-Blöcken (Wörtern). Bei 32-Bit-Datenformaten werden zwei aufeinanderfolgende 16-Bit-Wörter kombiniert. Unterschiedliche Geräte oder Systeme können jedoch die Reihenfolge dieser Wörter unterschiedlich interpretieren. Mit der Option SwapWords kann man die Reihenfolge der beiden 16-Bit-Wörter umkehren.

  10. SwapBytes: Modbus überträgt Daten in 16-Bit-Wörtern (2 Bytes), und je nach Gerät können diese Bytes in unterschiedlicher Reihenfolge gespeichert oder übertragen werden. Mit der Option SwapBytes wird die Reihenfolge der beiden Bytes innerhalb eines 16-Bit-Worts getauscht.

  11. SwapBytesInt8: Bei Verwendung dieser Option werden die beiden 8-Bit-Werte (Bytes) innerhalb eines 16-Bit-Worts vertauscht.

  12. I/O-Mapping für 750 Series: Spezielle Adressberechnung bei Kommunikation mit Wago-Steuerungen der 750 Serie.

  13. FC 6 zum Schreiben auf Register: Anstelle des Funktionscode 16 (WriteMultipleRegisters) wird der Funktionscode 6 (WriteSingleRegister) verwendet. Daraus können bei bestimmten Datentypen mehrere Schreibaufträge resultieren.

  14. Serialisierter Datenzugriff: Aktiviert die sequentielle Abarbeitung der Treiberkommandos über alle Verbindungen hinweg, in denen diese Funktion aktiviert ist. Für jeden Auftrag wird zuerst die Verbindung geöffnet, das Schreib-/Lesekommando abgearbeitet und danach die Verbindung wieder geschlossen. Wird für ältere Geräte oder Gateways genutzt, die nur eine aktive Verbindung handhaben können.

  15. Stop der Kommunikation: Durch diese Einstellung werden Kommunikationsaufträge für diese Verbindung vom Treiber nicht weitergeleitet und es werden keine Treiberfehlermeldungen für diese Verbindung erzeugt.

  16. Keine Datenlücken im Lesebuffer: Einige Steuerungen erlauben keinen allgemeinen Zugriff auf Speicherbereiche sondern nur auf Speicherbereiche, die mit Tags belegt sind. Dieser Parameter optimiert die Leseblöcke, damit nur belegte Speicherbereiche gelesen werden. Betrifft bspw. Weidmüller M3000 oder M4000.

Zeitstempel

Die Zeitstempel an Tags mit Modbus-Anbindung werden beim Einlesen der Werte in PROCON-Connect erzeugt. Das Protokoll selbst liefert keine Zeitstempel.

Modbus RTU

Konfigurationsparameter für den Aufbau einer Verbindung zu einem Modbus-Gerät über serielle Schnittstelle.

Die Verwaltung von Treiberverbindungen ist für alle Treiber gleich und im Abschnitt Treiber konfigurieren geregelt.

Treiberparameter

Default-Wert

1000 ms

Funktion

Zeitliches Intervall, das zwischen zwei Wertabfragen liegt.

Modbus ist nicht für hochfrequente Pollings ausgelegt. Ein zu geringes Poll Intervall kann zu folgenden Problemen führen:

  • Überlastung des Netzwerks oder der seriellen Verbindung. Bei seriellen Verbindungen kann es zudem zu Kollisionen oder Timeouts kommen.

  • Angefragte Geräte müssen alle Anfragen beantworten, dadurch können sie in den Status busy oder error übergehen.

  • Manche Modbus-Server haben eine Begrenzung der Anfragen pro Sekunde. Bei Überschreitung wird die Verbindung abgebrochen oder weitere Anfragen ignoriert.

  • Auf pollender Seite muss jede Antwort verarbeitet werden. Bei embedded Geräten kann das zu hoher CPU-Auslastung führen.

Poll Intervall (ms)

Verbindungseinstellungen

ModbusRTU
  1. Verbindungsname: Der Verbindungsname muss eindeutig sein. Er wird in der Treiberübersicht angezeigt.

  2. Verbindungstyp: TCP (TCP/IP-Netzwerk) oder RTU-Connection (serielle Schnittstelle) auswählbar.

  3. Schnittstellenname: Name der seriellen Schnittstelle, über die kommuniziert werden soll, bspw. COM1, COM2, usw.

  4. Unitid: Unit-ID/Slave-ID der Steuerung. Für spezielle Geräte oder für Kommunikation über Modbus-Gateways, sonst ohne Bedeutung.

  5. Baudrate: Übertragungsgeschwindigkeit in Bits/Sekunde für die serielle Kommunikation.

  6. Parität: Parität dient der Erkennung von Einzelbitfehlern während der Übertragung. Falls bei der Übertragung ein Bit verfälscht wird, wird dies durch die Paritätsprüfung erkannt, und es kann ein Fehler ausgelöst werden, was wiederum zu einer erneuten Übertragung führen kann.

  7. Anzahl der Stop-Bits: Stop-Bits sind zusätzliche Bits, die am Ende eines Datenpakets übertragen werden, um das Ende eines Zeichens zu markieren und den Empfänger darauf hinzuweisen, dass die Übertragung abgeschlossen ist und er mit der Verarbeitung der Daten beginnen kann. Sie dienen der Synchronisation und stellen sicher, dass der Empfänger den richtigen Zeitpunkt zum Übernehmen der nächsten Nachricht erkennt.

  8. Anzahl der Daten-Bits: Anzahl der Bits, die verwendet werden, um ein einzelnes Datenbyte (oder Zeichen) zu repräsentieren. Diese Daten-Bits sind der eigentliche Informationsteil der Nachricht, der zwischen den Geräten übertragen wird.

  9. Protokoll: Auswahl der Protokollvariante wie bspw. JBus.

  10. Refresh-Zyklus (msec): Zeitspanne in Millisekunden, nach der der komplette benötigte Variablenhaushalt einer Verbindung aktualisiert wird.

  11. Antwort Timeout (s): Zeitspanne in Sekunden, nach der ein Fehler wegen Kommunikationsabbruchs gemeldet wird.

  12. SwapWords: Modbus überträgt Daten standardmäßig in 16-Bit-Blöcken (Wörtern). Bei 32-Bit-Datenformaten werden zwei aufeinanderfolgende 16-Bit-Wörter kombiniert. Unterschiedliche Geräte oder Systeme können jedoch die Reihenfolge dieser Wörter unterschiedlich interpretieren. Mit der Option SwapWords kann man die Reihenfolge der beiden 16-Bit-Wörter umkehren.

  13. SwapBytes: Modbus überträgt Daten in 16-Bit-Wörtern (2 Bytes), und je nach Gerät können diese Bytes in unterschiedlicher Reihenfolge gespeichert oder übertragen werden. Mit der Option SwapBytes wird die Reihenfolge der beiden Bytes innerhalb eines 16-Bit-Worts getauscht.

  14. SwapBytesInt8: Bei Verwendung dieser Option werden die beiden 8-Bit-Werte (Bytes) innerhalb eines 16-Bit-Worts vertauscht.

  15. FC 6 zum Schreiben auf Register: Anstelle des Funktionscode 16 (WriteMultipleRegisters) wird der Funktionscode 6 (WriteSingleRegister) verwendet. Daraus können bei bestimmten Datentypen mehrere Schreibaufträge resultieren.

  16. Stop der Kommunikation: Durch diese Einstellung werden Kommunikationsaufträge für diese Verbindung vom Treiber nicht weitergeleitet und es werden keine Treiberfehlermeldungen für diese Verbindung erzeugt.

  17. Keine Datenlücken im Lesebuffer: Einige Steuerungen erlauben keinen allgemeinen Zugriff auf Speicherbereiche sondern nur auf Speicherbereiche, die mit Tags belegt sind. Dieser Parameter optimiert die Leseblöcke, damit nur belegte Speicherbereiche gelesen werden. Betrifft bspw. Weidmüller M3000 oder M4000.

Zeitstempel

Die Zeitstempel an Tags mit Modbus-Anbindung werden beim Einlesen der Werte in PROCON-Connect erzeugt. Das Protokoll selbst liefert keine Zeitstempel.

OPC-UA

Konfigurationsparameter für den Aufbau einer Verbindung zu einem OPC-UA Server.

Die Verwaltung von Treiberverbindungen ist für alle Treiber gleich und im Abschnitt Treiber konfigurieren geregelt.

Treiberparameter

Kill Variablenname

Default-Wert

KILL

Funktion

Diese Variable dient dazu, die Kommunikation zur SPS zu beenden bzw. wieder aufzunehmen.

Wie konfigurieren?

Als Treiberparameter wird der Name der Kill-Variable hinterlegt, z. B. KILL.

Der Name der Kill-Variablen kann anschließend an beliebig viele Boolean-Tags dieses Treibers gehängt werden. Dazu zunächst über die Tag-Liste den Tag-Editor des gewünschten Tags öffnen. Das Feld Name mit der Kill-Variablen, bspw. KILL, füllen.

Wird einer der so konfigurierten Tags TRUE oder FALSE, werden alle Tags derselben Treiberverbindung mit demselben Namen (bspw. KILL) auf denselben Wert gesetzt. Damit wird eine synchrone Orchestration der Verbindung über mehrere Tags hinweg ermöglicht.

Status Variablenname

Default-Wert

STATUS

Funktion

Diese Variable wird verwendet, um den aktuellen Zustand eines Prozesses oder Systems anzuzeigen.

Wie konfigurieren?

Als Treiberparameter wird der Name der Status-Variable hinterlegt, z. B. STATUS.

Der Name der Status-Variablen kann anschließend an beliebig viele Tags dieses Treibers gehängt werden. Dazu zunächst über die Tag-Liste den Tag-Editor des gewünschten Tags öffnen. Das Feld Name mit der Status-Variablen, bspw. STATUS, füllen.

URL Variablenname

Default-Wert

URL

Funktion

Diese Variable enthält die OPC UA Server-URL, mit der sich der Treiber verbinden soll.

Die Software liest diese Variable, um dynamisch zu entscheiden, mit welchem OPC UA Server sie sich verbinden soll.

Wie konfigurieren?

Als Treiberparameter wird der Name der URL-Variable hinterlegt, z. B. URL.

Der Name der URL-Variablen kann anschließend an beliebig viele Tags dieses Treibers gehängt werden. Dazu zunächst über die Tag-Liste den Tag-Editor des gewünschten Tags öffnen. Das Feld Name mit der URL-Variablen, bspw. URL, füllen.

Verbindungseinstellungen

OPCUA
  1. Verbindungsname: Der Verbindungsname muss eindeutig sein. Er wird in der Treiberübersicht angezeigt.

  2. Verbindungstyp: Aktuell TCP-Connection voreingestellt.

  3. URL: IP-Adresse oder Hostname des OPC-UA-Servers. Das Prefix opc.tcp:// ist fest vorangestellt.

  4. Port: Port des OPC-UA-Servers. Default ist Port 4840. Die Aufteilung von URL und Port wurde nachträglich vollzogen. Ältere Konfigurationen, die den Port noch im URL-Feld nach dem Muster [URL]:[Port] haben, können so ohne Anpassung weiterbetrieben werden.

  5. Benutzername: Benutzername des Benutzers auf dem OPC-UA-Server, der zum Koppeln verwendet werden soll. Die Kopplung mit Anmeldedaten ist optional.

  6. Passwort: Passwort des Benutzers auf dem OPC-UA-Server, der zum Koppeln verwendet werden soll. Die Kopplung mit Anmeldedaten ist optional.

  7. Array Elemente einzeln schreiben: Werte in genaue Array Positionen schreiben, anstatt das gesamte Array zu lesen, zu verändern und zurück zu schreiben. Nicht von jedem Server unterstützt.

  8. Verschlüsselung bevorzugen: Wenn nicht aktiviert, werden Endpoints mit der Security Policy NONE bevorzugt verwendet.

  9. Verbindung deaktivieren: Angelegte Verbindung kann vorübergehend deaktiviert werden.

  10. Verbinden Timeout (s): Timeout für den Verbindungsvorgang.

  11. Anfragen Timeout (s): Timeout für Anfragen.

  12. Session Timeout (s): Session Timeout. Der tatsächliche Werte kann anders sein, wenn der Server den eingestellten Timeout nicht unterstützt.

  13. Lese Modus: Auswahl zwischen zyklischem Lesen und Subscriptions (Lesen bei Wertänderungen).

  14. Lesen nach Schreiben: Nach jedem Schreibvorgang wird zeitversetzt nochmals aktiv gelesen. Diese Option sollte nur aktiviert werden, wenn hochfrequente Änderungen vom OPC-UA-Server nicht erkannt werden. Das zusätzliche Lesen bedeutet zusätzliche Performance-Last. Es sollte geprüft werden, ob sich die Konstellation applikativ auflösen lässt, bevor diese Option aktiviert wird.

  15. Zusätzliches Lesen (s): Führt zusätzlich zur Subscription alle n Sekunden ein manuelles Lesen von Variablen durch.

  16. Max. Subscription Größe: Maximale Anzahl an überwachten Items pro Subscription. Werden mehr Variablen angefragt, werden mehrere Subscriptions verwendet.

  17. Publishing Intervall (ms): Gewünschtes Subscription Publishing Intervall. Der tatsächliche Wert kann kleiner sein, wenn der Server den gewünschten Wert nicht unterstützt.

  18. Sampling Intervall (ms): Gewünschter Sampling Intervall der überwachten Items. Der tatsächliche Werte kann größer sein, wenn der Server den gewünschten Wert nicht unterstützt.

  19. Monitored Item Queue Größe: Legt fest, wie viele Werteänderungen für ein überwachtes Item (z. B. einen Sensorwert oder eine Variable) in einer Warteschlange gespeichert werden sollen, bevor sie an den Client übermittelt werden.

  20. Queue Überlauf Handling: Gibt an, welcher Wert verworfen werden soll, wenn die Monitored Item Queue überläuft.

  21. Data Change Trigger: Gibt an, unter welcher Bedingung über eine Werteänderung benachrichtigt werden soll. Auf Zeitstempel subscriben wird nicht von jedem Server unterstützt.

Zeitstempel

Die Zeitstempel an Tags mit OPC UA-Anbindung werden vom OPC UA Server übernommen. Die Quelle des Zeitstempels hängt ggf. von der Konfiguration des OPC UA Servers ab.

TIA V2

Konfigurationsparameter für den Aufbau einer Verbindung zu TIA-Portal. Das Suffix V2 stellt eine interne Unterscheidbarkeit zum vorherigen Treiber im Rahmen von PROCON-WEB (SCADA) dar.

Die Verwaltung von Treiberverbindungen ist für alle Treiber gleich und im Abschnitt Treiber konfigurieren geregelt.

Unterstützte Steuerungen

Folgende Steuerungen und Versionen werden unterstützt:

SPS Familie

Firmware

S7-1200

ab 2.2

S7-1500, S7-1500P

ab 1.0 bis 3.x

S7-1500 Software Controller S7-1505S

1.8

S7-1500 Software Controller S7-1507S

2.0, 2.6, ab 20.x

S7-1500 Software Controller S7-1505SP

2.0, 2.6, ab 20.x

virtueller Controller SIMATIC S7-PLCSIM Advanced

ab 2.0

Treiberparameter

Kill Variablenname

Default-Wert

KILL

Funktion

Diese Variable dient dazu, die Kommunikation zur SPS zu beenden bzw. wieder aufzunehmen.

Wie konfigurieren?

Als Treiberparameter wird der Name der Kill-Variable hinterlegt, z. B. KILL.

Der Name der Kill-Variablen kann anschließend an beliebig viele Boolean-Tags dieses Treibers gehängt werden. Dazu zunächst über die Tag-Liste den Tag-Editor des gewünschten Tags öffnen. Das Feld Name mit der Kill-Variablen, bspw. KILL, füllen.

Wird einer der so konfigurierten Tags TRUE oder FALSE, werden alle Tags derselben Treiberverbindung mit demselben Namen (bspw. KILL) auf denselben Wert gesetzt. Damit wird eine synchrone Orchestration der Verbindung über mehrere Tags hinweg ermöglicht.

Status Variablenname

Default-Wert

STATUS

Funktion

Diese Variable wird verwendet, um den aktuellen Zustand eines Prozesses oder Systems anzuzeigen.

Wie konfigurieren?

Als Treiberparameter wird der Name der Status-Variable hinterlegt, z. B. STATUS.

Der Name der Status-Variablen kann anschließend an beliebig viele Tags dieses Treibers gehängt werden. Dazu zunächst über die Tag-Liste den Tag-Editor des gewünschten Tags öffnen. Das Feld Name mit der Status-Variablen, bspw. STATUS, füllen.

Verbindungseinstellungen

TIA driver configuration
  1. Verbindungsname: Der Verbindungsname muss eindeutig sein. Er wird in der Treiberübersicht angezeigt.

  2. Verbindungstyp: TIA ist voreingestellt und kann nicht verändert werden.

  3. PLC IP: IP-Adresse der Steuerung.

  4. Port: Der Port 102 wird standardmäßig für die Kommunikation genutzt und ist voreingestellt.

  5. PLC number: Nummer für logisches Mappen auf virtuelle PLC-Nummer für Steuerungen am Profibus.

  6. PLC Typ: Die automatische Erkennung ist voreingestellt. Sollte es bei der Erkennung zu Problemen kommen, kann über das Dropdown jedoch auch ein konkreter Typ, bspw. S7-1500, ausgewählt werden.

  7. Passwort: Ist ein Passwort im TIA Projekt vergeben, muss dieses hier hinterlegt werden. Verwendet das TIA Projekt kein Passwort, kann das Feld leer bleiben.

    Das Passwort wird im TIA-Portal wie folgt hinterlegt: Geräteansicht –> Eigenschaften –> Schutz und Sicherheit –> Zugriffsberechtigung –> Passwort

  8. Sichere Kommunikation: Erlaubt die Aktivierung der Sicherheitsfunktion zur verschlüsselten und authentifizierten Kommunikation mit der Steuerung.

    Voraussetzungen für eine sichere Kommunikation:

    • Firmware der CPU untersützt sichere Kommunikation

    • Sichere Verbindung in TIA Portal aktiviert: Geräteansicht –> Eigenschaften –> Schutz und Sicherheit –> Kommunikation –> Sichere Verbindung aktivieren

  9. Verbindung deaktivieren: Durch diese Einstellung werden Kommunikationsaufträge für diese Verbindung vom Treiber nicht weitergeleitet und es werden keine Treiberfehlermeldungen für diese Verbindung erzeugt.

  10. Verbinden Timeout (ms): Legt fest, wie lange gewartet wird, bis eine Antwort von der Steuerung bei einem Verbindungsversuch eingehen muss, bevor der Verbindungsversuch als fehlgeschlagen bewertet wird.

  11. Autom. Verbindungsaufbau nach (ms): Legt fest, nach welcher Zeit in Millisekunden (ms) automatisch erneut versucht wird, eine Verbindung zur Steuerung aufzubauen, nachdem die Verbindung unterbrochen wurde.

  12. Max. Variablenanzahl im Lesezyklus: Legt fest, wie viele Tags in einem einzelnen Lesevorgang von der Steuerung gleichzeitig abgefragt werden. Der Wert sollte reduziert werden, wenn die Kommunikationslast der Steuerung stark ausgelastet ist.

    Starken Einfluss hat die Konfiguration der Siemens Steuerung. Der default Wert von 50 % Reservierung für Kommunikationslast sollte eingehalten werden, da die Lesezeit sonst exponetiell ansteigt. Die Kommunikationslast wird im TIA Portal hier konfiguriert: Geräteansicht –> Eigenschaften –> Kommunikationslast.

  13. Poll Intervall (ms): Legt fest, wie oft die Abfrage nach aktuellen Daten erfolgt.

    Je kürzer das Intervall, desto schneller die Reaktion auf Prozessänderungen aber auch höhere Belastung für die Steuerung und höheres Risiko bei schwacher Netzwerkverbindung.

    Je länger das Intervall, desto weniger Netzwerklast und CPU-Last sowie stabileres Verhalten bei langsamer Kommunikation aber weniger Reaktionszeit bspw. in einer HMI.

Zeitstempel

Die Zeitstempel an Tags mit TIA v2-Anbindung werden beim Einlesen der Werte in PROCON-Connect erzeugt. Das Protokoll selbst liefert keine Zeitstempel.

Bekannte Probleme

  • Firmware-Bug bei Siemens 1500er CPUs mit Firmware 4.0: Häufige Verbindung und Trennung mit der SPS im Ereignisprotokoll sichtbar. Fix über Firmware-Update ab v4.0.4 bringt Besserung, behebt das Problem jedoch nicht komplett. Weitere Infos in den Siemens Release Notes. Daher für Firmware v4.x derzeit nicht freigegeben.

  • Der TIA V2 Treiber unterstützt derzeit keinen Import von Feldern aus Strukturen. Statt dessen erzeugt der Treiber dafür ein Element für jeden Index.

Fehler-Codes

Fehler-Code

Fehlertext

0x00000000

No error

0x00000001

No error, job still in process

0xFFF00000

Function not implemented

0xFFF00001

Parameter error when calling function

0xFFF00002

Invalid device number

0xFFF00003

Invalid PLC number

0xFFF00004

Invalid parameter type

0xFFF00005

Insufficient memory

0xFFF00006

Device already opened

0xFFF00007

Device not opened

0xFFF00008

Job removed

0xFFF00009

Invalid job number

0xFFF0000A

Function not supported

0xFFF0000B

Adapter not initialized

0xFFF0000C

No free connections available

0xFFF0000D

Device not configured or not supported

0xFFF0000E

Hardware not found

0xFFF0000F

Error when reading parameters

0xFFF00010

Error when writing parameters

0xFFF00011

Demo period expired

0xFFF00012

Wrong character in text. Conversion not possible

0xFFF00013

Buffer is not long enough

0xFFF00014

File not found

0xFFF00015

Error when calling configuration program

0xFFF00016

Error when loading DLL dynamically

0xFFF00017

Could not create file

0xFFF00018

Notification type already in use

0xFFF00019

Running job already removed

0xFFF0001A

Job already removed

0xFFF0001B

Error when reading WLD file

0xFFF0001C

Error when writing WLD file

0xFFF0001D

Invalid structure in WLD file

0xFFF0001E

Multiple blocks in WLD file

0xFFF0001F

Function is not reentrant

0xFFF00020

Function removed for code size reduction

0xFFF00021

Because of parameter changes (in the moment) not applicable

0xFFF00022

Invalid handle

0xFFF00023

Invalid device type

0xFFF50000

No free job buffer available

0xFFF50001

Invalid packet

0xFFF50002

No connection to PLC

0xFFF50003

Connection closed

0xFFF50004

Timeout

0xFFF50005

Invalid context

0xFFF50006

PLC memory error

0xFFF50007

Invalid operating state

0xFFF50008

Invalid address on PLC

0xFFF50009

Invalid mode

0xFFF5000A

No data available e.g. DB is missing

0xFFF5000B

Priority class associated to OB does not exist

0xFFF5000C

Empty blocklist

0xFFF5000D

Block size error

0xFFF5000E

Invalid block number

0xFFF5000F

Protection level of function not sufficient

0xFFF50010

Unknown SSL-ID (e.g. access to CP instead of PLC)

0xFFF50011

Unknown SSL-index (e.g. access to CP instead of PLC)

0xFFF50012

Information currently not ascertainable

0xFFF50013

Unknown error message from PLC (please report!)

0xFFF50014

Hardware error e.g. not available periphery

0xFFF50015

Object access not allowed

0xFFF50016

Context not supported

0xFFF50017

Type (data type) not supported

0xFFF50018

Internal error, please report

0xFFF50019

Error rebooting PLC

0xFFF5001A

Error restarting PLC

0xFFF5001B

Connection end received

0xFFF5001C

PLC not found

0xFFF5001D

Too many data for this version of ACCON-AGLink

0xFFF5001E

PLC does not support this function

0xFFF5001F

Wrong Password

0xFFF50020

Connection already legitimated

0xFFF50021

Legitimation already released

0xFFF50022

Password not neccessary

0xFFF50023

At least one variable address invalid

0xFFF50024

Job does not exist

0xFFF50025

Invalid job state

0xFFF50026

Invalid cycle time

0xFFF50027

No more cyclic job possible

0xFFF50028

Function not posible for this job (invalid state)

0xFFF50029

Function abort (overload)

0xFFF5002A

No data for this variable

0xFFF5002B

Wrong time format

0xFFF5002C

Unknown PI name

0xFFF5002D

File transfer canceled by NCK

0xFFF5002E

Response too large for PDU size

0xFFF5002F

No H-PLC found

0xFFF50030

Data not changed

0xFFF50031

Received data is corrupt

0xFFF50032

The requested parameter has the wrong size or type

0xFFF50033

The parameter has a wrong value

0xFFF50034

The parameter is not changeable

0xFFF50035

The parameter is read only

0xFFF50036

The variable definition contains the wrong size

0xFFF50037

Array index does not exist

0xFFF50038

PARA does not exist

0xFFF50039

Error during disconnect

0xFFF5003A

Transfer and execute to NCK was aborted

0xFFF5003B

Invalid variable request set

0xFFF5003C

SSL library not found

0xFFF5003D

SSL library not loaded

0xFFF5003E

Not all SSL functions found

0xFFF5003F

Libcrypto not loaded

0xFFF50040

Not all crypto functions found

0xFFF50041

Invalid SSL version found

0xFFF50042

Could not initialize SSL

0xFFF50043

No secure communication

0xFFF50044

Only secure communication

0xFFF50045

Error opening DER file

0xFFF50046

Error reading DER file

0xFFF50047

Error opening PEM file

0xFFF50048

Error reading PEM file

0xFFF50049

Error not a valid buffer

0xFFF5004A

error in certificate store

0xFFF5004B

Error untrusted certificate

0xFFF5004C

Error SSL not supported on this OS

0xFFF5004D

Error SSL was already deleted

0xFFF30000

Error when reading device information

0xFFF30001

Error when reading bus parameters

0xFFF30002

Error when writing bus parameters

0xFFF30003

No resources available on device

0xFFF30004

Invalid device

0xFFF30005

Adapter not found

0xFFF30006

Needed device driver not found

0xFFF40000

Error in layer4

0xFFF40001

No send buffers available

0xFFF20000

The desired adapter address already exists

0xFFF20001

Invalid HSA (smaller than biggest active participant)

0xFFF20002

Adapter is not in the logical ring

0xFFF20004

Received package has wrong content

0xFFF20006

Unknown error number from adapter

0xFFF20007

Unknown error number from device driver

0xFFF20008

Communications adapter has been removed

0xFFF20009

Modem has been removed

0xFFF2000A

No directly connected PLC found

0xFFF2000B

Setting a socket option failed

0xFFF20313

Invalid speed on MPI bus

0xFFF20314

Address is bigger than HSA

0xFFF20315

The desired adapter address already exists

0xFFF2031A

No other active bus participants found

0xFFF2031C

Bus is jammed

0xFFF2031D

Bus is jammed

0xFFF2031E

Automatic detection of bus profile doesn’t work, missing bus parameter telegram

0xFFF20337

Legitimation missing

0xFFF24000

PCAP library not found

0xFFF24001

PCAP function in library not found

0xFFF24002

No PCAP adapter found

0xFFF24003

Specified PCAP adapter not found

0xFFF24004

Error compiling filter expression

0xFFF24005

Error setting filter expression

0xFFF24006

Error in pcap_open_live

0xFFF24007

Error in pcap_sendpacket

0xFFF24008

Error in pcap_dispatch

0xFFF24009

Error in pcap_next_ex

0xFFF2400A

Required helper library not found

0xFFF2400B

Helper library function not found

0xFFF2400C

Error in helper library function call

0xFFF2400D

Not enough memory

0xFFF2400E

You selected not supported adapter hardware

0xFFF10000

COM-Port already used

0xFFF10001

Modem not found

0xFFF10002

Modem not onhook

0xFFF10003

Modem not offhook

0xFFF10004

Error in basic initialisation

0xFFF10005

Error in Initstring 1

0xFFF10006

Error in Initstring 2

0xFFF10007

Error in Initstring 3

0xFFF10008

Error in Initstring 4

0xFFF10009

Error in dialtype sequence

0xFFF1000A

Error in dialtone sequence

0xFFF1000B

Error in autoanswer sequence

0xFFF1000C

Modem has been removed

0xFFF1000D

Connection could not be established

0xFFF1000E

Login denied. Unknown user.

0xFFF1000F

Login denied. Wrong password.

0xFFF10010

Login denied. Callback number defined in adapter.

0xFFF10011

Error while dialing

0xFFF80000

Function not allowed

0xFFF80001

Invalid project handle

0xFFF80002

Error opening project

0xFFF80003

Error creating program instance of project

0xFFF80004

Error closing project

0xFFF80005

No resp. no more programs found

0xFFF80006

Program not found

0xFFF80007

At least one of the specified parameters is invalid

0xFFF80008

Runtime has expired (demo version)

0xFFF8000A

No resp. invalid data specified

0xFFF8000B

The program selected has no symbol table

0xFFF8000C

Symbol table already opened

0xFFF8000D

No resp. no more symbol entry found

0xFFF8000E

Error reading symbol entry

0xFFF8000F

Symbol not found

0xFFF80010

Operand not found

0xFFF80011

Invalid symbol

0xFFF80012

Invalid operand

0xFFF80013

Invalid filter string

0xFFF80014

Data block (DB) not present

0xFFF80015

Error reading DB block data

0xFFF80016

Error parsing DB block data

0xFFF80017

An opened DB is already present

0xFFF80018

No opened DB present

0xFFF80019

No resp. no more DB component found

0xFFF8001A

Specified DB component not found

0xFFF8001B

Specified DB component is invalid

0xFFF8001C

Specified DB component not matching

0xFFF8001E

Invalid constant

0xFFF8001F

Invalid constant size or format

0xFFF80020

Object type initialization failed

0xFFF80021

Invalid version of message configuration

0xFFF80022

Error opening message configuration

0xFFF80023

Error closing message configuration

0xFFF80024

No resp. no more message entry found

0xFFF80025

No resp. no more language found

0xFFF80026

Database access error

0xFFF80027

Invalid signal number

0xFFF80028

Invalid add. value specification

0xFFF80029

Add. value number invalid

0xFFF8002A

Element type of add. value invalid

0xFFF8002B

Add. value data length invalid

0xFFF8002C

Format specification missing

0xFFF8002D

Format specification invalid

0xFFF8002E

No resp. no more text library found

0xFFF8002F

No resp. no more text library entry found

0xFFF80030

Not enough memory

0xFFF80031

Block type invalid

0xFFF80032

Listing handle invalid

0xFFF80033

Block not present

0xFFF80034

Error reading block data

0xFFF80035

Error parsing block data

0xFFF80036

No resp. no more declaration found

0xFFF80037

No resp. no more attributes found

0xFFF80038

Writing CPU list failed

0xFFF90000

Read error

0xFFF90001

Write error

0xFFF90002

Read error (variable content, type)

0xFFF90003

Wrong PLC type

0xFFF90064

Internal assert wrong

0xFFFA0000

Not applicable

0xFFFA0001

Access invalid element

0xFFFA0002

Access buffer too small

0xFFFA0003

Access buffer invalid S5TIME value

0xFFFA0004

Access buffer invalid S5TIME base

0xFFFA0005

Access buffer invalid S7 COUNTER value

0xFFFA0006

Path missing expanded index

0xFFFA0007

Path invalid

0xFFFA0008

Path end reached

0xFFFA0009

Path unknown field

0xFFFA000A

Unknown child

0xFFFA000B

Array is no value type

0xFFFA000C

Array index missing

0xFFFA000D

Array index invalid

0xFFFA000E

Array index not allowed

0xFFFA000F

Array range not allowed

0xFFFA0010

Array range invalid

0xFFFA0011

UDT has no base type

0xFFFA0012

Unknown error code

0xFFFA0013

Wrong symbol ID

0xFFFA0014

Item access denied

0xFFFA0015

Read only item

0xFFFA0016

Partial errors

0xFFFA0017

Not an instance

0xFFFA0018

Wrong symbol ID path

0xFFFA0019

Symbolic wrong area

0xFFFA001A

Wrong value range

0xFFFA001B

PLC cant deliver

0xFFFA001C

PLC object does not exists

0xFFFA001D

PLC type info missing

0xFFFA0050

Invalid datablock

0xFFFA0051

Datablock is optimized

0xFFFA0052

Invalid Tag

0xFFFA0053

Start address too big

0xFFFA0054

Not allowed symbolic access

0xFFFA006E

File read error

0xFFFA0074

Project file not found

0xFFFA0075

Project file unsupported extension

0xFFFA0076

Project folder missing

0xFFFA00FD

Invalid agl version

0xFFFA00FE

Invalid filter

0xFFFA00FF

Invalid node

0xFFFA0100

Invalid flags

0xFFFA0101

Invalid alarm ID

0xFFFA0102

Invalid alarm LCID

0xFFFA0103

No alarms found

0xFFFA0104

Invalid alarmtext

0xFFFA0105

Invalid alarmtext index

0xFFFA0106

Invalid LCID

0xFFFA0107

DB not found

0xFFFA0108

No alarm subscription active

0xFFFA0109

Already open

0xFFFA010A

Not open

0xFFFA010B

Must be word aligned

0xFFFA010C

Password required

0xFFFA010D

Parameter is null

0xFFFA010E

Parameter is zero

0xFFFA010F

Invalid handle

0xFFFA0110

Root handle expected

0xFFFA0111

Result buffer too small

0xFFFA0112

NCK BTSS item invalid

0xFFFA0113

NCK BTSS item unknown

0xFFFA0114

NCK BTSS item not supported in selected CNC version

0xFFFA0115

Alarm subscription is already active

0xFFFA0190

Internal communication error

0xFFFA0191

Internal communication error 0

0xFFFA0193

Internal communication error 2

0xFFFA0194

Write bool range needs modulo 8 start and count

0xFFFA0195

Wrong read type

0xFFFA0196

PLC auto detect failed

0xFFFA0197

Only single values allowed