Bodentemperaturmessung im Garten
Wer einen Garten hat interessiert sich irgendwann auch mal für die Bodentemperatur. Dazu brauchts Sensoren, ein Controller der alle ausliest und einen PC zum loggen … Natürlich kann man mit diesem Logger auch alles anderen mitloggen an Temperaturen wie Heizungsrohre, Raumtemperaturen, Gefrierschränke u.s.w.
Zuerst braucht man Temperatursensoren von Dallas DS18S20, einige 100nF Kondensatoren, als Gehäuse Edelstahlröhrchen und dreiadriges Kabel.
Die Edelstahlröhrchen sind aus V2A, 6mm Aussen-Durchmesser, Wandstärke ca. 0,6mm, damit Innen-Durchmesser 4,8mm.
Anschluß der Stützkondensatoren und Zuleitungen jeweils wie folgt :
Ein Sensor vorbereitet für den „Verguß“ im Röhrchen :
Alle 8 Stück :
Röhrchen von oben mit Heisskleber füllen, den Elektronikteil eintauchen und oben wieder Heisskleber nachfüllen :
Nach dem erkalten den überstehenden Heisskleber einfach abschneiden, Schrumpfschlauch drüber und fertig :
Das ganze wird dann zuhause in Ruhe abgelängt und in einer Verteilerdose mit Hilfe von viiiiiiiel Heisskleber wasserdicht gemacht, denn die Dose wird mit eingegraben :
Dann kommt der anstrengenste Teil : Ein 1m tiefes Loch buddeln … Danke nochmals an Matthias !
In den folgenden Tiefen haben wir Sensoren versenkt :
2cm, 5cm, 10cm, 20cm, 50cm, 75cm, 100cm
Kennungen der Sensoren : Tiefe Sensor-ID 2cm 49928D02 5cm 5E5F8D02 10cm 5C758D02 20cm 78788D02 50cm C59E8D02 75cm 5DAF8D02 100cm A37D8D02
Auf der Microcontroller Seite hatte ich mich diesmal für den PIC 16F1827 entschieden. Anbindung an den PC als Datenlogger via USB, hier ausgeführt mit dem UM2102 USB-RS232 Wandler von ELV. Am Schaltplan ist nichts besonders dran :
So sieht das ganze dann in einem ersten Versuchsaufbau aus.
An der Lüsterklemmen rechts kann man nun alle Sensoren anschließen. Um die Hardware zu testen habe ich noch einige Sensoren Huckepack oben draufgesetzt und via Sockelleisten steckbar gestaltet.
Die Software für den PIC wie immer brutalstmöglich in reinstem Assembler geschrieben. Aus dem Riesen Softwarepaket von Microchip entnimmt man ein paar Dateien für den MPASM5.46. Den Rest brauche ich nicht …
Auf der PC Seite habe ich die Software in Lazarus1.2 geschrieben (IDE für Freepascal) zusammen mit der Synaser Bibliothek zum ansprechen der seriellen Schnittstelle.
Paket Link Lazarus 1.2 http://www.lazarus.freepascal.org/ Synaser Bibliothek http://synapse.ararat.cz/doku.php/download https://svn.code.sf.net/p/synalist/code/trunk/ Doku zu Synaser Bibliothek http://synapse.ararat.cz/doc/help/synaser.TBlockSerial.html Microchip MPLAB 8.00 http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en023073&redirects=archived
So siehts dann aus :
Ablauf wie folgt : Programm starten, nach COM-Ports scannen, gewünschten COM-Port anklicken und „Open COM-Port“ wählen. Ab jetzt wird alles mitgeschrieben.
Rechts wählt man den Zyklus aus in dem die Daten auf die Platte geschrieben werden.
Weiterverarbeitung dann in LibreOffice.
Die Lazarus Sources zum ändern und selberkompilieren gibts hier : Tempreader_PC.zip :
Den Assembler Source mit dem Hex-File gibts hier : Tempreader_PIC.zip :