Датчик температуры DS18B20 (датчик, герметичный датчик, модуль датчика)
Описание
Датчик температуры DS18B20 - цифровой термометр, который передает данные по шине 1-Wire, может быть единственным устройством на шине, может работать и в группе. Каждый датчик имеет уникальный 64-битный код, что позволяет общаться с каждым датчиком «индивидуально». Таким образом можно распределить несколько таких датчиков в разных местах, и отслеживать температуру адресно (в том месте, где установлен конкретный датчик).
Технические характеристики
- напряжение питания: 3-5,5В
- диапазон измеряемой температуры: от -55 до +125˚С
- погрешность измерения температуры: ±0,5˚С
- максимальный потребляемый ток: 1мА
- потребляемый ток в режиме ожидания: 750нА
- потребляемый ток (модуль): 1 мА (в режиме ожидания 750 нА)
- время отклика: менее 1с
Физические размеры
- Датчик (Д х Ш х В): 5 х 3 х 20 мм
- Герметичный датчик (Д х Ш х В): 1030 х 6 х 65 мм
- Модуль датчика (Д х Ш х В): 21 х 6 х 28 мм
Плюсы использования
Для всех типов:
- Быстрый отклик датчика
- Недорогое решение для измерения температуры
- Возможность адресного обращения к датчику
- Работа по шине 1-Wire
- Низкое энергопотребление
- Может питаться напряжением линии данных («паразитное» питание)
- Широкий диапазон измерений
- Высокая точность измерений
Для герметичного датчика:
- Возможность измерения температуры жидкостей и пр.
- Длинный герметичный шнур (1 м)
Минусы использования
- Не измеряет влажность как некоторые аналоги
Файлы для загрузки
При подключении датчика, вывод питания и сигнальный вывод должны быть соединены резистором на 10КОм. При объединении нескольких датчиков будет достаточно сопротивления 4,7КОм.
Внимание! При питании датчика от 3,3 В вывод OUT необходимо подтягивать резистором к 5 В !
Примеры подключения и использования
В данном примере рассмотрим подключение датчика к контроллеру (на примере Smart UNO), и вывод температуры в Serial-монитор.
Для датчика или герметичного датчика:
Что нужно | Кол-во, шт |
---|---|
Контроллер Smart UNO | 1 |
Датчик температуры DS18B20 | 1 |
Провода папа-папа | 4 |
Резистор 10 КОм | 1 |
Для модуля датчика:
Что нужно | Кол-во, шт |
---|---|
Контроллер Smart UNO | 1 |
Sensor Shield | 1 |
Модуль датчика температуры DS18B20 | 1 |
Шлейф "мама-мама" х3 | 1 |
Схема подключения:
Скетч для загрузки:
#include <OneWire.h> //подключение библиотеки OneWire #include <DallasTemperature.h> //подключение библиотеки для работы с датчиком #define ONE_WIRE_BUS 10 //шина передачи данных OneWire oneWire(ONE_WIRE_BUS); //создание объекта oneWire для передачи данных по технологии OneWire DallasTemperature sensors(&oneWire); //создание объектов типа DallasTemperature дял измерения температуры void setup() { sensors.begin(); //инициализация датчика(ков) Serial.begin(9600); } void loop() { sensors.requestTemperatures(); //запрос температуры устройств //Получение температуры у устройства с индексом (устройств может быть несколько на одной шине) // и вывод в сериал порт Serial.print("Temperature of device #0 is "); Serial.print(sensors.getTempCByIndex(0)); Serial.println(" C"); }