|
mega8 не получается найти ds18b20 |
|
|
|
Dec 27 2014, 15:32
|
Частый гость
 
Группа: Свой
Сообщений: 130
Регистрация: 30-07-08
Из: Moscow
Пользователь №: 39 302

|
Доброго дня. Имеется сеть из ds18b20 в квартире по топологии звезда, на концах звезды (две ветви) находятся 3+3=6 датчиков, шина проложена на UTP5E, в центре сейчас роутер с программой digitemp. Задача была заменить роутер на mega8 для сбора температуры с датчиков ds18b20. Схема прилагается. В реультате облом, датчики не ищутся, периодически находятся аж 35 шт но не тех, а с произвольным ROM. На двух датчиках воткнутых в макетку все работает идеально. Перестроить шину не получится, кабель уже заложен в принтуса, если только на радиоканал перевести. Было предпринято: вставка доп. задержки в ресет шины. запаралелено еще две ножки МК для лучшей подтяжки. Не помогло. В приложении осцилограммы. Сейчас прихоит на ум: сделать полевиком активную подтяжку к питанию с программынм уравлением. установить на концах звезды шины восстановители сигнала: востановитель цифровых сигналовЧто посоветуете?
ds18b20_rs485_27122014.rar ( 792.42 килобайт )
Кол-во скачиваний: 97
waveform_after_paralel_pin.rar ( 161.4 килобайт )
Кол-во скачиваний: 88
waveform_before_paralel_pin.rar ( 65.09 килобайт )
Кол-во скачиваний: 83
|
|
|
|
|
Dec 27 2014, 20:46
|
Гуру
     
Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295

|
Цитата(TechMike @ Dec 27 2014, 18:32)  Что посоветуете? 1. Взять-таки осциллограф и на месте все выяснить. Это самый простой и быстрый способ решения вашей проблемы. 2. С "землями" Меги и датчиков все гуд ? В смысле, у вас куча датчиков и в центре Мега. Так вот, я подозреваю, что датчики в тех местах, где они установлены, не изолированы от труб отопления, бетонных полов, арматуры и проч. Т.е., у каждого (или не у каждого) датчика есть гальваническая связь со зданием, причем связь эта всякий раз реализуется через разные сопротивления (сопротивление бетонного пола и сопротивление труб, например, различаются очень заметно). Проблема усугубляется тем, что датчики дополнительно заземлены на Мегу через кабель, в результате начинается натуральный кавардак. Или я не прав ? 3. 100 пик на кварце - это атас. Равно как и кнопка сброса, вызывающая КЗ в линии питания  4. От C2 один вред, уберите его поскорее ...
|
|
|
|
|
Dec 27 2014, 21:28
|
Частый гость
 
Группа: Свой
Сообщений: 130
Регистрация: 30-07-08
Из: Moscow
Пользователь №: 39 302

|
Цитата(kovigor @ Dec 28 2014, 00:46)  1. Взять-таки осциллограф и на месте все выяснить. Это самый простой и быстрый способ решения вашей проблемы. 2. С "землями" Меги и датчиков все гуд ? В смысле, у вас куча датчиков и в центре Мега. Так вот, я подозреваю, что датчики в тех местах, где они установлены, не изолированы от труб отопления, бетонных полов, арматуры и проч. Т.е., у каждого (или не у каждого) датчика есть гальваническая связь со зданием, причем связь эта всякий раз реализуется через разные сопротивления (сопротивление бетонного пола и сопротивление труб, например, различаются очень заметно). Проблема усугубляется тем, что датчики дополнительно заземлены на Мегу через кабель, в результате начинается натуральный кавардак. Или я не прав ? 3. 100 пик на кварце - это атас. Равно как и кнопка сброса, вызывающая КЗ в линии питания  4. От C2 один вред, уберите его поскорее ... 1. что собственно и делаю, уже раз в пятый, у самого уже идей не осталось, нужна помощь. 2. считаю, что нормально, т.к. этот косяк уже исправлял когда только начинал делать шину с датчиками, все датчики прилегающие к поверхностям от них изолированы и выводы датчиков в отдельных термоусадках. 3. это ошибка на схеме, там 22пФ, кнопка сброса на пине ресета. 4. чем он плох, емкость на порядок сократить, а так в паре с керамикой очень даже?
|
|
|
|
|
Dec 28 2014, 09:42
|
Частый гость
 
Группа: Свой
Сообщений: 130
Регистрация: 30-07-08
Из: Moscow
Пользователь №: 39 302

|
Цитата(adnega @ Dec 28 2014, 01:28)  Попробуйте на каждый датчик установить 1 кОм резистор между DATA и VCC. Так не получился, датчики закатаны в термоусадку, часть на улице в герметике. Можно в конце лучей шины поставить такой резистор на 3 и 3 датчика одновременно, до датчиков в этом случае будет где-то 5метров.
|
|
|
|
|
Dec 28 2014, 10:14
|
Частый гость
 
Группа: Свой
Сообщений: 130
Регистрация: 30-07-08
Из: Moscow
Пользователь №: 39 302

|
Цитата(cant @ Dec 28 2014, 12:54)  поставьте ключ подтяжки и сопротивление R2 уменьшите (у Вас 6 датчиков + длинные провода и все это нужно запитать через 4,3К а потом прокачать это все через бедную мегу) вот и глючит
даже в даташите есть рекомендация работать через ключ подтяжки уже с одним датчиком, если нет внешнего питания Пробовал R2 уменьшить до 2к, не помогло. Ключь по какой схеме поставить (Pull-Down или Pull-Up)? В Application Note 148 есть разные варианты.
|
|
|
|
|
Dec 28 2014, 12:59
|
Частый гость
 
Группа: Свой
Сообщений: 130
Регистрация: 30-07-08
Из: Moscow
Пользователь №: 39 302

|
Цитата(adnega @ Dec 28 2014, 15:44)  +100 С паразитным питанием не пробовал, а активное: сотни метров - без проблем. Настоятельно рекомендую переделать подключение. Изыскать лишний провод и подать по нему питание на датчики. Это все наработки прошлого,все новое с питанием и вот хочу на 485 перетащить шину. Цитата(cant @ Dec 28 2014, 15:22)  на пять метров мега точно не вытянет. У вас бы не возникло вопросов при проброске питания напрямую, а не через линию связи.
ставьте мощный драйвер для прокачки сигнала так, чтоб еще и на питание всех датчиков с лихвой хватало, и про длину проводо не забывайте.
мне кажется, вам будет достаточна схема APPENDIX B – IMPROVED CPU BUS INTERFACE
из Application Note 148
APPENDIX C – ADVANCED 1-WIRE NETWORK DRIVER на мой взгляд весьма избыточна для вас Позволю немного не согласиться, судя по осцилограммам, датчикам не хватает энергии, чтобы отработать на шине обмен и думаю надо делать Pull-Up, например как в AN4206 вот на этой картинке  Я не к тому что самый умный или пробывать не хочу, просто пробывал уже подтягивать полевиком к земле и не получилось, схема была похожая как раз на APPENDIX B – IMPROVED CPU BUS INTERFACE в AN148. Вот осцилограмма сброса и ответа датчика при К2=4,7k
видно что нарастающий фронт после окончания сброса завален. Тоже самое при запаралеливании еще двух портов mega8 на шину (чтобы больше отдать по току в шину):
уже лучше но видимо недостаточно. А вот если поставить еще R2=2k
т.е. стало хуже, появились выбросы. Согласны с моими выводами? Схему поправил.
|
|
|
|
|
Dec 28 2014, 14:24
|
Частый гость
 
Группа: Свой
Сообщений: 130
Регистрация: 30-07-08
Из: Moscow
Пользователь №: 39 302

|
Цитата(adnega @ Dec 28 2014, 18:07)  А не земля ли это подпрыгивает? R2 (а еще лучше дополнительное R2') нужно установить на конце линии рядом с датчиком. 1k?
|
|
|
|
|
Dec 29 2014, 05:50
|
Местный
  
Группа: Участник
Сообщений: 216
Регистрация: 28-10-08
Из: Брест
Пользователь №: 41 243

|
Цитата(TechMike @ Dec 28 2014, 15:59)  Позволю немного не согласиться, судя по осцилограммам, датчикам не хватает энергии, чтобы отработать на шине обмен и думаю надо делать Pull-Up, например как в вот на этой картинке
Согласны с моими выводами? если вы внимательно прочитаете мое предыдущее сообщение, то там четко указано, что вам необходимо обеспечить достаточное питание вашим датчикам. Как вы этого добьетесь, уже другой вопрос: ТОЛЬКО ВЫ знаете как проложены провода и какой они длины. Ваша задача - доставить питание и сигнал по одному длинному проводу. В каждом конкретном случае реализация может существенно отличаться от общепринятой, что вполне нормально.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|