Ваш датчик температуры DS18B20, скорее всего, является подделкой, подделкой, клоном...
...если только вы не купили чипы непосредственно у Analog Devices (или Maxim Integrated до того, как Analog Devices приобрела их, или у Dallas Semiconductor в прежние времена), у авторизованного дистрибьютора (DigiKey, RS, Farnell, Mouser и т. д.) или у крупного производителя. розничном продавце, или вы проявили исключительную осторожность при покупке водонепроницаемых датчиков DS18B20. В 2019 году мы купили более 1000 «водонепроницаемых» датчиков или голых чипов у более чем 70 различных поставщиков на ebay, AliExpress и в интернет-магазинах — больших и малых — в 2019 году. Все датчики, купленные на ebay и AliExpress, содержали поддельные датчики DS18B20, и почти все датчики, купленные на этих двух сайтах, оказались поддельными.
Автор: Крис Петрич, 11 ноября 2024 г. Лицензия: CC BY. Источник: https://github.com/cpetrich/counterfeit_DS18B20/
(Информация о датчиках, основанная на датчиках или зондах, заказанных значительно позже 2019 года, либо указывается как таковая, либо помечается годом добавления, например « (2020) »).
TLDR; Откуда мне знать?
Если ПЗУ не соответствует шаблону 28-xx-xx-xx-xx-00-00-xx, то датчик DS18B20 является клоном [5].
Однако шаблон ПЗУ не является достаточным критерием подлинности. Показательный пример: если шаблон имеет вид 28-xx-xx-xx-00-00-00-xx и топовая метка указывает на кристалл C4
, то датчик является клоном, поскольку этот шаблон ПЗУ предшествует кристаллу C4
, ср. Обсуждение 42. (2024)
Для тестирования датчиков DS18B20 предоставлен эскиз Arduino:
-
discover-classify_fake_DS18B20.ino
— это эскиз, управляемый через меню, который выполняет безвредные тесты, определяющие, показывает ли датчик отклонения от Dallas/Maxim/Analog DS18B20. При желании он может попытаться сопоставить датчик с конкретным семейством (см. ниже), в основном на основе реакции на недокументированные коды функций (используйте эту функцию на свой страх и риск). Эскиз не предназначен для работы с паразитной силой. (По состоянию на 10 ноября 2024 г. два эскиза discover_fake_DS18B20.ino
и classify_fake_DS18B20.ino
из 2019 г. удалены, поскольку они устарели.)
Номенклатура: ПЗУ 28-AA-BB-CC-DD-EE-FF-0C будет записываться как 28-FFEEDDCCBBAA в 1-проводной подсистеме Linux.
Обзор по состоянию на 2024 г.
Существует оригинальный/аутентичный DS18B20 (семейство A1), который выдержал испытание временем, а также есть клоны, которые либо изначально созданы для того, чтобы выглядеть аутентичными, либо разработаны с инновационными или, по крайней мере, полезными функциями.
В первой группе у нас есть семейства A2 (устаревшие) и A3 (недавнее добавление), которые, судя по всему, были разработаны для выхода на рынок в качестве подделок с целью обмануть покупателя. Семейство A3 копирует все аспекты оригиналов, которые были протестированы в эскизах Arduino 2019 года в этом репозитории, в дополнение к сопоставлению данных на графике «Данные температуры», то есть смещения температуры при 0 °C и времени преобразования (которое, кстати, один из самых медленных из всех клонов). Однако, в отличие от семейства A2 (которое предшествует этому репозиторию), они остановились на этом в своих попытках воспроизвести оригинал (отличительная черта студенческого проекта...). Хотя мне лестно видеть, что кто-то действительно разработал и производит микрочипы по моим спецификациям, я считаю это пустой тратой навыков разработчика и развития технологий. Также в первую группу входит семейство B1v2, которое представляет собой недавний вариант семейства B1, в котором удалена 2-байтовая пользовательская память, чтобы сделать его более похожим на настоящий DS18B20: несколько печальный ход развития; Семейство G, насколько я могу судить, не добавляет ничего существенного, но вносит странности, которые либо забавны (см. байт 6), либо приводят к сбою системы в режиме паразитного питания (например, понижение уровня линии передачи данных(! )); и Семья H, которая немного похожа на семью G, но без особенностей. Конечно, семейства G и H выполняют 12-битное преобразование температуры в два раза быстрее, чем настоящий DS18B20, так что, возможно, они заслуживают за это похвалы.
Вторая группа клонов — светлая сторона. Мы видим это
- GXCAS (семейство B1, за исключением B1v2), 7Q-Tek (семейство B2), Mysentech (семейство D) и Novosense (семейство E) добавили к своим клонам 2 или 3 байта пользовательской памяти (семейство E имеет специальные функциональные коды для чтения, записать и сохранить их в EEPROM),
- Семейство C, Mysentech (семейство D1) и Xinbole (семейство F) представили клоны, которые выполняют 12-битное преобразование температуры менее чем за 30 мс, т.е. 5% от гарантированного времени преобразования подлинного DS18B20 (конечно, семейство D1 имеет плохие температурные характеристики). ),
- Xinbole (семейство F) имеет расширенный температурный режим, позволяющий измерять температуру до 150 °C.
- Mysentech (семейство D2) может переходить в 14-битный режим с разрешением 0,016 °C.
Я очень ценю скрытые сокровища в некоторых чипах и усилия инженеров, стоящих за ними. Однако ничто из этого не должно восприниматься как одобрение, поскольку я не проверял, соответствуют ли датчики спецификациям в их соответствующих таблицах данных , не говоря уже о спецификациях в таблице данных Maxim/Analog.
Почему меня это должно волновать?
Помимо этических соображений, некоторые из поддельных датчиков на самом деле не работают в режиме паразитного питания, имеют высокий уровень шума, температурный сдвиг за пределами заявленного диапазона ±0,5 °C, не содержат EEPROM, имеют ошибки и неуказанную частоту отказов или отличаются от других. другим неизвестным способом, судя по спецификациям в даташите Максима. Очевидно, что проблемы не настолько велики, чтобы отговорить людей покупать датчики на eBay, но может быть полезно знать фактические характеристики, когда данные важны или условия измерения сложны.
С чем мы имеем дело?
Определения различаются, но, согласно AIR6273, подделка — это несанкционированная копия, имитация, замена или модификация, неверно представленная как конкретный подлинный товар от авторизованного производителя [13]. По состоянию на 2019 год основная проблема — это имитации ( клоны ), маркировка которых призвана ввести в заблуждение ничего не подозревающего покупателя. К счастью, клоны DS18B20 идентифицировать почти тривиально легко: маркировка на чипе напечатана, а не нанесена лазером? Нет отметки на заднем отступе? Наверное, контрафакт. Содержимое «блокнота» не соответствует паспорту? Вероятно, подделка. Поведение систематически отличается от известных аутентичных чипов? Вероятно, подделка.
Как они выглядят?
Выше приведен пример оригинального датчика DS18B20 производства Maxim в корпусе ТО-92.
- На момент написания статьи (2019 г.) верхняя отметка оригинальных чипов Maxim наносится лазером, а не печатается.
- Первые две строки,
DALLAS 18B20
, указывают, что эта деталь представляет собой DS18B20 (первоначальным производителем является компания Dallas Semiconductor), паразитные чипы только для питания имеют маркировку DALLAS 18B20P
. - Знак
+
в 4-й строке означает, что деталь соответствует требованиям RoHS ([1]). - В 3-й строке указан год производства и номер недели года (в данном случае 32-я неделя 2019 г.), а
- последние два символа в строке 3 указывают ревизию матрицы (в настоящее время
C4
). - В строке 4 трехзначное число, за которым следуют два символа, представляет собой форму кода партии, позволяющую Максиму отслеживать историю производства.
- В чипах выпуска 2016 года и позже я встречал только комбинации символов
AB
и AC
[5].
- Маркировка внутри углубления на задней стороне корпуса
-
P
(Филиппины?) на всех чипах с 2016 по 2019 год, на большинстве чипов 2020 года (2020 года) и на большинстве (?) чипов, начиная с 2009 года [5]. -
THAI <letter>
(Таиланд?), где <letter>
— одно из I
, J
, K
, L
, M
, N
, O
, S
, T
, U
, V
, W
, X
и, возможно, других, по крайней мере, на некоторых производимых чипах. в 2011 году [5]. В <letter>
используется шрифт, отличный от букв, составляющих THAI
. - возможно дополнительная маркировка или отсутствие маркировки на некоторых чипах с 2020 года (см. Выпуск 21, Выпуск 22) (2020 г.)
- Судя по тому, что я видел на упаковке ТО-92, существует ровно один код партии, связанный с кодом даты для чипов, отмеченных
P
в отступе [5]. Это не относится к чипам с пометкой THAI
в отступе [5].
Во избежание путаницы: соответствующий номер детали Maxim для исследуемых здесь микросхем — DS18B20+
, т.е. корпус TO-92 и соответствует требованиям RoHS. Не все, сказанное на этой странице, применимо к варианту DS18B20+PAR
с паразитным питанием (я не могу сказать наверняка, так как просмотрел лишь несколько из них). Для краткости чипы обозначаются как DS18B20
, как написано в даташите [1].
Как мне узнать, затронут ли я?
Если DS18B20 был куплен у авторизованных дилеров через контролируемую цепочку поставок и помечен как произведенный Maxim или Analog Devices, то чипы являются законными.
В противном случае (I) можно проверить соответствие даташиту. (На самом деле так и должно быть, поскольку даже подлинные детали могут быть неправильно использованы в несанкционированной цепочке распространения. Но это еще одна проблема.) Если датчик не проходит ни один из этих тестов, это подделка (если только реализация Maxim не содержит ошибок [4]). (II) поведение датчика можно сравнить с поведением DS18B20 производства Maxim. Эти тесты основаны на предположении, что все DS18B20 производства Maxim ведут себя одинаково. Это должно быть справедливо, по крайней мере, для датчиков, имеющих общий код кристалла (который был C4
по крайней мере, с 2009 года [5]) [5].
Что касается (I), несоответствие между тем, что указано в текущей спецификации, и тем, что включают в себя датчики [1,5]
- Семейство B: зарезервированные байты в блокноте могут быть перезаписаны (следуя инструкциям в таблице данных)
- Семейство C: датчик фиксирован в 12-битном режиме (т.е. байт 4 регистра блокнота всегда равен
0x7f
) - Семейство C: количество циклов записи EEPROM очень мало (порядка 10, а не> 50 тыс.)
- Семейство B1, D1: ПЗУ можно изменить программно, т.е. оно не подвергается лазерной обработке.
- Семейство A2, B2, D1: значительное количество датчиков со смещением вне диапазона ±0,5 C при 0 °C.
- Семейство D: датчик не реагирует в паразитном режиме (применимо к большинству датчиков семейства D)
- Семья D: показания температуры сразу после включения питания составляют 25, а не 85 °C.
- Семейство D: датчик не выполняет преобразование температуры с низким разрешением быстрее.
- Семейство D: зарезервированные байты 5 и 7 регистра блокнота не равны
0xff
и 0x10
соответственно. - Семейство D1: сохраняет измерения температуры во время циклов включения и выключения питания
- Семейство E: имеет собственный блокнот.
- Семейство F: невозможно опросить завершение преобразования температуры
- Семья F: может измерять температуру до 150 °C (вместо 125 °C).
- Семейство A3: опрос на завершение работы по преобразованию температуры происходит только после некоторой задержки.
Следовательно, по состоянию на 2019 год каждый доступный поддельный датчик не соответствовал техническим характеристикам хотя бы в одном отношении. (По состоянию на 2024 год этого нельзя сказать о семьях G или H.)
Что касается (II), то есть один до смешного простой тест на различия с датчиками DS18B20 производства Maxim, который не проходит большинство поддельных датчиков [5]:
- Это подделка, если адрес его ПЗУ не соответствует шаблону 28-xx-xx-xx-xx-00-00-xx [5]. (ПЗУ представляет собой, по сути, 48-битный счетчик, в котором старшие биты по-прежнему равны 0 [5].) Только семейство A3 пытается нарушить это правило, но с 2024 года они переусердствуют. Кроме того, за исключением редких семейств A2 и семейств A3, B1v2 и H, ни один из клонов не установил правильно зарезервированный байт 6 в регистре блокнота. Только клоны семейства A2 и A3 правильно реагируют на недокументированные коды функций, касающиеся значений триммера.
Помимо очевидных различий в реализации, таких как перечисленные выше в разделах (I) и (II), существуют также данные побочного канала, которые можно использовать для разделения реализаций. Например, время, сообщаемое для 12-битного температурного преобразования (определяемого опросом завершения после функционального кода 0x44 при комнатной температуре), характерно для отдельных микросхем (воспроизводимость намного лучше, чем 1% при постоянной температуре) и попадает в определенные диапазоны. определяется внутренним устройством схемы [5]:
- 11 мс: Семья D1
- 21–23 мс: Семья Е (2024 г.)
- 28–30 мс: Семья C
- 226–320 мс: Семья G (2024 г.)
- 325–505 мс: семейство A2
- 460–525 мс: семейство D2
- 580–615 мс: семейство A1
- 577–626 мс: Семья А3 (2024 г.)
- 585–730 мс: семейство B
Следовательно, между семействами A1, A3 и B могут быть некоторые пограничные случаи, но простого измерения времени, используемого для преобразования температуры, часто бывает достаточно, чтобы определить, является ли датчик поддельным.
Важным аспектом работы является способность датчика подтягивать линию данных к низкому уровню фиксированного подтягивающего резистора. Оказывается, это сильно различается в разных семьях. Техническое описание гарантирует, что датчик способен потреблять ток не менее 4 мА при напряжении 0,4 В при любой температуре до 125 °C [1]. При токе 4 мА (подтягивающий резистор 1,2 кОм против 5 В) датчики при комнатной температуре достигали следующих low
напряжений (обратите внимание, что на одно семейство измерялось только от 5 до 10 датчиков):
- Семейство A1: 0,058–0,062 В
- Семейство B2: 0,068–0,112 В (все датчики, кроме одного: 0,068–0,075 В)
- Семья C: 0,036–0,040 В
- Семейство D2: 0,121–0,124 В
Все датчики находятся в пределах технических характеристик при комнатной температуре, но очевидна кластеризация данных по семействам, что указывает на то, что оборудование было разработано независимо. Было бы интересно повторить эти измерения при температуре выше 100 °C.
Альтернативно,
- Подделкой считается, если комбинация даты и партии, напечатанная на корпусе датчика, отсутствует в базе данных Maxim (чтобы это выяснить, необходимо обратиться в техподдержку Maxim). (Обратите внимание, что существуют подделки, в которых используется «аутентичная» комбинация даты и партии, поэтому, возможно, забудьте об этой опции.)
Обратите внимание, что ни один из приведенных выше пунктов не дает уверенности в том, что конкретный DS18B20 является подлинным продуктом Maxim, но если какой-либо из приведенных выше тестов указывает на «подделку», то это, скорее всего, клон [5].
Какие семейства чипов типа DS18B20 можно ожидать встретить?
Помимо DS18B20, первоначально производимого Dallas Semiconductor и продолженного Maxim Integrated после покупки Dallas (семейство A1, ниже), существуют клоны TO-92, произведенные независимо как минимум пятью другими компаниями по состоянию на 2019 год (семейства B1, B2, C, Г, Д) [5]. Разделение на семейства основано на закономерностях в недокументированных функциональных кодах, на которые реагируют чипы, поскольку сходство на этом уровне вряд ли может быть случайным [5]. Чипы семейства B1, судя по всему, производятся GXCAS, а калибруются и продаются независимо GXCAS и UMW. Чипы семейства B2 производятся компанией Beijing 7Q Technology (7Q-Tek). И UMW, и 7Q-Tek имеют соответствующие таблицы данных на своих веб-страницах. Семья D1, кажется, исчезает из поля зрения, ее заменила семья D2. Чипы семейства A2 были редкой находкой, они удивительно похожи по поведению на настоящие чипы, но имеют плохую температурную точность. Чипы семейства E добавлены на эту страницу в 2022 году, а семейства F, G, H, A3 и B1v2 были добавлены в 2024 году.
В наших закупках на eBay в 2018–2019 г. водонепроницаемых датчиков DS18B20 из Китая, Германии и Великобритании большинство партий имели датчики семейства B1, а каждая третья покупка имела датчики семейства D. Ни в одной из партий не было датчиков семейства A1 или C. Ни один из них не имел датчиков семейства A1 или C. происхождение и цена не были индикаторами семейства датчиков. При покупке микросхем DS18B20 в корпусе ТО-92 явно доминировало семейство D2, второе место занимало семейство B2, а вероятность получения чипов семейств A1 или C была небольшой.
В приведенных ниже шаблонах ПЗУ tt и ss обозначают быстроизменяющиеся и медленно меняющиеся значения в рамках производственного цикла [5], а crc — это контрольная сумма CRC8, определенная в таблице данных [1].
Снятие крышки DS18B20
В этом коллаже представлены фотографии штампов всех семейств DS18B20, с которыми мы столкнулись в 2019 году. Все фотографии выполнены в одном масштабе, прибл. Ширина 1,4 мм. Корпус ТО-92 вскрывали плоскогубцами, отделяли матрицу от пластикового корпуса кипячением в канифоле и удаляли канифоль ацетоном в ультразвуковой ванне. Фотографии сделаны довольно древней USB-камерой.
Семейство A1 — это подлинные DS18B20 производства Maxim (матрица C4
). Все остальные семьи — клоны. Обратите внимание на сходство между штампами семейств D1 и D2 (согласно их сходству в программном обеспечении) и существенные различия между семействами B1 и B2 (в отличие от их сходства в программном обеспечении).
Семейство A1: подлинный DS18B20
В 2019 году на ebay или AliExpress не было получено ни одного зонда, содержащего эти чипы, но в 2019 году получены чипы от нескольких поставщиков.
- Шаблон ПЗУ [5]: 28-tt-tt-ss-ss-00-00-crc
- Регистр блокнота:
(<byte 0> + <byte 6>) & 0x0f == 0
после всех успешных преобразований температуры и 0x00 < <byte 6> <= 0x10
[2,3,5]. Т.е. <byte 6> = 0x10 – (<byte 0> & 0x0f)
. - Согласно текущему поведению [5] и ранним описаниям [9], состояние зарезервированного
<byte 6>
в регистре Scratchpad при включении равно 0x0c
. - Возвращает значения «Trim1» и «Trim2», если запрос осуществляется с кодами функций 0x93 и 0x68 соответственно [4]. Битовые комбинации очень похожи друг на друга в рамках производственного цикла [4]. Trim2 в настоящее время с меньшей вероятностью будет равен 0xff, чем Trim1 [5]. Trim2 был 0xDB или 0xDC, по крайней мере, с 2009 года, а с осени 2016 года стал 0x73/0x74 (все с кристаллом
C4
) [5]. (В микросхемах с паразитным питанием Trim2 по состоянию на 2020 год равен 0xDB или 0xDC.)- Trim1 и Trim2 кодируют два параметра [5]. Пусть битовая комбинация Trim1 будет
[t17, t16, t15, t14, t13, t12, t11, t10]
(от старшего до младшего бита), а Trim2 будет [t27, t26, t25, t24, t23, t22, t21, t20]
. Затем,- параметр смещения =
[t22, t21, t20, t10, t11, t12, t13, t14, t15, t16, t17]
(11-битное значение без знака) [5] и - параметр кривой =
[t27, t26, t25, t24, t23]
(5-битное значение без знака) [5].
- Внутри партии параметр смещения распространяется на 20–30 единиц, в то время как все датчики в партии имеют один и тот же параметр кривой [5].
- Параметр смещения смещает выходной сигнал температуры в диапазоне приблиз. 100 °С (0,053 °С на единицу), при этом параметр кривой смещает температуру в диапазоне 3,88 °С (0,12 °С на единицу), по крайней мере, в текущих версиях чипа [5]. Примеры значений 2019 года:
offset = 0x420
и curve = 0x0E
, т. е. они расположены довольно центрально в соответствующих диапазонах.
- Температурный сдвиг текущих партий (2019 г.) такой, как показано на странице часто задаваемых вопросов Maxim, т.е. прибл. +0,1 °C при 0 °C [6] ( т. е. не так, как показано в таблице данных [1,9]. График в таблице данных основан на измерениях во время внедрения датчика более 10 лет назад [5,10 ] . Очень незначительный шум температурной дискретизации, если он вообще имеется [5].
- Опрос после функционального кода 0x44 показывает разброс между датчиками 584–615 мс для 12-битного преобразования температуры при комнатной температуре [5]. Время преобразования легко повторяется для отдельных чипов. Более низкие разрешения пропорционально сокращают время, т.е. 11-битные преобразования занимают вдвое меньше времени. Параметры обрезки влияют на время преобразования.
- Возвращает температуру включения 85 °C, если блокнотный регистр считывается до завершения преобразования температуры (как в обычном, так и в паразитном режиме питания). [5].
- Похоже, что чип возвращает температуру 127,94 °C (=0x07FF / 16,0), если преобразование температуры не удалось [5] (например, из-за проблем со стабильностью питания, которые воспроизводимо возникают в режиме «паразитной мощности» с несколькими DS18B20, если Vcc остается плавающим). вместо того, чтобы быть привязанным к земле. Обратите внимание, что в таблице данных четко указано, что Vcc должен быть привязан к GND в паразитном режиме.).
- Пример ПЗУ: 28-13-9B-BB-0B -00-00- 1F
- Пример ПЗУ: 28-CA- D6-10-10-00-00- FE (2024 г.)
- Начальный блокнот: 50 / 05 /4B/46/ 7F / FF /0C/ 10 /1C
- Пример топовой отметки: DALLAS 18B20 1932C4 +786AB.
- Пример топовой отметки: DALLAS 18B20 2411C4 +852AD (2024 г.).
- Отступ:
P
(коды дат с 1150 по 2019 год). - Отступ: возможны варианты кроме
P
с 2020 г. (см. выпуск 21) (2020 г.)
Семья A1-Fishy: настоящая, но украденная?
В 2019 году на ebay или AliExpress не было получено ни одного зонда, содержащего эти чипы, но в 2019 году чипы были получены от одного поставщика.
Если бы мне пришлось сделать дикое предположение, я бы сказал, что эти чипы были перенаправлены куда-то в конец производственного конвейера Maxim (украдены?) [5]. Интересный факт: производитель рекламировал эти чипы как QT18B20, поэтому на самом деле они были подделками клонов DS18B20. На этих чипах указано, что они произведены в Таиланде, а не на Филиппинах.
- Шаблон ПЗУ [5]: 28-tt-tt-Cs-03-00-00-crc
Чипы соответствуют описанию семейства A1, приведенному выше, за следующими исключениями [5]:
- Оба регистра сигналов тревоги установлены в 0x00 (байты 2 и 3 блокнота).
- Разрешение преобразования установлено на 9 бит (т. е. оба бита конфигурации равны 0).
- Оба значения настройки равны 0x00, что приводит к неправильным значениям температуры (т. е. очень низким) и времени преобразования в диапазоне от 400 до 500 мс.
- Как только значения настройки установлены на приемлемое значение, время преобразования температуры находится в пределах диапазона, указанного выше для семейства A1.
- Пример ПЗУ: 28-9B-9E-CB-03 -00-00- 1F
- Начальный блокнот: 50 / 05 /00/00/ 1F / FF /0C/ 10 /74
- Пример топовой отметки: DALLAS 18B20 1136C4 +957AE.
- Пример топовой отметки: DALLAS 18B20 1136C4 +957AF.
- Пример топовой отметки: DALLAS 18B20 1136C4 +152AE.
- Пример топовой отметки: DALLAS 18B20 1136C4 +152AF.
- Пример топовой отметки: DALLAS 18B20 1136C4 +152AG.
- Пример топовой отметки: DALLAS 18B20 1136C4 +152AI.
- Отступ:
THAI <letter>
Семейство A2: Хороший экземпляр с плохими температурными характеристиками
В 2019 году на ebay или AliExpress не было получено ни одного зонда, содержащего эти чипы, но в 2019 году чипы были получены от одного поставщика.
Эти чипы не производятся компанией Maxim.
- Шаблон ПЗУ [5]: 28-00-ss-00-tt-tt-tt-crc, 28-ss-00-ss-tt-tt-tt-crc, 28-ss-00-00-tt-tt- 00-крк
Чипы соответствуют описанию семейства A1, приведенному выше, за следующими исключениями [5]:
- Шаблон ПЗУ несовместим с тем, что производит Максим.
- Значение Trim2 равно
0xFB
или 0xFC
, т.е. несовместимо с известным [5] производством Maxim, предложенным кодом даты. (Обратите внимание, что это означает, что параметр кривой имеет значение 0x1f, т.е. максимально возможное (беззнаковое) значение [5]. Кроме того, параметр смещения распространяется на 200 единиц, а не на диапазон, типичный для семейства A1 [5].)- Параметр кривой представляет собой 5-битное значение со знаком , которое сдвигает температуру в диапазоне 31 °C (1 °C на единицу) [5]. То есть параметр кривой 0x1f (-1 в десятичном формате) находится в центре диапазона.
- Время преобразования температуры охватывает удивительно широкий диапазон от 325 до 502 мс между чипами [5]. Этот диапазон остается широким и выходит за пределы семейства A1 даже при применении более поздних настроек триммера [5]. Время преобразования заметно увеличивается с повышением температуры (около 10% при температуре выше 100 °C) [5]. Время преобразования <500 мс соответствует требованиям, указанным в таблице данных 7Q-Tek QT18B20 [12].
- Не возвращает температуру включения 85 °C, если регистр блокнота считывается до завершения преобразования температуры в режиме паразитного питания [5].
- Типичное смещение температуры при 0 °C составляет от -3,5 до -1,8 °C [5]. (Как ни странно: ошибка, по-видимому, меньше при более высоких температурах [5].) Шум температурной дискретизации очень мал или вообще отсутствует [5].
- Настройки сигналов тревоги (т. е. байты блокнота 2 и 3) имеют случайное содержимое [5].
- Некоторые чипы сохраняют содержимое блокнота в течение 100-миллисекундного цикла включения питания [5].
- Один протестированный образец не функционировал должным образом в паразитном режиме.
- Некоторые микросхемы имеют битовые ошибки в ПЗУ, которые приводят к ошибкам CRC [5]. (2020)
- Топовая марка напечатана, а не напечатана лазером, и в отступе отметка отсутствует.
- Пример ПЗУ: 28-19-00-00-B7-5B-00-41
- Начальный блокнот: 50 / 05 /xx/xx/ 7F / FF /0C/ 10 /xx
- Пример топовой отметки: DALLAS 18B20 1808C4 +233AA.
- Пример топовой отметки: DALLAS 18B20 1838C4 +233AA (2020).
- Отступ: нет
Семейство A3: создано, чтобы обманывать
В 2019 году ни чипов, ни зондов не получено. Чипы куплено в 2024 году, также наблюдалось в природе (см. обсуждение 42)
Это семейство было добавлено в список в 2024 году. Похоже, оно было создано для того, чтобы пройти все тесты скетчей Arduino 2019 года на этом сайте.
- Шаблоны ПЗУ [5]: 28-tt-tt-tt-00-00-00-crc
- Обратите внимание, что оригинальные чипы с такой схемой ПЗУ были произведены более 15 лет назад.
- Обратите внимание, что ПЗУ этого шаблона появилось раньше кристалла
C4
. Т.е. чип с топовой маркой DALLAS 18B20 и кристалл C4
вместе с этим ПЗУ не является подлинным.
- Регистр блокнота
<byte 6> = 0x0C
при включении питания и <byte 6> = 0x10 – (<byte 0> & 0x0f)
после преобразования температуры, [5]. - Возвращает данные по недокументированному коду функции 0x68 («Trim2»), [5]. Возвращает данные по недокументированному коду функции 0x93, но по умолчанию используется значение
0xFF
(«Trim1»), [5].- Параметр кривой не имеет знака и влияет на показания температуры с той же величиной, что и семейство A1. [5]
- «Trim2» не соответствует известным значениям семейства A1. [5]
- Параметр смещения реализован иначе, чем в семействе A1. [5]
- Настройки регистра тревог по умолчанию отличаются от семейства A1 (
0x7F
и 0x80
) [5]. - Выборка из 20 датчиков имела среднее смещение температуры +0,11 °C при 0 °C с разбросом, сравнимым с разбросом датчиков других семейств [5]. Шум отдельных датчиков был сопоставим с датчиками других семейств [5].
- Опрос для завершения преобразования температуры дает действительные показания только после небольшой задержки (< 1 мс) после начала преобразования температуры [5]. Это контрастирует со всеми другими датчиками семейств AE и G, которые реализуют эту функцию.
- Задержанный опрос после функционального кода 0x44 показывает приблиз. 589–621 мс для 12-битного преобразования температуры и пропорционально меньше при более низком разрешении [5].
- Датчик показывает, когда в режиме паразитного питания работает преобразование температуры в режиме паразитного питания (по результатам беглого теста) [5].
- Возвращает температуру включения 85 °C, если блокнотный регистр считывается до завершения преобразования температуры в режиме паразитного питания. [5].
- Пример ПЗУ: 28-3E- 43-87-00-00-00-18 (см. обсуждение 42)
- Пример ПЗУ: 28-CA-BA-61 -00-00-00- A3
- Пример ПЗУ: 28-06-64-2B -00-00-00-46
- Начальный блокнот: 50/05/7F/80/7F/FF/0C/10/93
- Пример топовой отметки: DALLAS 18B20 2402C4 +817AB (см. обсуждение 42).
- Пример топовой отметки: HXY 18B20 2340.
- Пример топовой отметки: MSKSEMI 18B20 2420.
Семейство B1: GXCAS 18B20, соответствующая кривая температурного смещения, указанная в паспорте
Получены пробы от ряда поставщиков в 2019 году, получены чипы от двух поставщиков в 2019 году. Один поставщик отправил чипы с маркировкой UMW, а не DALLAS.
- Шаблоны ПЗУ [5]:
- 28-AA-tt-ss-ss-ss-ss-crc (маркировка GXCAS)
- 28-тт-тт-сс-сс-сс-сс-crc (бренд UMW)
- Регистр блокнота
<byte 6>
не изменяется в зависимости от измеренной температуры (по умолчанию 0x0c
) [5]. - DS18B20 записывает ошибку в блокнот (0x4E) / блокнот UMW [5,12,14]:
- Если отправляются 3 байта данных (согласно таблице данных DS18B20, TH, TL, Config), то
<byte 6>
заменяется на третий отправленный байт, - если отправляются 5 байтов данных (согласно таблице данных UMW, TH, TL, Config, пользовательский байт 3, пользовательский байт 4), последние два байта перезаписывают
<byte 6>
и <byte 7>
соответственно.
- Не возвращает данные по недокументированному коду функции 0x68 [5]. Возвращает данные с кодов 0x90, 0x91, 0x92, 0x93, 0x95 и 0x97 [5]. Возвращаемое значение в ответ на 0x97 —
0x22
[5]. - Код ПЗУ можно изменить программно с помощью последовательности команд «96-Cx-Dx-94» [5]. (В спецификации UMW указано, что код ПЗУ можно изменить, но не указано, как [14].) Код семейства (
0x28
) изменить нельзя [5]. - Заменяет
0x0c
на фактическое значение <byte 6>
, если регистр блокнота считывается до завершения преобразования температуры в режиме паразитного энергопотребления. - Смещение температуры, как показано в таблице данных Maxim (-0,15 °C при 0 °C) [6]. Очень незначительный шум температурной дискретизации, если он вообще имеется [5].
- Опрос после функционального кода 0x44 показывает приблиз. 589–728 мс для 12-битного преобразования температуры и пропорционально меньше при более низком разрешении [5].
- Датчик показывает, когда в режиме паразитного питания работает преобразование температуры в режиме паразитного питания (по результатам беглого теста) [5].
- Возвращает температуру включения 85 °C, если блокнотный регистр считывается до завершения преобразования температуры в режиме паразитного питания. [5].
- На кубике написано «GXCAS».
- Пример ПЗУ: 28 -AA- 3C-61-55-14-01-F0
- Пример ПЗУ: 28-AB-9C- B1-33-14-01-81
- Начальный блокнот: 50/05/4B/46/7F/FF/0C/10/1C
- Пример топовой отметки: DALLAS 18B20 1626C4 +233AA.
- Пример топовой отметки: DALLAS 18B20 1804C4 +051AG.
- Пример топовой отметки: DALLAS 18B20 1810C4 +051AG.
- Пример топовой отметки: DALLAS 18B20 1921C4 +921AC (2020).
- Пример топовой отметки: DALLAS 18B20 1926C4 +926AC (2020).
- Пример топовой отметки: GXCAS 18B20E 1847D02.
- Пример топовой отметки: UMW 18B20 1935C4.
- Отступ: нет
Семья B1v2: зачем это обновление?
В 2019 году ни чипов, ни зондов не получено. Чипов получено в 2024 году, также см. выпуск 40.
Эти чипы, судя по всему, появились на рынке ок. 2024, как сообщается в выпуске 40. Хотя недокументированные функции, похоже, соответствуют функциям семейства B1, поведение регистра блокнота изменилось, чтобы лучше соответствовать семейству A1.
- Шаблоны ПЗУ [5]: 28-tt-tt-ss-ss-ss-ss-crc
- Отличия от семейства B1:
- Регистр блокнота
<byte 6>
действует как семейство A1. То есть <byte 6> = 0x10 – (<byte 0> & 0x0f)
, [5] и проблема 40. - Запись регистров сигналов тревоги и регистра конфигурации не загрязняет другие значения в регистре блокнота, [5] и выпуск 40.
- Регистр Scratchpad не сохраняет пользовательские байты, если отправлено 5 байтов данных, т. е.
<byte 7>
имеет фиксированное значение 0x10
. [5].
- Не возвращает данные по недокументированному коду функции 0x68 [5]. Возвращает данные с кодов 0x90, 0x91, 0x92, 0x93, 0x95 и 0x97 [5]. Возвращаемое значение в ответ на 0x97 —
0x22
[5]. - Код ПЗУ можно изменить программно с помощью последовательности команд «96-Cx-Dx-94» [5]. Семейный код (
0x28
) изменить нельзя [5]. - Смещение температуры, как показано в таблице данных Maxim (-0,15 °C при 0 °C) [6]. Очень незначительный шум температурной дискретизации, если он вообще имеется [5].
- Опрос после функционального кода 0x44 показывает около 650 мс для 12-битного преобразования температуры и пропорционально меньше при более низком разрешении [5].
- Датчик показывает, когда в режиме паразитного питания работает преобразование температуры в режиме паразитного питания (по результатам беглого теста) [5].
- Возвращает температуру включения 85 °C, если блокнотный регистр считывается до завершения преобразования температуры в режиме паразитного питания. [5].
- Пример ПЗУ: 28-E4-FA-2F -57-23-0B- AF (см. выпуск 40)
- Пример ПЗУ: 28-0D-72-9A -20-23-07- C3
- Пример ПЗУ: 28-94-77-5F -33-23-09-37
- Начальный блокнот: 50/05/4B/46/7F/FF/0C/10/1C
- Пример топовой отметки: GXCAS 18B20T 2310006.
- Пример топовой отметки: XINBOLE DS18B20 2310C4 +3E1AC.
- Отступ: нет
Семейство B2: 7Q-Tek QT18B20 с температурным сдвигом -0,5 °C при 0 °C
В 2019 году получили как пробники, так и чипы этой серии от ряда поставщиков. Три поставщика прислали чипы с маркировкой 7Q-Tek, а не DALLAS.
- Шаблоны ПЗУ [5]: 28-FF-tt-ss-ss-ss-ss-crc
- Регистр блокнота
<byte 6>
не изменяется в зависимости от измеренной температуры (по умолчанию 0x0c
) [5]. - DS18B20 записывает блокнот-ошибку (0x4E) / блокнот QT18B20 [5,12]:
- Если отправляются 3 байта данных (согласно таблице данных DS18B20, TH, TL, Config), то
<byte 6>
заменяется на третий отправленный байт, - если отправляются 5 байтов данных (согласно таблице данных QT18B20, TH, TL, Config, пользовательский байт 3, пользовательский байт 4), последние два байта перезаписывают
<byte 6>
и <byte 7>
соответственно.
- Не возвращает данные по недокументированному коду функции 0x68 [5]. Возвращает данные с кодов 0x90, 0x91, 0x92, 0x93, 0x95 и 0x97 [5]. Возвращаемое значение в ответ на 0x97 —
0x31
[5]. - Код ПЗУ нельзя изменить программно с помощью последовательности команд «96-Cx-Dx-94» [5].
- По крайней мере, в некоторых более поздних образцах настройки регистра тревог по умолчанию отличаются от семейства A1 (
0x55
и 0x00
) [5]. (2024) - Заменяет
0x0c
на фактическое значение <byte 6>
, если регистр блокнота считывается до завершения преобразования температуры в режиме паразитного энергопотребления. - Типичное смещение температуры при 0 °C составляет -0,5 °C [6]. Очень незначительный шум температурной дискретизации, если он вообще имеется [5].
- В 2024 году выборка из 10 датчиков имела среднее смещение температуры -0,24 °C при 0 °C [5]. (2024)
- Опрос после функционального кода 0x44 показывает прибл. 587–697 мс для 12-битного преобразования температуры и пропорционально меньше при более низком разрешении [5].
- Датчик показывает, когда в режиме паразитного питания работает преобразование температуры в режиме паразитного питания (по результатам беглого теста) [5].
- Возвращает температуру включения 85 °C, если блокнотный регистр считывается до завершения преобразования температуры в режиме паразитного питания. [5].
- У Die есть «7q-tek», написанный на нем (с использованием китайского символа для цифры 7).
- Пример ПЗУ: 28 -ff- 7C-5A-61-16-04-EE
- Пример ПЗУ: 28 -ff- E8-E8-54-E2-1F-24 (2024)
- Начальная царапина: 50/05/4B/46/7F/ff/0C/10/1C
- Начальная царапина: 50/05/55/00/7F/ff/0C/10/11 (2024)
- Пример Topmark: Даллас 18B20 1626C4 +233AA
- Пример Topmark: Даллас 18B20 1702C4 +233AA
- Пример Topmark: Dallas 18b20 1810c4 +138ab
- Пример Topmark: Dallas 18b20 1829c4 +887ab
- Пример Topmark: Dallas 18b20 1832c4 +827ah
- Пример Topmark: Даллас 18B20 1833C4 +058AA
- Пример Topmark: Dallas 18b20 1908c4 +887ab
- Пример Topmark: Dallas 18b20 1912c4 +001ac ( NB: эта комбинация даты/партии также используется на подлинных чипах [5] )
- Пример Topmark: Dallas 18b20 2012c4 +887ab (2020)
- Пример Topmark: 7Q-TEK 18B20 1861C02
- Пример Topmark: 18b20 2214 (2024)
- Отметка отступления: нет
Семейство C: небольшое смещение при 0 ° C
Получил не датчики, но получил чипы от нескольких поставщиков в 2019 году
- Узоры ПЗУ [5]: 28-FF-64-SS-SS-TT-TT-CRC
- Регистр царапин
<byte 6> == 0x0c
[5]. - Не возвращает данные в нерешенствованном коде функции 0x68 или любой другой недокументированный код функции [5].
- Типичное смещение температуры при 0 ° C составляет +0,05 ° C [6]. Очень мало, если какой -либо шум дискретизации температуры [5].
- EEPROM выдерживает только около восьми (8) циклов записи (код функции 0x48) [5].
- Сообщаемый режим питания (паразитный/нормальный) в ответ на код функции 0xb4 может быть неправильным, в зависимости от вывода мощности заказа и линии данных питается (например, если питатель находится на GND, когда данные питаются, а питатель подключен к VCC Чип будет продолжать сообщать о режиме паразитической мощности) [5].
- Опрос после кода функции 0x44 указывает 28-30 мс (тридцать) для 12-разрядного преобразования температуры [5]. Преобразование температуры также работает в режиме паразитической мощности [5].
- Работает в 12-битном режиме преобразования, только (всегда считывает байт конфигурации
0x7f
) [5]. - Настройки регистра тревоги по умолчанию отличаются от семейства A1 (
0x55
и 0x00
) [5].
- Пример ПЗУ: 28 -ff-64- 1D-CD-96-F2-01
- Начальная царапина: 50/05/55/00/7f/ff/0c/10/11
- Пример Topmark: Даллас 18B20 1331C4 +826AC
- Пример Topmark: Даллас 18B20 1810C4 +158AC
- Пример Topmark: Даллас 18B20 1924C4 +158AC
- Отметка отступления: нет
Семейство D1: шумный мусор с большой кепкой
Обоснованные зонды от двух поставщиков в начале 2019 года, полученные чипы от одного поставщика в 2019 году
- Узоры ПЗУ [5]: 28-TT-TT-77-91-SS-SS-CRC и 28-TT-TT-46-92-SS-SS-CRC
- Регистр царапин
<byte 7> == 0x66
, <byte 6> != 0x0c
и <byte 5> != 0xff
[5]. - Не возвращает данные в нерешенствованном коде функции 0x68 [5]. Отвечает обратно данными или информацией о состоянии после кодов
- 0x4d, 0x8b (8 байтов), 0xba, 0xbb, 0xdd (5 байтов), 0xee (5 байтов) [5], или
- 0x4d, 0x8b (8 байтов), 0xba, 0xbb [5].
- Первый байт после недокументированного кода функции 0x8b is [5]
-
0x06
: датчики не работают с паразитной силой . Датчики оставляют линию данных плавающими при паразитрическом питании [5]. -
0x02
: Датчики работают в режиме паразитической мощности (и правильно сообщают, имеют ли они паразитивно питаемые).
- Можно отправить произвольный контент в качестве кода ПЗУ и для байтов 5, 6 и 7 регистра с помощью царапин после незарегистрированных кодов функций 0xa3 и 0x66, соответственно [5]. Семейный код устройства может быть изменен [5].
- Температурные ошибки до 3 ° C при 0 ° C [6]. Очень шумные данные [5].
- Опрос после кода функции 0x44 указывает прибл. 11 мс (одиннадцать) для конверсии независимо от разрешения измерения [5].
- Чипы содержат конденсатор с высокой стоимостью, а не EEPROM для удержания сигналов тревоги и конфигурации [5]. Т.е. последнее измерение температуры и обновления регистров тревоги сохраняются между циклами питания, которые не слишком длинные [5].
- Конденсатор сохраняет память в течение нескольких минут, если только контакт VCC не подключен к контакту GND, и в этом случае удержание памяти от 5 до 30 секунд [5].
- Чипы чувствительны к тому, как применяется мощность [5]. Например, чтобы включить от всех контактов, прикрепленных к GND, кажется хорошей идеей оставлять данные и питания с питанием на немного (например, 100 мс), прежде чем фактически применить напряжение к питанию питания и данных [5].
- Первоначальный показатель температуры составляет 25 ° C или последнее чтение перед питанием [5]. Настройки регистра тревоги по умолчанию отличаются от семейства A1 (
0x55
и 0x05
) [5].
- Пример ПЗУ: 28-48-1B-77 -91-17-02-55 (Рабочий режим паразитической мощности)
- Пример ПЗУ: 28-24-1D-77 -91-04-02 -CE (отвечает на 0xDD и 0XEE)
- Пример ПЗУ: 28-B8-0E-77 -91-0E -02-D7
- Пример ПЗУ: 28-21-6D-46 -92- 0A-02-B7
- Начальная царапина: 90/01/55/05/7F/7E/81/66/27
- Пример Topmark: Dallas 18b20 1807c4 +051ag
- Пример Topmark: Dallas 18b20 1813c4 +827ah (2020)
- Пример Topmark: Dallas 18b20 1827c4 +051ag
- Отметка отступления: нет
Семейство D2: Интересно, нет паразитической силы
Получили как зонды, так и чипсы от большого количества поставщиков в 2019 году.
- Узоры ПЗУ [5]: 28-TT-TT-79-97-SS-SS-CRC, 28-TT-TT-94-97-SS-SS-CRC, 28-TT-TT-79-A2-SS- SS-CRC, 28-TT-TT-16-A8-SS-SS-CRC, 28-TT-TT-56-B5-SS-SS-CRC (2020) , 28-TT-TT-07-D6-SS-SS-CRC (2020)
- Регистр царапин
<byte 7> == 0x66
, <byte 6> != 0x0c
и <byte 5> != 0xff
[5].-
<byte 7>
может иметь другие значения, включая 0xaa или 0x00, [5] и обсуждение 36. (2024) - Регистры Scrackpad
<byte 5>
, <byte 6>
и <byte 7>
могут быть записаны с помощью кода функции 0x66 [15]. (2024)
- Не возвращает данные в нерешенствованном коде функции 0x68 [5]. Отвечает обратно данными или информацией о состоянии после кодов
- 0x4d, 0x8b (9 байт), 0xba, 0xbb, 0xdd (3 байта), 0xee (3 байта) [5], или
- 0x4d, 0x8b (9 байт), 0xba, 0xbb [5].
- Первый байт после недокументированного кода функции 0x8b составляет
0x00
[5]. - Недокументированный код функции 0x8b Запроки зарегистрируют реестр 9-байтовой конфигурации 9-байтов, со многими из этих байтов, влияющих на чтение температуры [5]. Код функции без документов 0xab используется для обновления 9 байтов этого регистра конфигурации [5]. (2024)
- 14-битный температурный режим [15] может быть включен путем настройки
<bit 0>
из <byte 0>
в регистрации недокументированной конфигурации [5]. (2024) - Датчики не работают с паразитной силой . Датчики рисуют линию данных низко при паразитрическом питании [5].
- 2019: температурные ошибки до 3 ° C при 0 ° C [6]. Данные шумнее, чем подлинные чипы [5].
- В 2024 году образец из 10 датчиков имел среднее смещение температуры -0,09 ° C при 0 ° C с межсенсорным распределением от -0,25 до +0,44 ° C, что является большим распространением по сравнению с другими семействами [5]. Тем не менее, отдельные датчики не были шумнее, чем датчики других семей. (2024)
- Опрос после кода функции 0x44 указывает прибл. 462-523 мс для конверсии независимо от разрешения измерения [5]. Серия с
97
и A2
/ A8
в ПЗУ преобразуется в 494-523 мс и 462-486 мс соответственно [5]. Чипсы с A2
или A8
в байте 4 из ПЗУ, похоже, появились первыми в 2019 году. - Первоначальный показатель температуры составляет 25 ° C [5]. Настройки регистра тревоги по умолчанию отличаются от семейства A1 (
0x55
и 0x05
) [5].- Настройки регистра тревоги по умолчанию отличаются от семейства A1 (
0x00
и 0x00
), [5] и обсуждения 36. (2024)
- Пример ПЗУ: 28-90-FE-79 -97-00-03-20
- Пример ПЗУ: 28-FD-58-94 -97-14-03-05
- Пример ПЗУ: 28-FB-10-79 -A2-00-03-88
- Пример ПЗУ: 28-29-7D-16 -A8- 01-3C-84
- Пример ПЗУ: 28-DF-54-56 -B5- 01-3C-F5 (2020)
- Пример ПЗУ: 28-AF-EC-07 -D6- 01-3C-0A (2020)
- Пример ПЗУ: 28-75-02-80 -33- 8B-06-DC (2024)
- Начальная царапина: 90/01/55/05/7F/xx/xx/66/xx
- Начальная царапина: 90/01/00/00/7f/xx/xx/xx/xx (2024)
- Пример Topmark: Dallas 18b20 1812c4 +051ag
- Пример Topmark: Dallas 18b20 1827c4 +051ag
- Пример Topmark: Dallas 18b20 1916c4 +051ag
- Пример Topmark: Dallas 18b20 1923c4 +051ag
- Пример Topmark: Dallas 18b20 1943c4 +051ag
- Пример Topmark: Dallas 18b20 1828c4 +233aa
- Пример Topmark: Dallas 18b20 2008c4 +817ab (2020)
- Пример Topmark: SE18B20 2130 (2022)
- Пример Topmark: MY18B20 S380 (2024)
- Отметка отступления: нет
Семья E: Novosense NS18B20
Полученный ни чипсы, ни зонды в 2019 году. Купленные фишки четко обозначены NS18B20 в 2022 и 2024 годах
Эта семья была добавлена в список по состоянию на 2022 год. Таблица данных, по -видимому, предполагает, что чипы начали производство в 2019 году.
- Узоры ПЗУ [5]: 28-00-TT-TT-SS-SS-SS-CRC
- Регистр царапин
<byte 6>
всегда <byte 6> = 0x10 – (<byte 0> & 0x0f)
, т.е. в отличие от семейства A1 <byte 6> = 0x10
-это значение при включении питания [5]. - Возвращает двух байтовую пользовательскую плату на код функции 0xde и сигнализирует, занятые во время записи в EEPROM в коде функции 0x28 [5], как указано в таблице данных NS18B20 [17].
- Не возвращает данные в незарегистрированных кодах функций 0x68 и 0x93, [5].
- Образец из 10 датчиков имел среднее смещение температуры +0,02 ° C при 0 ° C с распространением, сопоставимым с другими семействами [5]. Шум отдельных датчиков был сопоставим с датчиками других семей [5]. (2024)
- Преобразование температуры составляет от 20 до 25 мс, независимо от выбранного разрешения [5]. (Dataashing NS18B20 определяет максимум 50 мс независимо от разрешения.)
- Датчик указывает, когда в режиме паразитарной мощности преобразование температуры в режиме паразитической мощности работает (на основе критерия критерия) [5].
- Возвращает температуру включения в силу 85 ° C, если регистр царапин прочитана до того, как преобразование температуры завершено в режиме паразитической мощности. [5].
- Пример ПЗУ: 28 -00- 74-28 -59-43- 0F-7A
- Пример ПЗУ: 28 -00- 2A-50 -0C-41- 02-дБ
- Начальная царапина: 50/05/4b/46/7f/ff/10/10/bd
- Пример Topmark: NS18B20 203B00
- Пример Topmark: NS18B20 412D01
- Отметка отступления: нет
Семья F: вариант
Получены ни чипсов, ни зондов в 2019 году. Купили фишки в 2024 году
Эта семья была добавлена в список в 2024 году.
- Узоры ПЗУ [5]: 28-TT-TT-SS-SS-SS-SS-CRC
- Регистр царапин
<byte 6> = 0x0C
фиксирован, [5]. - Возвращает три байта в незарегистрированном коде функции 0x19, [5].
- Не возвращает данные в незарегистрированных кодах функций 0x68 и 0x93, [5].
- Расширенная температурная режим (до 150 ° C) может быть включен путем настройки
<bit 7>
of <byte 4>
в реестре Scrackpad, [5], [18]. - Eeprom не реализован, [18].
- Настройки регистра тревоги по умолчанию отличаются от семейства A1 (
0x55
и 0x00
) [5]. - Образец из 10 датчиков имел среднее смещение температуры -0,11 ° C при 0 ° C с распространением, сопоставимым с другими семействами [5]. Шум отдельных датчиков был сопоставим с датчиками других семей [5]. (2024)
- Разрешение конверсии всегда сообщалось как 12 бит, [5].
- Завершение преобразования температуры не может быть опробовано (функциональность не внедрена), [5], [18].
- Типичное время преобразования 27 мс в соответствии с таблицей данных, [18].
- Режим паразитической мощности не работает с VCC, вытянутым в GND, [5]. Вместо этого режим паразитарного питания работает с Left Ploating VCC, [5], [18].
- Возвращает температуру включения в силу 85 ° C, если регистр царапин прочитана до того, как преобразование температуры завершено в режиме паразитической мощности. [5].
- Некоторые датчики покидают линию данных плавающим, если реестр сетчатой путы прочитана до того, как преобразование температуры завершено в режиме паразитической мощности и в конечном итоге сбросит до температуры питания 85 ° C. [5].
- Пример ПЗУ: 28-03-60 -00-00-01- 24-D0
- Начальная царапина: 50/05/55/00/7f/ff/0c/10/11
- Пример Topmark: Xinbole DS18B20T 2430C4 +4F3AC
- Отметка отступления: нет
Семья Г: Джокер
Получены ни чипсов, ни зондов в 2019 году. Купили фишки в 2024 году
Эта семья была добавлена в список в 2024 году.
- Узоры ПЗУ [5]: 28-TT-TT-TT-TT-TT-TT-CRC (казалось бы, случайный)
- Регистр царапин
<byte 6> = 0x0C
при питании и <byte 6> = 0x20 – (<byte 0> & 0x0f)
после преобразования температуры [5]. Да, они действительно лгут на 0x10
над семьей А1. - Возвращает один байт в код функции без документов 0x8e, [5].
- Не возвращает данные в незарегистрированных кодах функций 0x68 и 0x93, [5].
- Настройки регистра тревоги по умолчанию отличаются от семьи A1 (
0x55
и 0xAA
) [5]. - Содержит большой буферный конденсатор, так что питания 100 мс слишком короткий, чтобы сбросить регистр скретч -наплыв, [5].
- Образец из 27 датчиков имел среднее смещение температуры -0,22 ° C при 0 ° C с распространением, сопоставимым с другими семействами [5]. Шум отдельных датчиков был сопоставим с датчиками других семей [5].
- Опрос после кода функции 0x44 указывает прибл. 227-293 мс для 12-битного преобразования температуры и пропорционально меньше при более низком разрешении [5].
- Датчик указывает, когда в режиме паразитарной мощности преобразование температуры в режиме паразитической мощности работает (на основе критерия критерия) [5].
- Вытягивает линию данных LILE (!) Если преобразование прерывается путем чтения регистра Scratchpad в режиме питания паразитов и в конечном итоге восстановится, чтобы после завершения преобразования (до> 1000 мс позже). [5].
- Пример ПЗУ: 28-C7-9E-A3-59-83-D9-74
- Пример ПЗУ: 28-95-77-37-3F-4A-FB-1F
- Пример ROM: 28-CE-71-E6-6F-8C-E5-3C
- Начальная царапина: 50/05/55/AA/7F/FF/0C/10/AF
- Пример Topmark: ZHHXDZ HX18B20 24+6
- Пример Topmark: JSMSEMI 18B20 3X31
- Пример Topmark: HT18B20 Artz #465142
- Отметка отступления: нет
Семья H: Разное АЦП
Получены ни чипсов, ни зондов в 2019 году. Получил один чип в 2024 году.
Эта семья была добавлена в список в 2024 году. Единственный образец, который я получил, был частью «партии» датчиков с надписью HT18B20: они были упакованы на ленту и катушку, и этот один датчик отличался от других. Итак, если вы не хотите знать, что вы получаете, попросите HT18B20.
- Узоры ПЗУ [5]: 28-TT-TT-TT-TT-TT-TT-CRC (трудно сказать на основе одной выборки)
- Регистр царапин
<byte 6> = 0x0C
при питании и <byte 6> = 0x10 – (<byte 0> & 0x0f)
после преобразования температуры [5]. - Не возвращает данные в незарегистрированных кодах функций 0x68 и 0x93 или любых других функциональных кодов [5].
- Настройки регистра тревоги по умолчанию отличаются от семьи A1 (
0x55
и 0xAA
) [5]. - Содержит большой буферный конденсатор, так что питания 100 мс слишком короткий, чтобы сбросить регистр скретч -наплыв, [5].
- Один исследованный образец имел смещение температуры -0,12 ° C при 0 ° C [5]. Шум датчика был сопоставим с датчиками других семей [5].
- Опрос после кода функции 0x44 указывает 101 мс, 141 мс, 198 мс и 279 мс при разрешении 9, 10, 11 и 12 битов соответственно, то есть коэффициентом 1,4, а не коэффициентом 2 между настройками разрешения [ 5].
- В принципе, датчик указывает, когда в режиме паразитарной мощности преобразование температуры в режиме паразитической мощности работает (на основе критерия критерия) [5].
- Переключатель обратно и поля между паразитной мощностью и нормальной мощностью не указывается датчиком [5].
- Listing Line Line Data Ploating, если преобразование прерывается путем чтения регистра в режиме Parasite Power Power и сообщит о результатах конверсии, если будет запрошено впоследствии. [5].
- Пример ПЗУ: 28-0C-80-53-5C-AA-8E-A2
- Начальная царапина: 50/05/55/AA/7F/FF/0C/10/AF
- Пример Topmark: HT18B20 Artz #465142
- Отметка отступления: нет
Устарел с 2019 года
Получили ни зонды, ни чипсы в 2019 году
ПЗЕ
- Пример ПЗУ: 28-9E-9C-1F -00-00-80- 04
(Очевидно, все еще продается другим в 2019 году (ср. Выпуск 17))
ПЗУ-паттерны [5,11]: 28-61-64-SS-SS-TT-CRC
- Пример ПЗУ: 28 -61-64-11-8D -F1-15-DE
(По -видимому, семья С.) (2022)
Узоры ПЗУ [5]: 28-EE-TT-TT-SS-SS-SS-CRC
- Пример ПЗУ: 28 -ee- 58-49-25-16-01-45 (2020)
- Пример Topmark: Dallas 18b20 1619c4 +827ah (2020)
- Пример Topmark: Dallas 18b20 1709c4 +827ah (2020)
(Получил несколько чипсов в 2020 году: они ведут себя как семья B2 на первый взгляд.)
Семейство A1 с версиями Die до C4
(Некоторые более старые фишки (до 2009 года) имели глючные аппаратные цепи (умирают), в большинстве случаев умирают B7
[4], ср. Выпуск 19).
Решение на 85 ° C-запроблем
Существует простой, незарегистрированный способ различения между прочтением 85 ° C и подлинным показанием температуры 85 ° C в DS18B20 семейства A и некоторых других [5]: <byte 6>
из регистра царапин. Если это 0x0c
, то прочитание 85 ° C является чтением с питанием, в противном случае это истинное измерение температуры.
GXCAS 18B20
Клон DS18B20 Пекинского Zhongke Galaxy Core Technology Co., Ltd., торгуя как gxcas, по -видимому, распределяется независимо от GXCAS и UMW (Family B1). Согласно их веб-странице, GXCAS существует только с января 2018 года. Хотя GXCAS не имеет таблицы данных в Интернете, в таблице данных на веб-странице UMW подчеркивается добавление двух определенных пользователей байтов в регистр Scrackpad и возможность изменения Адрес ПЗУ [14]. Ряд этих чипов несет поддельные DS18B20 Topmarks. GXCAS явно гордится своим продуктом, когда они пишут название своей компании на вечеринке.
7Q-TEK QT18B20
QT18B20-это клон DS18B20, разработанный и проданный Pecijing 7Q Technology Inc, торговля как 7Q-TEK (Family B2). В таблице данных QT18B20 подчеркивается добавление двух пользовательских байтов в регистрации скретч [12]. В отличие от листа данных DS18B20, в нем не указывается, что код ПЗУ ласен. Большое количество этих чипсов несет в себе поддельные DS18B20 Topmarks. 7q-Tek явно гордится своим продуктом, когда они пишут название своей компании на вечеринке.
Хотя неясно, кто спроектировал или производил чипы семейного A2, Family A2, по-видимому, была вдохновением для семьи B2 7Q-TEK QT18B20, на основе следующих наблюдений:
- В таблице данных QT18B20 утверждается, что преобразование температуры занимает <500 мс [12]. Это согласуется с фактическим поведением семьи А2. (В то время как в таблице DataShing UMW претендует то же самое [14], один из листов данных, по -видимому, использовался в качестве шаблона для другого.)
- Согласно истории версии данных, в самой ранней версии таблицы данных QT18B20 не упоминалась пользовательские байты [12]. В Family A2 нет пользовательских байтов в реестре Scrackpad.
- Die Ciruit of Family A2 напоминает стиль как Die of Family A1 (производимый Maxim), так и Die of Family B2 (производимый 7Q-TEK). Размер матрицы значительно отличается от семейства А1, поэтому это не максимально производственный DS18B20.
Mysentech my18e20
Клон My18E20 технологии Sensing Minyuan, торгуя как MySentech, представляется датчиком семейного D2. Family D1, вероятно, является вариантом, также созданным MySentech. У Mysentech есть таблица данных, которая, по -видимому, в значительной степени соответствует поведению этого чипа [15], и у них есть технические страницы часто задаваемых вопросов, связанные с этим датчиком (от декабря 2022 года) [16]. Видимо, Mysentech был основан в 2017 году (2024)
Novosense NS18B20
NS18B20 является клоном DS18B20 Suzhou Novosense Microelectronics Co., Ltd. (Family E). (2022)
Синбол DS18B20T
Shenzhen Xinbole Electronics Co. (XBLW) имеет таблицу данных, который точно описывает несколько необычное поведение датчика Family F. (2024)
MAX31820
Maxim Integrated также производит датчик температуры MAX31820. MAX31820 представляет собой DS18B20 с ограниченным диапазоном напряжений питания (то есть до 3,7 В) и меньшим диапазоном температуры с высокой точностью [1,8]. Как и DS18B20, он использует однопроводный семейный код 0x28 [1,8]. Предварительные исследования не (пока) не выявили тест, чтобы различить DS18B20 семейства A1 и Maximed-производимого MAX31820 в программном обеспечении [5].
Методы
По популярным запросам (выпуск 11) этот раздел должен дать фон (некоторым) результатам и выводам выше. Я добавлю к этому очень медленно, как позволяет время.
Исследования были на DS18B20, а не на варианте DS18B20-PAR или DS18S20. У нас есть только рука датчиков DS18B20-PAR и DS18S20, в то время как у нас сотни DS18B20. Кроме того, все датчики были в случае TO-92.
Выборочная основа для анализа семейства А1
Выше рисунок показывает диапазон дат производства и кодов ПЗУ (серийные номера) исследуемых датчиков семейства А1, которые были куплены в виде фишек. Также включено однозначное количество чипов, содержащихся в зондах, которые мы открыли для чтения с Topmark. Дата производства в соответствии с кодом даты находится на оси x, серийный номер в соответствии с ПЗУ находится на оси Y, точки-это отдельные чипы (n> 200, но отдельные партии появляются в виде смазочных качков), Серые зоны выделяют 2019 год. У нас есть чипы, произведенные с 2009 по 2020 год, и все чипы имеют C4
Die, нет чипов не имеют кодов дат 2010, 2014 или 2015. (Серийный номер чипа с ПЗУ 28-13-9B-BB- 0B -00-00-1F составляет 0x0BBB9B13 и, таким образом, падает между 0x0B и 0x0C на оси Y). Мы видим, что есть длинные Срок отношения между серийным номером и кодом даты (пунктирная строка): серийный номер увеличивается примерно на 16 500 000 (то есть прибл. 2^24) в год. Тем не менее, эта связь является лишь общим руководством, как это видно по степени разброса по линии и в увеличении в наставке: датчиков, произведенных в 2019 году. более ранний серийный номер.
Похоже, мы приобрели одну из последних партий, произведенных в 2016 году с константами калибровки TRIM2 0xDB или 0xDC, и одной из первых партий с констант калибровки TRIM2 0x73 или 0x74. Следовательно, изменение, вероятно, произошло между 32 и 47 недель 2016 года. ( Это заявление о DS18B20, а не DS18B20-Par. )
Данные температуры
Выше рисунок показывает (а) показание температуры, которое мы получили от каждого датчика в ванне с ледяной водой при 0 ° C, (б) количество шума в последовательных показаниях в ванне с водой и (c) времени преобразования для температуры Измерения при номинальной комнатной температуре (измерения фактически проводились где -то от 0 до 30 ° C). Версия фигуры высокого разрешения доступна на Images/sensor_measurenties_by_family.png. Данные для (a) и (b) обычно основаны на 20 последовательных измерениях, проведенных раз в 10 с после того, как датчик уравновешивается в ванне с ледяной водой. Данные в (c) основаны на лишь всего лишь едином измерении на датчик, как и в нашем опыте, не разбросано, то есть одного измерения достаточно для оценки времени преобразования датчика при текущей температуре.
Данные были измерены при +5 В. (2024)
Данные сгруппированы по оси x следующим образом:
- A1: Семья A1, полученная от официального дистрибьютора, то есть как авторитетность, так и надлежащая обработка гарантированы
- A1 (сторонний дистрибьютор): семья A1, полученная у других крупных или малых розничных продавцов, в том числе продаваемых на eBay и AliexPress, и включая любые датчики, содержащиеся в зондах
- A2: семья A2
- B1 (GXCAS): Family B1, основываясь на их ПЗУ, по -видимому, распределяется GXCAS
- B1 (UMW): семья B1, основанная на их ПЗУ, по -видимому, распределена UMW
- B2: семья B2
- C: Семья c
- D1: семья D1
- D2 ( xy ): семья D2, где число XY в скобках составляет 5 -й байт ПЗУ (то есть байт 4). Датчики в каждой группе показаны в том, что я предполагаю, это их порядок производства, основанный главным образом на ПЗУ и несколько подтверждается при заказе, который мы их купили. Данные датчиков семейства A1 со значениями TRIM
0x00
не показаны.
Указанная максимальная температурная ошибка составляет ± 0,5 ° C при 0 ° C, и этот интервал отмечен на графике (A) тонкими пунктирными линиями. Мы видим, что у семейных датчиков A1 показаны, как правило, в диапазоне от -0,1 до +0,2 ° C, семейство A2 имеет -2 ° C, семейство B1 от 0 до -0,5 ° C, семейство B2 около -0,5 ° C, семейство C вокруг 0 ° C (недостаточно точек данных, чтобы сказать наверняка), семейства D1 между -1 и +1 ° C или хуже, и Family D2 -ну, из данных трудно сказать: они начали очень сильно с производительности Подобно семейному D1, и, возможно, или не может быть улучшен с тех пор (необходимо измерить больше датчиков, чтобы сказать наверняка. Ограниченные измерения в 2024 году указали, что они намного лучше, чем Family D1). Измерения проводились один раз каждые 10 секунд, чтобы избежать артефактов от самообывания датчиков, содержащихся в зондах (то есть мы обнаружили, что чтение, которое один раз за секунду повышает возвратную температуру).
Идеальные датчики будут иметь только шум дискретизации, то есть показания колеблются между двумя значениями, которые окружают фактическую температуру. Этот шум показан на графике (b) как стандартное отклонение ( std(T)
) номинально 20 измерений температуры. Если все измерения одинаковы, std(T)
равен нулю. Если именно одно измерения отличаются на одной стадии дискретизации (т.е. на 0,0625 ° C) от других 19, то std(T)
составляет 0,014 ° C, показанную в виде нижней пунктирной линии. Если данные равномерно разделены между двумя соседними значениями, то std(T)
составляет 0,031 ° C, показанную как верхнюю пунктирную линию. Точки данных между 0 и нижней пунктирной линией указывают на то, что для этого датчика использовалось более 20 образцов, а данные выше верхней линии указывают на то, что показания колебались в диапазоне не менее 2 этапов дискретизации. Мы видим, что датчики семей A, B и C имеют по сути только шум дискретизации. Напротив, Family D1 производит шокирующе шумный мусор (то есть фактическое разрешение измерения составляет менее 12 бит), а датчики семейного D2 также шумные на уровне выше шума дискретизации.
Время, необходимое для преобразования данных температуры, указывается как максимум 750 мс в таблице данных (12 -битное преобразование). Фактическое требуемое время имеет (при заданной температуре) хорошо продуцируемое, характерное значение для каждого датчика. Это время показано на графике (с). Семейство A1 занимает около 600 мс для обращения, в то время как семьи A2 и B показывают сравнительно большую межсенсорную изменчивость. Семьи C и D1 убедительно быстры при 30 и 11 мс соответственно, в то время как Family D2 занимает около 500 мс или немного меньше. Хотя все датчики, которые мы измерили, были быстрее, чем 750 мс при комнатной температуре, некоторые датчики семейства B приблизились к пределу.
Предупреждение
Отправка незарегистрированных кодов функций на датчик DS18B20 может сделать его навсегда бесполезным, например, если коэффициенты калибровки температуры перезаписаны [5]. Рекомендуемый способ идентификации поддельных датчиков состоит в том, чтобы проверить, не следует ли ПЗУ с шаблоном 28-xx-xx-xx-xx-00-00-00-xx [5]. (Хотя ПЗУ может быть перезаписан в семействах B1 и D1, чтобы имитировать подлинные датчики, мы не сталкивались с датчиками с поддельным ПЗУ [5].)
( Информация о чипах семей A, B, C, D, E, F, G и H происходит из моих собственных исследований датчиков в сочетании со ссылками ниже, как указано в эталонном номере [1-6,8-10,12 -18]. О'Садник.
Источники
Датчики или зонды с подлинными или клонированными DS18B20 были приобретены из источников Follwing. Обратите внимание, что только датчики, приобретенные у дистрибьюторов Offical Maxim, являются подлинными чипами, которые гарантированно обрабатывались правильно. Бесплатные образцы, предоставленные Maxim, интегрированными через их систему онлайн -заказа, с благодарностью признаны.
Официальные дистрибьюторы: Maxim Integrated, Digikey, Farnell, Mouser, RS Components eBay: 5HK1584, Alice1101983, Alphago-It, Andov73, Areyourshop-003, B2cpowershop2010, Bernard_netelectoros CZB6721960, D-9845, Deepenmind, Diy-Aduino, Diybox, Eckstein-Komponente, Enigma-Component-Shop, E*Shine, Efectronics, Ele-Parts, FR_AURORA, FZCREOINESTORE, GEEKAPPARELES, Good-Module, HappyBuddhatrading, Hermanestore, Icekappareles, Good-Module, HappyBuddhatrading, IcekApparelels, Good-Module, Happybudddhatrading2.shopor. jk_parts, Justpro, Kingelectronics15, London_shoppings_1, Lovell2013, Lucas89-8, Makershop, Mecklenburg8, Modul_technik, Moore_estates, Nouteclab, *orchid, polida2008, puretek-innovation, rammie_7, scuary1, sensmesmes Sevenshop888, Shenglongsi, Sparco888, Supry2014, Tancredielettronica, Umtmedia, Worlardchips, Xiaolin4, Xuan33_store, Yantzlf aliexpress: все товары-это бесплатный магазин доставки, Aokin Diomak HWA YEH, Liyuan Электронный, мега-полупроводник, магазин красного желтого, магазин Roarkit, Sensor World, Shengsun Sensor, Shenzhen High Caffice Products, Shop912692, Tenstar, Wavgat, Win Win., YLGA, YX Electron Оборудование, Conrad Electronic, Dfrobot, Drok, Elektroimportøren, Elfa Distrelec, Shanghai Jiutian Automation Equipment, Kjell & Company, LCSC, Dongguan Nangudi Electronics, Компоненты Ques
Ссылки
- DS18B20 "DS18B20 Программируемое разрешение 1-проводящего цифрового термометра", таблица DataShet 19-7487 Rev 6 7/19, Maxim Integrated.
- DS18S20 "DS18S20.
- AN4377 «Сравнение 1-проводных цифровых термометров DS18B20 и DS18S20», Maxim Integrated
- AN247 "DS18X20 EPROM CORRUPTION I.
- Собственные расследования 2019-2024, неопубликованные.
- Петрич, С., М. О'Садник, Ø. Kleven, I. Sæther (2019). Недорогой прибрежный буй для ледяных и методоцевых измерений. В материалах 25-й Международной конференции по портовой и океанической инженерии в арктических условиях (POAC), Делфт, Нидерланды, 9-13 июня 2019 г., 6 стр. (Ссылка)
- Вклад пользователя m_elias на https://forum.arduino.cc/index.php?topic=544145.15
- MAX31820 «1-проводной датчик температуры окружающей среды», DataSheet, Maxim Integrated.
- DS18B20 "DS18B20 Программируемое разрешение 1-проводящего цифрового термометра", таблица данных 043001, Dallas Semiconductor, 20pp.
- DS18B20 "DS18B20 Программируемое разрешение 1-проводящего цифрового термометра", Предварительный таблица данных 050400, Dallas Semiconductor, 27pp. (Путешественная машина)
- По частям из различных блогов и постов.
- QT18B20 "QT18B20 Программируемое разрешение 1-проводящего цифрового термометра", DataSheet Rev 061713, 7Q Technology.
- AIR6273 «Термины, определения и аббревиатуры контрафакт или электрические, электронные и электромеханические детали», отчет SAE Aerospace Information, июль 2019 года.
- UMW DS18B20 UMW DS18B20.
- MY18E20 MySentech Home Page (английский) со ссылкой на таблицы данных.
- MY18E20 FAQ MYSENTECH FAQ (китайский).
- NS18B20 «Высокий датчик цифровой температуры с одноразмерной температурой», NS18B20 Datasheet Rev. 1.0, Novosense.
- DS18B20T DataShing, Синбол.