Распиновка датчика температуры ds18b20

Подключение ds18b20 к arduino

Купить ATTINY2313A на Aliexpress

  • Original 5PCS ATTINY2313A-SU ATTINY2313A ATTINY2313 TINY2313A 2313 ATMEL SOP — 20 …
    US $3.16

  • 10PCS/LOT ATTINY2313A-PU ATTINY2313A ATTINY2313 TINY2313A 2313 DIP20
    US $8.08

  • (5pcs/lot) ATTINY2313A-SU ATTINY2313A ATTINY2313 TINY2313A 2313 ATMEL SOP/20
    US $3.85

  • Free shipping 10PCS ATTINY2313A-SU ATTINY2313A ATTINY2313 TINY2313A 2313 IC MCU 8BIT 2KB FLASH 20SOIC hot sell
    US $7.06

  • 10pcs/lot 100% new and original ATTINY2313A-SU IC MCU 8BIT 2KB FLASH 20SOIC ATTINY2313A
    US $6.90

  • 10PCS ATTINY2313A-SU ATTINY2313A ATTINY2313 TINY2313A 2313 ATMEL SOP/20
    US $7.65

  • Free shipping 5PCS ATTINY2313A-PU ATTINY2313A ATTINY2313-PU DIP20 microcontroller new original
    US $3.60

  • Free shipping 50PCS ATTINY2313A-PU ATTINY2313A ATTINY2313-PU DIP20 microcontroller new original
    US $34.98

  • 100% new original 10PCS/LOT ATTINY2313A-PU ATTINY2313A ATTINY2313 TINY2313A 2313 DIP20
    US $7.88

  • 5PCS/LOT ATTINY2313A-SU ATTINY2313A ATTINY2313 SOP20
    US $3.50

  • ATTINY2313A-PU ATTINY2313APU ATTINY2313A DIP20
    US $8.50

  • ATTINY2313A-PU ATTINY2313APU ATTINY2313A DIP20
    US $6.62

  • pcs/lot New ATTINY2313A-SU ATTINY2313A SOP-20 8-bit Microcontroller with 2/4K Bytes In-System Programmable Flash
    US $3.80

  • Free Shipping 20PCS ATTINY2313A-PU ATTINY2313A ATTINY2313 2313A-PU DIP-20 New original
    US $15.98

  • New original 50pcs/lots ATTINY2313A-SU ATTINY2313A ATTINY2313 SOP-20 In stock!
    US $29.98

  • 2pcs/lot free shipping ATTINY2313A-SU IC MCU 8BIT 2KB FLASH 20SOIC ATTINY2313A
    US $2.00

  • 20Pcs ATTINY2313A-SU ATTINY2313A patch SOP20 new genuine new
    US $14.21

  • 50PCS/LOT ATTINY2313A-PU ATTINY2313A 2313 DIP20
    US $37.05

  • 5PCS MCU IC SOP-20 ATTINY2313A-SU ATTINY2313A NEW
    US $4.14

  • 10PCS MCU IC SOP-20 ATTINY2313A-SU ATTINY2313A NEW
    US $7.80

  • 10PCS/LOT ATTINY2313A-SU ATTINY2313A sop Original IC electronics
    US $15.87

  • ATTINY2313A-SU ATTINY2313A SOP20 imports | Original | New
    US $13.00

  • Free Shipping 50pcs/lots ATTINY2313A-PU ATTINY2313A ATTINY2313 2313A-PU DIP-20 New original
    US $39.89

  • MCU IC SOP-20 ATTINY2313A-SU ATTINY2313A NEW
    US $0.99

  • 100% New original ATTINY2313A-PU ATTINY2313APU ATTINY2313A DIP20
    US $8.22

  • ATTINY2313A ATTINY2313A-SU SOP-20
    US $0.62

  • ATTINY2313A-su SOP20 ATTINY2313A patch new quality goods
    US $16.40

Подключение нескольких датчиковoв DS18B20+

Данном примере подключение будет аналогичным, кроме одного, в плату BreadBoard параллельно первому датчику, подключим второй датчик, схему подключения можно посмотреть ниже.

Запускаем среду программирования IDE Arduino, копируем пример кода в в окно программы и загружаем в контроллер.

/*
Тестирование производилось на Arduino IDE 1.6.11
Дата тестирования 12.11.2016г.
*/

#include <OneWire.h> // Подключаем библиотеку OneWire
#include <DallasTemperature.h> // Подключаем библиотеку DallasTempature

