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

 
 
> DS18B20 - протекают ли конверсия температуры и чтение данных одновременно?
zheka
сообщение Jan 8 2016, 19:23
Сообщение #1


Гуру
******

Группа: Участник
Сообщений: 2 072
Регистрация: 14-01-06
Пользователь №: 13 164



Господа, хочу подтвердить или опровергнуть свою догадку. Хотя конечно работающее устройство ее подтверждает само по себе, но я боюсь подвоха.

До этого с датчиками температуры DS18x работал пару раз и извлек для себя только то, что 9-ти битный режим - это точность 0.5 градуса, но зато 90 мсек для получения температуры, а 12-ти битный точность повыше, но время конверсии аж 750 мсек.
То есть если скорость критична, а точность неважна, 12-ти битный режим не подходит. В одном проекте 12-ти битный режим мне не подошел лишь потому, что в программе на экране часто обновляются данные и пауза в 750 мсек существенно заметна.
Меняя настройки и длительность паузы я случайно допустил ошибку и НЕ ПЕРЕВЕЛ датчик в 9 битный режим, а паузу уменьшил. К моему удивлению, данные на экране были верные.
То есть получается, что после того как мы дали команду на конверсию температуры, нам не обязательно ждать 750 мсек, датчик открыт для общения, просто данные в регистре чтения будут старые, так? А пока мы что-то делаем, датчик параллельно получает данные.

Я убрал задержку вообще. У меня в программе цикл - получение данных и вывод на экран. До 10 раз в секунду. То есть пока температура вычисляется, я безболезненно обращаюсь к датчику 7 раз и он 6 раз выдает мне одни и те же данные, и на 7-й раз - обновленные.

Я все правильно понял?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
adnega
сообщение Jan 19 2016, 08:12
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(kolobok0 @ Jan 19 2016, 00:23) *
тупые вопросы...
1) а Вы пробовали снять осциллограмму без датчиков?
2) в рукопашную пробовали работать, без uarta?

1). И что я должен увидеть? Импульсы RESET? Да, вижу.
2). Работаю через временные интервалы, формируемые и измеряемые таймером. Никакого UART.

Цитата(Леонид Иванович @ Jan 19 2016, 02:51) *
Может и не левые, а просто DS18B20P. У них вывод 3 no connect, поэтому даже если подать на него 3.3 В, датчик все равно работает на паразитном питании. Для обычных DS18B20 ничего подобного не наблюдается, вот схема и осциллограмма:

Я DS18B20-PAR никогда не видел. Судя по фото - это обычные DS18B20.
Я уверен, что их можно заставить работать (и я их заставил работать), но эффект есть.
Т.е. потенциал на ноге DQ в момент преобразования влияет на результат измерения даже при активном питании.
Я прошу повторить именно мой эксперимент и убедится, что это так.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Леонид Иванович
сообщение Jan 19 2016, 10:46
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 318
Регистрация: 21-07-06
Из: Минск
Пользователь №: 18 986



Цитата(adnega @ Jan 19 2016, 11:12) *
Я DS18B20-PAR никогда не видел. Судя по фото - это обычные DS18B20.


Лет 5 назад поставщики под видом DS18B20 продали DS18B20-PAR. Не помню, отличалась ли у них маркировка на корпусе.
У Вас явно идет паразитное питание. Измерьте ток вывода 3, тогда все станет ясно.


--------------------
Go to the top of the page
 
+Quote Post
adnega
сообщение Jan 22 2016, 11:24
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Леонид Иванович @ Jan 19 2016, 13:46) *
У Вас явно идет паразитное питание. Измерьте ток вывода 3, тогда все станет ясно.

Отцепил 3 ногу от схемы и подал туда внешнее питание.
Проверял на двух датчиках.

У первого:
- при питании менее 3.90В фиксированное значение температуры +127C;
- при 3.93В температура отрицательная -16C;
- при 3.94В -81C;
- при >= 3.96 все ок +104C (т.к. подогреваю феном)

У второго:
- при питании менее 3.60В фиксированное значение температуры +85C;
- при 3.63В температура отрицательная -16C (T F8 FE 4B 46 7F FF 08 10 C5 - 00);
- при 3.64В -64C (T F4 FB 4B 46 7F FF 0C 10 08 - 00);
- при >= 3.65 все ок +108C (т.к. подогреваю феном)

Может, вы их никогда менее 5В не питали, поэтому не знаете о таком поведении? ))

Добавлю: Ток через ногу 3 есть, т.к. вижу показания подпрыгивают >1 мА.

