Spisu treści:

Termometr Arduino AD8495: 7 kroków
Termometr Arduino AD8495: 7 kroków

Wideo: Termometr Arduino AD8495: 7 kroków

Wideo: Termometr Arduino AD8495: 7 kroków
Wideo: Аналоговый усилитель термопары типа-К на AD8495 2024, Listopad
Anonim
Termometr Arduino AD8495
Termometr Arduino AD8495
Termometr Arduino AD8495
Termometr Arduino AD8495
Termometr Arduino AD8495
Termometr Arduino AD8495
Termometr Arduino AD8495
Termometr Arduino AD8495

Krótki przewodnik, jak rozwiązać swoje problemy z termometrem typu K. Mamy nadzieję, że to pomoże:)

Do następującego projektu będziesz potrzebować:

1x Arduino (wszelkiego rodzaju, wydawało się, że mamy 1 Arduino Nano za darmo)

1x AD8495 (zwykle dostarczany jako zestaw z czujnikiem i wszystkim)

6x przewody połączeniowe (łączące AD8495 z Arduino)

lutownica i drut lutowniczy

OPCJONALNY:

1x bateria 9 V

2x rezystory (użyliśmy 1x 10kOhm & 2x5kOhm bo połączyliśmy razem 2x5k)

Uważaj, aby postępować ostrożnie i uważaj na swoje palce. Lutownica może spowodować oparzenia, jeśli nie obchodzi się z nią ostrożnie.

Krok 1: Jak to ogólnie działa?

Jak to ogólnie działa?
Jak to ogólnie działa?

Ogólnie rzecz biorąc, termometr ten jest produktem firmy Adafruit, jest wyposażony w czujnik typu K, który może być używany do prawie wszystkiego, od pomiaru temperatury w domu lub piwnicy po pomiar temperatury pieca i piekarnika. Wytrzymuje temperatury od -260 stopni C do 980, a przy niewielkich korektach zasilania dochodzi do 1380 stopni C (co jest dość niezwykłe) i jest też dość precyzyjny, z +/-2 stopniami odmiana jest niezwykle użyteczna. Jeśli zrobisz to tak, jak zrobiliśmy to z Arduino Nano, możesz spakować go również do małego pudełka (biorąc pod uwagę, że zrobisz własne pudełko, którego nie ma w tym samouczku).

Krok 2: Podłączanie i prawidłowe okablowanie

Podłączanie i prawidłowe okablowanie
Podłączanie i prawidłowe okablowanie
Podłączanie i prawidłowe okablowanie
Podłączanie i prawidłowe okablowanie
Podłączanie i prawidłowe okablowanie
Podłączanie i prawidłowe okablowanie

Jak otrzymaliśmy, paczka wyglądała tak, jak widać na powyższych zdjęciach. Do połączenia z płytką Arduino można użyć przewodów połączeniowych, ale polecam lutowanie przewodów, ponieważ działa na bardzo małych napięciach, więc każdy niewielki ruch może zepsuć wyniki.

Powyższe zdjęcia pokazują, jak przylutowaliśmy przewody do czujnika. Do naszego projektu użyliśmy Arduino Nano i jak widać, zmodyfikowaliśmy również nieco nasze Arduino, aby uzyskać optymalne wyniki z naszych pomiarów.

Krok 3: Rodzaj użytkowania

Rodzaj użytkowania
Rodzaj użytkowania

Zgodnie z arkuszem danych czujnik ten może być używany do pomiaru od -260 do 980 stopni C przy normalnym zasilaniu Arduino 5 V lub można dodać zewnętrzne źródło zasilania, które da ci możliwość pomiaru do 1380 stopni. Ale uważaj, jeśli termometr zwróci do Arduino więcej niż 5 V, aby odczytać, może to uszkodzić twoje Arduino, a twój projekt może być skazany na niepowodzenie.

Aby rozwiązać ten problem, na urządzeniu umieściliśmy dzielnik napięcia, który w naszym przypadku jest Vout do połowy napięcia Vin.

Linki do arkusza danych:

www.analog.com/media/en/technical-documenta…

www.analog.com/media/en/technical-documenta…

Krok 4: Wielki problem z kodem podczas pomiaru

Wielki problem z kodem podczas pomiaru
Wielki problem z kodem podczas pomiaru

Zgodnie z kartą katalogową termometru napięcie odniesienia wynosi 1,25V. W naszych pomiarach tak nie było… Podczas dalszych testów okazało się, że napięcie odniesienia jest zmienne i testowaliśmy na dwóch komputerach, na obu było różne (!?!). Otóż wkładamy pinezkę na płytkę (jak pokazano na powyższym obrazku) i wstawiamy linię w kodzie, aby za każdym razem przed obliczeniem odczytać wartość napięcia odniesienia.

Główny wzór na to to Temp=(Vout-1,25) / 0,005.

W naszym wzorze zrobiliśmy to: Temp=(Vout-Vref) / 0,005.

Krok 5: Kod, część 1

Kodeks Część 1
Kodeks Część 1
Kod Część 1
Kod Część 1

const intPinAnalogowy= A0; //Pin analogowy dla temp readconst int AnalogPin2= A1; //Pin analogowy do odczytu wartości referencyjnejfloat Temp; //Pływak temperatury Vref; //Wartość pływaka napięcia Vout; //Napięcie po adcfloat SenVal; //wartość zmiennoprzecinkowa czujnika SenVal2; //Wartość czujnika z referencyjnego pinvoid setup() {Serial.begin(9600); } void loop() { SenVal = analogRead(A0); //Wartość analogowa z temperatury SenVal2 =analogRead(A1); //Wartość analogowa z referencyjnego pinVref = (SenVal2 *5.0) / 1024.0; //Konwersja analogowo-cyfrowa dla wartości referencyjnejVout = (SenVal * 5.0) / 1024.0; //Konwersja analogowo-cyfrowa dla napięcia odczytu temperatury Temp = (Vout - Vref) / 0,005; //Obliczanie temperatury Serial.print("Temperatura= ");Serial.println(Temp);Serial.print("Napięcie odniesienia= ");Serial.println(Vref);delay (200);}

Ten kod jest używany, gdy korzystasz z zasilania z Arduino (brak zewnętrznego źródła zasilania). Ograniczy to pomiar do 980 stopni C zgodnie z arkuszem danych.

Krok 6: Kod, część 2

Kod Część 2
Kod Część 2
Kod Część 2
Kod Część 2

const intPinAnalogowy= A0; //Pin analogowy dla temp readconst int AnalogPin2= A1; //Pin analogowy, z którego odczytujemy wartość referent (musieliśmy to zrobić, ponieważ wartość referent czujnika jest niestabilna)float Temp; //Pływak temperatury Vref; //Pływak napięcia odniesienia Vhalf; //Napięcie na arduino odczytane po dzielniku Vout; //Napięcie po konwersjifloat SenVal; //Sensor valuefloat SenVal2; //Wartość czujnika, z której otrzymujemy referent valuevoid setup() {Serial.begin(9600); }unieważnij pętlę() {SenVal = analogRead(A0); //Wartość wyjścia analogowegoSenVal2= analogRead(A1); //Wyjście analogowe, z którego otrzymujemy wartość odniesieniaVref = (SenVal2 * 5.0) / 1024.0; //Transformacja wartości analogowej z pinu referencyjnego na wartość cyfrową Vhalf = (SenVal * 5.0) / 1024.0; //Przekształć wartość analogową na cyfrowąVout = 2 * Vhalf; //Obliczanie napięcia po dzielniku halfing napięcia Temp = (Vout - Vref) / 0,005; //Obliczanie formuły temperaturySerial.print("Temperatura= ");Serial.println(Temp);Serial.print("Vout= ");Serial.println(Vout);Serial.print("Napięcie odniesienia= ");Serial.println(Vref);opóźnienie (100);}

To jest kod, jeśli korzystasz z zewnętrznego źródła zasilania i do tego używamy dzielnika napięcia. Dlatego w środku mamy wartość „Vhalf”. Nasz używany dzielnik napięcia (patrz część 3) to połowa napięcia wejściowego (R1 ma takie same wartości omów jak R2), ponieważ użyliśmy baterii 9V. Jak wspomniano powyżej, każde napięcie powyżej 5V może uszkodzić Arduino, więc udało nam się uzyskać max 4,5V (co w tym przypadku jest niemożliwe, ponieważ maksymalna moc wyjściowa z czujnika za dzielnikiem napięcia może wynosić około 3,5V).

Krok 7: Wyniki

Wyniki
Wyniki
Wyniki
Wyniki
Wyniki
Wyniki
Wyniki
Wyniki

Jak widać na powyższych zrzutach ekranu, przetestowaliśmy to i działa. Dodatkowo udostępniliśmy oryginalne pliki Arduino.

To jest to, mamy nadzieję, że pomoże ci w twoich projektach.

Zalecana: