Цифровой датчик температуры построен на микросхеме DS18B20. Он позволяет измерять температуру окружающей среды в диапазоне от -55°C до +125°C. Датчик подключается к Arduino по протоколу 1-Wire, что позволяет подключить большое количество таких датчиков (до 127 штук), используя всего один цифровой вывод. Опрос одного конкретного датчика, подключённого по общей шине, производится по уникальному серийному 64-разрядному коду, который может быть считан специальной командой. DS18B20 имеет собственную EEPROM, в которой можно хранить измеренные значения температуры. Разрешение показаний температуры может быть программно изменено, и находиться в диапазоне от 9 до 12 разрядов. Для работы с данным датчиком температуры необходимы библиотеки OneWire и DallasTemperature.
Спецификация:
Интерфейс подключения |
1-Wire |
Длина кабеля |
1 m |
Диаметр кабеля |
6 mm |
Материал герметичного корпуса датчика |
Нержавеющая сталь |
Пределы измерения температуры |
-55°C … +125°C (-67°F … +257°F) |
Точность измерения температуры |
±0,5°C (от -10°C … +85°C); ±2°C (от -55°C … +125°C) |
Напряжение питания |
3V … 5,5 V |
Потребляемый ток при опросе датчика (при напряжении питания 5В) |
1 mA … 1,5 mA |
Разрешение температуры |
9 … 12 bit |
Количество выводов |
3 |
Потребляемый ток в режиме ожидания |
750 nA … 1000 nA |
Время получения измеренной температуры |
93,75 ms (разрешение — 9-разрядов) |
187,5 ms (разрешение — 10-разрядов) |
375 ms (разрешение — 11-разрядов) |
750 ms (разрешение — 12-разрядов) |
Вес |
22 g |
Ниже приведены ссылки на дополнительные материалы, которые вы можете просмотреть у нас на сайте и в интернете.
Даташит DS18B20
Библиотека OneWire
Библиотека DallasTemperature
Расположение выводов цифрового датчика температуры DS18B20:
Где GND — земля, DQ — данные, VCC — питание
Подключение цифрового датчика температуры DS18B20 к Arduino:
Цифровой датчик температуры DS18B20 можно подключить к Arduino двумя способами:
- С использованием 3х выводов: VCC (питание), GND (земля) и DQ (данные)
Вывод датчика GND подключается к выводу GND Arduino, вывод VCC подключается к выводу +5V Arduino, а вывод DATAподключается к любому цифровому выводу Arduino.
- С использованием 2х выводов: GND(земля) и DQ (данные). Однако при таком подключении датчик температуры редко может выдавать ошибочные показания
Вывод датчика GND подключается к выводу GND Arduino, вывод VCC закорачивается на землю (GND), вывод +5V Arduino подключается к резистору, а вывод DATA подключается к любому цифровому выводу Arduino.
Однако независимо от выбранного способа подключения, информационный (DQ) вывод датчика необходимо соединить с питанием через резистор 4,7 кОм (при подключении только одного датчика можно использовать резистор на 10 кОм).
При подключении нескольких DS18B20 параллельно (при использовании библиотеки OneWire считывать показания можно со всех датчиков одновременно) нужно учитывать следующие замечания:
- При подключении больше 10 датчиков необходимо использовать резистор с меньшим сопротивлением (~1,5 кОм или меньше)
- При подключении больше 10 датчиков может возникнуть погрешность в показаниях. Чтобы предотвратить это, рекомендуется ставить дополнительный резистор 100 … 120 Ом между цифровым выводом Arduino, к которому подключён вывод DQ и выводом DQ на каждом датчике DS18B20.