Сведения о сервере Modbus/TCP

Избыточность

В резервированной системе «КАСКАД Цифра» на каждой стороне работает по одному Modbus-серверу. Запись конфигурации connectToRedundantHosts предоставляет два варианта подключения сервера Modbus к системе “КАСКАД Цифра”.

  • connectToRedundantHosts = 0: Сервер Modbus подключен только к локальному менеджеру событий. Это означает, что клиент должен подключиться к обоим серверам Modbus в системе и отправлять команды на оба сервера, поскольку пассивный менеджер событий блокирует изменения значений.
  • connectToRedundantHosts = 1: Не имеет значения, какой сервер Modbus выбран клиентом. Однако, если клиент отправляет команды на оба сервера, команды принимаются дважды в приложении “КАСКАД Цифра”.

Сервер Modbus не поддерживает резервные соединения. Если клиент устанавливает два соединения, оба соединения считаются обычными. Это означает, что сообщение в направлении мониторинга отправляется по обоим соединениям. Если клиент отправляет команду по обоим соединениям, обе команды обрабатываются и пересылаются приложению.

Области памяти и поддерживаемые функциональные коды

Память сервера Modbus /TCP “КАСКАД Цифра» разделена на 4 области, доступ к которым осуществляется с помощью различных функциональных кодов. Для каждой области может использоваться до 65536 бит или регистров.

Область памятиНомер регистра или битаДоступ через
1: Входные дискретыБит 0 – 65535FC2 считывает дискретные входные данные
2: КатушкиБит 0 – 65535FC1 считывает катушки, FC5 записывает отдельные катушки, FC15 записывает несколько катушек
3: Регистр вводаРегистрация 0 — 65535FC4 считывает входной регистр
4: Регистр храненияРегистрация 0 — 65535FC3 считывает регистры хранения, FC6 записывает один регистр, FC16 записывает несколько регистров

Следующая таблица содержит краткое описание функциональных кодов, поддерживаемых сервером Modbus/TCP “КАСКАД Цифра”.

Функциональный кодКодОписание
считывание катушек1Считывает состояние ВКЛЮЧЕНИЯ / выключения дискретного выхода.
считывание дискретных входных данных2Считывает состояние ВКЛЮЧЕНИЯ / выключения дискретного входа.
считывание нескольких регистров3Считывает двоичное содержимое регистра хранения.
считывание входных регистров4Считывает двоичное содержимое входного регистра.
катушка записи5Включает или выключает одну катушку
запись в единый регистр6Записывает значение в регистр хранения.
принудительно подключайте несколько катушек15Включает или выключает каждую катушку в последовательности катушек.
запись нескольких регистров16Записывает значения в несколько регистров хранения.

Типы данных

Поддерживаемые точки данных должны быть сопоставлены регистрам Modbus. Количество используемых регистров может быть определено в пользовательских данных каждого узла.

Например, это необходимо, если вы хотите представить элемент точки данных типа int как один регистр Modbus. В этом случае пользователь должен убедиться, что элемент точки данных не превышает диапазон номеров регистра Modbus. Если сопоставлен элемент точки данных, который занимает более одного регистра, необходимо убедиться, что следующий элемент точки данных сопоставлен следующему свободному регистру. Перекрывающиеся сопоставления приведут к появлению сообщения об ошибке.

Для определения количества используемых регистров используйте либо вкладку Plantmodel Editor – Modbus, либо функцию CTRL cnsSetProperty.

ПРИМЕЧАНИЕ

Редактор Plantmodel автоматически устанавливает соответствующий ключ в пользовательских данных. Если вы используете cnsSetProperty, вы должны установить ключ “OA: DMOD” для определения количества используемых элементов dyn и ключ “OA: MOD” для определения количества используемых регистров.

Поддерживаются следующие типы данных (а также соответствующие типы dyn):

Тип данныхКоличество используемых регистров по умолчанию
uint2
int2
float4
bool 
bit322
длинный4
ulong4
bit644
строка 
большой двоичный объект 
время4 (дата / время, сохраненные как G12DateTime)

ПРИМЕЧАНИЕ

Элементы точки данных типа bool или dyn_bool могут быть сопоставлены только с областью памяти 1 или 2. Все остальные типы данных могут быть сопоставлены только с областью памяти 3 или 4.

В случае типов данных “КАСКАД Цифра» без определенной длины (например, типов dyn или string) пользователь должен явно определить длину при сопоставлении с моделью данных Modbus.

Формат G12DateTime

Тип данных времени отображается в области памяти Modbus в следующем формате:

G12DateTime (дата и время, закодированные в виде четырех неподписанных 16-битных слов
[16 бит] (формат Motorola) (секунды * 1000) + миллисекунды
[8 бит] Минут[1 бит] Флаг DST[7 бит] Часов
[3 бита] рабочий день (пн = 1)[5 бит] день месяца[8 бит] месяц (январь = 1)
[8 бит] год основания (9 = 2009)[8 бит] заполнение нулем

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *