Projekt: Temperatur-Messsystem - Überblick über das System


Kapitel 1: Überblick über das System
Kapitel 2: Sensormodul 1
Kapitel 3: Sensormodul 2/3
Kapitel 4: Anzeigemodul 1
Kapitel 5: Anzeigemodul 2
Kapitel 6: Anzeigemodul 3
Kapitel 7: Datenkommunikation
Kapitel 8: Software "Tanz"
Kapitel 9: Software "AnzKom"


Dieses Messsystem dient zur Erfassung der Daten von bis zu 16 Temperatursensoren im Bereich von -55°C bis +125°C. Zusätzlich stehen noch 4 Alarmeingänge zur Verfügung, an denen Kontakte angeschlossen werden können. Das Projekt besteht derzeit aus 6 Hardware- und 2 Software-Komponenten: dem Sensormodul 1, den verbesserten Sensormodulen 2 und 3, dem kleinen Anzeigemodul 1, dem großen Anzeigemodul 2, dem LED-Anzeigemodul 3 sowie den beiden PC-Programmen "Tanz" und "AnzKom". Die Sensormodule erfassen die Temperaturen über 1-Wire-Sensoren und überwachen die Alarmeingänge. Die aufbereiteten Daten werden dann zyklisch über eine RS-232 Schnittstelle an die Anzeigemodule gesendet, welche die Daten übersichtlich darstellen und aufzeichnen können. Mit den beiden PC-Programmen können die Daten komfortabel angezeigt, aufgezeichnet und ausgewertet werden. Derzeit ist eine umfangreiche Erweiterung in Arbeit, welche die Anzahl der Temperatursensoren auf 24 erweitert und außerdem den Anschluss von bis zu 3 Luftfeuchtigkeitssensoren und eines Luftdrucksensors ermöglicht.

Letzte Bearbeitung: 30.07.2011

Überblick über das System

Wenn man in einer größeren Wohnung oder in einem Haus wohnt, dann kann es recht nützlich sein, alle Raumtemperaturen im Überblick zu haben. Deshalb entwickelte ich dieses Messsystem, welches ursprünglich bis zu 16 Temperaturen messen und übersichtlich anzeigen konnte. Im Moment wird das System schrittweise auf 24 Temperatursensoren, 3 Luftfeuchtigkeitssensoren und einen Luftdrucksensor erweitert. Das System besteht aus mehreren Komponenten und das hat folgenden Grund: Die Hausverkabelung endet meist in einem Anschlussraum, die Temperaturen möchte man aber lieber im Wohnzimmer ablesen. Deshalb wird ein Sensormodul in der Nähe der Hausverteilung installiert und die Anzeigemodule dort, wo man die Daten ablesen und auswerten möchte. Die Datenübertragung zwischen Sensor- und Anzeigemodulen erfolgt über eine zweidrähtige RS-232-Verbindung mit 9600 Baud.

Ein Sensormodul kommuniziert direkt mit den Temperatur- und Luftfeuchtigkeitssensoren über ein 1-Wire-Netzwerk. Hier stehen 8 Bus-Leitungen zur Verfügung, an denen insgesamt 24 Temperatur- und 3 Luftfeuchtigkeitssensoren von Dallas/Maxim (DS1820, DS18S20, DS18B20, DS1822, DS1920 sowie DS2438 für die Luftfeuchtigkeit) betrieben werden können. Die aufbereiteten Daten werden dann über eine RS-232 Schnittstelle zu den Anzeigemodulen bzw. PCs gesendet. Zum Anzeigen der Daten stehen 3 unterschiedliche Anzeigemodule zur Verfügung. Das einfache Anzeigemodul 1 kann 8 Temperaturen auf einem LCD anzeigen. Das große Anzeigemodul 2 zeigt 16 Temperaturen gleichzeitig auf einem grafischen LCD an, bietet mehr Funktionen und stellt optionale Schnittstellen für RS-232, USB und Bluetooth zur direkten Kommunikation mit einem PC zur Verfügung. Das Anzeigemodul 3 ist wieder etwas einfacher aufgebaut und ermöglicht die Anzeige von 2 Temperaturen auf großen LED-Elementen. Die Stromversorgung der Module erfolgt mit einem einfachen Steckernetzgerät mit einer Spannung von 10-20V (12V empfohlen) am jeweiligen Standort. Mit einer zusätzlichen Leitung ist auch eine zentrale Versorgung möglich.

Zum Temperaturmesssystem gehören auch 2 Software-Komponenten. Mittels "TAnz" können die vom Sensormodul gesendeten Daten übersichtlich angezeigt und aufgezeichnet werden, es stellt somit ein Anzeigemodul in Softwareform dar. "AnzKom" ermöglicht die komfortable Kommunikation mit dem großen Anzeigemodul 2 sowie die Speicherung und Darstellung der gesammelten Daten.

Sensormodul 1 Sensormodul 2 Anzeigemodul 1 Anzeigemodul 3 Anzeigemodul 2 AnzKom TAnz Nebenstehendes Bild zeigt den prinzipiellen Aufbau des Messsystems. Da die komplette Beschreibung dieses Projektes sehr umfangreich ist, habe ich sie in mehrere Kapitel aufgeteilt, wobei in jedem eine Komponente des Gesamtsystems beschrieben wird. Durch Klick auf eines der gelben Elemente gelangt man zur entsprechenden Kurzbeschreibung und dort wiederum kann durch Klick auf das Bild oder die Überschrift zum gewünschten Kapitel gesprungen werden. Auf jeder Kapitel-Seite befindet sich zusätzlich oben und unten noch ein kleines Menü für eine schnelle Navigation durch die einzelnen Modulbeschreibungen.

Wichtiger Hinweis: Im Moment ist eine umfangreiche Erweiterung des gesamten Temperaturmesssystems in Arbeit. Dies wird relativ viel Zeit in Anspruch nehmen und die einzelnen Komponenten werden schrittweise erweitert. Der aktuelle Stand ist folgender:

Komponente Software Status
Sensormodul 1 v1.07 wird nicht weiterentwickelt
Sensormodul 2 v2.00 Fertig, erfasst Daten von 24 Temperatur- und 3 Luftfeuchtigkeitssensoren
Sensormodul 3 v2.00 Fertig, erfasst Daten von 24 Temperatur-, 3 Luftfeuchtigkeitssensoren und einem Luftdrucksensor
Anzeigemodul 1 v1.06 Software-Update geplant
Anzeigemodul 2 v2.020 Software- und Hardware-Update geplant (EEPROM-Erweiterung erforderlich)
Anzeigemodul 3 v1.00 Software-Update geplant
Software "TAnz" v1.16.00x noch offen (wird vermutlich in "AnzKom" integriert)
Software "AnzKom" v1.060 Software-Update geplant

Die folgende Kompatibilitäts-Übersicht zeigt, welchen Komponenten in der Übergangszeit kombiniert werden können und welche Einschränkungen zu erwarten sind:

  Anzeigemodul 1 Anzeigemodul 2 Anzeigemodul 3 TAnz AnzKom
Sensormodul 1 vollständig kompatibel vollständig kompatibel vollständig kompatibel vollständig kompatibel vollständig kompatibel
Sensormodul 2
(Software v1.00)
vollständig kompatibel vollständig kompatibel vollständig kompatibel vollständig kompatibel vollständig kompatibel
Sensormodul 2
(Software v2.00)
nur Anzeige der Temperatursensoren 1-8 und a-h möglich nur Anzeige und Erfassung der Temperatursensoren 1-8 und a-h möglich nur Anzeige der Temperatursensoren 1-8 und a-h möglich nur Anzeige und Erfassung der Temperatursensoren 1-8 und a-h möglich nur Anzeige und Erfassung der Temperatursensoren 1-8 und a-h möglich
Sensormodul 3 nur Anzeige der Temperatursensoren 1-8 und a-h möglich nur Anzeige und Erfassung der Temperatursensoren 1-8 und a-h möglich nur Anzeige der Temperatursensoren 1-8 und a-h möglich nur Anzeige und Erfassung der Temperatursensoren 1-8 und a-h möglich nur Anzeige und Erfassung der Temperatursensoren 1-8 und a-h möglich

Sensormodul 1

Dieses Modul besteht im Kern aus einem ATmega8, welcher insgesamt 8 1-Wire Busse zur Verfügung stellt, die mit maximal 16 Temperatursensoren beschaltet werden können. Die ermittelten Messdaten werden auf eine Auflösung von 0,1°C gebracht, ins ASCII-Format gewandelt und mithilfe eines MAX232 per RS-232 zu Anzeigemodulen oder PCs gesendet. Außerdem stehen noch 4 Alarm-Eingänge zur Verfügung, die z.B. mit Tür-Kontakten beschaltet werden können. Der Alarmzustand der 4 Eingänge wird ebenfalls per RS-232 ausgegeben und kann von den Anzeigemodulen oder vom PC ausgewertet werden. Dieses Sensormodul kann optional mit einem kleinen I²C Spezial-LCD ausgestattet werden, so dass man die Aktivitäten des Moduls beobachten kann. Es ist aber auch ein Betrieb ohne LCD möglich.

