|
Связь с внешним миром Modbus, RS232, RS485, Lon и другое. |
|
Опции темы | Поиск в этой теме | Опции просмотра |
06.03.2019, 13:15 | #1 |
Новичок
Регистрация: Nov 2018
Сообщения: 18
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Тормозит передача по modbus на индикатор (решено)
Вывожу циферку одновременно на экран контроллера и по модбас на индикатор ОВЕН SMI2. На индикаторе цифра обновляется секунд на 10-15 позже, чем на экране. Залез посмотреть в SMLogix - и действительно, на входе кубика с переменной число уже несколько раз поменялось, а на выходе появляется секунд 15 спустя.
Всего на модбасе 8 устройств. Из двух читается по 40 слов групповым запросом, в 6 пишется по одному слову. Скорость 19200. Период для всех переменных 500 мс. Что за фигня? Искать проблемы в проводах или..? |
06.03.2019, 14:02 | #2 |
Senior Member
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили:
3 раз(а) в 3 сообщениях
|
Ответ: Тормозит передача по modbus на индикатор
2 Увеличьте период до 3 секунд |
06.03.2019, 14:23 | #3 |
Новичок
Регистрация: Nov 2018
Сообщения: 18
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Тормозит передача по modbus на индикатор
|
06.03.2019, 16:03 | #4 |
Senior Member
Регистрация: Oct 2010
Адрес: Москва
Сообщения: 403
Благодарил(а): 29 раз(а)
Поблагодарили:
2 раз(а) в 2 сообщениях
|
Ответ: Тормозит передача по modbus на индикатор
Увеличение скорости и, главное, увеличение периода опросов - позволяют иметь короткую очередь (в идеале - только из выполняющегося в данный момент запроса к слейву), и тем самым обеспечить почти мгновенную реакцию индикатора. UPD: Если задержка индикации СМИ2 критичнее частоты опроса датчиков - настройте слейвы на обращение "по запросу", и дергайте их поочередно: Slave1-индикатор-Slave2-индикатор-Slave3-индикатор-... и т.д. При этом частота запросов станет пофигу (хоть 1 мс) - индикатор будет обновлять очень часто, и задержку вы практически не увидите... |
06.03.2019, 17:27 | #5 |
Новичок
Регистрация: Nov 2018
Сообщения: 18
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Тормозит передача по modbus на индикатор
Как-то у меня в голове не склеивается.
Пусть 1 и 2 - устройства, с которых читаем (причём, как я написал, читаем немного), 3-8 - пишем (вообще по одной переменной). Период везде одинаковый и, по логике, контроллер ставит запросы в очередь как-то в том же порядке 1-2-3-4-5-6-7-8-1-2-3-4....Пусть период опроса слишком короткий - начинает копиться очередь.... а потом запросы начинают отбрасываться... ну и пускай отбрасываются. я просто получаю ответы на более старые запросы, но в том же порядке - 1-2-3-... Зато опрос идёт без перерыва.. Да и вроде передача 40 слов одним групповым запросом даже на скорости 19200 должно занимать совсем небольшое время. Другое дело - если тормозит контроллер, С которого считываем данные - но тогда изменение периода опроса не поможет. Тогда, наверное, имеет смысл поставить разный период опроса - для устройств 1 и 2 (контроллеры) - побольше, а 3-8 (индикаторы) - на порядок меньше? Видимо, придётся какой-нибудь сниффер в руки и смотреть, что на шине делается... Могу отписаться, если удастся это сделать. |
06.03.2019, 22:47 | #6 |
Senior Member
Регистрация: Oct 2010
Адрес: Москва
Сообщения: 403
Благодарил(а): 29 раз(а)
Поблагодарили:
2 раз(а) в 2 сообщениях
|
Ответ: Тормозит передача по modbus на индикатор
Отпишитесь, конечно.
Я с этим столкнулся, когда распределенную сеть мучал - в итоге перешел к системе К-1-К-2-К-3-...-К-n (где К - критичный слейв, 1...n - менее критичные). Увеличение периода опросов, сокращение тайм-аутов, увеличение сокрости и т.п. работают только до тех пор, пока все слейвы отвечают сразу и быстро. Стоит одному "замешкаться" (перестать отвечать, сдохнуть, ловить помеху во время передачи) - и всё, запросы начинают копиться как снежный ком; при этом критичный сможет "втиснуться" лишь если попадет в очень узкое окно, когда в очереди уже появится свободное место, но ни у кого из некритичных еще не истечет интервал. А схема с опросом "через один" гарантирует запрос даже если дергать очередной слейв каждый тик... |
07.03.2019, 08:05 | #7 |
Senior Member
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили:
3 раз(а) в 3 сообщениях
|
Ответ: Тормозит передача по modbus на индикатор
|
07.03.2019, 10:52 | #8 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: Тормозит передача по modbus на индикатор
Тайм-аут подберите правильный, базовый 100 мсек для передачи пары значений непомерно велик. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
TRIM Modbus Slave на две сети (решено) | Jury.K | Связь с внешним миром | 15 | 27.03.2019 01:06 |
Помогите SMH4 и Modbus (решено) | Divikom | Связь с внешним миром | 6 | 21.06.2018 15:17 |
Pixel→Moxa_NPort_5150→ПЧ_ABB_ACS_310 по Modbus (решено) | Aiven | Связь с внешним миром | 24 | 24.03.2017 08:16 |
Чтение-запись адреса MODBUS из ПК (решено) | vlanaz | Связь с внешним миром | 3 | 16.02.2017 13:30 |
COM1 порт забит запросами по modbus! (решено) | chaos1727 | Вопросы о SMH-2G | 2 | 28.05.2015 18:07 |