#define ONE_WIRE_BUS 2 // Указываем, к какому выводу подключена DQ

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

void setup(void)
{
Serial.begin(9600); // Задаем скорость передачи данных
sensors.begin(); // Запуск библиотеки, по умолчанию 9 бит
}

void loop(void)
{
Serial.print(» Reading Temperature…»);
sensors.requestTemperatures(); // Запрос на считывание температуры
Serial.println(«Read»);
Serial.print(» Sensor Temperature 1: «);
Serial.print(sensors.getTempCByIndex(0)); // Отображение температуры датчика 1
Serial.print(» Reading Temperature…»);
Serial.println(«Read»);
Serial.print(» Sensor Temperature 2: «);
Serial.print(sensors.getTempCByIndex(1)); // Отображение температуры датчика 2
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32

/*
Тестирование производилось на Arduino IDE 1.6.11
Дата тестирования 12.11.2016г.

*/

 
 
#include <OneWire.h>                        // Подключаем библиотеку OneWire
#include <DallasTemperature.h>              // Подключаем библиотеку DallasTempature
 
#define ONE_WIRE_BUS 2                      // Указываем, к какому выводу подключена DQ
 

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);

voidsetup(void)

{

Serial.begin(9600);// Задаем скорость передачи данных

sensors.begin();// Запуск библиотеки, по умолчанию 9 бит

}

voidloop(void)

{

Serial.print(» Reading Temperature…»);

sensors.requestTemperatures();// Запрос на считывание температуры

Serial.println(«Read»);

Serial.print(» Sensor Temperature 1: «);

Serial.print(sensors.getTempCByIndex());// Отображение температуры датчика 1

Serial.print(» Reading Temperature…»);

Serial.println(«Read»);

Serial.print(» Sensor Temperature 2: «);

Serial.print(sensors.getTempCByIndex(1));// Отображение температуры датчика 2

}

Ссылки  Документация к DS18B20+  Скачать библиотеку DallasTemperature  Скачать библиотеку OneWire v.2.2

Купить на Aliexpress  Контроллер Arduino UNO R3 на CH340G  Контроллер Arduino UNO R3 на Atmega16U2  Провода DuPont, 2,54 мм, 20 см  Датчик температуры DS18b20

Купить в Самаре и области  Контроллер Arduino UNO R3 на CH340G  Контроллер Arduino UNO R3 на Atmega16U2  Провода DuPont, 2,54 мм, 20 см  Датчик температуры DS18b20

На что они похожи?

На Рисунке 1 приведен пример подлинного датчика DS18B20 производства Maxim в корпусе TO-92.

Рисунок 1. Пример маркировки оригинальных датчиков DS18B20 на корпусе TO-92.

На момент написания статьи (2019) маркировка оригинальных  микросхем Maxim наносилась лазером, а не печаталась.

  • Первые две строки, DALLAS 18B20, указывают, что это датчик DS18B20 (Dallas Semiconductor является первоначальным производителем), датчики только с паразитным питанием маркируются DALLAS 18B20P.
  • Знак «+» в четвертой строке означает, что компонент соответствует требованиям RoHS.
  • 3-я строка указывает год выпуска и номер недели в году (в данном случае это 32 неделя 2019 года).
  • Последние два символа в строке 3 указывают ревизию кристалла (на данный момент С4).
  • В строке 4 трехзначное число, за которым следуют два символа, является формой кода партии, которая позволяет Maxim отследить историю производства.
  • В микросхемах, выпущенных в 2016 году или позже, встречалась только комбинация символов AB и AC .

Маркировка внутри отступа на задней части:

  • Маркировка P (Филиппины?). На всех последних микросхемах (2016 и моложе) и на большинстве микросхем, выпуск которых уходит, как минимум, в 2009 год.
  • Маркировка THAI <буква> (Таиланд?), где <буква> — это одна из I, J, K, L, M, N, O, S, T, U, V, W, X, и, возможно, других, по крайней мере, на некоторых микросхемах произведенных в 2011 году . Шрифт <буквы>  отличается от шрифта символов, составляющих слово THAI.

Из того, что было автором замечено на корпусе TO-92, только для микросхем с маркировкой P в отступе на задней части один код партии соответствует коду даты производства. Это не относится к микросхемам с маркировкой THAI в отступе.

Особенности и полезные функции уличных оконных термометров

Приобретая термометр, обратите внимание на его характеристики и дополнительные возможности, делающие цифровые оконные термометры более удобными и функциональными

