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

 
 
 
Reply to this topicStart new topic
> Странности при работе с DS1820
Barmaley67
сообщение Aug 25 2006, 15:56
Сообщение #1





Группа: Новичок
Сообщений: 10
Регистрация: 5-04-06
Пользователь №: 15 851



При работе с датчиками DS1820 заметил такую странность: при стандартном (рекомендованном) подтягивающем резисторе (5,1 кОм) работает только часть датчиков (процентов 30), подключение +,-,данные. И только когда я заменил резистор на 100 кОм заработали все датчики. В чем причина? Где я допустил ошибку?
Go to the top of the page
 
+Quote Post
NBK
сообщение Aug 25 2006, 16:15
Сообщение #2





Группа: Новичок
Сообщений: 10
Регистрация: 26-07-06
Пользователь №: 19 102



Цитата(Barmaley67 @ Aug 25 2006, 19:56) *
При работе с датчиками DS1820 заметил такую странность: при стандартном (рекомендованном) подтягивающем резисторе (5,1 кОм) работает только часть датчиков (процентов 30), подключение +,-,данные. И только когда я заменил резистор на 100 кОм заработали все датчики. В чем причина? Где я допустил ошибку?

А на линии - только один датчик или несколько?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 25 2006, 16:18
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Barmaley67 @ Aug 25 2006, 18:56) *
В чем причина? Где я допустил ошибку?

В устройстве к которому Вы подключаете датчик уже есть подтягивающий резистор.
При 100K датчик не способен работать в принципе.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Barmaley67
сообщение Aug 25 2006, 18:25
Сообщение #4





Группа: Новичок
Сообщений: 10
Регистрация: 5-04-06
Пользователь №: 15 851



На линии один датчик (есть идея подключить несколько, но пока бы с одним разобраться). Датчик подключен к PIC16F84A (вывод RA4 порта А, а там вроде как нет подтягивающих резисоров). И с другой стороны когда убираю резистор, то на ЖКИ выводятся все нули (тип, CRC, заводской номер), чего при наличии подтягивающего резистора быть не должно. При установке же резистора на 30 кОм работает половина датчиков (в наличии есть 10), при 100 кОм работают все. sad.gif
Go to the top of the page
 
+Quote Post
lof
сообщение Sep 2 2006, 00:34
Сообщение #5





Группа: Новичок
Сообщений: 6
Регистрация: 12-04-05
Пользователь №: 4 084



Я цеплял DS1820 к AVR AT8535 c длинной линии около 12метров по витой паре, количество датчиков было 6. Проблема была только с формированием времянки для самых дальних датчиков. Резисторы стояли как доке 4.7к. Я вынужден был в конце концов разделить датчики на две группы ( дальние и ближние ) и кинуть две витые пары. А какие расстояния хотите заложить Вы. И что используете для линии связи, может проблема именной в ней?
Go to the top of the page
 
+Quote Post
makwen
сообщение Sep 3 2006, 16:06
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 3-09-06
Из: Украина
Пользователь №: 20 043



Также соединял AT89C5131 c DS1820 и проблем не каких не возникало. Подтягивающий резистор был 4,7кОм. Может допущена ошибка в схеме?!
Go to the top of the page
 
+Quote Post
Andy-L
сообщение Sep 4 2006, 05:39
Сообщение #7


Участник
*

Группа: Свой
Сообщений: 64
Регистрация: 18-05-06
Пользователь №: 17 211



Цитата(Barmaley67 @ Aug 25 2006, 19:56) *
При работе с датчиками DS1820 заметил такую странность: при стандартном (рекомендованном) подтягивающем резисторе (5,1 кОм) работает только часть датчиков (процентов 30), подключение +,-,данные. И только когда я заменил резистор на 100 кОм заработали все датчики. В чем причина? Где я допустил ошибку?

Я как-то подключал к АТ89С51 по такой вот схемке. Правда у МК было задействовано 2 ноги на однопроводную шину, но дальность была 100 метров и порядка 30 датчиков на линии в промышленном цеху с кучей частотников (производство мороженого). Цеплял по неэкранированной витой паре 5-й категории. Датчики с внешним питанием все, на конце линии диод шоттки в обратном включении. Ошибки конечно сыпались, но если выводить сообщение об ошибке только после 4-го неудачного чтения - то они практически не появлялись.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
OgRom
сообщение Sep 4 2006, 07:10
Сообщение #8


Участник
*

Группа: Новичок
Сообщений: 29
Регистрация: 20-07-05
Из: Рязань
Пользователь №: 6 941



Как показал опыт, подключать линию MicroLAN длиннее нескольких метров непосредственно на порт нежелательно. Любой микроконтроллер переключает свои порты очень быстро - единицы...десятки наносекунд, от этого удара линия банально "звенит", что портит весь обмен. Более того, работающие при комнатной температуре датчики могут перестать обмениваться на "минусе" и прочие сюрпризы.
Необходимо использовать аппаратный драйвер линии с "мягкими" фронтами. Советую посмотреть также
Application Note 108:Прикрепленный файл  App108.pdf ( 42.12 килобайт ) Кол-во скачиваний: 305


--------------------
...Эксперт - человек, который знает все больше и больше о все меньшем и меньшем, пока не будет знать абсолютно все абсолютно ни о чем... (с)
Законы Мерфи.
Go to the top of the page
 
+Quote Post
Barmaley67
сообщение Sep 4 2006, 15:48
Сообщение #9





Группа: Новичок
Сообщений: 10
Регистрация: 5-04-06
Пользователь №: 15 851



Спасибо всем кто ответил. Сейчас все собрано на макетке, так что расстояние соединительных проводов не больше 15-20 см. До этого работал с DS1990A (ключ), никаких проблем небыло. Ошибку в схеме, вреде бы, допустить сложно, всего-то три провода... sad.gif Попробую воспользоваться советами от OgRom и Andy-L. Буду бороться дальше smile.gif
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Sep 5 2006, 03:19
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206



Попробуйте посмотреть софт и сравнить состояния пина с диагармой из даташита.
Насколько я помню, единица должна делаться подтягивающим резистором и пином, настроенным
на вход как при передаче, так и при приеме данных с 1-wire. Иногда встречается ошибка, что при передаче единицу делают пином контроллера, настроенным на режим output.
Для х51 это до лампочки, а вот для PIC, AVR - нет.


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
Barmaley67
сообщение Sep 5 2006, 12:53
Сообщение #11





Группа: Новичок
Сообщений: 10
Регистрация: 5-04-06
Пользователь №: 15 851



Вся проблема в том, что софт писал я сам smile.gif по даташиту. Единица (и при вводе и при выводе) формируется за счет перевода вывода МК на вход (имитация схемы с открытым коллектором), так что здесь проблем нет. DS1990A (ключ) с таким же протоколом обмена (поддерживается только команда 33Н - чтение ПЗУ) работает прекрасно, а вот с термометрами какие-то непонятки. Может я чего не понимаю, но тот же протокол, все должно работать, но нет: ключи читаются, а термометры нет. Хотя при увеличении сопротивления резистора до 100К все Ok.

Сообщение отредактировал Barmaley67 - Sep 5 2006, 12:58
Go to the top of the page
 
+Quote Post
lof
сообщение Sep 5 2006, 23:33
Сообщение #12





Группа: Новичок
Сообщений: 6
Регистрация: 12-04-05
Пользователь №: 4 084



А Вы пытались посмотреть сигнал осцилографом? Может быть сигнал действительно с резкими фронтами и увеличивая резистор до 100к Вы просто датчики вводите в состояние когда им начинает нехватать питания и они сами внутри себя начинают сглаживать фронты и начинают работать. А попробуйте для эксперимента между входом процессора и линией до подтягивающего резистора 4.7к вставить резистор 100-200ом и тем самым сгладить фронты.
Go to the top of the page
 
+Quote Post
Barmaley67
сообщение Sep 6 2006, 14:40
Сообщение #13





Группа: Новичок
Сообщений: 10
Регистрация: 5-04-06
Пользователь №: 15 851



Стоит резистор и как раз на 200 Ом. Как я уже писал данная схема подключения использовалась для чтения ключей DS1990A и резистор я поставил для предотвращения замыкания на землю, да и в дельнейшем собираюсь использовать несколько датчиков (подключение/отключение на рабочем устройстве), так что стоит резистор. А сам сигнал не смотрел, приду домой - посмотрю.

Сообщение отредактировал Barmaley67 - Sep 6 2006, 14:41
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 16th June 2025 - 19:45
Рейтинг@Mail.ru


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