Engineering Interface (ENI)
Die Schnittstelle ENI ('ENgineering Interface') ermöglicht den Zugriff aus dem Programmiersystem auf eine externe Projektdatenbank, in der Daten, die während der Erstellung eines Automatisierungsprojektes anfallen, verwaltet werden. Die Verwendung einer externen Datenbank gewährleistet die Konsistenz der Daten, die dann von mehreren Anwendern, Projekten und Programmen gemeinsam genutzt werden können und ermöglicht folgende Erweiterungen in der Funktionalität:
- Versionsverwaltung für Projekte und zugehörige Ressourcen (gemeinsam genutzte Objekte): Wurde ein Objekt aus der Datenbank ausgecheckt, modifiziert und wieder eingecheckt, wird in der Datenbank eine neue Version des Objekts erzeugt, die alten Versionen bleiben jedoch erhalten und können bei Bedarf ebenfalls wieder abgerufen werden. Für jedes Objekt und für ein gesamtes Projekt wird die Änderungshistorie aufgezeichnet. Versionen können auf Unterschiede geprüft werden. (Gilt nicht bei Verwendung eines lokalen Dateisystems als Datenbank.)
- Mehrbenutzerbetrieb: Die neueste Version einer Bausteinsammlung, z.B. der Bausteine eines Projekts, kann einer Gruppe von Anwendern zugänglich gemacht werden. Die von einem Benutzer ausgecheckten Bausteine sind für die anderen Benutzer als 'in Bearbeitung' markiert und nicht veränderbar. Somit können mehrere Anwender parallel am gleichen Projekt arbeiten, ohne gegenseitig Objektversionen zu überschreiben.
- Zugriff durch externe Programme: Neben dem TwinCAT PLC Control können auch andere Tools, die ebenfalls über die ENI-Schnittstelle verfügen, auf die gemeinsame Datenbank zugreifen. Beispielsweise externe Visualisierungen, ECAD-Systeme etc., die die in TwinCAT PLC Control erzeugten Date benötigen oder selbst Daten erzeugen.
Damit die Datenbank, um den Mehrbenutzerbetrieb zu ermöglichen, auch auf einem anderen Rechner liegen kann, setzt sich die ENI-Schnittstelle aus einem Client und einem Serverteil zusammen. Das Programmiersystem ist ebenso ein Client des eigenständigen ENI Server Prozesses wie gegebenenfalls eine andere Applikation, die Zugang zur Datenbank braucht.
Aktuell unterstützt die ENI-Schnittstelle die Datenbanken 'Visual SourceSafe 5.0' und 'Visual SourceSafe 6.0', und ein lokales Dateisystem. Objekte können dort in verschiedenen 'Ordnern' (Kategorien mit unterschiedlichen Zugriffseigenschaften) abgelegt werden, für die Bearbeitung ausgecheckt und damit für andere Benutzer gesperrt werden. Der aktuelle Stand der Objekte kann aus der Datenbank abgerufen werden. Gleichzeitig können weiterhin Objekte nur lokal, also im Projekt gehalten werden. Die *.pro Datei ist die lokale Arbeitskopie eines in der Datenbank verwalteten Projekts.
Voraussetzungen für das Arbeiten mit einer ENI Projektdatenbank
Um die ENI-Schnittstelle im TwinCAT PLC Control für das Verwalten der Projektobjekte in einer externen Datenbank nutzen zu können, müssen untenstehende Punkte erfüllt sein:
Zur Installation und Benutzung des Standard ENI Servers sehen Sie bitte die zugehörige Server-Dokumentation TS1600 | TwinCAT ENI Server. Dort finden Sie auch eine Quickstart-Anleitung, die den Aufbau einer einfachen ersten Verbindung zwischen einem Projekt und einer ENI-Datenbank beschreibt. Beachten Sie auch die Möglichkeit, in Zusammenhang mit dem ENI Server den ENI Explorer zu verwenden. Dieser bietet außerhalb der aktuell verwendeten Datenbank eine Oberfläche zum Ausführen und Überwachen der Datenbankfunktionen. |
- zur Verbindung zwischen dem TwinCAT PLC Control und ENI Server muss TCP/IP verfügbar sein, da der ENI Server das HTTP-Protokoll verwendet.
- ein ENI-Server muss lokal oder auf einem anderen Rechner installiert und gestartet werden (ENI Server Suite). Eine gültige Lizenz ist erforderlich, um alle Standard-Datenbanktreiber verfügbar zu haben. Lizenzfrei kann nur der lokale Dateisystem-Treiber verwendet werden.
- in der ENI Server Administration (ENIAdmin.exe) muss folgendes konfiguriert sein:
- der Anwender muss als Benutzer mit Zugangsrechten registriert sein (User Management)
- die Zugriffsrechte zu den Verzeichnissen in der Datenbank müssen korrekt gesetzt sein (Access Rights)
- Empfehlung: das Administrator Passwort für den Zugang zu ENIAdmin.exe und ENIControl.exe sollte unmittelbar nach der Installation definiert werden (Admin Password)
- im Service Kontrollprogramm ENI Control muss die Verbindung zur gewünschten Datenbank korrekt konfiguriert sein (Database). Eine erste Einstellung wird bereits während des Setups bei der Installation verlangt, diese kann in ENI Control auch wieder verändert werden.
- eine Projektdatenbank, für die es einen Treiber gibt, den der ENI Server unterstützt; muss installiert sein; sinnvoll ist, dies auf dem Rechner vorzunehmen, auf dem auch der ENI Server läuft. Alternativ kann ein lokales Dateisystem verwendet werden, für das standardmäßig ebenfalls ein Treiber zur Verfügung steht.
- in der Datenbank Administration müssen gegebenenfalls sowohl der Anwender (am Client) als auch der ENI Server als Benutzer mit Zugangsrechten registriert sein. Dies gilt in jedem Fall für die Verwendung von SourceSafe als Datenbank, für andere Datenbanktreiber sehen Sie bitte die zugehörige Dokumentation für die erforderliche Benutzerkonfiguration.
- für das aktuelle Projekt muss die ENI-Schnittstelle aktiviert sein (dies erfolgt im TwinCAT PLC Control-Dialog 'Projekt' 'Optionen' 'Projektdatenbank').
- für das aktuelle Projekt muss die Konfiguration der Verknüpfung zur Datenbank vorgenommen worden sein; dies erfolgt in den TwinCAT PLC Control unter 'Projekt' 'Optionen' 'Projektdatenbank'.
- im aktuellen Projekt muss sich der Benutzer mit Benutzername und Passwort beim ENI Server anmelden; dies erfolgt im Login-Dialog, der mit dem Befehl 'Projekt' 'Datenbankverknüpfung' 'Login' gezielt geöffnet werden kann bzw. beim versuchten Zugang zur Datenbank automatisch geöffnet wird.
Arbeiten mit der Projektdatenbank
Die Datenbankbefehle (Abrufen, Auschecken, Einchecken, Versionsgeschichte, Labeln etc.) zum Verwalten der Projektbausteine in der ENI-Projektdatenbank stehen im aktuellen Projekt zur Verfügung, sobald die Verknüpfung zur Datenbank aktiviert und korrekt konfiguriert wurde. Sehen Sie hierzu unter 'Voraussetzungen für das Arbeiten mit einer ENI Projektdatenbank'. Die Befehle sind dann im Menü 'Datenbankverknüpfung' zu finden. Dieses erhält man als Untermenü des Menüs 'Projekt' bzw. im Kontextmenü für ein einzelnes Objekt, das im Object Organizer markiert ist.
Die Zuordnung eines Objekts zu einer Datenbankkategorie wird in den Objekteigenschaften angezeigt und kann dort auch verändert werden.
Die Eigenschaften der Datenbankkategorien (Verbindungsparameter, Zugriffsrecht, Verhalten bei Aus- und Einchecken) können in den Optionsdialogen der Projektdatenbank-Optionen verändert werden.
Kategorien innerhalb der Projektdatenbank
Die Objekte eines Projekts können hinsichtlich der Versionsverwaltung in vier Kategorien gesehen werden:
- Die ENI-Schnittstelle unterscheidet drei Kategorien (ENI-Objektkategorien) von Objekten, die im Datenablagesystem verwaltet werden: Projektobjekte, Gemeinsame Objekte, Übersetzungsobjekte.
- Ein Objekt kann aber auch der Kategorie 'Lokal' angehören, wenn es nicht in der Datenbank abgelegt, sondern wie herkömmlich nur mit dem Projekt gespeichert werden sollen.
Im Programmiersystem kann demzufolge ein Baustein einer der Kategorien Projektobjekte, Gemeinsame Objekte oder Lokal zugeordnet werden; die Übersetzungsdaten existieren im Projekt ja noch nicht als zuordenbare Objekte.
Das Zuordnen eines Objekts zu einer Kategorie erfolgt automatisch beim Erstellen, entsprechend der Voreinstellung in den Projektdatenbank-Optionen, kann aber jederzeit im Objekteigenschaften-Dialog verändert werden.
Jede ENI-Objektkategorie wird im Dialog 'ENI-Einstellungen' (Projektoptionen, Kategorie Projektdatenbank), separat konfiguriert. Das heißt, sie erhält eigene Parameter bezüglich der Verbindung zur Datenbank (Verzeichnis, Port, Zugriffsrecht etc.) und bezüglich des Verhaltens beim Abrufen, Aus- und Einchecken. Diese Einstellungen gelten dann für alle Objekte des Projekts, die dieser Kategorie angehören. Auch die Zugangsdaten (Benutzername, Passwort) beim Verbinden zur Datenbank sind dementsprechend für jede Kategorie separat einzugeben. Dazu steht der Login-Dialog zur Verfügung ('Projekt' 'Datenbankverknüpfung' 'Login').
Es bietet sich an, in der jeweiligen Datenbank für jede ENI-Objektkategorie ein eigenes Verzeichnis für die Objekte anzulegen, es ist jedoch auch möglich, die Objekte aller Kategorien im selben Verzeichnis zu halten, da die Kategoriezuordnung eine Eigenschaft des Objektes ist und nicht des Verzeichnisses.
Folgende sind die drei möglichen ENI-Objektkategorien:
Voraussetzungen
| Beschreibung |
---|---|
Projekt | Für Objekte, die projektspezifische Source-Informationen darstellen, z.B. gemeinsam genutzte Bausteine innerhalb eines Projekts, wichtig für den Mehrbenutzerbetrieb. Beim Befehl 'Alles Abrufen' werden automatisch alle Objekte dieser Kategorie aus dem Projektverzeichnis der Datenbank ins lokale Projekt geholt, auch diejenigen, die dort noch nicht angelegt waren. |
Gemeinsame Objekte | Für allgemeingültige, projektunabhängige Objekte, etwa Bausteinbibliotheken, die normalerweise von mehreren Anwendern in verschiedenen Projekten benutzt werden. |
Übersetzungsdateien | Für die automatisch vom TwinCAT PLC Control erzeugten projektspezifischen Übersetzungsinformationen (z.B. Symboldateien), die auch von anderen Tools benötigt werden. Beispielsweise benötigt eine Visualisierung die Variablen eines Programmiersystems inklusive der Adressen, die allerdings erst beim Kompilieren vergeben werden. |
Wahlweise können Projektbausteine auch von der Verwaltung in der Projektdatenbank ausgenommen und ausschließlich lokal, also wie herkömmlich nur mit dem Projekt gespeichert werden. |