Особенности и преимущества электронных уличных термометров

Благодаря достижениям современных технологий цифровые термометры способны работать при разных условиях и максимально удобны в быту:

  • бытовые электронные термометры функционируют при широком диапазоне температур. Для внутреннего основного блока рабочий диапазон составляет от -10 до +50°C, наружный датчик сохраняет свои эксплуатационные характеристики при температурном режиме от -50 до +70°C. Это позволяет использовать термометры во всех климатических зонах России;
  • вы можете не переживать за сохранность и точность показаний устройства при любых погодных условиях: благодаря герметичному корпусу, датчику не страшны снег, ветер, дождь и палящее солнце;

  • интересно, что радиопередатчик с термопарой могут быть установлены не только на улице. При необходимости измерить температуру в помещении или внутри другого объекта, вы можете разместить капсулу с датчиком в теплице, гараже, погребе, мастерской и даже холодильной камере;
  • беспроводные электронные уличные термометры с выносным датчиком легко разместить в любом удобном месте, им не обязательно находиться возле окна;
  • современные приборы не просто фиксируют температуру, но осуществляют полноценный мониторинг и анализируют полученные данные.

Дополнительные функции электронных цифровых термометров с выносным датчиком

Современные устройства обладают различными дополнительными возможностями, расширяющими функционал термометра. При выборе термометра эти характеристики могут сыграть немаловажную роль.

Функция Описание функции
Определение вероятности гололеда При температурном режиме в пределах от -1 до -3°C устройство предупреждает вас о повышенной вероятности гололеда на улице.
Анализ данных Термометр фиксирует максимальную и минимальную температуру и записывает эти данные в память.
Подключение в USB Через USB порт вы можете подключить интерфейс к своему компьютеру, скопировать, проанализировать и обработать полученные данные и составить отчеты на основе информации в памяти устройства.
Дополнительные индикаторы Термометр может оснащаться часами, встроенным будильником и календарем, сочетая в одном устройстве все полезные показатели, необходимые нам ежедневно. Среди лучших многофункциональных моделей – оконные термометры rst, оснащенные часами и умным будильником.
Определение уровня влажности Показатель влажности позволяет предугадать вероятность осадков на улице.

Если у вас есть необходимость в анализе данных, убедитесь, что выбранная модель оснащена USB портом и способностью обрабатывать зафиксированные показатели. Если же ваша единственная цель покупки – узнавать температуру на улице, выбирайте самую простую лаконичную модель термометра.

Модуль датчика температуры KY-013

Модуль представляет собой делитель напряжения, в одно из плеч которого включен терморезистор. Сопротивление датчика меняется при изменении температуры, второе плечо делителя образует резистор сопротивлением 10 кОм . Подключение датчика аналогично фоторезистору .

Размер модуля 30 х 15 мм, масса 1 г. Для подключения служит трехконтактный разъем. Центральный контакт – питание +5В, контакт «-» — общий, контакт «S» — информационный.

При изменении температуры происходит изменение сопротивления терморезистора, что приводит к изменению уровня напряжения на сигнальном выводе модуля. Если загрузить в Arduino программу AnalogInput2, то в мониторе последовательного порта среды разработки Arduino IDE можно наблюдать, как меняются показания, снимаемые с аналогового входа платы Arduino. На иллюстрации изменение показаний обусловлено нагревом терморезистора подушечками пальцев.

В общем, это один из простейших аналоговых датчиков, наряду с фоторезистором и потенциометром это датчик с которого обычно начинается изучение работы со встроенным АЦП.

Полезное: Стерео усилитель 50 Вт в классе D на китайском модуле

Как подключить несколько сенсоров DS18B20 к Arduino?

Вы можете подключить несколько цифровых датчиков температуры DS18B20 параллельно. При этом библиотека OneWire library позволит вам считывать данные со всех датчиков одновременно.

Ниже описаны два метода подключения сенсоров.

Для большого количества сенсоров (больше 10), надо использовать резисторы с меньшим сопротивлением (например, 1.6 КОм или даже меньше).

Кроме того, если вы подключаете параллельно более 10 датчиков, могут возникнуть проблемы (погрешности при съеме показаний). Поэтому рекомендуется устанавливать дополнительный резистор сопротивлением 100…120 Ом между контактом data на Arduino и data на каждом сенсоре!

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

ROM = 28 88 84 82 5 0 0 6A

