3.1 Allgemeines
Seit einiger Zeit sind verschiedenste Mikrocontrollersysteme
mit bereits implementiertem Ethernet zu erschwinglichen Preisen
am Hardwaremarkt verfügbar. Die meisten Hardwarehersteller
liefern gleich die notwendigen Software-Bibliotheken mit, sodass
man in kurzer Zeit netzwerkfähige Anwendungen implementieren
kann. Eine Problemstellung, die in der Praxis immer wieder auftritt
ist, dass einzelne Mikrocontrollersystem dezentral bestimmte Aufgaben
erledigen und mit einem zentralen Steuerungssystem zusammenarbeiten
oder Informationen zentral erfasst werden sollen. Für diesen
Fall benötigt man ein "Stück" Software, welches
als zentrales Bindeglied arbeitet. Genau für diese Problemstellung
wurde der Log-Server entwickelt. Abbildung 1 zeigt dazu eine mögliche
prinzipelle Anwendung, wie sie in vielen Fällen auftritt.
Abbildung 1: Beispiel eines Netzwerkes mit dezentralen
Mikrocontrollern in Verbindung mit der Log-Server-Anwendung
Im dargestellten Konzept arbeiten die Mikrocontrollersysteme als
eigenständige Einheiten und übernehmen Mess- steuer und
Regelungsaufgaben. Der Log-Server stellt das zentrale Bindeglied
zwischen den Mikrocontrollersystemen und den Benutzern bzw. anderen
Systemen her. Im Beispiel werden die vom Log-Server erfassten Daten
in einer Datenbank gespeichert. Diese Daten bilden die Basis für
eine Web-Andwendung. Alternativ greifen externe Clients auch direkt
auf den Log-Server zu um beispielsweise den aktuellen Zustand der
Infiormatuionsverarbeitung online mitzuverfolgen. Ebenso weden Kommandos
an den Log-Server gesendet, die dann an die entsprechenden Mikrocontrollersysteme
weitergeleitet werden können.
3.2 Funktionalität
des Log-Servers
Der Log-Server stellt softwareseitig das
zentrale Bindeglied zwischen einzelnen Mikrocontroller-Modulen (z.B.
PC-System) zu anderen Systemen her. Die wesentlichen Funktionalitäten
werden nachfolgend kurz beschrieben.:
3.2.1 Speicherung der Prozessdaten und Aktivitäten
Die von den einzelnen Mikrocontrollersystemen erfassten Prozessdaten
werden in einre MS-Access (alternativ auch SQL-Server oder andere
SQL-fähige Datenbank) gespeichert und stehen schliesslich zur
Weiterverarbeitung (z.B. als Datengrundlage für eine Web-Anwendung)
zur Verfügung.
3.2.2 Log-Funktion
Alle Vorgänge, seien es Steuer-Kommandos vom Log-Server oder
aufgetretene Fehler vor allem aber die Prozessdaten werden in der
Datenbank laufend erfasst und stehen zur späteren Auswertung
zur Verfügung.
3.2.3 Benachrichtigung
Der Log-Server enthält ein Benachrichtigungsmodul, welches
einfach eingebunden werden kann. Das Benachrichtigungsmodul hat
die Aufgabe, beim Auftreten bestimmter Ereignisse ausgewählte
Personen oder weitere Systeme zu benachrichtigen. Eine detailliertere
Beschreibung des implementierten Modells folgt weiter unten.
3.2.4 Synchronisierung der Uhren
Der Logserver sendet zu zeitlich vorbestimmten Zeitpunkten Systemzeit
und -datum an die Mikrocontrollersysteme und gleicht dadurch die
Uhren der einzelnen Mikrocontrollersysteme ab..
3.2.5 Watchdog
Im Falle eines Verbindungsabbruches wird dies vom Log-Server erkannt
(Watchdog) und nach einer vorbestimmten Dauer versucht die Verbindung
wieder herzustellen.
3.2.6 Verbindung zu anderen Systemen
Der Log-Server kann über eine TCP-IP-Verbindung von weiteren
Systemen erreicht werden. Von hier aus können alle Aktivitäten
mitverfolgt werden. Möglich ist es auch, Kommandos an den Log-Server
zu senden, die dann an einzelne Mikrocontrollesysteme weitergeleitet
werden.
3.2.7 Textbasierte Darstellung der Aktivitiäten
Alle Aktiviäten des Log-Servers werden auf der grafischen
Benutzeroberfläche in einer Liste dargestellt. Zudem sehen
vordefinierte Filterfunktionen zur Verfügung.
3.2.8 Administration
Die Administration der angeschlossenen Geräte und die Einstellungen
des Log-Servers erfolgt zum Grössten Teil über eine Datenbank.
Abbildung 2 zeigt die Software-Architektur des Log-Servers.
Abbildung 2: Software-Architektur des Log-Servers
3.3 Screenshot
3.4 Was erhalten sie mit dem Kauf
des Log-Servers?
Mit dem Kauf des Log-Servers erhalten sie
-
den Source-Code als Delphi Code (Version 7, professional) als
Grundlage für die Anbindung der Module. Standardmässig
ist bereits eine Reportingfunktion, ein Benachrichtigungs¬modul,
einzelne Befehle für den Datenaustausch zwischen der CCU
und den Mikrocontroller-Modulen, ein Port zur Verbindung mit
einem in der Hierarchie höheren System implementiert.
-
eine Beschreibung der Funktionsweise der wesentlichen Routinen
und des grundlegenden Konzeptes sowie
-
drei Beispielanwendungen in denen die wesentlichen Funktionen
und ihre Anwendung demonstriert werden.
3.,5 Benachrichtigungsmodul
Im Log-Server ist ein einfaches Benachrichtigungsmodul implementiert.
Dieses stellt eine Möglichkeit zur Verfügung, ausgesuchte
Personen oder Systeme beim Auftreten bestimmter Ereignisse zu informieren.
Die Anwendung ist grossteiles în der Datenbank realisiert.
Das Datenbankmodell ist in Abbildung 2 abgebildet. Die Steuerung
selbst erfolgt wiederum durch den Log-Server.
Abbildung 2: Konzept des Benachrichtigungsmodul
Das Benachrichtigungsmodul arbeitet mit Meldungsnummern (oder Fehlernummeren),
die je nach Anwendung frei in der Datenbank definiert werden. Wenn
der Log-Server ein bestimmtes Ereignis registriert (je nach Anwendung
definiert). Jede Meldung kann genau einer Meldungsklasse zugeordnet
werden. Davon ausgehend werden die zu informierenden Benutzergruppen
ermittelt und die zu informierenden Personen abgeleitet. Für
jede Person kann in einer weiteren Tabelle die Benachrichtigungsarten
(abhängig von der Meldungsklasse) ermittelt werden. Die Ablauflogik
von einer Meldung zu einer Nachricht kann im Flussdiagramm
betrachtet werden.
Bei Verwendung einer Datenbank, welche bei Eintreten bestimmter
Ereignisse Code ausführen kann wie z.B. MS-SQL-Server oder
ORACLE, dann kann der Code für die Benachrichtigungsroutinen
auch direkt in der Datenbank implementiert werden. Bei Verwendung
von MS-Access empfiehlt sich allerdings aus Performance-Gründen
die oben beschriebene Vorgehensweise.
3.6 Struktur der Befehlsverarbeitung
Die Kommunikation zwischen dem Log-Server und den Mikroccontrollersystemen
erfolgt vom Log-Server getrieben aus. Der Log-Server sendet zu diesem
Zweck ein textbasiertes oder binäres Kommando an ein ausgesuchtes
Mikrocontrollersystem. Dieses verarbeitet das Kommando und sendet
das Ergebnis der Verarbeitung zurück an den Log-Server. Ein
einfaches Beispiel, welches nach dem gleichen Prinzip arbeitet findet
man hier.
3.5 Preis
Für die unter Punkt 3.2 beschriebenen Positionen
gelten folgende Preise:
|