W tym artykule przyglądamy się czwartej klasie czujników temperatury w serii artykułów poświęconych pomiarowi temperatury. W wprowadzeniu stworzyliśmy zestaw szablonów projektowych, które pozwolą nam opracować stosowalne, analogowe lub cyfrowe karty czujników do testowania różnych typów czujników temperatury. Na końcu serii zbudujemy zestaw płyt głównych dla tych kart, co pozwoli nam porównać wydajność i dokładność nie tylko różnych typów czujników, ale także różnych implementacji tych czujników.
W tej serii przyjrzymy się szerokiej gamie czujników temperatury. Będziemy rozmawiać o ich zaletach i wadach, a także o typowych topologiach ich implementacji. Seria obejmie:
Dzisiaj przyglądamy się układom scalonym czujników temperatury analogowych - będziemy mieli tylko jedną implementację na układ, w przeciwieństwie do poprzednich artykułów. Te układy scalone zajmują się wszystkim linearyzacją i wzmacnianiem, które musieliśmy wykonać sami, używając elementu rezystancyjnego do pomiaru temperatury. Te czujniki mogą wewnętrznie posiadać różne topologie i typy czujników, ale ich wewnętrzna implementacja nie ma dla nas znaczenia. Wszystkie dostarczają stosunkowo liniowe wyjście, które nadaje się do bezpośredniego użycia z analogowo-cyfrowym przetwornikiem (ADC) mikrokontrolera lub z analogowymi układami elektronicznymi.
Z niewielką liczbą wymaganych komponentów wspierających, ich wysoką precyzją i wygodnym napięciem wyjściowym, mogłoby się wydawać, że użycie analogowego układu scalonego czujnika będzie znacznie droższe niż implementacja własna przy użyciu jednego z dyskretnych elementów czujnikowych, które już omówiliśmy. Ogólnie rzecz biorąc, jest odwrotnie. Zazwyczaj możesz dodać analogowy układ scalony czujnika temperatury do swojego obwodu za niższy koszt niż w przypadku wszystkich, poza najprostszymi, implementacjami czujnika temperatury na bazie komponentów dyskretnych, a wyjście będzie znacznie bardziej precyzyjne i liniowe.
Tak jak we wszystkich moich projektach, szczegóły projektu, schematy oraz pliki płytki można znaleźć na GitHubie razem z innymi implementacjami czujników temperatury. Projekt jest udostępniony na otwartej licencji MIT, która pozwala na używanie projektów lub ich części do celów osobistych lub komercyjnych, według własnego uznania.
Powyżej znajduje się projekt PCB, o którym będziesz czytać w Altium 365 Viewer, darmowym sposobie na łączenie się ze współpracownikami, klientami i przyjaciółmi z możliwością przeglądania projektu lub pobrania go jednym kliknięciem! Wgraj swój projekt w ciągu kilku sekund i miej interaktywny sposób na dogłębne przyjrzenie się mu bez potrzeby posiadania ciężkiego oprogramowania czy dużej mocy obliczeniowej komputera.
Z wieloma opcjami implementacji typów czujników, na które patrzyliśmy w poprzednich artykułach, możesz myśleć w tym momencie, że wykrywanie temperatury to dużo ciężkiej pracy, gdy używa się pasywnych komponentów. Jeśli chcesz po prostu prosty liniowy napięcie, które ściśle koreluje z temperaturą, wtedy najlepiej będzie spojrzeć na analogowy czujnik temperatury. Analogowe napięcie pozwala na próbkowanie temperatury za pomocą pinu ADC mikrokontrolera. Alternatywnie, możesz użyć wyjścia do zasilania innych analogowych układów, takich jak komparator, aby zapewnić kontrolę temperatury lub funkcje bezpieczeństwa bez potrzeby używania mikrokontrolera lub innego urządzenia cyfrowego.
Wewnętrznie, te czujniki zazwyczaj działają dość podobnie do pasywnych komponentów, na które wcześniej patrzyliśmy. Jednak mają wbudowaną kompensację, aby zlinearyzować ich wyjścia. Gdy wyjście jest mniej niż doskonale liniowe, karta katalogowa zazwyczaj zawiera formułę, która pozwala na dokładną konwersję napięcia na temperaturę bez potrzeby testowania czujnika w laboratorium, aby określić zmienne kompensacji. To znacznie upraszcza proces inżynieryjny w porównaniu z kwalifikowaniem obwodu zbudowanego przy użyciu elementu rezystancyjnego i wzmacniaczy operacyjnych lub pomiarowych.
Pomimo tej wygody, analogowe układy scalone do pomiaru temperatury są tańsze niż pasywne komponenty, które przyjrzywaliśmy się przy porównywalnych poziomach dokładności/precyzji. Za koszt realizacji dowolnego rozwiązania innego niż dzielnik napięcia, można by kupić czujnik analogowy. Zakresy pomiarowe temperatur tych układów scalonych są bardziej ograniczone niż w przypadku RTD, ale są podobne do zakresu reklamowanego dla termistorów. Krzem w czujnikach oraz fakt, że zazwyczaj są one lutowane do płytki lub przewodów, będzie ograniczał maksymalną temperaturę, jednak mimo to, typowy zakres pomiarowy temperatur może mieścić się w przedziale od -55°C do 150°C. Ten zakres temperatur powinien być wystarczający dla zdecydowanej większości projektów, które muszą monitorować warunki środowiskowe w miejscu, gdzie działają inne urządzenia elektroniczne.
W tym projekcie przyjrzymy się trzem różnym czujnikom, które oferują różnorodne zakresy temperatur pracy i precyzje, wraz z szerokim zakresem napięć wejściowych.
Nazwa |
LMT87DCKT |
LM62 |
MAX6605MXK |
Typ |
Analogowy |
Analogowy |
Analogowy |
Minimalna temperatura pomiarowa (°C) |
-50°C |
0°C |
-55°C |
Maksymalna temperatura czujnika (°C) |
+150°C |
+90°C |
+125°C |
Dokładność (°C) |
±0,4°C (maks. ±2,7°C) |
±3°C |
±3°C (±5,8°C) |
Zakres pomiarowy |
Lokalny |
Lokalny |
Lokalny |
Rozdzielczość/wzmocnienie czujnika (mV/°C) |
13,6 mV/°C |
15,6 mV/°C |
11,9 mV/°C |
Temperatura pracy (°C) |
-50°C do +150°C |
0°C do +90°C |
-55°C do +125°C |
Minimalne napięcie zasilania (V) |
2,7 V |
2,7 V |
2,7 V |
Maksymalne napięcie zasilania (V) |
5,5 V |
10 V |
5,5 V |
Zużycie prądu (uA) |
5,4 ~ 8,8 uA |
~130 uA |
4,5 ~ 10 uA |
Producent |
TI |
TI |
Maxim Integrated |
Obudowa |
SC-70-5 |
SOT-23-3 |
SC-70-5 |
Te urządzenia zostały wybrane, aby zademonstrować szeroki zakres cen i punktów wydajności. W ostatnim artykule z tej serii będziemy testować je poza ich nominalnymi zakresami temperatur, aby zobaczyć, jak reagują na całym zakresie czujności i poza nim.
LMT87 od Texas Instruments to mały czujnik temperatury CMOS w obudowie SC-70. Spośród wszystkich analogowych czujników, które badamy w ramach tego projektu, LMT87 ma najwyższą typową dokładność, wynoszącą 0,4%. Jednak nawet najgorsza możliwa dokładność wynosząca +/- 2,7°C wciąż wyprzedza pozostałe czujniki. Jego prąd jałowy jest również niższy niż u innych, przynajmniej przy zasilaniu 2,7 V, a także ma czas włączenia wynoszący zaledwie 0,7 milisekundy. To czyni go jeszcze bardziej wydajnym energetycznie, jeśli cyklicznie włączamy go tuż przed pomiarem temperatury, co sprawia, że jest to idealny czujnik do aplikacji o niskim poborze mocy/ograniczonej mocy. Dzięki bardzo niskiemu zużyciu energii przez urządzenie, może być ono zasilane bezpośrednio z mikrokontrolera lub innego urządzenia logicznego, bez obaw o przekroczenie maksymalnych dopuszczalnych wartości dla pinu IO. Dla aplikacji o niższym napięciu, dostępne są dalsze opcje w serii urządzeń LMT8x, które obsługują pracę przy zasilaniu już od 1,5 V, jednakże z mniejszym wzmocnieniem, idącym w parze z obniżonym zakresem napięcia zasilania.
Warto zauważyć, że LMT87 jest również dostępny w wariancie kwalifikowanym do zastosowań motoryzacyjnych, co może być przydatne dla niektórych użytkowników.
Do wdrożenia tego czujnika dodaję kondensator sprzęgający oraz kondensator wyjściowy. W karcie katalogowej określono, że żaden z nich nie jest wymagany; jednak chcemy dać temu czujnikowi najlepszą możliwość sprawdzenia się w naszych testach. Kondensator wyjściowy nie jest ściśle potrzebny, ale umożliwia SAR do ADC pobieranie szeregów prądu podczas próbkowania. Dzieje się to bez negatywnego wpływu na odczyt, jeśli czujnik temperatury nie będzie w stanie dostarczyć wymaganego natychmiastowego prądu, aby utrzymać napięcie wyjściowe tam, gdzie powinno być dla odczytu temperatury. Numery części obu kondensatorów są już używane w innych projektach z tej serii, więc nie zwiększą one znacząco całkowitego kosztu ani liczby komponentów, które należy zamówić.
Arkusz danych uprzejmie dostarcza sugerowany układ dla wariantu montażu powierzchniowego komponentu, którego używamy; jednak nieco odbiegłem od niego. Tam, gdzie arkusz danych sugeruje połączenie z masą i płaszczyznami zasilającymi, ja łączę się zamiast tego ze ścieżkami. Naprawdę nie chcę dodawać pola masy na dolnej warstwie, ponieważ mogłoby to wpłynąć na wyniki testów/porównań temperatur, które przeprowadzimy później w tej serii. Posiadanie pola masy, z jego masą termiczną/przewodnością cieplną, obecnego pod czujnikiem LMT87, ale nie pod żadnym z innych elementów czujnikowych, których używamy, mogłoby wpłynąć na wyniki. Nie będzie to zatem dokładnie demonstrować wydajności czujnika.
W widoku 3D można zobaczyć, że umieściłem czujnik w tej samej pozycji, co w innych projektach, nad którymi pracowaliśmy wcześniej w tej serii artykułów. Umieściłem kondensator odsprzęgający zasilania obok układu scalonego. Jednak kondensator odsprzęgający dla wyjścia analogowego umieściłem obok złącza, gdzie może przynieść najwięcej korzyści.
Kształt płytki i połączenia są wszystkie dostarczone przez szablon projektu/płytki, który stworzyliśmy w części pierwszej tej serii, Projekt Czujnika Temperatury: Wprowadzenie.
Texas Instruments LM62 jest dostępny od końca lat 90. i nadal pozostaje aktualny. Chociaż jego dokładność i zakres pomiarowy nie są tak dobre jak w przypadku innych czujników, nadal jest to bardzo praktyczny czujnik do wielu zastosowań. LMT87, który omówiliśmy powyżej, jest bardziej dokładny, pobiera mniejszy prąd i jest znacznie nowocześniejszy niż LM62, a przy tym dostępny jest w niższej cenie - więc dlaczego LM62 znalazł się na tej liście? Pomyślałem, że interesującym ćwiczeniem będzie uwzględnienie komponentu, który jest nadal stosunkowo powszechny, a jednocześnie ma wady takie jak mierzalny efekt samonagrzewania się i ograniczony zakres pomiaru temperatury.
LM62 ma jednak pewne zalety, takie jak większe wzmocnienie czujnika wynoszące 15,6 mV/°C oraz zakres napięcia roboczego, który sięga do 10 V. Ponadto, przy ograniczonym zakresie temperatur, napięcie wyjściowe przy jego maksymalnej temperaturze pomiarowej 90°C wynosi 1,884 V. Umożliwia to zastosowanie dodatkowego wzmocnienia przy użyciu wzmacniacza operacyjnego lub wzmacniacza instrumentalnego. Zapewnia to jeszcze większe wzmocnienie na całym zakresie pomiarowym, jeśli używasz mikrokontrolera 3,3 V lub pełnego zakresu pomiarowego, który mieści się w możliwościach urządzenia logiki o niższym napięciu.
LM62 również charakteryzuje się doskonałą liniowością w swoim zakresie pomiaru temperatury, przy czym maksymalne odchylenie wynosi zaledwie 0,8°C.
Tak jak w przypadku LMT87, LM62 może być zasilany z dowolnego pinu IO mikrokontrolera lub urządzenia logicznego; chociaż jego zużycie prądu jest znacznie wyższe, nadal stanowi tylko małą część mocy, którą może dostarczyć pin mikrokontrolera.
Podobnie jak w przypadku LMT87 powyżej, implementuję opcjonalne kondensatory dla LM62. LM62 nie wymaga kondensatora odsprzęgającego na wejściu lub wyjściu; jednakże, w karcie katalogowej znajduje się sugestia dotycząca filtra do stosowania w środowiskach o dużym zakłóceniu elektromagnetycznym. Płytki ewaluacyjne, które budujemy, faktycznie nie będą umieszczone w środowisku o dużym zakłóceniu elektromagnetycznym. Jednakże czas reakcji LM62 jest znacznie wolniejszy niż stała czasowa filtra RC na wyjściu, tworzonego przez kondensator 1 uF. W rezultacie, ogólna odpowiedź LM62 nie będzie znacząco wpływana.
Na początku tego artykułu wspomniałem, że możesz preferować użycie czujnika analogowego zamiast cyfrowego, ponieważ może to być bardziej wygodne przy budowie układów sterowania analogowego. Skoro mowa o opcjach implementacji i zaleceniach zawartych w karcie katalogowej - karta katalogowa LM62 zawiera miły przykład termostatu, który może znaleźć wiele zastosowań w układach sterowania, nawet tylko do włączania wentylatora lub grzejnika bez potrzeby interwencji mikrokontrolera.
Płytka jest rozplanowana bardzo podobnie do LM87, z kondensatorem odsprzęgającym zasilanie obok układu scalonego czujnika, a napięcie wyjściowe czujnika odsprzęgnięte jest w pobliżu złączy stosowych.
MAX6605 od Maxim Integrated to kolejny nowoczesny czujnik temperatury w tej samej małej obudowie SC70 co LMT87. Przy 25°C, MAX6605 ma błąd temperatury +/- 0,75°C. Jednak w całym jego zakresie, ten błąd wzrasta do maksymalnie +/- 5,8°C, co może nie brzmieć fantastycznie, chociaż dotyczy to zakresu pomiarowego od -55°C do 125°C. W zakresie od 0°C do 70°C, gdzie większość urządzeń domowych zwykle pracuje, jego błąd temperatury wynosi +/- 3,0°C.
Napędzając typowy przetwornik ADC, czujnik temperatury zużywałby około 10 uA prądu, co przekłada się na wzrost temperatury krzemu powyżej otoczenia o zaledwie 0,0162°C, co jest znacznie lepszym wynikiem niż w przypadku LM62, który omówiliśmy powyżej. Niskie zużycie energii sprawia również, że MAX6605 może być zasilany bezpośrednio z pinu mikrokontrolera lub innego urządzenia logicznego, co może ułatwić jego autonomiczne włączanie i wyłączanie w celu optymalizacji zużycia energii.
Przeglądając kartę katalogową, pomyślałem, że interesujące jest stwierdzenie, iż urządzenie zawiera 572 tranzystory. Texas Instruments nie podaje tego poziomu informacji w swoich kartach katalogowych czujników temperatury. Jednak pokazuje to, ile więcej dzieje się wewnątrz zintegrowanego czujnika temperatury w porównaniu z układami, które wcześniej analizowaliśmy, zawierającymi element rezystancyjny i wzmacniacz operacyjny. Dla porównania, wzmacniacz operacyjny LM741 zawiera tylko 20 tranzystorów. Pokazuje to, że chociaż czujniki temperatury mogą wydawać się dość proste, są to w rzeczywistości dość skomplikowane urządzenia.
MAX6605 zaleca stosowanie kondensatora sprzęgającego na wejściu o wartości 0,1 uF, podczas gdy inne analizowane przez nas czujniki mogą pracować zadowalająco bez kondensatora na wejściu.
Jako że w karcie katalogowej nie ma sugestii dodawania kondensatora na wyjściu, nie dodam go dla MAX6605.
PCB dla MAX6605 jest proste i przejrzyste, zawiera tylko kondensator odsprzęgający i układ scalony czujnika.
Układy scalone analogowych czujników temperatury to łatwy sposób, aby dodać do twojej płytki drukowanej stosunkowo precyzyjny czujnik, niezależnie od tego, czy chcesz mierzyć temperaturę otoczenia, czy temperaturę konkretnego komponentu lub obszaru na płytce. Z wieloma opcjami, które nie wymagają żadnych zewnętrznych układów, oferują one wysoce kompaktowe i opłacalne rozwiązanie.
W tym artykule przyjrzeliśmy się tylko trzem czujnikom spośród setek urządzeń, które są regularnie dostępne u głównych dostawców. Powinieneś przyjrzeć się dostępnym analogowym czujnikom temperatury na Octopart , aby zorientować się w zakresie oferowanych możliwości. Znajdziesz opcję odpowiednią dla każdego budżetu i zastosowania, o jakim możesz pomyśleć, czy to chcesz wyjście napięciowe podobne do tego, które tutaj omówiliśmy, czy źródło prądu, które zmienia się w zależności od temperatury.
W moim mniemaniu, biorąc pod uwagę szeroki wachlarz interfejsów komunikacyjnych dostępnych w nowoczesnych mikrokontrolerach i innych urządzeniach logicznych, analogowy czujnik temperatury zazwyczaj znajdowałby zastosowanie tylko w połączeniu z innymi układami analogowymi lub gdyby głównym problemem był budżet. Analogowe czujniki temperatury są idealne do tworzenia termostatów do włączania wentylatora, gdy płyta obwodu staje się zbyt gorąca, lub do uruchamiania ogrzewania, gdy płyta jest zbyt zimna. Budowanie tej funkcjonalności za pomocą układów zamiast oprogramowania może skrócić czas rozwoju dla opcji niekonfigurowalnych, zaoszczędzić cykle zegara, a także zwiększyć niezawodność. Nie musząc polegać na kodzie do wykonania tego, co trzeba zrobić, kiedy trzeba to zrobić, możemy zapewnić, że zarządzanie termiczne płyty będzie działać płynnie, niezależnie od tego, co robi urządzenie logiczne. Nie musimy się martwić, czy na przykład kod się zawiesił lub jest zbyt zajęty, aby w odpowiednim czasie poradzić sobie z przerwaniem spowodowanym problemem termicznym.
W następnym artykule przyjrzymy się cyfrowym czujnikom temperatury. Są one idealne do integracji wysokiej precyzji pomiarów temperatury z przetwarzaniem mikrokontrolera. Niezależnie od tego, czy potrzebujesz zgłaszać/rejestrować temperaturę, wyświetlać ją użytkownikowi, czy wykonywać inne działania na podstawie absolutnych zmian temperatury. Posiadanie cyfrowego czujnika temperatury może pozwolić Ci pominąć kalibracje ADC i uzyskać dokładną zmierzoną temperaturę przekazaną bezpośrednio do pamięci.
Chcesz dowiedzieć się więcej o tym, jak Altium może pomóc Ci w następnym projekcie PCB?Porozmawiaj z ekspertem w Altium.