Data = 1 51 1 4B 46 7F FF F 10 FE CRC=FE

Temperature = 21.06 Celsius, 69.91 Fahrenheit

ROM = 28 DA CA 27 5 0 0 49

Data = 1 4E 1 4B 46 7F FF 2 10 D9 CRC=D9

Temperature = 20.87 Celsius, 69.57 Fahrenheit

No more addresses.

Выбираем правильный сенсор

Было бы неплохо знать, с какого именно сенсора вы получаете данные, когда вы используете параллельно несколько датчиков. Как это сделать?

Серийный номер

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

Вы могли обратить на примерах выше, что скетч выдает нам данные в виде 64-битного серийного номера — значение “ROM”. Например:

28 88 84 82 5 0 0 6A или 28 DA CA 27 5 0 0 49 в примере выше.

Не забывайте, если вы используете одновременно большое количество датчиков (10 и больше), надо добавить резисторы 100 … 120 Ом между контактами data с сенсора DS18B20 и пином data на Arduino (для каждого датчика!).

Ниже показана схема параллельного подключения нескольких сенсоров с использованием трех контактов.

Оставляйте Ваши комментарии, вопросы и делитесь личным опытом ниже. В дискуссии часто рождаются новые идеи и проекты!

DS18B20 — современный программируемый датчик цифрового типа для контроля изменений температуры с функцией аварийного сигнала. Данные устройства работают согласно протоколу 1-Wire (однопроводная линия связи с микроконтроллером) и снабжены энергонезависимой памятью для сохранения и контроля запрограммированных параметров интерфейса. Корректное измерение температуры DS18B20 происходит в диапазоне от -55° до +125°С, но наименьшая погрешность, составляющая 0,5°С, достигается в диапазоне от -10° до +85°С.

Цифровой датчик температуры DS18B20 благодаря своему специфическому 64-разрядному коду разрешает подключать в единую линию связи несколько микросхем данной серии для контроля микроклимата как небольшого офисного здания в Москве, так и огромного производственного цеха.

Общие принципы работы датчика температуры DS18B20

DS18B20 представляет собой однопроводный цифровой датчик температуры от компании Maxim IC. Выдает значение температуры в градусах Цельсия, способен измерять температуру с 9-12 битной точностью в диапазоне от -55 до 125 градусов Цельсия с точностью +/-0.5 градуса. Каждый датчик DS18B20 имеет 64-битный уникальный номер (Serial number), вытравленный на корпусе датчика, что позволяет подключать огромное число подобных датчиков к одной шине данных. С помощью данного датчика можно измерять температуру воздуха, жидкостей и земли. В некоторых магазинах датчик продается в комплекте с резистором сопротивлением 4,7 кОм.

Особенности датчика DS18B20:

  • однопроводный интерфейс (1-Wire interface), что позволяет использовать для подключения датчика только один контакт микроконтроллера (в нашем случае платы Arduino Uno);
  • каждый датчик имеет 64-битный уникальный последовательный код (номер), хранящийся в ПЗУ (ROM) датчика;
  • способность подключения к одной шине множества датчиков позволяет создавать на его основе приложения для распределенного (в пространстве) измерения температуры;
  • не требует никаких внешних компонентов;
  • может быть запитан от линии данных;
  • поддерживает напряжение питания от 3.0V до 5.5V;
  • способен измерять температуру в диапазоне от –55°C до +125°C (–67°F до +257°F) с точностью ±0.5°C (в диапазоне от –10°C до +85°C);
  • можно выбрать разрешающую способность (разрешение) датчика: от 9 до 12 бит;
  • преобразует значение температуры в 12-битное цифровое слово длительностью 750 мс (max.);
  • можно настраивать энергонезависимую (nonvolatile, NV) сигнализацию (сигнал тревоги);
  • опции сигнала тревоги позволяют идентифицировать и определить адрес датчика, чья температура не соответствует запрограммированным границам;
  • может применяться в устройствах термоконтроля, промышленных системах, потребительских продуктах, термометрах и в любых других системах, где требуется измерение температуры.

Более подробную информацию о принципах работы датчика DS18B20 вы можете посмотреть в следующей статье на нашем сайте.

Компьютерный тепловой синдром

Выделяемое электроникой компьютера тепло — это естественная враждебная среда «железа» ПК, особенно когда компьютер эксплуатируется в условиях повышенной температуры окружающей среды. Электроника большей части современных ПК оснащается датчиками температуры, установленными на теле процессора, а также на материнской плате. Эти датчики доступны для контроля через «Linux» приложение «lm_sensors».

