Simulator MODBUS (mod_RSsim.exe) - эмулятор Modbus устройств предназначен для создания виртуальной сети Modbus RTU или Modbus TCP устройств. Эмулятор полезен в первую очередь специалистам разрабатывающим программное обеспечение опроса Modbus устройств для отладки Modbus клиентов, OPC/DDE серверов, тестирования оборудования, проверки SCADA проектов и для многих других задач. Симулятор не поддерживает полную реализацией протоколов Modbus, он реализует только их общие функции. Эмулятор выпущен под линцезией GPL 3.0. |
Так выглядит сам симулятор Modbus.
| Строка состояния обмена |
| 2 красных светодиода: |
Панель инструментов, сочетание клавиш.
Инстру-мент | Описание |
| Сохранить значения всех регистров |
| Загрузить сохраненные значения всех регистров |
| Обнулить все регистры |
| Открыть диалог конфигурирования текущего протокола |
| Открыть диалог настройки анимации |
Открыть диалог настройки шума (только для протоколов по RS232) | |
| Открыть диалог о программе |
Перейти на следующий уровень прозрачности окна симулятора (имеется 3 уровня, переключаемых циклически) | |
Открыть диалог конфигурирования эмуляции для данного протокола | |
Открыть/закрыть порт | |
| Переключить отображение регистры/коммуникации |
Элемент | Описание |
| Здесь выбирается адресное пространство. |
| Инструмент выбора формата отображения адресов. |
| Светится в режиме тренировочной симуляции |
| Выбор формата отображения данных |
| Выбор протокола. При смене протокола симулятор текущего протокола останавливается и стартует симулятор выбранного протокола |
| Флаг клона Modbus. Выполняет коррекцию слов для правильного отображения в PLC-клоне. Влияет, в основном, на отображение 32-разрядных значений с плавающей запятой |
| Запуск тренировочной симуляции, которая симулирует емкость с водой, впускной и выпускной клапаны и нагреватель, который нагревает воду в зависимости от ее объема (без загрузки кода в диалоге настройки анимации тренировочная симуляция не работает) |
F1 | Открыть справку |
Настройка Ethernet TCP/IP
"Local IP"
Локальный IP-адрес или имя компьютера, (этот параметр не редактируется);
"Remote IP"
Удаленный IP-адрес или имя компьютера первого подключенного сокета, (этот параметр не редактируется);
"# Server connections"
Определяет количество сокетов, которые сервер будет слушать (по умолчанию - 10);
"Port (502)"
Определяет номер порта для прослушивания сети (по умолчанию - 502);
"Station ID"
Определяет номер станции - адрес устройства Modbus;
"Responsiveness"
Определяет величину задержки ответа (в миллисекундах) после получения запроса (по умолчанию - 0).
Настройка RS-232
"Port"
Список выбора COM-порта (если рядом с "com" стоит "*", то этот порт используется другим приложением);
"Baud rate"
Скорость обмена через порт (по умолчанию - 19200);
"Parity", "Data bits", "Stop bits"
Для MODBUS по умолчанию Parity="Even", Data bits="8", Stop bits="1" (для некоторых новых приборов – None, 8, 1);
"RTS control"
Этот параметр позволяет "сказать" драйверу, что должна быть линия RTS;
"Responsiveness"
Задержка ответа сервера (в миллисекундах) после приема любого корректного или некорректного кадра (по умолчанию - 0);
"Load register values at startup"
Загрузить значения регистров при старте сервера;
"Units are all off at startup"
При старте отключить все станции;
"Perform MODBUS - MOSCAD (row/tablet) checks"
Помогает тестированию радио-телеметрических устройств Motorola MOSCAD/Mostrac, отклоняет все запросы, которые могли бы завершить чтение "пустых" данных из одного из этих устройств и возвращает код исключения для уведомления мастера.
Настройка анимации
Открыть диалог настройки анимации;
"No animation"
Запрет автоматизации;
"Increment BYTES"
Изменение значений всех регистров на величину 257*k (*);
"Increment WORDS"
Изменение значений всех регистров на k (*), величину k задает параметр Increment by (+/-), период изменения – параметр Increment after every…;
"Training PLC simulation"
Автоматизация с помощью скрипта.
В разделе "Activity indicators" задаются параметры отображения индикаторов станций.
Автоматизация при помощи скрипта
Рекомендуется использовать версию 8.09, потому что в более новых версиях часто появляется ошибка при попытке загрузить скрипт.
Для чего нужен скрипт? Для того чтобы обеспечить эмуляцию нормального функционирования PLC. Чтобы разрешить выполнение скрипта, нужно сделать следующее:
Нажать кнопку настройки анимации.
В открывшемся диалоговом окне "Animation settings" необходимо выбрать радио-кнопку "Training PLC simulator" (1), и далее нажать кнопку "…" (2).
Откроется диалоговое окно "Browse for File", в котором нужно выбрать место, в котором лежит скрипт и выбрать сам этот скрипт, затем нажать кнопку «ОК».
Выбранный файл отображается в поле "Script":
Настройка шума
Открыть диалог настройки шума (только для протоколов по RS232) (Ctrl + N).
Для того чтобы активировать другие параметры нужно поставить галочку «Simulate faults».
Дополнительные параметры симулятора Modbus
Настройки для протоколов Ethernet и RTU:
"Upper register limits"
Самый старший допустимый адрес регистра или номер I/O. Чтение/запись регистров/битов с большими адресами приведет к "Exception response";
"PDU (data portion) size"
Максимальная длина данных в кадре сообщения;
"Modify coils/regs. before responding"
Разрешает возвращаемое значение регистра в сообщениях, которые возвращают текущее содержимое регистров.