При активной подтяжке DQ на время преобразования оба датчика показывают корректную температуру даже при 2В на ноге VCC.
При напряжении <= 1В датчики перестают работать (пропадает опрос).
В диапазоне VCC от 1В до 2В может работать или не работать в зависимости от того, какой датчик греешь (датчики опрашиваются, но температура может быть не корректная).
Go to the top of the page
 
+Quote Post
Леонид Иванович
сообщение Jan 22 2016, 13:23
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 318
Регистрация: 21-07-06
Из: Минск
Пользователь №: 18 986



Цитата(adnega @ Jan 22 2016, 15:24) *
Может, вы их никогда менее 5В не питали, поэтому не знаете о таком поведении? ))


Да применял я эти датчики при питании 3.3 В, от этого картина не меняется. Вот пожалуйста осциллограмма при питании 3.3 В (по вертикали 1 В в клетке, по горизонтали 5 мс в клетке). Никакой просадки уровня на DQ нет. Показания датчика нормальные (+27 градусов). Подтяжка 4.7 кОм на +3.3 В.

Сообщение отредактировал Леонид Иванович - Jan 22 2016, 13:27
Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Go to the top of the page
 
+Quote Post
adnega
сообщение Jan 22 2016, 13:34
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Леонид Иванович @ Jan 22 2016, 16:23) *
Показания датчика нормальные (+27 градусов). Подтяжка 4.7 кОм на +3.3 В.

А погреть до 100C сможете?
Go to the top of the page
 
+Quote Post
Леонид Иванович
сообщение Jan 22 2016, 14:00
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 318
Регистрация: 21-07-06
Из: Минск
Пользователь №: 18 986



Попробовал снижать питание при комнатной температуре:
3.3 В - 25.7°C
3.0 В - 25.7°C
2.5 В - 25.7°C
2.4 В - 25.7°C
2.3 В - 25.6°C
2.2 В - 22.1°C - большая ошибка
2.1 В - показывает ерунду

Нагрел феном примерно до 90°C. Просадки на линии DQ по-прежнему нет.
3.3 В - 90°C (на десятые градуса внимания не обращаю)
3.0 В - 90°C
2.5 В - 90°C
2.4 В - показывает ерунду


--------------------
Go to the top of the page
 
+Quote Post
adnega
сообщение Jan 22 2016, 14:37
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Леонид Иванович @ Jan 22 2016, 17:00) *
Нагрел феном примерно до 90°C. Просадки на линии DQ по-прежнему нет.

Вероятно, у вас линия DQ подтягивается активно - МК выдает на соответствующую ногу лог "1".
Чтобы это проверить прошу вместо резистора R16 на вашей схеме включить обычный диод: катодом к "OWP", анодом к R26.
Если и в этом случае не будет просадки во время преобразования и "левой температуры" при 3.3В, то даже не знаю что и ответить.
Go to the top of the page
 
+Quote Post
Леонид Иванович
сообщение Jan 22 2016, 17:13
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 318
Регистрация: 21-07-06
Из: Минск
Пользователь №: 18 986



Цитата(adnega @ Jan 22 2016, 18:37) *
Вероятно, у вас линия DQ подтягивается активно - МК выдает на соответствующую ногу лог "1". Чтобы это проверить прошу вместо резистора R16 на вашей схеме включить обычный диод: катодом к "OWP", анодом к R26.


Нет, активно не подтягивается. Я проверил по-другому - подключил резистор 10 кОм между DQ и землей. При питании 5 В уровень на DQ сразу уменьшился примерно до 3.3 В (как во время чтения, так и во время преобразования). Это говорит о том, что работает только подтяжка 4.7 кОм.

Цитата(adnega @ Jan 22 2016, 18:37) *
Если и в этом случае не будет просадки во время преобразования и "левой температуры" при 3.3В, то даже не знаю что и ответить.


Как может быть "левая" температура при 3.3 В, если это в допустимых пределах питания? Делать сильную подтяжку DQ при обычном питании нигде в документации не требуют, так что обязано работать. Просаживать линию DQ при наличии питания на VDD термометр не может. Питание с DQ и VDD собирается через диоды, а выходной транзистор закрыт, когда нет обращения по шине. Есть еще постоянно включенный генератор тока с DQ на землю, но ток там маленький, порядка 5 мкА.

Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Go to the top of the page
 
+Quote Post
adnega
сообщение Jan 22 2016, 17:32
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Леонид Иванович @ Jan 22 2016, 20:13) *
Просаживать линию DQ при наличии питания на VDD термометр не может.

В этом у нас главное отличие. Я готов сделать и прислать прошивку для какой-нить отладочной платы, чтоб у нас были одинаковые условия эксперимента.
Какие платы есть у вас? У меня есть зоопарк всяких STM32-DISCOVERY.
Но для начала проверю все датчики, какие у меня есть.

Кста, а где ТС? Ему вообще интересна эта тема?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- zheka   DS18B20 - протекают ли конверсия температуры и чтение данных одновременно?   Jan 8 2016, 19:23
- - adnega   Цитата(zheka @ Jan 8 2016, 22:23) Я все п...   Jan 8 2016, 20:13
|- - zheka   Цитата(adnega @ Jan 8 2016, 23:13) Нет. В...   Jan 8 2016, 20:28
||- - adnega   Цитата(zheka @ Jan 8 2016, 23:28) Планиир...   Jan 8 2016, 20:39
||- - zheka   Цитата(adnega @ Jan 8 2016, 23:39) Вы как...   Jan 8 2016, 20:44
|- - Леонид Иванович   Цитата(adnega @ Jan 9 2016, 00:13) Во вре...   Jan 16 2016, 22:00
|- - adnega   Цитата(Леонид Иванович @ Jan 17 2016, 01...   Jan 17 2016, 09:34
- - kolobok0   Цитата(zheka @ Jan 8 2016, 22:23) ...зато...   Jan 8 2016, 21:12
|- - adnega   Цитата(kolobok0 @ Jan 9 2016, 00:12) ЗЫ В...   Jan 8 2016, 21:47
|- - kolobok0   Цитата(adnega @ Jan 9 2016, 00:47) С меня...   Jan 9 2016, 04:15
- - zheka   что за хрень.... Пытался настроить датчик, уменьши...   Jan 9 2016, 08:17
|- - kolobok0   Цитата(zheka @ Jan 9 2016, 11:17) ...Как ...   Jan 9 2016, 08:38
- - zheka   ................ разобрался с 9-ти битным пересчет...   Jan 9 2016, 08:52
|- - adnega   Цитата(zheka @ Jan 9 2016, 11:52) Если до...   Jan 9 2016, 10:12
- - zheka   Погодите... а мой даташит другое говорит Цитата–25...   Jan 9 2016, 10:24
|- - adnega   Цитата(zheka @ Jan 9 2016, 13:24) То есть...   Jan 9 2016, 10:40
- - zheka   Спасибо, разобрался, адаптировал и под 12-ти и под...   Jan 9 2016, 11:33
|- - kolobok0   Цитата(zheka @ Jan 9 2016, 14:33) ...шаг ...   Jan 10 2016, 09:53
|- - halfdoom   Цитата(zheka @ Jan 9 2016, 14:33) когда в...   Jan 11 2016, 08:42
|- - kolobok0   Цитата(zheka @ Jan 9 2016, 14:33) ..Это в...   Jan 17 2016, 05:21
- - Ruslan1   Цитата(zheka @ Jan 8 2016, 21:23) До этог...   Jan 9 2016, 20:06
- - zheka   Да господи, по бытовому выразился..   Jan 10 2016, 05:26
- - Леонид Иванович   Нет такого и на практике.   Jan 17 2016, 21:40
|- - adnega   Цитата(Леонид Иванович @ Jan 18 2016, 00...   Jan 18 2016, 12:17
- - adnega   ИТОГО: провел я обещанный эксперимент. Имеем схем...   Jan 18 2016, 13:58
|- - kolobok0   Цитата(adnega @ Jan 18 2016, 16:58) ИТОГО...   Jan 18 2016, 21:23
|- - Леонид Иванович   Цитата(adnega @ Jan 18 2016, 16:58) Может...   Jan 18 2016, 23:51
|- - Леонид Иванович   Есть STM32 Value line discovery (на STM32F100RBT6B...   Jan 22 2016, 18:00
|- - adnega   Цитата(Леонид Иванович @ Jan 22 2016, 21...   Jan 22 2016, 18:12
- - adnega   С радостью готов признать, что Леонид оказался пра...   Jan 22 2016, 22:45
|- - kolobok0   Цитата(adnega @ Jan 23 2016, 01:45) ....н...   Jan 24 2016, 19:50
|- - Леонид Иванович   Цитата(adnega @ Jan 23 2016, 01:45) Проце...   Jan 25 2016, 07:05
|- - adnega   Цитата(Леонид Иванович @ Jan 25 2016, 10...   Jan 25 2016, 07:26
- - OlegH   Да может часть датчиков просто китайские, разного ...   Jan 25 2016, 06:26


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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 08:48
Рейтинг@Mail.ru


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