Настройка симуляции Modbus RTU over TCP/IP
Для отладки ППО на ПЛК потребовалось настроить симуляцию устройства, которое опрашивается по протоколу Modbus RTU. Все ниже перечисленные программы и действия произведены в ОС Windows.
Для симуляции я использовал связку следующих программ :
Modbus Poll в качестве Modbus-клиента
ModRSsim2 для симуляции Modbus-сервера
VESPE (Virtual Serial Ports Emulator (64 bit)) ,
У меня была какая то древняя версия VESPE — 1.0.5.443
Первое что нужно сделать , это настроить виртуальный COM-порт. Запускаем VESPE и создаем коннектор:

Виртуальный COM.
На том ПК, где я себе ставил симулятор, уже был какой то COM-порт, поэтому на примере будет COM2:

Виртуальный COM-порт
После этого, чтобы подключиться к нему по TCP, необходимо создать TCP-сервер, который откроет порт для обмена поверх TCP:

Тип вирутального устройства — TCP сервер

Выбираем ранее созданный COM-порт и назначаем TCP-порт, через который будем обращаться MOdbus клиентом дял чтения регистров:


COM-порт и TCP-сервер настроены на ПК
Далее запускаем MODRSSIM (у меня он был установлен из пакета ModbusOPCServer demo trial от MPSSoft (это та, что MasterScada выпускает) и настраиваем на MOdbus RS-232, а также подключаем к COM2:

Заполним холдинг регистры:

Подключаемся ModbusPoll:

Подключение есть, запросы идут, ответы приходят:

Эту статью решил написать для себя как шпаргалку. Верю в то, что таких примеров на просторе сети много. Буду признателен, если в комментариях поделитесь опытом симуляции Modbus RTU, Modbus TCP устройств на базе Linux.
