1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Modbus Guru - программа для работы с модбасом

Модератор: Глоб.модераторы

Ответить
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18784
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 976 раз
Поблагодарили: 1858 раз

Modbus Guru - программа для работы с модбасом

Сообщение Jackson »

I_m писал(а): 19 ноя 2024, 12:12 Вы предлагаете проверку доступности хоста, на котором предполагается наличие сервиса modbus. Без проверки работоспособности самого сервиса
А в заданном вопросе исходной фразе что-то сказано про проверку работоспособности? Перечитайте. :-P
По вопросам работы Форума можно обратиться по этим контактам.

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

Уважаемые коллеги, а можно по существу моей программы мнения? Пинг это здорово, конечно, но я его не делал...

Отправлено спустя 1 минуту 33 секунды:
I_m писал(а): 19 ноя 2024, 08:11 Сходу не разобрался - каким образом это реализовано?
Очень просто: пакет RTU передается внутри TCP-пакета. Если устройство такое понимает, оно добывает RTU и работает с ним.
Или вас что-то иное интересовало?
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18784
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 976 раз
Поблагодарили: 1858 раз

Modbus Guru - программа для работы с модбасом

Сообщение Jackson »

ЗабодайТебяКомар писал(а): 19 ноя 2024, 12:56 Пинг это здорово, конечно, но я его не делал
А мне было бы интересно его видеть, чтобы понимать доступен ли узел в принципе. Ибо как верно отметили, присутствие узла и работоспособность сервера - разные вещи. Когда узел есть, но сервер молчит и когда узла в принципе нет - разные ситуации, было бы классно тут же их и понять без дополнительных действий. Может в виде визуальной лампочки просто.
По вопросам работы Форума можно обратиться по этим контактам.

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

Хоть это и оффтоп, но как вы предлагаете это сделать? И что именно?
Я не понимаю, как это логически можно реализовать.

Отправлено спустя 1 минуту 47 секунд:
Я не знаю, то ли это: в моей программе, если открылся заданный в подключении порт, то это равносильно физической доступности сервера (не для последовательного порта). Если же начался обмен - то ситуация "Таймаут" сигнализирует, что ведомый не отвечает, хотя сервер есть и работает.
Оно?

I_m
частый гость
частый гость
Сообщения: 400
Зарегистрирован: 28 сен 2022, 15:26
Имя: Андрей
Благодарил (а): 12 раз
Поблагодарили: 55 раз

Modbus Guru - программа для работы с модбасом

Сообщение I_m »

ЗабодайТебяКомар писал(а): 19 ноя 2024, 12:56 Очень просто: пакет RTU передается внутри TCP-пакета.
Вот это как раз мне понятно - оно так везде реализовано, как ни странно ;)
ЗабодайТебяКомар писал(а): 19 ноя 2024, 12:56 Или вас что-то иное интересовало?
Разумеется. Только я уже разобрался, пока отвечал - в тулбаре кнопки только для подключений RTU И Modbus TCP. А в меню я и не заглядывал.
mguru1.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

Еще раз обновил: https://cloud.mail.ru/public/XwdS/GZTyy5DY2

В этой версии исправлены две ошибки:
  • Работа Modbus ASCII теперь не вызывает вопросов
  • Устранена проблема с высокой загрузкой CPU при бездействии подключений с активными переменными
Так же немного подправлена графика и справочная система

I_m
частый гость
частый гость
Сообщения: 400
Зарегистрирован: 28 сен 2022, 15:26
Имя: Андрей
Благодарил (а): 12 раз
Поблагодарили: 55 раз

Modbus Guru - программа для работы с модбасом

Сообщение I_m »

ЗабодайТебяКомар писал(а): 19 ноя 2024, 19:56 Устранена проблема с высокой загрузкой CPU при бездействии подключений с активными переменными
Отлично. Подтверждаю.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18784
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 976 раз
Поблагодарили: 1858 раз

Modbus Guru - программа для работы с модбасом

Сообщение Jackson »

ЗабодайТебяКомар, (отдельный привет за такой логин - мы с модераторами улыбнулись), благодарствую за такое дело. Я лично питаю особое уважение к людям, что-то делающим своими руками для общей пользы, ну и для своей конечно же.

Это может вылиться во что-то интересное. Тут у нас один человек тоже ради эксперимента мини-СКАДА когда-то попробовал создать - в итоге вылилось в отдельную контору и вполне коммерческий продукт - Скада+
По вопросам работы Форума можно обратиться по этим контактам.

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

Найдутся ли здесь желающие протестировать программу на Линуксе?
Скоро намереваюсь сделать под эту ОС...
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18784
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 976 раз
Поблагодарили: 1858 раз

Modbus Guru - программа для работы с модбасом

Сообщение Jackson »

Из пожеланий к версии под виндовс
  • вынести все команды на панель инструментов кнопками, можно разные панели для каждого подменю
  • снабдить каждую кнопку на панели инструментов шорт-катом и всплывающей подсказкой (с шорт-катом и названием)
  • при создании переменной по умолчанию поле "примечание" = ФУНКЦИЯ ЧТЕНИЯхНОМЕР РЕГИСТРА
  • при создании переменной номер функции записи = номер функции чтения, или если есть сопоставление - для функции чтения сопоставляется соответствующая функция записи по умолчанию.
  • Сделать возможность редактирования одновременно нескольких переменных, которые выбраны, например для пачки переменных одним движением изменить номер функции.
  • сделать возможность создавать несколько переменных по шаблону, например создать пачку переменных, читаемых одной функцией, с адресами регистров с 500 до 1000, с примечанием = номеру регистра. А то если импортировать не из чего, а в контроллере 4 тысячи регистров под одной функцией - грустно их создавать 4000 раз и нигде не ошибиться.
  • рассказать как работает импорт, из каких форматов :)
Спасибо!
По вопросам работы Форума можно обратиться по этим контактам.

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

Контр-вопросы по пожеланиям :)
  • вот прямо-таки все команды на панель?! панель кнопок станет больше основного окна программы :lol:
  • подсказка же снизу в строке подсказок появляется! лично меня ужасно бесят всплывалки... но, ежели я исключение - можно и всплывать...
  • групповое редактирование? можно ведь пачкой и не то, что надо, поменять... рискованное действие, сомневаюсь...
  • по-моему, вместо шаблонного ввода переменых логичнее в функцию дублирования добавить шаг адреса, и тогда кнопками в 5 секунд можно надублировать мульён переменных
  • импорт работает из CSV-файла (и экспорт). самый простой способ изучить этот вариант - экспортировать по одной переменной каждого типа и посмотреть в Excel, а потом по образу добавлять-править
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18784
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 976 раз
Поблагодарили: 1858 раз

Modbus Guru - программа для работы с модбасом

Сообщение Jackson »

ЗабодайТебяКомар писал(а): 03 дек 2024, 17:02 вот прямо-таки все команды на панель?! панель кнопок станет больше основного окна программы
Так в два ряда. или по отдельным группам сгруппировать так, как они в меню сгруппированы.
ЗабодайТебяКомар писал(а): 03 дек 2024, 17:02 можно ведь пачкой и не то, что надо, поменять... рискованное действие, сомневаюсь
Но удобное. Ответственность на том кто делает. Ну можно если группой дополнительный диалог "уверены? да/нет"
Ситуацию представьте. получил описание адресного пространства. под тыщу-две регистров. Вручную вбил. А потом оказалось что надо запись половине тэгов отключить, а чтение оставить. И как? Поштучно тыщу тэгов редактировать?
ЗабодайТебяКомар писал(а): 03 дек 2024, 17:02 по-моему, вместо шаблонного ввода переменых логичнее в функцию дублирования добавить шаг адреса
Тоже неплохо, но можно быстрее.
ЗабодайТебяКомар писал(а): 03 дек 2024, 17:02 и тогда кнопками в 5 секунд можно надублировать мульён переменных
Ну вот три тыщи регистров надо создать. Три тыщи раз кликать "дублировать" ? Проще один раз. Как в модбас-пуле: задал начальный адрес и задал количество - всё, готово. Там нет 3000 штук (ограничение до 50 или до 100 кажется). Да и сотню - 200 кликов. А можно всего три.
ЗабодайТебяКомар писал(а): 03 дек 2024, 17:02 импорт работает из CSV-файла (и экспорт). самый простой способ изучить этот вариант - экспортировать по одной переменной каждого типа и посмотреть в Excel, а потом по образу добавлять-править
Да, изучу, спасибо! Если нормально работает то предыдущий вопрос отбой - 3 тыщи тэгов проще в Excel нащёлкать сначала.
По вопросам работы Форума можно обратиться по этим контактам.

I_m
частый гость
частый гость
Сообщения: 400
Зарегистрирован: 28 сен 2022, 15:26
Имя: Андрей
Благодарил (а): 12 раз
Поблагодарили: 55 раз

Modbus Guru - программа для работы с модбасом

Сообщение I_m »

Jackson писал(а): 03 дек 2024, 19:22 Да, изучу, спасибо! Если нормально работает то предыдущий вопрос отбой - 3 тыщи тэгов проще в Excel нащёлкать сначала.
Ещё можно напрямую файл конфигурации редактировать - он текстовый.
Я уже ранее упоминал об этом.

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

А у меня вопрос про 3000 тегов: вот вы наделали их в мою программу, и что вы с ними делать будете? Допустим, три-четыре десятка одновременно видно будет, остальных нет - в чем смысл такого количества? Да и вообще, в SCADA такое количество более-менее понятно, как визуализируется, а просто за цифрами смотреть - для чего?!

Предполагалось, что при помощи моей программы можно будет что-то сконфигурировать быстренько, или проверить, как оно сконфигурировано, "подменить" для наладки какой-нибудь датчик, который по каким-то причинам отсутствует... Т.е. действия микро-хирургического вмешательства, а никак не полномасштабное фронтовое наступление на сеть...

Отправлено спустя 23 минуты 34 секунды:
Кстати, думал еще над добавлением скриптовой обработки переменных... Но цель этого мне представляется туманной. Оно надо? Типа "при изменении значения переменной в другую переменную записать такое-то значение" или что-то подобное, с алгоритмической обработкой любых переменных проекта и/или локальных внутрискриптовых. Типа как в SCADA.

Это заметно нагрузит интерфейс пользователя...

I_m
частый гость
частый гость
Сообщения: 400
Зарегистрирован: 28 сен 2022, 15:26
Имя: Андрей
Благодарил (а): 12 раз
Поблагодарили: 55 раз

Modbus Guru - программа для работы с модбасом

Сообщение I_m »

ЗабодайТебяКомар писал(а): Вчера, 08:21 Предполагалось, что при помощи моей программы можно будет что-то сконфигурировать быстренько,
Да и все прочие утилиты этого класса именно так используются - для отладки.

В качестве хотелок - можно добавит функцию копирования прочитанного значения в буфер обмена?

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

I_m, что вы имеете ввиду, когда говорите о прочитанном значении? Что именно копировать в буфер обмена и в какой момент?

I_m
частый гость
частый гость
Сообщения: 400
Зарегистрирован: 28 сен 2022, 15:26
Имя: Андрей
Благодарил (а): 12 раз
Поблагодарили: 55 раз

Modbus Guru - программа для работы с модбасом

Сообщение I_m »

Значение прочитанной переменной. В контекстном меню пункта "скопировать" нет. :)
ЗабодайТебяКомар писал(а): Вчера, 10:31 и в какой момент?
Да в любой момент, в принципе. Устроит и после останова обмена.

Можно и не через меню. Ctrl+C (Ctrl+Ins) вполне устроит.

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

Продолжаем разговор :ges_hmm:
Итак, каждую секунду значение переменной опрашивается и меняется. Вы нажимаете контекстное меню в какой-то момент, и пока вы там мышом двигаете по меню, переменная уже может измениться, и не один раз. Какой смысл в подобном копировании?
Любой переменной можно задавать значение, для этого открывается редактор, в котором функция копировать-вставить уже имеется, как в любом ином редакторе. Т.е. если вас устраивает шанс скопипастить неактуальное значение, просто кликаете на значении переменной, копипастите, и потом Esc (чтобы не было отправки значения) - если переменная к тому моменту поменялась, все обновится.

Тут либо что-то надо менять в принципе, либо отдельная функция в меню не нужна.

I_m
частый гость
частый гость
Сообщения: 400
Зарегистрирован: 28 сен 2022, 15:26
Имя: Андрей
Благодарил (а): 12 раз
Поблагодарили: 55 раз

Modbus Guru - программа для работы с модбасом

Сообщение I_m »

ЗабодайТебяКомар писал(а): Вчера, 12:07 Любой переменной можно задавать значение, для этого открывается редактор, в котором функция копировать-вставить уже имеется, как в любом ином редакторе.
1. Вот в этом точно нет никакого смысла.
2. Я напомню, что не все типы регистров модбас доступны для записи. Какой смысл задавать значение переменной, которая только читается? Какой смысл мне копировать в буфер значение, которое я и так сам ввожу?
ЗабодайТебяКомар писал(а): Вчера, 12:07 пока вы там мышом двигаете по меню, переменная уже может измениться, и не один раз. Какой смысл в подобном копировании?
А может и не измениться. А может и обмен неактивный и там последнее прочитанное значение.

Поясню - мне лично это интересно прежде всего для регистров битовой маски. Чтобы скопировать в блокнот и спокойно битики посчитать и проанализировать.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18784
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 976 раз
Поблагодарили: 1858 раз

Modbus Guru - программа для работы с модбасом

Сообщение Jackson »

