Projekt: Temperatur-Messsystem - Software „TAnz“


PfeilKapitel 1:Überblick über das System Menübild
PfeilKapitel 2:Sensormodul 1
PfeilKapitel 3:Sensormodul 2/3
PfeilKapitel 4:Anzeigemodul 1
PfeilKapitel 5:Anzeigemodul 2
PfeilKapitel 6:Anzeigemodul 2a
PfeilKapitel 7:Anzeigemodul 3
PfeilKapitel 8:Web-Modul
PfeilKapitel 9:Datenkommunikation
PfeilKapitel 10: Software „TAnz“
PfeilKapitel 11: Software „AnzKom“

Letzte Bearbeitung: 02.04.2006

Hinweis: Diese Software wird nicht weiterentwickelt.

Symbol Downloads

TAnz v1.16.00x vom 02.04.2006tanz_v11600x.zip

Symbol Inhaltsverzeichnis

BeschreibungAllgemeine Informationen über TAnz
InstallationInstallation von TAnz
KonfigurationKonfiguration und Einstellung von TAnz
BedienungBedienungsanleitung und komplette Beschreibung aller Funktionen
Log-FilesInformationen über den Aufbau der erzeugten Log-Files

SymbolBeschreibung

Zuerst möchte ich mich bei Michael Bodag bedanken, der dieses Programm geschrieben und kostenlos als Freeware zur Verfügung gestellt hat.

„TAnz“ ist die Abkürzung von „Temperatur-Anzeige“ und wurde mit Borlands Delphi für 32-Bit Windows geschrieben. Es sollte also auf allen 32/64-Bit Windows-Plattformen laufen, getestet wurde es bisher auf Windows 98, 2000 und XP. TAnz bietet folgende Funktionen:

SymbolInstallation

Nach dem Download von TAnz v1.16.00x wird die ZIP-Datei entpackt und der Inhalt in ein leeres Verzeichnis kopiert. Für den schnellen Zugriff auf TAnz sollte man eine Verknüpfung auf dem Desktop oder im Startmenü anlegen. Damit ist die Installation eigentlich schon abgeschlossen. Der Start von TAnz erfolgt dann durch den Aufruf von „TAnz.exe“ oder der entsprechenden Verknüpfung. Das Programm legt übrigens keine Dateien außerhalb seines Verzeichnisses an und es werden auch keine Einträge in der Registry erstellt. Die einzige Ausnahme sind die Log-Dateien: diese können in einem anderen Verzeichnis erstellt werden, falls man den vorgeschlagenen Pfad ändert. Zum Deinstallieren genügt es, das Verzeichnis von TAnz zu löschen.

TAnz-Bild 1

Beim ersten Start präsentiert sich TAnz wie im nebenstehenden Bild. Daten werden zunächst noch nicht angezeigt, da TAnz erst konfiguriert werden muss. Aber das ist relativ einfach und wird im nächsten Abschnitt beschrieben.

SymbolKonfiguration

Um alle Einstellmöglichkeiten von TAnz zu demonstrieren, habe ich eine Beispiel-Konfiguration konstruiert. Diese soll aus 15 Temperatursensoren und 4 Alarmkontakten bestehen, wobei Alarm1 als Ruhekontakt geschaltet ist. Der PC soll die Daten an COM1 empfangen.

TAnz-Bild 2 Über die Menü-Option Einstellungen und Serielle Schnittstelle gelangt man in das links dargestellte Menü. Im Feld COM stellt man die gewünschte Schnittstelle ein (im Beispiel COM1). Es werden hier nur die Schnittstellen angezeigt, welche im System vorhanden und nicht belegt sind. Sind Schnittstellen belegt (und sei es auch nur von TAnz selbst - mehr dazu im Abschnitt Bedienung), dann werden sie nicht zur Auswahl angeboten. Die Liste enthält nicht nur real vorhandene, sondern auch virtuelle Schnittstellen, z.B. von USB-RS232 Adaptern.

Für die Felder Buffer, Baud, Parity, Bits und Stop empfehle ich die im Bild angezeigten Werte. Ganz wichtig ist die Einstellung der Baudrate auf 9600, sonst funktioniert die Kommunikation überhaupt nicht.

In der nächsten Menü-Option Einstellungen und Log-Dateien werden die Namen und der Speicherort für die beiden Log-Dateien (Alarme und Temperaturen) festgelegt.

TAnz-Bild 3 Die nächste Option Einstellungen und Namenszuordnung Sensoren führt zum nebenstehenden Bild. Hier kann man für jeden Alarmeingang und jeden Temperatursensor einen Namen vergeben (maximal 12 Zeichen). Diese Namen stehen dann später im Hauptbildschirm über den Datenfeldern.

TAnz-Bild 4 Die Option Einstellungen und Alarm- und Temperaturparameter erfordert etwas mehr Aufmerksamkeit. Im oberen Teil werden zunächst die Alarmeingänge konfiguriert. In der Default-Einstellung Arbeitskontakt erkennt TAnz einen Alarm, wenn der Kontakt geschlossen wird, folglich wird bei der Einstellung Ruhekontakt der Alarm beim Öffnen des Kontaktes ausgelöst. Entsprechend der Beispiel-Konfiguration wurde hier der Alarm1 auf Ruhekontakt umgestellt.

Die Tabelle in der Mitte dient zur Einstellung der Alarmgrenzwerte und der Log-Parameter der Temperatursensoren (T1-T16). In den Spalten Minimum und Maximum kann jedem Sensor ein unterer und ein oberer Grenzwert zugeordnet werden. Im Beispiel wird ein Alarm ausgelöst, wenn die Temperatur an Sensor 1 18,0°C unterschreitet oder 35,0°C überschreitet. Beim Sensor 9 ist der Temperaturalarm deaktiviert.
Die Spalte Sekunden legt das Log-Intervall in Sekunden fest und die Spalte Log schaltet die Log-Funktion für den entsprechenden Sensor ein oder aus (Umschalten mit Doppelklick). In meinem Beispiel erscheint der Sensor 3 nicht im Log-File, alle anderen Werte werden aufgezeichnet.

Unter der Tabelle kann man das Log-Format festlegen. Beim Log-Format 1 (Datum;Zeit;T1;T2;...T16) besteht jeder Eintrag aus einer langen Zeile, welche die Daten aller Sensoren enthält. Das Ergebnis sieht dann so aus:

20041109;21:30:00;22,4;21,2;;20,5;22,1;21,7;23,6;18,9;-2,6;-2,8;8,9;57,4;51,5;49,7;12,4;
20041109;21:45:00;22,3;21,2;;20,5;22,0;21,5;23,5;18,8;-2,7;-2,8;8,9;57,2;51,6;49,9;12,3;
20041109;22:00:00;22,3;21,1;;20,3;21,8;21,3;23,6;18,9;-2,8;-2,7;8,7;57,6;51,7;49,1;12,4;
Man erkennt das Datum (09.11.2004), die Uhrzeit und die Daten der Sensoren, wobei hier der Sensor 3 (wie in der Tabelle weiter oben definiert) nicht aufgezeichnet wird. Der Sensor 16 fehlt hier ebenfalls, da er in dieser Beispiel-Konfiguration nicht vorhanden ist. Diese Log-Datei entspricht dem weit verbreiteten CSV-Format und kann deshalb relativ leicht in Datenbank- oder Tabellenkalkulations-Programme importiert werden. Wichtig: Bei diesem Log-Format sollte das Log-Intervall für alle Sensoren gleich eingestellt werden.

Beim Log-Format 2 (Tx;Datum;Zeit;Wert) wird für jeden Wert eine separate Zeile angelegt und das Ergebnis sieht hier so aus:

T1;20041109;21:30:00;22,4
T2;20041109;21:30:00;21,2
T4;20041109;21:30:00;20,5
An der ersten Stelle steht die Sensornummer (T1 entspricht Sensor 1), danach das Datum, die Uhrzeit und der Messwert. Dieses Format ermöglicht eine unterschiedliche Einstellung des Log-Intervalls für jeden Sensor. Auch diese Log-Datei entspricht dem CSV-Format und kann mit geeigneter Software weiter verarbeitet werden.

TAnz-Bild 5 Mit der Option Einstellungen und Logpositionen lässt sich die Reihenfolge der Einträge im Log-File anpassen. Diese wirkt sich allerdings nur auf das oben beschriebene Log-Format 1 aus.

Das nebenstehende Bild zeigt die Grundeinstellung, hier werden alle Temperaturwerte entsprechend der Sensornummer der Reihe nach ins Log-File geschrieben. Im Prinzip kann man diese Einstellung unverändert lassen. Wenn sich aber auf Grund von System-Erweiterungen die Sensornummern verschieben, dann sollte man diese Werte unbedingt anpassen, damit das Log-File korrekt weitergeschrieben wird.

Diese Übersicht ist folgendermaßen zu verstehen: Jedes Eingabefeld repräsentiert eine Position im Log-Eintrag. In das erste Feld T1Pos wird die Position eingetragen, an der der Temperaturwert des Sensors 1 erscheinen soll. In das Feld T2Pos kommt die Position für die Temperatur von Sensor 2 usw.

TAnz-Bild 6 Hier ein Beispiel zum besseren Verständnis: Es wurde ein neuer Sensor installiert, dem vom Sensormodul die Nummer 5 zugewiesen wurde. Dadurch verschieben sich alle Sensoren beginnend von der ehemaligen Position 5 um jeweils eine Position nach hinten, d.h. aus Sensor 5 wird Sensor 6 usw. Damit nun das Log-File nicht verfälscht wird, müssen die Logposition so wie im nebenstehenden Bild angepasst werden.

Der neue Sensor mit der Nummer 5 erscheint nun an der letzten Stelle (16) im Log-File, während die verschobenen Sensoren (alt 5-15, jetzt 6-16) an den bisherigen Logpositionen erscheinen.

TAnz-Bild 7 Die letzte Option Einstellungen und Sensorbelegung führt zu dem nebenstehenden Bild. Hier kann man für jeden Sensor eine Ausfall-Überwachung aktivieren. Fällt ein Sensor aus und ist die Überwachung dieses Sensor aktiviert, dann erscheint nach ca. einer Minute der Text SENSOR !! im Anzeigefeld. Im Beispiel wurde die Überwachung von Sensor 16 ausgeschaltet, weil er nicht vorhanden ist.

Grundsätzlich wertet TAnz (unabhängig von der Sensorbelegung) alle eingehenden Sensordaten aus und zeigt sie an.

Damit ist die Konfiguration abgeschlossen. Der Hauptbildschirm zeigt jetzt trotzdem noch keine Daten an und damit sich das ändert, kommen wir nun zur Bedienung von TAnz.

SymbolBedienung

Um den Datenempfang zu starten, muss eine Menü-Option aktiviert werden, deshalb will ich zunächst auf das Menü eingehen:

Menü Bearbeiten - Über dieses Menü gelangt man zu den Einstellungen für die Kommunikation. Folgende 3 Optionen sind verfügbar:

Menü Datei - Dieses Menü ermöglicht den Zugriff auf die Log-Funktion. Außerdem findet man hier (wie bei Windows-Programmen allgemein üblich) die Option zum Beenden von TAnz:

An dieser Stelle sollte TAnz endlich Daten anzeigen und bei der verwendeten Beispiel-Konfiguration könnte das so aussehen:

TAnz-Bild 8 Ganz oben im Bild wird die vom Sensormodul empfangene Busbelegung angezeigt. Da diese beim Einschalten des Messsystems nur einmal gesendet wird, muss TAnz vorher gestartet werden - ansonsten bleibt das Feld leer.

Im Mittelfeld erscheinen in übersichtlicher Form alle Alarme und die gemessenen Temperaturwerte. Die Datenfelder sind mit den Namen beschriftet, die wir vorher in den Einstellungen vergeben haben.
Im Bild fällt auf, dass einige Daten farbig dargestellt werden. In unserem Beispiel ist der Alarm2 (Terrassentür) gerade aktiv und dieser Zustand wird immer in dieser Form angezeigt. Der Alarm4 (Briefkasten) ist hier grün dargestellt und das bedeutet, dass dieser Alarm ausgelöst wurde, jetzt aber nicht mehr aktiv ist. Im Laufe des Tages war also offensichtlich der Postbote da und hat etwas in den Briefkasten geworfen.

Bei den Temperaturen haben die Farben die gleiche Bedeutung wie bei den Alarmen. Im Moment liegt gerade beim Sensor 5 (Kinderzimmer 1) ein Temperaturalarm an. In den Einstellungen wurde für diesen Sensor ein unterer Grenzwert von 16,0°C eingestellt, folglich wurde der Grenzwert unterschritten und führt zu einem Alarm. Hier wurde vermutlich das Fenster zum Lüften geöffnet und dann vergessen. Der grüne Wert bei Sensor 8 (Schlafzimmer) zeigt an, dass ein Grenzwert über- oder unterschritten wurde, der Wert aber jetzt sozusagen wieder im grünen Bereich ist.

Die grüne Darstellung zeigt also an, dass irgendwann ein Alarm ausgelöst wurde. Allerdings erkennt man nicht, wie oft der Alarm ausgelöst wurde. Wenn ich also in unserem Beispiel den Briefkasten geleert habe und schaue später wieder auf die Anzeige, dann kann ich anhand der grünen Anzeige nicht erkennen, ob die Klappe am Briefkasten in der Zwischenzeit ein weiteres mal geöffnet wurde (Ausnahme: die Klappe steht gerade offen und die Alarmanzeige ist folglich rot). Für diesen Zweck lassen sich über die Schaltfläche Gesamt-Reset alle Alarme (Kontakte und Temperaturen) zurücksetzen. Der Wert erscheint dann wieder schwarz und eine erneute Alarmauslösung wird wieder sichtbar. Es lassen sich auch einzelne Datenfelder zurücksetzen in dem man einfach mit der Maus in das entsprechende Feld klickt.

