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

 
 
 
Reply to this topicStart new topic
> Длина линии 1-Wire
Oleg_IT
сообщение Apr 8 2010, 08:54
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 922
Регистрация: 3-06-05
Из: Москва
Пользователь №: 5 709



С датчиками DS18B20+AVR работаю на расстоянии до 3 м. Появилась необходимость увеличить дальность до 30-40 м. Разработчик датчиков гарантирует до 300 м. А как в реалии, по помехозащищённость? Может стоит подстраховаться и поставить драйвера линии? Читал, что лучше применить витую пару и активную подтяжку. Где про такие подробности почитать?
Или мои расстояния вовсе не расстояния?
Go to the top of the page
 
+Quote Post
Владивольт
сообщение Apr 8 2010, 12:10
Сообщение #2


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

Группа: Участник
Сообщений: 168
Регистрация: 14-02-10
Пользователь №: 55 490



Цитата(Oleg_IT @ Apr 8 2010, 12:09) *
Где про такие подробности почитать?

начните отсюда
Guidelines for Reliable Long Line 1-Wire® Networks


--------------------
#define TRUE (4==(2*2))
Go to the top of the page
 
+Quote Post
kolobok0
сообщение Apr 9 2010, 19:30
Сообщение #3


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

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



Цитата(Oleg_IT @ Apr 8 2010, 13:09) *
DS18B20+AVR ...до 3 м. увеличить до 30-40 м...А как в реалии, по помехозащищённость? Может стоит подстраховаться и поставить драйвера линии?...


обычная телефонная лапша уже должна протащить ваши растояния в пром. зоне.
из многолетнего опыта работы с 1-Wire датчиками (правда с 21 - они пошустрее, точнее, менее подвержены разогреву) можно выдать короткое резюме:
1) тупо, строго по даташиту на датчики (временные параметры - очень строго)
2) схемы подключения - по даташиту (обратите внимание на подтягивающий резистор _возле_ датчика (это когда совсем завалы по фронтам идут)
3) из защит - тупо, строго от далласа (ds9503)
4) ну и витая пара, если вам сотни метров...

помехи обычно типа пром. шумов - лечатся на ура.
хуже с пусковыми(по питанию) выбросами близ распологающихся(которыми собственно и идёт управление) агрегатов. тут рулят защиты по питанию и иже.


собственно вы и сами можете поиграться на "кошках". Бухта лапши, на неё(возле неё) что нить пусковое высоковольтное, осцил на линию и сразу всё станет понятно, куда и что подправлять.

удачи вам
(круглый)
Go to the top of the page
 
+Quote Post
Altemir
сообщение Jun 14 2011, 09:16
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 249
Регистрация: 2-05-06
Из: Россия, Поволжье
Пользователь №: 16 686



А кто какие расстояния смог пробить? Использую DS2482S-100 в качестве мастера и DS18B20 - слэйвы. У мосфета мастера в истоке - 10Ом. Линия 300м витой пары с одним датчиком на конце не пробивается. Явно проблема в ёмкости линии, она равна ~15нФ. Если без удлинения подключить параллельно датчику 10нФ - связи нет, с 6.8нФ - есть. Фронты завалены, ессно, для больших емкостей. По осциллограммам видно, что от мастера фронты и времянки более-менее соответствуют, а от слэйва лог. 1 не успевает дойти до требуемого уровня. И ещё - мастер сидит на +3,3В. Подключение двухпроводное.
Go to the top of the page
 
+Quote Post
kolobok0
сообщение Jun 15 2011, 12:26
Сообщение #5


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

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



Цитата(Altemir @ Jun 14 2011, 13:16) *
... 1 не успевает дойти до требуемого уровня..


проверьте - считывание ответа у мастера находится в зоне указанной в даташите?
подтяжку резистором сделайте возле датчика. питание до +5. должно полегчать.


(круглый)

Go to the top of the page
 
+Quote Post
xemul
сообщение Jun 15 2011, 14:02
Сообщение #6



*****

Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731



Цитата(Altemir @ Jun 14 2011, 13:16) *
Использую DS2482S-100 в качестве мастера и DS18B20 - слэйвы. У мосфета мастера в истоке - 10Ом. Линия 300м витой пары с одним датчиком на конце не пробивается. Явно проблема в ёмкости линии, она равна ~15нФ. Если без удлинения подключить параллельно датчику 10нФ - связи нет, с 6.8нФ - есть. Фронты завалены, ессно, для больших емкостей. По осциллограммам видно, что от мастера фронты и времянки более-менее соответствуют, а от слэйва лог. 1 не успевает дойти до требуемого уровня. И ещё - мастер сидит на +3,3В. Подключение двухпроводное.

Задачка не решается. При 15 нФ и 1675 Ом (RWPU) время нарастания до 0.9 В (включение ключа APU) составит 8 мкс, + 8.4 мкс tW1L + 2.7 мкс tAPUOT> 13.3 мкс tMSR. (везде взяты худшие случаи ДШ-ных параметров DS2482S-100)
С 6.8 нФ получается на грани работоспособности.
Go to the top of the page
 
+Quote Post
Altemir
сообщение Jun 16 2011, 06:01
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 249
Регистрация: 2-05-06
Из: Россия, Поволжье
Пользователь №: 16 686



Дааа... хорош мастер-контроллер. Нечего сказать. Смысл было далласу такой городить? Только ради облегчения формирования таймингов? Постфактум заметил в Примечаниях даташита:
DS2482-100
Цитата
Note 2: With standard speed the total capacitive load of the 1-Wire bus should not exceed 1nF, otherwise the passive pullup on
threshold VIL1 may not be reached in the available time. With Overdrive speed the capacitive load on the 1-Wire bus must not
exceed 300pF.


В то же время, для DS2480B
Цитата
Note 15. With regular and flexible speed the total capacitive load of the 1-Wire bus should not exceed 20nF,
otherwise the active pullup on threshold VIAPO may not be reached in the available time. With
Overdrive speed the capacitive load on the 1-Wire bus must not exceed 1nF.


kolobok0
Да, проверял, не дотягивает. Сегодня буду делать доработку до +5В, т.к. обнаружил, что на проходном защитном элементе (22Ом, блин) может падать напряжение до 1,1В при максимальной нагрузке со стороны датчиков. Подтяжку резистором можно делать только при трёхпроводной схеме, у меня - однопроводная, датчики распределены по зданию.

xemul
Отличный и понятный ответ! Огромное спасибо вам за разъяснения!
А вы имели опыт работы с длинными линиями на 1-Wire? На чём строили?
Go to the top of the page
 
+Quote Post
xemul
сообщение Jun 16 2011, 13:18
Сообщение #8



*****

Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731



Цитата(Altemir @ Jun 16 2011, 10:01) *
Дааа... хорош мастер-контроллер. Нечего сказать. Смысл было далласу такой городить? Только ради облегчения формирования таймингов?

Вполне нормальный мастер с понятными ограничениями из-за отсутствия Flexible Timings.
Цитата
В то же время, для DS2480B

Дороже, но (по мне) удобнее DS2482 (не люблю I2C).
Цитата
А вы имели опыт работы с длинными линиями на 1-Wire? На чём строили?

Сегментами до 70 м на DS2409 и UTP-5. (правда, работало только на столе, к моменту натурных испытаний заказчику стало не до инноваций)
Навешивать кучку слэйвов, да ещё паразитами, на 300 м шнурок у меня бы наглости не хватило.sm.gif
Вам, имхо, по-любому, придётся где-то осетра урезать - или разбивать сеть на сегменты (но для DS2409 у производителя уже почти год объявлен EOL; хотя, судя по комментам, могут вернуть in production), или выбирать другую физику (н-р, RS-485). Но и то, и другое не уложится в 2-хпроводное соединение.
Можете, конечно, если есть свободное время, попробовать пляски с бубнами (типа пары шотткиных диодов в земляной провод шины, терминатор на её конце, свой APU, ...).
Go to the top of the page
 
+Quote Post
Altemir
сообщение Jun 16 2011, 20:32
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 249
Регистрация: 2-05-06
Из: Россия, Поволжье
Пользователь №: 16 686



xemul
Удивляюсь просто! Бывают же достойные развёрнутые ответы на форуме!
В общем, более-менее, решил задачу. Поскольку партия пока опытная, можно было экспериментировать. Поднял питание до +5В, помогло как применительно к фронтам, так и, естественно, к просадке по питанию датчиков. Экспериментально получено, что, в зависимости от смотки бухты, кабель UTP-5e имеет от 37 до 55пФ/м. Оконцованные датчики (с 1,5м кабеля) имеют ёмкость около 140пФ. Если делать общую конфигурацию, не выходящую за рамки 7нФ, то всё ведёт себя достаточно стабильно, т.е. с одним датчиком пробиваются 130м витухи (на том и останавливаюсь). На 30м - 32 датчика и на 130м - 17 датчиков работают sm.gif Ограничусь суммарным допуском в 5нФ в серии, сегменты делать не стану, т.к. вполне можно удовлетвориться сейчас полученным результатом. 300м - мечта в текущей конфигурации... На будущее учту свои грабли.
За приведение таймингов - ещё раз спасибо.

Цитата(xemul @ Jun 16 2011, 17:18) *
(не люблю I2C).

Не вы один такой wink.gif
Go to the top of the page
 
+Quote Post
_3m
сообщение Jun 17 2011, 05:48
Сообщение #10


Знающий
****

Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960



Цитата(Altemir @ Jun 17 2011, 00:32) *
можно было экспериментировать...

Проведите такой эксперимент:
1 датчик на расстоянии 1,5 метров от мастера и 2 датчик в конце линии на расстоянии ~100 метров.
Код
т.е. так
[мастер]---->[Д1:1,5м]------------>[Д2:100м]

Go to the top of the page
 
+Quote Post
Altemir
сообщение Jun 17 2011, 07:51
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 249
Регистрация: 2-05-06
Из: Россия, Поволжье
Пользователь №: 16 686



Цитата(_3m @ Jun 17 2011, 09:48) *
Проведите такой эксперимент:
1 датчик на расстоянии 1,5 метров от мастера и 2 датчик в конце линии на расстоянии ~100 метров.

Провёл такой: 1 датчик на расстоянии 1,5м от мастера, затем 130м, в конце линии - 7 датчиков. Всё работает.
Единственное, на осциллограмме ответа ближнего датчика заметны провалы ниже земли до -0,7..-0,6В (судя по всему это он был, т.к. на остальных 7 блоках такого не наблюдалось), когда мастер формирует фрейм, а слэйв удерживает 0 (спад из 1 в 0). Длительность провала около 2мкс, сам переходный процесс - около 5мкс. Это если осцилл стоит возле 7 датчиков. Если возле одного датчика, то такие провалы у семи. Если измерения проводить у самого мастера, то там ещё интереснее, естественно sm.gif
Go to the top of the page
 
+Quote Post
Belerafon
сообщение Jul 19 2011, 09:53
Сообщение #12





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



Здравствуйте. Чтобы не плодить лишние темы, спрошу здесь. В спецификации 1-wire сказано, что время семплирования мастера должно быть где-то в районе 13-15мкс от начала тайм слота. Но сам тайм слот размером 60мкс. Понятно, что ранее 13мкс семплировать плохо из-за емкости линии, но почему нельзя позже? В даташите написано, что свыше 15мкс значение на линии не валидно. Хотя на википедии, например, (http://en.wikipedia.org/wiki/1-Wire) приведена осцилограмма, где явно видно, что устройство держит сигнал на линии около 30мкс от начала тайм слота. Насколько плохо будет, если мой мастер будет семплировать через 22мкс после начала тайм-слота на прием? Это как-то связано с длиной линии?
Go to the top of the page
 
+Quote Post
kolobok0
сообщение Jul 19 2011, 12:06
Сообщение #13


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

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



Цитата(Belerafon @ Jul 19 2011, 13:53) *
.. Хотя на википедии...приведена осцилограмма...Насколько плохо будет..связано с длиной линии?


1) никому плохо не будет.
2) с длиной линии не связано.
3) если вы уверены что для любого разработчика википедия а не даташит последняя инстанция - делайте sm.gif

(круглый)
Go to the top of the page
 
+Quote Post

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

 


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


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