В качестве  альтернативы можно также рассматривать некоторые конструкции жёстких дисков (HDD, SSD) компьютеров, которые тоже содержат датчики температуры в составе электроники. В этом варианте контролировать сенсоры доступно через «Linux» приложение «hddtemp».

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

Вместе с тем ничто не мешает организовать настоящую сенсорную сеть, взаимодействующую с одним ПК, с датчиками температуры на длинных проводах. Такая схема способна обеспечить гибкую альтернативу, позволяющую легко распределять элементы контроля в разных точках, в том числе за пределами системного блока.

Термометр через последовательный монитор

Чтобы отобразить данные на последовательном мониторе, подключите датчик DS18B20 к Arduino, используя перемычки и макет, и не забудьте подключить или припаять резистор 4.7k между контактом 2 и 3 датчика.

Затем скачайте, откройте и загрузите файл .ino, который называется — DS18B20_Serial, ниже.

Если все в порядке, вы должны увидеть измеренную температуру на серийном мониторе Arduino IDE.

#include <OneWire.h>
#include <DallasTemperature.h>
 
// Провод данных подключен к контакту 2 на Arduino
#define ONE_WIRE_BUS 2
 
// Настройка oneWire для связи с любыми устройствами OneWire 
// (не только Maxim/Dallas температурные IC)
OneWire oneWire(ONE_WIRE_BUS);
 
DallasTemperature sensors(&oneWire);
 
void setup(void)
{
  // Старт серийного порта
  Serial.begin(9600);
  Serial.println("Dallas Temperature IC демо");

  // Запуск библиотеки
  sensors.begin();
} 
 
void loop(void)
{
  // запрашиваем sensor.requestTemperatures() для получения глобальной температуры
  // запрос всех устройств на шине
  Serial.print(" Запрашиваем температуру...");
  sensors.requestTemperatures(); // Отправляем команды для получения температуры
  Serial.println("DONE");

  Serial.print("Температура: ");
  Serial.print(sensors.getTempCByIndex(0)); // Почему "byIndex"? 
    // У вас может быть несколько IC на одной шине. 
    // 0 относится к первой IC
    delay(1000);
}

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

DS18B20 цифровой термометр с программируемым разрешением, от 9 до 12–bit, которое может сохраняться в EEPROM памяти прибора.
Разрешение датчика влияет на время преобразования и на точность (минимальный шаг измерения температуры):
— 9–bit, время преобр. 93,75мс, точность 0,5˚С;
— 10–bit, время преобр. 187,5мс, точность 0,25˚С;
— 11–bit, время преобр. 375мс, точность 0,125˚С;
— 12–bit, время преобр. 750мс, точность 0,0625˚С;

Время преобразования определяет минимальный период опроса датчика температуры DS18B20.

DS18B20 обменивается данными по 1-Wire шине.
Все процессы на шине управляются программой (прошивкой) «Smacont-ESP».

Характеристики

— Питание: 3 — 5.5В;
— Температурный диапазон: от -55 до +125˚С;
— Погрешность измерения: ±0,5˚С;
— Разрешение измерения составляет 0,0625˚С…0,5˚С;
— Максимальный потребляемый ток: 1мА;
— Потребляемый ток в режиме ожидания: 750нА;
— Время отклика: менее 93,75мс…750мс.

Датчик DS18B20 выпускается в двух исполнениях: в корпусе TO-92 и в герметичном исполнении.
Последний имеет длину кабеля 1…5 метра и используется для измерения температуры в сложных условиях — под водой, в земле, и т.д.

Описание датчика DS18B20 (datasheet):
— на английском языке;
— на русском языке.

Описание датчика DS18B20 для Arduino

DS18B20 – это цифровой температурный датчик, обладающий множеством полезных функций. По сути, DS18B20 – это целый микроконтроллер, который может хранить значение измерений, сигнализировать о выходе температуры за установленные границы (сами границы мы можем устанавливать и менять), менять точность измерений, способ взаимодействия с контроллером и многое другое. Все это в очень небольшом корпусе, который, к тому же, доступен в водонепроницаемом исполнении.

Микросхема имеет три выхода, из которых для данных используется только один, два остальных – это земля и питание. Число проводов можно сократить до двух, если использовать схему с паразитным питанием и соединить Vdd с землей. К одному проводу с данными можно подключить сразу несколько датчиков DS18B20 и в плате Ардуино будет задействован всего один пин.

