PDA

Просмотр полной версии : СПК MODBUS, Таймаут отклика (мс)



Пьер
26.12.2014, 20:38
Опытным путем:) выявил, что при настройке (Modbus_Master_COM_Port(ModbusMaster))Modbus'a Таймаут отклика (мс), должен быть одинаковым и совпадать с Таймаутом ответа(мс) подключенного(ых) ус-в(а) - это для устойчивой связи!

Не могу утверждать, но при долгой маете со обрывами связи устройств, мне это помогло. Стабильно держит связь!

Мурат Ахриев
27.12.2014, 09:39
Добрый день, спасибо за информацию. Проверим на нашем стенде.

Пьер
28.12.2014, 17:58
Добрый день, спасибо за информацию. Проверим на нашем стенде.

Создал журнал, который выводит действия оператора, т.е. события!
Но при нажатии "История" связь с модулями подключенными сразу прекращается. Приходится делать перегруз СПК. Что такое, не понятно.

СПК207
Версия прошивки 3302
Модификация spk207web
CDS V3.5 SP5

RomAl
28.12.2014, 20:09
Опытным путем:) выявил, что при настройке (Modbus_Master_COM_Port(ModbusMaster))Modbus'a Таймаут отклика (мс), должен быть одинаковым и совпадать с Таймаутом ответа(мс) подключенного(ых) ус-в(а) - это для устойчивой связи!

Не могу утверждать, но при долгой маете со обрывами связи устройств, мне это помогло. Стабильно держит связь!

Т.е. нужно найти устройство с максимальным таймаутом и всем проставить такую величину, в том числе и модбас мастеру?
Интересно, пока Мастером ожидается ответ Слейва остальные задачи благополучно работают?
Что такое "Таймаут ответа" Модбас слейва я вроде понимаю и у каждого слейва он свой. Но что такое "Таймаут отклика" Модбас Мастер для меня вообще загадка, кто-нибудь объясните мне что это и чему оно должно быть равно?
И ещё, каков приоритет работы Модбас мастера? Прерывает он работу задач созданных в менеджере задачь или на его работу может просто не хватать времени? Как посмотреть время работы Модбас мастера в КодеСис? (не пользуясь осциллографом)

RomAl
28.12.2014, 20:20
Создал журнал, который выводит действия оператора, т.е. события!
Но при нажатии "История" связь с модулями подключенными сразу прекращается. Приходится делать перегруз СПК. Что такое, не понятно.

СПК207
Версия прошивки 3302
Модификация spk207web
CDS V3.5 SP5

Журнал не пробовал, зато сделал конфигуратор тревог и сейчас думаю не отказаться ли мне от него так как он "пожирает" кучу времени- даже больше чем визуализация, думаю, может он и виноват во всех проблемах. А историю в визуальной компоненте "таблица тревог" отключил совсем так как просмотр истории оказался вообще не подъёмным- тормозит страшно. У меня то СПК110, может СПК207 по-другому..

Ефремов Николай
30.12.2014, 10:23
Доброго времени суток.
Прошу ответить на мой вопрос по похожей теме. Проблема: СПК не видит модуль МДВВ, но другие модули(МВ и МУ) определяет. Общение происходит на Modbus-RTU и в регистре МДВВ Prot:=Modbus-RTU (для МВ и МУ этого не требуется). Сравнивая сетевые параметры модулей, установленные конфигураторами, я не нашёл отличий кроме "Задержка ответа по RS-485". Для МДВВ этот параметр по умолчанию 30 мс, а на других модулях установлено 2 мс. Возможно ли, что из-за этого параметра СПК не дожидается ответа от МДВВ? Если причина в другом, то подскажите в чём?
И вопрос к Пьеру: Под "Таймаутом ответа(мс) подключенного(ых) ус-в(а)" вы подразумеваете "Задержка ответа по RS-485"?
Если же "Максимальный сетевой тайм-аут" то по моему мнению он только влияет на то когда загорится светодиод "авария" на модуле. Но возможно я ошибаюсь.

capzap
30.12.2014, 10:28
задержка ответа это и есть задержка ответа на запрос от мастера, мастер не зная что такая большая задержка у Вас стоит, отсчитывает свой таймаут и не получив ответа на запрос, естественно "не видит" модуль

Ефремов Николай
30.12.2014, 11:08
Я готов полностью согласиться с Вами, но вот одно сомнение: на обоих мастерах в СПК207 у меня стоит таймаут =1000мс (по умолчанию), а вот время между фреймами =10мс. Получается влияние может оказать только время между фреймами ( я правильно понимаю, что фрейм это либо время необходимое для передачи запроса, либо время необходимое для передачи ответа?).

capzap
30.12.2014, 11:21
Modbus RTU — компактный двоичный вариант. Сообщения разделяются по паузе в линии. Сообщение должно начинаться и заканчиваться интервалом тишины, длительностью не менее 3,5 символов при данной скорости передачи. Во время передачи сообщения не должно быть пауз длительностью более 1,5 символов. Для скоростей более 19200 бод допускается использовать интервалы 1,75 и 0,75 мс, соответственно. Проверка целостности осуществляется с помощью CRC.вот промежуток времени между фреймами это пауза не больше длительности 0.75-1.5 символа