TAnz-Bild 9 Rechts oben fällt noch eine größere Schaltfläche mit der Beschriftung Eingangsdaten: an auf: Über diese kann ein zusätzliches Datenfenster geöffnet werden, in dem die eingehenden Roh-Daten vom Sensormodul beobachtet werden können. Das kann sehr hilfreich sein, wenn Probleme auftreten. Und auch wenn alles gut funktioniert, kann man die Eingangsdaten einschalten, damit es etwas „technischer“ aussieht :-)
Mit einem Klick auf Eingangsdaten: aus wird diese Zusatzanzeige wieder abgeschaltet. TAnz merkt sich beim Beenden, wenn das Eingangsdatenfenster eingeschaltet war und aktiviert beim nächsten Start das Fenster wieder.

SymbolLog-Files

TAnz schreibt 2 verschiedene Log-Files: Eins davon enthält alle Temperaturdaten. Dieses wird unter dem Default-Namen Temperature.LOG (kann geändert werden) gespeichert und kann im Menü Einstellungen und Alarm- und Temperaturparameter konfiguriert werden (Auswahl der Sensoren und Log-Intervall). Außerdem lässt es sich über das Menü Datei generell ein- oder ausschalten. Die erzeugte Datenstruktur habe ich bereits im Abschnitt Konfiguration beschrieben.
Folgendes gibt es noch zu beachten: TAnz verwendet bei dieser Log-Funktion ein festes Zeitraster beginnend bei 0:00 Uhr, d.h. die Aufzeichnung findet immer zu festen Zeitpunkten statt. Dazu unser Beispiel: Bei allen Sensoren wurde ein Log-Intervall von 900 Sekunden = 15 Minuten eingestellt. TAnz schreibt in diesem Fall also zu folgenden Zeiten Log-Einträge: 0:00, 0:15, 0:30, 0:45, 1:00, 1:15 usw.

Das zweite Log-File wird unter dem Default-Namen Alarm.LOG (kann ebenfalls geändert werden) gespeichert und enthält alle besonderen Ereignisse wie Alarm-Auslösungen, Alarm-Rückstellungen, Temperaturüber- und Unterschreitungen, Rückkehr von Temperaturwerten in den normalen Bereich sowie Sensorausfälle. Im Gegensatz zum Temperatur-Log kann dieses nicht konfiguriert werden und es ist immer eingeschaltet. Auch das Log-Format ist festgelegt: Tx;Datum;Zeit;Wert (entspricht dem Temperatur-Log-Format 2). Hier sind einige Beispiele und die Erklärung dazu:

A4;20041109;11:31:11;ALARM !!
A4;20041109;11:31:13;normal
Diese beiden Zeilen zeigen die Auslösung von Alarm4 am 9.11.2004 um 11:31:11 Uhr und 2 Sekunden später die Rückstellung. Passend zu meiner Beispielkonfiguration heißt das: Der Postbote hat am 9.11.2004 gegen 11:31 Uhr etwas in den Briefkasten geworfen.
T8;20041109;14:31:23;Unterschreitung
T8;20041109;14:32:14;Normal
Hier wurde am 9.11.2004 um 14:31:23 Uhr eine Temperaturunterschreitung bei Sensor 8 registriert und um 14:32:14 Uhr hat sich die Temperatur wieder normalisiert. Entsprechend der Beispiel-Konfiguration trat die kurzzeitige Unterschreitung also im Schlafzimmer auf und aus diesem Grund wird der Temperaturwert im TAnz-Fenster weiter oben grün dargestellt.
T11;20041109;19:16:14;SENSOR !!
T11;20041109;19:25:31;Normal

Dieser Log-Eintrag zeigt den vorübergehenden Ausfall von Sensor 11 an.


Startseite - Seitenanfang

Allgemeines - Projekt-Überblick - Links, Software - Neuigkeiten - „Klassiker“ - Galerie - Impressum

AVR-Programmierung - Multifunktionsuhr - Matrixuhr - Tischuhr - Wohnraumuhr - Wohnraumuhr 2 - Wecker - LCD-Wecker - Zahnputzuhr - BigBen-Türgong - Fahrtregler - EPROM-Programmiergerät - Temperaturmesssystem - USB-RS232 Interface - Weihnachtsstern - Kleine Projekte