Czy mogę poprawić dokładność czujników temperatury LM35, uśredniając kilka czujników?


12

Czy mogę utworzyć jeden superczujnik, uśredniając odczyty z kilku czujników LM35? Czy nie byłoby to bardziej dokładne, ponieważ uśredniałbym systematyczne odchylenie w poszczególnych czujnikach? Czy nie byłoby to również bardziej precyzyjne, ponieważ każdy hałas zostanie wytłumiony / uśredniony?

To wydaje się zbyt piękne, aby mogło być prawdziwe. Mam na myśli, że te rzeczy są naprawdę tanie, jeśli chodzi o czujniki, więc co powstrzymuje mnie od kupowania takich jak 10 i tworzenia super-dokładnych czujników temperatury za pomocą tej metody?


7
Myślę, że byłbyś bardziej dokładny, po prostu zasilając LM35 z super stabilnego źródła zasilania i ostrożnie kalibrując ten przedmiot.

1
Jeśli masz dość duży obszar do pokrycia i chcesz średnią temperaturę w tym obszarze. w takim razie tak. W przeciwnym razie nie ma realnych korzyści. Jeśli potrzebujesz bardzo precyzyjnych odczytów, musisz użyć punktowych mierników wykorzystujących podczerwień IR lub bardzo drogich czujników stosowanych w biochemii, fizyce ...
Piotr Kula,

2
ppumkin -1. Uśrednianie wielokrotnego sygnału zmniejszy każdy przypadkowy szum.
user606723,

Odpowiedzi:


17

Nie można zagwarantować większej dokładności, ale możliwe jest uzyskanie lepszego stosunku sygnału do szumu.

Wyobraź sobie, że wszystkie czujniki były wyłączone w takiej samej ilości, jak dopuszczalna w specyfikacjach. Uśrednienie ich nie dałoby lepszej dokładności. Jeśli masz dość dużą liczbę tych czujników i mają one losowy rozkład błędów w dozwolonym paśmie błędów, wtedy uzyskasz lepszą dokładność poprzez uśrednienie. Problem polega jednak na tym, że nie możesz wiedzieć, czy masz pierwszy przypadek, czy drugi przypadek. Jeśli wszystkie jednostki pochodzą z tej samej partii produkcyjnej, ich błędy prawdopodobnie nie są losowo dystrybuowane.

Hałas jednak spada. Każdy czujnik dodaje trochę szumu do odczytu. Jest to nieskorelowane z hałasem z innych czujników, więc uśrednianie obniża hałas. Oczywiście nie dotyczy to hałasu pochodzącego z zewnątrz całego systemu, ponieważ byłby on skorelowany, a uśrednienie odczytów z wielu czujników nie zmniejszy go.

Zauważ, że istnieje więcej niż jeden sposób na „średnią”. Zastanawiasz się nad uśrednieniem dla wielu czujników w celu zmniejszenia hałasu. Ponieważ jednak szum ten jest w zasadzie losowy, równie dobrze można uśrednić między wieloma odczytami z tego samego czujnika wykonanymi w różnych momentach. W bardziej ogólnym przypadku jest to naprawdę filtrowanie dolnoprzepustowe. Ponieważ temperatury zmieniają się powoli, agresywnie filtrowanie dolnoprzepustowe powoduje, że wyjście czujnika temperatury zmniejsza hałas. Patrząc na to w przestrzeni częstotliwości, wiesz, że zmiany temperatury powoli, więc komponenty o wysokiej częstotliwości są hałasem i mogą być bezpiecznie tłumione.


6

Tak, użycie wielu czujników może dać średnią temperaturę. Jak poprawna jest wciąż ta temperatura

Jeśli 50% czujników znajduje się powyżej rzeczywistej temperatury, a 50% jest poniżej, wtedy uzyskasz rzeczywistą temperaturę (lub tak dobrą jak). Jeśli 75% jest powyżej, a 25% poniżej, wtedy odczytasz temperaturę jako wyższą niż jest.

Aby uzyskać dokładność, potrzebujesz odniesienia do przetestowania czujników, aby uzyskać rzeczywistą temperaturę - zwykle znaną temperaturę, na podstawie której można skalibrować czujnik.

Jeśli chodzi o redukcję szumów, możesz zrobić dokładnie to samo z jednym czujnikiem i próbkować go wiele razy i uśredniać wyniki.


5

