реклама на сайте
подробности

 
 
> Термодатчики DS18x20 от Dallas, обмен опытом
VadikT
сообщение Aug 31 2004, 08:48
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 77
Регистрация: 25-08-04
Пользователь №: 538



Всем привет!
Если кто работал с DS18x20, давайте поговорим о глюках этого устройства.

Я столкнулся, буквально в первый раз использования этого девайса серии B7, с таким глюком: на след. день работы подал питание и обнаружил, что один из датчиков отдает мне температуру с враньем в +60 с чем-то градусов. В доке про это ничего не сказано. Проверил софт - все нормально. Начал искать.
В доке одним предложением упомянуто, что датчики калиброваны для достижения точности в +-0,5 гр. С. Размышлял так: датчик цифровой и, если калиброван, значит, где-то должны храниться калибровочные коэффициенты. Раз кристалл работает с EEPROM, значит, там и должны храниться. Но в доке про это не найдете ни слова!
Позвонил в Rainbow, рассказал о своей проблеме и свое предположение. Неохотно, но все же мне рассказали, что серию B7 особо коснулась проблема "слетания" EEPROM при подаче питания, что у меня и произошло на второй день эксплуатации датчиков! В целом, все было замечательно, но только вот это….smile.gif Мне сказали, что об этом коротко написано на www.1wire.org и пояснили, что по запросу Даллас может выслать один Application Note, где говорится об этой проблеме и даются коэффициенты (2 байта), чтобы возможно было восстановить точность до +-2 гр. С.
Зашел на www.1wire.org, прочитал о проблемке и о том, что AN247 раньше был здесь в свободном доступе, а теперь Даллас высылает его только по запросу (?!!). Написал в Даллас, прислали AN247. Там говорится о 2 калибровочных регистрах TRIM1 и TRIM2, о командах, позволяющих их читать, писать и копировать в EEPROM. Хотя в доке про эту часть – ни слова! Там же написали о естественном логическом соображении следить за EEPROM при перезагрузке и, если слетело, – перезаписывать.
Физически количество перезаписей EEPROM – весьма большое. И сам факт, что при повышенных температурах EEPROM не продержится долго, заставляет документировать пользовательский программный доступ к калибровочным коэффициентам (да и сам процесс калибровки тоже). Но нехороший момент в том, что вы, решив использовать привлекательный датчик DS18B20 в своем устройстве, можете даже не узнать, что же с ним случилось (и недоумевать о причинах последствий, к которым это может привести), т.к. на сайте Максима вы об этом нигде не прочитаете. (Переживают люди за имидж свой что ль?)
Далее написал в Даллас с вопросом о том, как можно откалибровать их датчик, чтобы получить исходную точность. Ответили, что калибруются они по одной точке (я сначала думал, что по двум, и никак не мог понять уравнения для TRIM1, TRIM2) Про уравнение - что-то короткое и мало понятное.
Пришлось самому проводить полный курс измерений, подставляя последовательные значения для TRIM1 и TRIM2 и анализировать это в EXCEL’e. Таким образом удалось восстановить исходную точность и узнать, что же все-таки нужно делать с интегральными датчиками с цифровым выходом, чтобы они были привлекательными не только на словах, но и на деле....smile.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
kinetic
сообщение Apr 1 2017, 17:42
Сообщение #2





Группа: Участник
Сообщений: 5
Регистрация: 26-10-14
Пользователь №: 83 348



У меня такой вопрос, а как убедится в актуальности считанной температуры?
Поясню, датчик на паразитном питании, линии заведомо не доверяем.
Алгоритм у меня такой:
1. Ресет датчика
2. Читаю серийник, проверяю crc
3. Даю команду конверт, подтягиваю линию
4. Сплю 0,8сек, снимаю подтяжку
5. Ресет, скип ром, читаю блокнот, проверяю crc
Если на 4ом этапе что то "случайно"(исхожу из максимально плохой ситуации) коротнет цепь, получаю ответ с корректной crc, но там будет 85'C...
В моей ситуации температура 85 считается корректной.
Как детектировать такую ситуацию? Может флаг/команда есть какая чтобы понять что 85 это дефолтное значение, а не измеренное?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- VadikT   Термодатчики DS18x20 от Dallas   Aug 31 2004, 08:48
- - VadikT   Есть еще один вопрос по DS18x20, который пока я не...   Aug 31 2004, 08:59
- - olegk   Privet ti ne mog bi etu DOKU ot Dallas mne vislat...   Sep 2 2004, 15:00
- - COMA   VadikT, не мог бы ты поделится этим любопытным док...   Sep 2 2004, 17:05
- - COMA   Вот стоило самому поискать... http://www.elin.ru...   Sep 2 2004, 17:17
- - Valery_Y   Те же грабли были и с DS1621 - там, видимо, измери...   Dec 13 2004, 17:55
- - Miron   Спасибо за информацию. Я работаю с датчиками DS182...   Feb 21 2005, 13:05
|- - PraNkiSh   а что по дальности получается ? тащил сквозь 6 эта...   Feb 25 2005, 22:45
|- - Miron   Цитата(PraNkiSh @ Feb 26 2005, 01:45)а что по...   Feb 28 2005, 07:47
- - Serjio   А какой драйвер применяли ? Мы пробовали DS2480B. ...   Feb 28 2005, 11:45
- - Miron   Кто нибудь занимался метрологической поверкой датч...   Mar 1 2005, 13:42
|- - sash75   Цитата(Miron @ Mar 1 2005, 16:42) Кто ниб...   May 19 2006, 05:42
|- - Miron   Метрологию отложили в долгий ящик. Но пришлось воз...   May 22 2006, 06:52
||- - _3m   сейчас по всему миру поступают контрафактные ds18b...   Jul 6 2016, 09:09
|- - Andy-L   Цитата(sash75 @ May 19 2006, 09:42) Цитат...   Jul 24 2006, 05:54
- - Popkov   Спасибо огромное, а то у меня была пару раз такая ...   Mar 15 2005, 13:16
- - FastenFast   Руские манулы на датчик есть?   Nov 28 2005, 15:54
- - Artem_Petrik   По поводу дальности. У меня, при использовании сет...   Jul 23 2006, 14:27
- - Эдди   Если кому интересно по точностям DS18, я проверял ...   Jul 7 2016, 06:02
- - jcxz   Цитата(kinetic @ Apr 1 2017, 19:42) Как д...   Apr 2 2017, 08:49


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 04:29
Рейтинг@Mail.ru


Страница сгенерированна за 0.02017 секунд с 7
ELECTRONIX ©2004-2016