Где купить датчик

Влагозащищенный датчик температуры DS18B20 с длиной провода 1 м от надежного магазина Комплект из 10 микросхем DS18B20 TO92 Модуль DS18B20 для удобного подключения к Ардуино от Keyestudio
Беспроводной модуль DS18B20 на ESP8266 ESP-01 ESP-01S для проектов умного дома Шилд датчика DS18B20 для платы D1 MINI – беспроводная передача данных Датчик DS18B20 с модулем для подключения к Ардуино

Особенности цифрового датчика DS18B20

Погрешность измерения не больше 0,5 С (для температур от -10С до +85С), что позволяет точно определить значение температуры. Не требуется дополнительная калибровка.
Температурный диапазон измерений лежит в пределах от -55 С до +125 С.
Датчик питается напряжением от 3,3В до 5В.
Можно программно задать максимальную разрешающую способность до 0,0625С, наибольшее разрешение 12 бит.
Присутствует функция тревожного сигнала.
Каждое устройство обладает своим уникальным серийным кодом.
Не требуются дополнительные внешние элементы.
Можно подключить сразу до 127 датчиков к одной линии связи.
Информация передается по протоколу 1-Wire.
Для присоединения к микроконтроллеру нужны только 3 провода.
Существует так называемый режим паразитного питания – в нем происходит питание напрямую от линии связи. Для подключения в этом случае нужны только 2 провода

Важно, что в этом режиме не гарантируется корректная работа при температурах выше 100С. Режим паразитного питания удобно обычно применяется для приложений с удаленным температурным датчиком.

Память датчика состоит из двух видов: оперативной и энергонезависимой – SRAM и EEPROM. В последнюю записываются регистры конфигурации и регистры TH, TL, которые могут использоваться как регистры общего назначения, если не используются для указания диапазона допустимых значений температуры.

Основной задачей DS18B20 является определение температуры и преобразование полученного результата в цифровой вид. Мы можем самостоятельно задать необходимое разрешение, установив количество бит точности – 9, 10, 11 и 12. В этих случаях разрешающие способности будут соответственно равны 0,5С, 0,25С, 0,125С и 0,0625С.

Во время включения питания датчик находится в состоянии покоя. Для начала измерения контроллер Ардуино выполняет команду «преобразование температуры». Полученный результат сохранится в 2 байтах регистра температуры, после чего датчик вернется в первоначальное состояние покоя. Если схема подключена в режиме внешнего питания, микроконтроллер регулирует состояние конвертации. Во время выполнения команды линия находится в низком состоянии, после окончания программы линия переходит в высокое состояние. Такой метод не допустим при питании от паразитной емкости, так как на шине постоянно должен сохраняться высокий уровень сигнала.

Полученные температурные измерения сохраняются в SRAM датчика. 1 и 2 байты сохраняют полученное значение температуры, 3 и 4 сохраняют пределы измерения, 5 и 6 зарезервированы, 7 и 8 используются для высокоточного определения температуры, последний 9 байт хранит устойчивый к помехам CRC код.

Радиосхемы. — Простейший электронный термометр

Радиосхемы начинающим для самостоятельной сборки

материалы в категории

Измеритель предназначен для измерения температуры воздуха, а если защитить датчик, то и любой другой среды в диапазоне -50..+50°С.

Схема термометра представляет собой мост постоянного тока, в одно плечо которого включен терморезистор, а индикатором служит головка микроамперметра (0…50 мкА). Каждое деление на шкале соответствует 1°С. После уравновешивания моста напряжение в измерительной диагонали равно нулю. Разбаланс моста вызывает появление напряжения положительной или отрицательной полярности — в зависимости от направления разбаланса. Если менять полярность питающего напряжения при разбалансе, полярность напряжения в измерительной диагонали моста будет одинакова при измерении положительных и отрицательных температур, и можно использовать обычную головку (с нулевым делением слева, а не в середине шкалы). Изменение полярности осуществляется тумблером SA1, который имеет два положения: «+» и «-«, которые можно назвать «Зима» и «Лето’.

