Инструменты пользователя

Инструменты сайта


ehlektronika:datchiki:datchik_temperatury

Датчик температуры

ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ

  • 1) Диапазон измеряемых температур: −55…+125 °C
  • 2) Точность: ±0,5°C (в пределах −10…+85 °C)
  • 3) Время получения данных: 750 мс
  • 4) Напряжение питания: 3–5,5 В
  • 5) Потребляемый ток при бездействии: 750 нА
  • 6) Потребляемый ток при опросе: 1 мА

Описание

Датчик температуры позволяет измерять температуру воздуха, жидкостей и других предметов в широком температурном диапазоне от -55 до +125 градусов Цельсия, (с погрешностью +- 0.5 °C в пределах −10…+85 °C). Модуль основан на цифровом датчике DS18B20, герметично заключенном в металлической гильзе из нержавеющей стали.

Использование

Подключение

Датчик использует стандартный 3-пиновый разъем и подключается в любой из портов IN контроллера "Трекдуино"

Программирование

Общение датчика с микроконтроллером осуществляется по протоколу 1-Wire, используется библиотека OneWire. При использовании функции temperature(int port) обращение к библиотеке происходит внутри функции, т.о. при использовании контроллера «Трекдуино» подключать библиотеку вручную не требуется.

Блок, необходимый для работы с датчиком, называется «температура» и расположен в группе блоков «Датчики».

Блок и генерируемая функция Описание


int temperature(int port)
Возвращает текущее значение температуры с округлением до целого значения.

Аргументы:
int port - порт, к которому подключен датчик


Каждое измерение температуры (вызов функции temperature())занимает около 700 мс, учитывайте эту задержку при составлении программ.

Примеры использования в проектах

Автономная метеостанция

Автономная метеостанция - контроллер измеряет температуру каждый час и записывает значения на SD-карточку в файл temp_log.txt.

Генерируемый код:

//подключение библиотек для работы с SD-картой
#include <SPI.h>
#include <SD.h>
 
 
void setup()
{
  const int chipSelect = SD_CS;
  SD.begin(chipSelect);
 
  File datafile = SD.open("temp_log.txt", FILE_WRITE);
  if(datafile){
    datafile.print( "Temp=" );
    datafile.print(" ");
    datafile.print( temperature(IN1) );
    datafile.print(" ");
    datafile.println("");
    datafile.close();
  }
 
  delay( 3600000 );
 
}
 
void loop()
{
}
ehlektronika/datchiki/datchik_temperatury.txt · Последние изменения: 2020/01/15 11:16 — dustinskiy