Перейти к содержанию
    

ds1820 на длинной линии

Посоветуйте как бороться с проблемой. Имеется avr и три датчика ds18b20, линия около 20м, pullup 2,5К. Стандартный pullup 4,7К не позволяет нормально работать с датчиками из-за эффекта, который виден на картинках, видимо линия с емкостной нагрузкой. Заменить линию нельзя. Предложите способ как избавиться от этого эффекта, причём нужно ещё добавить несколько датчиков.

post-22960-1180085213_thumb.jpg

post-22960-1180085244_thumb.jpg

post-22960-1180085274_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посоветуйте как бороться с проблемой.

Имеются официальные рекомендации по организации правильного паразитного питания. Просто надо их выполнять.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Поставьте подтягивающий резистор 1 КОм. При токе 4 мА напряжение "нуля" будет около 1 ВОльт.

Для микроконтроллера это не проблема.

 

Если же ёмкость линии настолько велика, что и на 1 КОм не будет работать, то можно рассмотреть

возможность установки МК и датчиков в конце линии, ( тем более, что питание у Вас есть),

а по линии передавать сигнал с микроконтроллера, например в формате USARTа.

 

Хотя.. это как-то странно вообще.

Сам делал 1 wire на гораздо большее расстояние, таких проблем не было.

Судя по Вашим осциллограммам и тому, что подтяжка = 2.5КОм, можно подсчитать,

что погонная ёмкость линии = 1.2 наноФарады на метр! Если это не ошибка - то лучше всё же заменить эту линию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это не ошибка, но линию заменить нельзя. Не хотелось бы ставить дополнительный контроллер. Может применить дифференциальные приемник-передатчик?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Загадочные картинки. На каком конце линии они сняты? Единственное нелогичное объяснение для них - по земляному шнурку стоит емкость 1-2 мкФ, зашунтированная резистором 10-20 кОм.

Попробуйте на стороне слэйва закоротить все три шнурка и измерить сопротивления (и индуктивности?) каждого с каждым со стороны мастера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Первый датчик стоит рядом с avr, два других на другом конце линии. Скоп подключался к первому. Сейчас измерить все параметры не могу, только через неделю. Понятия не имею что там за линия, но физического доступа к линии нет. Смена линии связана с такими монтажными работами, что это просто нереально реализовать. Нужно другое решение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Загадочные картинки. На каком конце линии они сняты? Единственное нелогичное объяснение для них - по земляному шнурку стоит емкость 1-2 мкФ, зашунтированная резистором 10-20 кОм.

Попробуйте на стороне слэйва закоротить все три шнурка и измерить сопротивления (и индуктивности?) каждого с каждым со стороны мастера.

 

Ничего загадочного нет, просто в осциллографе закрытый вход (если присмотреться к окошечку с параметрами входа, то видно, что там AC).

 

Теперь по теме. Надо делать такого плана схему: NPN-транзистор, эмиттером на 0, коллектором через килоом-другой на +5 и доп. вход проца, база - через резистор килоом 10 (и резистор может еще зашунтировать конденсатором пик на 500, он будет ускоряющим) на линию, это будет компаратор с пороговым напряжением ~0.6В. Еще одну ножку с Z-состоянием тоже включаем на линию. Как только на входе процессора, подключенного к импровизированному компаратору, появляется 0 - переключаем Z-состояние на вывод 1, чем обеспечиваем быстрое нарастание до +5В. Т.е. весь процесс нарастания будет медленным до порога компаратора и быстрым далее. Естественно, в начале цикла при подаче 0 выход проца переводится в Z-состояние, дабы не произошла драка ;)

 

Транзистор конечно лучше заменить на нормальный компаратор, но если безрыбье - то и так пойдет.

 

Подтягивающий резистор конечно оставляем, он обеспечивает начальное нарастание...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

рекомендую использовать ферритовое колечко с большой проницаемостью, установленное

вблизи контроллера. Кабель от датчиков несколько раз проденьте сквозь него.

использую подтягивающий резистор 1.8к, состояние линии при ожидании - 0.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Теперь по теме. Надо делать такого плана схему: NPN-транзистор, эмиттером на 0, коллектором через килоом-другой на +5 и доп. вход проца, база - через резистор килоом 10 (и резистор может еще зашунтировать конденсатором пик на 500, он будет ускоряющим) на линию, это будет компаратор с пороговым напряжением ~0.6В. Еще одну ножку с Z-состоянием тоже включаем на линию. Как только на входе процессора, подключенного к импровизированному компаратору, появляется 0 - переключаем Z-состояние на вывод 1, чем обеспечиваем быстрое нарастание до +5В. Т.е. весь процесс нарастания будет медленным до порога компаратора и быстрым далее. Естественно, в начале цикла при подаче 0 выход проца переводится в Z-состояние, дабы не произошла драка ;)

 

Транзистор конечно лучше заменить на нормальный компаратор, но если безрыбье - то и так пойдет.

 

Подтягивающий резистор конечно оставляем, он обеспечивает начальное нарастание...

 

 

Есть ещё такой вариант:

Для ускорения переходных процессов подтягивающий резистор уменьшать до тех пор, пока время процесса не будет в допустимых рамках.

 

Чтобы МК нормально работал при низком подтягивающем сопротивлении - поставить NPN ключ.

Считывание уровня производить другой ножкой МК, которая ВСЕГДА работает как вход.

 

Для того, чтобы термометр мог работать с низким подтягивающим сопротивлением - сделать "усилитель"

по приведённой схеме. Когда термометр выдаёт "0", транзистор PNP открывается, обеспечивая необходимое падение напряжения на подтягивающем резисторе. КОгда же термометр "выдаёт 1",

то транзистор закрыт.

 

С такой схемой можно использовать подтягивающие резисторы очень маленького номинала,

обеспечив тем самым быстрое протекание перех. процессов.

post-20304-1180440047_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ничего загадочного нет, просто в осциллографе закрытый вход (если присмотреться к окошечку с параметрами входа, то видно, что там AC).

"А ларчик просто открывался" (с) дедушка Крылов

Упс-с... не разглядел:).

 

2astro Посмотрите апноты Guidelines for Reliable 1-Wire Networks и Advanced 1-Wire Network Driver.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посоветуйте как бороться с проблемой. Имеется avr и три датчика ds18b20, линия около 20м, pullup 2,5К. Стандартный pullup 4,7К не позволяет нормально работать с датчиками из-за эффекта, который виден на картинках, видимо линия с емкостной нагрузкой. Заменить линию нельзя. Предложите способ как избавиться от этого эффекта, причём нужно ещё добавить несколько датчиков.

 

 

1) входные цепи некоторых пинов МК имеют отличие по характеристикам. Так например в серии 51 мк Вы не сможете "дальнобойно" работать на выходах к которым подключён компаратор.

2) когда то столкнулся с описываемой проблемой на 51 семействе. после некоторых поисков нашёл приёмлемое решение... нагрузочный резистор ставить РЯДОМ с ds18...

 

 

удачи Вам

(круглый)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Доброе время суток. Извините за глупый вопрос, а какая связь между pullup-сопротивлением и напряжением на входе контроллера? Если можно поподробнее. Заранее спасибо.

Изменено пользователем namelos

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...