Приложение развивается уже довольно давно. Но была одна фича, которой не хватало, чтобы сделать CoreBus по-настоящему универсальным терминалом. Мне об этом писали еще с первых релизов. В личных сообщениях и в комментариях к статьям. Эта идея формулировалась по-разному, но суть была одна.
И поэтому хочу представить вам новый режим - "Modbus мониторинг"!

Но давайте сначала разберемся а из чего получается универсальность моего приложения? Какие потребности оно закрывает?
Глобально тут есть несколько режимов работы:
Режим "Без протокола"
Это по сути обычный "сырой" терминал. Работает со строками и байтами.
Полезно, когда нужно вручную сформировать пакет, поработать с не Modbus протоколом, отладить какое-то внешнее устройство, воспроизвести баг и т.д.Режим "Modbus"
В этом режиме приложение значительно упрощает пользователю работу с протоколом Modbus. А также позволяет более детально рассматривать пакеты. Работает через запрос - ответ.
Удобно использовать для изучения, отладки или управления подключенным устройством.Макросы
Позволяют удобно собрать несколько действий в одну команду.
Можно использовать как решение для автоматизации каких-то процессов: сложной инициализации устройства, управление группой оборудования и т.д."Modbus мониторинг"
И наконец новый режим! Он нужен для визуального контроля подключенного устройства.
Удобно использовать для контроля показаний датчиков или контроля состояния внешнего устройства. В этом режиме приложение может работать и в качестве логгера.
А обо всех возможностях приложения вы можете прочитать под спойлером.
Скрытый текст
Основные возможности приложения:
1. Три режима работы: "Без протокола", "Modbus" и "Modbus мониторинг".
2. «Без протокола»:
Работа с данными в строковом или байтовом формате.
Поддержка разных кодировок.
Три режима отправки: одиночная, цикличная, отправка файла.
3. “Modbus”:
Поддержка различных вариаций протокола Modbus: TCP, RTU, ASCII и RTU / ASCII over TCP.
Удобная работа с функциями записи.
Возможность работы с числами типа float.
Возможность работы с бинарными данными.
Modbus сканер, который осуществляет поиск устройств на линии связи.
4. "Modbus мониторинг":
Удобное отображение регистров.
Конвертация в числовые типы (Int16/32, float, и др.).
Преобразования по заданной формуле.
Построение графика в реальном времени.
Логгер.
5. Макросы:
Отдельные макросы для каждого режима работы.
Макрос состоит из неограниченного количества команд (действий).
Для Modbus макросов предусмотрена возможность выставления общего Slave ID для всего макроса.
Импорт и экспорт макросов.
6. Темная и светлая темы приложения.
7. Пресеты с пользовательскими настройками.
8. Руководство пользователя.
9. Кроссплатформенность: Windows, Linux.
А теперь давайте подробнее разберем режим "Modbus мониторинг".
В этом режиме отображаются регистры Modbus. Значения регистров обновляются с заданным периодом. Полученные данные можно легко преобразовать: выбрать тип, применить формулу и отобразить результат в удобном виде или на графике.
Глобально рабочее поле разделено на две части. Верхняя часть отвечает за управление мониторингом. А на нижней находится список опрашиваемых регистров.
Каждая строка в списке это один 16-битный регистр Modbus. Ячейки с цифрами "подсвечиваются" после изменения значения внутри.

Галочки слева отмечают регистр для удаления или просто для визуального выделения среди остальных элементов списка. На картинке выделен регистр с адресом 3.
Пройдемся по всем столбцам:
Адрес
Содержит в себе адрес регистра. Может иметь формат HEX или DEC.Псевдоним
Произвольное символьное имя. В случае, если оно будет пустое, то и на графике, и в логе регистр будет иметь имя «Адрес + значение адреса». Например, «Адрес 3», «Адрес 75» и т.д.Значение
«Сырое» значение регистра. Может иметь формат HEX или DEC.Типизированное значение
Значение регистра, приведенное к одному из доступных типов. В случае, если тип занимает больше 16 бит, то при преобразовании захватываются еще и следующие значения (как на картинке выше).
Например, тип float занимает 32 бита, значит для приведения значения к этому типу требуется два регистра Modbus.Преобразованное значение
Типизированное значение, преобразованное по заданной формуле. Формула задается в окне, открывающимся по нажатию на кнопку «f(x)».
В примере на картинке формула «0.5*x».График / Лог
Это выделение означает, что преобразованное значение этого регистра будет отображаться на графике и записываться в лог.
Приложение может строить подобные графики в реальном времени.

Видеоролики
Лучше один раз увидеть, чем много раз прочитать. Поэтому, начиная с прошлой версии, я стал делать видео с демонстрацией работы приложения.
Вот тут можно посмотреть о режиме "Modbus мониторинг":
А о макросах и режимах "Modbus" и "Без протокола" тут:
Заключение
В версии 3.4.0 появился новый долгожданный функционал. Подробнее вы можете прочитать во встроенном руководстве пользователя или из видеороликов выше.
Проект развивается благодаря вашей обратной связи и пожертвованиям, которые вы можете сделать, перейдя по этой ссылке:
Приложение доступно по ссылкам ниже:
Смотрите также:
Кроссплатформенный терминал Modbus TCP / RTU / ASCII с открытым исходным кодом: Часть 4
Кроссплатформенный терминал Modbus TCP / RTU / ASCII с открытым исходным кодом: Часть 3
Кроссплатформенный терминал Modbus TCP / RTU / ASCII с открытым исходным кодом: Часть 2
Терминал Modbus TCP / RTU / ASCII с открытым исходным кодом: Часть 1
