Ponieważ termistor jest opornikiem o zmiennej rezystancji, musimy zmierzyć rezystancję abyśmy mogli obliczyć temperaturę. Niestety Arduino nie jest w stanie zmierzyć rezystancji bezpośrednio - potrafi jedynie zmierzyć napięcie. Należy więc skorzystać z dzielnika napięcia aby zmierzyć napięcie między termistorem a znanym opornikiem, który trzeba włączyć do układu. Opornik powinien mieć wartość zbliżoną do termistora, podłączę zatem do układu opornik 100kΩ i skorzystam ze wzoru na obliczenie napięcia:
Vout = Vin * (R2 / (R1 + R2))
gdzie:
- Vout - napięcie między termistorem a znanym opornikiem,
- Vin - to VCC, w moim przypadku: 5V,
- R1 - wartość znanego opornika (tu: 100kΩ)
- R2 - oporność termistora
R2 = R1 * ((Vin / Vout) - 1)
Oczywiście oczekiwaną wartością nie jest rezystancja tylko temperatura i aby ją wyliczyć należy skorzystać z równań bazujących na zależności rezystancji termistora od temperatury,Przykład 1
Po podłączeniu czujnika B3950 do arduino wraz z dzielnikiem napięcia w postaci opornika 100kΩ, kieruję odczytaną wartość temperatury na monitor portu szeregowego.
- 1 x płytka stykowa,
- 1 x Arduino Uno lub Pro Mini,
- 1 x czujnik temperatury B3950,
- 1 x opornik 100kΩ,
- 4 x przewody połączeniowe.
Zbudowany uprzednio układ modyfikuję poprzez dołączenie do niego wyświetlacza ciekłokrystalicznego, który będzie wyświetlać temperaturę odczytaną z termistora. Wyświetlacz wymaga podłączenia zewnętrznego rezystora o typowej wartości 220Ω, który zapewni odpowiednią jasność podświetlenia (rezystor o mniejszej wartości zapewni jaśniejsze podświetlenie wyświetlacza). Dodatkowo do układu podłączam potencjometr 10kΩ, wykorzystywany do regulacji ostrości wyświetlanego obrazu.
Elementy układu:
- 1 x płytka stykowa,
- 1 x Arduino Uno lub Pro Mini,
- 1 x czujnik temperatury B3950,
- 1 x opornik 100kΩ
- 1 x Wyświetlacz LCD 2 x 16 znaków
- 1 x opornik 220kΩ
- 1 x potencjometr 10kΩ
- 17 x przewody połączeniowe.
Sketch Arduino:
Brak komentarzy:
Prześlij komentarz