Перейти к содержанию
    

поддержу

особенно про стаффинг

 

есть же протокол BSC(хрен знает какого года выпуска) прозрачный и все проблемы без всяких растяжек и всяких хрен знает каких пауз которые еще и на pc хрен получишь

 

чего все к этому модбасу привязались с его паузами один гимор от этих пауз

 

 

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

немного в поддержу juvf

Если вы работаете по протоколу modbus по RS485, будьте добры придерживаться стандартов (использовать подтяжку A и В), в противном случае оборудование сторонних разработчиков ваши изыски по RS485 не поймёт.

Если вы разработчик всей системы (и мастера и слейва), то зачем вы вообще используете modbus. Вы нашли способ, используя драйверы RS485 с True Fail-Safe, повысить надёжность передачи данных на большие расстояния - это замечательно, но не надо навязывать своё решение всем, тем более грубить. Напишите статью на эту тему и поделитесь своими наработками.

 

Например здесь

http://www.analog.com/media/en/technical-d...otes/AN-960.pdf

на стр. 7 есть описание RS485 с True Fail-Safe, где сказано, что используя новые драйверы отпадает необходимость использовать подтяжку А и В, значит ранее такая необходимость была?

На стр. 6 приводится расчёт резисторов подтяжки.

Изменено пользователем dm37

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добавлю сюда пару ссылок на предыдущие обсуждения проблем помехозащищённости RS-485:

Краткие выводы:

  • Растяжки спасают далеко не всегда;
  • Для гарантированного приёма начала пакета нужно либо подержать линию в активном состоянии перед началом пакета, либо передать "прочищающий символ" (это для протоколов с фиксированным символом начала пакета);
  • В качестве "прочищающего символа" хорошо подходит 0xFF.

2ef15b5b7d4a.png

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

немного в поддержу juvf

Если вы работаете по протоколу modbus по RS485, будьте добры придерживаться стандартов (использовать подтяжку A и В), в противном случае оборудование сторонних разработчиков ваши изыски по RS485 не поймёт.

 

 

это мы сейчас по кругу пойдем - хотя круги уже нарезаны

 

в чем я с Вами согласен - что манеру zltigo желательно изменить

надо разъяснять проблемы и показывать их решение - а не гордо фыркать - типа это очевидно

 

за всяким "очевидно" очень часто скрывается глобальный вопрос и разъяснив его вы обучите всех и сделаете полезное дело

 

будьте мягче и добрее и всем будет веселее и лучше

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

немного в поддержу juvf

Если вы работаете по протоколу modbus по RS485, будьте добры придерживаться стандартов (использовать подтяжку A и В)

"Стандарт" на MODBUS в котором про подтяжку на бочку :) :) :)

 

 

в чем я с Вами согласен - что манеру zltigo желательно изменить

надо разъяснять проблемы и показывать их решение - а не гордо фыркать - типа это очевидно

Понимание начинается с арифметики. Арифметическую задачку простейшую я сформулировал. После решнения ее будет понята и проблема вносимая растяжками. О том, что даже получив проблему с чувствительностью и дальностью из-за растяжек мы не получим такой помехозащищенности, как при поддержке активного состояния, можно будет уже потом разьяснять. Пошевелить извилинами Автор не озадачился. Ну и господь с ним.

Я со своим участием в этой теме закончил.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

нет чтобы написать - папа вышли денег

написал ПАПА вЫшли денег

 

 

попробуйте сосчитать до 10 - я понимаю что бесит- тогда попробутй до 1000 :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Понимание начинается с арифметики. Арифметическую задачку простейшую я сформулировал. После решнения ее будет понята и проблема вносимая растяжками.

я уже ответил. растяжки не обеспечивают гарантированную паузу. чо тут решать? очень интересно, чем вам растяжки в MODBUS не нравяться? вам нужна цифра? Для ваших условий согласно APPLICATION NOTE от AD 775 Ом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

попробуйте сосчитать до 10 - я понимаю что бесит- тогда попробутй до 1000 :biggrin:

Меня может бесить, когда я обязан кому-либо что либо втолковывать. Здесь я никому ничего не обязан. Толчек дал. Теперь пусть думает, какие НЕХИЛЫЕ отрицательные последствия от такой низкоомной растяжки, которая в тому-же, как у него зародилсь наконец-то умная мысль "растяжки не обеспечивают гарантированную паузу", то есть паузы по любому придется обеспечивать. Осталось сделать последний шаг, что, если паузы придется по любому обеспечивать управляющему контроллеру, то можно в это время и передатчик активным подержать, что будет будет много эффективнее для подавления помех и обеспечения читстой паузы, нежели растяжеки, и послать растяжки лесом.

Punkts un āmen.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ктож спорит то?

все дело в том - что зачастую даже когда приводят 2+2=4 нужно не только увидеть - но и прочувствовать

а это не всем дано бывает, и бывает очень долго приходится с этим свыкаться

особенно когда типа ты был молодцом ;-)

а тут вдруг раз и валенком по голове

 

терпимее надо быть - это я и себе говорю тоже ;-)

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

у него зародилсь наконец-то умная мысль "растяжки не обеспечивают гарантированную паузу", то есть паузы по любому придется обеспечивать. Осталось сделать последний шаг, что, если паузы придется по любому обеспечивать управляющему контроллеру, то можно в это время и передатчик активным подержать, что будет будет много эффективнее для подавления помех и обеспечения читстой паузы, нежели растяжеки, и послать растяжки лесом.

Punkts un āmen.

пф..... троль!!! ))))) Я вам дал ответ на вашу "задачку" за обещание показать бога надеясь услышать хоть один вразумительный довод. и? ....

у него зародилсь наконец-то умная мысль "растяжки не обеспечивают гарантированную паузу", то есть паузы по любому придется обеспечивать.
Нет я так не думаю. Для тех, кто в танке

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Стандарт" на MODBUS в котором про подтяжку на бочку

 

to zltigo

Надеюсь вы погорячились требуя стандарт на MODBUS с подтяжками (знаю, что вы понимаете, что такое протокол и интерфейс).

 

Речь шла о том, что большинство поставщиков оборудования с RS485 используют подтяжки. И если вы доработаете схему блока до вашего варианта, не факт, что он вообще работать будет и кому вы тогда будете предъявлять претензии - MOXA, Advantech? А заказчик требует что-бы работало. И ваши доводы, по поводу кривых рук разработчиков из MOXA, ему будут не интересны. Скорее всего он сделает "не правильные" выводы.

 

P.S. Кстати, разработчики из MOXA ещё те ребята, любят совмещать выходные линии RS485 и RS232. При такой схеме включения частенько вылетает драйвер RS232 и соответственно RS485 перестаёт работать. Приходиться резать дорожки или выбрасывать драйвер RS232.

Изменено пользователем dm37

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Надеюсь вы погорячились требуя стандарт на MODBUS с подтяжками (знаю, что вы понимаете, что такое протокол и интерфейс).

Вооще-то это Вы понесли ахинею. Цитирую:

Если вы работаете по протоколу modbus по RS485, будьте добры придерживаться стандартов (использовать подтяжку A и В)

Так что это я могу поздравляю Вас с "погорячился". Зато теперь Вы узнали, что никаких "стандартов" на подтяжки нет, не было и не будет ни в интерфейсах, ни в протоколах, нигде.

Речь шла о том, что большинство поставщиков оборудования с RS485 используют подтяжки.

Из этого совершенно не следует, что надо пополнять ряды рукожопых.

И если вы доработаете схему блока до вашего варианта, не факт, что он вообще работать будет и кому вы тогда будете предъявлять претензии - MOXA, Advantech? А заказчик требует что-бы работало. И ваши доводы, по поводу кривых рук разработчиков из MOXA, ему будут не интересны. Скорее всего он сделает "не правильные" выводы.

У MOXА растяжки опциональные. Им приходится с рукожопыми работать. Впрочем, как и мне. Так что и у меня, как уже писал, в оборудовании предназначенном для подключения чужих, потенциально рукожопных устройств, опциональные растяжки есть. Для своего оборудования нет, не было и не будет по причине нахренненужности и более того - вредности, ибо мне часто нужны дальности сегментов на уровне километров.

Есть еще один случай, когда таже MOXA вынуждена ставить растяжки, это вырожденный случай, например, конвертора произвольных байтовых потоков в Ethernet. В таком случае, когда правила фреймирования протокола и отсева мусора неизвестны любая помеха это смерть :( и ее приходится давить любой ценой.

 

 

пф..... троль!!! ))))) Я вам дал ответ на вашу "задачку" за обещание показать бога надеясь услышать хоть один вразумительный довод. и? ....

Следующий шаг здесь:

http://electronix.ru/forum/index.php?showt...t&p=1451820

