Spisu treści:

Pomiar temperatury za pomocą PT100 i Arduino: 16 kroków
Pomiar temperatury za pomocą PT100 i Arduino: 16 kroków

Wideo: Pomiar temperatury za pomocą PT100 i Arduino: 16 kroków

Wideo: Pomiar temperatury za pomocą PT100 i Arduino: 16 kroków
Wideo: Kurs Automatyki #5.3 Czujnik temperatury PT100 i PLC 2024, Listopad
Anonim
Pomiar temperatury za pomocą PT100 i Arduino
Pomiar temperatury za pomocą PT100 i Arduino

Celem tego projektu jest zaprojektowanie, zbudowanie i przetestowanie systemu wykrywania temperatury. System został zaprojektowany do pomiaru temperatury w zakresie od 0 do 100°C. Do pomiaru temperatury użyto PT100, który jest oporowym detektorem temperatury (RTD), który zmienia swoją rezystancję w zależności od temperatury otoczenia.

Krok 1: Aparatura

1x PT100

1x deska do krojenia chleba

2x rezystory 2,15 kΩ

1x rezystor 100 omów

Przewody

Zasilacz

Wzmacniacz różnicowy

Krok 2: O PT100

O PT100
O PT100

W ramach naszego projektu mamy za zadanie pomiar temperatury otoczenia w zakresie od 0 stopni do 100 stopni Celsjusza. Zdecydowaliśmy się na użycie PT100 z następujących powodów:

PT100 to rezystancyjny czujnik temperatury (RTD), który może mierzyć temperatury od -200 stopni do maksymalnie 850 stopni Celsjusza, ale zwykle nie jest używany do pomiaru temperatury powyżej 200 stopni. Ten asortyment spełnia nasze wymagania.

Ten czujnik wytwarza rezystancję dla danej temperatury otoczenia. Zależność między temperaturą a rezystancją czujnika jest liniowa. To, wraz z minimalną konfiguracją wymaganą przez czujnik, ułatwia pracę i ołtarz, jeśli w przyszłości będą potrzebne inne zakresy temperatur.

PT100 ma również powolny czas reakcji, ale jest dokładny. Te cechy nie mają większego wpływu na nasz cel i dlatego nie były tak istotne przy podejmowaniu decyzji, który czujnik temperatury użyć.

Krok 3: Most Wheatstone

Most Wheatstone
Most Wheatstone

Mostek Wheatstone służy do pomiaru nieznanej rezystancji elektrycznej poprzez równoważenie dwóch odgałęzień obwodu mostkowego, z których jedna zawiera nieznany komponent.

Podstawową zaletą układu jest jego zdolność do uzyskania zakresu napięcia wyjściowego, które zaczyna się od 0V.

Można użyć prostego dzielnika napięcia, ale nie pozwoliłoby nam to pozbyć się jakiegokolwiek obecnego przesunięcia, co zmniejszyłoby skuteczność wzmacniania napięcia wyjściowego.

Opór w PT100 waha się od 100 do 138,5055 dla temperatury od 0 do 100 stopni Celsjusza.

Wzór na mostek Wheatstone'a znajduje się poniżej, można go użyć do przeskalowania mostka Wheatstone'a dla różnych zakresów uzyskanych z załączonej tabeli pdf.

Vout=Vin(R2/(R1+R2) - R4/(R3+R4))

W naszym scenariuszu:

R2 będzie naszym oporem PT100.

R1 będzie równe R3.

R4 musi mieć wartość 100 omów, aby wyprowadzić 0 V przy 0 stopniach Celsjusza.

Ustawienie Vout na 0V i Vin na 5V pozwala nam na uzyskanie rezystancji dla R1 i R2 = 2,2k omów.

Następnie możemy zmniejszyć 138,5055 omów dla rezystancji czujnika, aby uzyskać nasze napięcie wyjściowe przy 100 stopniach Celsjusza = 80 mV

Krok 4: Symulacja obwodu