Ефремов Николай
30.12.2014, 11:31
вот промежуток времени между фреймами это пауза не больше длительности 0.75-1.5 символа

Какова длительность символа на скорости 115200?

capzap
30.12.2014, 11:34
ну скорость Вы назвали, симввол у нас занимает восемь бит, :) вспоминайте школьную математику

Ефремов Николай
30.12.2014, 11:48
ну скорость Вы назвали, симввол у нас занимает восемь бит, :) вспоминайте школьную математику

То есть 70 мкс, время между фреймами не менее 0,25 мс. Значит, можно не боясь время между фреймами для скоростей 115200 и 57600 поставить скажем 1 мс?

capzap
30.12.2014, 11:58
Интервал между фреймами в modbus RTU должен быть "длинной" не менее 3.5 единичной посылки. При скорости 115000 и 11 битах в единичной посылки интервал составит: 3.5 * 11 / 115000 = 0.335 мс. вот нагуглил, на вики про модбас этот абзац почему то стерли, 11 это символ плюс обертка фрейма

Ефремов Николай
30.12.2014, 12:04
Спасибо за потраченное на меня время.

RomAl
30.12.2014, 16:14
задержка ответа это и есть задержка ответа на запрос от мастера, мастер не зная что такая большая задержка у Вас стоит, отсчитывает свой таймаут и не получив ответа на запрос, естественно "не видит" модуль

А поподробнее для непонятливых не можете добавить конкретики?
В конфигураторе есть "Таймаут ответа" Модбас слейвов и есть "Таймаут отклика" Модбас мастера этих слейвов и чему оно должно быть равно?
Каждый слейв имеет свою максимальную задержку ответа и я её проставляю в "Таймаут ответа" Модбас слейвов. Для простоты проставил для всех Модбас слейвов 50мс. так как больше по паспорту они не должны делать.
А что записывать в "Таймаут отклика" Модбас мастера?

capzap
31.12.2014, 08:22
кто Вас вобще заставляет менять всё, что доступно для редактирования,если Вы в этом ничего не понимаете. Имеет смысл менять, если при настройках по умолчанию, что то идет не так и то один параметр сменили, проверили, если нет изменений вернули на место, а этот совковый принцип взять прозапас бесит просто

RomAl
31.12.2014, 14:51
Меня лично заставляет менять то, что стабильной работы панели нет- вроде бы всё работает, но иногда какие-то зависания происходят, а о причинах сама панель молчит :) Документации нормальной, как сами знаете, на работу Кодесис и панелей как не было,так и нет (есть только отдельные примеры и поверхностные инструкции в стиле "книга для чайников") поэтому приходиться копать глубже самому.
Если я хочу знать назначение основных параметров в конфигурации чтоб делать более эффективные и надёжные программы, то это свидетельствует о моей совковости? Впрочем совковость звучит не так обидно как зазнайство и самодовольство и пусть я буду совком и ватником, чем с умным видом объяснять работягам, что панель глючит по вине её разработчиков.
Вот вы считаете себя тут знатоком но не смогли ответить на мой такой простой вопрос.
Кому-то разжёвывают элементарное не жалея времени, а я не могу тут получить ответ на большинство своих вопросов..

capzap
31.12.2014, 14:55
Заставляет менять то. что стабильной работы панели нет- вроде бы всё работает, но иногда какие-то зависания происходят, а о причинах сама панель молчит :) Документации нормальной, как сами знаете, на работу Кодесис и панелей как не было,так и нет (есть только отдельные примеры и поверхностные инструкции в стиле "книга для чайников") поэтому приходиться копать глубже самому.
Если я хочу знать назначение основных параметров в конфигурации чтоб делать более эффективные и надёжные программы, то это свидетельствует о моей совковости? Впрочем совковость звучит не так обидно как зазнайство и самодовольство и пусть я буду совком и ватником, чем с умным видом объяснять работягам, что панель глючит по вине её разработчиков.
Вот вы считаете себя тут знатоком но не смогли ответить на мой такой простой вопрос?я себы не считаю знатоком и на вопрос не могу ответить, потому что не трогаю эти параметры

RomAl
31.12.2014, 15:10
Ладно, всех присутствующих до сих пор тут фанатов автоматизации с наступающим Новым Годом! Удачи в Новом году!

ASo
31.12.2014, 16:06
Каков у Вас % не отвеченных запрсов?

Валенок
31.12.2014, 21:17
Меня лично заставляет менять то..... а я не могу тут получить ответ на большинство своих вопросов..
На вики - достаточно сказано чтоб сделать выводы. Рисуйте временную раскладку и думайте.

По поводу первого поста ТС - чушь. Если только именно так работает - значит и для СПК нужно делать своего мастера чтоб не иметь таких гиморов.