Впрочем, про катострофическую потерю дальности я писал не раз. Посчитайте, что остается от чувствительности затерминированного приемника на дальнем конце линии при такой растяжке. Если сможете, то дальше нарисуйте с любимыми растяжками многоточку штук на 16, например, на километр AVG24 и подумайте как же оно сможет работать-то.

 

 

Еще раз, последний - мне эта тема про рукожопство надоела. Больше ответов не будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

to zltigo для информации

 

во вложении со страницы 22 и дальше...

отвечать вам не буду - бесполезно. Что хотел сказать, сказал выше. Каждый остаётся при своём мнении. Обсуждения не получается.

 

И вопрос к модераторам: хамство здесь разрешено?

Modbus_over_serial_line_V1_02.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

во вложении со страницы 22 и дальше...

Там как раз сказано, что растяжки не обязательны. Вернее, что их надо ставить в том и только том случае, если устройства в сети декларируют их необходимость:

Each MODBUS device must be documented to say :

- if the device needs a line polarization,

- if the device implements, or can implement, such a line polarization.

If one or several devices need polarization, one pair of resistors must be connected on the RS-485 balanced pair :

- a Pull-Up Resistor to a 5V Voltage on D1 circuit,

- a Pull-Down Resistor to the common circuit on D0 circuit.

The value of those resistors must be between 450 Ohms and 650 Ohms. 650 Ohms resistors value may allow a higher number of

devices on the serial line bus.

К тому же это уменьшает допустимое число устройств в сети на 4:

The maximum number of devices authorized on such a MODBUS Serial Line is reduced by 4 from a MODBUS without polarization.

 

zltigo конечно выражает своё мнение весьма экспрессивно, но его можно понять. Это тут уже обсасывалось не один раз. И все выкладки уже приводились. Я там несколькими постами выше привёл ссылки на предыдущие обсуждения, почитайте, если вам действительно интересно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

срезюмирую....

Как человек почти вся жизнь занимающийся всевозможными связными потоколами могу точно сказать, что Modbus RTU есть натуральное дерьмо.
после этого вообще можно было с этим человеком о Modbus-е ни о чем не говорить. Ну и далее гвоздь в дискуссию

И вообще RS-xxx это не стандарты, это отраслевые рекомендации, где до кучи записаны некие описания некоторых решений, причем сумбурные и неполные. ..... Пора уже давно забыть о ставших просто жаргонизмами RS....
no comments

 

juvf , Вы хотели что-то спросить, или просто еще раз подтвердить самому себе верность своего курса?
Во всех рекомендациях, которые я встречал говориться о защитном смещении. Нигде я не встречал про активную продувку. Нет, конечно я про такое слышал.... но не в рамках 485-го и модбаса, а вообще, в теории помехозащищенности линии. Но чтоб в модбасе что-то активно дули!? Может я не правильно готовлю модбас? решил это выяснить. А тут в ответ только вера в что-то святое и хамство. Конкретно, многоуважаемый zltigo заявляет, что под голый ПК, ака DOS - без проблем делает активную паузу. Например это хотел спросить. В ответ получил какую-то задачку…. И ответ “реши и поймёшь как”. Решил. И что? С неба спустилась миссия и открыла мне путь истинный как на десктопном ПК под DOS делать активную паузу?

Цену такого "решения", если не понимаете, поймете решив задачку в конце поста.

И решил…. Каково цена? Только тролить и языком молоть умеет.

 

 

Очень умиляют высказывания единомышленников

Пример хорошего протокола для RS485- тот же Модбас
vs
Modbus RTU есть натуральное дерьмо.
)))

 

 

Далее…

Ваш путь ошибочен. Лично Вам он годится, только и всего.
Возможно…. Только вот те системы с которыми мы стыкуемся… работают… но это всё равно МОЙ путь…. я понял, тут только болтуны толком ни чего не подскажут…. Только нахамят и потролят, как обычно. Ищем литературу, справочники, статьи на эту тему… кто как делает? кто каким путём ходит? Может кто короткую тропинку мне покажет?

Что находим .... пруф раз, пруф два, три, четыре…, а также five, six, семь, восемь .... Много их… и ненавистные вики, и в даташитах на драйвера и от производителей. вот конкретно

При прекращении передачи данных в сети, состоящих из множества передатчиков, подключенных к одному каналу связи, линейные драйверы переходят в «третье состояние» (т.е. отключенное состояние). В результате линейные приемники, прослушивая сеть, могут регистрировать ложные данные.

Для разрешения указанной проблемы разработчиком в приемопередающих узлах RS-485, должны быть предприняты специальные меры. Приемопередатчики узлов RS-485 должны быть оснащены цепями смещения выхода формирователя. По такому принципу построены приемопередатчики RS-485 всех приборов предприятия МИКРОЛ.

пруф Значит мой путь не ошибочный и он подходит не только мне!

Вот ещё интересный девайс… ICP DAS очевидно тоже ставит и/или предлагает ставить растяжки, по необходимости.

Но наш мистер джедай умеет направлять Силу, что даёт ему некоторые сверхъестественные способности zltigo предлагает всех, кто делает помехозащищенное смещение, кастрировать. Он от всех отличается. Может ему когда-то оторвали гениталии и он не хочет от других отличаться?

 

 

Теперь по делу…. Что могу ещё добавить…. Поделившись опытом… а не ради того, чтоб кого-то унизить или холиварить….

2demiurg_spb, я видел подобные парссеры. ..... выскажу мнение: мне не нравиться подобные парссеры. Почему.

1)Есть пакет. целостность пакета обеспечивается контрольной суммой и паузами тишины. я сначала выделяю весь пакет из потока, проверяю его целостность и только потом начинаю обрабатывать данные этого пакета. Ну я как-то изначально…. В любом протоколе сначала проверяю целостность пакета, а потом обрабатываю внутренность пакета. Вы адрес и функцию обрабатываете не проверив целостность пакета. может в поле адрес ошибка, или в поле функция.... конечно в конечном счете црц покажет, что пакет был битый....

но.... вот у вас отправили пакет 2-му устройству, один бит ложный. Слейвы получили адрес 6

и тогда 2-ой девайс НЕ отметит битый пакет, а 6-ой девайс отметит, что пакет был ему адресован, но црц плохой и 6-ой сделает mb->stat.comm_errors++;. хотя на самом деле пакет был адресован 2-му. Если црц не совпал, то ни кто не знает, кому на самом деле пакет был адресован.

2) Вы не сможете оценить зашумлённость линии. Ну если конечно это вам надо. Я всегда это делаю. Даже один ложный байт в тишине увеличит счетчик ошибок во всех слевах.

Это абсолютно правильно, ибо если адрес не ваш, то уже пофиг и пакет и его целостность - пакет уже игнорируется и становимся в ожидание следующего фрейма без лишних разбирательств.
Возможно это нашему маниакальному хирургу кому-то подходит, но это не вписывается в стандарт MODBUS. Ибо в стандарте есть функция 8 -Diagnostics (Serial Line only) . подфункция 12

The response data field returns the quantity of CRC errors encountered by the remote device since its last restart, clear counters operation, or power–up. Т.е. не нужно игнорировать чужой пакет с битым црц.

 

Что касается растяжек…. Все эти расчеты …. Сложные… они должны учитывать кол-во слейвов, длину кабеля, активное сопротивление/емкость/индуктивность…. Драйвера слейвов (у одних сопротивление 12 кОм, у других 24 кОм…) одни растяжки ставят в начале линии, другие на каждом слейве (например, если растяжки есть внутри драйвера)… терминатор может быть, может не быть, их может быть два….

Согласно апликэшен ноут от аналог девайс на 100 омную линию с 2 терминаторами нужно 775 Ом. Это конечно круто. По другим рекомендованным расчетам получалось около 560 Ом…. На практике мы ставим от 2.4 кОм…. Меньше не ставили. И реально эти растяжки на линии подбирали опытным путём. Также предлагают подберать опытным путём растяжки и терминаторы ICP DAS, причем растяжки только 1 кОм, 10кОм и даже 100кОм

 

2demiurg_spb я уже говорил, что имею опыт на линиях до 500 м. У вас линии длиннее? Интересно посмотреть на байт 0x55 в линии с растяжками и без. Какие фронты? Как это повлияет на скорость? zltigo не уподобился ответить на вопрос о длине линии…. Но потом проговорился, что ему интересны километры. Однако RS-485 вроде как до 1200 метров. Выше – это уже какой-то овердрайв и использовать там общепринятые решения наверно не целесообразно.

 

есть такое... но в модбас такое не прокатит... если только в 4 раза скорость понизить, вдунуть 0хфф, потом поднять скорость и слать пакет.

 

извиняюсь перед ТС за офтоп.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...