PDA

Просмотр полной версии : Групповые запросы в Owen Logic. Что хотите видеть в этой функции?



EvgenyR
09.12.2020, 14:36
Добрый день :)
Планируем добавить поддержку групповых запросов в Owen Logic для новых приборов.
Хотелось бы услышать ваши мнения и пожелания.
Как вы видите работу и настройку групповых запросов в Logic?

melky
09.12.2020, 15:22
1. запрос по команде без выставления максимума времени опроса.
2. настройка типов переменных в группе запроса.

EvgenyR
09.12.2020, 16:07
По поводу п.2 можете чуть подобнее рассказать?

melky
09.12.2020, 16:27
EvgenyR чтобы не получилось так, что при чтении того же модуля 8А пришлось делать несколько запросов так как переменные каналов со статусом идут в перемежку float, int, float, int

EvgenyR
09.12.2020, 16:36
т.е. нужно чтение данных из нескольких регистров подряд, независимо от типа переменных в них?

melky
09.12.2020, 16:43
Да, с последующей настройкой в соответствующем окне типа переменных.

Евгений Кислов
09.12.2020, 16:56
Как вы видите работу и настройку групповых запросов в Logic?

Я бы хотел видеть это следующим образом.

Новая кнопка в настройках модбас мастера - "Создать групповой запрос". (в принципе, можно сохранить одну кнопку, так как одиночный запрос является вырожденным вариантом группового запроса).
В настройках пользователь выбирает функцию Modbus, адрес начального регистра и число регистров/бит в запросе.

В результате создается узел, в который можно добавить переменные, связанные с регистрами запроса.
Для них уже настраиваются только адреса регистров (это необходимо, так как в запросе могут быть "лишние" данные, которые не надо копировать в переменные программы).
Должна быть возможность сворачивать/разворачивать содержимое узлов.

Вероятно, должна быть предусмотрена валидация типов - в запросах с битовыми функциями не должно быть возможности добавить переменные типы Целочисленный/С плавающей точкой и наоборот - в запросе с регистрами нельзя добавить тип Булевский.

52409

Alex469
09.12.2020, 18:08
Добрый день :)
Планируем добавить поддержку групповых запросов в Owen Logic для новых приборов.
А старые, получается, "в пролете" ?

EvgenyR
10.12.2020, 12:05
Сейчас работаем над выпуском новых приборов, и хотим добавить в них наиболее востребованные функции.
На старых да, пока не планируется.

EvgenyR
10.12.2020, 12:26
Есть ли ситуации, когда использование не-группового запроса предпочтительнее, чем использование группового?

bayk
11.12.2020, 17:12
Очень бы хотелось чтобы для группы или переменной можно было задать период опроса. Не все переменные нужно опрашивать часто. А если что-то нужно быстро опросить, то из-за остальных ненужных переменных время отклика растет

AAA1
11.12.2020, 21:58
Очень бы хотелось чтобы для группы или переменной можно было задать период опроса. Не все переменные нужно опрашивать часто. А если что-то нужно быстро опросить, то из-за остальных ненужных переменных время отклика растет

Не оно? 52444
В программе указать активность переменной, когда читать, когда писать...

Ревака Юрий
12.12.2020, 16:41
Не оно? 52444
В программе указать активность переменной, когда читать, когда писать...

Оно, вчера тоже об этом хотел написать, можно еще несколько приборов добавить с одним адресом и работать на разных периодах.

bayk
12.12.2020, 21:57
Ну ребята, ну согласитесь, что это через одно место сделано. Неужели нормально сделать нельзя, чтобы удобно было, а не через костыли. В этой теме то спросили как лучше сделать, а не как костыль очередной от безысходности прилепить

Ревака Юрий
13.12.2020, 11:55
Ну ребята, ну согласитесь, что это через одно место сделано. Неужели нормально сделать нельзя, чтобы удобно было, а не через костыли. В этой теме то спросили как лучше сделать, а не как костыль очередной от безысходности прилепить

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

bayk
13.12.2020, 17:00
Я вижу это в виде задания времени опроса около каждой переменной или группы. Если сложно сделать ручной ввод, то предложите фиксированный набор

EvgenyR
14.12.2020, 11:00
Это будет сделано в одной из следующих версий Лоджика, поддерживающей новые приборы (ПР103, например)
Опрос по периоду можно будет задать для каждой переменной индивидуально или вообще отключить опрос по периоду для этой переменной.

EvgenyR
14.12.2020, 15:15
Сколько регистров, по вашему опыту, требуется обычно опросить одним групповым запросом?

Андрей Сотников
21.12.2020, 09:58
Здравствуйте!
Можно к дискретным входам прикрутить регистр с битовой маской, как дополнение к имеющимся. Или, вообще, перейти на маску, и регистры высвободятся. И к дискретным выходам так же.

rovki
21.12.2020, 10:05
Используйте блок записи бита и чтения ...

melky
21.12.2020, 10:12
Сколько регистров, по вашему опыту, требуется обычно опросить одним групповым запросом?

Прекрасный вопрос, но вот что по этому поводу говорит стандарт Modbus ? :)

Андрей Сотников
21.12.2020, 10:47
Используйте блок записи бита и чтения ...

я так понимаю, что регистры входов и выходов прописаны в заводской прошивке и их состояние я могу получать/менять по RS-485 не зависимо от наличия залитой программы.
именно про это и было предложение
А если не заливать программу, то ПР превращается в МВ+МУ

Серёга Букашкин
15.01.2021, 09:30
Сколько регистров, по вашему опыту, требуется обычно опросить одним групповым запросом?