Никакие задержки ответов для овен-слейвов не нужны нафик. Лично я всегда ставлю 0 и неимею проблем. ))) Правда с со своим мастером и в КДС2, но не вижу зависимости - все проблемы только от логических неувязок работы мастеров.

Всех с наступающим !

ASo
31.12.2014, 21:42
И почему у меня - работает?

Валенок
01.01.2015, 02:21
Увязали. Логически ))))

RomAl
01.01.2015, 21:16
Спасение утопающего - дело самого утопающего :D
В анлийской версии хелпа (она новая и гораздо обширнее русской) нашёл ответ на свой вопрос..
Modbus Master Configuration
The Modbus Master Configuration provides the following parameters dealing with Modbus specific settings:
 “Transmission”:
Choose between RTU and ASCII
 “Response Timeout”:
The Response Timeout defines the time interval the master will wait for a slave to reply. If the slave does not respond during this interval, the master will move on to the next slave. The value entered here will also act as the default value for any slave. However, on the ⇘ Slave Configuration page, this may be fine-tuned for each slave individually.
 “Time between Frames”:
The Time between Frames is the time span the master waits between the last response (or timeout) and the next request. This parameter may be used to throttle the transfer rate.

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

ASo
01.01.2015, 21:32
В русской версии написано тоже самое.
И?

RomAl
01.01.2015, 23:45
В русской версии написано тоже самое.
И?

спасибо за замечание- да в русской тоже это есть..ну не заметил, когда смотрел русский хелп, наверно потому что в русской
версии (скорее не потому что русская а потому что более сторая 2012г) содержание более вложенное
Редакторы-> Редакторы устройств-> Редактор устройств Modbus
Device Editors->Modbus Configuration Editor

RomAl
02.01.2015, 12:39
Каков у Вас % не отвеченных запрсов?

процент не отвеченных? я во-первых не заю где этот процент посмотреть...

RomAl
02.01.2015, 12:45
На вики - достаточно сказано чтоб сделать выводы. Рисуйте временную раскладку и думайте.

Правда с со своим мастером и в КДС2, но не вижу зависимости - все проблемы только от логических неувязок работы мастеров.

Всех с наступающим !

Эх если бы сам рисовал временную раскладку, а так её как-то рисует конфигуратор и как посмотреть результат его раскладки? По моим подсчётам- времени на все обмены должно вполне хватать..
Когда я в КДС2 делал проект- то вообще не задумывался о тонкостях и всё работает, правда устройств было меньше и Овеновский протокол был.. Да и сейчас в общем-то весь обмен работает, но через не определённое время где-то какая-то ошибка возникает и панель "повисает", и нет ни обмена, ни работы визуализации.

жекон
02.01.2015, 14:50
А сколько устройств, и каких если не секрет?

RomAl
02.01.2015, 15:19
А сколько устройств, и каких если не секрет?
Com1 мастер Модбас:
9 устройств
ТРМ138..3шт 3 канала чтения всего 80 слов на одной штуке
ТРМ202..1шт 1 кан чт. 3 сл
МК110..2шт 1 кан чт. 1 сл, 1 кан запись 1 сл
MV110..1шт 3 кан чт. 12 сл
уравнемер ПМП118 modbus..2шт 2 кан чт. 9 сл
Время цикла почти всем поставил 3000мс, для МК110 300мс, таймауты 50мс, скорость 19.2
Com2
работает как Овен Слейвс Таск с интервалом 10мс (опрашивается компьютером
раз в 30сек. запрашивает 16 параметров типа реал на скорости 9.6)

жекон
02.01.2015, 17:16
Последний раз я делал связку модули Мх и ТРМ202 поначалу все глучило пока не перешел на новую прошивку и SP5 потом всё зароботало

dr_alf
02.01.2015, 23:09
Интересно можно ли связаться с платами модулей дискретного ввода и вывода минуя 485 порт? Посмотрел схемы модулей... если взять сигнал до или после микросхемы трехканального цифрового изолятора, и с него подать данные на преобразователь-уровней MAX232, минуя UARTтрансивер 485-го. Перевести порт СПК в режим RS-232 и производить обмен, правда таким способом только одним модулем можно управлять. Или по шине SPI... даташиты пока не смотрел на микроконтроллеры, но наверное она должна быть. Из википедии .. SPI является синхронным интерфейсом, в котором любая передача синхронизирована с общим тактовым сигналом, генерируемым ведущим устройством (процессором). Наверно можно было бы запитать платы от платформы СПК107, припаяться к его шине данных и синхронизироваться от его тактового генератора или как-то подцепиться к его области памяти ввода-вывода. Правда точно не представляю как это сделать... Можно конечно было и проще сделать, заказав ПЛК110 и на нем крутить программу локально, а 107-й для визуализации и как сенсорные кнопки использовать. Но о таком способе подумали когда система была уже в сборе и аппарат запустили в работу и тут возникли трудности с задержками. Таймауты небольшие примерно 0,1 сек. Но тем не менее из-за этого нарушается технология.

извините.. не в тему написал, мне нужны были локальные быстрые входы-выходы.