PLC Expert Mode

Dieses Kapitel ist eine Zusammenstellung aller nötigen Informationen, um den SPS-Expertenmodus (PLC Expert Mode) des TwinCAT Database Servers zu nutzen. Anders als im Configure Mode werden Daten in diesem Modus nicht zyklisch-/eventbezogen, sondern zu spezifischen Zeitpunkten im Programmablauf geschrieben oder gelesen. Dafür werden keine Kenntnisse aus der SQL-Sprache benötigt.

PLC Expert Mode

Im PLC Expert Mode wird nur die Datenbankkonfiguration im Konfigurator eingestellt. Weitere Funktionalitäten werden im SPS-Code der Applikation implementiert. Mit dem Funktionsbaustein FB_PLCDBCreate ist es sogar möglich, ohne den Konfigurator auszukommen und selbst die Datenbank aus der SPS heraus zu konfigurieren. Ansonsten stehen Funktionsbausteine zum Lesen und Schreiben zur Verfügung. Der Funktionsbaustein FB_PLCDBCmd bildet dabei den Übergang zwischen PLC Expert Mode und SQL Expert Mode. Hier können Tabellenstrukturen sehr einfach als SPS-Struktur abgebildet und ein SQL-Kommando mit Platzhaltern für die aktuellen Werte der Struktur an den TwinCAT Database Server übergeben werden. Der TwinCAT Database Server setzt dann selbständig alle Werte ein und schickt das Kommando an die Datenbank.

Projekt erstellen

Durch die TwinCAT-Connectivity-Erweiterung für Visual Studio steht eine neue Projektvorlage zur Verfügung. Beim Erstellen eines neuen Projektes erscheint nun die Kategorie TwinCAT Connectivity Project in der Auswahl.

Um ein neues TwinCAT-Connectivity-Projekt zu erstellen, wählen Sie das Empty TwinCAT Connectivity Project, legen den Projektnamen und den Speicherort fest und fügen es mit OK der Solution hinzu. TwinCAT-Connectivity-Projekte bzw. TwinCAT-Database-Server-Projekte können so komfortabel neben TwinCAT- oder anderen Visual-Studio-Projekten angelegt werden.

PLC Expert Mode 1:

In der Solution erscheint ein neuer Projektknoten. Unterhalb des Connectivity-Projektknotens können Sie Subprojekte der unterstützten Connectivity-Funktionen ergänzen.

Mit Add können Sie dem TwinCAT-Connectivity-Projekt ein neues TwinCAT-Database-Server-Projekt hinzufügen. Das TwinCAT-Database-Server-Projekt befindet sich in der Auflistung der vorhandenen Item Templates.

PLC Expert Mode 2:

Unterhalb des TwinCAT-Connectivity-Knotens wird ein neues TwinCAT-Database-Server-Projekt angelegt.

PLC Expert Mode 3:

Dieses dient nun als Basis für die anstehende Konfiguration eines TwinCAT Database Servers. Das Dokument können Sie sowohl über die Eigenschaften im Eigenschaftsfenster, als auch über einen Editor bearbeiten.

Einem Connectivity-Projekt können Sie beliebig viele TwinCAT-Database-Server-Projekte oder andere Projekte hinzufügen, und damit auch mehrere Konfigurationen in einem Connectivity-Projekt einstellen.

Editor für Server-Einstellungen

PLC Expert Mode 4:

Im Editor Server Settings können Sie die Einstellungen für den TwinCAT Database Server bearbeiten. Diese Einstellungen betreffen den entsprechenden Server im Allgemeinen. Im Drop‑down‑Menü (1) können Sie das Zielsystem über die Ams-NetId angegeben. Dafür müssen Sie über TwinCAT eine Route zum Zielsystem anlegen. Wird eine fertige Konfiguration übertragen, werden die Einstellungen auf den TwinCAT Database Server dieses Zielsystems gespeichert.

In den Log settings konfigurieren Sie Einstellungen zum Aufzeichnen von Fehlerfällen. In einem Fehlerfall erzeugt der Database Server einen detaillierten Eintrag in einer Logdatei. Diese können Sie mit dem Information Log Viewer auslesen. In den Log Settings geben Sie einen Pfad zum Ablageort und die maximale Größe der Datei an. Zusätzlich können Sie die Genauigkeit des Logs beeinflussen. Wir empfehlen, aus Performancegründen, das Loggen nach erfolgter Fehleranalyse wieder abzuschalten, wenn es nicht mehr benötigt wird.

Bei Netzwerkzugriff auf dateibasierende Datenbanken wie Access Datenbanken oder SQL Compact Datenbanken müssen Sie die Option Impersonate setzen, damit sich der TwinCAT Database Server mit dem Netzwerklaufwerk verbinden kann. Diese Funktion wird zurzeit nicht unter Windows CE unterstützt.

Sie können weitere Einstellungen konfigurieren, um das Lesen aus der Datenbank zu steuern. Diese Einstellungen beziehen sich auf den TwinCAT Database Server auf dem Zielsystem:

MaxStringLength

Maximale String-Länge der Variablen in der SPS

MaxByteArrayLength

Maximale Byte-Array-Länge der Variablen in der SPS

DBNullAllowed

Gibt an, ob NULL-Werte im TwinCAT Database Server angenommen werden.

DBConnectionTimeout

Gibt die Zeit an, wann der TwinCAT Database Server bei einem Verbindungsaufbau von einem Verbindungsfehler ausgeht.

DBCommandTimeout

Gibt die Zeit an, wann der TwinCAT Database Server bei einem abgesendeten Kommando von einem Verbindungsfehler ausgeht. Bei hohen Datenmengen kann, je nach Datenbank und Infrastruktur ein Befehl durchaus sehr viel Zeit in Anspruch nehmen.

Unterstützte Datenbanktypen

PLC Expert Mode 5:

Die installierten Datenbanktypen können in den Server Einstellungen ausgewählt werden. Standardmäßig sind alle installierten Datenbanken angewählt. Der TwinCAT 3 Database Server wird die entsprechenden Datenbankschnittstellen laden. Auf diese Weise können nicht genutzte Datenbanken auf dem Zielsystem abgewählt werden.

Datenbankkonfiguration hinzufügen

Eine neue Datenbankkonfiguration können Sie mithilfe des Kommandos Add new Database über das Kontextmenü eines Database-Server-Projektes oder das entsprechende Kommando in der Toolbar hinzufügen.

PLC Expert Mode 6:

Eine neue Datenbankkonfiguration wird als Datei auf im Projektordner hinzugefügt und in das Projekt eingebunden. Wie bei allen Visual-Studio-Projekten, werden die Informationen über die neuen Dateien im Connectivity-Projekt hinterlegt.

Editor für Datenbankkonfigurationen

PLC Expert Mode 7:

Im oberen Teil des Editors wird die Datenbank ID angezeigt (1), die für einige Funktionsbausteine in der SPS benötigt wird. Den Datenbanktyp der Zieldatenbank können Sie aus dem Drop-down-Menü auswählen (2). Hier können Sie auch die Odbc-Schnittstelle für eine Datenbank nutzen, die noch nicht unterstützt wird. Beachten Sie, dass je nach Datenbank nicht alle Funktionen des TwinCAT Database Servers gewährleistet werden.

Außerdem können Sie optional eine sogenannte FailOver-Datenbank (3) auswählen, welche im ‚Configure‘-Mode beim Fehlerfall einspringt. Bei einem Verbindungsabbruch zum Netzwerk kann in einem solchen Fall automatisch gewährleistet werden, dass keine Daten verloren gehen und an anderer Stelle gespeichert werden.

Für jede Datenbank stehen zusätzlich weitere einstellbare Parameter zur Verfügung. Je nach Datenbank wird ein Connection String (5) erstellt, welcher die Verbindung zur Datenbank beschreibt. Diese Anzeige dient zur Transparenz Ihrer eingestellten Parameter.

Über die Schaltfläche CREATE (4) können Sie eine neue Datenbank erstellen. Diese Funktion wird nur angezeigt, wenn sie von der jeweiligen Datenbank unterstützt wird.

PLC Expert Mode 8:

Sie können auch unbekannte Datenbanken mit einer ODBC-Schnittstelle konfigurieren. Dafür wählen Sie im in der Drop-down-Liste ODBC Type den Eintrag „Unknown Database“ und fügen über die Befehle im Kontextmenü Parameter hinzu. Diese können auch Passwörter beinhalten, welche dann verschlüsselt abgespeichert werden. Daraus kann der gewünschte Connection String zusammengestellt werden. Beachten Sie, dass nur begrenzte Funktionen des TwinCAT Database Servers genutzt werden können. Nur die expliziten Funktionsbausteine des SQL Expert Modes werden unterstützt.

Eine zusätzliche AutoLog-Gruppen-Konfiguration ist in diesem Modus nicht notwendig, da das Schreiben und Lesen zwischen Datenbank und der SPS manuell vom SPS-Programmierer aufgerufen wird. Der Konfigurationsteil ist damit abgeschlossen.

Projekt aktivieren

Um ein konfiguriertes Projekt auf dem TwinCAT Database Server zu aktivieren, verwenden Sie im Kontextmenü des TwinCAT-Database-Server-Projektes das Kommando Activate Configuration.

PLC Expert Mode 9:

Mit dem SQL Query Editor new können Sie nach Aktivierung des Projektes weitere Entwicklungsschritte tätigen, wie zum Beispiel Datenbanken oder Tabellen angelegen, Strukturen für die SPS generieren, welche der passenden Tabellenstruktur der Datenbank entsprechen, oder Verbindungen zur Datenbank mit den getätigten Informationen testen.

Um den TwinCAT Database Server nun anzusprechen kann der SPS-Programmierer die zur Verfügung stehenden Funktionsbausteine der SPS API benutzen.