<< Click to Display Table of Contents >> Navigation: Modbus Universal MasterOPC Server > MasterOPC Universal Modbus Server > Режим конфигурирования > Параметры объектов дерева > Диалог параметров тега |
В разделе Общие настройки задаются следующие параметры (см. также Операции в диалогах параметров ):
Комментарий – комментарий к тегу, передается клиентам;
Включен в работу – если ИСТИНА, тег исполняется в реальном времени, если ЛОЖЬ – не исполняется;
Регион – выбор адресного пространства Modbus (COILS, DISCRETE_INPUTS, INPUT_REGISTERS, HOLDING_REGISTERS). Кроме того, для этого параметра может быть задано значение SERVER_ONLY – в этом случае тег становится локальным (т.е. без связей с тегами устройств) и выполняет только пользовательский скрипт.
Соответствие региона Modbus функциям чтения и записи |
||
Регион |
Функция чтения |
Функции записи |
Coils |
0x01 |
0x05 - одиночная, 0x0F - групповая |
Discrete_Inputs |
0x02 |
не поддерживается |
Holding_Registers |
0x03 |
0x06 - одиночная, 0x10 - групповая |
Input_Registers |
0x04 |
не поддерживается |
Пapaмeтp Регион дocтупeн тoльko в диaлoгe coздaния, но может быть изменен через Групповые операции.
Адрес – смещение адреса в выбранном адресном пространстве;
Тип данных в устройстве – тип данных в устройстве (bool, int16, uint16, int32, uint32, float, double или string (размер string – 250 байт), будет преобразован к типу данных в сервере);
Тип данных в сервере – тип данных для клиентов сервера (bool, int32, uint32, float, double или string);
Примечание. Тип данных в устройстве и тип данных в сервере могут быть установлены разные. Основное назначение данного функционала - преобразование получаемых данных. Однако возможна ситуация, когда при записи, значение, пришедшее из OPC клиента, превышает возможный диапазон типа данных в устройстве. Например, тип данных в устройстве - int16, тип в сервере - int32, из клиента пришло значение на запись 40000 (при возможном диапазоне int16 от -32768 до 32767) - в этом случае запись в устройство не производится, а в лог записывается сообщение о превышении диапазона.
Тип доступа – доступ к переменной (ReadOnly – только чтение, WriteOnly – только запись, ReadWrite – чтение и запись);
Использовать перестановку байтов устройства – при включении данной настройки происходит наследование чередование байт от настройки устройства. В противном случае появляется дополнительная настройка Перестановка байтов в значении.
Перестановка байтов в значении – ячейка значения этого параметра отображает заданный порядок байтов и содержит кнопку вызова редактора перестановки (см. Редактор перестановки байтов ). Данный параметр обеспечивает обмен с устройствами с различным порядком следования байтов в числах. Например, для 2-байтного целого, в котором первым следует старший байт, нужно задать порядок вида 10хххххх (имеют значение только первые два байта, порядок остальных не важен);
Последний тег в групповом запросе – если ИСТИНА, данный тег всегда будет последним в групповом запросе;
Тип строки для строкового типа – тип считываемой строки. Доступны следующие варианты:
ASCII - принятые байты преобразуются в символы по ASCII таблице. Один ASCII символ занимает 1 байт, т.е. в одном Modbus регистре будет 2 символа.
HEX - представляет принятые байты в виде шестнадцатеричной строки.
UNICODE - принятые байты преобразуются в символы по таблице Unicode. Один Unicode символ занимает 2 байта или 1 Modbus регистр.
Количество байт для строкового типа – количество байт для строки.
Пересчет (A*X+B) – масштабирование считанного значения X; множитель и смещение задаются параметрами раздела Коэффициенты пересчета. При записи в тег выполняется демасштабирование. Пусть, например, тег с доступом ReadWrite связан с некоторым регистром устройства, A=2, B=100. Тогда, если значение в регистре – 10, значение тега в сервере будет равно 2*10+100=120, а при записи в тег значения 200 в регистр запишется (200-100)/2=50.
В разделе Коэффициенты пересчета задаются множитель и смещение для параметра Пересчет (A*X+B):
Коэффициент A – множитель;
Коэффициент B – смещение;
Пересчет по шкалам – ячейка значения этого параметра содержит кнопку открытия диалога, в котором задается соответствие произвольного диапазона считываемых/передаваемых значений (Шкала значения) диапазону значений в сервере (Шкала пересчета):
По заданным в диалоге значениям автоматически устанавливаются множитель и смещение (например, для значений, показанных на рисунке, Коэффициент A = 5 и Коэффициент B = 100).
В разделе Скрипт задаются следующие параметры:
Разрешение выполнения скрипта после чтения – разрешение/запрет обработки полученного значения (скрипт задается параметром Редактирование кода скрипта чтения);
Редактирование кода скрипта чтения – ячейка значения этого параметра содержит кнопку открытия редактора скрипта (см. Редактор скрипта );
Разрешение выполнения скрипта перед записью – разрешение/запрет предобработки значения перед записью (скрипт задается параметром Редактирование кода скрипта записи);
Редактирование кода скрипта записи – ячейка значения этого параметра содержит кнопку открытия редактора скрипта (см. Редактор скрипта );
В разделе Дополнительно задаются следующие параметры:
Наличие отдельного регистра записи – должно быть ИСТИНА, если в устройстве для одной и той же переменной выделены разные регистры для чтения и записи; адрес регистра записи задается параметром Адрес отдельного регистра записи;
Адрес отдельного регистра записи – см. описание предыдущего параметра Наличие отдельного регистра записи;
Извлечение бита из данных – разрешение/запрет извлечения бита, заданного параметром Номер бита данных, из ответа устройства;
Номер бита данных – номер бита, извлекаемого из ответа устройства;
Чтение сразу после записи – если ИСТИНА, то при записи в переменную происходит внеочередное считывание всего устройства, не дожидаясь очереди его опроса.
Сброс команды записи - если при записи в тег запись не прошла (не было связи с устройством или устройство вернуло ошибку), запись более не предпринимается до нового запроса записи со стороны клиента. В противном случае будут продолжены попытки до успешной записи.
Принудительная запись командой 6 – значение этого параметра должно быть ИСТИНА для ряда приборов (в частности, ОВЕН), у которых чтение осуществляется командой 3, а запись не командой 16, а командой 6. Данный параметр используется только в случае Регион=HOLDING_REGISTERS.
В разделе HDA задаются следующие параметры:
HDA доступ – если ЛОЖЬ, тег не архивируется, в противном случае его параметры могут записываться в архив HDA. Режим записи зависит от параметров Автоматическая запись и Запись по изменению значения тега:
если Автоматическая запись = ИСТИНА и Запись по изменению значения тега = ИСТИНА, тег архивируется при изменении его значения;
если Автоматическая запись = ИСТИНА, а Запись по изменению значения тега = ЛОЖЬ, тег архивируется с периодом, заданным параметром Период опроса устройства (подустройства).
Вне зависимости от параметров Автоматическая запись и Запись по изменению значения тега, тег может архивироваться из скрипта с помощью соответствующих функций (например, server.WriteCurrentTagToHda – см. Функции работы с тегами );
Количество записей в архиве (100 – 4080) – размер HDA-архива тега (от 100 до 4080 записей). При переполнении запись ведется с начала архива (наиболее старые сообщения удаляются).