Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить

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

Ср авг 14, 2013 13:18:41

Аааа. Это вы порты МК экономите? :)

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

Ср авг 14, 2013 13:19:52

Пока просто набираю возможные варианты решения проблемы :) И пока не могу остановиться ни на одном из них....

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

Ср авг 14, 2013 13:39:17

Gerik_PP писал(а):Пока просто набираю возможные варианты решения проблемы.

Побороть то, что есть. Попробуйте на каждый кабель повесить ферритовых колец, хуже не будет.
Чем вам не нравится вариант с паразитным включением по одной витой паре?
И, да, что у вас стоит около МК в качестве восстановителя фронтов?

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

Ср авг 14, 2013 15:11:49

Gudd-Head писал(а):Чем вам не нравится вариант с паразитным включением по одной витой паре?
И, да, что у вас стоит около МК в качестве восстановителя фронтов?

В моём случае переход на паразитное питание увеличит протяжённость линий в два раза (~200m) - это не нравится. Но может быть так и сделаю, пока не решил.
Активное восстановление фронтов у меня никак не реализовано. Восстановление только через подтягивающий резистор на 1k. :? Но интерфейс порта МК буду переделывать, это уже решено! И надо уйти от "звезды" - на каком либо варианте здесь пока не остановился. Думаю... )

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

Ср авг 14, 2013 15:14:42

Gerik_PP писал(а):В моём случае переход на паразитное питание увеличит протяжённость линий в два раза (~200m) - это не нравится.

Да ё-моё, с чего оно увеличится? Вытянет порт МК датчик.

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

Ср авг 14, 2013 20:42:07

Gudd-Head писал(а):
Gerik_PP писал(а):В моём случае переход на паразитное питание увеличит протяжённость линий в два раза (~200m) - это не нравится.

Да ё-моё, с чего оно увеличится? Вытянет порт МК датчик.

С того, что свободных портов нет, провода уже заложены, и чтобы уйти от "звезды" нужно будет идти к датчику, а потом обратно и так цепочкой по каждому проводу. Вернее по трём из четырёх (выше Kavka уже приводил пример)

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

Чт авг 15, 2013 08:51:26

Gerik_PP писал(а):С того, что свободных портов нет, провода уже заложены

1-Wire у вас ведь куда-то подключен к МК? Вот и использовать этот порт и для питания (strong pull-up), и для передачи данных.
Gerik_PP писал(а):и чтобы уйти от "звезды" нужно будет идти к датчику, а потом обратно и так цепочкой по каждому проводу.

Ну тогда вообще пипец, общая ёмкость возрастёт в 2 раза.

Если у вас есть 2 свободных пина, можно посредством мультиплексора и сдвигового регистра по очереди подключать каждый датчик к МК.

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

Чт авг 15, 2013 20:48:35

Про сдвиговый регистр как-то не подумал. Спасибо за подсказку! :solder:

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

Пт авг 16, 2013 09:44:39

Gerik_PP писал(а):Про сдвиговый регистр как-то не подумал. Спасибо за подсказку!

Вот вам ещё подсказка: как управлять сдвиговым регистром по одному проводу: http://easyelectronics.ru/upravlenie-se ... ovodu.html

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

Пт авг 16, 2013 13:09:19

ха-ха :-))) Круто!!! голь на выдумки хитра))

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

Вс авг 18, 2013 21:33:19

Gudd-Head писал(а):Если у вас есть 2 свободных пина, можно посредством мультиплексора и сдвигового регистра по очереди подключать каждый датчик к МК.

Слегка доработал схему (вложение) добавив сдвиговый регистр и по два резистора на каждую DS9503. Выше схему уже описывал, но для удобства чтения ещё раз здесь: Сопряжение с линией сделал на U2 – логика с тремя состояниями на выходе. Приемник U3 - аналоговый компаратор позволяющий микроконтроллеру определить, превысило ли напряжение в сети 1-Wire пороговое значение 0.98 В (AN132). Для активной подтяжки вниз использую U2.1. При подаче на него «0» выход переходит из третьего состояния в «0». Для активной подтяжки вверх использую U2.2. При подаче на него «0» выход переходит из третьего состояния в «1». Четыре отвода моей злополучной "звезды" через DS9503 подключены к коммутаторам U4-7 и управляются тоже с МК через сдвиговый регистр U13. При опросе коммутируется всегда только 1 из 4-х датчиков, по очереди. Измеренные значения температуры передаются на главный МК по I2C
Прокомментируйте, please, схему. Может что-то надо добавить или изменить?
Вложения
Microlan (схема)_v3.pdf
(95.71 KiB) Скачиваний: 249

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

Пт ноя 08, 2013 02:49:53

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

Изображение

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

Сб ноя 05, 2016 14:20:52

Всех приветствую!
Собрал термометр на датчиках ds18b20. Всего их три штуки подключено, вывод на двухстрочный индикатор. Разводку сделал витой парой, одна пара проводов +5,-, вторая пара образует шину данных (скручены вместе). Схема разводки получилась звездой, тобишь на каждый датчик свои питающие провода и своя шина данных, подтягивающи й резистор на шину данных 4к7, рядом с ножкой контроллера. Длина каждой из трех линий: 1,1 м, 2,5 м и 3 м. Беда в следующем:
По отдельности если подключать датчики, то показания считываются нормально. Соединяю шину данных датчика с длинной кабеля 1,1 м с 2,5 м данные читаются нормально, подключаю третий с длинной провода 3 м, контроллер выводит показания непонятные и виснет, либо на дисплее мура какаято начинает высвечиваться.
В общем показания выводятся только в следующих случаях:
1) 1,1 + 2,5
2) 2,5 + 3
3) По отдельности
Показания не выводяться и контроллер виснет:
1) 1,1+2,5+3
2)1,1 + 3
Попобовал подключить шину данных последовательно без ответвлений, та же самая ерунда получается...
В общем не пойму что за бред такой.... :dont_know:
HELP!!!

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

Сб ноя 05, 2016 14:35:43

нарисуйте нормально вашу схему - что куда подключено, а то нифига не понятно

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

Сб ноя 05, 2016 15:02:30

Вот на скорую руку набросал...
Вложения
Безымянный.jpg
(31.68 KiB) Скачиваний: 428

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

Сб ноя 05, 2016 15:27:52

я так понимаю, у вас получается большая емкость линий, если все 3 ветки подключены. раз возникают проблемы при этом, есть несколько предположений о причинах и методов борьбы с ними:
1. уменьшить подтягивающий резистор. иногда приходится до 500 Ом уменьшать, хоть и не совсем это правильно. но попробовать можно (уменьшение подтягивающего резистора может усугубить эффект саморазогрева датчика, т.е. может повысить погрешность измерения температры)
2. если МК без кварца, то он может отрабатывать длительности тайм-слотов не точно. можно попробовать собрать проект под кварц
3. возможно, код сам по себе не совсем правильный - надо разбираться с ним. встречал немало "библиотек", в которых длительности тайм-слотов прописывались чуть ли не от фонаря, а не так, как прописано в стандарте 1-wire

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

Сб ноя 05, 2016 18:38:28

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

Добавлено after 2 hours 54 minutes 42 seconds:
Замена резистора на 560 Ом (до этого стоял 4к7) ничего не дала...Все то же самое...

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

Вс ноя 13, 2016 20:51:44

Возможно неверная адресация датчиков в программе.
:roll:
Ответить