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

 
 
> 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 22 2016, 22:45
Сообщение #2


Гуру
******

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



С радостью готов признать, что Леонид оказался прав - никакой подтяжки DQ не требуется, линия DQ не просаживается.
Точнее сказать: существуют такие датчики, которые работают именно так...
Но из 11 датчиков у меня есть два очень странных:
Первый (p1) общается по шине, но ничего кроме +85 или +127 отдавать в качестве температуры не может. Т.е. это явно неисправный.
Второй ведет себя интересней. При пассивной подтяжке и VCC < 4.0В просаживает линию (p2).
При активной подтяжке и VCC < 3.0В просаживает DQ импульсно (p3). При этом температура не корректная.
Датчики питаются по 3 ноге, т.к. изменение напряжения на ней играет роль.
Самое интересное, что второй датчик стоял у меня в тестовом кабеле, с помощью которого я вел все разработки.
Остальные датчики не просаживают линию даже при высоких T > +110С.
Процент неисправных меня настораживает. Попробую собрать больше статистики, ибо используем эти датчики в промышленных масштабах.

Кому интересно, прицепляю прошивку для STM32F4DISCOVERY, с помощью которой можно тестировать DS18B20.
Подключение:
- PA2 - console_tx;
- PA3 - console_rx;
- PB4 - ow_tx;
- PB5 - ow_rx;
- LED_GREEN[PD12] - светодиод "работа". мигает раз в секунду;
- LED_RED[PD14] - светится в момент преобразования температуры. можно синхронизировать осциллограф (желтый луч на прицепленных картинках);
- LED_ORANGE[PD13] - светится в режиме активной подтяжки;
- LED_BLUE[PD15] - светится если хотя бы один из датчиков на шине выдает T > +30С;
- кнопка USER[PA0] - при удержании переключает пассивную подтяжку на активную и наоборот.

Консоль работает с параметрами 115200-8N1.
Доступные команды:
"help" - показывает список команд;
"who" - показывает информацию о прошивке;
"reboot" - перезагружает контроллер;
"pullup=passive" - включает пассивную подтяжку;
"pullup=active" - включает активную подтяжку.
Конец команды - символ <CR>.

В консоль выводится информация об идентификаторах и данных датчиков на шине.
{ID 28 33 91 6C 02 00 00 1D} [T 50 05 4B 46 7F FF 0C 10 1C - 00] -> ds18b20 +85

Поддерживаются датчики типов ds1820 и ds18b20.

Для подключения датчика соединить PB4 и PB5 и подать на DQ.
VCC можно брать с платы или с внешнего БП.

Кому не лень и есть датчики, прошу проверить.
При пассивной подтяжке и питании датчика от "3V" с платы, должен загореться синий светодиод, если датчик просаживает линию и/или неисправно преобразует температуру. Но датчик не должен быть горячее +30C.
Красный светодиод будут загораться в момент преобразования температуры (на 1 сек). Если не загорается - значит датчик неисправен и/или неверно подключен.

Кста, исходный вопрос ТС пока остается без ответа. Думаю, не стоит заморачиваться, т.к. ТС, вроде, хотел поправить софт.
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
 

Прикрепленные файлы
Прикрепленный файл  test_ds18b20.v0.0.1.20160122.bin.zip ( 5.13 килобайт ) Кол-во скачиваний: 17
 
Go to the top of the page
 
+Quote Post
Леонид Иванович
сообщение Jan 25 2016, 07:05
Сообщение #3


Местный
***

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



Цитата(adnega @ Jan 23 2016, 01:45) *
Процент неисправных меня настораживает.


Так а какой процент неисправных из того применяемого "промышленного" количества? Пока речь идет всего о двух неисправных датчиках.

Цитата(OlegH @ Jan 25 2016, 09:26) *
Да может часть датчиков просто китайские, разного разлива...


Китайцы делают аналог, но он маркируется по-другому:



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

Прикрепленные файлы
Прикрепленный файл  QT18B20.pdf ( 444.39 килобайт ) Кол-во скачиваний: 538
Прикрепленный файл  QT18B20_AN.pdf ( 1.24 мегабайт ) Кол-во скачиваний: 22
 


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


Гуру
******

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



Цитата(Леонид Иванович @ Jan 25 2016, 10:05) *
Так а какой процент неисправных из того применяемого "промышленного" количества? Пока речь идет всего о двух неисправных датчиках.

Большого внимания не придавал этому явлению: подумаешь, бракованная микросхема - в мусорку и забыть.
Периодически возникают жалобы, но мы обходимся простой заменой. Неисправные датчики к нам даже не возвращаются.
В основном проблемы с датчиками, которые для воды, но их банально заливает.
Скорее всего, мои проблемные датчики появились у меня как раз с производства (года 2 или 3 назад, уже не помню),
и, вероятно, из-за "проблем" у тамошних парней.

Попробую эту проблему актуализировать. Может, устрою 100% входной контроль.

Кста, Поставщик у нас надежный, поэтому всякий кетай отметаем сразу. Может быть датчики исходно рабочие но по каким-то причинам так портятся.
Например, переполюсовка, повышение VCC до 12-24В или что-то еще простое и повторимое.
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
- - adnega   Цитата(kolobok0 @ Jan 19 2016, 00:23) туп...   Jan 19 2016, 08:12
|- - Леонид Иванович   Цитата(adnega @ Jan 19 2016, 11:12) Я DS1...   Jan 19 2016, 10:46
|- - adnega   Цитата(Леонид Иванович @ Jan 19 2016, 13...   Jan 22 2016, 11:24
|- - Леонид Иванович   Цитата(adnega @ Jan 22 2016, 15:24) Может...   Jan 22 2016, 13:23
|- - adnega   Цитата(Леонид Иванович @ Jan 22 2016, 16...   Jan 22 2016, 13:34
|- - Леонид Иванович   Попробовал снижать питание при комнатной температу...   Jan 22 2016, 14:00
|- - adnega   Цитата(Леонид Иванович @ Jan 22 2016, 17...   Jan 22 2016, 14:37
|- - Леонид Иванович   Цитата(adnega @ Jan 22 2016, 18:37) Вероя...   Jan 22 2016, 17:13
|- - adnega   Цитата(Леонид Иванович @ Jan 22 2016, 20...   Jan 22 2016, 17:32
|- - Леонид Иванович   Есть STM32 Value line discovery (на STM32F100RBT6B...   Jan 22 2016, 18:00
|- - adnega   Цитата(Леонид Иванович @ Jan 22 2016, 21...   Jan 22 2016, 18:12
|- - kolobok0   Цитата(adnega @ Jan 23 2016, 01:45) ....н...   Jan 24 2016, 19:50
- - OlegH   Да может часть датчиков просто китайские, разного ...   Jan 25 2016, 06:26


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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 09:28
Рейтинг@Mail.ru


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