Так как в на форумах и в интернете почти ни чего не нашел по поводу подключения к КР-500М приборов по ModBus RTU, поделюсь своими наработками, может быть кому-нибудь пригодится.
MasterSCADA 4 + КР-500М + МВА8 + ТМ 5103
Схема подключения представлена на рисунке 1. К МВА8 подключена термопара и два сухих контакта, к ТМ 5103 подключено термосопротивление.
Рисунок 1 – Схема подключения
Сетевые параметры ТМ 5103:
Адрес – 1;
Скорость обмена – 9.6;
Паритет – нет;
Стоп-бит в посылке – 2;
Тип протокола: ModBus RTU.
Сетевые параметры МВА8:
Адрес – 16;
Скорость обмена – 9.6;
Паритет – нет;
Стоп-бит в посылке – 1;
Тип протокола: ModBus RTU.
Сетевые параметры КР-500М (см. рисунок 2):
IP адрес – 192.168.3.45;
ModBus TCP порт – 501.
Рисунок 2 – Сетевые параметры КР-500М
Параметры RS-485 КР-500М ПС3 (см. рисунок 3):
Скорость обмена – 9.6;
Таймаут – 1000;
Паритет – нет;
Стоп-бит в посылке – 2.
Рисунок 3 – Параметры RS-485 КР-500М ПС3
Параметры RS-485 КР-500М ПС4 (см. рисунок 4):
Скорость обмена – 9.6;
Таймаут – 1000;
Паритет – нет;
Стоп-бит в посылке – 1.
Рисунок 4 – Параметры RS-485 КР-500М ПС4
Программа в контроллер КР-500М
Для обмена данными по ModBus RTU в контроллере КР-500М используют алгоблоки: MBS (14) – MODBUS обмен и ЧМД (15) – MODBUS-чтение.
MBS (14) – MODBUS обмен
Назначение:
Алгоритм применяется для обеспечения обмена с устройством полевой сети контроллера, работающего по протоколу Modbus client (Modbus ведущий). Алгоритм предназначен для совместного использования с алгоритмами ЧМД(15) и ЗМД(16). Алгоритм MBS осуществляет обмен с одним устройством полевой сети MODBUS RTU одной или несколькими командами.
Описание алгоритма:
Модификатор размера МР = 00 – 60, модификатор типа МТ = 1 – 4, масштаб времени МВ отсутствует.
Входы-выходы алгоритма MBS приведены на рисунке 5.
Рисунок 5 – Входы-выходы алгоритма MBS
Один алгоритм MBS применяется для обмена с одним устройством полевой сети MODBUS RTU одной или несколькими командами.
Модификатор типа задает перестановки байт и слов для устройств, работающих по нестандартному протоколу. Модификатор типа 1 - значения передаются в неизменном виде 0-1-2-3, модификатор типа 2 - в значении переставляются байты 1-0-3-2, модификатор типа 3 - в значении переставляются слова 2-3-0-1, модификатор типа 4 - в значении переставляются байты и слова 3-2-1-0.
На входе Nпс задаётся номер полевой сети контроллера.
На входе Nустр задаётся номер устройства полевой сети контроллера.
На входе Т задаётся период опроса одного и того же устройства в миллисекундах. При Т = 0 означает, что при получении ответа сразу формируется следующая команда, При Т = 200 следующая команда формируется через 200 мс.
В резервированном контроллере время Т необходимо задавать в 2 раза больше реального времени цикла контроллера для обеспечения синхронизации работы контроллеров.
Количество команд определяется модификатором обмена МР. Для обеспечения обмена входы С.i алгоритма необходимо связать с первым выходом алгоблока содержащего алгоритм ЧМД(15) или ЗМД(16).
На входах Dп.i устанавливается признак передачи команды. Если Ск.i = 0, то i-ая команда не посылается.
Алгоритм MBS работает следующим образом:
1) определяет номер алгоблока и тип алгоритма связанного с входом С.i;
2) посылает команду чтения или записи в соответствии с типом алгоритма ЧМД(15) или ЗМД(16);
3) при получении ответа, записывает данные в алгоблок с алгоритмом ЧМД(15) или ЗМД(16);
4) ожидает истечения времени заданного на входе Т;
5) выбирается следующий вход С.i, на котором Ск.i = 1 и переходит к шагу 1.
На выходе Dош формируется признак ошибки работы алгоритма.
На выходе Nош формируется код ошибки работы алгоритма в соответствии с таблицей.
На выходе Nком выводится порядковый номер текущей обрабатываемой команды.
С версии 56.02 контроллеров БК-500М, БК-500К-(00,01,05,06), МК-500-10(20) и версии 011 контроллера МДА-Р-22 при отрицательных значениях Nпс и/или Nустр алгоритм отключен от обмена с устройством по полевой сети, при этом выход Dош обнулен, на выходе Nош выдается код 95.
ЧМД (15) – MODBUS-чтение
Назначение:
Алгоритм применяется для ввода данных с устройств полевой сети контроллера работающего по протоколу MODBUS RTU. Алгоритм ЧМД формирует одну команду чтения устройства MODBUS для посылки в полевую сеть и позволяет прочитать до 60-ти 4-х байтовых данных (120 регистров) с устройства MODBUS.
Описание алгоритма:
Один алгоритм ЧМД применяется для формирования команды чтения и индикации данных поступающих от одного устройства одной из полевых сетей. Номер полевой сети и сетевой номер устройства задаётся в алгоритме МBS(14).
Модификатор размера МР=00-60, модификатор типа МТ и масштаб времени МВ отсутствует.
Входы-выходы алгоритма ЧМД приведены на рисунке 6.
Рисунок 6 – Входы-выходы алгоритма ЧМД
Алгоритм имеет 3 входа для формирования команды чтения.
На входе Nк задаётся код команды для чтения из устройства MODBUS, обычно используют код команды 3.
На входе Nадр указывается адрес для чтения.
На входе Nрег указывается количество регистров для чтения. Если значение на входе Nрег больше чем модификатор размера МР умноженный на 2 (на одном 4-х байтовом выходе алгоритма умещаются два 2-х байтовых регистра), то количество регистров ограничивается:
Nрег = 2 * МР
Для индикации результата обмена с устройством предназначены два выхода: Dош и Nош.
На выходе Dош формируется признак ошибки работы алгоритма.
На выходе Nош формируется код ошибки работы алгоритма в соответствии с таблицей.
Для представления данных с устройства в технологическую программу используются 4-х байтовые выходы H.i.
Сигналы на выходах H.i могут обрабатываться другими алгоритмами, связанными по конфигурации с алгоритмом ЧМД. При приеме упакованных значений обязательна предварительная их дешифрация при помощи соответствующих алгоритмов.
В соответствии со всем выше сказанным программа для опроса МВА8:
MBS (МТ=4, МР=1)
6_1.png
ЧМД (МР=24)
6_2.png
В соответствии со всем выше сказанным программа для опроса ТМ 5103:
MBS (МТ=1, МР=1)
6_3.png
ЧМД (МР=4)
6_4.png
Для определения начального регистра чтения использовал документацию на МВА8 и ТМ 5103 (см. рисунок 7, 8).
Рисунок 7 – Адреса параметров МВА8
8.pngРисунок 8 – Адреса параметров ТМ 5103
Для обмена данными по ModBus TCP в контроллере КР-500М используют алгоблок ИНР (07) – Интерфейсный вывод радиальный.
ИНР (07) – Интерфейсный вывод радиальный
Назначение:
Алгоритм предназначен для формирования в реальном времени значений сигналов и выдаче их по командам абонента в радиальный канал контроллера.
Описание алгоритма:
Входы алгоритма ИНР подобны алгоритму ИНВ, за исключением значений модификаторов МР и МТ: МР = 0 .. 126, МТ = 1 .. 32.
Принцип работы алгоритма ИНР аналогичный, как и алгоритма ИНВ, но со следующими особенностями:
- Формируемые ИНР значения сигналов необходимо запрашивать специальной командой, посылаемой с верхнего уровня, то есть ИНР формирует значения в темпе работы контроллера, а передает их на верхний уровень в темпе работы ПЭВМ верхнего уровня.
- ИНР имеет расширенное до 126 число входов, то есть МР = 0 – 126.
- В составе программы пользователя может быть до 32 ИНР. Номер ИНР задается модификатором типа МТ = 1 – 32, что позволяет передавать с одного контроллера на верхний уровень до 4032 4-х байтовых значений, при упаковке значений количество сигналов возрастает в зависимости от типа передаваемых данных.
- Буфер алгоритма можно вычитывать по сети МАГИСТР, при этом буфер усекается до 30 сигналов (передаются только первые 30 входов).
Входы алгоритма ИНР приведены на рисунке 9.
Рисунок 9 – Входы алгоритма ИНР
В соответствии со всем выше сказанным, программу на КР-500М можно представить в виде структурной схемы (см. рисунок 10).
Рисунок 10 – Структурная схема программы на КР-500М
MasterSCADA 4D
Для опроса контроллера КР-500М в MS4D создал АРМ1, добавил протокол ModBus TCP, добавил ModBusTCP Device1, добавил 9 базовых каналов (см. рисунок 11).
Рисунок 11 – Дерево объектов
На рисунке 12 представлены основные настройки ModBusTCP Device1.
Рисунок 12 – Настройки ModBusTCP Device1
На рисунке 13 представлены основные настройки Базового канала (адреса для следующих каналов увеличиваются на +2).
Рисунок 13 – Настройки Базового канала
На рисунке 14 представлен конечный результат, опрос MS4D контроллера КР-500М.
Рисунок 14 – Опрос MS4D контроллера КР-500М