Nieskomplikowany termometr-rejestrator

Nieskomplikowany termometr-rejestrator
Pobierz PDF Download icon

Wiedza o aktualnej temperaturze jest informacją, z której korzystamy na co dzień i to wielokrotnie. Niekiedy jednak oprócz wiedzy o aktualnej temperaturze, równie przydatna jest informacja o jej wahaniach w dłuższym przedziale czasu. Termometr-rejestrator zapamiętuje te zmiany, a następnie zapisane pomiary można obejrzeć jako wykres liniowy temperatury w funkcji czasu. Całe urządzenie składa się z 10 elementów. Jest małe, przystosowane do zasilania bateryjnego i dzięki temu może być użyte do pomiarów w dowolnym miejscu.

O parametrach termometru-rejestratora zadecydowały komponenty użyte do jego budowy. Na zakres mierzonej temperatury wpłynął rodzaj zastosowanego termometru półprzewodnikowego, w tym wypadku jest to popularny DS18B20. Z kolei o zakresie dopuszczalnego napięcia zasilania decydują parametry użytego mikrokontrolera oraz karty SD zastosowanej do przechowywania danych.

Termometr-rejestrator pozwala na zapamiętywanie zmian temperatury, a następnie zarejestrowane pomiary można obejrzeć jako wykres liniowy temperatury w funkcji czasu. Całe urządzenie składa się z 10 elementów. Jest małe, przystosowane do zasilania bateryjnego i dzięki temu może być użyte do pomiarów w dowolnym miejscu.

Części składowe i budowa

Na rysunku 1 pokazano schemat ideowy urządzenia. Czujnik temperatury (na rysunku 2 pokazano rozmieszczenie wyprowadzeń sensora DS18B20 w obudowie TO-92) za pośrednictwem złącza TMP1-3 jest dołączony do mikrokontrolera US1. Wyprowadzenia czujnika należy połączyć z następującymi stykami złącza: 1 – TMP1 (Vdd), 2 – TMP2 (DQ), 3 – TMP3 (GND).

Jeżeli termometr ma współpracować z więcej niż jednym czujnikiem, każdy kolejny trzeba łączyć równolegle z pozostałymi.

Karta SD, na której będą zapisywane wyniki pomiarów, komunikuje się z mikrokontrolerem US1 w najprostszy sposób, czyli za pośrednictwem interfejsu SPI. Oprócz 3 sygnałów: MISO, MOSI i SCK, dodatkowo do sterowania karty potrzebny jest sygnał /CS. Gniazdo dla karty SD ma dwa dodatkowe wyprowadzenia sygnalizujące obecność karty w gnieździe i zabezpieczenia przed zapisem (DETECT i WRITE-PROTECT). Jednak w tej wersji urządzenia nie są one używane.

Do sterowania rejestratorem wystarczył jeden przycisk SW1. Jego naciśnięcie powoduje naprzemienne uruchomienie procesu pomiarów i rejestracji bądź przerwanie. Dioda LD1 sygnalizuje aktualny stan rejestratora a dodatkowo może informować o błędach w zapisie na karcie SD.

Kwarc Q1 dostarcza sygnał zegarowy potrzebny do odliczenia czasu pomiędzy kolejnymi pomiarami. Gdy dla zminimalizowania poboru energii większość wewnętrznych układów kontrolera jest usypianych, sygnały z kwarcu zliczane są przez wewnętrzny licznik służący do wybudzenia kontrolera przed kolejnym pomiarem temperatury.

Zadaniem diody D1 jest zabezpieczenie układu przed podaniem zasilania o błędnej polaryzacji. Jeżeli do tego dojdzie, napięcie będzie przez diodę zwierane do poziomu niezagrażającego zniszczeniem rejestratora. Nie jest to może najbardziej eleganckie rozwiązanie. Jednak włączenie diody D1 w szereg z np. plusowym wyprowadzeniem baterii jest gorszym rozwiązaniem, ponieważ powodowałoby niepotrzebny spadek napięcia zasilającego.

Sterowanie rejestratorem

Sekwencja działania termometru-rejestratora jest następująca:

1) Po włączeniu zasilania układ znajduje się w trybie gotowości. Ten stan sygnalizuje migotanie diody LD1 z częstotliwością około 3 Hz. W tym czasie można bezpiecznie wsunąć do gniazda X2 kartę SD i poczekać przez sekundę na jej wewnętrzny reset i inicjalizację.

2) W trybie gotowości naciśnięcie przycisku SW1 przez czas około sekundy powoduje przejście układu do trybu pomiarów. Najpierw skasowany zostaje, jeżeli istniał, zapisany na karcie plik poprzednich pomiarów. Potem zostaje utworzony pusty plik dla pomiarów bieżących. Po wykonaniu pierwszego pomiaru i zapisu wyników na karcie SD, dioda LD1 zostaje zgaszona a kontroler US1 wchodzi w tryb uśpienia o obniżonym poborze mocy.

3) W trybie pomiarów co około 10 sekund kontroler zostaje wybudzony, dokonuje kolejnego pomiaru temperatury i dopisuje uzyskane wyniki do pliku danych na karcie SD. Fakt dokonywania pomiaru sygnalizuje ciągłe świecenie diody LD1, która jest gaszona, gdy kontroler ponownie wchodzi w stan uśpienia.

4) W dowolnym momencie można zakończyć pomiary, naciskając przycisk SW1 przez czas nie krótszy niż 1 sekunda. Urządzenie przechodzi do trybu gotowości, co sygnalizuje migotanie diody LD1 z częstotliwością około 3 Hz. W tym momencie można bezpiecznie wyjąć kartę SD z gniazda dla przejrzenia dokonanych pomiarów albo odłączyć zasilanie od rejestratora. Można też uruchomić kolejny cykl pomiarowy przez ponowne naciśnięcie przycisku SW1.

Układ sygnalizuje wystąpienie błędu zapisu danych na karcie SD. Jeżeli dojdzie do błędu, podczas kolejnych załączeń trybu aktywnego dioda LD1 będzie migotała z częstotliwością około 10 Hz. Na rysunku 3 pokazano schemat sygnalizacji diody LD1 dla różnych stanów urządzenia.

Plik pomiarów

Plik z danymi pomiarowymi nosi standardową nazwę pomiary.txt. Plik jest zawsze tworzony w głównym katalogu karty SD. Dane w pliku zapisywane są jako zwykły tekst możliwy do podejrzenia dowolnym edytorem. W kolejnych liniach pliku znajdują się dane pomiarów, które mogą wyglądać tak:

N:00004;T1=  20.1’C;T2=  19.8’C;T3=  22.0’C;T4= ___._’C;T5= ___._’C;T6= ___._’C;T7= ___._’C;T8= ___._’C;

N:00005;T1=  19.0’C;T2=  18.6’C;T3=  21.3’C;T4= ___._’C;T5= ___._’C;T6= ___._’C;T7= ___._’C;T8= ___._’C;

W przykładzie pokazane zostały wyniki pomiarów dokonane przez 3 czujniki DS18B20. Kolejne pola rozdzielone są znakami średnika ‘;’. Najpierw po symbolu ‘N:’ zapisywanych jest pięć cyfr liczby oznaczającej numer kolejnego pomiaru. Następnie za kolejnymi symbolami ‘T1=’, ‘T2=’, … ‘T8=’ wyświetlane są cyfry wartości zarejestrowanych temperatur. W temperaturze ujemnej na pierwszym miejscu zostanie wyświetlony znak minusa ‘–’. Jeżeli temperatura z czujnika nie mogła być odczytana, bo np. czujnik nie jest zamontowany, zamiast wyniku pomiaru temperatury pojawi się znak podkreślenia ‘ ___._’C’. Każda linia kończy się niedrukowalnymi znakami CR i LF, czyli powrotu karetki i nowej linii.

Edycja wyników pomiarów

Plik pomiarów można odczytać po wyjęciu karty SD ze złącza na płytce rejestratora. Używając dowolnego czytnika kart SD, można przekopiować plik „pomiary.txt” na twardy dysk komputera. Ponieważ jest to plik o strukturze czysto tekstowej, może być przeglądany za pomocą dowolnego edytora tekstu.

Lepszą metodą jest oczywiście interpretacja danych w postaci wykresu graficznego. Można do tego użyć funkcji arkusza kalkulacyjnego. Innym rozwiązaniem jest posłużenie się programem udostępnianym przez AVT, a przeznaczonym dla termometru AVT5330. Jest to możliwe dzięki temu, że format zapisu danych rejestratora jest kompatybilny ze wspomnianym oprogramowaniem. Działanie programu polega na odczycie danych z pliku „pomiary.txt” do pamięci danych programu. Po odczycie, dane mogą być prezentowane w formie graficznej, tak jak na przykładowym rysunku 4.

Montaż termometru-rejestratora

Schemat montażowy urządzenia pokazano na rysunku 5. Żeby zaoszczędzić sobie kłopotu, montaż elementów na płytce drukowanej należy przeprowadzić w następującej kolejności: mikrokontroler US1, drobne elementy montowane powierzchniowo jak oporniki, kondensatory, diody, kwarc przewlekany Q1, którego obudowę można dodatkowo przylutować do pola na powierzchni płytki drukowanej, gniazdo X2 dla karty SD. Najlepiej zastosować gniazdo z wyrzutnikiem, przycisk SW1, złącza śrubowe do podłączenia czujników temperatury i zasilania. Czujnik można zamocować bezpośrednio w gnieździe lub zastosować 3-żyłowy kabel o długości do 3 metrów. Do zasilania nadają się 2 baterie alkaliczne typu AAA lub ich większe odpowiedniki. Końcówki przewodów koszyka baterii należy zamocować w zaciskach, pamiętając o prawidłowej polaryzacji: TMP5 (plus) i TMP6 (masa).

Płytka drukowana rejestratora została tak zaprojektowana, żeby zmieścić się w obudowie typu Z-75. W obudowie należy wywiercić otwory do przewleczenia przez nie przewodów podłączających czujniki temperatury i przewody zasilania. Płytka mocowana jest na wcisk. Po zastosowaniu obudowy rejestrator zyskuje ochronę przed przypadkowymi zwarciami i w niewielkim zakresie przed wpływem czynników zewnętrznych takich jak kurz czy woda. Ponieważ jednak po skręceniu odcinany jest dostęp do przycisku SW1, należy najpierw dołączyć zasilanie i uruchomić tryb rejestracji a dopiero potem skręcić obudowę i umieścić w miejscu docelowym.

Ograniczenia i zaobserwowane problemy w pracy rejestratora

Urządzenie zaprojektowano do pracy z zasilaniem bateryjnym. O zakresie zasilania decydują parametry użytej do zapisu danych karty SD. Nominalnie napięcie zasilania kart wynosi 3,3 V i nie powinno być przekraczane. Dwie nowe baterie typu AAA połączone szeregowo dostarczają zasilania o napięciu 3,2 V i dla nowych kart jest to napięcie wystarczające do ich pracy. Ogólnie, nowsze karty funkcjonują prawidłowo przy niższym napięciu zasilania w porównaniu z kartami starszymi. Zaobserwowany rozrzut wynosił od 3,3 V dla kart najstarszych do 2,8 V dla nowszych.

Czas ciągłej pracy rejestratora na pojedynczym zestawie baterii zależy od ich pojemności, liczby dołączonych czujników temperatury, warunków (temperatury), w której będzie pracowało urządzenie i znowu od parametrów użytej karty SD. W przerwach pomiędzy pomiarami urządzenie jest usypiane, a obniżony pobór prądu rozkłada się pomiędzy kontroler i kartę. Zależnie od jakości karty, zmierzony prąd w trybie uśpienia wynosił od mniej niż 100 mA do więcej niż 400 mA. Z przeprowadzonych prób wynika, że na jednym zestawie baterii typu AAA urządzenie powinno bez problemu funkcjonować przez co najmniej 24 godziny. Widocznym sygnałem zbyt niskiego napięcia zasilania będą błędy w zapisie na karcie sygnalizowane migotaniem diody LD1 w czasie cyklu pomiaru.

W prawidłowo działającym urządzeniu może pojawić się błąd zapisu temperatury pierwszego pomiaru. Jedna lub kilka zmierzonych temperatur będzie miała wartość około 80ºC. Linię takich błędnych pomiarów można w czasie ręcznej edycji usunąć z pliku pomiarów na karcie SD.

Kartę najlepiej wkładać do gniazda X2, gdy napięcie zasilania jest włączone. Włączanie zasilania, gdy karta jest już w gnieździe, może skutkować nieprawidłowym restartem uniemożliwiającym zapis pliku pomiarów. W takim wypadku, o ile przyczyną problemów z zapisem nie jest niskie napięcie zasilania, należy przy włączonym zasilaniu wyjąć kartę z gniazda i po chwili włożyć ją ponownie.

Ryszard Szymaniak, EP

Artykuł ukazał się w
Elektronika Praktyczna
listopad 2016
DO POBRANIA
Pobierz PDF Download icon
KIT do tego projektu
Nieskomplikowany termometr - rejestrator, AVT5573
Nieskomplikowany termometr - rejestrator, AVT5573
Wiedza o aktualnej temperaturze jest informacją, z której korzystamy na co dzień i to wielokrotnie. Zapewne z tego powodu projekty termometrów...
Zobacz w sklepie
Zobacz też
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik czerwiec 2020

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio lipiec 2020

Świat Radio

Magazyn użytkowników eteru

APA - Automatyka Podzespoły Aplikacje czerwiec 2020

APA - Automatyka Podzespoły Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna czerwiec 2020

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Praktyczny Kurs Elektroniki 2018

Praktyczny Kurs Elektroniki

24 pasjonujące projekty elektroniczne

Elektronika dla Wszystkich czerwiec 2020

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów