Dokumentation Schnittstelle für Datenbanken Dragonfly Version 6.0 bedienerfreundlich plattformunabhängig Industrie 4.0 Web Viewer Smartphone-App kostenl. Hotline Indi.Systems GmbH Universitätsallee 23 D-28359 Bremen Tel. + 49 421-989703-30 Fax + 49 421-989703-39 info@indi-systems.de
Inhaltsverzeichnis Was ist die QuickHMI-Schnittstelle für Datenbanken?... 3 Für welche Zwecke können Sie die Schnittstelle einsetzen?... 3 Was benötige ich zum Betreiben einer Datenbank-Schnittstelle?... 4 Wie muss ich die Schnittstelle vorbereiten?... 5 Einstellungen vornehmen... 6 Datenarchivierung... 8 Aktuelles Datenabbild... 9 Haben Sie Fragen?... 10 2
Was ist die QuickHMI-Schnittstelle für Datenbanken? Mit wenigen Klicks, können Sie Ihrem QuickHMI-System zusätzliche Schnittstellen hinzufügen. Die Schnittstelle bietet QuickHMI-Entwicklern eine einfache Möglichkeit, dem Anwender über eine vorhandene Datenbank, eine Schnittstelle mit folgenden Features zur Verfügung zu stellen: Daten-Archivierer Hier werden alle im QuickHMI auflaufenden Daten der Endgeräte in Tabellen, der Datenbank geschrieben. Daten-Abbild Komplettes Abbild der Variablen mit aktuellem Wert und Zeitpunkt, der letzten Änderung Für welche Zwecke können Sie die Schnittstelle einsetzen? Für die Benutzung der Schnittstelle gibt es unzählige Einsatzmöglichkeiten. Sie steht Ihnen immer dann zur Verfügung, wenn Sie von Außerhalb auf QuickHMI oder die angeschlossenen Geräte wie SPS, Modbusteilnehmer oder ähnlichem zugreifen möchten. Außerdem können Sie die Daten für externe Auswertungen, Charts, Reports oder einfach für Archivierungszwecke nutzen. Zum Beispiel kann über diese Schnittstelle, eine selbst programmierte Applikation, auf den Datenbestand des Systems zugreifen, auswerten, und auch Schreibbefehle in Richtung SPS oder Bussystem absetzen. Durch die Universalität brauchen Sie sich auch nicht mehr in diverse Scripting-Sprachen einarbeiten, sondern benutzen eine Programmierumgebung Ihrer Wahl. 3
Was benötige ich zum Betreiben einer Datenbank-Schnittstelle? Bevor eine Datenbank-Schnittstelle betrieben werden kann, muss eine Datenbankverbindung angelegt werden. Wie das geht erfahren Sie in der Dokumentation QuickHMI Editor. Zum Betreiben der QuickHMI-Datenbank-Schnittstelle, benötigen Sie eine kundenseitig vorhandene und administrierte Datenbank und einen entsprechenden JDBC Treiber. Je nach aufkommender Datenmenge sowie unter Berücksichtigung der Aufbewahrungszeit, ist auch der Einsatz der kostenlosen Express-Versionen möglich. Die Datenbank muss von den QuickHMI-Prozessen erreichbar sein, die Kommunikation darf nicht durch Firewalls oder ähnlichem unterbrochen sein. Die Netzwerkverbindung zwischen QuickHMI-System und Datenbank, sollte mit einer Geschwindigkeit von 100Mbit/s realisiert sein. Niedrigere Übertragungswerte können eventuell dazu führen, dass die Archiv-Daten nicht in der gewünschten Performance geschrieben werden können. Bitte beachten Sie: QuickHMI stellt keinen Datenbank-Server und auch keine Datenbanklizenzen zur Verfügung, sondern bietet die Anbindung einer bereits vorhandenen Datenbank an. Hierzu notwendige Datenbank- und/oder Zugriffslizenzen, müssen beim Benutzer/Kunden vorhanden sein. Sollte aus unterschiedlichen Gründen das Problem auftreten, das das QuickHMI-System höhere Datenmengen bereitstellt, als in das Archiv geschrieben werden können, so speichert das System diese Daten im Arbeitsspeicher zwischen und arbeitet diese Daten nacheinander ab. Wenn allerdings diese intern gespeicherte Datenmenge einen Schwellwert von 50000 Datensätze pro Datenquelle übersteigt, werden keine neuen Datensätze angenommen, sondern verworfen. Das geschilderte Problem kann z.b. bei anderweitig ausgelasteter Hardware oder zu wenig bereitgestellten Ressourcen (z.b. virtueller Server) auftreten. Bitte überprüfen Sie aus diesen Gründen vor produktiver Nutzung die Auslastung und Performance des Server-Zielsystems. Außerdem ist auf der Zieldatenbank eine ausreichende Menge an freiem Speicherplatz zur Verfügung zu stellen. Eine allgemeine Empfehlung kann nur insoweit getroffen werden, dass bei Aktivierung der Archivfunktionalität, 20GB freier Speicherplatz zur Verfügung stehen sollte, eine genaue Angabe hängt von der Anzahl benutzter Variablen sowie der Intensität und Menge von Wechselvorgängen der Variablenwerte ab. 4
Wie muss ich die Schnittstelle vorbereiten? Vor Nutzung müssen Sie dem QuickHMI-System einen Satz Datenbank-Objekte zur Verfügung stellen. Die Objekte müssen in dem Schema angelegt werden, das der parametrierten Verbindung des QuickHMI-Projekts entspricht. Es müssen folgende Datenbank-Objekte vorhanden und gültig sein: Tabelle QHMI_DATAIMAGE mit o Primärschlüssel PK_QHMI_DATAIMAGE o Index IDX_QHMI_DATAIMAGE_DATASO_NAME Tabelle QHMI_DATALOG mit o Primärschlüssel PK_QHMI_DATALOG o Index IX_QHMI_DATALOG_DATASOURCE o Index IX_QHMI_DATALOG_TS o Trigger TR_QHMI_DATALOG_BI Tabelle QHMI_WRITEDATA mit o Primärschlüssel PK_QHMI_WRITEDATA o Index IDX_QHMI_WRITEDATA_DATASOURCE o Trigger TR_QHMI_DATALOG_BI Sequenz SEQ_QHMI_DATALOG Sequenz SEQ_QHMI_WRITEDATA Die im Projekt parametrierte Datenbankverbindung, benötigt innerhalb der angelegten Tabellen Insert-, Update- und Delete-Rechte. Stehen diese Rechte nicht zur Verfügung, können Fehlfunktionen bzgl. der Schnittstellenprozesse auftreten. 5
Einstellungen vornehmen Sie können für die Schnittstelle folgende Einstellungen vornehmen: 1. Verbindung zur Zieldatenbank 2. Ein- oder Ausschalten der Archiv-Funktionalität 3. Ein- oder Ausschalten der Bereitstellung eines Variablenabbildes (Image) 6
Um Datenquellen anzulegen und zu archivieren, wählen Sie im Projekt Explorer Datenquellen aus und klicken Sie auf Datenquelle hinzufügen oder Datenquelle bearbeiten. Anschließend wählen Sie nach dem Bestimmen der Spezifikationen Externes Logging. Im sich öffnenden Fenster können Sie jetzt unter Datenbank durch Aktivierung der zugehörigen Checkbox, eine im Vorfeld angelegte Datenbank- Verbindung auswählen. Bestimmen Sie ob ein Image erzeugt werden soll oder nicht. Klicken Sie dann auf OK um fortzufahren. 7
Datenarchivierung Mit der Daten-Archivierer-Funktionalität werden alle Datenänderungen in die Archiv-Tabellen protokolliert. Sie können diese Daten für beliebige Zwecke nutzen. Hierzu werden die Daten in die Tabelle QHMI_DATALOG abgelegt. Es werden folgende Informationen geschrieben: Spalte Spaltentyp Information ID NUMBER(*, 0) Not Null Fortlaufende ID, Primärschlüssel TS TIMESTAMP(6) Not Null Zeitpunkt, Zeitstempel DATASOURCE VARCHAR2(50) Not Null Name der Datenquelle DATATYPE VARCHAR2(50) Not Null Datentyp VARNAME VARCHAR2(100) Not Null NAME der VARIABLE VALUE VARCHAR2(2048) Null Wert der variable QUALITY VARCHAR2(50) Null Qualität (GOOD wenn die QuickHMI-Anbindung zum Zielgerät vorschriftsmäßig arbeitet oder BAD wenn Probleme (z.b. Timeouts) auftreten) 8
Aktuelles Datenabbild Mithilfe des Datenabbildes können Sie über externe Applikationen auf den Variablenvorrat des QuickHMI-Systems zugreifen und aktuelle Zustände auslesen. Hierzu werden die Daten in die Tabelle QHMI_DATAIMAGE abgelegt. Für jede Variable existiert eine Zeile innerhalb der Tabelle. Es werden folgende Informationen geschrieben: Spalte Spaltentyp Information TS TIMESTAMP(6) Not Null Zeitpunkt, Zeitstempel DATASOURCE VARCHAR2(50) Not Null Name der Datenquelle DATATYPE VARCHAR2(50) Not Null Datentyp VARNAME VARCHAR2(100) Not Null NAME der VARIABLE VALUE VARCHAR2(2048) Null Wert der variable QUALITY VARCHAR2(50) Null Qualität (GOOD wenn die QuickHMI-Anbindung zum Zielgerät vorschriftsmäßig arbeitet oder BAD wenn Probleme (z.b. Timeouts) auftreten 9
Haben Sie Fragen? Bei Fragen zu unserem Produkt QuickHMI, rufen Sie uns bitte unter der kostenlosen Hotline an oder senden Sie uns eine E-Mail. Kostenlose Hotline: 0800-72 35 102 E-Mail: info@indi-systems.de Wir werden Ihr Anliegen in kürzester Zeit bearbeiten oder direkt beantworten. 10