Dokumentation zur DFComDLL.dll / DFCom_x64.dll  04.03.05.00
Funktionsweise der DLL

Die DLL ist die Schnittstelle zwischen einer Softwareanwendung und den AEIII+ / MasterIV - Geräten. Alle die Geräte betreffenden Aufgaben werden von der Softwareanwendung an die DLL übergeben, dort verarbeitet und gegebenenfalls an das anzusprechende Gerät weitergeleitet.

Behandlung von Datensätzen

Um Datensätze aus den Geräten zu lesen muss zuerst die jeweilige Kommunikationsschnittstelle mit einer der Funktionen DFCComOpenSerial, DFCComOpenSocket (AEIII+) oder DFCComOpenIV (MasterIV) erfolgreich initialisiert werden.

Verwendende Technik bei AEIII+

Danach wird mit der Methode DFCComCollectData das Gerät mit der angegebenen Busnummer bekannt gegeben und der erste Datensatz (oder alle Daten, je nach Firmwareversion) aus dem Gerät gelesen. Die Funktion DFCComGetDatensatz bestätigt diesen zuvor durch DFCComCollectData ausgelesenen Datensatz, übergibt die Daten in den zur verfügung zu stellenden Datenpuffer und liest den ggf. nächsten Datensatz aus dem Gerätespeicher aus. Dieser wird dann bei dem nächsten Aufruf von DFCComGetDatensatz quittiert und in den Datenpuffer übergeben. Auf diese Weise werden durch folgeaufrufe der Funktion DFCComGetDatensatz einzelne Datensätze aus dem Gerät an die Anwendung übergeben.

Zu verwendende Technik bei MasterIV Danach wird mit der Methode DFCReadRecord das Gerät angesprochen und der erste Datensatz aus dem Gerät gelesen. Nach erfolgreicher Verarbeitung des Datensatzes durch Ihre Anwendung muss mit der Funktion DFCQuitRecord der zuvor gelesenen Datensatz quittiert werden. Erst nach erfolgreicher Ausführung der quittierung wird durch die Firmware auf den nächsten Datensatz gewechselt. Durch erneuten Aufruf der Funktion bestätigt diesen zuvor durch DFCComCollectData ausgelesenen Datensatz, übergibt die Daten in den zur verfügung zu stellenden Datenpuffer und liest den ggf. nächsten Datensatz aus dem Gerätespeicher aus. Dieser wird dann bei dem nächsten Aufruf von DFCComGetDatensatz quittiert und in den Datenpuffer übergeben. Auf diese Weise werden durch folgeaufrufe der Funktion DFCComGetDatensatz einzelne Datensätze aus dem Gerät an die Anwendung übergeben.

Nach Ausführung aller benötigten Kommunikationsbefehle, muss mit der Funktion DFCComClose die Kommunikationsschnittstelle wieder geschlossen werden. Es kann während der Kommunikation kein Datensatz verloren gehen, bei einer Störung während der Kommunikation kann es jedoch vorkommen das ein Datensatz zweimal ausgelesen wird (Aussage gilt für Firmwareversion > 2.0). Die Datensätze werden ab der Firmwareversion 03.01.20 beim AEIII+ sowie 04.00.21 beim PZE-MasterIV in der chronologischen Reihenfolge geliefert.

Anmerkung zur Datensatz- und Listenbeschreibung (Tabellendefinitionen)

Es können gleichzeitig mehrere Verbindungen, so genannte Kanäle, unter verwendung verschiedenen Schnittstellen aufgebaut werden. Für jeden Kanal wird ein eigener interner Speicherbereich verwendet, der jedoch die Datensatzbeschreibungen und Listenbeschreibungen des zuletzt mit DFCLoadDatensatzbeschreibungausgelesenen Gerätes ( und DFCLoadListenbeschreibung) vorhält. D. h., wenn Sie verschiedene Setupkonfigurationen in den Geräten verwenden, ist eine Aktualisierung der Datensatz- und Listenbeschreibungen erforderlich.

Bei offen gehaltenen Kanälen ist folgendes zusätzlich zu beachten.

Wenn die Verbindung zwischen der DLL und dem Gerät unterbrochen wurde, dann sollte dieses durch die Fehlerbehandlung auf folgende Weise abgefangen werden (siehe auch 1.2 Exemplarischer Programmaufbau). Prüfen ob alle anzusprechenden Geräte im Kanal einen Fehler bei "eigentlich" geöffnetem Kanal liefern. Die Verbindung des Kanals mit DFCComClose() schließen. Neuverbindung durch DFCComOpenIV() oder DFCComOpenSerial, DFCComOpenSocket je nach Gerätetyp und Verbindungsart durchführen.