Измерения производятся при нажатии кнопки SB1. I Детали. Терморезистор R1 — 1 ММТ-13Б, ММТ-12; резисторы R2, ; R3, R5. R6 — МПТ-0.5 или С2-29 с • допуском 5%; R4. R7 — СП5-15, СП5-14 или СП5-2. Тумблер SA1 — МТ-3, кнопка SB1 — КМ-1. Измерительная головка РА1 — МЭ06 (ln=50 мкА, Rp=22l3 Ом). Ее можно заменить на М24 или М906 с нулем посередине шкалы, тогда тумблер SA1 не нужен. Для питания прибора используется один элемент типа °D». Такой элемент служит 2…3 года. Можно взять и элементы типа *АА» или аккумуляторы таких же размеров.

Схема простого термометра

Детали измерителя располагаются на плате из одностороннего фольгированного стеклотекстолита размерами 125×110 мм, выполненной методом прорезания дорожек в фольге. Плата крепится к выводам головки, ее нижняя часть служит опорой измерителя. В верхней части платы устанавливается элемент питания, а на одной из боковых сторон — тумблер и кнопка.Регулировка. Резисторы R4. R7 устанавливают в среднее положение. Терморезистор подключают проводом МГТФ необходимой длины (0,5.. .1,5 м) и помещают в стакан стающим льдом, через 5..10 минут нажимают кнопку SB1 «Измерение» и резистором R7 устанавливают «0°. Затем терморезистор опускают в пол литровую стеклянную банку, заполненную водой с температурой +60.+70°С. Температуру измеряют ртутным лабораторным термометром. Через 5… 10 мин. когда температура воды снизится до +40°С или +50°С. резистором R4 устанавливают это значение на шкале прибора. Терморезистор, измеряющий температуру наружного воздуха, надо размещать таким образом, чтобы исключить попадание на него солнечных лучей.

Литература1. Андреев Ю.Н. и др. Резисторы: Справочник2. Радио, 1999, №6, С.43.3. Шульц Ю. 1000 понятий для практиков. С.130.

Ю.ПЛОТНИКОВ, г.Новосибирск.

Схема подключения DS18B20

Что такое разрешение?

В технических характеристиках сообщается, что датчик DS18B20 может измерять температуру с различным разрешением. Разрешение — это как у линейки: миллиметры между сантиметрами. Так же и c разрешением у DS18B20 — это шаг между последовательными ступенями градусов Цельсия.

Разрешение выбирается с помощью количества бит. Диапазон выбора от 9 до 12 бит. Выбор разрешения влечет за собой определенные последствия. Чем выше разрешение, тем дольше придется ждать результат измерений.

Для 9 битного разрешения есть 2 шага между последовательными уровнями:

  • 0,0 °C
  • 0,5 °C

Для 10 битного разрешения есть 4 шага между последовательными уровнями:

  • 0,0 °C
  • 0,25 °C
  • 0,5 °C
  • 0,75 °C

В этом случае мы считываем температуру с разрешением 0,25 °C. Время измерения для 10 битного разрешения составляет 187,5 мс, что позволяет выполнить 5,3 измерений в секунду.

Для 11 битного разрешения есть 8 шагов между последовательными уровнями:

  • 0,0 °C
  • 0,125 °C
  • 0,25 °C
  • 0,375 °C
  • 0,5 °C
  • 0,625 °C
  • 0,75 °C
  • 0,875 °C

То есть разрешение составляет 0,125 °C. Время измерения для 11 битного разрешения составляет 375 мс. Это позволяет выполнить 2,6 измерения в секунду.

Для 12 битного разрешения есть 16 шагов между последовательными уровнями:

  • 0,0 °C
  • 0,0625 °C
  • 0,125 °C
  • 0,1875 °C
  • 0,25 °C
  • 0,3125 °C
  • 0,375 °C
  • 0,4375 °C
  • 0,5 °C
  • 0,5625 °C
  • 0,625 °C
  • 0,6875 °C
  • 0,75 °C
  • 0,8125 °C
  • 0,875 °C
  • 0,9375 °C

Следовательно, разрешение составляет 0,0625 °C. Время измерения для 12 битного разрешения в районе 750 мс. То есть вы можете сделать 1,3 измерений в секунду.

Что такое точность измерения?

Ничто в мире, и особенно в электронике, не является совершенным. Можно только приближаться к совершенству, тратя все больше и больше денег и сил. Так же и с этим датчиком. Он имеет некоторые неточности, о которых вы должны знать.

В технических характеристиках сказано, что в диапазоне измерения от -10 до 85 °C датчик DS18B20 имеет точность на уровне +/- 0,5 °C. Это значит, что, когда в комнате у нас температура 22,5 °C, то датчик может вернуть нам результат измерения от 22 до 23 °C. То есть, может показать на 0,5 °C больше или меньше. Все это зависит от индивидуальной характеристики датчика.

