Cyfrowy pomiar temperatury w browarze
Przywykliśmy do klasycznego pomiaru temperatury termometrami analogowymi, ale w prosty i szybki sposób można samodzielnie wykonać dokładny, wielopunktowy termometr elektroniczny oparty na układach DS1820 (dokładnie DS18B20 lub DS18S20) firmy Maxim (wcześniej Dallas). Zaletą takiego rozwiązania jest brak możliwych uszkodzeń mechanicznych (metalowa kapilara), wysoka dokładność, możliwość używania na jednej magistrali wielu czujników, brak konieczności kłopotliwej kalibracji, niska cena układu. Do obrazowania oraz zapisu pomiary będziemy wykorzystywać komputer PC wyposażony w port RS232
Wymagane elementy i schemat ideowy
Do wykonania układu wystarczą proste elementy, dostępne w każdym sklepie elektronicznym. Cena nie powinna przekroczyć 20zł
- 1x DallasSemiconductor DS1820 temperature sensor (został użyty DS18S20)
- 2x dioda schottky 1N5818 (lub odpowiedniki - BAT85)
- 1x dioda zenera 6.2V 1N5234 (lub odpowiednik)
- 1x dioda zenera 3.9V 1N5228 (lub odpowiednik)
- 1x złącze RS232C żeńskie + obudowa
- 1x rezystor 1,5KOhm
Układ możemy wykonać lutując elementy na tzw. "pająka", czyli bez płytki drukowanej i zamknąć w obudowie DB9.
Cały układ pomiarowy oparty na czujnikach DS1820 to DS9097 - warto zapamiętać ten symbol, ponieważ właśnie taki występuje w oprogramowaniu.
Oprogramowanie
MS Windows
Najpopularniejsze programy na platformę MS Windows. Działają na wersjach 98/XP/2000/2003 (Vista, 7 - nie testowane)
- Lampomittari http://www.elektroniikka.org/thermometer/
- LogTemp http://www.mrsoft.fi/ohj01en.htm
- Termo (pomiar tylko z jednego czujnika!) http://www.grzesiek21.republika.pl/termo.htm
Linux
Do pomiaru temperatury w systemach Linux najlepiej sprawuje się konsolowy program Digitemp. Występuje w większości repozytoriów dystrybucji Linuxowych. Instalacja w Debian/Ubuntu sprowadza się do wydania komendy:
~# apt-get install digitemp
Po zainstalowaniu wystarczy nam podstawowa konfiguracja:
~# digitemp_DS9097 -i -s /dev/ttyS0 -a
Oznaczenie przełączników: -i inicjalizacja pliku konfiguracyjnego w katalogu domowym -s określenie portu szeregowego. W tym przypadku port pierwszy RS232 -a zapisanie danych wszystkich wykrytych czyjników.
Powinieneś otrzymać wynik podobny do poniższego
~# digitemp_DS9097 -i -s /dev/ttyS0 -a DigiTemp v3.5.0 Copyright 1996-2007 by Brian C. Lane GNU Public License v2.0 - http://www.digitemp.com Turning off all DS2409 Couplers .... Searching the 1-Wire LAN 107C2F9901080026 : DS1820/DS18S20/DS1920 Temperature Sensor ROM #0 : 107C2F9901080026 Wrote .digitemprc Dec 28 18:50:49 Sensor 0 C: 0.50 F: 32.90
Teraz wystarczy wydać komendę
~# digitemp_DS9097 -a
dzięki czemu otrzymamy wynik odczytu temperatury:
DigiTemp v3.5.0 Copyright 1996-2007 by Brian C. Lane GNU Public License v2.0 - http://www.digitemp.com Dec 28 18:52:48 Sensor 0 C: 0.50 F: 32.90
OWFS oraz rejestracja danych poprzez Mumin
Budowa sondy pomiarowej
Aby nasz termometr sprawdził się w działaniu w środowisku o dużej wilgotności (czytaj - w zacierze lub brzeczce) musimy ochronić układ przez dostępem wody i zwarcia wyprowadzeń. W praktyce można zastosować kapilarę wykonaną z:
- rurki miedzianej
- rurki z stali nierdzewnej
- dedykowanej obudowy
- długiej koszulki termokurczliwej
W przypadku dwóch pierwszych rozwiązań zakończenie możemy zalutować lub zaklepać w imadle. Warto umieścić czujnik w silikonie termo-przewodzącym. (pasta termo-przewodząca do procesorów komputerowych)