Содержание
DS18B20 — это цифровой датчик, который применяется для измерения температуры (диапазон -55 °C до 125 °C), а также обладает программируемой уникальной точностью (до 12 бит).
Данное устройство способно контролировать и регулировать степень нагретости какого-либо материала, вещества и т.п. в технологическом процессе, обеспечивая тем самым его безопасность.
Датчик DS18B20: схема построения
Прибор DS18B20 имеет сразу 3 ключевых корпуса:
- Сторона ТО-92;
- Стенка SO-150mil;
- Корпус uSOP.
Если говорить о внутренней структуре, то следует рассмотреть небольшую микросхему, которая представлена на рисунке:
Данная микросхема свидетельствует о наличии сразу нескольких ключевых модульных блоков в строении DS18B20, отвечающих за механизм правильного действия устройства.
Итак, начать стоит с блока «POWER SUPPLY SENSE» он обеспечивает полное питание для функционирования всей системы. Помощником «POWER SUPPLY SENSE» является юнфер «PARASIT POWER CIRCUIT», способный ,в случае необходимости, взять на себя функцию распорядителя питания.
К еще одному ключевому элементу в структуре термодатчика следует отнести «64-BITROM AND 1-WIREPORT». Это модуль структуры, отвечающий за хранение уникального кода устройства и передачу этого кода во внутреннюю память DS18B20 «SCRATCHPAD». «SCRATCHPAD», в свою очередь, взаимодействуя с регистрами «MEMORY CONTROL LOGIC» и «1-Wire», подает сигнал связи следующим принципиально-важным блокам датчика:
- «TEMPERATURE SENSOR»(система, предназначенная для считывания преобразованных показателей температур);
- «CONFIGURATON REGISTER»(структура, отвечающая за настройку уникальной программируемой точности, которая варьируется от 9 бит до 12 или, если рассматривать градусы Цельсия, от 0.5 °C до 0.0625 °C.);
- «8-BIT CRC GENERATOR»(система, предназначенная сугубо для защитной функции);
- «ALARM HIGH TRIGGER» (блок, ограничивающий нижние пределы температуры DS18B20);
- «ALARM LOW TRIGGER» (система, ограничивающая верхние пределы температуры DS18B20).
Подключение датчика DS18B20
Подключение датчика DS18B20, как правило, происходит двумя-тремя простыми способами. Мы рассмотрим эти способы на примере подключений DS18B20 к плате Arduino и esp8266.
Подключение датчика DS18B20 к Arduino
Начнем с прямого подключения единичного датчика к Arduino:
Для начала необходимо прикрепить устройство непосредственно к плате Arduino: поэтому подаем «5V» к выводу «Vdd» устройства. Таким же способом связываем друг с другом выводной «GND». Затем срединный датчик DS18B20 фиксируем на каком-либо выходном регистре (по желанию). Допустим, это будет регистр «D2».
Подключение вывода данных «DQ» необходимо производить только после того, как вы записали номерной код Arduino на скетч. Кроме того, очень важным аспектом, о котором необходимо сказать, является присутствие номинального резистора «4,7k», который располагается между линиями устройства и блоками питания. Отметим, что данный резистор предназначен для обеспечения полного функционирования (то есть без сбоев) линий термодатчика.
Теперь перейдем к рассмотрению подключения несколькими датчиками DS18B20 к плате Arduino:
Мы возьмем в пример ситуацию с 5-ю датчиками DS18B20. Итак, как мы видим, все 5 датчиков в шине подсоединены параллельным образом, при этом, они стягиваются номинальным резистором «4,7k». Таким образом, действие платы Arduino будет определяться уникальным и точным кодом каждого из этих 5-ти датчиков.
Пришла очередь третьего способа подключения DS18B20 к плате Arduino при помощи паразитного питания:
В данном случае очевидно, что датчик/датчики принимает/принимают импульс линейных данных датчика, которые расположены между блоками «Vdd» и «GNG». А существенную роль и здесь играет все тот же номинальный резистор «4,7k», который не только стягивает линейные данные датчика, но и обеспечивает функционирование всей “буферной” системы и конструкции.
Подключение датчика DS18B20 к esp8266
Теперь перейдем к обсуждению подключения датчика DS18B20 к esp8266. Начнем, пожалуй, с прямого подключения:
Резистор 1 (R1) определяет сопротивление не более 2,2-х КОм. При наличии такого резистора, срединный вывод “DATA” прикрепляется к кабельному блоку, либо «GND», либо «VCC», а также соединяется с центральной трубкой, что и обеспечивает качественное: прочное, герметичное подключение.
Наконец, поговорим о последнем способе подключения датчика DS18B20 к esp8266:
Данный способ осуществляется с помощью номинального резистора «4,7k», который подтягивает всю систему к питанию, и с помощью трех контактов вывода датчика DS18B20, обеспечивающих, в свою очередь, подключение линий «DQ» к срединному «DATA».
Характеристики датчика DS18B20
Температурный датчик DS18B20 имеет множество особенностей не только в своей конструкции, но и в своей эксплуатации. Вот главные из них:
- Измеритель DS18B20 питается напряжением, величина которого варьируется от 3-х Вольт до 5,5 Вольт;
- Термодатчик DS18B20 способен измерять значения температур в диапазоне от -55 °C до 125 °C;
- Пропускная способность датчика DS18B20 доходит до отметки 12 бит;
- Величина погрешности прибора DS18B20 составляет (+,- ) 0,5 ° C;
- Медленное перемещение измерителя DS18B20 относительно любого устройства не превышает единицы.
Взаимосвязь между разрешением датчика DS18B20 и температурой
На самом деле, рассмотреть взаимосвязь между разрешением прибора DS18B20 и температурой можно с помощью следующей картинки:
Однако, предлагаю сделать это более детально.
Начнем с девяти-битного разрешения. При этой величине температура может принимать следующие значения:
- 0.00 °C;
- 0.50 °C.
Таким образом, при разрешении 9 бит можно сделать 10.5 измерений/сек для вышеназванных температурных величин.
При расширении 10 бит температура принимать такие величины:
- 0.00 °C;
- 0.25 °C;
- 0.50 °C;
- 0.75 °C;
Можно сделать вывод, что при разрешении 10 бит можно сделать 5.3 измерений/сек для вышеназванных температурных величин.
При разрешении 11 бит температура имеет возможность принять следующий вид:
- 1) 0.00 °C;
- 2) 0.125 °C;
- 3) 0.25 °C;
- 4) 0.375 °C;
- 5) 0.50 °C;
- 6) 0.625 °C;
- 7) 0.75 °C;
- 8) 0.875 °C.
Таким образом, при разрешении 11 бит можно сделать 2.6 измерений/сек для вышеназванных температурных величин.
При разрешении 12 бит температура может принимать следующие значения:
- 1) 0,00 °C;
- 2) 0,0625 °C;
- 3) 0,125 °C;
- 4) 0,1875 °C;
- 5) 0,25 °C;
- 6) 0,3125 °C;
- 7) 0,375 °C;
- 8) 0,4375 °C;
- 9) 0,50 °C;
- 10) 0,5625 °C;
- 11) 0,625 °C;
- 12) 0,6875 °C;
- 13) 0,75 °C;
- 14) 0,8125 °C;
- 15) 0,875 °C;
- 0,9375 °C.
Это говорит о том, что при расширении 12 бит можно сделать 1.3 измерений/сек для вышеназванных температурных величин.
Основные функциональные способности датчика DS18B20
Термодатчик DS18B20 имеет в своем функционале сразу несколько важнейших команд:
- Навык преобразования температур. (Данная способность может поместить температуру в двух-байтный блок оперативной памяти, после чего датчик переходит в состояние низкого потребления. В этом состоянии DS18B20 считывает код данных и определяет режим состояния процесса);
- Команда записи памяти. (Она дает возможность сохранить три байта данных в оперативной памяти DS18B20. При это, следует уточнить, что ведущий прибор перебрасывает информацию с наименьшего бита);
- Способность чтения памяти. (Применяется для прочтения оперативной памяти памяти прибора. Сброс данных осуществляется с самых наименьших битов или байтов, при этом, в случае необходимости, эта команда способна прекратить сброс данных);
- Команда копирования памяти. (Она помогает скопировать все данные внутренней памяти устройства в блок EEPROM, что приводит к осуществлению в дальнейшем питательной способности системы);
- Способность перезагрузки EEPROM. (Дает возможность регистрам передохнуть, перезагружая все значения на блоках. Кроме того, только после перезагрузки DS18B20 происходит процесс прочтения оперативной памяти памяти прибора и сообщается о ее состоянии).
Где можно купить датчик DS18B20?
Термодатчик DS18B20 является достаточно востребованным устройством в наше время. Если вы думаете, что найти его будет сложно, а цена вас испугает, то вы сильно ошибаетесь. Я советую вам приобрести данный прибор на Aliexpress. Там вы найдете DS18B20 и его аналоги по смешной цене, получите быструю, а самое главное качественную доставку.
Если в статье Вы не всё поняли про этот датчик, рекомендую посмотреть видео: