![]() |
![]() ![]() |
![]() |
#1 |
Senior Member
Регистрация: Jan 2013
Сообщения: 739
Благодарил(а): 22 раз(а)
Поблагодарили:
13 раз(а) в 12 сообщениях
|
![]()
Имеется мастер и несколько слейвов. Можно ли послать один за другим запросы ко всем слейвам, а потом собрать с них ответы? Или необходимо последовательно, дожидаться ответа на первый запрос, затем отправлять второй и т.д.? Что-то я запутался вдруг тут. Ответ от слейва содержит в себе его адрес, т.е. ответы нельзя перепутать, даже если они кучей придут. С другой стороны я сам всегда так и делал - опрашивал последовательно.
|
![]() |
![]() |
![]() |
#2 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
![]()
Ответы вообще не могут приходить кучей.
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили:
10 раз(а) в 10 сообщениях
|
![]()
Может ли одна бригада из 4х человек за одну ночь удовлетворить 300 женщин. Ответ: может если ночь полярная и бригада ударная.
Ответы могут уходить кучей и приходить кучей если MODBUS TCP. __________________ В жизни 2 правила успеха: 1 Не говори всего что знаешь 2 ... |
![]() |
![]() |
![]() |
#4 |
Senior Member
Регистрация: Jan 2013
Сообщения: 739
Благодарил(а): 22 раз(а)
Поблагодарили:
13 раз(а) в 12 сообщениях
|
![]()
Я тут прояснил для себя, что интересующий меня способ опроса называется асинхронным. При работе с Modbus TCP такой вариант возможен, но меня интересует Modbus RTU. Вроде там только синхронный доступ (пишут так в Инете), но хотелось бы понять почему?
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
![]() |
![]() |
![]() |
![]() |
#6 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]() Цитата:
Вы не интернет читайте, а даташит. Применительно к старым протоколам это и время экономит и вопросов после себя меньше оставляет. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
![]() |
![]() |
![]() |
#7 | |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
![]()
На RS-485 в один момент времени активным на передачу может быть только одно устройство. Остальные будут только слушать пока не будет тишины.
Цитата:
|
|
![]() |
![]() |
![]() |
#8 | |
Senior Member
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили:
10 раз(а) в 10 сообщениях
|
![]() Цитата:
Если устройство увидело конец таймаута по тишине, разбирается пришедший запрос. Если запрос к этому устройству и запрос приемлем, устройство сразу переходит к ответу (таймаут уже до этого был). В связи с этим мастер не сможет передать второй запрос, так как в это время будет отвечать первый. Если ввести таймаут начала передачи ответа на устройстве и читать порт во время этого таймаута, а так же задать разные таймауты на разных устройствах. Далее уменьшать таймаут в зависимости от пропуска своей очереди. Назвать это carrier-sense-multiply-access with collision detection, CSMA/CD. Потом при увеличении устройств в сети поставить коммутаторы. Назвать все это Ethernet. На мой взгляд более правильное решение, я его неоднократно озвучивал, пропустить эти шаги в своем развитии и сразу использовать Ethernet. Добавлено через 3 минуты При Брежневе поговорка такая была. Если женщина красива и в постели горяча это личная заслуга Леонида Ильича. Какая разница чья заслуга. Главное результат. __________________ В жизни 2 правила успеха: 1 Не говори всего что знаешь 2 ... |
|
![]() |
![]() |
![]() |
#9 | ||
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]() Цитата:
Проходили это в 2003/4. Всё уже придумано до нас. Существуют протоколы с арбитражем, там узлы начинают передачу одновременно, прослушивая при этом линию. Передача начинается с номера приоритета, затем адреса узла. Рано или поздно передаваемые 1/0 перестанут совпадать и победит тот, кто передаёт 0 - остальные отключат передачу. Добавлено через 1 минуту Цитата:
![]() __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
||
![]() |
![]() |
![]() |
#10 | |
Senior Member
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили:
10 раз(а) в 10 сообщениях
|
![]() Цитата:
MODBUS TCP от правильных устройств, в том числе Ваших, работает довольно быстро. Отклик менее 1 мс. Вот и весь рецепт. __________________ В жизни 2 правила успеха: 1 Не говори всего что знаешь 2 ... |
|
![]() |
![]() |
![]() |
#11 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]()
Это всё на ком-портах работало до изобретения эзернета. Хотя что такое эзернет? Это всего лишь очень быстрый ком-порт...
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#12 | ||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
![]() Цитата:
А у мастера есть запросы к другим? Цитата:
![]() |
||
![]() |
![]() |
![]() |
#13 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]()
Изначально всё придумано для 232. Но работает и на 485 на модифицированных передатчиках и малом количестве узлов. Лучше работает на 422.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#14 |
Senior Member
Регистрация: Jan 2013
Сообщения: 739
Благодарил(а): 22 раз(а)
Поблагодарили:
13 раз(а) в 12 сообщениях
|
![]()
Спасибо за разъяснения.
|
![]() |
![]() |
![]() |
#15 |
Senior Member
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили:
10 раз(а) в 10 сообщениях
|
![]()
+2 существенных, может даже гениальных отличия. Симметричная нагрузка (трансформатор) + витая пара а так да.
__________________ В жизни 2 правила успеха: 1 Не говори всего что знаешь 2 ... |
![]() |
![]() |
![]() |
#16 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]()
Транс как дешёвая на то время и автономная развязка, ставшая возможной из-за изначально высокой частоты. Первые "эзернеты" строились на антенный кабелях, а не на паре. Не было тогда уартов настолько быстрых. Это щас уарты на 80 гбит существуют. Тогда и 115k было иногда за горизонтом мечтаний.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#17 | ||
Senior Member
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили:
10 раз(а) в 10 сообщениях
|
![]() Цитата:
Есть ситуация похуже опять же из практики. Это когда устройство зависает или подгорает и на линии 485 все время напряжение. Это воспринимается как линия занята (собственно так и есть) и все стоят и слушают. Правда такое было только один раз, но ситуация не невозможная. Добавлено через 13 минут Цитата:
__________________ В жизни 2 правила успеха: 1 Не говори всего что знаешь 2 ... |
||
![]() |
![]() |
![]() |
#18 | |||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
![]() Цитата:
Цитата:
Про коаксиалку после пяти мегабит забыли. А MTBus работает на 3.75. (по длине линии не очень верю рекламе) Цитата:
232-й 422-й могут работать в дуплексе там разные линии Tx и Rx. Запросы мастера (или общий запрос) и ответы слейвов могут идти одновременно. Но одновременная передача слейвами никак. Последний раз редактировалось ATS, 22.10.2021 в 13:58 |
|||
![]() |
![]() |
![]() |
#19 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]()
Как-как. Я писал такие протоколы в студенчестве, оно работало и работало стабильно. Идею и описание работы дёрнул из описания какой-то ЭВМ древней. Сейчас уже и не вспомню, какой. Но от передатчика чётко требовалось иметь ноль сильнее единицы. Дуплекс вообще не спасает, т.к. передатчики работают на единую линию. Помощь только в том, что на RX можно повесить R-сборку, снижающую степень оглушения собственным передатчиком. Это повышает скорость прохождения хендшейка.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#20 | ||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
![]() Цитата:
![]() Цитата:
![]() P.S. Оффтоп пора кончать - к модбасу это не относится |
||
![]() |
![]() |
![]() |
#21 | |
Senior Member
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили:
10 раз(а) в 10 сообщениях
|
![]() Цитата:
Коаксиалка должна быть дороже 100 руб. FTP cat 6 около 35 руб/м Соответственно транс и разъем добавят стоимости, но кабель перекроет удешевление. Ethernet в этом компоненте тоже не проигрывает. Вариант MTBus и он же по необходимости modbus RTU/ASC. Вижу только одно преимущество - отсутствие лицензионных ограничений. Можно предложить EMTBus (MTBus Ethernet). При необходимости другие протоколы. Это если рассматривать других производителей. Profibus/Profinet, CAN/Ethercat, DeviceNet(CIP)/"Ethernet/IP" До 80-100 м однозначно Ethernet выигрывает, далее за счет перехода на оптику некоторый проигрыш, затем опять выгрыш, но только по стоимости. По скорости проигрыша нет ни в каких вариантах. __________________ В жизни 2 правила успеха: 1 Не говори всего что знаешь 2 ... |
|
![]() |
![]() |
![]() |
#22 |
Senior Member
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили:
10 раз(а) в 10 сообщениях
|
![]()
Стандартные уровни напряжения в RS-485 -7...+12В относительно 0.
ANSI TIA/EIA-422 and TIA/EIA-485 В Ethernet относительно земли переменное напряжение на выводах TIA/EIA-568-B.2 __________________ В жизни 2 правила успеха: 1 Не говори всего что знаешь 2 ... Последний раз редактировалось Arsie, 20.01.2022 в 12:57 |
![]() |
![]() |
![]() |
#23 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
![]() |
![]() |
![]() |
![]() |
#24 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]()
А нет никаких разных линий. Все слушают всех. Два провода в линии связи. Иногда три: синхронизация старта.
Хорошо, коньчаю)) конь_лите.jpg __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#25 | ||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
![]() Цитата:
Драйверов с питанием более 5 вольт не припомню. Минуса там быть вообще не дожно. А так и в Ethernet и RS-485 (хотя больше общего с 422-м) дифференциальные шины. Отличие только в наличии смещения относительно нуля у 485-го. Добавлено через 7 минут Цитата:
В в 422-м не меньше 4-х. в 485-м соответственно двух. И в четырехсотых дифференциальная шинка. 0 и 1 это смена полярности. |
||
![]() |
![]() |
![]() |
#26 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]() __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#27 |
Senior Member
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили:
10 раз(а) в 10 сообщениях
|
![]()
Общее время опроса у MODBUS TCP будет равно времени опроса одного слейва по MODBUS RTU + 0.05ms * 2 * 10. За счет возможности одновременного опроса. Если конечно требуется.
Добавлено через 1 минуту Я приложил страницу из стандарта. Хотите верьте хотите нет, но по стандарту так. __________________ В жизни 2 правила успеха: 1 Не говори всего что знаешь 2 ... |
![]() |
![]() |
![]() |
#28 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]() Цитата:
https://www.analog.com/ru/products/l...oduct-overview А так-то давно уже уарты не требуют 2-3 уровней напряжений в питании) __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
![]() |
![]() |
![]() |
#29 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
![]() |
![]() |
![]() |
![]() |
#30 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 115
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
![]()
-7V to 12V Common Mode Range Permits ±7V Ground Difference Between Devices on the Data Line
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |