Termometr TMP006. Bezdotykowy pomiar temperatury

Termometr TMP006. Bezdotykowy pomiar temperatury
Pobierz PDF Download icon
Artykuł przedstawia pierwszy bezdotykowy czujnik temperatury skonstruowany przez firmę Texas Instruments. Układ TMP006, bo o nim mowa, umożliwia nie tylko bezdotykowy pomiar temperatury obiektu, który znajduje się w pewnej odległości od czujnika, ale również mierzy temperaturę otoczenia. Zatem, obojętne czy chcemy tylko zmierzyć temperaturę kubka z herbatą, czy zbudować nieskomplikowany system pomiarowy pomiaru promieniowania podczerwonego - naprawdę warto zapoznać się z tym czujnikiem.

Rysunek 1. MAX6581 – 8-kanałowy czujnik temperatury

Rozpoczynając przygodę z mikrokontrolerami większość osób kompiluje kod, który ma za zadanie mrugać diodą LED podłączoną do jednego z pinów układu. Jest to pewnego rodzaju odpowiednik typowego programu "Hello World!" dla początkujących programistów. I choć pierwsze uruchomienie takiej aplikacji przynosi dużo radości, to po pewnym czasie przychodzi pora na tworzenie bardziej użytecznych i funkcjonalnych urządzeń. Chyba każdy prędzej czy później ma do czynienia z pomiarem temperatury otoczenia: pokoju, na zewnątrz, w piwnicy czy wewnątrz obudowy komputera.

Na rynku dostępna jest cała gama czujników temperatury. Tanim rozwiązaniem jest umieszczenie w konfi guracji dzielnika napięcia rezystancyjnego czujnika, którego opór zależy liniowo od temperatury. Napięcie z dzielnika może być odczytywane poprzez wbudowany w mikrokontroler przetwornik A/D i przeliczane na odpowiadającą mu wartość temperatury. Rozwiązanie to nie jest jednak zalecane w aplikacjach o niskim poborze energii, ponieważ dzielnik napięcia cały czas pobiera prąd.

Innymi, powszechnie używanymi czujnikami są czujniki cyfrowe posiadające wbudowany przetwornik ADC, możliwość ustawiania dokładności pomiaru (co często skutkuje dłuższym czasem pomiaru) czy zgłaszanie przerwania do mikrokontrolera poprzez pin po przekroczeniu temperatury progowej otoczenia. Popularnym, a zarazem łatwym w obsłudze czujnikiem jest dobrze znany układ DS18B20 (Maxim-Dallas), który można zakupić już za kilka złotych.

Rysunek 2. Schemat blokowy układu TMP006

Często wykorzystywanym sposobem na pomiar temperatury, w szczególności wewnątrz układów, jest odczyt napięcia złącza baza-emiter w tranzystorze w połączeniu diodowym. Napięcie to jest zależne od temperatury. Przykładem interfejsu do pomiarów temperatur tym sposobem jest układ MAX6581 (rysunek 1).

Co jednak w przypadku, gdy chcemy zmierzyć temperaturę jakiegoś obiektu, a nie tylko otoczenia układu pomiarowego? Przykładowo kubka z gorącą kawą czy herbatą. Z pomocą przychodzi promieniowanie podczerwone (ang. infrared - IR).

Promieniowanie IR

Rysunek 3. Charakterystyka wpływu kąta nachylenia czujnika TMP006 na ilość promieniowania IR, emitowanego przez mierzony obiekt, pochłanianego przez czujnik

Nie zagłębiając się w fizykę zjawisk można w łatwy sposób przedstawić zasadę działania urządzenia do pomiaru temperatury za pomocą promieniowania podczerwonego posiłkując się serią filmów "Predator". Tytułowy stwór posiadał możliwość przełączenia trybów widzenia w swoim "hełmie". W jednym z tych trybów mógł "widzieć temperaturę" - czyli zakres promieniowania niewidziany w normalnych warunkach przez oko ludzkie. Ciepłe obiekty obserwowane były jako kolor czerwony, a zimne jako niebieski.

Dzięki takiej wizji Predator miał możliwość odnalezienia człowieka biegnącego w nocy przez las. Na takiej samej zasadzie - rejestrowania promieniowania podczerwonego wysyłanego przez obiekt o danej temperaturze - działają dzisiejsze kamery termowizyjne oraz pirometry. Urządzenia te znajdują zastosowanie w wielu dziedzinach życia: medycyna, budownictwo, ratownictwo, etc.

Oglądając przez kamerę termowizyjną płytkę PCB działającego urządzenia można stwierdzić, które elementy się przegrzewają i gdzie należy zastosować radiator. Zatem może to być bardzo przydatne urządzenie w serwisie lub warsztacie konstruktora. Jednak ceny takich kamer dalece wykraczają poza budżet zwykłego elektronika hobbysty. Jednak co jeśli użylibyśmy tylko jednego pixela z matrycy takiej kamery ... ?

