Применение интегрального датчика температуры DS18B20 в автоматизации жилых помещений

10 июня

автомобильная электроникамедицинаавтоматизациялабораторные приборыUMWNovosenseYOUTAI (UMW)HXYHKSEMIстатьядатчикиДатчик температурыDS18B20

Михаил Варакин (г. Ишим)

Цифровой датчик температуры DS18B20 пользуется чрезвычайной популярностью. Область его применения обширна: он применяется как для контроля температуры физических объектов, так и для мониторинга теплового режима самих радиоэлектронных устройств. Этот датчик входит в номенклатуру таких компаний, как Youtai (UMW), EVVO, MSKSEMI, HXY, HKSHAN, JSMICRO, MYSENTEC, XINBOLE и другие.

До появления DS18B20 для измерения температуры использовались аналоговые датчики. Они очень точны, работают в широком диапазоне температур и надежны, но имеют ряд недостатков:

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

Датчик DS18B20 лишен вышеперечисленных недостатков, а также обладает рядом преимуществ:

  • однопроводной последовательный интерфейс с протоколом 1-Wire требует лишь одного порта связи с контроллером;
  • каждое устройство имеет уникальный 64-битный серийный код;
  • есть возможность подключения нескольких датчиков через одну линию связи;
  • нет необходимости во внешних компонентах;
  • питание можно получать непосредственно от линии связи, напряжение питания находится в пределах 3,0…5,5 В;
  • диапазон измерения температуры составляет -55…125°C;
  • погрешность не превышает 0,5°C в диапазоне -10…85°C;
  • разрешение преобразования составляет 9…12 бит и задается пользователем;
  • время измерения не превышает 750 мс при максимально возможном разрешении 12 бит;
  • есть возможность программирования параметров тревожного сигнала;
  • этот сигнал передает данные об адресе датчика, у которого температура вышла за заданные пределы;
  • совместимость с платформой Arduino.

История возникновения датчика DS18B20 начинается с разработки компанией Dallas Semiconductor в конце 1990-х гг. цифрового термометра DS1820. Однако у него был существенный недостаток: при обработке информации внутри микросхемы мог произойти сбой и выдача ложной информации. Поэтому производитель прекратил выпуск этой микросхемы с декабря 2000 года. На смену DS1820 пришли более совершенные модели: DS18S20 с 12-битным АЦП и усовершенствованным алгоритмом вычисления температуры, а также DS18B20 с 12-битным АЦП и настраиваемым разрешением 9…12 бит. В 2002 году компания Dallas была куплена Maxxx Intxxxxxxx, а спустя 20 лет ее поглотил гигант Anxxxx Devxxxx, который владеет патентами на протокол 1-Wire и сами датчики DS18B20.

Главное отличие этих устройств от ранее используемых аналоговых датчиков — это преобразование сигнала в цифровой выходной код и передача его по определенному протоколу. На рисунке 1 представлена структурная схема датчика DS18B20.

Рис. 1. Структурная схема DS18B20

Рис. 1. Структурная схема DS18B20

Этот датчик может получать питание двумя способами:

  • в режиме прямого питания (напряжение подается на выводы Vdd и GND);
  • в режиме паразитного питания (датчик получает питание от линии данных).

Из структурной схемы видно, что за прямое питание отвечает блок POWER SUPPLY SENSE, а режим паразитного питания обеспечивает блок PARASIT POWER CIRCUIT, в составе которого основную роль играет конденсатор Срр как питающий буфер.

Далее следует модуль 64-BIT ROM AND 1-WIRE PORT. В нем содержится информация об уникальном адресе каждого устройства. Код каждого датчика записывается заводом-изготовителем во внутреннюю энергонезависимую память (EEPROM) и никогда не повторяется. Здесь же размещена и подсистема взаимодействия с интерфейсом 1-Wire.

Блок MEMORY CONTROL LOGIC осуществляет взаимосвязь между командами интерфейса 1-Wire и внутренней памятью SCRATCHPAD. Данная память, в свою очередь, взаимодействует с несколькими специализированными регистрами DS18B20:

  • TEMPERATURE SENSOR позволяет считывать преобразованное значение температуры;
  • регистры ALARM HIGH TRIGGER и ALARM LOW TRIGGER позволяют выставить верхний и нижний пороги срабатывания сигналов тревоги при выходе температуры за указанные пределы;
  • CONFIGURATON REGISTER предназначен для настройки разрешающей способности датчика. Он может быть сконфигурирован на выполнение преобразования температуры с точностью 9, 10, 11 или 12 бит, что соответствует точности измерения 0,5°С, 0,25°С, 0,125°С и 0,0625°С;
  • регистр 8-BIT CRC GENERATOR предназначен для генерации контрольной суммы с целью повышения защиты данных.

Варианты исполнения

Кроме непосредственно микросхем в разных корпусах, на рынке также представлены выносные пробники и модули на базе DS18B20. Датчики выпускаются в трех вариантов корпусов: ТО-92, SO и uSOP. Их внешний вид и распиновка показаны на рисунке 2.

Рис. 2. Виды корпусов и распиновка DS18B20

Рис. 2. Виды корпусов и распиновка DS18B20

Для наружного применения производятся, например, такие варианты датчиков DS18B20, как Waterproof Temperature Sensor герметичного исполнения IR67 с кабельными сборками различной длины. В состав входит сенсор, выполненный в корпусе ТО-92, который помещен в металлическую гильзу, залитую компаундом. Гильзы выполняются в вариантах с круглым и прямоугольным сечениями, а также под винт.

Существует и вариант исполнения датчика DS18B20 в виде небольшой печатной платы размерами 27х13 мм с однорядным трехконтактным разъемом (рисунок 3). Модуль оснащен дополнительным шумоподавляющим фильтром в линии питания, предусмотрена внутренняя подтяжка цифрового выхода к высокому логическому уровню. На плате модуля c микросхемой DS18B20 расположены несколько контактов, обеспечивающих легкий доступ ко всем имеющимся линиям однопроводного интерфейса 1-Wire. Данную плату удобно использовать для быстрой диагностики на любом этапе прототипирования электронной схемы. Помимо этого, на плате имеется сквозное незаземленное отверстие диаметром 2,6 мм, предназначенное для надежного крепления модуля к каким-либо конструкциям или поверхностям.

Рис. 3. Датчик DS18D20 модульного исполнения

Рис. 3. Датчик DS18D20 модульного исполнения

Способы питания

Как уже было упомянуто выше, датчик может питаться двумя способами.

В режиме прямого питания напряжение подается на выводы Vdd и GND (рисунок 4). Очевидные преимущества этого метода заключаются в отсутствии необходимости в дополнительной элементной обвязке (кроме притягивающего резистора 4,7 К), а также в том, что во время преобразования шина остается свободной и может использоваться в других целях.

Рис. 4. Режим прямого питания датчика DS18B20

Рис. 4. Режим прямого питания датчика DS18B20

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

Рис. 5. Режим паразитного питания

Рис. 5. Режим паразитного питания

Однако когда DS18B20 выполняет операцию преобразования температуры или копирования данных памяти в EEPROM, потребляемый ток может достигать 1,5 мА. Он может вызвать снижение напряжения питания устройства до недопустимого значения. Тока подтягивающего резистора и энергии, запасенной на Cpp, недостаточно для питания в этих двух режимах. Чтобы гарантировать достаточное количество энергии для устройства, необходимо обеспечить мощную подтяжку шины к высокому уровню в то время, когда происходит преобразование температуры или копирование данных памяти в EEPROM. Это можно сделать с помощью MOSFET-транзистора (рисунок 4). Шина данных должна быть подключена к линии питания:

  • в течение 10 мкс после команд КОНВЕРТИРОВАНИЕ [44h] и КОПИРОВАНИЕ ПАМЯТИ [48h];
  • в течение времени преобразования (tconv) и передачи данных (не менее tWR = 10 мс).

Никаких других операций в это время на шине допускать нельзя.

Как правило, у современных микроконтроллеров выходного тока высокого уровня вполне достаточно для питания DS18B20. В этом случае в MOSFET-транзисторе необходимости нет. Использование паразитного питания настоятельно не рекомендуется при температуре более 100°C из-за большого тока утечки. Энергии, запасенной на Cpp, может не хватить для нормальной работы. При измерении такой температуры следует использовать внешнее питание.

DS18B20 передает данные по протоколу 1-Wire, который поддерживает множество микроконтроллеров различных брендов. Пример применения датчика с микроконтроллером LGT8F328 на платформе Arduino представлен на рисунке 6.

Рис. 6. Использование датчика DS18B20 с Arduino

Рис. 6. Использование датчика DS18B20 с Arduino

LCD1602 – дисплей, PWM – выход для управления исполнительным устройством, например, мощным реле, которое, в свою очередь, включает/выключает теплоэлектронагреватель. Для корректной работы регулятора на микроконтроллер нужно загрузить разработанную для данного случая программу (в Arduino – код), ознакомление с которой не входит в задачи данной статьи и будет рассмотрено в другом материале. Настройка уровней включения-выключения исполнительным устройством осуществляется посредством кнопок UP, DW и SET, а запись этих данных в энергонезависимую память происходит на уровне Arduino.

Пример использования датчика DS18B20 совместно с терморегулятором CH-1000, выполненным на базе микроконтроллера PIC16F628, приведен на рисунке 7.

Рис. 7. Терморегулятор СН-1000 с датчиком DS18B20 герметичного исполнения

Рис. 7. Терморегулятор СН-1000 с датчиком DS18B20 герметичного исполнения

Программа в регулятор уже загружена. Кнопки на плате прибора служат для входа в меню, где в настройках устанавливаются требуемые параметры включения исполнительного устройства. Цифровой датчик температуры DS18B20 может быть удален на расстояние до 300 м.

Сравнение параметров

Для проведения анализа характеристик датчиков DS18B20, выпускаемых различными производителями, изучим основные показатели, представленные в таблицах 1 и 2.

Таблица 1. Характеристики памяти EEPROM датчиков DS18B20 производства разных брендов

Бренд Время цикла записи Twr, мс Число записей NEEWR при -55…55°С, запись Хранение данных TEEDR при -55…55°С, год
Ном. Макс. Мин. Ном. Ном.
Американский производитель оригинального датчика 2 10 50000 10
UMW 2 10 1000 10
MSKSEMI 8* 12 1000 10
HXY 8 12 1000 10

Таблица 2. Электрические характеристики датчиков DS18B20

Компания Американский производитель оригинального датчика UMW MSKSEMI HXY
Параметр Мин. Макс. Мин. Макс. Мин. Макс. Мин. Макс.
Время преобразования tCONV, мс Разрешение 9 бит 93,75 50 50 50
10 бит 187,5 100 100 100
11 бит 375 200 200 200
12 бит 750 400 400 400
Время включения подтягивания TSPON (выдача команды «начать преобразование»), мкс 10 10 10 10
Время интервала tSLOT, мкс 60 120 60 120 60 120 60 120
Время восстановления tREC, мкс 1 1 1 1
Время записи низкого уровня TLOW0, мкс 60 120 60 120 60 120 60 120
Время записи высокого уровня TLOW1, мкс 1 15 1 15 1 15 1 15
Время считать данные недействительными TRDV, мкс 15 15 15 15
Время сброса высокого уровня TRSTH, мкс 480 480 480 480
Время сброса низкого уровня TRSTL, мкс 480 1000 1000 1000
Время обнаружения высокого уровня, мкс 15 60 15 60 15 60 15 60
Время обнаружения низкого уровня TPDHIGH, мкс 60 240 60 240 60 240 60 240
Емкость конденсатора CIN/OUT, мкс 25 25 25 25

* – цветом выделены различия в характеристиках датчиков DS18B20 выпускаемых компаниями UMW (Китай), MSKSEMI (Тайвань), HXY (Китай) по сравнению с американским производителем.

При проведении сравнения параметров DS18B20 производства западной и азиатских компаний становится очевидным, что между ними существует незначительная разница в скорости преобразования, а основным отличием является максимальное количество перезаписей в энергонезависимую память EEPROM, в которой хранятся настройки датчика. При выключении питания данные из оперативной памяти (SRAM) перегружаются в энергонезависимую память (EEPROM), при включении все происходит наоборот: данные из энергонезависимой перегружаются в оперативную память. У оригинального датчика количество перезаписей составляет 50000, у азиатских аналогов оно равно 1000. Может показаться, что здесь явное преимущество у изделия западного производства. Однако не будем забывать, что датчик установится в домашней автоматизации и будет всегда включен. Производить настройку по перезаписи конфигурации и уровня верхнего и нижнего тревожных сигналов ему не нужно (уровни активирования исполнительного устройства настраиваются программой контроллера управления), отключаться он будет только аварийно, значит, количество перезаписей будет составлять единицы в год. Таким образом, время службы памяти, а значит, и самого датчика DS18B20 производства компаний UMW, MSKSEMI и HXY растянется на десятки лет.

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

Ответить на интересующие вопросы, дать консультацию или помочь с подбором оптимальной модели, а также оформить заказ поможет ваш менеджер в КОМПЭЛ.

Дополнительные материалы

  1. UMW – качественные полупроводниковые компоненты из Китая для бытового и индустриального применения
  2. Novosense – новый поставщик датчиков, изоляторов и микросхем обработки сигналов
  3. Азиатские датчики температуры для промышленности, бытовых приборов и автомобильной электроники

 

•••

Наши информационные каналы

Товары
Наименование
DS18B20 (YOUTAI)
 

DS18b20 Waterproof temperature sensor (HKSHAN)
DS18B20U (YOUTAI)
 
DS18B20Z (YOUTAI)
 
NS18B20-QTOS (NOVOSENS)