Universeller Analogsensor für Wetterstationen
© 2004 Helmut Bayerlein, dc3yc [at] darc [.] de
Der Aussensensor mit AD-Converter besteht hauptsächlich aus
einem Microprozessor 89C4051 (Atmel), einem 8-Bit Analog-Digital-Converter (ADC)
ADCV 08832 (National Semiconductors) oder TLV 0832 (Texas Instruments) sowie
einem 433 MHz-Sendemodul HFS 300. Dieses Sendemodul wird auch in den
Wetterstationsserien WS2000 und WS2500 verwendet, das Datenübertragungsformat
ist zu diesen Stationen kompatibel. Somit können diese Stationen um praktisch
beliebige Sensoren erweitert werden.
Der ADC wandelt zum jeweiligen Sendezeitpunkt (ca. alle drei Minuten) die
angelegte Spannung in einen Temperaturwert zwischen 0º
und 25.5º um. Als Referenz dient die Betriebsspannung von 3.3 Volt. Die
Auflösung beträgt somit ca. 13 mV. Höhere Eingangsspannungen können durch
vorgeschaltete Spannungsteiler-Widerstände angepasst werden.
Schaltungstechnisch sieht das Ganze folgendermassen aus:
Das IC3 sowie R7 sind nicht zu bestücken, sie sind für andere Aufgaben vorgesehen. Die Widerstände R1 und R2 sind zum Anpassen der Eingangsspannung gedacht. Diode D1 verhindert zu hohe Eingangsspannungen und schützt so den Wandler. Bitte nicht vergessen, die Drahtbrücke nahe IC2 zu bestücken!
Der Bestückungsplan sieht so aus:
Es werden folgende Bauteile benötigt:
Bauteil | Wert | Bestellbezeichnung | Bezug, z.B. |
R1, R2 | je nach Eingangsspannung | Reichelt | |
R3 | 10k | Reichelt | |
R4, R8, R9 | nur bei digitalem Eingang | Reichelt | |
R5, R6 | 4k7 | Reichelt | |
R7 | nicht bestückt | ||
RN1 | 47k, 8fach-Netzwerk | Reichelt | |
D1 | BAT 41, Schottkydiode | Reichelt | |
D2 | nur bei digitalem Eingang | Reichelt | |
T1 | BC557B | Reichelt | |
C1, C2 | 33p ker | Reichelt | |
C3, C4 | 10u /10V Tantal | Reichelt | |
Q1 | 3.93216MHz | 3,93216-HC18 | Reichelt |
IC1 | AT89C2051 (WX-ADC) | Autor | |
IC2 | ADCV08832, TLV0832 | National Semiconductors, Texas Instruments | |
IC3 | nicht bestückt | ||
Sockel | DIL20 | Reichelt | |
K2 | Stiftleiste 20pol | STIFTL_36G | Reichelt |
Jumper | Jumper 3St. | Reichelt | |
Sendemodul | HFS300 | 30-409-64 | ELV |
Leiterplatte WX-ADC | Autor |
Den AD-Wandler besorgt man sich am billigsten als Muster bei den Herstellern. Einzelstücke werden via Internetbestellung kostenlos abgegeben!
Es sind noch zwei digitale Eingänge vorhanden, die für verschiedene digitale Funktionen verwendet werden können. Eine wäre z.B. der Anschluss eines Conrad-Feuchtemessers über R4, um Nebel, Sprühregen, leichten Schneefall oder ähnliches zu detektieren. Dieser Eingang ist über den Vorwiderstand R4 und die Z-Diode D2 vor zu hohen Eingangsspannungen geschützt.
An Steckerleiste K2 kann die Adresse des Sensors über Jumper
an den Ports P1.0, P1.1 und P1.2 eingestellt werden. Wenn mittels Jumper alle
drei Kontakte überbrückt werden, ist Adresse 0 eingestellt. Bei drei offenen
Kontakten sendet der Sensor mit Adresse 7. Das niederwertige Bit (K2 Pin 1 und
2) ist auf Port P1.0 geführt (Prozessorpin 12); das höchstwertige Bit (K2 Pin 5
und 6) auf Port P1.2 (Pin 14). Ein gesteckter Jumper bedeutet Low-Pegel.
Die Unterscheidung, ob Aussen-
oder Innensensorprotokoll verwendet werden soll, muss über die Software erfolgen.
An Pin 19 und 20 wird die Betriebsspannung von 3.3 V angelegt oder es werden
zwei Alkaline-Zellen angeschlossen. Die Verwendung weiterer Portpins wird ganz
am Ende beschrieben..
Das Layout für eine ca. 50 mm * 65 mm grosse Leiterplatte kann beim Autor angefragt werden, wie auch das Programm oder programmierte Prozessoren dort erhältlich sind. EMail-Adresse siehe oben.
Bestückungsseite des Prototypen:
Lötseite mit dem 8 Bit-AD-Wandler:
Ausserdem gibt es eine Version mit 10 oder 12 Bit Auflösung, die mit den Bausteinen MAX1240 oder MAX1242 von Maxim arbeitet. Der Schaltplan sieht folgendermassen aus:
Ein SMD-Layout, das in ein Gehäuse des AS2000 passt, gibt es auch.
Die Firmwareversion ab WX_ADC 1.1 kann alle drei Wandler bedienen. Die Auflösung wird an Port P1_7 eingestellt. Low-Pegel (Brücke) bedeutet 10 Bit (MAX1242) oder 12 Bit (MAX1240); High-Pegel (keine Brücke) dementsprechend 8Bit (ADCV08832). Die Messwerte werden wie folgt übertragen:
Wird Port P1_6 mit Masse verbunden, sendet der Sender für Testzwecke ca. alle 10 Sekunden.
Springe zur Sensorübersicht.