Как отличить поддельные датчики DS18B20?
Как отличить поддельные датчики DS18B20?
В ходе эксплуатации цифровых датчиков температуры 1-Wire Dallas DS18B20 пользователи иногда сталкиваются с тем, что датчики от некоторых производителей, особенно, по стоимости ниже средне рыночной, демонстрируют ненадежную работу. Чаще всего это проявляется в виде "зависания" датчика спустя некоторое время эксплуатации (перестает отвечать на запросы) или даже аппаратного выхода из строя (начинает саморазогреваться).
Статьи

Как отличить поддельные датчики DS18B20?

В ходе эксплуатации цифровых датчиков температуры 1-Wire Dallas DS18B20 пользователи иногда сталкиваются с тем, что датчики от некоторых производителей, особенно, по стоимости ниже средне рыночной, демонстрируют ненадежную работу. Чаще всего это проявляется в виде "зависания" датчика спустя некоторое время эксплуатации (перестает отвечать на запросы) или даже аппаратного выхода из строя (начинает саморазогреваться).

Хуже всего когда неисправный дачтик выходит из строя и начинает влиять на работу остальных "хороших" датчкиов подключенных к шине, например, создавая конфликтные ситуации пересылая по шине "мусор".


Данный вопрос был уже освящен в ряде статей:

https://habr.com/ru/post/470217/

https://www.drive2.ru/b/513061538530066675/


По этой причине мы подходим крайне аккуратно к выбору поставщика и производителя датчиков DS18B20, которые можно купить у нас под артикулами SN18B20, NM18B20, MP18B20.

Помимо работы только с проверенными поставщиками, мы обязательно делаем проверку закупленной партии датчиков на предмет ее качества и соответствия требованиям.

Тем не менее, иногда возникает необходимость быстро проверить конкретный экземпляр датчика DS18B20. Самым простым и в то же время эффективным критерием для "отсева" поддельных датчиков является проверка содержимого "сырых" измерений (команда чтения буфера данных [0xBE]).

Согласно официальной документации на датчик, содержимое карты памяти в виде 9 байт (включая CRC) должно выглядеть вот так:


Обратите, пожалуйста, внимание на байты 5 и 7: их значения зафиксированы и равны 0xFF и 0x10 соответственно.

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

Для быстрой проверки датчика можно использовать модуль MP712m Laurent-5, позволяющий выводить "сырые" измерения DS18B20 в виде текстового KE-сообщения.

Для этого заходим в WEB интерфейс модуля (по умолчанию статический адрес 192.168.0.101), выбираем раздел "Настройки".


Убеждаемся что канал 'А' шины 1-Wire настроен на работу с датчиками DS18B20, питание на шину подано.


В подразделе настройки выдачи Ke-сообщений, выбираем сообщение [DS18]. Настроим его так, что бы "сырые" измерения датчиков DS18B20 выдавались в TCP сервер модуля (по умолчанию, доступный на TCP порту 2424).


Теперь дело осталось за малым - подключить испытываемый датчик к шине 1-Wire, канал 'А'. Т.е. нужно использовать клеммы модуля 1WA (сигнал), PA (питание) и GND. Поскольку будем подключать датчики по одному с коротким кабелем (1-2 м), то можно не использовать внешний подтягивающий резистор (обязательный в случае длинной линии).


Перейдем в раздел "1-Wire датчики температуры" в Web интерфейсе, чтобы убедиться, что датчик подключен и работает. Датчик обнаружен и дает разумные показания температуры.

Мастер Кит Как отличить поддельные датчики DS18B20?  


Если вы меняли датчики "на лету" то, возможно. нужно будет отсканировать шину заново.

 


Теперь подключимся к TCP серверу модуля, чтобы получить заказанное туда сообщение [DS18]. Можно использовать любой удобный вам терминал (telnet, putty и т.д.). Иногда удобнее под ОС Windows может оказаться утилита HERCULES. Выбираем раздел "TCP клиент", указываем реквизиты TCP сервера модуля Laurent-5 (192.168.0.101 : 2424) и подключаемся. В терминале увидим сообщения модуля [DS18], содержащие результат чтения памяти датчика в виде 9 байт данных в HEX виде.

 


Видим следующий результат чтения данных: 9A 01 4B 46 7F FF 0C 10 9F


Этот датчик - не подделка.


Теперь подключим к модулю испытуемый "подозрительный" DS18B20. В случае необходимости - пересканируем шину заново. Вроде бы датчик работает и дает разумные показания. Но...

#M,DS18,1,A10155057F7E816629
#M,DS18,1,A00155057F7E81666A

Вместо зафиксированных значений на позиции байта 5 и 7 видим совсем не те значения, которые должны быть а именно: A0 01 55 05 7F 7E 81 66 6A


С далеко не нулевой вероятностью этот датчик рано или поздно может начать "капризничать" и срывать работу всей шины, со всеми остальными датчиками подключенными к ней.

© Дмитрий Иванов
07 Ноября 2019 года

3494252

Рейтинг@Mail.ru

Почему выбирают Мастер Китнас


Мы в Сети


© 1999-2022 Мастер Кит