Odczt NTC

Pytania, kody i porady dotyczące nie tylko Bascom.
ODPOWIEDZ
grzeniu 73
Posty: 31
Rejestracja: 07 lip 2019, 0:32

Odczt NTC

Post autor: grzeniu 73 » 09 maja 2022, 18:43

Witam.
Nie znalazłem takiego tematu. Ma ktos jakiś przykład przekształcania napięcia z NTC na temperaturę. Dowolny ntc ,bo nie mam konkretnego.
Podłączone mam w ten sposób ,ze rezystor podciągnięty do 5v, ntc do masy i na środku mierze napięcie. Potrzebuje wzór do tego przekształcenia.
Pozdrawiam!
Awatar użytkownika
niveasoft
Posty: 1236
Rejestracja: 17 sie 2015, 12:13
Kontakt:

Re: Odczt NTC

Post autor: niveasoft » 09 maja 2022, 18:47

One są nieliniowe i dlatego tam do obliczeń potrzebny jest logarytm. Jak się w programie nie spieszy to liczy się na bieżąco a jak program wymagający czasowo to tworzy się gotową tablicę stałych i sięga po gotowe dane na podstawie odczytów z ADC.
Jak nie znajdziesz to musiałbym odkopać mój kod do laminatora ;)

Tu link do rozwiązania z tablicą -> https://www.mcselec.com/index.php?optio ... &Itemid=57

A poniżej kod do sposobu z obliczeniami z tego tematu -> https://www.mcselec.com/index2.php?opti ... hlight=ntc
  1.  
  2. '************************************************************************************
  3. ' A thermistor is connected from Vref (+5V) to GND via a resistor R1.
  4. ' The voltage to the ADC is a nonlinear representation of the temperature.
  5. ' NTC resistance is nominally Res25 ohm at 25degC and R1 is fixed and can be any value. But..
  6. ' the best accuracy when R1 is selected to equal NTC's resistance at the temp where best accuracy is desired.
  7. ' See Excel spreadsheet "NTC beräkningar.xls"
  8.  
  9. ' /---> To ADC
  10. ' |
  11. 'Vref o---NTC---o---R1-----|
  12.  
  13. 'Farnell 732-138
  14. Const Beta = 3620 'Thermistors Beta value
  15. Const Res25 = 10000 'Thermistors resistance at 25 deg C
  16. Const Res1 = 10000 'Fixed resistor to ground (Ususally close to Res25)
  17.  
  18.  
  19. Function Adc_to_temp(byval Adcval As Word) As Single
  20. '****************************************************************
  21. ' Convert from ADC reading to temperature Celsius
  22. ' T = 1/Beta(ln(R1/R25((1024/ADCVAL)-1))+1/(273.15+25)) - 273.15
  23. '****************************************************************
  24. Local X As Single
  25.  
  26. X = Adcval 'Avarage voltage expressed in ADC-units (0-1023)
  27.  
  28. 'convert ADC-output to temperature using a logarithmic relation:
  29. X = 1024 / X 'Ratio of max value
  30. X = X - 1
  31. X = X * Res1 'Resistor connector to ground
  32. 'X is now the resistance of the thermistor. Compute the temperature this represents
  33. X = X / Res25 'NTC resistance at 25 deg C
  34. X = Log(x)
  35. X = X / Beta
  36. X = X + 0.003354
  37. X = 1 / X
  38. X = X - 273.15 'Kelvin -> Celsius
  39. 'T is now the true temperature in degrees Celsius
  40.  
  41. Adc_to_temp = X + Temp_offset 'adjust sample with offset and Return result
  42.  
  43. End Function
Ogólnie to wpisujesz w wyszukiwarkę MCS NTC i jest sporo gotowych tematów.
grzeniu 73
Posty: 31
Rejestracja: 07 lip 2019, 0:32

Re: Odczt NTC

Post autor: grzeniu 73 » 09 maja 2022, 20:34

Dzieki. Sprawdzę sobie. Właśnie teraz mam tablice. Włożyłem termometr do wody i zapisałem odczyty.
ODPOWIEDZ