Jeśli błędy były przypadkowe, można oczekiwać poprawy o około 3 dla 10 czujników (pierwiastek kwadratowy z 10). Ale prawdopodobne jest, że występują systematyczne błędy, których nie można anulować.

  • Dlaczego przede wszystkim chcesz uzyskać dokładność większą niż 0,5 ° C?

  • Którą temperaturę chcesz zmierzyć? Jeśli masz dziesięć czujników, nie wszystkie będą w tym samym miejscu. Przez większość czasu lepiej będzie uzyskać wyższą precyzję.

  • Czy masz nawet miejsce na 10 czujników?

Dobrym pomysłem jest wielokrotne odczytywanie jednego czujnika.


+1 za wspomnienie, że błędy w czujnikach muszą być LOSOWE. Często mówimy o wariancjach opartych na PVT: proces, temperatura i napięcie. Zasadniczo LM35 z tej samej partii będą miały podobne błędy. I LM35 zasilane z tej samej szyny zasilającej również będą miały podobne błędy. Oczywiście chcesz różnic w temp.

1

Mówisz o „systematycznym uprzedzeniu”. Jeśli przyjmiemy ogólnie uzasadnione założenie, że odczyty z czujników mają średnią i odchylenie standardowe, to w miarę wzrostu wielkości próbki (liczby czujników) odchylenie standardowe powinno się zmniejszyć.

Z drugiej strony, jeśli pobierzesz wiele odczytów z tego samego czujnika, wówczas standardowe odchylenie odczytów również powinno zostać zmniejszone.

Jeśli chodzi o średnią, załóżmy, że gdy dokładna temperatura wynosi 80 ° C, a czujnik 1 może odczytać 79 ° C, czujnik 2 80 ° C i czujnik 3 81 ° C. W tym przypadku uśrednienie odczytów daje odpowiedź 80 ° C, podczas gdy z 3 indywidualnych czujników tylko jeden miał poprawną wartość. Należy tutaj rozważyć więcej, załóżmy, że czujnik 1 zawsze odczytuje 1C niski, podczas gdy czujnik 3 zawsze odczytuje 1C wysoki. Jeśli potrafisz to ustalić przez porównanie z dokładnym źródłem, możesz poprawić ten niski odczyt 1C dla czujnika 1 w konwersji oprogramowania.

W praktyce, w jaki sposób zamontowałbyś wiele czujników, aby wszystkie miały kontakt z dokładnie tym samym punktem, w którym chcesz zmierzyć temperaturę? Dla odczytów o wysokiej dokładności nawet niewielka separacja między czujnikami może oznaczać, że były wystawione na działanie różnych temperatur. W tym przypadku uśrednianie odczytów nie dostarczyłoby użytecznych danych o tym, jaka była temperatura w danym punkcie, a jedynie średnia w pewnej przestrzeni. Coś w rodzaju montażu 4 termometrów po każdej stronie domu; jest wysoce prawdopodobne, że temperatura po stronie słonecznej będzie miała inną temperaturę niż temperatura po stronie zacienionej.


1

Aby być wybrednym i dodać 2 centy do tego pytania: jeśli nie lubisz wybrednych odpowiedzi , nawet nie czytaj tego, bo będziesz chciał mnie zabić.

Ponieważ wszystkie czujniki mają pewne wewnętrzne odchylenie, nigdy nie będziesz superdokładny .

Jeśli masz czujnik i znasz jego odchylenie, możesz zrekompensować jego odczyty i uzyskać rzeczywistą temperaturę. I będziesz ograniczony do jego charakterystyk (przykład: jeśli jest liniowy w swoich odczytach wraz ze zmianami temperatury lub jeśli błędy nie są liniowe ... jeśli jest stabilny w miarę upływu czasu, lub nie ...).

Jeśli masz wiele czujników i uśredniasz je, zmniejszysz różnicę między temperaturą rzeczywistą a zmierzoną, ale ponieważ każdy ma swój własny błąd, średnia zawsze będzie miała pewien błąd. Aby tego uniknąć, tylko jeśli masz dokładnie taką samą liczbę czujników powyżej i poniżej właściwej temperatury, i tylko wtedy, gdy są dokładnie w tej samej ilości powyżej i poniżej ...

Pomyśl o tym jak o międzynarodowym standardzie masy: co to jest 1 kg? Jest to masa konkretnego ciała, które jest przechowywane w Międzynarodowym Biurze Wag i Miar. To nie jest średnia z wielu ciał ...


Możesz być bardzo dokładny, podejść do rachunków i po prostu zdefiniować to, co masz!
russ_hensel 23.11.11

@ russ_hensel :) tak ... właśnie dlatego głosowałem za innymi odpowiedziami i powiedziałem „wybredna odpowiedź przed…”.
woliveirajr
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.