Проблемы с сетью 1-wire

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Проблемы с сетью 1-wire

Сообщение Gerik_PP »

Всем привет! Вопрос по сети 1-wire
1. На одном порту МК висят 4 датчика DS18B20.
2. Раз в 5 сек. конвертирую температуру и читаю 9 байт байт памяти с последующей проверкой CRC
3. Обращение к конкретному датчику через MATCH ROM [55h]
4. Все датчики подключены звездой в четыре "луча" неэкранированной витой парой 5-й кат. Длинна "лучей" ~70, ~6, ~10 и ~9 метров соответственно.

На дальнем конце каждого "луча" датчик подключён по схеме:
Изображение

Проблема: Примерно девять раз из десяти не совпадает контрольная сумма у датчика на "луче" длинной в 6 метров (остальные стабильно Ок!). Если отключить "луч" длинной в 70 метров, ошибки начинают случаться гораздо реже (примерно 50 на 50). А если оставить подключённым только проблемный шестиметровый "луч", то ошибки на нём исчезают вовсе.

Вопрос: Подскажите, пожалуйста, как можно решить эту проблему? Спасибо.
Аватара пользователя
Kavka
Мудрый кот
Сообщения: 1810
Зарегистрирован: Чт июн 10, 2010 08:55:35
Откуда: Сибирские Афины

Re: Проблемы с сетью 1-wire

Сообщение Kavka »

Если у вас обычный кабель, то на другую пару в кабеле переключить не пробовали?
Заменить кабель на проблемном участке не пробовали?

Осциллографом не смотрели что твориться?

А как у вас сигнал формируется на стороне МК (схема)?
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Проблемы с сетью 1-wire

Сообщение BOB51 »

Использовать рекомендованный изготовителем вариант выходного каскада + по возможности избегать "звезду" - цеплять датчики на одной линии - меньшая общая емкость.
Литературка:
AN244, AN132(rus), AN148(rus)
(могу скинуть подборку только на e-mail)
В частности, из того же AN148:

"ЗВЕЗДООБРАЗНАЯ ТОПОЛОГИЯ
Исследование показало, что некоммутируемые звездообразные сети (то есть когда от мастера
расходится несколько ветвей) вызывают наибольшие трудности для обеспечения надежной работы
сети. В месте соединения различных ветвей происходит значительное рассогласование импедансов (для
мастера), и отражения, идущие с конца одной ветви, могут проходить расстояния, почти равные весу
сети (а не радиусу), что приводит к ошибкам в данных. По этой причине не рекомендуется
использование звездообразной топологии без коммутаторов, и на работу с топологиями такого вида не
дается никаких гарантий. Еще раз повторяем, использование звездообразной топологии без
коммутаторов не рекомендуется. "
8)
borys
Держит паяльник хвостом
Сообщения: 927
Зарегистрирован: Вт сен 07, 2010 19:27:48
Откуда: Ташкент

Re: Проблемы с сетью 1-wire

Сообщение borys »

Практика (и моя так же) подтверждает, что AN148 говорит правду.
Аватара пользователя
Kavka
Мудрый кот
Сообщения: 1810
Зарегистрирован: Чт июн 10, 2010 08:55:35
Откуда: Сибирские Афины

Re: Проблемы с сетью 1-wire

Сообщение Kavka »

Были у меня сомнения на счёт звезды (писать не стал в предыдущем сообщении), так их подтвердили.
Gerik_PP, можно, конечно рассчитать, но тут я не силён, может кто-то другой поможет если попросите.
Если от звезды отказаться сложно, то можете длины проводов варьировать. Например добавить к 6 метровому участку ещё метра 3 - может заработает. Ещё можно уменьшить скорость нарастания/спада фронтов, как на стороне МК, так и на стороне датчиков. Это приведёт к уменьшению полосы сигнала в линии, что снизит отражения в линии (как-то так), что приведёт к улучшению целостности сигнала и уменьшению количества ошибок. Как я уже сказал, в этой области я не силён, так что если сильно наврал занющие люди поправят.
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Re: Проблемы с сетью 1-wire

Сообщение Gerik_PP »

Kavka писал(а):Если у вас обычный кабель, то на другую пару в кабеле переключить не пробовали?
Заменить кабель на проблемном участке не пробовали?

Осциллографом не смотрели что твориться?

А как у вас сигнал формируется на стороне МК (схема)?

Заменить кабель уже невозможно, выполнена чистовая отделка и родственники мне этого не простят (и будут правы)))
Пары менял - не помогает.
До осциллографа пока не добрался (да и что я там увижу...)
Пробовал просто бросить временный кабель чтоб проверить. И с времянкой у меня все 4 датчика стабильно заработали без ошибок. К слову сказать, у меня вообще месяц всё хорошо работало. А вот теперь такая трабла с одним из датчиков началась((( Для себя сделал вывод, что "сеть находится в пограничном состоянии и очень небольшие изменения становятся причиной проблем." (©AN148)
Интерфейс на стороне МК у меня такой:
Изображение
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Re: Проблемы с сетью 1-wire

Сообщение Gerik_PP »

BOB51 писал(а):Использовать рекомендованный изготовителем вариант выходного каскада + по возможности избегать "звезду" - цеплять датчики на одной линии - меньшая общая емкость.
Литературка:
AN244, AN132(rus), AN148(rus)
(могу скинуть подборку только на e-mail)
В частности, из того же AN148:

"ЗВЕЗДООБРАЗНАЯ ТОПОЛОГИЯ
Исследование показало, что некоммутируемые звездообразные сети (то есть когда от мастера
расходится несколько ветвей) вызывают наибольшие трудности для обеспечения надежной работы
сети. В месте соединения различных ветвей происходит значительное рассогласование импедансов (для
мастера), и отражения, идущие с конца одной ветви, могут проходить расстояния, почти равные весу
сети (а не радиусу), что приводит к ошибкам в данных. По этой причине не рекомендуется
использование звездообразной топологии без коммутаторов, и на работу с топологиями такого вида не
дается никаких гарантий. Еще раз повторяем, использование звездообразной топологии без
коммутаторов не рекомендуется. "
8)

Нашёл AN132(rus) и AN148(rus) - ооочень познавательно, спасибо за подсказку (приятно, что наконец что-то толковое можно на русском почитать).
Вообщем, ситуация такая, что от звезды мне уже никуда не уйти. Провода замурованы в стены, обои наклеены, потолки покрашены и т.д. :kill:
Исходя из прочитанного в AN132/148 делаю вывод, что меня спасёт коммутируемая сеть (AN148, стр.4).
Только теперь встаёт практический вопрос: как это осуществить? Долго рыл инет, ничего вразумительного по этому поводу не нашёл, может кто подскажет?
Нашёл такую схему и не пойму, это ли есть коммутируемая сеть? http://www.maximintegrated.com/images/a ... 0Fig12.gif
Аватара пользователя
Kavka
Мудрый кот
Сообщения: 1810
Зарегистрирован: Чт июн 10, 2010 08:55:35
Откуда: Сибирские Афины

Re: Проблемы с сетью 1-wire

Сообщение Kavka »

Специальные микросхемы это, конечно, выход. То что на картинке, таки, вообще красиво. Вот только как у вас с доступностью таких микросхем...
Если ставить обычный коммутатор, то вам в любом случае понадобятся свободные ножки МК.
Тогда с таким количеством направлений как у вас, проще будет каждое направление повесить на отдельную ножку МК.
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Re: Проблемы с сетью 1-wire

Сообщение Gerik_PP »

Kavka писал(а):Если ставить обычный коммутатор, то вам в любом случае понадобятся свободные ножки МК.
Тогда с таким количеством направлений как у вас, проще будет каждое направление повесить на отдельную ножку МК.

Свободных ножек на МК у меня не осталось(( В схеме реализованы интерфейсы 1-wire и I2C. Если и что-то добавлять, то только на эти шины. Других возможностей нет.
Kavka писал(а):Специальные микросхемы это, конечно, выход. То что на картинке, таки, вообще красиво. Вот только как у вас с доступностью таких микросхем...

А какие микросхемы нужны то? Например DS2409 не достать. DS2408 есть в продаже. Но, повторюсь, у меня в голове нет чёткого понимания какие нужны микросхемы для реализации коммутируемой сети 1-wire. А если одним словом - туплю :shock:
Аватара пользователя
Kavka
Мудрый кот
Сообщения: 1810
Зарегистрирован: Чт июн 10, 2010 08:55:35
Откуда: Сибирские Афины

Re: Проблемы с сетью 1-wire

Сообщение Kavka »

Ну, если DS2408 можете достать/купить, то картина мне представляется следующей (по схеме как на вашей картинке).
По 1-wire программируется DS2408 (у неё свой уникальный адрес и на термодатчики общение с ней не повлияет). Программируется так, чтобы на выходах с P1 по P4 был только один сигнал для аналоговых коммутаторов разрешающий соединение выводов NC и COM. Для остальных линий COM соединён с NO, где стоит подтяжка к vcc через резистор в 1.5к. Таким образом будет подключено одно направление. Дальше по этому направлению опрашиваешь датчик температуры. Потом опять обращаешься к DS2408, переключаешь на другую линию и там опрашиваешь датчик. И т.д.
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Re: Проблемы с сетью 1-wire

Сообщение Gerik_PP »

А зачем выводы P2 и P3 соединены с COM на коммутаторах? И для чего нужна U4?
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Re: Проблемы с сетью 1-wire

Сообщение Gerik_PP »

С U4 разобрался. Это супервизор для удержания микросхемы в состоянии сброса до тех пор, пока напряжение питания не достигнет заданного значения и не стабилизируется. Но вот зачем зачем выводы "P2" и "P3" DS2408 соединены с выводами "COM" на коммутаторах, хоть реж меня не могу понять :cry:
http://www.maximintegrated.com/images/a ... 0Fig12.gif
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Проблемы с сетью 1-wire

Сообщение BOB51 »

А использовать дополнительный МК для расширения количества каналов "не кошерно"?
Главный МК (тот что был) перевести на чегой-нибудь типа I2C, а вспомогательному отдать задачу обмена и предобработки микроЛАН... :roll:
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Re: Проблемы с сетью 1-wire

Сообщение Gerik_PP »

А это тож мне подходит. Я тут прикинул, даже подешевле, да и поинтереснее получается. Совсем по взрослому :) Даже МК присмотрел с аппаратным I2C - PIC16F1825. По датчику на порт, и ещё на запас остаётся. Правда обвязку на каждый порт свою придётся делать, но это уже решаемая проблема, в корпус должно уместиться.
Ну вот, уже два варианта решений есть! Совсем не плохо, осталось только выбрать в пользу какого либо... Всем очень признателен за диалог!!!
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Re: Проблемы с сетью 1-wire

Сообщение Gerik_PP »

подскажите ещё, пожлста, в AN244 (во вложении) 1-я стр., на схеме вывод SPU - куда должен подключаться?
Вложения
app244.pdf
(199.59 КБ) 573 скачивания
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Проблемы с сетью 1-wire

Сообщение Gudd-Head »

Видимо, это "strong-pullup" — активная (сильная) подтяжка на время преобразования при паразитном питании.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Re: Проблемы с сетью 1-wire

Сообщение Gerik_PP »

Да, но не пойму куда он подключается. К доп. порту МК?
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Проблемы с сетью 1-wire

Сообщение Gudd-Head »

Угу.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Аватара пользователя
Gerik_PP
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт ноя 07, 2006 14:14:16
Откуда: пос. Правдинский
Контактная информация:

Re: Проблемы с сетью 1-wire

Сообщение Gerik_PP »

Всё равно не понятно, если SPU подключить к порту МК, тогда в этом случае Q3 полностью дублирует Q2. Зачем?
В AN132 на стр.7 (вложение) говорится про какой-то компаратор позволяющий микроконтроллеру определить, превысило ли напряжение в сети 1-Wire пороговое значение 0.95 В. Но каких либо статей, комментариев, или примеров схем не могу найти нигде ни на английском ни на русском. Может кто подскажет? Please... :solder:
Вложения
AN132ru (Краткое руководство по сетям 1-wire).pdf
(235.78 КБ) 473 скачивания
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Проблемы с сетью 1-wire

Сообщение Gudd-Head »

Gerik_PP писал(а):Всё равно не понятно, если SPU подключить к порту МК, тогда в этом случае Q3 полностью дублирует Q2.

Ну, у Q2 в стоке ещё стоит резистор.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Ответить

Вернуться в «Периферия»