В диапазоне от -55 до 125 °C погрешность измерения может возрасти до +/- 2 °C. То есть, когда вы измеряете что-то с температурой 100 °C, то датчик может показать температуру от 98 до 102 °C.

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

Что такое дрейф измерения?

Дрейф измерения — это наиболее худшая форма неточности. Суть дрейфа измерения заключается в том, что при измерении постоянной температуры — при одном измерении датчик может показывать одну температуру, а при последующем другую (на величину дрейфа).

Дрейф датчика температуры DS18B20 +/- 0.2 °C. Например, когда в комнате постоянная температура составляет 24 °C, датчик может выдавать результат в диапазоне от 23,8 °C до 24,2 °C.

(379,0 Kb, скачано: 913)

DS18B20 — это цифровой датчик температуры. Датчик очень прост в использовании.

Во-первых, он цифровой, а во вторых — у него всего лишь один контакт, с которого мы получаем полезный сигнал. То есть, вы можете подключить к одному Arduino одновременно огромное количество этих сенсоров. Пинов будет более чем достаточно. Мало того, вы даже можете подключить несколько сенсоров к одному пину на Arduino! Но обо всем по порядку.

DS18B20 имеет различные форм-факторы. Так что выбор, какой именно использовать, остается за вами. Доступно три варианта: 8-Pin SO (150 mils), 8-Pin µSOP, и 3-Pin TO-92. Серфинг по eBay или Aliexpress показывает, что китайцы предлагают версию TO-92 во влагозащищенном корпусе. То есть, вы можете смело окунать подобное чудо в воду, использовать под дождем и т.д. и т.п. Эти сенсоры изготавливаются с тремя выходными контактами (черный — GND, красный — Vdd и белый — Data).

Различные форм-факторы датчиков DS18B20 приведены на рисунке ниже.

Модель DS18B20 во влагозащищенном корпусе:

DS18B20 удобен в использовании. Запитать его можно через контакт data (в таком случае вы используете всего два контакта из трех для подключения!). Сенсор работает в диапазоне напряжений от 3.0 В до 5.5 В и измеряет температуру в диапазоне от -55°C до +125°C (от -67°F до +257°F) с точностью ±0.5°C (от -10°C до +85°C).

Еще одна крутая фича: вы можете подключить параллельно вплоть до 127 датчиков! и считывать показания температуры с каждого отдельно. Не совсем понятно, в каком проекте подобное может понадобится, но подключить два сенсора и контролировать температуру в холодильнике и морозильной камере можно. При этом вы оставите свободными кучу пинов на Arduino… В общем, фича приятная.

Подключение устройства

На вопрос о том, как подключить датчик теплого пола, каждый специалист даст ответ, что можно это сделать двумя способами:

  • прямое подсоединение «кабель – термостат»;
  • с использованием распаечного короба.

Подключаются датчики теплого пола обычно к отдельной электролинии щитка с использованием медных силовых проводов, сечение которых составляет примерно 2,5 кв. мм. Чтобы обезопасить систему от утечки электрического тока следует в щиток вмонтировать УЗО и автоматический выключатель.

Непосредственно в комнате, где находятся полы с подогревом, устанавливается еще один распределительный короб, к которому и подводится кабель от основного щитка. Затем от короба в пол проводятся две трубки с основным нагревательным кабелем и тому, который будет подпитывать установленный датчик.

Итог

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

Ввод в эксплуатацию

В качестве демонстрации я написал практический пример в виде мониторинга температуры с помощью датчика DS18B20, работающего по протоколу 1-Wire.

Результат измерения отображается на небольшом OLED-дисплее (драйвер SSD1306), управляемом по I2C шине.

Код программы это, по сути, компиляция кода из двух примеров, касающихся перечисленных систем (DS18B20 и OLED-дисплея). Кроме того, код сделан максимально коротким, чтобы уместить его в память Attiny. Хотя это и так, но использование памяти достигло 100% (6012 байт). Из-за этого, как видите в коде, закомментированной является функция проверки контрольной суммы.

Здесь я столкнулся с двумя проблемами, как и в предыдущем проекте (с датчиком HC-SR04). Во-первых, быстро заканчивается FLASH-память, а во-вторых, это распределение контактов. 1-Wire не хотел работать на контакте P1, помогла замена на контакт на P3.

Понравилась статья? Поделиться с друзьями:
Зинг-Электро
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: