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

 
 
5 страниц V  < 1 2 3 4 > »   
Reply to this topicStart new topic
> Забавное поведение датчика BS18B20
haker_fox
сообщение Dec 3 2011, 00:50
Сообщение #16


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (ILYAUL @ Dec 3 2011, 00:26) *
Так может , это вообще не датчик , а RS485 дурит. Я свой уличный датчик читаю один раз в минуту и то думаю , что это очень часто.

На 485 не похоже, т.к. кроме температуры читаются другие датчики, их показания верны. Да и протокол с контрольной суммой.

Кстати, ошибка КС датчика исчезла. Сегодня утром проверяю температуру - на датчике -15, перезагрузил программно устройство, появилась реальная температура -20.

Такое ощущение, что то ли задача перестает выполняться (опрашивать датчик), то ли какие-то сервисы ОС перестают функционировать... данные с датчика как бы "замирают", "замораживаются".

Ладно, буду работать дальше... О результатах сообщу, м.б. кому-нибудь и будет полезен этот материал.


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
adnega
сообщение Dec 3 2011, 06:07
Сообщение #17


Гуру
******

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



Была ситуация очень напоминающая Вашу, только датчик как бы... "сжаривался" при t > 90C.
Вообще не отрабатывалось условие START.
Времянки делал через UART (распространенное явление), так вот при высокой температуре времянки датчика "уплыли" и в UART приходило не то, что ожидалось.
Поборол софтово.
Go to the top of the page
 
+Quote Post
314
сообщение Dec 3 2011, 08:20
Сообщение #18


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

Группа: Участник
Сообщений: 139
Регистрация: 17-08-07
Пользователь №: 29 855



А то что у Вас АВР на улицу вынесен, случаем не с длиной проводов связано, в том смысле что на 10м провода сбои появляются, а на 0.5 нормально работает? И датчик с паразитным питанием или полным?
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Dec 3 2011, 09:14
Сообщение #19


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (314 @ Dec 3 2011, 16:20) *
А то что у Вас АВР на улицу вынесен, случаем не с длиной проводов связано, в том смысле что на 10м провода сбои появляются, а на 0.5 нормально работает? И датчик с паразитным питанием или полным?

На длину проводов не похоже, т.к. идет достаточно частый (каждые 150 мс) обмен с МК, за сутки непрерывной работы 2 ошибки из 46 тыс. переданных и принятых пакетов. Другие датчики нормально опрашиваются.
Датчик с полным питанием.

И все таки все больше похоже, что низкоприоритетная задача опроса датчика наглухо перестает работать. Выходишь на улицу, дышишь на датчик, держишь его в теплых руках, а программа на компе "исправно" показывает -14. При нормальной работе, показания всегда меняются. Что интересно, задачи более высокого приоритета продолжают работать (там АЦП опрашивается). А задачи приоритетом еще ниже тоже встают, это видно по отсутствию мигания служебного светодиода.

Вот так вот я совершенно зря подозревал датчик...)))


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Dec 5 2011, 02:05
Сообщение #20


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Полагаю, что проблема решена. 1,5 суток ни одного сбоя не замечено. Температура регистрируется правильно.

В чем было дело? Элементарно неверно былиз заданы размеры стеков для задач. После увеличения размера стеков задача опроса датчика и еще одно (приоритетом ниже), сбои пропали.

Большое спасибо Всем за помощь, участие и советы!!!


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jan 1 2013, 07:09
Сообщение #21


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



И все таки оно плавает.... Столкнулся с этим вот сейчас. Вчера все работало. Сегодня утром - ошибка CRC. Что интересно, датчик расположен на этот раз на плате. Тот же самый код великолепно читает DS1990.

Вот прикоснулся рукой к DS18B20, температура изменилась - и КС снова совпала... Я уже разочаровался в этом мире) Еще 1 января)

Если игнорировать КС, то температура адекватная.


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
RabidRabbit
сообщение Jan 1 2013, 07:30
Сообщение #22


Местный
***

Группа: Свой
Сообщений: 397
Регистрация: 3-12-09
Из: Россия, Москва
Пользователь №: 54 040



Либо стека всё же не хватает, либо неверна процедура подсчёта CRC, таковы мои версии sm.gif
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jan 1 2013, 07:44
Сообщение #23


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (RabidRabbit @ Jan 1 2013, 16:30) *
Либо стека всё же не хватает, либо неверна процедура подсчёта CRC, таковы мои версии sm.gif

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

Я же правильно считаю:
1. Принимаю scratchpad в буфер - 9 байт.
2. Подсчитываю CRC8 для 8 байт буфера.
3. Сравниваю эту КС с 9-м байтом буфера.

Уже шарики за ролики заходят)


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
adnega
сообщение Jan 1 2013, 09:31
Сообщение #24


Гуру
******

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



Цитата(haker_fox @ Jan 1 2013, 11:44) *
Две разные процедуры подсчета выдают одно и тоже значение вкупе с онлайн-калькулятором
Причем если датчик "погреть" пальцами, то CRC начинает сходится...

Я же правильно считаю:
1. Принимаю scratchpad в буфер - 9 байт.
2. Подсчитываю CRC8 для 8 байт буфера.
3. Сравниваю эту КС с 9-м байтом буфера.

Уже шарики за ролики заходят)

А еще бывает, что тайминги "плывут" взависимости от температуры.
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jan 1 2013, 14:04
Сообщение #25


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (Herz @ Jan 1 2013, 21:20) *
Да потому что не тем в новогоднее утро занимаетесь. Оно для другого, ИМХО, изобретено.

Да нормааааально rolleyes.gif
Я же это с другими делами делаю)

Да, похоже, что дело чисто программное.

Снова напоролся на свои же грабли.

Но я почему вопрос поднял, дело в том, что о этих датчиках известно, что иногда у них слетает EEPROM, либо они просто "погибают". Подобные темы я нашел на этом форуме... Вот и не знал, куда податься....


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Jan 1 2013, 17:32
Сообщение #26


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Ну EEPROM они победили и даже аппноут убрали с сайта. Я им лично вопрос по сему поводу задавал. Сейчас проверил , аж три датчика на одной линии с калькулятором - ни разу CRC не сошлась , а температуру показывают адекватную и дружненько так. Проверяю по BMP085.


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jan 2 2013, 01:47
Сообщение #27


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (ILYAUL @ Jan 2 2013, 02:32) *
ни разу CRC не сошлась

Энто как? Может быть у Вас тоже дело в софте?


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jan 2 2013, 08:21
Сообщение #28


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Еще и времянки в драйвере 1wire были "замечательными": при положительной температуре все считывается отлично. Выставляешь датчик на улицу - температура плюс/минус за тысячу, КС не сходится))) Как я понимаю, у датчика RC-генератор внутри, которые от температуры немного плавает, и времянки шины плывут... Ну тема для начинающих, а!

________________________________
З.Ы. Все в куче: стэк, времянки, праздники...


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Jan 2 2013, 12:26
Сообщение #29


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата
Может быть у Вас тоже дело в софте?

Да скорее не в софте, USART- там думать ни о чём не надо. Вот только драйвер согласования на биполярниках , что-то мне кажется "дурит", соберу его на полевиках , посмотрю что-будет.


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
kolobok0
сообщение Jan 2 2013, 17:08
Сообщение #30


практикующий тех. волшебник
*****

Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417



Цитата(haker_fox @ Jan 2 2013, 12:21) *
..у датчика RC-генератор внутри...


тактовый да. а измеряющий - снаружи естественно резистор, термо который sm.gif

с временнЫми интервалами - строго по даташиту. и будет вам счастье. если не паразитное питание то вплоть до сотен метров по пром зоне обычной лапшой. если завалы наблюдаете - то подтягивайте линию возле самого датчика (как указано в некоторых даташитах) и снова счастье вас не забудет! sm.gif

и вообще С Новым Годом!
Go to the top of the page
 
+Quote Post

5 страниц V  < 1 2 3 4 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


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


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