ЗабодайТебяКомар писал(а): Вчера, 08:21 А у меня вопрос про 3000 тегов: вот вы наделали их в мою программу, и что вы с ними делать будете?
Читать. И писать иногда.
ЗабодайТебяКомар писал(а): Вчера, 12:07 Какой смысл в подобном копировании?
Работа с набором типовых устройств, иногда в этом наборе появляется новый девайс - мне нужно под него новую конфигурацию создать. В модБасПуле я этого не делаю - не в силах их вручную вбивать. Но необходимость есть. Иначе каждый раз приходится вспомниать, в каком регистре лежит то что мне нужно посмотреть. Сделал бы раз и пользовался бы, меняя что-то по мелочи при необходимости.
Короче, реально надо.
I_m писал(а): Вчера, 12:22 1. Вот в этом точно нет никакого смысла.
Есть! Оставьте эту фичу!
I_m писал(а): Вчера, 12:22 2. Я напомню, что не все типы регистров модбас доступны для записи. Какой смысл задавать значение переменной, которая только читается?
Это уже пользователь пусть решает, что ему задавать. У кого-то не всё пишется, у кого-то ничего не пишется, а у кого-то и пишется.
I_m писал(а): Вчера, 12:22 Поясню - мне лично это интересно прежде всего для регистров битовой маски. Чтобы скопировать в блокнот и спокойно битики посчитать и проанализировать.
А лучше бы это сделать прямо в этом же софте чтоб не копировать лишний раз. Просто отображение в битовом формате можно расширить, но это уже сверхзадача "на потом".
По вопросам работы Форума можно обратиться по этим контактам.

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

Я тут по вашим хотелкам кой-чего сделал... Результат несколько неоднозначный.
Добавление 10000 переменных длится секунд 10, и потом каждое действие тормозит заметно, но не дико. Хотя может и раздражать.
Тестировать мне 10000 переменных тяжко, но то, что смог, не радует - тормозит сильно.
Сотня не тормозит, вроде бы и тысяча не заметно тормозов.
Undo/Redo тормозят пропорционально количеству переменных, которые надо откатывать, т.е. 10000 отменяются столько же, сколько добавляются.
В целом, наверное, на безрыбье жить можно и с этим... Но я не в восторге.

Чуть позже будет обновление...

P.S. Copy-Paste сделал для того, что выделено в обзоре, т.е. хотите числа, хотите буквы. Если Paste в числовое поле не может произойти из-за того, что в буфере обмена не число, то ничего не происходит, а если вставляется число, то оно работает так же, как и ввод значения, т.е. может быть отправлено. Это то, что вы хотели, I_m?

Отправлено спустя 2 минуты 42 секунды:
Jackson писал(а): Вчера, 16:07 Просто отображение в битовом формате можно расширить
А это что имеется ввиду? И так уже битовое поле такая фича, которой ранее в природе не существовало в подобных утилитах... Вы обратили внимание, что биты можно надергать из разных мест переменной? В справке описано, как оно работает.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18784
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 976 раз
Поблагодарили: 1858 раз

Modbus Guru - программа для работы с модбасом

Сообщение Jackson »

ЗабодайТебяКомар писал(а): Вчера, 16:20 Тестировать мне 10000 переменных тяжко, но то, что смог, не радует - тормозит сильно.
Всё дело в опросе. Разные девайсы позволяют одним запросом получить разное количество регистров. Нужна такая настройка: сколько регистров максимум читать одной посылкой. А ещё ведь дырки в адресном пространстве бывают..... По умолчанию значение - 50. То есть прочитать 100 переменных - две посылки минимум. Станет легче.
ЗабодайТебяКомар писал(а): Вчера, 16:20 Я тут по вашим хотелкам кой-чего сделал
Спасибо Вам, хороший человек! Я погоняю, посмотрим....
По вопросам работы Форума можно обратиться по этим контактам.

Автор темы
ЗабодайТебяКомар
создаёт что-то хорошее
создаёт что-то хорошее
Сообщения: 18
Зарегистрирован: 25 окт 2024, 16:14
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Modbus Guru - программа для работы с модбасом

Сообщение ЗабодайТебяКомар »

Ну, для TCP хоть 1 регистр за запрос, хоть 100 - вряд ли по скорости заметно будет, тем более на одном компе все крутится. Боюсь, тормоза тут не с этим связаны, а с общей концепцией моего кода...
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18784
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 976 раз
Поблагодарили: 1858 раз

Modbus Guru - программа для работы с модбасом

Сообщение Jackson »

ЗабодайТебяКомар писал(а): Вчера, 16:50 Ну, для TCP хоть 1 регистр за запрос, хоть 100 - вряд ли по скорости заметно будет,
На запрос нет, а на ответ - бывает. И дырки в регистрах бывают, часто это ошибка, но бывает и просто задержка времени
По вопросам работы Форума можно обратиться по этим контактам.
Ответить

Вернуться в «Полезное ПО»