Niniejszy projekt pełni rolę analogowego, elektronicznego termometru retro. Dzięki zastosowaniu czujnika DS18B20 mającego maksymalną rozdzielczość pomiaru 12 bitów można mierzyć temperaturę z dużą dokładnością w szerokim zakresie, zależnie od zastosowanej skali. Prezentowany termometr jest szczególnie polecany miłośnikom elektroniki retro, którym znudziły się termometry cyfrowe.
Barografy Nixie
Barografy Nixie są lampami wskaźnikowymi, w których długość poświaty przy katodzie zależy od prądu anodowego przepływającego przez lampę. Od lamp Nixie różnią się budową, chociaż zasada ich działania opiera się na tych samych zjawiska fizycznych. Zawierają anodę i katodę lub anodę i dwie katody (katodę główną i katodę sterującą) zamknięte w cienkiej szklanej rurce wypełnionej gazem szlachetnym pod ciśnieniem.
Barografy Nixie mają niższe napięcie zapłonu, gaśnięcia oraz pracy w porównaniu z wyświetlaczami (lampami) cyfrowymi Nixie. Napięcie zapłonu dla lamp IN13 wynosi około 140 V, a napięcie pracy 94...99 V. Długość poświaty przy katodzie jest liniowo zależna od prądu anodowego. Po zwiększeniu prądu lampa wchodzi w nasycenie (zwiększa się prąd anodowy, a długość zostaje na stałym poziomie maksymalnym). Po wejściu w nasycenie zwiększa się jedynie intensywność poświaty przy katodzie, a zmniejsza żywotność lampy. Z tego powodu nigdy nie powinno się wprowadzać lampy w nasycenie.
Opis układu
Schemat ideowy termometra pokazano na rysunku 1. Sercem układu jest mikrokontroler ATtiny2313 pracujący z użyciem wewnętrznego oscylatora RC o częstotliwości 1 MHz. Jako czujnik temperatury zastosowano popularny układ scalony DS18B20 umożliwiający pomiar w zakresie od -55 do 125°C z rozdzielczością maksymalną 12 bitów. Układ U1, wraz z zestawem elementów zewnętrznych, stabilizuje napięcie 5 V służące do zasilania części cyfrowej termometru.
Ze względu na wysokie napięcie zapłonu lampy zastosowano przetwornice zaporową podwyższającą napięcie na kontrolerze MC34063. Tranzystor MOSFET T1 wraz z rezystorem R3 rozładowującym bramkę pełni rolę klucza. Podczas przewodzenia tranzystora dławik L1 magazynuje energię w postaci pola magnetycznego, a dioda D1 jest spolaryzowana zaporowo zabezpieczając kondensator C7 przed rozładowaniem.
Po otwarciu tranzystora w cewce indukuje się napięcie dodające się do napięcia zasilania na skutek, czego dioda zaczyna przewodzić doładowując kondensator do napięcia wyższego niż wyjściowe. Rezystorowy dzielnik napięcia R4, R5 jest elementem pętli sprzężenia zwrotnego, dzięki której przetwornica utrzymuje stabilne napięcie wyjściowe.
Do wyświetlania temperatury zastosowano - pokazany na fotografii 2 - radziecki barograf Nixie IN13 o napięciu zapłonu 140 V. Do sterowania lampą służy regulowane źródło prądowe składające się z wzmacniacza operacyjnego U4A, tranzystora wysokonapięciowego T2 oraz rezystora R9 i potencjometru kalibracyjnego. Wzmacniacz operacyjny steruje prądem bazy tranzystora T2 tak, aby spadek napięcia na rezystorze i potencjometrze był taki sam, jak napięcie na wejściu nieodwracającym.
Wzmacniacz operacyjny U4B pełni rolę wtórnika napięciowego, a rezystor R7 i kondensator C10 tworzą filtr dolnoprzepustowy o bardzo dużej stałej czasowej. Po doprowadzeniu na jego wejście sygnału PWM o dużej częstotliwości kondensator jest bardzo szybko ładowny i rozładowywany, dzięki czemu harmoniczne sygnału są tłumione, a składowa stała przepuszczana. Sumę rezystancji R9 i PR1 dobrana w taki sposób, aby dla przebiegu PWM o wypełnieniu 100% (co odpowiada napięciu +5 V na wejściu U4A) uzyskać maksymalną długość poświaty.
Skala termometru zaprojektowano w taki sposób, aby dla temperatury +25°C długość powiaty przy katodzie lampy wynosiła 55 mm, z czego wynika zależność liniowa: l=3,4×T-30. Przyjmując rozdzielczość 8-bitową generatora PWM oraz długość poświaty 65 mm dla wypełnienia 50% (PWM=127), otrzymujemy ostatecznie liniową zależność wypełnienia od temperatury: PWM=6,64×T-58,6.
Implementacja takiej zależności niosłaby za sobą konieczność stosowania mnożenia licz zmiennoprzecinkowych, co powoduje zwiększenie objętości programu i zmniejszenie prędkości jego wykonywania, dlatego stworzono stałą tablicę wartości funkcji dla argumentów od 10 do 44°C (dokładny zakres możliwych do wyświetlenia temperatur) zapisaną w pamięci Flash mikrokontrolera. Potencjometr PR1 przewidziano do korygowania rozbieżności parametrów barografów Nixie oraz do kalibracji skali.
Cyfrowy czujnik dokonuje pomiaru temperatury z rozdzielczością 12 bitów i częstotliwością 0,5 Hz (co 2 sekundy). Aby wyeliminować ewentualne błędy czujnika wprowadzono zakres akceptowanych temperatur od +10°C do +44°C. Wszystkie wartości spoza zakresu są uznawane za błędne i nie są brane pod uwagę. W związku z tym termometr nadaje się do pomiaru temperatur pokojowych.
W przypadku zniszczenia lub braku czujnika, program co pewien czas zeruje interfejs 1-Wire i sprawdza czy termometr został dołączony. Wszystkie operacje konwersji temperatury oparto na przesunięciach bitowych. Cześć ułamkowa jest pozyskiwana w operacji reszty z dzielenia i zaokrąglana zgodnie z zasadami obowiązującymi w matematyce.
Wykaz elementówRezystory: (THT 0,5 W) Kondensatory: Półprzewodniki: Inne: |
Montaż i uruchomienie
Na rysunku 3 pokazano schemat montażowy układu. Kolejność wlutowywania elementów nie jest konieczna, ale warto zacząć od najmniejszych aż po największe. Podczas montażu należy pamiętać, aby wlutować wszystkie zworki. Pod mikrokontroler i pod pozostałe układy scalone najlepiej zastosować odpowiednie podstawki.
Aby zaprogramować mikrokontroler należy wgrać plik wsad.hex do pamięci Flash mikrokontrolera za pomocą dowolnego programatora dla mikrokontrolerów AVR, na przykład STK200/300 lub STK500. Fusebitów nie trzeba ustawiać. Jako opornik zabezpieczający przed przekroczeniem prądu szczytowego Ipk przetwornicy (R12) należy użyć rezystora metalizowanego. Na tranzystor T1 należy koniecznie zastosować radiator TO-220.
Czujnik temperatury DS18B20 charakteryzuje się bardzo dużą czułością, dlatego jego pomiar może zostać zafałszowany poprzez grzejące się elementy. Aby uniknąć tego efektu, najlepiej dołączyć go za pomocą przewodu wlutowując specjale gniazdo z tyłu układu. Na rysunku 4 pokazano propozycję wykonania skali do termometru. Odpowiednią podstawkę pod lampę najlepiej wykonać z blachy aluminiowej. Skalę można przykleić za pomocą taśmy dwustronnej. Na fotografii 5 pokazano zamontowany układ z podstawką i skalą.
Po wlutowaniu wszystkich elementów należy skalibrować termometr. W tym celu należy włożyć zworkę w złącze J1, co spowoduje wyświetlanie temperatury 25°C. Jeśli jest wskazywana inna temperatura, to należy wyregulować wskazanie za pomocą potencjometru PR1. Po skalibrowaniu urządzenia wystarczy wyciągnąć zworkę i termometr jest gotowy do pracy. Należy pamiętać, że wszystkie zmiany pozycji potencjometru w trakcie pracy mogą rozkalibrować układ.
Termometr powinien być zasilany napięciem stałym +12 V, choć małe różnice napięcia zasilania nie wpłyną negatywnie na jego działanie. Może zastosować np. zasilacz wtyczkowy 12 VDC o wydajności prądowej minimum 250 mA. Ze względów bezpieczeństwa a także walorów estetycznych termometr najlepiej umieścić w drewnianej obudowie.
Termometr jest przeznaczony do pomiaru temperatury pokojowej. Aby wykorzystać go do pomiaru większego zakresu temperatury - należy zaprojektować skalę oraz zmienić program.
Krzysztof Gońka
krzysztof.gonka@interia.pl