Блог о веб программировании

9 февраля 2019 г.

Arduino. Скетч для измерение температуры с помощью термистора NTC

Термистор представляет собой особый тип резистора, сопротивление которого зависит от температуры. Есть два противоположных по своему принципу действия типа термисторов: PTC (с положительным температурным коэффициентом), где сопротивление возрастает с повышением температуры, и NTC (с отрицательным температурным коэффициентом), где сопротивление уменьшается при повышении температуры.

Для измерения температуры подключаем NTC термистор к выводу A0. Смотри схему ниже:

схема подключения термистора

Пример скетча для измерения температуры


//Значения из даташита
#define RT0 10000   // Ом
#define B 3977      // K
//--------------------------------------
#define VCC 5.0    //Напр-е питания
#define R 10000    //R=10 КОм

//переменные
float RT, VR, ln, TX, T0, VRT;

void setup() {
  Serial.begin(9600);
  T0 = 25 + 273.15;                 //Температура T0 из даташита, преобразуем из цельсиев в кельвины
}

void loop() {
  VRT = analogRead(A0);             //Считываем аналоговое значение VRT
  VRT = (VCC / 1023.00) * VRT;      //Преобразуем в напряжение
  VR = VCC - VRT;
  RT = VRT / (VR / R);              //Сопротивление RT

  ln = log(RT / RT0);
  TX = (1 / ((ln / B) + (1 / T0))); //Температура с термистора

  TX = TX - 273.15;                 //Преобразуем в цельсии

  Serial.print("Temperature:");
  Serial.print("\t");
  Serial.print(TX);
  Serial.print("C\t\t");
  Serial.print(TX + 273.15);        //Преобразуем в кельвины
  Serial.print("K\t\t");
  Serial.print((TX * 1.8) + 32);    //Преобразуем в фаренгейты
  Serial.println("F");
  delay(1000);

}

Данный скетч будет измерять темерературу и выводить ее раз секунду в COM порт

Таблица значений сопротивлений NTC термистора

Таблица значений сопротивлений NTC термистора

Понравился пост? Поделитесь ссылкой с друзьями, они оценят:

Комментарии

Загрузка...

не будет публиковаться на сайте