Технология датчика температуры

Датчик температуры DS18B20, подключенный к MCU

Знания о датчике температуры DS18B20. Введение.
DS18B20 — широко используемый цифровой датчик температуры.. Он выводит цифровые сигналы, имеет характеристики небольшого размера, низкие аппаратные накладные расходы, сильная антиинтерференционная способность, высокая точность, и широко используется.

Цифровой датчик температуры DS18B20 обеспечивает 9 к 12 кусочек

Цифровой датчик температуры DS18B20 обеспечивает 9 к 12 кусочек

Водонепроницаемый сенсорный зонд DS18B20

Водонепроницаемый сенсорный зонд DS18B20

TPE Overmolding IP68 водонепроницаемый датчик DS18B20

TPE Overmolding IP68 водонепроницаемый датчик DS18B20

Знакомство с датчиком температуры DS18B20
Технические характеристики:
①. Уникальный режим однопроводного интерфейса. Когда DS18B20 подключен к микропроцессору, только 1 провод необходим для реализации двусторонней связи между микропроцессором и DS18B20.
②. Диапазон измерения температуры -55℃~+125℃, собственная погрешность измерения температуры 1 ℃.
③. Поддержать функцию многоточечной сети. Несколько DS18B20 можно подключить параллельно всего по трем проводам., и максимум 8 можно подключить параллельно для реализации многоточечного измерения температуры. Если число слишком велико, напряжение источника питания будет слишком низким, что приводит к нестабильной передаче сигнала.
④. Рабочий источник питания: 3.0~ 5,5 В/DC (можно использовать паразитный источник питания линии передачи данных).
⑤. Во время использования не требуются никакие периферийные компоненты..
⑥. Результаты измерений передаются последовательно в 9-12-битной цифровой форме..
⑦. Диаметр защитной трубки из нержавеющей стали составляет Φ6..
⑧. Подходит для измерения температуры различных средних промышленных трубопроводов диаметром DN15~25., DN40~DN250 и оборудование в узких пространствах.
⑨. Стандартная установочная резьба M10X1, М12Х1,5, G1/2” являются дополнительными.
⑩. Кабель ПВХ подключается напрямую или немецкая распределительная коробка шарового типа., что удобно для соединения с другим электрооборудованием.

DS18B20 чтение и запись времени и принцип измерения температуры:
Принцип измерения температуры DS18B20 показан на рисунке. 1. Частота колебаний кварцевого генератора с низким температурным коэффициентом на рисунке мало зависит от температуры., и используется для создания фиксированного частотного импульсного сигнала, который будет отправлен на счетчик 1. Частота колебаний кварцевого генератора с высоким температурным коэффициентом значительно меняется с температурой., и сгенерированный сигнал используется в качестве импульсного ввода счетчика 2. Прилавок 1 и регистр температуры предварительно настроены на базовое значение, соответствующее -55 ℃.. Прилавок 1 вычитает импульсный сигнал, генерируемый кварцевым генератором с низким температурным коэффициентом. Когда заданное значение счетчика 1 сводится к 0, значение регистра температуры увеличится на 1, и предустановка счетчика 1 будет перезагружен. Прилавок 1 перезапускается для подсчета импульсного сигнала, генерируемого кварцевым генератором с низким температурным коэффициентом, и цикл продолжается до тех пор, пока счетчик 2 имеет значение 0, остановка накопления значения регистра температуры. В это время, значение в регистре температуры — это измеренная температура. Аккумулятор наклона используется для компенсации и исправления нелинейности в процессе измерения температуры., и его выход используется для коррекции заданного значения счетчика. 1.

Фигура 1 заключается в следующем:

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

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

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

Определение параметров контакта DS18B20

Определение параметров контакта DS18B20

3. Определение контакта DS18B20:

ДК: Ввод/вывод данных. 1-проводной интерфейс с открытым стоком. Он также может обеспечивать питание устройства при использовании в режиме паразитного питания VDD.: положительный источник питания GND: Силовое заземление 4. Введение в внутренний анализ DS18B20:

Анализ и представление внутренней структуры DS18B20.

Анализ и представление внутренней структуры DS18B20.

На рисунке выше показана блок-схема DS18B20., а 64-битное ПЗУ хранит уникальный серийный код устройства.. Буферная память содержит 2 байты регистров температуры, хранящие цифровой выходной сигнал датчика температуры. Кроме того, Буферная память обеспечивает доступ к 1-байтовым верхним и нижним регистрам срабатывания сигнализации. (ТХ и ТЛ) и 1-байтовые регистры конфигурации. Регистр конфигурации позволяет пользователю установить разрешение цифрового преобразования температуры в 9, 10, 11, или 12 биты. Тур, ТЛ, и регистры конфигурации энергонезависимы. (ЭСППЗУ), поэтому они сохранят данные, когда устройство выключено. DS18B20 использует уникальный протокол однопроводной шины Maxim., который использует управляющий сигнал. Для линии управления требуется слабый подтягивающий резистор, поскольку все устройства подключаются к шине через порт с тремя состояниями или порт с открытым стоком. (Вывод DQ в случае DS18B20). В этой шинной системе микропроцессор (владелец) использует уникальный 64-битный код для каждого устройства. Потому что каждое устройство имеет уникальный код, количество устройств, к которым можно обратиться на одной шине, практически не ограничено.

Формат регистра температуры

Схема формата регистра температуры DS18B20

Схема формата регистра температуры DS18B20

Соотношение температура/данные

DS18B20 Связь температуры и данных

DS18B20 Связь температуры и данных

Сигнал тревоги при работе

После того, как DS18B20 выполнит преобразование температуры, он сравнивает значение температуры с заданным пользователем значением срабатывания сигнализации с дополнением до двух, хранящимся в 1-байтовых регистрах TH и TL.. Знаковый бит указывает, является ли значение положительным или отрицательным.: положительный S=0, отрицательный S=1. Регистры TH и TL энергонезависимы. (ЭСППЗУ) и, следовательно, не энергозависимы, когда устройство выключено.. Доступ к TH и TL можно получить через байты. 2 и 3 памяти.
Формат регистров TH и TL:

Регистры конфигурации DS18B20

Регистры конфигурации DS18B20

Принципиальная схема питания DS18B20 от внешнего источника питания

Принципиальная схема использования внешнего источника питания для питания DS18B20

Принципиальная схема использования внешнего источника питания для питания DS18B20

64-битовый лазерный код постоянной памяти:

DS18B20 64-битный код лазерной постоянной памяти

DS18B20 64-битный код лазерной постоянной памяти

Каждый DS18B20 содержит уникальный 64-битный код, хранящийся в ПЗУ.. Наименее значимый 8 биты кода ПЗУ содержат код однопроводного семейства DS18B20: 28час. Следующий 48 биты содержат уникальный серийный номер. Самый значительный 8 биты содержат проверку циклическим избыточным кодом (КПР) байт, который рассчитывается от первого 56 биты кода ПЗУ.

Карта памяти DS18B20

Карта памяти DS18B20

Карта памяти DS18B20

Регистр конфигурации:

Фигура 2

Регистры конфигурации DS18B20

Регистры конфигурации DS18B20

Байт 4 памяти содержит регистр конфигурации, который организован, как показано на рисунке 2. Пользователь может установить разрешение преобразования DS18B20, используя биты R0 и R1, как показано в таблице. 2. Значения по умолчанию для этих битов при включении питания: R0 = 1 и R1 = 1 (12-битовое разрешение). Обратите внимание, что существует прямая зависимость между разрешением и временем преобразования.. Кусочек 7 и биты 0 к 4 в регистре конфигурации зарезервированы для внутреннего использования устройства и не могут быть перезаписаны..

Стол 2 Конфигурация разрешения термометра

Конфигурация разрешения термометра DS18B20

Конфигурация разрешения термометра DS18B20

Генерация CRC

Байт CRC является частью 64-битного кода ПЗУ DS18B20 и находится в 9-м байте блокнота.. CRC кода ПЗУ рассчитывается из первого 56 бит кода ПЗУ и содержится в старшем байте ПЗУ. CRC блокнота рассчитывается на основе данных, хранящихся в блокноте., поэтому он меняется, когда данные в блокноте меняются. CRC предоставляет хосту шины метод проверки данных при чтении данных из DS18B20.. После проверки правильности считывания данных, мастер шины должен пересчитать CRC на основе полученных данных, а затем сравнить это значение с CRC кода ПЗУ. (для чтения ПЗУ) или блокнот CRC (для чтения блокнота). Если вычисленный CRC соответствует считанному CRC, данные были получены правильно. Решение сравнить значения CRC и продолжить — полностью на усмотрение мастера шины.. Внутри DS18B20 нет схемы, которая предотвратила бы выполнение последовательности команд, если:
ЦИК DS18B20 (ПЗУ или блокнот) не соответствует значению, сгенерированному мастером шины.
Эквивалентная полиномиальная функция для CRC::
ЦИК = Х8 + Х5 + х4 + 1
Мастер шины может пересчитать CRC и сравнить его со значением CRC DS18B20, выполнив следующие действия::
Полиномиальный генератор показан на рисунке. 3. Схема включает сдвиговый регистр и вентили Ихуо., и биты сдвигового регистра инициализируются 0. Младший бит кода ПЗУ или младший бит байта. 0 в блокноте следует по одному сдвигать в регистр сдвига. После смещения бита 56 из ПЗУ или старшего бита байта 7 из блокнота, генератор полинома будет содержать пересчитанный CRC. Следующий, 8-битный код ПЗУ или сигнал CRC в блокноте DS18B20 необходимо сместить в схему. В этот момент, если пересчитанный CRC верен, сдвиговый регистр будет состоять из 0.

Фигура 3: CRC-генератор

Схема процесса генератора CRC DS18B20

Схема процесса генератора CRC DS18B20

В. Доступ к DS18B20:
Последовательность доступа к DS18B20 следующая.:
Шаг 1. Инициализация;