Symulacja obwodu
Symulacja obwodu

Narzędzie do symulacji obwodów, OrCAD Capture, zostało użyte do symulacji naszego obwodu i znalezienia oczekiwanego napięcia wyjściowego w różnych temperaturach. Będzie to później wykorzystane do porównania dokładności naszego systemu.

Obwód był symulowany poprzez wykonanie analizy czasu przejściowego z paramatycznym przemiataniem, które zmieniało rezystancję pt100 od 100 omów do 138,5055 omów w krokach co 3,85055 omów.

Krok 5: Symulowane wyniki

Symulowane wyniki
Symulowane wyniki

Powyższe wyniki pokazują liniową zależność napięcia wyjściowego obwodu i wartości rezystancji.

Wyniki zostały następnie wprowadzone do programu Excel i wykreślone. Program Excel udostępnia formułę liniową skojarzoną z tymi wartościami. Potwierdzenie liniowości i zakresu napięcia wyjściowego czujnika.

Krok 6: Tworzenie obwodu

Tworzenie obwodu
Tworzenie obwodu

Obwód został złożony za pomocą dwóch rezystorów 2,2 kΩ i rezystora 100 Ω.

Rezystory mają tolerancję +-5%. Różne wartości rezystancji powodują, że mostek jest niezrównoważony przy 0 stopniach.

Rezystory równoległe zostały dodane szeregowo do rezystora 100 omów, aby dodać nominalne wartości rezystancji, aby uzyskać R4 jak najbliżej 100 omów.

Dało to napięcie wyjściowe 0,00021V, które jest bardzo bliskie 0V.

R1 to 2, 1638 omów, a R3 to 2, 1572 omów. Można by podłączyć więcej rezystorów, aby R1 i R3 były dokładnie równe, dając idealnie zbalansowany mostek.

możliwe błędy:

zmienna skrzynka rezystorowa używana do testowania różnych wartości temperatur może być niedokładna

Krok 7: Zmierzone wyniki

Zmierzone wyniki
Zmierzone wyniki

Zmierzone wyniki można zobaczyć poniżej.

Zmiana temperatury została zmierzona za pomocą zmiennej skrzynki rezystora, aby ustawić rezystancję R2 na różne rezystancje, które można znaleźć w arkuszu danych PT100.

Znaleziona tutaj formuła zostanie użyta jako część kodu do określenia temperatury wyjściowej.

Krok 8: Dla znacznie większych zakresów temperatur

Dla znacznie większych zakresów temperatur
Dla znacznie większych zakresów temperatur

Termopara typu K może być wprowadzona do obwodu, jeśli konieczne jest rejestrowanie bardzo wysokich temperatur. Termopara typu K może mierzyć zakres temperatur od -270 do 1370 stopni Celsjusza.

Termopary działają w oparciu o efekt termoelektryczny, różnica temperatur wytwarza różnicę potencjałów (napięcie).

Ponieważ termopary działają w oparciu o różnicę dwóch temperatur, temperatura na złączu referencyjnym musi być znana.

Istnieją dwie metody pomiaru za pomocą termopar, które możemy zastosować:

Czujnik PT100 można umieścić na złączu odniesienia i mierzyć napięcie odniesienia

Złącze odniesienia termopary można by umieścić w łaźni lodowej, która miałaby stałą temperaturę 0 stopni Celsjusza, ale byłaby niepraktyczna dla tego projektu

Krok 9: Przegląd: stopień wzmacniacza różnicowego

Przegląd: stopień wzmacniacza różnicowego
Przegląd: stopień wzmacniacza różnicowego

Wzmacniacz różnicowy jest integralną częścią konstrukcji. Wzmacniacz różnicowy łączy w jednym obwodzie to, co jest zasadniczo wzmacniaczem nieodwracającym i odwracającym. Oczywiście jak każda kompilacja ma swoje ograniczenia, jednak jak zostanie pokazane w kilku następnych krokach, zdecydowanie pomaga w uzyskaniu prawidłowego napięcia wyjściowego 5V.

