Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Konwerter temperatury do częstotliwości

ghost666 08 Jul 2021 17:38 1704 10
phoenixcontact
  • Czujniki temperatury są jednymi z najważniejszych rodzajów czujników wartości fizycznych, ponieważ wiele różnych procesów (również w życiu codziennym) jest regulowanych przez temperaturę. Poza tym pomiar temperatury umożliwia pośrednie określenie innych parametrów fizycznych, takich jak natężenie przepływu materii, poziom płynu itp. Zazwyczaj czujniki przetwarzają zmierzoną wartość fizyczną na sygnał analogowy. Czujniki temperatury nie są tutaj wyjątkiem. W celu przetworzenia przez CPU lub komputer, analogowy sygnał z sensora temperatury musi zostać przekształcony w postać cyfrową. Do takiej konwersji powszechnie stosuje się relatywnie drogie przetworniki analogowo-cyfrowe (ADC).

    Celem poniższego artykułu jest opracowanie i przedstawienie uproszczonej techniki bezpośredniej konwersji sygnału analogowego z czujnika temperatury na sygnał cyfrowy o proporcjonalnej częstotliwości z wykorzystaniem układu z rodziny GreenPAK. Następnie można łatwiej zmierzyć częstotliwość sygnału cyfrowego, który zmienia się w zależności od temperatury, z dość dużą dokładnością, a następnie przekształcić w wymagane jednostki fizyczne programowo. Taka bezpośrednia transformacja nie wymaga stosowania drogich przetworników ADC. Ponadto transmisja sygnału cyfrowego jest bardziej niezawodna niż analogowa.

    Projektowanie i analiza obwodów

    W zależności od określonych wymagań, przede wszystkim w zakresie temperatur i dokładności, można stosować różne typy czujników temperatury i ich obwody przetwarzania sygnałów. Najpowszechniej stosowane są termistory NTC, które zmniejszają wartość swojej rezystancji elektrycznej wraz ze wzrostem temperatury (patrz rysunek 1). Mają znacznie wyższy rezystorowy współczynnik temperaturowy w porównaniu z czujnikami rezystancyjnymi z metalu (RTD) i kosztują znacznie mniej. Główną wadą termistorów jest ich nieliniowa zależność od temperatury, tj. charakterystyczny kształt krzywej „rezystancji w funkcji temperatury”. W naszym przypadku nie odgrywa to znaczącej roli, ponieważ podczas konwersji istnieje dokładna zgodność częstotliwości z rezystancją termistora, a tym samym z temperaturą, gdyż znana jest zależność matematyczna łącząca te wartości (patrz równanie 1).

    Konwerter temperatury do częstotliwości
    Rys.1. Rezystancja termistora w funkcji temperatury.


    Rysunek 1 pokazuje na wykresie zależność rezystancji termistora od temperatury zaczerpniętą z dokumentacji producenta. W naszym projekcie wykorzystamy dwa podobne termistory NTC, charakteryzujące się rezystancją 10 kΩ przy 25°C. Termistory użyte do wykreślenia wykresu na rysunku 1 to (1) MF52E103F395 oraz (2) LE100100E3103.

    Podstawową ideą bezpośredniego przekształcenia sygnału temperatury na wyjściowy sygnał cyfrowy o proporcjonalnej częstotliwości jest zastosowanie termistora R1 wraz z kondensatorem C1 w układzie generatora częstotliwości, jako części klasycznego oscylatora pierścieniowego zrealizowanego przy użyciu trzech elementów logicznych – bramek NAND. Stała czasowa R1 x C1 zależy od temperatury, ponieważ wraz ze zmianą temperatury rezystancja termistora odpowiednio zmienia się.

    Częstotliwość wyjściowego sygnału cyfrowego można obliczyć za pomocą następującego wzoru:

    $$ f \approx \frac {1} {2.3 \times R_1 \times C_1} \qquad (1)$$

    Konwerter temperatury do częstotliwości
    Rys.2. Schemat czujnika aktywnego.


    Ten rodzaj oscylatora zazwyczaj wykorzystuje dodatkowy rezystor R2 w celu ograniczenia prądu płynącego przez diody wejściowe i zmniejszenia obciążenia elementów wejściowych obwodu. Jeśli wartość rezystancji R2 jest znacznie mniejsza niż rezystancja R1, to nie wpływa ona na generowaną częstotliwość.

    W konsekwencji, w oparciu o układ SLG46108V, skonstruowano dwa warianty przetwornicy temperatury na częstotliwość (patrz rysunek 5). Schemat działania tych czujników przedstawiono na rysunku 3.

    Konwerter temperatury do częstotliwości
    Rys.3. Schemat ideowy aktywnych czujników (dla SLG46108V).


    Projekt, jak już powiedzieliśmy, jest dość prosty: jest to tor złożony z trzech bramek NAND, które tworzą oscylator pierścieniowy (patrz Rysunek 4 i [/b]Rysunek 2[/b]) z jednym wejściem cyfrowym (Pin 3) i dwoma wyjściami cyfrowymi (Pin 6 i Pin 8) do podłączenia obwodów zewnętrznych.

    Konwerter temperatury do częstotliwości
    Rys.4. Projekt w GreenPAK.


    Rysunek 5 pokazuje aktywny sensor temperatury. Na zdjęciu pokazano dla porównania monetę jednocentową

    Konwerter temperatury do częstotliwości
    Rys.5. Aktywny czujnik temperatury.


    Wykonano pomiary w celu oceny prawidłowego działania obu aktywnych czujników temperatury. Przedstawiony czujnik temperatury został umieszczony w kontrolowanej komorze, w której można było zmieniać temperaturę z dokładnością do 0,5°С. Rejestrowano częstotliwość wyjściowego sygnału cyfrowego, a wyniki przedstawiono na rysunku 6.

    Konwerter temperatury do częstotliwości
    Rys.6. Porównanie częstotliwości obliczonej i zmierzonej.


    Jak widać na przedstawionym wykresie, pomiary częstotliwości (zielone i niebieskie trójkąty) prawie dokładnie pokrywają się z wartościami teoretycznymi (czarne i czerwone linie), wyznaczonymi według wzoru 1. W konsekwencji widzimy, że metoda ta działa w pełni poprawnie.

    Zbudowano również trzeci aktywny czujnik temperatury (patrz rysunek 7), aby zademonstrować możliwość prostego przetwarzania z widocznym wskazaniem temperatury. Używając układu SLG46620V, który zawiera w sobie 10 elementów opóźniających, w ten sposób skonstruowano 10 mierników częstotliwości (patrz rysunek 9), z których każdy jest skonfigurowany do wykrywania sygnału o jednej, określonej częstotliwości. W ten sposób zestawiono prosty termometr z 10 konfigurowalnymi punktami wskazań.

    Konwerter temperatury do częstotliwości
    Rys.7. Zdjęcie aktywnego czujnika temperatury ze wskaźnikami LED.


    Konwerter temperatury do częstotliwości
    Rys.8. Schemat ideowy aktywnego czujnika (dla SLG46620V).


    Rysunek 8 przedstawia schemat najwyższego poziomu czujnika aktywnego ze wskaźnikami na wyświetlaczu dla 10 punktów temperatury. Ta dodatkowa funkcja jest wygodna, ponieważ umożliwia wizualną ocenę wartości temperatury bez oddzielnej analizy generowanego sygnału cyfrowego.

    Konwerter temperatury do częstotliwości
    Rys.9. Schemat projektu GreenPAK dla SLG46620V.


    Podsumowanie

    W powyższym artykule zaproponowano metodę konwersji sygnału analogowego z czujnika temperatury na sygnał cyfrowy z modulacją częstotliwości za pomocą SLG46620. Użycie termistorów w połączeniu z układami scalonymi z serii GreenPAK pozwala na przewidywalne pomiary bez użycia drogich przetworników ADC i uniknięcie konieczności pomiaru sygnałów analogowych. Ten obwód jest idealnym rozwiązaniem do rozwoju tego typu elastycznego czujnika, jak pokazano na przykładach zbudowanych i przetestowanych prototypów.

    Wykorzystany układ scalony zawiera w sobie dużą liczbę elementów funkcjonalnych i bloków obwodów niezbędnych do realizacji różnych rozwiązań systemowych, co znacznie zmniejsza liczbę elementów zewnętrznych końcowego obwodu. Niskie zużycie energii, mały rozmiar chipa i niski koszt to bonus przy wyborze układów GreenPAK jako głównego kontrolera dla wielu obwodów.

    Źródło: https://www.eeweb.com/temperature-to-frequency-conversion-using-greenpak/

    Cool? Ranking DIY
    About Author
    ghost666
    Translator, editor
    Offline 
    Fizyk z wykształcenia. Po zrobieniu doktoratu i dwóch latach pracy na uczelni, przeszedł do sektora prywatnego, gdzie zajmuje się projektowaniem urządzeń elektronicznych i programowaniem. Od 2003 roku na forum Elektroda.pl, od 2008 roku członek zespołu redakcyjnego.
    ghost666 wrote 11811 posts with rating 9947, helped 157 times. Live in city Warszawa. Been with us since 2003 year.
  • phoenixcontact
  • #2
    Marek_Skalski
    VIP Meritorious for electroda.pl
    Ale super!!! To już takie czasy nastały na elektrodzie i przystawkach, że teraz noty aplikacyjne przepisujemy?
    Oryginał: https://www.dialog-semiconductor.com/greenpak-application-notes/an-cm-274-temperature-frequency-conversion-using-greenpak

    ghost666 wrote:
    W powyższym artykule zaproponowano metodę konwersji sygnału analogowego z czujnika temperatury na sygnał cyfrowy z modulacją częstotliwości za pomocą SLG46620. Użycie termistorów w połączeniu z układami scalonymi z serii GreenPAK pozwala na przewidywalne pomiary bez użycia drogich przetworników ADC i uniknięcie konieczności pomiaru sygnałów analogowych.

    Fajny żarcik. :) Układ jest dostępny praktycznie tylko na zamówienie i kosztuje kosztuje około 3 PLN przy zamówieniu 4000 sztuk.

    Przetworniki ADC są drogie, a ten układ co wykorzystuje jako interfejs termistora? Wbudowany ADC o rozdzielczości 8 bitów, z czego po wszystkich przekształceniach zostaje może 6. Z pewnością ten ADC jest dużo lepszy niż wbudowany w MCU 12- lub 16-bitowy z bajerami, gdzie przy okazji można sensownie obrobić dane. To coś z zielonymi diodami to jakaś zabawka, a nie układ pomiarowy.

    ghost666 wrote:
    Najpowszechniej stosowane są termistory NTC, które zmniejszają wartość swojej rezystancji elektrycznej wraz ze wzrostem temperatury (patrz rysunek 1). Mają znacznie wyższy rezystorowy współczynnik temperaturowy w porównaniu z czujnikami rezystancyjnymi z metalu (RTD) i kosztują znacznie mniej. Główną wadą termistorów jest ich nieliniowa zależność od temperatury, tj. charakterystyczny kształt krzywej „rezystancji w funkcji temperatury”. W naszym przypadku nie odgrywa to znaczącej roli, ponieważ podczas konwersji istnieje dokładna zgodność częstotliwości z rezystancją termistora, a tym samym z temperaturą, gdyż znana jest zależność matematyczna łącząca te wartości

    Serio? Tylko zamiast przeliczać sygnał napięciowy według nieliniowej charakterystyki, to teraz trzeba przeliczyć częstotliwość. Problem pozostaje i jest mi zupełnie obojętne czy przeliczam wartość liczbową określającą napięcie czy wartość liczbową pobraną z licznika.

    ghost666 wrote:
    Wykorzystany układ scalony zawiera w sobie dużą liczbę elementów funkcjonalnych i bloków obwodów niezbędnych do realizacji różnych rozwiązań systemowych, co znacznie zmniejsza liczbę elementów zewnętrznych końcowego obwodu. Niskie zużycie energii, mały rozmiar chipa i niski koszt to bonus przy wyborze układów GreenPAK jako głównego kontrolera dla wielu obwodów.

    Na pokładzie jest kilka komparatorów i jeden PGA, 2xADC, kilka LUTów, liczników, przerzutników i SPI. Biednie patrząc na zużycie prądu. Ale jest promocja produktu, jest artykuł i jest super.

    Aha, SLG46620 to jest układ do jednorazowego programowania. :)
    A jak Wam się podoba procedura przygotowania do produkcji?

    Konwerter temperatury do częstotliwości
    Źródło: https://www.dialog-semiconductor.com/sites/default/files/slg46620-a_ds_3v3.pdf (strona 41.)
  • #3
    ArturAVS
    Moderator HP/Truck/Electric
    Qrcze nie wiedziałem że można w tak prosty sposób komplikować sobie życie :D Chyba nikt już dzisiaj nie mierzy temperatury w taki sposób, szybciej, prościej i taniej jest użyć scalonego sensora (chociażby DS18B20 czy LM74) lub w mniej wymagających termistora i obliczać w uP jak to @Marek_Skalski napisał.
  • phoenixcontact
  • #4
    Anonymous
    Level 1  
  • #5
    ArturAVS
    Moderator HP/Truck/Electric
    @acctr Swoje własne teorie zostaw dla siebie, w każdym temacie zabierasz głos nic sensownego i merytorycznego nie pisząc.
  • #6
    Marek_Skalski
    VIP Meritorious for electroda.pl
    acctr wrote:
    Rezystancja termistora w funkcji temperatury przypomina hiperbolę, natomiast częstotliwość generatora od temperatury to szeroka parabola. Nie muszę pisać jakie są tego zalety.

    Napisz proszę coś o złożoności obliczeniowej i ile operacji trzeba wykonać, aby przeliczyć każdą wersję na jakimś prostym układzie logicznym. Wszak, w tym przypadku mamy do czynienia z prostym GAL'em, który nie ma CPU.
    Z drugiej strony, jest różnica między rezystancją termistora, a mierzonym napięciem na wyjściu dzielnika, jak to się najczęściej robi, ponieważ wtedy hiperbola zauważalnie zmienia kształt.
  • #7
    Anonymous
    Level 1  
  • #8
    nukedman
    Level 13  
    ArturAVS wrote:
    Qrcze nie wiedziałem że można w tak prosty sposób komplikować sobie życie :D Chyba nikt już dzisiaj nie mierzy temperatury w taki sposób.


    Jest bardzo dużo aplikacji, w których trzeba zmierzyć temperaturę czegoś za barierą galwaniczną. Wtedy taki konwerter steruje np transoptorem i łatwo przesyła cyfrowy sygnał w jedną stronę. W dodatku dość łatwo zbudować odwrotny konwerter po drugiej stronie, gdy np potrzebujemy tylko wyłapać moment, kiedy temperatura jest za wysoka. Czy jest sens stosować do tego taki specjalizowany układ to inna sprawa, można wepchać po prostu nawet generator na tej jednej bramce. Ale to nie znaczy, że nikt tak nie mierzy temperatury.
  • #9
    khoam
    Level 42  
    ArturAVS wrote:
    Qrcze nie wiedziałem że można w tak prosty sposób komplikować sobie życie Chyba nikt już dzisiaj nie mierzy temperatury w taki sposób, szybciej, prościej i taniej jest użyć scalonego sensora (chociażby DS18B20 czy LM74)

    Taki konwerter temperatura/częstotliwość to można stosunkowo łatwo wykonać na NE555, a korektę odczytów temperatury wykonać programowo ;)
  • #10
    ArturAVS
    Moderator HP/Truck/Electric
    khoam wrote:
    Taki konwerter temperatura/częstotliwość to można stosunkowo łatwo wykonać na NE555, a korektę odczytów temperatury wykonać programowo ;)

    Lata temu uruchamiałem dla znajomego podobny konwerter na 555 właśnie, miał służyć do rozszerzenia funkcji miernika częstotliwości o pomiar temperatury.
  • #11
    Marek_Skalski
    VIP Meritorious for electroda.pl
    acctr wrote:
    Z wykresu pierwszego R(t) widać, że w okolicy 20 stopni robo się płasko.

    Tylko, że taki element jest zazwyczaj częścią układu pomiarowego i dość dobrze sobie radzimy z jego charakterystyką. Fajnie, że napisałeś kilka wzorów, ale czy to na pewno o to chodzi?
    Termistor, jako element oferuje dość dobrą dokładność. Przeciętnie 1%, ale nie problem znaleźć dokładniejsze.
    Wprowadzając przetwarzanie na częstotliwość dodajemy kondensator, którego dokładność jest znacznie gorsza, rzędu 10%. Tak, można i należy kalibrować układ pomiarowy, jeżeli oczekiwana jest wysoka dokładność, ale tutaj chyba nie ma to większego sensu.

    Wspomniane w artykule oznaczenia termistorów są jakby nieistniejące (nie potrafiłem znaleźć ich parametrów), więc weźmy coś normalnego, np. Murata_NTC - NXFT15XH103FEAB. Wzory są fajne, ale ze względu na charakterystykę materiału, dane są zawsze dostarczane w formie tabeli z krokiem 5°C, co widać też na pierwszym wykresie w artykule. Owszem, taka charakterystyka jest mało przyjazna i można spróbować pójść tą samą drogą co autor noty aplikacyjnej. Zamiana temperatury na częstotliwość w tym przypadku oznacza płaską charakterystykę dla niższych temperatur. Czyli układ będzie miał wyższą rozdzielczość pomiarową dla wyższych temperatur, jeżeli mierzymy częstotliwość. Można też wybrać pomiar okresu przebiegu, czyli pomiar czasu, co powinno zwiększyć rozdzielczość pomiarową dla niskich temperatur, ale wtedy tracimy rozdzielczość dla wyższych temperatur. Oczywiście, można też dynamicznie zmieniać metodę pomiaru i jeszcze bardziej skomplikować proces, wprowadzając kolejne zmienne, ale czy na pewno jest to potrzebne?

    Moim zdaniem typowa aplikacja z termistorem to układ dzielnika napięciowego. Na przykład taki:
    Konwerter temperatury do częstotliwości
    Rys.1. Schemat połączeń elektrycznych dla pomiaru VTEMP_B.

    lub taki:
    Konwerter temperatury do częstotliwości
    Rys.2. Schemat połączeń elektrycznych dla pomiaru VTEMP_T.

    A w takim połączeniu, napięcie pomiarowe jest zupełnie inne niż charakterystyka termistora, co widać na załączonym obrazku.
    Konwerter temperatury do częstotliwości
    Rys.3. Charakterystyka napięcia wyjściowego dla VTEMP_B, VTEMP_T oraz częstotliwości f_TEMP.

    Przebieg zielony i granatowy, to napięcie wyjściowe dzielnika, odpowiednio z rysunku 1 i rysunku 2. Przebieg czerwony, to wykres częstotliwości sygnału wyjściowego dla układu opisanego w artykule, ale z inną wartością kondensatora (1,2 nF), aby uzyskać porównywalny zakres na wykresie (0-5).
    Zakres napięć i punkt przegięcia krzywej (1 oraz 2) można regulować wartością rezystora RT lub RB. W tym układzie jest to za każdym razem rezystor o wartości 2.87kΩ, odpowiadającej połowie wartości rezystancji termistora w połowie zakresu pomiarowego.
    Jak widać, zmienność wartości pomiarowych wynosi od 33mV/5°C do 200mV/5°C. Jest to mniej niż w przypadku pomiaru z użyciem generatora (czerwony wykres), gdzie zmienność jest w zakresie od 8,73 kHz/5°C do 532 kHz/5°C. Dzięki temu rozdzielczość pomiarowa jest mniej przykra do dalszego przetwarzania i daje się opisać współczynnikami wielomianu lub dość łatwo stablicować.

    Konwerter temperatury do częstotliwości
    Rys.4. Charakterystyka zmienności napięcia wyjściowego dla VTEMP_B, VTEMP_T oraz częstotliwości f_TEMP.

    Pytanie, gdzie jest błąd? :)

    W załączniku dodaję też obliczenia. Może ktoś skorzysta.