Шаг 2. команда ПЗУ (с последующим любым необходимым обменом данными);

Шаг 3. Функциональная команда DS18B20 (с последующим любым необходимым обменом данными);

Примечание: Эта последовательность выполняется каждый раз при обращении к DS18B20., поскольку DS18B20 не будет реагировать, если какой-либо шаг в последовательности пропущен или не по порядку. Исключением из этого правила является Search ROM. [F0h] и поиск сигналов тревоги [Эх] команды. После выдачи этих двух команд ПЗУ, ведущий должен вернуться на шаг 1 последовательно.
(Приведенное выше введение переведено из официального руководства.)

Команда ПЗУ
1, Чтение ПЗУ [33час]
2, Матч ПЗУ [55час]
3, Пропустить ПЗУ [КЧ]
4, Поиск сигналов тревоги [Эх]

DS18B20 Функциональная команда
1, Преобразование температуры [44час]
2, Написать блокнот (Память) [4Эх]
3, Читать блокнот (Память) [БЭ]
4, Копировать блокнот (Память [48час]
5, Повторное пробуждение E2 [Б8ч]
6, Чтение мощности [Б4ч]

(Подробное описание приведенных выше команд, см. официальное руководство)

VI. Доступ к синхронизации DS18B20
В процессе инициализации, мастер шины посылает импульс сброса (Техас) низкий уровень в течение не менее 480 мкс, отключив шину 1-Wire. Затем, мастер шины освобождает шину и переходит в режим приема (прием). После выпуска автобуса, Подтягивающий резистор сопротивлением 5 кОм поднимает шину 1-Wire на высокий уровень.. Когда DS18B20 обнаруживает этот нарастающий фронт, он ждет от 15 до 60 мкс, а затем отправляет импульс присутствия, переводя шину 1-Wire в низкий уровень на 60–240 мкс..

Время инициализации:

Существует два типа временных интервалов записи.: “Напишите 1” временные интервалы и “Напишите 0” временные интервалы. Автобус использует запись 1 временной интервал для написания логики 1 к DS18B20 и записи 0 временной интервал для написания логики 0 к DS18B20. Все временные интервалы записи должны иметь продолжительность не менее 60 мкс со временем восстановления не менее 1 мкс между отдельными временными интервалами записи.. Оба типа временных интервалов записи инициируются ведущим устройством, которое устанавливает низкий уровень на шине 1-Wire. (см. рисунок 14). Чтобы создать запись 1 временной интервал, после понижения уровня на шине 1-Wire, мастер шины должен освободить шину 1-Wire в течение 15 мкс.. После выпуска автобуса, подтягивающий резистор 5 кОм поднимает шину на высокий уровень. Создать
Писать 0 временной интервал, после установления низкого уровня на линии 1-Wire, мастер шины должен продолжать удерживать шину на низком уровне в течение временного интервала (не менее 60 мкс). DS18B20 осуществляет выборку шины 1-Wire в окне от 15 до 60 мкс после того, как ведущее устройство инициирует временной интервал записи.. Если на шине высокий уровень во время окна выборки, а 1 записано в DS18B20. Если линия низкая, а 0 записано в DS18B20.
Примечание: Временной интервал — это часть последовательного самомультиплексирования информации временного интервала, выделенная для одного канала..
Фигура 14 заключается в следующем:

Временные интервалы записи DS18B20 управляются хостом для перевода шины 1-Wire на низкий уровень.

Временные интервалы записи DS18B20 управляются хостом для перевода шины 1-Wire на низкий уровень.

Чтение временного интервала:
DS18B20 может отправлять данные на хост только тогда, когда хост выдает временной интервал чтения.. Поэтому, хост должен сгенерировать временной интервал чтения сразу после выдачи команды чтения памяти. [БЭ] или источник питания для чтения [Б4ч] команда для того, чтобы DS18B20 предоставил необходимые данные. Альтернативно, хост может сгенерировать временной интервал чтения после выдачи Convert T [44час] или вспомните E2 [Б8ч] команда узнать статус. Все временные интервалы чтения должны иметь продолжительность не менее 60 мкс с минимальным временем восстановления 1 мкс между временными интервалами.. Временной интервал чтения инициируется тем, что мастер устанавливает низкий уровень на шине 1-Wire, чтобы удерживать ее на низком уровне в течение как минимум 1 мкс, а затем отпускает шину. (см. рисунок 14). После того, как мастер инициирует временной интервал чтения, DS18B20 начнет отправлять по шине либо 1, либо 0.. DS18B20 отправляет 1 удерживая автобус высоко и отправляя 0 опустив автобус низко. Когда 0 отправляется, DS18B20 освобождает шину, удерживая ее на высоком уровне.. Временной интервал заканчивается, и шина возвращается в состояние высокого уровня ожидания с помощью подтягивающего резистора..

Подробное чтение хоста DS18B20 1 Временной интервал

Подробное чтение хоста DS18B20 1 Временной интервал

DS18B20 Рекомендуемый хост прочитать 1 временной интервал

DS18B20 Рекомендуемый хост прочитать 1 временной интервал