Измерение температуры воздуха с помощью ультразвукового датчика


Как хорошо известно, всем поклонникам аппаратной платформы Arduino датчик HC-SR04 – это ультразвуковой локатор для измерения расстояния [1-3].

Но скорость распространения ультразвуковых колебаний в воздухе изменяется поl действием различных физических факторов, таких как температура, влажность, давление [4]. Одним из важнейших параметров влияющих на скорость звука является температура воздуха. Таким образом измеряя какое-либо заранее определенное расстояние можно по изменению показаний ультразвукового локатора сделать вывод об изменении температуры воздуха. Следует заметить, что не является первым, кто до этого додумался [5]. Подключение датчика для измерения температуры является совершенно стандартным.

Для измерения температуры следует точно измерить базовое расстояние. В условиях реального практического применения следует также надежно зафиксировать датчик и убедится, что ничто не будет прикрывать ему обзор. Удобно направить лежащий на столе или полу датчик в потолок.

Управляющая программа

Для работы данного термометра автор написал следующую программу:

float alfa = sqrt((7/5*8.31)/0.029); // константа связывающая скорость звука и температуру alfa = sqrt((gamma*R)/M) https://ru.wikipedia.org/wiki/Скорость_звука

// Порты подключения УЗ датчика
int Trig = 12;
int Echo = 13;

//float l = 1.80; //базовое расстояние для измерения температуры (м), задается при калибровке
float l = 1.68; //базовое расстояние для измерения температуры (м), задается при калибровке

int T; // измеряемая термодинамическая температура (К)
float time; //время прихода эха с расстояния l при температуре T (с)
float v; //скорость звука при температуре T (м/с)

int dt = 1000; //Задержка между измерениями

void setup()
{
Serial.begin(9600);
pinMode(Trig,OUTPUT);
pinMode(Echo,INPUT);

}

void loop()
{

// получение данных с УЗ датчика
digitalWrite(Trig, LOW);
delayMicroseconds(2);
digitalWrite(Trig, HIGH);
delayMicroseconds(10);
digitalWrite(Trig, LOW);
time = pulseIn(Echo, HIGH);

time=time*1.211*1e-6; // Вычисление времени прихода эха по данным датчика (c)

v=2*l/time; //расчет скорости звука при температуре T (м/c)

T=v*v/(alfa*alfa); //расчет искомой температуры T

//вывод измеренного значения температуры
Serial.print(«T = «);
Serial.println(T);

delay(dt);

}

Данная программа по стандартному алгоритму определяет время прихода эха. Как известно [6], на выводе Echo датчика HC-SR04 формируется импульс длительностью от 150 мкс до 25 мс, который отображает расстояние до препятствия. Как установил автор экспериментальным путем, для того, что бы получить время прихода эха в секундах надо длительность импульса Echo умножить на 1,211 х 10-6. Затем вычисляется расстояние до препятствия.

Полезное:  Блок питания шуруповерта на внешних аккумуляторах

где l – расстояние до препятствия (м), t – время прихода эха (с).

И, наконец, находится температура, по известной формуле, связывающей температуру воздуха и скорость звука [7].

где a — коэффициент в котором, показатель адиабаты, численно равен 7/5 для двухатомных газов, в том числе и для воздуха, R – универсальная газовая постоянная 8,31 Дж/(моль*К), M – молярная масса газа, для воздуха 0,029 кг/моль.

Результаты выполнения программы можно наблюдать в окне монитора последовательного порта.

В данном случае измеряется именно температура воздуха, а не температура какого-либо термометрического прибора, например терморезистора. Таким образом, удается обойти неизбежную в других случаях инерционность термометрического элемента.

Литература

  • 1) http://robocraft.ru/blog/electronics/772.html
  • 2) https://arduinomaster.ru/datchiki-arduino/ultrazvukovoj-dalnomer-hc-sr04/
  • 3) https://2shemi.ru/ultrazvukovoj-datchik-izmereniya-rasstoyanij-hc-sr04/
  • 4) Енохович А.С. Справочник по физике и технике. — М.:Просвещение, 1989. – 224 с.
  • 5) https://geektimes.ru/post/258882/
  • 6) http://www.zi-zi.ru/docs/senser/Description_HC-SR04.pdf
  • 7) https://ru.wikipedia.org/wiki/Скорость_звука

Файлы скачайте в архиве. Автор проекта — Denev



Оцените: (4 - 5,00 из 5)
Загрузка...

НАЖМИТЕ ТУТ И ОТКРОЙТЕ КОММЕНТАРИИ