Układ TMP006

Rysunek 4. Potrzeba zapewnienia izolacji termicznej na płytce PCB w celu minimalizacji błędu pomiaru temperatury

Firma Texas Instruments wypuściła na rynek pierwszy z serii układ do bezdotykowego pomiaru temperatury. W jednej obudowie z czujnikiem IR zintegrowano między innymi wzmacniacz, przetwornik A/D oraz sensor temperatury otoczenia (rysunek 2). Układ może być zasilany napięciem z przedziału 2,2...5,5 V, a komunikacja odbywa się poprzez interfejs I2C. Zatem stosować go można w aplikacjach z praktycznie każdym mikrokontrolerem.

Zakres pomiaru temperatur rozciąga się w przedziale -40°C...125°C, dzięki czemu wachlarz możliwości jest bardzo duży - od pomiaru temperatury produktów spożywczych do sprawdzania czy obudowa silniczka nie nagrzewa się zbyt mocno podczas pracy. Ponieważ bezdotykowy pomiar temperatury odbywa się w sposób pasywny, skutkuje to niskim poborem prądu pomiaru, który podczas ciągłej pracy wynosi maksymalnie 325 mA. Podobnie jak duża liczba produktów TI, układ TMP006 można zamówić za darmo w postaci próbek na stronie producenta.

Rysunek 5. Dobór odpowiedniej odległości pomiaru temperatury

Podczas bezdotykowego pomiaru temperatury bardzo istotne jest ułożenie czujnika względem powierzchni obiektu mierzonego. Rysunek 3 przedstawia jaki procent promieniowania IR pochłanianego jest przez czujnik w stosunku do kąta nachylenia czujnika na obiektu.

Aby pomiar był jak najbardziej dokładny, układ TMP006 należy umieścić na płytce PCB w odpowiedni sposób (rysunek 4). Projektując płytkę PCB potrzeba zwrócić uwagę na konieczność zastosowania izolacji termicznej wokół czujnika (w postaci obwódki wytrawionego laminatu), dzięki czemu możliwa jest minimalizacja podgrzewania czujnika przez inne układy generujące ciepło. Kolejną ważną rzeczą o której należy pamiętać jest odległość z jakiej powinien być dokonywany pomiar.

Rysunek 5 przedstawia w jaki sposób dobiera się odpowiednią odległość. Obszar widzenia powinien w całości zawierać badaną powierzchnię. Dla uproszczenia przyjęto, że kształt obiektu emitującego promieniowanie IR jest kołem o promieniu r.

Zmieniając odległość (d) pomiędzy obiektem, a czujnikiem można zauważyć, że dla stosunku (d/r)<(1/2) ilość promieniowania IR emitowanego przez obiekt jest pochłaniana przez czujnik w ponad 90%.

Zatem dla tych wartości można uznać, że pomiar będzie prawidłowy. Przykładowo, jeżeli chcemy mierzyć temperaturę monety 1 złotowej (o promieniu 11,5 mm), to jej odległość od czujnika nie powinna przekraczać: d=r/2=5,575 mm.

Obsługa układu odbywa się przez interfejs I2C. Zapis oraz odczyt rejestrów danych (16 bitowych) jest możliwy poprzez wpisanie ich adresu do rejestru POINTER (8 bitowy). Rejestry danych to:

  • V_object (0x00) - napięcie czujnika promieniowania IR,
  • T_ambient (0x01) - temperatura otoczenia układu,
  • Configuration (0x02) - rejestr konfiguracyjny,
  • Manufacturer ID (0xFE) - identyfikator producenta (0x5449),
  • Device ID (0xFF) - identyfikator urządzenia (0x0067).

Płytka drukowana

Dla prawidłowego działania układu niezbędne jest zapewnienie stabilności pomiaru sensora IR poprzez odpowiednio zaprojektowaną płytkę PCB. Dokumentacja TMP006 przedstawia (rysunek 6) przykładowy projekt fragmentu płytki. Na rysunku 7 zostały pokazano wygląd przykładowej płytki, którą zaprojektowałem w Eagle na potrzeby tego artykułu.

Do montażu przydatna jest lutownica HotAir, ponieważ opisywane układy dostępne są w obudowach BGA o boku 1,6 mm. Choć są to bardzo małe wymiary, to komuś kto nigdy jeszcze nie lutował układów BGA nie powinno to sprawić większego problemu, ponieważ jest tylko 8 kulek (pinów) i wszystkie znajdują się na obwodzie. Przy dobrym ułożeniu układu na płytce i odpowiednim podgrzaniu gorącym powietrzem można zaobserwować połączenie się kulek cyny z padami płytki.

Rysunek 6. Wymagania projektowe dla płytki PCB układu TMP006

Rysunek 7. Projekt płytki PCB

Ponieważ na wierzchu obudowy znajduje się specjalne "okienko" przez które dokonywany jest pomiar IR, to należy zachować szczególną ostrożność i nie uszkodzić go, np. poprzez przyciśnięcie lub zarysowanie pesetą. Jeżeli wierzch obudowy zabrudzi się, można delikatnie przetrzeć ją wacikiem nasączonym alkoholem. Przed ułożeniem układu należy znaleźć znacznik obudowy (może być potrzebna lupa) i skierować go w stronę miejsca naznaczonego kropką na warstwie TOP. Na fotografii 8 zaprezentowano układ po zmontowaniu.

Płytka PCB została zaprojektowana w taki sposób, aby możliwy był dostęp do wszystkich pinów TMP006, w tym ustalanie jego adresu, a także szybki montaż na płytkach PCB systemów w których czujnik będzie wykorzystywany lub podpięcie pod płytkę przewodu do czujnika.

Firmware

Rysunek 8. Gotowy moduł z układem TMP006

Układ został przetestowany przy użyciu płytki ewaluacyjnej STK z procesorem EFM32 Gecko (Cortex-M3). Na płycie CD i serwerze FTP zawierającymi dodatkowe materiały do artykułu, został umieszczony kod źródłowy aplikacji. Po inicjalizacji zegarów, w pętli cyklicznie odczytywane są temperatury: zdalna i lokalna - poprzez funkcję void TMP006_ TemperatureGet(float *objectTemp, float *dieTemp), która z powodzeniem może być użyta w projektach Czytelników wykorzystujących inne mikrokontrolery, po wcześniejszej implementacji odczytu rejestrów przez I2C - funkcja int TMP006_RegisterGet(I2C_TypeDef *i2c, uint8_t addr, uint8_ t reg, uint16_t *val).

Ponieważ układ TMP006 zapisuje w rejestrach wartość temperatury otoczenia oraz wartość napięcia czujnika IR, niezbędne jest dokonanie obliczeń przez mikrokontroler w celu otrzymania wartości temperatury obiektu zdalnego. Dzieje się to właśnie w funkcji TMP006_TemperatureGet. Wzory, parametry i algorytm otrzymywania temperatury z napięcia opisane są w podręczniku użytkownika układu TMP006.

Na fotografii 9 przedstawiono bezdotykowy pomiar temperatury herbaty w kubku i wyświetlenie jej wartości na LCD.

Podsumowanie

Rysunek 9. Bezdotykowy pomiar temperatury

Czujniki temperatury używa się w wielu projektach. Warto sięgnąć po układ TMP006, ponieważ umożliwia on na pomiar temperatury zarówno otoczenia, jak i zdalnego obiektu. Brak konieczności fizycznego kontaktu czujnika z powierzchnią, której temperatura jest mierzona, co pozwala na szerszy zakres zastosowań. Komercyjnie takie czujniki sprawdzają, np. temperaturę obudowy telefonu komórkowego. W domowych projektach ich zastosowanie ogranicza tylko wyobraźnia - rozpoczynając od pomiaru temperatury skóry człowieka, a kończąc na stabilizacji temperatury ulubionego napoju.

Dostępność układu w obudowie BGA nie powinno zniechęcać nawet początkujących elektroników, gdyż cierpliwość przy lutowaniu z pewnością zostanie wynagrodzona ciekawymi urządzeniami. Niski pobór prądu oraz prostota obsługi przez I2C pozwalają na stosowanie czujnika w systemach mobilnych zasilanych z baterii 3 V.

Artykuł ma na celu przedstawienie podstawowych zasad działania układu TMP006. Udostępnione schematy mini płytki PCB, kod źródłowy do obsługi czujnika pozwolą na szybsze i bezproblemowe uruchomienie czujnika niskim kosztem oraz być może jego implementację w projektach Czytelników. Być może układy zyskają taką popularność na dobrze znane czujniki temperatury DS18B20. W końcu ich interfejs jest równie prosty, a za niedużo większą cenę dostajemy większą funkcjonalność.

Wojciech Gelmuda
gelmi@student.agh.edu.pl

Dodatkowe materiały znajdziesz na FTP
user: 32858, pass: 4285avne

Artykuł ukazał się w
Luty 2013
DO POBRANIA
Pobierz PDF Download icon
Zobacz też
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik lipiec 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 lipiec 2020

APA - Automatyka Podzespoły Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna lipiec 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 lipiec 2020

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów