RS485 мистика на линии
- Войдите на сайт для отправки комментариев
Вопрос оставил не только на данном форуме пока тишина.
Ситуация следующаяя:
Есть мастер и 12 слейвов из них мастер и первые 4 слевай стоят рядом и все работает отлично. Остальные 9 слейвов раскинуты на растоянии где то от 5 до 20 метров. Линия до них Витуха медная. Двухпроводное подключение. НА каждом из слевов нет сопряженного резистора 120Ом но есть подтяжка каждой линии к своему потенциалу через резисторы 560Ом. НА мастере же есть подтяжка 120Ом и защитные диоды к земле. Питание у всех устроиств общее!
Мистика заключается в том что все это работет стабильно, но в каокй то момент 9 слевов которые находятся на растоянии перестают отвечать на запросы. Хотя мастер пашет и другие слефвы тоже. Не могу понять куда копать. После перезапуска питания на данных слейвах все начинает работать как и работало. ПО времени всегда отваливается по разному. Не могу понять куда копать. ВСя сеть на MAX485 построенна. Есть у кого нибудь идей в какую сторону смотреть? и что предпринять? Заранее спасибо
А нарисовать топологию ??
А что это даст? Я могу просто время надо)))) просто если это реально что то даст то хотелось бы понять что)) Просто если сказать про топологию то подключена она по типу звезды (базовая топология). Не шина и не кольцо. ПРост овылет только у этих устроиств хотя БП общий(земля общая) но они на больше расстоянии находятся. Грешить на МК в данных устроиствах не грешу ибо они разные и работают не зависимо все что эти платы связывает это питание и линия RS485 причем звездой не по шине. Т.е. от какого устроиства до мастера 5 метров минимально у самого большого 20 метров и все тут((( Крч мистика какая то. Все это стоит в квартире) т.е. сильных каких то электромагнитным помех не должно быть да и сам интерфейс очень даже защищен от этого. Вот думаю куда копнуть что проверить. Но сам мастер и другие слейв не вылетают, что на водит на мысль что сама линия работает дальше после сбоя
А что это даст? Я могу просто время надо)))) просто если это реально что то даст то хотелось бы понять что)) Просто если сказать про топологию то подключена она по типу звезды (базовая топология).
...
Ну нарисую я прямоугольнички и линии по типу звезда!!!! Что даст то? Ну вот нарисовал я допустим вы посмотрели и сказали хм у вас же звезда! а я такой да ладно? Просто блин ребят я тут редко что спрашиваю потому что люди у нас такие и мимо не пройдут и не помогут. Я привык со всем разбиратся сам( И только в крайних случаях если горит или уже идей нет обращаюсь на форумы, но с каждым разом разочаровываюсь(
Думал может быть накапливается заряд на линии но должен стекать по диодам в мастере. да и другие бы не работали бы. Но есть один нюанс эти 9ть слейвов они опрашиваются редко, по событию. Думаю как то в этом может быть причина. Если у кого ест ьопыт с похожими явлениями на лини 485 прошу подсказки.
Если те, что перестали отвечать и посте рестарта именно этих слейвов они начинают работать, видимо проблема в них.
Подобный случай был у меня (в прошлом веке) когда слейвы были разбросаны метров на 100 и для соединения бросили обычную телефонную лапшу, условия эксплуатации очень хреновый, низкая влажность и статикой бьёт даже от деревянных лестничных перил. Контроллеры на слкйвах были проприоритарные, наевшись ошибок от статики переставали работать, приходилось из перегружать.
Я вообще не понимаю в чем затруднение... если есть 100% нормальные слейвы и 100% ненормальные - перекинь их местами. Если проблема сохранится - ищи зависимость от расстояния. Если не сохранится - то проблема в конкретных модулях.
Кабутто кто-то може гарантированно сказать: да, чувак, я тут купил 12 модулей у такого-то продавца, прикинь - 9 глючат. Сделал то и то - проблема решилась.
Может у вас там питание просаживается, МК это пережевывает, а модули - нет. Сто тыщ причин возможны. Сидеть и выдумывать их, чобы вы там проверяли?
Крч раскрою карты))) У меня звезда топология что уже типа плохо. так везде пишут что лучше шина. Так вот выбивает как я понял именно микруху макс485. Речь идет про Выключатели света в кваритре в них реализован интерфейс 485 вот они и отлетают но они и другие слейвы которые рядом на один и тех же микрухах да и не может быть это свопадением по браку. Но вот что я заметил жал ьчто не сразу терминаторы на них не стоят. на мастере только. щас поставил пробно в один выключатель терминатор и поставил тестироваться. Вопрос микросхема 485 может вылетать из за того что к ней долго не обращаются? И второй вопрос может ли такой поведения быть из за отсутствия терминаторов? сама сеть то на остальных устроиствах пашет.
Посмотри в datasheet. В 485 максе только аналоговые усилители. Чему там отваливаться? И расстояния сотни метров обещают. Я б посмотрел осцилографом форму выходных сигналов максов на отвалившихся устройствах. Скорее всего там что можно найти. У меня через мах до 40 кВ пробегало. Сгорали раза с третьего и после первых двух пробоев продолжали работать.
Блин был бы он уже бы глянул) а какое сопротивление на рабочей линии должно быть? ПОка попробую вот так с терминаторами и диодами на мастере. Посмотрю что получится. Просто сут ьв том что паял я с одной пачки эти максы так вот чет если и брак бы был думаю как то разброс был бы а не так четко что все которые на 4-20 метрах отваливаются а те что рядом пашут . очень странно. Но тут теории мало я понимаю нужны эксперементы и пробы. Отпишусь как че узнаю больше мало ли вдруг еще кто то сталкнется. ПРосто смутило то что все почему то не рекомендую звезду топологию. Типо волновое сопротивление больше. Н оу меня же не по 100 метров линия каждая. Там получается от 4 до 20 метров всего то вон шиной 1 км тянут и ниче) так что хз. Ну поначалу все пашет сутки может проработать может двое ну один фиг отваливается. Крч отпишу позже
Крч раскрою карты))) У меня звезда топология что уже типа плохо. так везде пишут что лучше шина.
Что значит "плохо" ? НЕДОПУСТИМО ! Должна быть линия с двумя терминаторами на концах. Это дифференциальная линия. Ее смысл в том, что если есть помеха, то она наводится на два противофазных сигнала, в результате сложения этих сигналов она уничтожается. Когда вы придумывате ответвления, там где их быть не должно, получаете помеху, которая на двух линиях будет не симметрична, она вам и мешает.
Ну так кто сказал? книжки?))) как бы физику процессая понимаю поэтмоу и сделал так в целом когда линии не длинные то ничего страшного. Или я чего то не понимаю с точки зрения физики? Поясните пожалуйста.
1. Измерить какое питание дошло до дальних контроллеров.
2. Измерить напряжения на проводах линий А(+) и В(-)
относительно земли контроллеров.
И сравнить.
Обычно А выше В.
Ну так кто сказал? книжки?))) как бы физику процессая понимаю поэтмоу и сделал так в целом когда линии не длинные то ничего страшного. Или я чего то не понимаю с точки зрения физики? Поясните пожалуйста.
Что такое короткие линии ? Как вы понимаете физику дифф линии ?
Имею несколько проектов работающих в условиях сильных помех (заводские цеха). Там китайские MAX485 дохли пачками. Пришлось ставить 15 вольтовые стабиллитроны на шины А и B, перед стабиллитронами резисторы в районе 50 ом. Земля не используется, хотя некоторые устройства запитаны от одного БП. На самом деле все работает без 120 омных стабиллизаторов. Длинна линии до 1500 метров. Скорость до 57600.
Вопрос сразу напряжение на точках А и В померить так? или А и земли и В и земли? И что значит какие питание долшло))) туда идет к каждому 12В и там уже линейником опускается для МК и макс до 5В там по питанию вопросов вроде нет. Просто могу и в шину переделать. ПРосто при ремонте еще не знал какой интерфейс будет и закинул с одной точке до всех по витухе)) получается звезда) могу конечно в щитке соединить в шину но тогда длина одщая увеличится в 7 раз и будет не 50 метров а 350 например)
Я же написал что для 485 от 4 до 20 метров это не расстояние вроде как
Для правильной топологии RS485, 350 метров ни о чем. А померить нужно между A и землей узла и B и землей узла. Если смещение сильно не симметричное, то это и есть проблемма, конечно делайте в момент зависания.
это очень много или скорее мало, для подтядки используются резы в десяток килоОм
Кстати это как А к +12v, B к -7v ? :)
Так по порядку давайтею Это как это вы так решили? я же не с пальца взял 120 Ом))0 просто терминатор ставят для того чтобы избавится от волнового сопротивленрия в конце линии. и для витой пары ее волновое сопротивление 120Ом но тут есть другая сторона медали как я понял, которая ка краз и приводит данную топологию в тупик. Если делать шиной то достаточно двух терминаторов на мастере вначале например и вконце линии. А тут то у меня ответвления по 4 - 20 метров и если я на каждом поставлю по 120 Ом то получается 120/7 и получаем 17Ом а это очень мало и приводит наоборот к помехам и синфазу.. ну крч поняли) И тут хз че делать)
это по 46 Ом на шины питания и к допуску по дисбалансу по диси +12v, B к -7v ? :) отношения не имеет.
перегружены выходы передатчиков, возможно они просто перегреваются и начинают глючить
не понял вопроса? про 12В)))) Нет в выключателях стоят платы на atmega48 b макс485 и вот питалово этих плат подходит так же по витухе 12В а уже на плате для МК и 485 понижается до 5и. А вы пишите про линию. Ну я померю. но самое интересное что без терминаторов сегодня при зависшых слевах сопротивление между линиями было 0. странно конечно.
Тут изюм как раз в том что не сразу эт овсе происходит т.е. может все проработать сутки двое или пару часов. Но обращения к дамнным слевам которые звездой идет не частое практически не идет. ну т.е. если бы прям наводки были бы сильные там то выбивало би их давольно быстро а тут нифига. да и остальная часть сети пашет
И да эти слейвы они в основном на управление т.е. на вход а не на выход. ПОнятно что там и в обратку приходит ответ с CRC но доходить команда даже не доходит получается т.е. входы на микрухе тоже вешаются или я не прав?
прчет тут контрольная сумма, речь о перегруженных передатчиках.
рисуете эквивалентную схему и смотрите, чего вы там намасрячмли по токам
Не, просто вы так выразились: "перегружены выходы передатчиков" я не понял))) Ну я щас подожду когда зависинет померию и отпишу. Но я специально щас в звезде своей один переключатель сделал с терминатором. Так как грешу все же на волновое сопротивление линии, но это не точно)
юморист, что там можно под напряжением померить, или рассчитать или смоделить
??? xD т.е.по вашему под напряжением в любой цепи сопротивления не померить)? ладно отпишу завтра если проблема вылезет. Всем пока спасибо.
Ребят нет. Не придется ждать завтра. Моя теория отчасти правильна. Что имеем. Щас только что проверим опросом сеть и о чудо те слевы снова висанули все кроме того где напаян терминатор. О чем говорит? Т.е. все остальные 8 повисли и на команды не реагируют. Но 9тый на который я впаял между линиями 120 Ом пашет. Вот теперь вопрос какой терминатор мне лучше впаять в остальные? тоже 120? или взят ьпоменьше. Вроде как должно общее Rz сопротивление быть не меньше 40 Ом в сети. Так?
Понизьте скорость до 2400 (или до 600) бод на всех контроллерах.
Тогда у вас "исчезнут" помехи из-за волнового и ёмкости кабеля.
Ну и грузить передатчики кучей резисторов не стОит.
Хватает двух обычно.
замените в слейвах резисторы подтяжки на 10-15к, одну проблему уже устраните, а дальше смотреть, что там будет
Два достаточно когда топология шиной сделана а у меня звезда))) У меня на платах подтяжки ног есть по 560 Ом по стандарту а вот от волнового между линиями не было думал и так работать будет, а нет видать все же из за топологии такая беда. Так вот у меня 7 слевов на длине 10-20 метров вот на них хочу впаять резисторы от волнового как рассчитать кто знает? 120 на каждый слейв жирно будет сеть может упасть думаю. Меньше взять?
Скорость опроса по modbus уменя стоит 500 бод. А скорость обещения с драйвером 9600. и пашет нормально ниже нет смысла так как эти слейвы это свет и я эксперементировал если поставить выше то качество ниже само собой и следовательно задержки + кривых пакетов больше
ну аналогия кстати очень хорошая))) Я представляю в целом. Вопрос в том как теперь лучше выйти из ситуации раз дело в этом. Т.е. да когда на один слейв добавил 120ку то это ясен пень а если у меня топлогия звездой а не шиной как лучше быть? как от этой бяки избавиться если не подтяжка между линиями. Вопрос в том что ситация то не стандартная обычно не заморачиваются делают шину по концам 120ка и все щастливы. А я не учел у меня линии уже под обоями) Понимаю что надо впаять туда согласующие резисторы но на какй номинал не знаю как рассчитать(
Ладно еще проще. Провод это корыто. Вы передаете пакет 110011 и так далее . То есть 1 это горбы 0 это низины волны. Все приемники по длине корыта принимают ваши пакеты правильно горбы- низины . И волна идет так до конца провода. что в конце провода - стенка . Сигнал отразился и пошел в обратную сторону . И теперь прямой и отраженный наложились . Вы пробуйте что нормально рассказать в местности где сильное эхо. Или пакеты должны быть короткие . Или убрать "стенки у длиного корыта"- повесить на обоих концов провода дополнительные резисторы, что бы убрать ЭХО .
Начните с большой величины резистора и потом понижайте величину. У боже упаси использовать потенциометр.
)))) Да это понятно что либо топологию шиной сделать и все чтобы на конце стоял 120 резистор и гасил все и не было эха или делать у каждого так как у меня звезда. Вопрос в том что будет ли работать сеть если впаять например 120 Ом на 7 концов звезды. О
А реостат можно использовать?
Не обязательно вешать 120 Ом. Можно и большую величину. Просто народ теоретически вычислил, что так 100 % эхо будет минимально. Но можно выше, но тут пробовать и наблюдать надо. Всякие потенциометры и реостаты это дополнительные паразитные емкости и индуктивности. В дискретном резисторы они минимальны.
А реостат можно использовать?
запросто. тока с семью концами
я не просто так спрашивал про топологию.
попробуйте заменить звизду на линию с терминированием в конце оной. Возможно счастием Вам настанет.
иногда взаместо реостата помогает реохорд. Но это только помолясь :)
на ванваре как правило помогает терминирование на дальнем конце линии ( вплоть до 150 метров) но были случаи, когда по необьяснимым причинам всё нихера не работало и спасало терминирование вплотную к хосту.
Мистика однако.
чудес не бывает, а хуйня случается.
Да блин хотел бы звезду оставить так как я уже писал выше закладывал провода и если делать шину то будет ну очень длинная шина)))) ну работать будет но будет задержка точно выше чем щас думаю.
Ну вот я и спросил у знающий в теории и на практике сколько лучше учитываю что у меня на каждом конце придется вешать. Повесил на один слейв 120 и на мастере 120 все пашет а если я еще в сеть добавлю по 120 на каждый конец хуже чети не станет) я имею ввиду как это сказывается на работе сети в целом когда звезда и когда оно складывается же?
блажен, кто верует
Звёзды - зло
Звёзды - зло
это тоже, но маленькие звезды меньшее зло, чем большие , ибо зло это частотнозависимое!
Ладно ребят спасибо что отклюкнулись попробую завтра тогда оп 120 Ом паять туда на все концы и гляну как себя сеть вести будет.
не забудьте на поминки позвать, когда драйвера погорят
Ага
Поставь в центр звезды 50 Ом. Посмотри что будет. По datasheet минимальное сопротивление 25 Ом.
Еще вроде ферритовые бусы нужны около центра звезды. А так - я поддерживаю вариант с центральным терминатором.