Короче, какой-то спор о курице и яйце. Я не спорю, что MODbus RTU можно передавать разными способами. При этом цифры ни как не изменятся, хзоть флажками, хоть огнями на башнях. Но если передавать ethernet добавятся датаграммы в начале цифр и в конце цифр.
Комментарии: 48
Andrey
Какие датаграммы конкретно? Каких цифр конкретно?
Vadik
UDP не стоит передавать. Он потому и называется Modbus TCP.
Leonid
чё
Vadik
Адрес источника, адрес приёмника, контрольная сумма - как минимум эти цифры
Leonid
вы чё несёте вообще читайте доки оба)))
Vadik
Так может прояснишь?
Leonid
как научить 3тьекласника сопромату? доки читайте
Vadik
Кинул какашкой и убежал? Знаем, не первый раз в этих ваших интернетах)
Leonid
Дааа))))
Andrey
Снаружи Payload UDP или ТСР пакета ничего не изменится. Шлюз тоже не будет обрабатывать, просто выплюнет Payload в сеть 485/232. Вам ясно понятие Payload (пакет данных) UDP/TCP пакета?
Vadik
Что такое PayLoad? Вот у меня PLC выходом ModBUS RTU и вот у меня прибор с выходом ModBus RTU. Между ними растояние 5 км. и имеется локальная сеть, охватывающая это расстояние. Тоесть я просто цепляю rj45 коннектор с обоих сторон и всё заработало? Если нет, что именно мне надо, что бы заработал ModBus RTU?
Vladimir
Добрый день . Подскажите пожалуйста. В чем может быть причина неисправности. Есть два элемента
Andrey
Да, 2 прозрачных шлюза ставите, настраиваете на них адреса и порты Ethernet, и всё работает, по крайней мере в одной подсети. Я проверял.
Vladimir
Через патч панель подключены две витые пары. Видео сигнал не проходит. Перемычки между портами установлены Через соединитель проходит видеосигнал.
Ensem
аналоговое видео через витуху гоняете уже?)
Vladimir
Нет цифровое видео Устройства: компьютер цифровой телевизор разьемы hdmi
Ensem
может расшита патч панель не по типу B или кроссовером соединили какнить
Vadik
Да всё работет, дружище. Конечно всё работает со шлюзами. Речь не о том, что ModBus RTU не передать через ethernet. Речь о том, что напрямую, без преобразователей не пойдёт ModBus RTU
Vladimir
Схема подключения: арм-- hdmi-- передатчик-- витая пара-- патч панель-- витая пара-- приемник--- hdmi-- ТВ на патч панели пропадает передача видеосигнала
Andrey
Payload смотри тут https://yandex.ru/images/touch/search?img_url=https%3A%2F%2Fblogfiles.pstatic.net%2FMjAxODEyMThfMjkg%2FMDAxNTQ1MDk0NjA3NjAx.PFWY6OPV08EwCXt8fV_EKqCb758HZFSkcH-xiuNdk1kg.b7up8MBLBsU_OfAM2-jxcciPH3CyJFF-Y4quMcTzMmAg.JPEG.sung_mk1919%2FPacket%252CAnalysis.-.cheerman.jpg%3Ftype%3Dw1&lr=63&pos=4&rpt=simage&source=tabbar&text=%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%20%D0%BA%D0%B0%D0%B4%D1%80%D0%B0%20udp
Vadik
UDP это протокол без проверки контрольной суммы, по этому и не стоит его использовать для доставки модбаса, лучше использовать протокол ТСР.
Vladimir
заменяю патч панель на соединитель видеосигнал появляется
Andrey
Лучше больше ничего не пишите утверждающего, Вам надо больше вопрошающего писать. Я ж Вам отправил картинку с пакетами, Вы её раньше когда-нибудь видели и думали о ней? В Ethernet есть свой CRC, внутренний CRC избыточен. Плюс в прозрачной передаче CRC Модбаса остаётся.
Vadik
Хамим? ))) https://ru.wikipedia.org/wiki/UDP Лучше отправь картинку, как мне из Lenze PLC скачать программу ;)
Andrey
Да нет, просто предлагаю не смешить людей. Другие бы просто тихо ржали, наслаждаясь Вашим уровнем непонимания.
Vadik
Так я и не понял, каким образом поддерживается контрольная сумма сообщения в UDP если там только контрольная сумма датаграммы. А сам пакет может быть разбит на несколько датаграмм, которые могут не дойти?
Andrey
UDP не разбивается на части. Контрольная сумма из ADU Модбаса инкапсулируется в UDP пакет вместе с остальными данными. Потом шлюз выплёвывает весь пакет Modbus RTU или ASCII в 485, там слейв проверяет её и отправляет ответ при верном CRC. Вероятность ошибки одна на миллиард, с учётом проверки CRC Ethernet чипом Ethernet.
Vadik
А как? Как это не разбивается? это откуда такая информация? Из доков по протоколу UDP?
Anton
скачай книгу Таненбаума по сетям
Vadik
В наличии ;)
Anton
читай
Vadik
Даже сети для самых маленьких имеюются )
Andrey
1400 байт обычно хватает для передачи 256 байт Модбаса
Vadik
Ну тоесть UDP именно для модбас рту проверяет контрольную сумму сообщения. Я правильно понял? НО не гарантирует доставку сообщения или порядок этих сообщений? Т.е. всё таки нет разницы с ТСР , ну или она настолько незначительна что вполне устроит и UDP?
Anton
Таненбаума таки почитай есть много других книг, но Таненбаум у всех на слуху и его книги проще найти в пдф
Berkeman
UDP, емнип, не подтверждает доставку фрейма. Выплюнул и забыл
Oleg
Выкинь слово UDP и замени его на TCP, UDP тут вообще не учавствует при любом стечении обстоятельств
Vadik
Хоть Таненбаума, Хоть Олиферов, Хоть Хабр, Хоть википедию читай - UDP это скорость и ненадёжность. Всё что написано "не делает", делает ТСР.
Oleg
Надежности в UDP нет, это телеграмма в одну сторону на конкретный порт конкретного IP
Vadik
Т.е. ТСР проверяет доставку сообщения и если нет, повторяет его. Так же он соблюдает порядок следования пакетов.
Andrey
UDP не проверяет CRC. В данном случае CRC проверяет Ethernet. Сам пакет модбаса RTU весь, со своим CRC, при этом сидит внутри пакета, ТСР или UDP. И когда его выпустят на волю, он полетит дальше целочкой, как будто никакого Ethernet и не было. Не факт что повторяет, но может повторить, да
Vadik
Абсолютно согласен. Всё именно так как ты и пишешь. Главное что бы пакет дошёл ;)
Andrey
Надёжность в данном случае обеспечивается клиентом протокола, при неполучении ответа он отправляет запрос заново. Обычно этого достаточно. Любой приличный ОРС сервер или драйвер скады это делает.
Andrey
И что?
Anton
не совсем так
Vadik
Да совсем не так, я криво написал , чем возбудил фонтаны. Да, там есть контрольная сумма датаграммы, но сами датаграммы приходят в произвольном пордке или вообще не приходят и это ни как не контролируется.
Anton
ну тоже не совсем так