Hinweis: Dieses Modul wird nicht weiterentwickelt. Ich empfehle den Aufbau des Sensormoduls 3 bzw. den Umbau zum Sensormodul 3.

Sensormodul 2, Sensormodul 3

Das Sensormodul 2 stellt eine verbesserte Version des Sensormoduls 1 dar. Es ist sowohl mit seinen Anschlüssen als auch mit den Sendedaten vollständig kompatibel zum Sensormodul 1. Auch dieses Modul arbeitet mit 8 1-Wire Bussen und stellt 4 Alarmeingänge zur Verfügung. Das Sensormodul 2 bietet aber mehr Möglichkeiten: Hier können mit der aktuellen Software insgesamt 24 Temperatursensoren und 3 Luftfeuchtigkeitssensoren angeschlossen werden. Weiterhin bietet ein Standard-LCD mit 4x20 Zeichen einen guten Überblick über die ermittelten Sensordaten und Alarme. Mit einem Taster können verschiedene Anzeigen ausgewählt werden und es lassen sich einige Einstellungen konfigurieren.

Das Sensormodul 3 erlaubt durch eine kleine Hardware-Modifikation gegenüber dem Sensormodul 2 den zusätzlichen Anschluss eines Luftdrucksensors direkt auf dem Modul. Alle weiteren Funktionen sind hier identisch zum Sensormodul 2.

Anzeigemodul 1

Hier wird ein AT90S2313 bzw. ATtiny2313 und ein Standard-LCD mit 4x20 Zeichen verwendet. Auf dem LCD werden im Normalbetrieb die Messwerte von 8 Temperatursensoren angezeigt. Für jeden Messwert kann ein oberer und ein unterer Grenzwert festgelegt werden. Bei dessen Über- oder Unterschreitung ertönt ein kurzes Tonsignal und der entsprechende Temperaturwert beginnt zu blinken. Wird ein Alarm an den 4 Eingängen des Sensormoduls erkannt, dann schaltet die Anzeige in den Alarmmodus um und signalisiert die anstehenden Alarme. Zusätzlich weist eine rote LED und ein Signalton auf den Alarm hin. Mit einem Taster kann zwischen der Temperatur- und der Alarm-Anzeige gewechselt werden. Falls die Datenverbindung zwischen Sensor- und Anzeigemodul ausfällt, dann wird dies entsprechend signalisiert. Auch der Ausfall eines einzelnen Sensors wird angezeigt.

Hinweis: Dieses Modul kann zurzeit noch nicht alle Daten des Sensormoduls 2 oder 3 anzeigen, es ist nur die Anzeige der Temperatursensoren 1-8 und a-h möglich. Ein Update der Software ist geplant.

Alle Eigenschaften in Stichpunkten:

Anzeigemodul 2

Dieses Modul stellt den großen Bruder des oben beschriebenen Anzeigemoduls 1 dar. Es arbeitet mit einem ATmega128 und kann 16 Temperaturen und 4 Alarme gleichzeitig auf einem grafischen Display mit 240x128 Pixeln anzeigen. Auch bei diesem Modul können Grenzwerte eingestellt werden, die bei Über- oder Unterschreitung zu einer Alarmmeldung führen. Zusätzlich werden die aufgetretenen Temperaturmeldungen durch Markierungen angezeigt und in einem Meldungs-Log mit Datum und Uhrzeit festgehalten. Gleiches gilt für die Meldungen der 4 Alarmeingänge des Sensormoduls. Über eine Menüsteuerung können Minimalwerte, Maximalwerte und alle aufgetretenen Meldungen angezeigt werden; weiterhin lassen sich alle gespeicherten Temperaturdaten über eine konfigurierbare Grafik-Anzeige darstellen. Die gesamte Konfiguration des Anzeigemoduls erfolgt über eine Menüführung direkt am Gerät.

Hinweis: Dieses Modul kann zurzeit noch nicht alle Daten des Sensormoduls 2 oder 3 verarbeiten, es ist nur die Anzeige und Speicherung der Temperatursensoren 1-8 und a-h möglich. Ein Update der Software ist geplant.

Alle Eigenschaften in Stichpunkten:

Anzeigemodul 3

Dieses Anzeigemodul ist für eine ständige und gut sichtbare Anzeige von 2 Temperaturwerten gedacht und technisch gesehen relativ einfach aufgebaut. Im Gegensatz zu den beiden anderen Anzeigemodulen ist dieses mit einer LED-Anzeige ausgestattet. Zwei Schaltungsvarianten ermöglichen die Verwendung von praktisch allen LED-Größen. Wahlweise lässt sich das Modul zur Anzeige einer einzelnen Temperatur vereinfachen. Neben den Temperaturen können bei Bedarf auch Alarme angezeigt werden, eine akustische Signalisierung ist aber nicht vorgesehen. Die Helligkeit der Anzeige wird mithilfe eines Lichtsensors an die Umgebung angepasst. Außer einem versteckten Taster zur Konfiguration sind keine weiteren Bedienelemente vorhanden.

Hinweis: Dieses Modul kann zurzeit noch nicht alle Daten des Sensormoduls 2 oder 3 anzeigen, es ist nur die Anzeige der Temperatursensoren 1-8 und a-h möglich. Ein Update der Software ist geplant.

Alle Eigenschaften in Stichpunkten:

Datenkommunikation

In diesem Kapitel wird beschrieben, wie die Kommunikation zwischen Sensormodul und Anzeigemodul(en) erfolgt und wie ein PC in das System eingebunden werden kann. Es wird sowohl auf die RS-232 Schnittstellenparameter als auch auf die übertragenen Datenpakete eingegangen. Mit diesen Informationen ist es möglich, eigene Komponenten ins System zu integrieren.

Software "TAnz"

Dieses Kapitel stellt die von Michael Bodag entwickelte Software "TAnz" (Temperatur-Anzeige) vor, welche die übersichtliche Anzeige der eingehenden Temperatur- und Alarmmeldungen ermöglicht. Für diesen Zweck wird das Sensormodul mit einem PC verbunden - entweder direkt über RS-232 oder über einen Wandler auch über USB. Neben der aktuellen Anzeige der eingehenden Daten ist auch eine Aufzeichnung der Daten in Form von Log-Files möglich, wobei die Log-Intervalle frei gewählt werden können.

Hinweis: "TAnz" kann zurzeit noch nicht alle Daten des Sensormoduls 2 oder 3 anzeigen oder aufzeichnen, es ist nur die Anzeige der Temperatursensoren 1-8 und a-h möglich. Zurzeit ist noch nicht geklärt, ob es ein Update geben wird. Wahrscheinlich werden einige Funktionen von "TAnz" im nachfolgend beschriebenen "AnzKom" integriert.

Alle Eigenschaften in Stichpunkten:

Software "AnzKom"

In diesem Kapitel wird die Software "AnzKom" (Anzeigemodul-Kommunikation) vorgestellt, welche zur komfortablen Daten-Kommunikation mit dem Anzeigemodul 2 bestimmt ist. Mithilfe von "AnzKom" lassen sich die gesammelten Daten des Anzeigemoduls 2 auslesen und in einer Datenbasis speichern. Die Temperaturdaten können dann grafisch oder in Listenform dargestellt werden, wobei bis zu 4 Temperaturen gleichzeitig betrachtet werden können. Meldungsdaten werden in Listenform angezeigt und können gefiltert werden.

Hinweis: "AnzKom" kann zurzeit noch nicht alle Daten des Sensormoduls 2 oder 3 anzeigen oder speichern, es kann nur die Temperatursensoren 1-8 und a-h verarbeiten. Ein Update ist geplant.

Alle Eigenschaften in Stichpunkten:


Kapitel 1: Überblick über das System
Kapitel 2: Sensormodul 1
Kapitel 3: Sensormodul 2/3
Kapitel 4: Anzeigemodul 1
Kapitel 5: Anzeigemodul 2
Kapitel 6: Anzeigemodul 3
Kapitel 7: Datenkommunikation
Kapitel 8: Software "TAnz"
Kapitel 9: Software "AnzKom"


Allgemeines - Projekt-Überblick - Links, Software - Neuigkeiten - "Klassiker" - Galerie - Impressum
AVR-Programmierung - AVR-Bootloader - Multifunktionsuhr - Tischuhr - Wohnraumuhr - Wecker - Zahnputzuhr - BigBen-Türgong - Fahrtregler - EPROM-Programmiergerät - Temperaturmesssystem - USB-RS232 Interface - Kleine Projekte