В идеале 64, но хотя бы до 16. Главное, чтобы когда запрос принят чтобы массив был зафиксирован и ничего в нем не менялось пока он передается.

bayk
15.01.2021, 10:29
Главное, чтобы когда запрос принят чтобы массив был зафиксирован и ничего в нем не менялось пока он передается.
Очень грамотное замечание! Я сразу и не додумался бы, а сейчас вспомнил, как пытался по модбас данные с корректора газа ек270. Так там во время опроса 1 флоат переменной периодически успевало измениться первое слово... В итоге в данных принятых на плк киш-миш

melky
15.01.2021, 21:14
bayk это где вы EK270 с Modbus нашли? там же вроде МЭК61107

Евгений Кислов
15.01.2021, 21:18
bayk это где вы EK270 с Modbus нашли? там же вроде МЭК61107

https://gaselectro.ru/dokumentaciya/dopolnitelnye_materialy/modbus-soglasovanie-seti-rs-485-obmen-dannymi-s-priborami-ek270.html

melky
15.01.2021, 21:42
Вот что нашел по этому поводу..

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

Если в процессе обмена произошёл сбой и корректор перестал отвечать, необходимо остановить сеанс выждать 1,5 — 2 мин и возобновить сеанс."

Вот как раз по этой ссылке. Так что я не раскатывал бы губу на чтение EK-шек при помощи ПР200

melky
15.01.2021, 22:06
Это я так понимаю, вы EK переключили в режим Modbus и пытались его так читать, странно, почему тогда люди не пользуются этим, а оставляют его на родном протоколе.?

bayk
16.01.2021, 00:26
А я и не говорил, что я его пр-кой читал. Читать. Его надо было плк, и не Овен. В модбас он умел только при наличии внешнего питания. Но факт того, что в процессе считывания модбас могло произойти изминение части считываемрго числа было на лицо. Да, не всегда, но периодически это вылазило. Эльстер признали косяк и сказали - мы править не будем, не до этого. Читать его родным протоколом возможности не было. Идею его опроса родили как всегда в процессе. И кроме подвешивания его в общую кучу к другим модбас устройствам возможности не было. Зак сказал -написано что умеет - читайте.
Но это лирика. Я привет этот пример ни к тому , что надо его читать пр-кой, а к тому, что фиксация значений на момент передачи всего группового запроса нужна. Нельзя просто собирать данные в запрос в онлайне. Надо делать выборку куда-то а уже ее передавать в ответ на запрос.

heXor
15.05.2021, 12:33
Как вы видите работу и настройку групповых запросов в Logic?

Вопрос: Есть ПР200 работающий в режиме Master. Если десять регистров. Они идут подряд (Регистры: 1,2,3,4...10). Их функция чтения 0x03 (Read Multiple registers). В этом случае ПР200 будет делать один запрос на чтение сразу всех 10 регистров или будет делать 10 запросов по одному регистру.


Так опишите сценарий, как Вы это видите без костылей
Описал выше очевидный сценарий работы.

P.S. В документации ничего не нашел. Но поскольку используется функция Read Multiple registers то очевидно должна происходить группировка регистров. Правильно?

petera
15.05.2021, 12:38
Вопрос: Есть ПР200 работающий в режиме Master. Если десять регистров идут подряд (Регистры: 1,2,3,4...10), функция чтения 0x03 (Read Multiple registers). В этом случае ПР200 будет делать один запрос на чтение сразу всех 10 регистров или будет делать 10 запросов по одному регистру.

P.S. В документации ничего не нашел. Но поскольку используется функция Read Multiple registers то очевидно должна происходить группировка регистров. Правильно?

Должно, но не в ПР200
Будет делать 10 запросов по 1 регистру

stesel
08.07.2021, 11:04
Добрый день :)
Планируем добавить поддержку групповых запросов в Owen Logic для новых приборов.
Хотелось бы услышать ваши мнения и пожелания.
Как вы видите работу и настройку групповых запросов в Logic?

Я бы вынес работу мастера в отдельный блок и в его свойствах указывать с какого и по какой регистр опрашивать, там же можно задавать номер слэйва и неплохо бы иметь вход Enable.

Серёга Букашкин
08.07.2021, 11:36
В указателе кол-ва регистров сделать не 1...2 регистра, а до 64. Галочка "групповой запрос" непонятно зачем. И предел в 64 регистра в ПР200 это очень мало.

Сергей0308
08.07.2021, 11:44
В указателе кол-ва регистров сделать не 1...2 регистра, а до 64. Галочка "групповой запрос" непонятно зачем.

Логично, больше ничего и не надо, в смысле - всё остальное уже есть! Непонятно, зачем преведущие писатели хотели того, что и так уже есть, вероятно ни ПР ни ОЛ в глаза не видели!

Ollema
10.12.2021, 09:13
64 регистра - это же ограничение для слейва, для мастера тоже есть ограничения? Или независимо от мастер-слейв ПР200 максимум может иметь 64 сетевых переменных?

melky
10.12.2021, 10:24
Ollema мастер ограничений не имеет, так как прочитав, вы берете данные в какую-то переменную, не обязательно сетевую.

Ollema
10.12.2021, 23:32
Я зачем ее брать в какую то переменную, если значение уже в переменной (в сетевой)?

Votrj1
05.07.2023, 15:26
А что будет если по переменным пр200 (слейв) обявленным как выходные ( по ее регистрам) в обратную сторону с спк мастер попытаться что то записать?