Krok 10: O wzmacniaczu różnicowym

O wzmacniaczu różnicowym
O wzmacniaczu różnicowym

Wzmacniacz różnicowy jest wzmacniaczem operacyjnym. Odgrywa kluczową rolę w tym projekcie obwodu, wzmacniając napięcie wyjściowe z mostka Wheatstone'a w mV do V, a następnie jest odczytywane jako wejście napięciowe przez Arduino. Wzmacniacz ten pobiera dwa wejścia napięciowe i wzmacnia różnicę między dwoma sygnałami. Nazywa się to wejściem napięcia różnicowego. Wejście napięcia różnicowego jest następnie wzmacniane przez wzmacniacz i może być obserwowane na wyjściu wzmacniacza. Wejścia wzmacniacza są uzyskiwane z dzielników napięcia mostka Wheatstone'a w poprzedniej sekcji.

Krok 11: Korzyści i ograniczenia

Wzmacniacz różnicowy ma swój udział w zaletach i wadach. Główną zaletą stosowania takiego wzmacniacza jest łatwość konstrukcji. Dzięki tej prostej konstrukcji rozwiązywanie problemów napotkanych w obwodzie jest łatwiejsze i bardziej wydajne.

Wadą zastosowania takiego układu jest to, że aby wyregulować wzmocnienie wzmacniacza, należy wyłączyć oba rezystory określające wzmocnienie (rezystor sprzężenia zwrotnego i uziemiony), co może być czasochłonne. Po drugie, wzmacniacz operacyjny ma stosunkowo niski CMRR (współczynnik tłumienia w trybie wspólnym), który nie jest idealny do łagodzenia wpływu napięcia niezrównoważenia wejściowego. Zatem w konfiguracji takiej jak nasza, posiadanie wysokiego CMRR jest niezbędne do łagodzenia skutków napięcia niezrównoważenia.

Krok 12: Wybór pożądanego wzmocnienia wyjściowego

Wzmacniacz operacyjny posiada 4 rezystory podłączone do obwodu. 2 dopasowane rezystory na wejściach napięciowych, drugi podłączony do masy oraz rezystor sprzężenia zwrotnego. Te dwa rezystory służą jako impedancja wejściowa wzmacniacza operacyjnego. Zazwyczaj wystarczy rezystor w zakresie 10-100 kiloomów, jednak po ustawieniu tych rezystorów można określić wzmocnienie, ustawiając żądane wzmocnienie wyjściowe równe stosunkowi rezystora sprzężenia zwrotnego do rezystora wejściowego na jednym z wejść (Rf/Rin).

Rezystor podłączony do masy oraz rezystor sprzężenia zwrotnego są do siebie dopasowane. Są to rezystory określające wzmocnienie. Dzięki wysokiej impedancji wejściowej minimalizuje skutki obciążenia obwodu, tj. zapobiega przepływaniu przez urządzenie dużych ilości prądu, które w przypadku braku kontroli mogą mieć katastrofalne skutki.

Krok 13: MIKROKONTROLER ARDUINO

MIKROKONTROLER ARDUINO
MIKROKONTROLER ARDUINO

Arduino to programowalny mikrokontroler wyposażony w cyfrowe i analogowe porty I/O. Mikrokontroler został zaprogramowany tak, aby odczytywał napięcie ze wzmacniacza poprzez pin wejścia analogowego. Najpierw Arduino odczyta napięcie z zakresu wyjściowego obwodu 0-5 V i przekonwertuje je na 0-1023 DU i wydrukuje wartość. Następnie wartość analogowa zostanie pomnożona przez 5 i podzielona przez 1023, aby uzyskać wartość napięcia. Wartość ta zostanie pomnożona przez 20, aby otrzymać dokładną skalę dla zakresu temperatur od 0-100 C.

Aby uzyskać wartości przesunięcia i czułości, odczyty z pinu wejściowego na A0 zostały pobrane z różnymi wartościami dla PT100 i wykreślono wykres, aby uzyskać równanie liniowe.

Użyty kod:

void setup() { Serial.begin(9600); //uruchom połączenie szeregowe z komputerem

pinMode (A0, WEJŚCIE); //wyjście ze wzmacniacza będzie podłączone do tego pinu

}

pusta pętla()

{ przesunięcie zmiennoprzecinkowe = 6,4762;

czułość pływaka = 1,9971;

int AnalogValue = analogRead(A0); //Odczytaj dane wejściowe na A0

Serial.print("Wartość analogowa: ");

Serial.println(Wartość Analogowa); //wydrukuj wartość wejściową

opóźnienie (1000);

float WartośćCyfrowa = (Wartość Analogowa * 5) / (1023); //mul przez 5, aby uzyskać zakres 0-100 stopni

Serial.print("Wartość cyfrowa: ");

Serial.println(Wartość Cyfrowa); //wartość napięcia analogowego

float temp = (AnalogValue - offset)/czułość;

Serial.print("Wartość temperatury: ");

Serial.println(temp); //drukuj temp

opóźnienie(5000);

}

Krok 14: Rozwiązywanie problemów

Zasilanie 15V do wzmacniacza operacyjnego i 5V do mostka Wheatstone i arduino musi mieć wspólną masę. (wszystkie wartości 0 V muszą być ze sobą połączone.)

Woltomierz może być użyty do upewnienia się, że napięcie spada po każdym rezystorze, aby zapobiec zwarciom.

Jeśli wyniki są różne i niespójne, użyte przewody można przetestować za pomocą woltomierza do pomiaru rezystancji przewodu, jeśli rezystancja mówi „offline”, oznacza to, że rezystancja jest nieskończona, a przewód ma otwarty obwód.

Przewody powinny mieć mniej niż 10 omów.

Różnica napięć na mostku Wheatstone'a powinna wynosić 0 V w minimalnym zakresie zakresu temperatur, jeśli mostek nie jest zrównoważony, może to być spowodowane:

rezystory mają tolerancję, co oznacza, że mogą mieć błąd, który może spowodować niezrównoważenie mostka Wheatstone'a, rezystancję można sprawdzić woltomierzem, jeśli jest wyjęty z obwodu. mniejsze rezystory można dodawać szeregowo lub równolegle, aby zrównoważyć most.

Seria R=r1+r2

1/Rrównolegle =1/r1 + 1/r2

Krok 15: Przeskalowanie

Wzór i metodę przeskalowania systemu na inną temperaturę można znaleźć w sekcji mostka Wheatstone'a. Po znalezieniu tych wartości i skonfigurowaniu obwodu:

PT100 należy wymienić na skrzynkę rezystorową. Wartości rezystancji należy dostosować z nowego zakresu temperatur za pomocą odpowiednich wartości rezystancji uzyskanych z załączonego pliku pdf.

Zmierzone napięcie i rezystancje powinny być wykreślone w programie Excel z temperaturą (rezystancją) na osi x i napięciem na y.

Z tego wykresu zostanie podana formuła, przesunięcie będzie dodawaną stałą, a czułość będzie liczbą pomnożoną przez x.

Te wartości powinny zostać zmienione w kodzie i pomyślnie przeskalowano system.

Krok 16: Konfiguracja Arduino

podłącz wyjście wzmacniacza obwodu do pinu wejściowego A0 Arduino

Podłącz Arduino Nano przez port USB w komputerze.

wklej kod do obszaru roboczego szkicu Arduino.

Skompiluj kod.

Wybierz Narzędzia > Tablica > Wybierz Arduino Nano.

Wybierz Narzędzia > Port > Wybierz port COM.

Wgraj kod do Arduino.

Wyprowadzana wartość cyfrowa to napięcie wyjściowe wzmacniacza operacyjnego (powinno wynosić 0-5 V)

Wartość temperatury to temperatura odczytana przez system w stopniach Celsjusza.

Zalecana: