Вы находитесь на странице: 1из 60

НИИЭФА‐ЭНЕРГО 

2018г. 
 

27 шагов к успеху

Страница 1 
 
Издание 1‐е, долгожданное
НИИЭФА‐ЭНЕРГО 2018г. 
 
   

 
Оглавление
 
 
 
1.  Состав программного комплекса, терминология, описание взаимодействия устройств ....... 3 
  2.  Назначение файлов конфигурации. .................................................................................................... 6 

  3.  Файлы конфигурации - пути расположения и состав файлов. ..................................................... 7 


3.1.  Структура файла конфигурации тегов Tags_*.ini. ............................................................ 7 
 
3.2.  Структура файла конфигурации устройства Device_*.ini. .............................................. 8 
 
3.3.  Структура файла конфигурации канала Channel_*.ini. ................................................... 8 
  3.4.  Структура файла конфигурации роутера Router.ini. ...................................................... 11 

  3.5.  Структура файла конфигурации маршрутов Routes.ini. ............................................... 12 


4.  Конфигуратор роутера на базе Excel ................................................................................................ 12 
 
4.1.  Общие сведения ..................................................................................................................... 12 
 
4.2.  Основные принципы и правила. ........................................................................................ 12 
  4.3.  Начальные данные для создания конфигурации для ТП Примерная. ..................... 15 

  4.4.  Пошаговое конфигурирование для ТП Примерная. ...................................................... 20 


Шаги 1...6. Конфигурирование роутеров ................................................................................... 20 
 
Шаги 7...12. Конфигурирование каналов ................................................................................... 23 
 
Шаги 13...26. Конфигурирование устройств (тегов) ............................................................... 25 
  Шаг 27. Финальная генерация ..................................................................................................... 60 

   

Страница 2 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
1. Состав программного комплекса, терминология, описание Конфигурационные файлы при задании параметров конфигурации используют
взаимодействия устройств следующую терминологию:
Программный комплекс предназначен для организации информационного  устройство (Device) – это физический объект, с которым взаимодействует
взаимодействия между устройствами верхнего и нижнего уровня. программа роутера. В качестве объектов выступают полевые устройства и устройства
Программный комплекс выполняет: верхнего уровня;
 сбор и передачу информации по каналам связи c интерфейсами RS-485 и  канал (Channel) – это виртуальная шина данных с определенным протоколом
Ethernet, с использованием различных протоколов обмена данными, обмена данными и параметрами связи, предназначенная для обмена информацией
см. рисунок 1; между устройствами на шине и программой роутера;
 нормализацию и масштабирование поступающей информации;  интерфейс канала (ChannelInterface) – это набор правил, по которым каналы
 канальную маршрутизацию поступающей информации. взаимодействуют между собой и предназначенных для передачи информации между
каналами посредством маршрутов;
 маршрут (Route) – это средство обмена данными между каналами,
предназначенный для обмена информацией между интерфейсами каналов;
 тег (Tag) – это информационная единица в виде набора данных,
предназначенная для хранения информации;
 драйвер (Driver) – это программное обеспечение осуществляющее связь между
ядром программы роутера и внешними устройствами.
В соответствии с заданной конфигурацией, в результате работы драйверов,
информация от опрашиваемых устройств в виде значений сигналов, через каналы
поступает в роутер. В драйвере информация преобразуется в теги. Значения тегов
могут подвергаться нормализации, масштабированию и преобразованию типа. Далее
значения (и другие параметры тегов) передаются по маршрутам на другие каналы
(через интерфейсы каналов) для выдачи на другие устройства.
Схемы организации информационного взаимодействия между устройствами
верхнего и нижнего уровня приведены на рисунках 2-5.

На рисунке 2 представлены структурная схема аппаратных средств и схема


соответствующих им частей программного комплекса.
Используются следующие аналогии:

Аппаратное средство Программа


Устройство Теги устройства
Кабель Канал (Драйвер)
Рисунок 1. Протоколы обмена данными
Аппаратный интерфейс (разъем) Порт
В состав программного комплекса входят следующие компоненты:
 программа роутера ARApplication.exe;
 библиотеки программы роутера *.dll;
 файлы конфигурации в составе:
 файл конфигурации роутера Router.ini;
 файл конфигурации маршрутов Routes.ini;
 файлы конфигурации канала Channel_*.ini;
 файлы конфигурации устройства Device_*.ini;
 файлы конфигурации тегов Tags_*.ini;
 файл описания всех тегов TagDescriptions.ini
Страница 3 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

Рисунок 2. Схема аппаратных средств и соответствующих им частей программного комплекса

Страница 4 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
На рисунке 3 приведена схема межканального взаимодействия внутри программного На рисунке 4 представлена схема соответствия тегов устройств нижнего и верхнего
комплекса. уровней в общем случае (стрелками обозначено направление “движения” тегов по
Каналы связаны между собой парными уникальными (в пределах канала) маршрутам).
интерфейсами, т.е. подразумевается, что если в канале N имеется уникальный В общем случае значения (и другие параметры) выходных тегов устройств любого
(в пределах канала N) интерфейс для связи канала N с каналом M, то канал М уровня (в пределах роутера) формируются из значений входных тегов устройств
в свою очередь должен иметь уникальный (в пределах канала М) интерфейс противоположного уровня (в пределах роутера).
для связи с каналом N. Важные замечания.
При этом не является обязательной связь каждого канала со всеми остальными Устройства нижнего уровня всегда присутствуют в системе и в общем случае все
каналами. На рисунке 3 видно, что теги роутера это теги устройств только нижнего уровня.
- канал 1 имеет связь (и соответствующие интерфейсы) только с каналами 3 и 4; Устройства верхнего уровня условно можно считать виртуальными, так как
- канал 2 с каналами 3, 4 и 5; фактически они не имеют “своих собственных” тегов. Теги устройств верхнего уровня
- канал 3 только с каналами 1 и 2; “составлены” из тегов устройств нижнего уровня (всех или выборочно).
- канал 4 только с каналами 1 и 2; Соответствие тегов нижнего и верхнего уровней осуществляется посредством
- канал 5 только с каналом 2. идентификаторов.
На рисунке 3 не приведены интерфейсы (и маршруты) для связи между каналами Системные теги существуют только как уникальные параметры, описывающие
нижнего уровня (каналами 1 и 2), но это не запрещено. Возможен даже маршрут для устройство.
передачи данных “внутри” канала (например у модуля, имеющего входы и выходы, для Выходные теги устройств верхнего уровня также могут включать в себя системные
имитации обратной связи при управлении приводом). Для этого необходимо в канале N теги устройств нижнего уровня. Системные теги устройств верхнего и среднего уровня
просто добавить интерфейс канала N. присутствуют в системе, но не используются как данные для обмена.

Рисунок 3. Схема межканального взаимодействия  


 
Рисунок 4. Схема соответствия тегов устройств нижнего и верхнего уровней
Страница 5 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
  2. Назначение файлов конфигурации.
Для примера на рисунке 5 представлена схема соответствия тегов конкретных
устройств (модуля телесигнализации, модуля телеуправления и устройств верхнего Подавляющая часть настроек программного комплекса хранится в файлах
уровня, например, ШУП и сервера РДУ). конфигурации. Файлы конфигурации загружаются однократно в момент запуска
Как видно из примера: программы роутера и хранящиеся в них настройки не могут быть изменены в ходе работы.
- модуль ТС имеет только входные (и системные) теги, а модуль ТУ имеет только Любые изменения файлов конфигурации применяются только при следующем запуске
выходные (и системные) теги; программы роутера. Файлы конфигурации представляют собой текстовые файлы, в
- выходные теги ШУП “составлены” из входных тегов модуля ТС и системных тегов которых осуществляется задание значений параметров работы. Для конфигурирования
модулей ТС и ТУ; программы роутера используются следующие файлы:
- выходные теги РДУ “составлены” из входных тегов модуля ТС;  файл конфигурации тегов Tags_*.ini – предназначен для описания и задания
- входные теги ШУП соответствуют и фактически “составлены” из выходных тегов параметров входных и выходных тегов устройств;
модуля ТУ;  файл конфигурации устройства Device_*.ini – предназначен для задания
- системные теги устройств верхнего уровня не участвуют в обмене. параметров устройства и системных тегов;
   файл конфигурации канала Channel_*.ini – предназначен для задания параметров
  информационного взаимодействия:
 настройка основных параметров канала;
 выбор и настройка драйвера канала и протокола информационного обмена;
 выбор и настройка порта для связи с устройством;
Tags_ShUP Tags_RDU
 файл конфигурации роутера Router.ini – предназначен для задания основных
параметров работы роутера, а также содержит пути к файлам конфигурации каналов;
Входные Выходные Системные Входные Выходные Системные  файл конфигурации маршрутов Routes.ini – предназначен для описания
(формирования списка) маршрутов между каналами.
 файл TagDescriptions.ini по структуре аналогичен файлу конфигурации тегов и
содержит описание всех входных и выходных тегов устройств и системных тегов
устройств.

Входные Системные Выходные Системные


(входные (например, (команды на (например,
дискретные признак связи с изменение признак связи с
сигналы) устройством) выходных устройством)
дискретных
сигналов)

Tags_MTS (теги модуля ТС) Tags_MTU (теги модуля ТУ)

 
Рисунок  5.  Схема  примера  соответствия  тегов  конкретных  устройств  (модуля 
телесигнализации,  модуля  телеуправления  с  устройствами  верхнего  уровня, 
например, ШУП и сервером РДУ) 

Страница 6 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
3. Файлы конфигурации - пути расположения и состав файлов. 3.1. Структура файла конфигурации тегов Tags_*.ini.
3.1.1. Параметры секции «General» представлены в таблице 7.
Каталоги и файлы конфигурации находятся в основном каталоге программного
комплекса, в котором расположена программа роутера: Таблица 7 - Параметры секции «General»
Тип Ед.
№ Наименование параметра Значение параметра Описание
«Project»/«Node_Name»/Router.ini данных изм.
1 IniFileVersion string Версия файла
«Project»/«Node_Name»/Routes.ini
«Project»/«Node_Name»/TagDescriptions.ini
«Project»/«Node_Name»/Channels/Channel_*.ini 3.1.2. Параметры секции «Tags» представлены в таблице 8.
«Project»/«Node_Name»/Channels/Devices/Device_*.ini
«Project»/«Node_Name»/Channels/Devices/Tags/Tags_*.ini Таблица 8 - Параметры секции «Tags»
Тип Ед.
№ Наименование параметра Значение параметра Описание
данных изм.
Файл конфигурации состоит из одной (и более) секций, в которых сгруппированы
1 MeasuringRange.Min float Диапазон измерения, минимальное значение
параметры конфигурации, которые могут включать в себя: 2 MeasuringRange.Max float Диапазон измерения, максимальное значение
 имя параметра; 3 ValueRange.Min float
Диапазон изменения значения, минимальное
значение
 значение параметра; 4 ValueRange.Max float
Диапазон изменения значения, максимальное
значение
 комментарий; 5 Address string Адрес
и т.п. 6 AddressBit string Адрес бита
Функция (используется для протоколов
Наименование секции в тексте файла указывается в квадратных скобках. 7 Function string
Modbus)
Параметры конфигурации могут задаваться в виде текстовой строки с указанием 8 Name string Имя тега
9 Group string Группа тега
имени параметра и его значения, либо в табличной форме. 10 ID int Уникальный идентификатор
В табличной форме обозначение начала и окончания таблицы обозначается <Table> TypeUInt Целое беззнаковое число
TypeInt Целое число
и </Table> соответственно.
TypeUInt32 Целое число без знака 4 байта
В строке таблицы имена параметров не указывается в явном виде, значения TypeInt32 Целое число со знаком 4 байта
параметров отделяются друг от друга символом «;». При отсутствии значения параметра TypeBool Двоичный тип
TypeString Строка
между соседними символами «;» никакое значение не ставится.
TypeFloat Число с плавающей точкой
TypeBytes Массив байт
пример: TypeFile Файл
TypeSinglePoint Одноэлементная информация
TypeDoblePoint Двухэлементная информация
[«Наименование секции»] TypeOscillogramm Осцилограмма
TypeTime Время
11 TagType enum TypeByte
«Имя параметра 1» = «Значение параметра 1» // комментарий TypeSingleCommand Однопозиционная команда
«Имя параметра 2» = «Значение параметра 2» // комментарий TypeDoubleCommand Двухпозиционная команда
… TypeFloatCommand Команда уставки
TypeStepControlCommand Команда пошагового регулирования
«Имя параметра n» = «Значение параметра n» // комментарий TypeFloat0123 Дополнительный тип
TypeFloat2301 Дополнительный тип
TypeFloat1032 Дополнительный тип
«Имя таблицы» = <Table> Для синхронизации времени в устройстве
TypeTimeInter
«Значение параметра 1»;«Значение параметра 2»;…;«Значение параметра n» Интер
TypeSetTemperatureInter Для установки температуры в Интер
… Тип тега плакат - используется для передачи
TypePoster
«Значение параметра 1»;«Значение параметра 2»;…;«Значение параметра n» данных об активном плакате
Тип тега время в тиках - используется для
TypeTimeTicks
</Table> синхронизации времени между IMX
Имя архива, из которого восстанавливается
значение тега при старте программы
12 ArhiveNameForRestory string
(значение = "NONE" указывает, что
Примеры файлов конфигурации приведены в приложении в конце документа. NONE восстанавливать значение не нужно)
13 Description string Описание

Апертура (шаг изменения значения, при


14 Apertura float выходе за его пределы значение передается
целым числом)

Страница 7 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
№ Наименование параметра
Тип Ед.
Значение параметра Описание 3.2. Структура файла конфигурации устройства Device_*.ini.
данных изм.
Ложное значение используется для 3.2.1. Параметры секции «General» представлены в таблице 9.
исключения совпадения некорректного
15 FalseValue float значения с реальным (выставляется
нормализатором - значение тега
преобразуется в физическую величину) Таблица 9 - Параметры секции «General»
float/ Слагаемое (используется для приведения к Тип Ед.
16 Summ № Наименование параметра Значение параметра Описание
string конкретной физической величине) данных изм.
float/ Множитель (используется для приведения к
17 Multiplier 1 IniFileVersion string Версия файла
string конкретной физической величине)
Имя таблицы преобразования значения тега Тип шифрования данных при передаче между
2 EncryptionType enum
18 СonversionTableName string Таблица представляет собой набор входных узлами
и выходных значений True (шифровать)
True 3 EncryptionEnable bool False (не Признак шифрования
(преобразование шифровать)
выполняется) Признак, указывающий выполнение 4 TagsFilePath string Путь к файлу с тегами
19 NeedConversion bool
False преобразования значения по таблице
(преобразование не 5 CIDFilePath string Путь к CID-файлу с описанием устройства
выполняется) NONE (если файл не
True (нормализация используется)
тега выполняется) Группа (для идентификации однотипных
Признак, указывающий выполнение 6 Group
20 NeedNormalize bool тегов)
False (нормализация нормализации значения тега
7 Описание параметров системных тегов
тега не выполняется)
Единица измерения из системы СИ (можно ∙∙∙ ∙∙∙ ∙∙∙ аналогичны параметрам тегов пп. 3.3.2
21 Unit string (смотри таблицу 8)
задавать и русское и английское название) 38
Уровень (значение показывает до какого
22 Level int
уровня иерархии системы пройдёт тег)
Аварийное низкое значение (в физической
23 LOLO int
величине)
Аварийное низкое значение (в физической
3.3. Структура файла конфигурации канала Channel_*.ini.
24 LO int
величине)
Нормальное значение (в физической 3.3.1. Параметры секции «General» представлены в таблице 1.
25 Normal int
величине)
Предупредительное высокое значение (в
26 HI int
физической величине) Таблица 1 - Параметры секции «General»
Аварийное высокое значение (в физической
27 HIHI int Тип Ед.
величине) № Наименование параметра Значение параметра Описание
Число знаков после запятой для аналоговых данных изм.
28 Round int
сигналов 1 IniFileVersion string Версия файла
Описание архивов, в которые добавляется Имя канала (используется для уникальной
значение тегов (параметр представляет 2 Name string
идентификации канала в единой системе)
собой массив архивов).
Разделение элементов массива Имя, отображаемое пользователю (не
3 Label string
осуществляется символом «¦». используется для идентификации)
В каждом элементе массива существует 2 Top (верхний)
параметра: «Name» и «Condition». 4 Level enum Middle (средний) Уровень канала
Разделение параметров в элементе массива
Bottom (нижний)
осуществляется символом «|»:
«Name»|«Condition» True
29 ArhiveDescriptions string (запуск канала)
Change_0_to_1 Признак запуска канала при старте
(Изменение из 0 в 1) 5 RunEnable bool False программы
Change_1_to_0 (отсутствие запуска
«Condition» - условие, по которому канала)
(Изменение из 1 в 0)
необходимо добавлять тег в архив (тип
AllChange данных - enum)
(Любое изменение
(для аналоговых и 3.3.2. Группа параметров секции «Driver» представлена в таблицах 2.1-2.14.
дискретных
сигналов)) Таблица 2.1 – Основные параметры секции «Driver»
Описание интерфейсов, на которые
необходимо выложить тег для его Интерфейсы
№ Назначение
дальнейшей маршрутизации. Интерфейсы RS-485 Ethernet
перечисляются через символ"♦". 1 Телемеханика МЭК 60870-5-101 (M/S) МЭК 60870-5-104 (M/S)
30 ChannelInterfaces string Если тег передается в указанные каналы, то
имена интерфейсов необходимо взять из SPABUS
2 РЗА МЭК-61850
МЭК 60870-5-103 (M/S)
файла Channel_*.ini секции
«ChannelInterfaces» Modbus-RTU
ALL Если тег выкладывается на все интерфейсы 3 Промышленная автоматизация Modbus-MR Modbus-TCP
Данная строка игнорируется программой Modbus-SR
31 Ignore (используется для указания служебных HTTP
символов). 4 Мониторинг
SNMP
Идентификатор аппарата, с которым связан
32 Apparatus int 5 Специализированные IRM
тег.

Страница 8 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

Таблица 2.2 – Параметры драйвера IEC61850M Таблица 2.5 – Параметры драйвера Modbus MR
Тип Ед.
№ Наименование параметра Значение параметра Описание Тип Ед.
данных изм. № Наименование параметра Значение параметра Описание
данных изм.
Имя канала (используется для уникальной
1 Name string 1 ReadTimeout int мс Таймаут ожидания ответа на запрос
идентификации канала в единой системе)
2 SendTimeout int мс Таймаут отправки запросов
True (журнал
записывается) Таймаут определения режима работы при
2 WriteLogEnable bool Признак записи журнала резервировании. Если в течение указанного
False (журнал не
интервала времени в канале передаются
записывается)
3 ModeDeterminationTimeout int с запросы и ответы, то запускается режим
True (динамический) Признак динамического или статического прослушивания передачи данных. Если
3 IsDyn bool
False (статический) режима работы устройства запросов нет, то по истечении интервала
Путь к файлу с описанием наборов данных запускается режим «запрос-ответ»
«Dataset» и отчетов «Reports» для True (ошибки
4 DSandRPFileName string динамического режима работы устройства. игнорируются) Признак игнорирования ошибок при опросе
4 IgnoreReadErrors bool
False (ошибки не ведомого устройства
NONE Статический режим
игнорируются)
RTU
5 Type enum Тип протокола Modbus
TCP
Таблица 2.3 – Параметры драйвера Modbus M True (журнал
записывается)
Тип Ед. 6 WriteLogEnable Признак записи журнала обмена данными
№ Наименование параметра Значение параметра Описание False (журнал не
данных изм. записывается)
1 ReadTimeout int мс Таймаут ожидания ответа на запрос True (журнал
записывается)
Таймаут между запросами к ведомому 7 WriteLogSMEnable Признак записи журнала работы драйвера
2 SendTimeout int мс False (журнал не
устройству
записывается)
True (ошибки
игнорируются) Признак игнорирования ошибок при
3 IgnoreReadErrors bool
False (ошибки не считывании
игнорируются)
Таблица 2.6 – Параметры драйвера Modbus SR
RTU Тип Ед.
4 Type enum Тип протокола Modbus № Наименование параметра Значение параметра Описание
TCP данных изм.
True (инкрементация
1 ReadTimeout int мс Таймаут ожидания ответа на запрос
ID, IDTransaction
учитывается) 2 SendTimeout int мс Таймаут отправки запросов
Признак учета инкрементации IDTransaction Main
5 EnableIDTransaction False 3 StartingMode enum Стартовый режим при резервировании
для TCP режима
(инкрементация ID, Redundant
IDTransaction не RTU
4 Type enum Тип протокола Modbus
учитывается) TCP
True (журнал True (журнал
записывается) записывается)
6 WriteLogEnable Признак записи журнала обмена данными 5 WriteLogEnable Признак записи журнала обмена данными
False (журнал не False (журнал не
записывается) записывается)
True (журнал True (журнал
записывается) записывается)
7 WriteLogSMEnable Признак записи журнала работы драйвера 6 WriteLogSMEnable Признак записи журнала работы драйвера
False (журнал не False (журнал не
записывается) записывается)

Таблица 2.4 – Параметры драйвера Modbus S Таблица 2.7 – Параметры драйвера SPA_BUS_M
Тип Ед. Тип Ед.
№ Наименование параметра Значение параметра Описание № Наименование параметра Значение параметра Описание
данных изм. данных изм.
1 ReadTimeout int мс Таймаут ожидания ответа на запрос 1 ReadTimeout int мс Таймаут ожидания ответа на запрос
True (байт 2 SendTimeout int мс Таймаут отправки запросов
переворачивается) True (журнал
2 ReverseData bool Признак переворота байт в ответе на запрос
False (байт не записывается)
переворачивается) 3 WriteLogEnable Признак записи журнала обмена данными
False (журнал не
RTU записывается)
3 Type enum Тип протокола Modbus
TCP True (журнал
True (журнал записывается)
записывается) 4 WriteLogSMEnable Признак записи журнала работы драйвера
4 WriteLogEnable Признак записи журнала обмена данными False (журнал не
False (журнал не записывается)
записывается)
True (журнал
записывается)
5 WriteLogSMEnable Признак записи журнала работы драйвера
False (журнал не
записывается)

Страница 9 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Таблица 2.8 – Параметры драйвера Driver_SET Таблица 2.12 – Параметры драйвера IEC104M
Тип Ед. Тип Ед.
№ Наименование параметра Значение параметра Описание № Наименование параметра Значение параметра Описание
данных изм. данных изм.
1 ReadTimeout int мс Таймаут ожидания ответа на запрос Интервал между итерациями подключения к
1 ReconnectInterval int с
2 SendTimeout int мс Таймаут отправки запросов ведомому устройству
3 ConstA int Константа А Количество итераций подключения до
2 ReconnectCount int
перехода на резервный сервер
4 Mode Режим работы (мастер/слушатель)
Интервал по истечении которого
True (журнал 3 TestCommandSendInterval int c
отправляется команда TESTFR серверу
записывается)
5 WriteLogEnable Признак записи журнала обмена данными Интервал ожидания ответа на тестовую
False (журнал не 4 TestCommandReceiveTimeout int с
записывается) команду
True (журнал Cyclic (циклический)
5 RedundancyMode enum Режим резервирования работы драйвера
записывается) Shuttle (челночный)
6 WriteLogSMEnable Признак записи журнала работы драйвера
False (журнал не Интервал до возвращения на основной канал
записывается) при челночном резервировании.
При переходе на резервный канал связи,
запускается отсчёт указанного интервала
6 TimeToReturn int с времени, по истечении которого выполняется
Таблица 2.9 – Параметры драйвера ModbusASTMU проверка и возможность подключения к
основному серверу. Если такая возможность
Тип Ед. есть, то выполняется переключение на
№ Наименование параметра Значение параметра Описание
данных изм. основной канал связи.
1 ReadTimeout int мс Таймаут ожидания ответа на запрос 7 ReadTimeout с Таймаут ожидания ответа на запрос
True (байты 8 GIInterval int мин. Интервал выполнения общего опроса
переворачиваются) 9 TimeSyncEnable bool Признак выполнения синхронизации времени
2 ReverseData bool мс Признак переворота байт в ответ на запрос
False (байты не
10 TimeSyncInterval int мин. Интервал синхронизации времени
переворачиваются)
True (журнал 11 CauseTransmissionSize int байт Размер поля причины передачи
записывается) 12 ASDUAddressSize int байт Размер поля общего адреса ASDU
3 WriteLogEnable Признак записи журнала обмена данными
False (журнал не 13 ObjectAddressSize int байт Размер поля адреса объекта информации
записывается)
14 ASDUAddress int Общий адрес ASDU
True (журнал
записывается)
4 WriteLogSMEnable Признак записи журнала работы драйвера
False (журнал не
записывается) Таблица 2.13 – Параметры драйвера IEC104S
Тип Ед.
№ Наименование параметра Значение параметра Описание
данных изм.
Таблица 2.10 – Параметры драйвера IEC101M
Количество отправляемых кадров без
1 K int
Тип Ед. подтверждения приема от клиента
№ Наименование параметра Значение параметра Описание
данных изм. Интервал принудительной отправки
2 SendingTITimeout int c
1 ReadTimeout int мс Таймаут ожидания ответа на запрос телеизмерений
2 GIInterval int мин. Интервал выполнения общего опроса True (сообщение
отправлено) Признак отправки сообщения об окончании
3 TimeSyncEnable bool Признак выполнения синхронизации времени 3 SendEndGI bool
False (сообщение не общего запроса
4 TimeSyncInterval int мин. Интервал синхронизации времени отправлено)
5 CauseTransmissionSize int байт Размер поля передачи 4 UTC int час Сдвиг часов при синхронизации в часах
6 ASDUAddressSize int байт Размер поля общего адреса ASDU True (тестовая
7 ObjectAddressSize int байт Размер поля адреса объекта информации команда отправлена)
5 SendTESTFR bool False (тестовая Признак отправки тестовой команды клиенту
8 ASDUAddress int Общий адрес ASDU
команда не
Таблица 2.11 – Параметры драйвера IEC103M отправлена)
Признак накопления данных в буфере при
Тип Ед. 6 BufferOnLinkClose bool
№ Наименование параметра Значение параметра Описание отсутствии связи
данных изм.
Таймаут ожидания запроса или тестовой
1 ReadTimeout мс Таймаут ожидания ответа на запрос 7 RequestTimeout int c
команды
Интервал времени, по истечении которого 8 CauseTransmissionSize int байт Размер поля причины передачи
2 GIInterval int мин. отправляется команда на общий опрос
9 ASDUAddressSize int байт Размер поля общего адреса ASDU
серверу
True (синхронизация 10 ObjectAddressSize int байт Размер поля адреса объекта информации
выполняется) 11 ASDUAddress int Общий адрес ASDU
Признак выполнения команды на
3 TimeSyncEnable bool False True (журнал
синхронизацию времени серверу
(синхронизация не записывается)
12 WriteLogEnable Признак записи журнала обмена данными
выполняется) False (журнал не
int мин. Интервал времени, по истечении которого записывается)
отправляется команда на синхронизацию True (журнал
4 TimeSyncInterval записывается)
времени серверу. Выполняется, если 13 WriteLogEnable Признак записи журнала работы драйвера
TimeSyncEnable = True False (журнал не
5 CauseTransmissionSize int байт Размер поля передачи в байтах записывается)
6 ASDUAddressSize int байт Размер поля общего адреса ASDU
7 ObjectAddressSize int байт Размер поля адреса объекта информации
8 ASDUAddress int Общий адрес ASDU

Страница 10 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Таблица 2.14 – Общие параметры драйверов 3.4. Структура файла конфигурации роутера Router.ini.
Тип Ед.
№ Наименование параметра
данных изм.
Значение параметра Описание 3.4.1 Параметры секции «General» представлены в таблице 10.
True (журнал
записывается)
1 WriteLogEnable bool
False (журнал не
Признак записи журнала обмена данными Таблица 10 - Параметры секции «General»
записывается) Тип Ед.
True (журнал № Наименование параметра Значение параметра Описание
данных изм.
записывается)
2 WriteLogSMEnable bool Признак записи журнала работы драйвера 1 IniFileVersion string Версия файла
False (журнал не
записывается) N (верхний уровень)
∙∙∙ Уровень узла (определяет глубину
2 Level int 1 (нижний уровень) прохождения тегов)
3.3.3. Параметры секции «Serial» представлены в таблице 3. 0 (все уровни)
Имя узла (используется для уникальной
3 Name string
идентификации узла в единой системе)
Таблица 3 – Параметры секции «Serial» 4 Label string
Имя, отображаемое пользователю (не
используется для идентификации)
Тип Ед.
№ Наименование параметра Значение параметра Описание 5 Description string Описание узла
данных изм.
True (группа
1 PortName string Номер последовательного порта создается)
2 DataBits int Число бит данных 6 CreateGroup bool Признак создания группы
False (группа не
3 BaudRate enum Скорость обмена данными создается)
None 7 Language string Язык маршрутизатора
One True (запись
4 StopBits enum Число стоповых бит
Two WriteErrorLog включена)
OnePointFive 8 bool Признак записи ошибок в журнал
False (запись не
None
включена)
XOnXOff
5 FlowControl enum Управление потоком True (запись
RequestToSend
RequestToSendXOnXOff включена)
9 WriteProgressLog bool Признак записи работы ПО в журнал
None False (запись не
Odd включена)
6 Parity enum Even Четность 10 TagDescriptionsPath string Путь к файлу с описанием тегов
Mark
Space 11 RoutesFilePath string Путь к файлу с маршрутами
12 TableConvertorPath string Путь к файлу описания таблиц вычислений
3.3.4. Параметры секции «Network» представлены в таблице 4.
13 HelpFilePath string Путь к файлу справки
Количество портов для автопоиска (от 0 до
14 SerialPortAutoSearch int шт.
указанного N)
Таблица 4 – Параметры секции «Network» Интервал ожидания перед запуском
15 AutoSearch_T1 int c
Тип Ед. автопоиска устройств в каналах
№ Наименование параметра Значение параметра Описание
данных изм. Интервал ожидания запуска драйверов после
16 AutoSearch_T2 int c
выполнения автопоиска
1 IPAddress string IP-адрес устройства
2 PortNumber int Номер порта
Main (главный)
3 Mode enum Режим работы
Reserve (резервный) 3.4.2 Параметры секции «Channels» представлены в таблице 11.

3.3.5. Параметры секции «ChannelInterfaces» представлены в таблице 5. Таблица 11 - Параметры секции «Channels»
Тип Ед.
№ Наименование параметра Значение параметра Описание
данных изм.
Таблица 5 – Параметры секции «ChannelInterfaces»
1 Path string Путь к файлу с описанием канала 1
Тип Ед.
№ Наименование параметра
данных изм.
Значение параметра Описание ∙∙∙ ∙∙∙ ∙∙∙
n Path string Путь к файлу с описанием канала N
1 string Интерфейс канала 1
∙∙∙ ∙∙∙
n string Интерфейс канала n

3.3.6. Параметры секции «Devices» представлены в таблице 6.

Таблица 6 – Параметры секции «Devices»


Тип Ед.
№ Наименование параметра Значение параметра Описание
данных изм.
1 Path string Устройство

Страница 11 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

4. Конфигуратор роутера на базе Excel


3.5. Структура файла конфигурации маршрутов Routes.ini.
3.5.1. Параметры секции «General» представлены в таблице 12. 4.1. Общие сведения

Таблица 12 - Параметры секции «General» Конфигуратор создан на базе Excel, предназначен для автоматической генерации
Тип Ед. файлов конфигурации роутера (-ов) и использует для этого макросы Excel.
№ Наименование параметра Значение параметра Описание
данных изм.
True (маршрут 4.2. Основные принципы и правила.
запускается)
1 OneThreadRoutes string Признак запуска маршрутов в одном потоке
False (маршрут не
запускается) 4.2.1. Листы Excel, используемые при генерации, по содержимому полностью
2 string Имя канала 1
соответствуют содержимому будущих конфигурационных файлов.
3 string Имя интерфейса в канале 1
Максимальный размер входной очереди
Большинство значений параметров нет необходимости изменять.
4 int 10
тегов в интерфейсе канала 1 Листы Excel файла конфигуратора, используемые при генерации, должны иметь
Максимальный размер выходной очереди
5 int 1000
тегов в интерфейсе канала 1 строго определенные названия:
∙∙∙ ∙∙∙ ∙∙∙ - Router.ini
n string Имя канала n
n+1 string Имя интерфейса в канале n
- Channel_*_CCC.ini
n+2 int 1000
Максимальный размер входной очереди
тегов в интерфейсе канала n
- Device_*_DDD*.ini
n+3 int 10
Максимальный размер выходной очереди
тегов в интерфейсе канала n
- Tags_hw*
n+4 bool Признак запуска работы маршрута Все листы с другими названиями игнорируются, в том числе с похожими названиями,
но имеющими дополнительные символы в начале названия.
Для генерации конфигурационных файлов определённого типа (роутер, канал,
 
устройство, тег) используются разные макросы, поэтому возможна (с учетом правил
процесса генерации) раздельная генерация файлов определенного типа.
Макрос генерации обрабатывает строки листа с заполненной ячейкой столбца B,
начиная от строки 3 и до первой строки с незаполненной ячейкой столбца B.
Необходимым условием корректной генерации является уникальность
английских наименований (поле Name в конфигурационном файле) роутеров, каналов (в
пределах роутера), устройств (в пределах роутера), групп тегов (в пределах роутера),
тегов (в пределах группы).

4.2.2. Excel является мощнейшим инструментом обработки данных со множеством


удобных возможностей редактирования, но для корректной работы конфигуратора
запрещаются следующие операции над строками на листах тегов Tags_hw* устройств
нижнего уровня:
- “Переместить”;
- “Сдвинуть вниз и скопировать”;
- “Сдвинуть вниз и переместить”;
- “Вставить” (для вставки пустой строки);
- “Вставить скопированные строки”;
- “Удалить” (для удаления строки)
Для всех листов:
- со строками, содержащими ячейки с формулами, операцию растягивания вниз/
вверх на следующие строки строго следует завершать операцией “Копировать”.

Страница 12 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
4.2.3. Лист Router.ini является единственным и содержит описание всех 4.2.6. Листов Tags_hw* в общем случае должно быть не меньше количества
роутеров. устройств нижнего уровня.
Конфигуратор может сгенерировать конфигурационные файлы для нескольких Каждый из листов Tags_hw* рекомендуется делать единственным только для
роутеров (зависимых между собой по уровням и независимых). одного из устройств, указанных в конфигурации. Исключение составляет случай, когда
Уровни роутеров нумеруются от 1 до N. лист Tags_hw* используется как шаблон тегов для нескольких идентичных устройств, но
это будет корректным только если конфигурируется один роутер.

4.2.7. Основой для создания конфигурационных файлов тегов устройств нижнего


4.2.4. Листов Channel_*_CCC.ini может быть несколько. уровня является перечень сигналов (например, для ШУП, в формате Excel) и
Как правило, каждый из листов содержит описание каналов с одинаковым драйвером. документация от производителя ПО при использовании определенного протокола обмена
Каналы, описываемые на листе, могут принадлежать разным роутерам. между устройством и роутером.
Для обозначения уровня канала используются следующие наименования: Как правило, содержимое листов Excel перечня сигналов копируется без изменений в
- Bottom (канал устройств нижнего уровня) определённые дополнительные листы файла. Это делается для точного соответствия
- Middle (канал устройств среднего уровня) текущих версий перечня сигналов (передаваемого разработчикам устройства верхнего
- Top (канал устройств верхнего уровня) уровня) и списков сигналов в конфигураторе. После этого информация на
дополнительных листах файла конфигуратора дополняется информацией по адресации,
типам данных, коэффициентах преобразования из документации производителя ПО
устройства.
4.2.5. Листов Device_*_DDD*.ini должно быть несколько. В принципе, можно не пользоваться дополнительными листами и заполнять вручную
сразу листы тегов Tags_hw*, но дальнейшее сопровождение такой конфигурации будет
Автоматическая генерация подразумевает обработку листов книги Excel слева
затруднительно.
направо. Листы Device_*_DDD*.ini должны располагаться слева направо в следующем Конфигуратором предусмотрено автоматическое заполнение содержимого вновь
порядке: созданного листа тегов (с использованием формул и ссылок Excel) при соблюдении
 устройства нижнего уровня роутеров уровня 1 (всегда на одном листе); определенных условий.
 виртуальные web-устройства среднего уровня роутеров уровня 1 (служат для Так например, для всех тегов английские наименования групп тегов (в пределах
дальнейшего визуального контроля через web-браузер за значениями параметров и тегов роутера), тегов (в пределах группы) должны быть уникальными.
роутера) (всегда на одном листе Device_HTTP_DDD*.ini); Особо надо отметить то, что именно в момент генерации конфигурационных
 устройства верхнего уровня роутеров уровня 1; файлов тегов устройств нижнего уровня происходит задание идентификаторов (тегов),
... которые являются важнейшим параметром межканального обмена данными.
 устройства нижнего уровня роутеров уровня N (всегда на одном листе);
 виртуальные web-устройства среднего уровня роутеров уровня N (всегда на одном
листе Device_HTTP_DDD*.ini);
 устройства верхнего уровня роутеров уровня N.

Такой порядок необходим для корректной генерации конфигурационных файлов


тегов зависимых устройств не только в пределах роутера, но и для зависимых роутеров.

Лист Device_HTTP_DDD*.ini является особенно важным. При обработке


данных этого листа формируется файл TagDescriptions.ini

Страница 13 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
4.2.8. Основой для создания конфигурационных файлов тегов устройств верхнего Вариант 1. Если тег устройства нижнего уровня не присутствует среди
уровня является перечень сигналов (например, для ШУП, в формате Excel) или, тегов устройства верхнего уровня, то можно использовать его как тег
например, формуляр согласования приема/передачи данных подстанции с РДУ согласно устройства верхнего уровня (особенно если его значение является
ГОСТ Р МЭК 60870-5-104. аргументом формулы вычисления значения тега устройства верхнего
уровня).
Конфигурационные файлы тегов устройств верхнего уровня генерируются двумя Например, есть два тега устройства нижнего уровня типа Boolean –
способами: Name Type ID Description
QF_ON TypeBool 1 Выключатель.Включен
4.2.8.1. Автоматически, если при создании листа конфигурации соответствующего QF_OFF TypeBool 2 Выключатель.Отключен
устройства верхнего (среднего) уровня была использована ссылка на лист
Тег устройства верхнего уровня “Состояние выключателя” (тип DoublePoint)
конфигурации устройств нижнего уровня.
вычисляемый, формула вычисления (в данном случае, например, [2]DP[1])
Тогда конфигурационный файл тегов устройства верхнего уровня не имеет
записывается в поле Multiplier. Английское название и идентификатор
соответствующий ему лист тегов в файле конфигуратора и в этом случае:
используем от тега устройства нижнего уровня.
- адресация тегов задается автоматически;
Name Type ID Description Multiplier
- типы данных не изменяются;
QF_ON TypeDoublePoint 1 Состояние выключателя [2]DP[1]
- коэффициенты преобразования автоматически задаются так, чтобы
Более подробно этот вариант будет рассмотрен ниже в пункте 4.4
значение не масштабировалось и не менялось;
в примере создания конфигурации.
- идентификаторы тегов не изменяются.

При генерации файла TagDescriptions.ini применяется только этот способ.


Вариант 2. Для того, чтобы тег устройства верхнего уровня всё же
4.2.8.2. С использованием соответствующего листа Tags_hw* . присутствовал в общем списке тегов (и в файле TagDescriptions.ini) и ему
Такой способ применяется когда необходимо соблюдать адресацию и/или типы автоматически был присвоен идентификатор, можно создать фиктивное
данных, коэффициенты преобразования и т.п., заранее заданные устройство нижнего уровня (и, естественно, соответствующий ему список
разработчиками ПО устройства верхнего уровня. тегов на листе Tags_hw*). Такой вариант применяется, если теги
Для данного способа важно отметить следующее. устройства нижнего уровня, используемые в качестве аргументов формулы
 Поле идентификатора каждого из тегов на листе Tags_hw* должно быть тега устройства верхнего уровня, уже присутствуют в списке тегов
устройства верхнего уровня.
заполнено. Средства Excel позволяют автоматизировать заполнение поля
идентификатора, используя дополнительный лист, куда вручную (пока
только так...) скопировано содержимое файла TagDescriptions.ini. При этом
необходимо визуально проконтролировать корректность значений
идентификаторов тегов.
 Значения некоторых тегов устройства верхнего уровня могут быть
вычисляемыми. Например, значение тега с типом данных DoublePoint
логически-математически вычисляется из значений двух тегов типа Boolean
или SinglePoint.
В общем случае такой тег не присутствует среди тегов устройств нижнего
уровня (соответственно, его нет среди общего списка тегов в файле
TagDescriptions.ini) и не имеет идентификатора. Возможны два варианта
выхода из этой ситуации.

Страница 14 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
4.3. Начальные данные для создания конфигурации для ТП Примерная.

4.3.1. Создадим конфигурацию для типичной системы сдвоенных контроллеров на базе IMX. Структурная схема системы представлена на рисунке 6.

Рисунок 6. Структурная схема системы для ТП примерная   

Страница 15 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
4.3.2. Как видно из схемы, имеется:
 два зависимых роутера (1 и 2, аппаратно это контроллеры IMX-ML и IMX-MW)
 пять устройств нижнего уровня для роутера 1 (2 ИП, 2 МТС, 1 МТУ)
 два устройства верхнего уровня для роутера 1 (ШУП, контроллер IMX-MW)
 одно устройство нижнего уровня для роутера 2 (контроллер IMX-ML)
 одно устройства верхнего уровня для роутера 2 (сервер РДУ)
 два канала нижнего уровня для роутера 1 (протокол Modbus RTU)
 два канала верхнего уровня для роутера 1 (протоколы Modbus RTU и IEC101)
 один канал нижнего уровня для роутера 2 (протокол IEC101)
 один канал верхнего уровня для роутера 2 (протокол IEC104)

4.3.3. Имеется перечень сигналов для ШУП (перечень сигналов, допустим, версии 2).

Перечень сигналов для ШУП создан, как правило, в формате книги Excel и содержит необходимую информацию для разработчиков устройства верхнего уровня ШУП.
Основные листы – ТС, ТИ, ТУ

Страница 16 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

Страница 17 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

4.3.4. Имеется формуляр согласования приема/передачи данных подстанции Примерная с Бурятским РДУ согласно ГОСТ Р МЭК 60870-5-104.

Данные о передаваемой/принимаемой информации находим на соответствующих листах формуляра.

Страница 18 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Как правило, часть этих данных (адреса и типы сигналов, апертуры и единицы измерения) должна быть перенесена в перечень сигналов для ШУП
(это делается для создания единственного источника начальной информации о параметрах сигналов).

Страница 19 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Важное пояснение 2.
4.4. Пошаговое конфигурирование для ТП Примерная. На листах конфигурации роутера, каналов и устройств в ячейках строки 2 могут
встречаться следующие служебные слова конфигуратора:

Шаги 1...6. Конфигурирование роутеров Лист Служебное слово Назначение

Столбец простых редактируемых ячеек


Шаг 1. В качестве шаблона конфигурации используем файл Router.ini edit

for_ini_generate mv12 --- ТП Шаблонная.xlsm. Ниже следуют редактируемые наименования


Router.ini Top
каналов устройств верхнего уровня
Переименуем файл. Ниже приведен один из вариантов переименования с указанием
Ниже следуют редактируемые наименования
версии перечня сигналов (допустим, версия 2) и версии конфигурации (001), так как Router.ini Middle
каналов устройств среднего уровня
наладчики (или даже проектировщики) в процессе наладки могут изменять как перечень
сигналов (а это основной начальный документ для конфигурации), так и настройки Channel_*_CCC.ini edit Столбец простых редактируемых ячеек
конфигурации. Также указана версия макросов генерации (mv12) – ее изменять
запрещено. Device_*_DDD*.ini edit Столбец простых редактируемых ячеек
for_ini_generate mv12 --- ТП Примерная (перечень v2) 001.xlsm
Теги устройств, конфигурируемых на этом
В дальнейшем в качестве шаблона конфигурации можно использовать любой файл Device_*_DDD*.ini create листе, имеют свои уникальные листы
конфигурации с той же (или выше) версией макросов. Tags_hw*

Ниже следуют редактируемые ячейки с путем


Шаблон конфигурации содержит листы конфигурации, необходимые для генерации Device_*_DDD*.ini SimpleOnlyTagFile к файлам тегов, имеющих уникальные листы
файлов для простой системы из одного роутера, нескольких устройств нижнего уровня Tags_hw*
(опрашиваемых по протоколу Modbus RTU) и двух устройств верхнего уровня (протоколы Теги устройств, конфигурируемых на этом
Modbus RTU и IEC104). листе, не имеют свои уникальные листы
Также в шаблоне есть листы конфигурации каналов и устройств для настройки Device_*_DDD*.ini combine Tags_hw*, а формируются из тегов
устройств, описанных на листе, название
обмена по протоколу IEC101. Эти листы пока игнорируются макросами генерации (для
которого прописано в столбце CombineList
этого в начало названия листов добавлены символы qqq).
Ниже следуют ячейки с названием листа
конфигурации устройств, из тегов которых
Device_*_DDD*.ini CombineList
будут сформированы теги устройств этого
Важное пояснение 1. листа
На всех листах шаблона ячейки, которые являются обязательными для Столбец простых редактируемых ячеек
редактирования и контроля, Device_*_DDD*.ini tag
значений системных тегов

окрашены цветом морской волны, с жирной границей  Device_*_DDD*.ini editWithoutValue


Столбец простых редактируемых ячеек с
наименованием группы, невносимую в
конфигурационный файл устройства
или

окрашены желтым цветом, с жирной границей Ниже следуют ячейки с путями к


Device_*_DDD*.ini OnlyTags
промежуточным файлам тегов устройства

Ниже следуют редактируемые ячейки


Device_*_DDD*.ini Server_Level
значения уровня роутера

Ниже следуют редактируемые ячейки


Device_*_DDD*.ini Channel_Level
значения уровня канала

Страница 20 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 2. Переименуем роутер. Шаг 3. Задаем уровень роутера primer-imx-ml.
Перейдем на лист Router.ini. Согласно структурной схеме (см. рис. 6) роутер primer-imx-ml имеет уровень 1.
Как видно, шаблон конфигурации сделан для одного роутера, который имеет В ячейке E3 (столбец Level секции General) пишем 1.
следующие наименования (ячейки A3 и B3):
- Шаблонная (imx1) (русское наименование)
- template-imx1 (английское наименование, используемое в дальнейшем при Шаг 4. Прописываем каналы роутера primer-imx-ml.
генерации файлов и папок).
Согласно структурной схеме роутер primer-imx-ml имеет пять каналов:
Изменим русское и английское наименования роутера сразу на всех листах. - два канала связи с устройствами верхнего уровня;
Для этого применим встроенный инструмент Excel для замены текста - два канала связи с устройствами нижнего уровня;
- один канал связи с виртуальным web-устройством среднего уровня
(на схеме этот канал не указан, но всегда присутствует в системе).

В шаблоне конфигурации прописаны несколько каналов (ячейки U3-Y3) и в


соответствии с важным пояснением 2 (см. шаг 1), видно, что это 2 канала верхнего уровня,
виртуальный web-канал среднего уровня и 2 канала нижнего уровня.

Top  Top  Middle  edit  edit 


TopShUP Top104 WEB mxc1 USB1

Важное пояснение 3.
Наименования каналов рекомендуется делать по следующим правилам:
- каналы нижнего уровня всегда называть по имени порта;
- web-канал всегда называть WEB;
- название канала верхнего уровня всегда дополнять словом Top;
- каналы верхнего уровня называть интуитивно понятными наименованиями
Заполняем поля ”Найти” и “Заменить на”  по имени устройства верхнего уровня
Новое русское наименование будет Примерная (IMX-ML) (например, канал с ШУП – TopShUP);
Обязательно выбираем в пункте “Искать” опцию в книге  по названию протокола
(например, Top101 или Top104).

Изменим наименования каналов в соответствии со структурной схемой.


Изменение будет только в названии канала Top104. Переименуем его в Top101.
Top  Top  Middle  edit  edit 
TopShUP Top101 WEB mxc1 USB1

Будет произведено 16 замен (только, если используется шаблон конфигурации).


Аналогично переименовываем английское название
template-imx1 в primer-imx-ml
Будет произведено 30 замен (только, если используется шаблон конфигурации).
 

Страница 21 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 5. Добавляем роутер primer-imx-mw. Шаг 6. Изменяем параметры роутера primer-imx-mw.
Добавление роутера делаем в соответствии с рекомендациями п 4.2.2. Согласно структурной схеме роутер primer-imx-mw имеет уровень 2.
В ячейке E4 (столбец Level секции General) пишем 2.
Способ 1. Растягиваем вниз строку 3 на строку 4 .
Обязательно завершаем растягивание операцией “Копировать ячейки” (на рисунке Согласно структурной схеме роутер primer-imx-mw имеет три канала:
ниже можно заметить, что если не выбрать это пункт, то значения некоторых ячеек - один канал связи с устройством верхнего уровня;
увеличится на единицу) - один канал связи с устройством нижнего уровня;
- один канал связи с виртуальным web-устройством среднего уровня
(на схеме этот канал не указан, но всегда присутствует в системе).

Пропишем эти каналы в конфигурацию.


Так как в роутере primer-imx-mw есть только один канал верхнего уровня, а столбцов
Top уже два, то необходимо один из них заполнить служебным словом fakechannel,
которое будет игнорироваться макросом генерации.
Канал нижнего уровня в соответствии с Важным пояснением 3 прописываем
как mxc2

Top  Top  Middle  edit  edit 


TopShUP  Top101  WEB  mxc1  USB1 
Top104RDU fakechannel WEB  mxc2 

Важное пояснение 4.
Наименования каналов роутера обрабатываются макросом генерации слева направо
до первой пустой ячейки.

Способ 2. Выделяем целиком строку 3 и копируем


(комбинацией клавиш Ctrl-C или как на рисунке ниже)

Далее выделяем строку 4 и вставляем скопированное (Ctrl-V), или операцией


“Вставить скопированные строки” , если строка 4 уже заполнена

Также изменим название нового роутера


Примерная (IMX‐MW)  primer‐imx‐mw 

Страница 22 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаги 7...12. Конфигурирование каналов Шаг 9. Изменяем параметры канала верхнего уровня
(драйвер Modbus в режиме Slave) роутера primer-imx-ml.

Шаг 7.Изменяем параметры каналов нижнего уровня Перейдем на лист Channel_ModbusS_CCC.ini.


(драйвер Modbus в режиме Master) роутера primer-imx-ml. На этом листе прописаны параметры канала шаблонного роутера (TopShUP, к
устройству верхнего уровня, порт USB0), в котором при обмене данными используется
Перейдем на лист Channel_ModbusM_CCC.ini. драйвер Modbus в режиме Slave (наименование драйвера прописано в столбце Name
На этом листе прописаны параметры двух каналов шаблонного роутера (mxc1 и секции Driver в ячейке J3).
USB1, к устройствам нижнего уровня), в которых при обмене данными используется Такой же канал есть и в роутере primer-imx-ml, и наименования интерфейсов к
драйвер Modbus в режиме Master (наименование драйвера прописано в столбце Name другим каналам (к устройствам нижнего уровня) совпадают.
секции Driver в ячейках N3 и N4). То есть для роутера primer-imx-ml ничего не меняем.
Такие же каналы есть и в роутере primer-imx-ml, поэтому почти ничего менять не
надо, кроме наименований интерфейсов к другим каналам. Важное пояснение 5.
В секции ChannelInterfaces прописаны интерфейсы к другим каналам При конфигурировании каналов верхнего уровня интерфейс к web-каналу среднего
(в устройства верхнего и среднего уровней) шаблонного роутера. уровня (WEB) не прописывается (он уже существует по умолчанию).
Исправляем на нужные в соответствии с заполненными на шаге 4 названиями
каналов роутера primer-imx-ml (в данном случае, Top104 на Top101).
edit  edit  edit 
TopShUP  Top101  WEB  Шаг 10. Изменяем параметры канала верхнего уровня
TopShUP  Top101  WEB  (драйвер IEC101 в режиме Server) роутера primer-imx-ml.

Можно заметить, что в секции Devices уже прописаны пути к файлам неких устройств Перейдем на лист qqqChannel_IEC101S_CCC.ini.
(нижнего уровня шаблонного роутера). Пока не обращаем внимания на корректность Этот лист не обрабатывается при генерации, так как название листа не соответствует
записей, вернемся к этому моменту позже. основным правилам конфигуратора (см. п. 4.2).
Удаляем символы qqq в названии листа.

Контролируем корректность названия роутера


Шаг 8. Изменяем параметры web-каналов среднего уровня. Примерная (IMX‐ML)  primer‐imx‐ml 

Перейдем на лист Channel_HTTP_CCC.ini.


На этом листе прописаны параметры web-канала шаблонного роутера. На этом листе прописаны параметры канала Top101 (порт mxc2) к устройству
Такой же канал есть и в роутере primer-imx-ml, и даже наименования интерфейсов к верхнего уровня (наименование канала прописано в столбце Name секции General в
другим каналам (к устройствам нижнего уровня) совпадают. ячейке E3), в котором при обмене данными используется драйвер IEC101 в режиме Server
То есть для роутера primer-imx-ml ничего не меняем. (наименование драйвера прописано в столбце Name секции Driver в ячейке J3).
Такой же канал есть и в роутере primer-imx-ml, и порт (mxc2) и наименования
Добавим на этом же листе web-канал роутера primer-imx-mw. интерфейсов к другим каналам (к устройствам нижнего уровня) совпадают.
Копируем строку 3 в строку 4 (способы см. в шаге 5). То есть для роутера primer-imx-ml ничего не меняем (кроме названия листа).
Также изменим название роутера в строке 4 (ячейки A4 и B4)
Примерная (IMX‐MW)  primer‐imx‐mw 

В секции ChannelInterfaces исправляем наименования интерфейсов каналов


(к устройствам нижнего уровня) на нужные в соответствии параметрами роутера primer-
imx-mw (в данном случае, mxc2).
edit  edit 
mxc1  USB1 
mxc2 

Страница 23 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 11. Изменяем параметры канала нижнего уровня Шаг 12. Изменяем параметры канала верхнего уровня
(драйвер IEC101 в режиме Master или Client) роутера primer-imx-mw. (драйвер IEC104 в режиме Server) роутера primer-imx-mw.

Перейдем на лист qqqChannel_IEC101M_CCC.ini. Перейдем на лист Channel_IEC104S_CCC.ini.


Этот лист не обрабатывается при генерации, так как название листа не соответствует На этом листе прописаны параметры канала Top104 (шаблонного роутера) к
основным правилам конфигуратора (см. п. 4.2). устройству верхнего уровня (наименование канала прописано в столбце Name секции
Удаляем символы qqq в названии листа. General в ячейке E3), в котором при обмене данными используется драйвер IEC104 в
режиме Server (наименование драйвера прописано в столбце Name секции Driver в ячейке
Изменяем название роутера N3).
Примерная (IMX‐MW)  primer‐imx‐mw 
Изменяем название роутера
Примерная (IMX‐MW)  primer‐imx‐mw 
На этом листе должны быть прописаны параметры канала (порт mxc2, к устройству
нижнего уровня, роутеру IMX-ML), в котором при обмене данными используется драйвер
IEC101 в режиме Master (наименование драйвера прописано в столбце Name секции Исправляем наименование канала (ячейка E3) на Top104RDU.
Driver в ячейке J3). Исправляем наименования интерфейсов к каналам (к устройствам нижнего уровня).
Проверяем и исправляем записи в секции ChannelInterfaces, где прописываются В данном случае это один канал – mxc2.
интерфейсы к другим каналам (в устройства верхнего и среднего уровней) роутера Прописываем значения параметров в секции Network согласно структурной схеме:
primer-imx-mw. IP=192.168.33.1, порт=2404.
edit  edit 
Top104RDU  WEB 

Можно заметить, что в секции Devices не прописаны пути к файлам устройств нижнего
уровня. Это нормально, так как у шаблонного роутера не было таких устройств. Пока не
обращаем внимания на корректность записей, вернемся к этому моменту позже.

Страница 24 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

Шаги 13...26. Конфигурирование устройств (тегов)

Шаг 13. Копируем содержимое перечня сигналов на дополнительные листы конфигуратора.

Для корректной работы конфигуратора копирование содержимого перечня сигналов необходимо производить строго на определённые дополнительные листы конфигуратора
и в строго в определённые места на листах.
Копирование рекомендуется делать следующим образом (для примера скопируем содержимое листа ТС(входы контроллера)).
- Переходим на лист ТС(входы контроллера) файла перечня сигналов
- Выделяем столбцы таблицы сигналов. Столбцы выделяются целиком. Копируем в буфер (комбинацией клавиш Ctrl-C)

Страница 25 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
- На аналогичном листе (ТС(входы контроллера)) файла конфигуратора выделяем первый столбец таблицы сигналов.
Вставляем содержимое буфера (комбинацией клавиш Ctrl-V)

Страница 26 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
- Аналогично копируем на лист ТС(входы контроллера) таблицу с параметрами протокола МЭК-104.
Копирование разных таблиц с одного листа осуществляется раздельно, так как не гарантировано строгое расположение этих таблиц в перечне сигналов.

Страница 27 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 14. Вносим необходимые данные на дополнительных листах с перечнем
сигналов.

Важное пояснение 6. Важное пояснение 7.


Дополнительные листы применяются из-за удобства размещения на одном листе Название группы тегов является важным параметром и в дальнейшем
данных сразу обо всех устройствах одного типа (ТС, ТИ, ТУ и т.п.). используется в имени конфигурационных файлов устройств и тегов.
На основе информации дополнительных листов поддерживается
автоматическое заполнение листов Tags_hw*.
На некоторых дополнительных листах название группы формируется
Как уже отмечалось в п.4.2.6, можно не пользоваться дополнительными листами
автоматически из записей в таблице перечня сигналов.
и заполнять вручную сразу листы тегов Tags_hw*, но дальнейшее сопровождение
На некоторых листах есть контроль наличия букв кириллицы в названии группы,
такой конфигурации будет затруднительно. так как для корректной работы роутера необходимо, чтобы названия файлов были
английскими.
При необходимости исправляем ошибки заполнения перечня сигналов или
Как уже отмечалось выше (пп. 4.3.3 и 4.3.4), перечень сигналов содержит вручную вводим название группы и тегов.
информацию о параметрах обмена данными только для разработчиков верхнего
уровня. Дополняем (изменяем), контролируем корректность данных в ячейках справа
Поэтому после копирования перечня сигналов на дополнительные листы от таблиц сигналов.
конфигуратора необходимо сделать следующее: Особое внимание уделяем соблюдению уникальности английских названий
 задать параметры обмена данными роутера и устройств нижнего уровня сигналов (внутри группы) и названий групп (внутри роутера).
(например, адресацию) по документации от производителя ПО устройства; Соблюдение уникальности пары названий “группа-сигнал” позволяет
 задать основные параметры тегов устройств нижнего уровня (например, автоматизировать присвоение идентификаторов тегам.
название и группу);
 задать основные параметры обработки тегов устройств нижнего уровня
(например, коэффициенты масштабирования и правила конвертации
типов);
 адаптировать параметры обмена данными роутера и устройств верхнего
уровня (в частности, адресацию, тип данных) к правилам применения в
конфигураторе;

Страница 28 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

Так как в шаблонном роутере было меньше сигналов (и устройств), то необходимо дополнить содержимое ячеек справа от таблиц перечня сигналов для новых сигналов.
Для этого скопируем ячейки справа от таблиц перечня сигналов (ниже пример с листом ТС(входы контроллера)).

Страница 29 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Далее вставляем (или растягиваем с копированием) на ячейки ниже.
Дополняем (изменяем), контролируем корректность данных в ячейках справа от таблиц сигналов.

Страница 30 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
В итоге должно получиться следующее (для листа “ТС(входы контроллера)”, показаны ячейки с обязательным редактированием и контролем)

всегд
Addres AddressBi Nam TagTyp Apertur FalseValu Sum Multiplie ConversionNam IsConvertabl IsNormalize Uni
Function Group а Description
s t e e a e m r e e d t
NONE
13100  ‐1  2  DI-1 AS1-A3 TypeBool  NONE Разъединитель 1QS1.Местное управление
13101  ‐1  2  DI-2 AS1-A3 TypeBool  NONE Разъединитель 1QS1.Включен
13102  ‐1  2  DI-3 AS1-A3 TypeBool  NONE Разъединитель 1QS1.Отключен

13103  ‐1  2  DI-4 AS1-A3 TypeBool  NONE Цепи управления разъединителем 1QS1.Контроль питания

13104  ‐1  2  DI-5 AS1-A3 TypeBool  NONE Резерв


13105  ‐1  2  DI-6 AS1-A3 TypeBool  NONE Резерв
13106  ‐1  2  DI-7 AS1-A3 TypeBool  NONE Резерв
13107  ‐1  2  DI-8 AS1-A3 TypeBool  NONE Резерв
13108  ‐1  2  DI-9 AS1-A3 TypeBool  NONE Разъединитель 2QS1.Местное управление
13109  ‐1  2  DI-10 AS1-A3 TypeBool  NONE Разъединитель 2QS1.Включен
13110  ‐1  2  DI-11 AS1-A3 TypeBool  NONE Разъединитель 2QS1.Отключен

13111  ‐1  2  DI-12 AS1-A3 TypeBool  NONE Цепи управления разъединителем 2QS1.Контроль питания

13112  ‐1  2  DI-13 AS1-A3 TypeBool  NONE Резерв


13113  ‐1  2  DI-14 AS1-A3 TypeBool  NONE Резерв
13114  ‐1  2  DI-15 AS1-A3 TypeBool  NONE Резерв
13115  ‐1  2  DI-16 AS1-A3 TypeBool  NONE Резерв
13100  ‐1  2  DI-1 AS1-A4 TypeBool  NONE АРН Т1 220 кВ.Неисправность терминала
13101  ‐1  2  DI-2 AS1-A4 TypeBool  NONE Т1 220 кВ.Высокий уровень газа
13102  ‐1  2  DI-3 AS1-A4 TypeBool  NONE Т1 220 кВ.Очень высокий уровень газа
13103  ‐1  2  DI-4 AS1-A4 TypeBool  NONE Т1 220 кВ.Высокий уровень влагосодержания

13104  ‐1  2  DI-5 AS1-A4 TypeBool  NONE Т1 220 кВ.Очень высокий уровень влагосодержания

13105  ‐1  2  DI-6 AS1-A4 TypeBool  NONE Т1 220 кВ.Отказ сuсmемы конmропя
13106  ‐1  2  DI-7 AS1-A4 TypeBool  NONE Т2 220 кВ.Срабатывание терминала осн. защum
13107  ‐1  2  DI-8 AS1-A4 TypeBool  NONE Т2 220 кВ.Неисправность терминала осн. защum
13108  ‐1  2  DI-9 AS1-A4 TypeBool  NONE Т2 220 кВ.Срабатывание терминала рез. защum
13109  ‐1  2  DI-10 AS1-A4 TypeBool  NONE Т2 220 кВ.Неисправность терминала рез. защum
13110  ‐1  2  DI-11 AS1-A4 TypeBool  NONE АРН Т2 220 кВ.Неисправность терминала
13111  ‐1  2  DI-12 AS1-A4 TypeBool  NONE Т2 220 кВ.Высокий уровень газа
13112  ‐1  2  DI-13 AS1-A4 TypeBool  NONE Т2 220 кВ.Очень высокий уроВень газа
13113  ‐1  2  DI-14 AS1-A4 TypeBool  NONE Т2 220 кВ.Высокий уровень влагосодержания

13114  ‐1  2  DI-15 AS1-A4 TypeBool  NONE Т2 220 кВ.Очень высокий уровень влагосодержания

13115  ‐1  2  DI-16 AS1-A4 TypeBool  NONE Т2 220 кВ.Отказ системы контроля

Страница 31 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Для листа ТИ (вручную было исправлено название группы для ЭНИП2)

всегда
Address AddressBit Function Name Group TagType Description Apertura FalseValue Summ Multiplier ConversionName IsConvertable IsNormalized Unit
NONE
4  ‐1  4  Uab  ENIP1  TypeUInt  NONE СК-35_ЭНИП.Напряжение Uab 1.00     0  1.00        True  В 
5  ‐1  4  Ubc  ENIP1  TypeUInt  NONE СК-35_ЭНИП.Напряжение Ubc 1.00     0  1.00        True  В 
6  ‐1  4  Uca  ENIP1  TypeUInt  NONE СК-35_ЭНИП.Напряжение Uca 1.00     0  1.00        True  В 
8  ‐1  4  Ia  ENIP1  TypeUInt  NONE СК-35_ЭНИП.Ток фазы А 1.00     0  1.00        True  А 
9  ‐1  4  Ib  ENIP1  TypeUInt  NONE СК-35_ЭНИП.Ток фазы B 1.00     0  1.00        True  А 
10  ‐1  4  Ic  ENIP1  TypeUInt  NONE СК-35_ЭНИП.Ток фазы C 1.00     0  1.00        True  А 
15  ‐1  4  Psum  ENIP1  TypeInt  NONE СК-35_ЭНИП.Суммарная активная мощность 1.00     0  1.00        True  Вт 
19  ‐1  4  Qsum  ENIP1  TypeInt  NONE СК-35_ЭНИП.Суммарная реактивная мощность 1.00     0  1.00        True  ВА 
51  ‐1  4  Cosfi  ENIP1  TypeInt  NONE СК-35_ЭНИП.Cos Ф 1.00     0  1.00        True    
52  ‐1  4  F  ENIP1  TypeUInt  NONE СК-35_ЭНИП.Частота 1.00     0  1.00        True  Гц 
4  ‐1  4  Uab  ENIP2  TypeUInt  NONE СВ_ЭНИП.Напряжение Uab 1.00     0  1.00        True  В 
5  ‐1  4  Ubc  ENIP2  TypeUInt  NONE СВ_ЭНИП.Напряжение Ubc 1.00     0  1.00        True  В 
6  ‐1  4  Uca  ENIP2  TypeUInt  NONE СВ_ЭНИП.Напряжение Uca 1.00     0  1.00        True  В 
8  ‐1  4  Ia  ENIP2  TypeUInt  NONE СВ_ЭНИП.Ток фазы А 1.00     0  1.00        True  А 
9  ‐1  4  Ib  ENIP2  TypeUInt  NONE СВ_ЭНИП.Ток фазы B 1.00     0  1.00        True  А 
10  ‐1  4  Ic  ENIP2  TypeUInt  NONE СВ_ЭНИП.Ток фазы C 1.00     0  1.00        True  А 
15  ‐1  4  Psum  ENIP2  TypeInt  NONE СВ_ЭНИП.Суммарная активная мощность 1.00     0  1.00        True  Вт 
19  ‐1  4  Qsum  ENIP2  TypeInt  NONE СВ_ЭНИП.Суммарная реактивная мощность 1.00     0  1.00        True  ВА 
51  ‐1  4  Cosfi  ENIP2  TypeInt  NONE СВ_ЭНИП.Cos Ф 1.00     0  1.00        True    
52  ‐1  4  F  ENIP2  TypeUInt  NONE СВ_ЭНИП.Частота 1.00     0  1.00        True  Гц 

Для листа ТУ (без изменений по сравнению с шаблонным роутером)

всегда
Address AddressBit Function Name Group TagType Description
NONE

3100 -1 15 DO-1 AS4-A5 TypeBool NONE ЛР-36.Включить

3101 -1 15 DO-2 AS4-A5 TypeBool NONE ЛР-36.Отключить

3102 -1 15 DO-3 AS4-A5 TypeBool NONE В-36.Включить

3103 -1 15 DO-4 AS4-A5 TypeBool NONE В-36.Отключить

3104 -1 15 DO-5 AS4-A5 TypeBool NONE ЛР-38.Включить

3105 -1 15 DO-6 AS4-A5 TypeBool NONE ЛР-38.Отключить

3106 -1 15 DO-7 AS4-A5 TypeBool NONE В-38.Включить

3107 -1 15 DO-8 AS4-A5 TypeBool NONE В-38.Отключить

Страница 32 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 15. Корректируем существующие листы тегов Tags_hw*

После заполнения дополнительных листов приступаем к созданию (изменению) листов тегов Tags_hw*
Для шаблонного роутера были созданы несколько листов тегов устройств.

Перейдем на лист Tags_hwAS2.1-A3. Сразу бросается в глаза то, что ячейки заполнены недостоверными значениями (#Н/Д).
Так произошло потому, что на листе “ТС(входы контроллера)” в таблицах данных нет группы тегов (устройства) AS2.1-A3

Страница 33 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Изменим название листа на Tags_hwAS1-A3 (группа тегов AS1-A3 соответствует первому модулю ТС).
После корректного ввода названия можно увидеть, что в ячейках появились записи, полностью соответствующие параметрам тегов устройства AS1-A3.
Также видно, что количество ячеек на листе больше чем количество тегов устройства AS1-A3.
Ячейки тегов, не относящихся к устройству AS1-A3 выделяются красным цветом, а в столбце B пусто (см. ниже Важное пояснение 8 и Важное пояснение 9).

Важное пояснение 8.
На листах тегов (Tags_hw*) как и на любых других листах, обрабатываемых макросами генерации, учитываются только строки с заполненной ячейкой столбца B.
Ячейки столбца B информируют (для визуального контроля) о типе сигнала и автоматически заполняются следующими значениями:
Значение ячейки столбца B Тип сигнала Условие автоматического определения типа сигнала (кроме IEC103)
DI Дискретный вход (ТС) Номер функции меньше 5
DO Дискретный выход (ТУ) Номер функции больше либо равен 5
AI Аналоговое значение (ТИ) Заполнено поле Apertura
Пустое при заполненной ячейке столбца A Несоответствие названия листа группе тегов

Страница 34 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

Важное пояснение 9.
Конфигуратором предусмотрено автоматическое заполнение нового листа с тегами определенных типов сигналов.
Для этого необходимо использовать в качестве шаблона следующие листы
(данные на которых получаются по ссылкам на ячейки соответствующих дополнительных листов с таблицами перечня сигналов)
Лист шаблона, используемый Дополнительный лист с таблицей
Тип сигнала тегов
при добавлении нового листа перечня сигналов

Дискретный вход (ТС) Tags_hwAS2.1-A3 ТС (входы контроллера)


Дискретный выход (ТУ) Tags_hwAS3.1-A3 ТУ
Аналоговое значение (ТИ) Tags_hwENIP1 ТИ

Шаг 16. Создаем новый лист тегов Tags_hw*

Создадим новый лист тегов для устройства AS1-A4 как копию листа Tags_hwAS1-A3.
Для этого кликаем правой клавишей мыши на листе Tags_hwAS1-A3 (только он имеет ссылки на ячейки дополнительного листа “ТС (входы контроллера)”)
и выбираем пункт “Переместить или скопировать”.

В открывшемся окне ставим галочку “Создать копию” и выбираем лист, перед которым добавится наш новый лист.

Страница 35 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

Будет создан лист “Tags_hwAS1-A3 (2)”. Все ячейки на нем, естественно, будут заполнены недостоверными значениями (#Н/Д).
Переименовываем лист в Tags_hwAS1-A4.
Строк тегов на нем больше, чем нужно для устройства AS1-A4, но у лишних строк не заполнен столбец B, так что всё нормально.

Шаг 17. Корректируем (создаем) листы тегов Tags_hw* для всех остальных устройств нижнего уровня роутера primer-imx-ml

Лист Tags_hwENIP1 не нуждается в коррекции.


Добавим лист Tags_hwENIP2.
Изменим название листа Tags_hwAS3.1-A3 на Tags_hwAS4-A5.
Итоговый набор листов тегов нижнего уровня

Стоит также отметить, что поле ID (идентификатор тега) на этих листах заполнено для всех тегов одинаково (значением 0 или пусто).
Задание значения идентификатора будет произведено позже при генерации конфигурационных файлов устройств нижнего уровня.

Страница 36 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Важное пояснение 10.
Файл перечня сигналов, используемый как источник начальных данных о сигналах, “исторически” состоит из нескольких листов (ТС, ТИ, ТУ и т.п.).
Но это не является обязательным форматом. Можно делать перечень сигналов разных типов на одном листе.
И конфигуратор, соответственно, тоже может содержать только один дополнительный лист с копией перечня сигналов
(для этого можно, например, заполнить только лист ТС(входы контроллера), переименовав потом его, допустим, в Перечень сигналов).
Главное при этом соблюдать правильное расположение в определённых ячейках информации о сигналах (и их параметрах).

Ниже приведен вид одного единственного дополнительного листа конфигуратора с копией таблиц перечня сигналов для текущего примера конфигурации.
Следует отметить, что текущий пример конфигурации очень простой (по количеству устройств и, соответственно, количеству сигналов).
Иными словами, создавать перечень сигналов на одном листе целесообразно только при небольшом количестве устройств (сигналов) роутера.

Копия таблиц   Информация о параметрах сигналов, необходимая для конфигурирования 


из файла перечня сигналов обмена данными между роутером и устройствами 

Страница 37 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 18. Корректируем (создаем) лист устройств нижнего уровня роутера primer-imx-ml (в канале с драйвером Modbus в режиме Master)

Важное пояснение 11.


Название листа конфигурации устройств в общем случае включает в себя название определенного драйвера, используемого в канале для организации связи между ядром
программы роутера и внешними устройствами. Это необходимо только для автоматического формирования путей к файлам устройств, которые прописаны на листах конфигураций
каналов.
Но следует учитывать, что в связи с определённой внутренней организацией конфигуратора все устройства нижнего уровня роутера должны прописываться на одном листе.
А так как не всегда драйверы каналов нижнего уровня роутера одинаковы, то иногда названия файлов устройств не будут логичны (из-за наличия названия драйвера).

Перейдем на лист Device_ModbusM_DDD.ini.

Обращаем внимание на служебные слова в строке 2.


В ячейке G2 написано create. В ячейке Y2 написано SimpleOnlyTagFile.
В соответствии с Важнейшим пояснением 2 этим определяется способ создания файлов тегов устройств при генерации
Лист Служебное слово Назначение
Device_*_DDD*.ini create Теги устройств, конфигурируемых на этом листе, имеют свои уникальные листы Tags_hw*

Device_*_DDD*.ini SimpleOnlyTagFile Ниже следуют редактируемые ячейки с путем к файлам тегов, имеющих уникальные листы Tags_hw*

Файлы тегов всех устройств нижнего уровня роутеров любого уровня создаются только таким способом – на основе уникальных листов Tags_hw*.

Корректируем (добавляем) строки для всех устройств нижнего уровня роутера primer-imx-ml.
Можно применять для строк любые операции копирования и перемещения.
Заполняем корректными данными ячейки столбцов L (Address) и M (Name, строго соответствует названию группы тегов устройства).
Контролируем значения в ячейках столбцов Z (Server_Level должен быть 1, это уровень роутера primer-imx-ml) и AA (Channel_Level должен быть Bottom).

Важное пояснение 12.


Для автоматического заполнения на листах конфигураций каналов нижнего уровня ячеек с путем к файлам устройств необходимо контролировать на листе конфигурации
устройств запись в ячейках столбца AC.
Там прописывается уникальное для конфигуратора название канала, к которому “принадлежит” устройство (в формате “название роутера.название канала”).
Это же название автоматически уже сформировано на листе конфигурации каналов в столбце F (Label).
В конфигураторе текущей версии только таким образом можно “подсказать” конфигуратору какие устройства “принадлежат” тому или иному каналу.
Для корректной работы формул Excel принципиально важно располагать строки устройств одного канала на соседних строках.

Страница 38 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Итоговый лист конфигурации устройств нижнего уровня роутера primer-imx-ml

Для контроля корректности записей в ячейках столбца AC перейдем на лист Channel_ModbusM_CCC.ini


Там в ячейках столбцов AQ-AS можно наблюдать уже правильные названия файлов устройств каналов.

Страница 39 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 19. Корректируем лист web-устройства среднего уровня роутера primer-imx-ml

Перейдем на лист Device_HTTP_DDD.ini.

Обращаем внимание на служебные слова в строке 2.


В ячейке G2 написано combine. В ячейке Y2 написано CombineList.
В соответствии с Важнейшим пояснением 2 этим определяется способ создания файлов тегов устройств при генерации
Лист Служебное слово Назначение
Теги устройств, конфигурируемых на этом листе, не имеют свои уникальные листы Tags_hw*, а формируются из тегов
Device_*_DDD*.ini combine
устройств, описанных на листе, название которого прописано в столбце CombineList
Ниже следуют ячейки с названием листа конфигурации устройств, из тегов которых будут сформированы теги устройств
Device_*_DDD*.ini CombineList
этого листа

Файл тегов web-устройства среднего уровня роутеров любого уровня создаeтся только таким способом – как “сборник” всех тегов устройств нижнего уровня.

На листе Device_HTTP_DDD.ini необходимо проконтролировать значение ячеек столбца Y (CombineList).


Tам должно быть название листа конфигурации устройств нижнего уровня (в данном случае, Device_ModbusM_DDD.ini), из тегов которых будут сформирован список тегов web-устройства.
Также контролируем значения в ячейках столбцов Z (Server_Level должен быть 1, это уровень роутера primer-imx-ml) и AA (Channel_Level должен быть Middle).

Важное пояснение 13.


В текущей версии конфигуратора именно при обработке листа Device_HTTP_DDD.ini происходит создание файла TagDescriptions.ini, содержимое которого используется не
только программой роутера, но и позволяет автоматизировать определение идентификаторов тегов устройств верхнего уровня на соотвествующих листах конфигуратора.

Страница 40 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 20. Корректируем лист устройства верхнего уровня роутера primer-imx-ml (в канале с драйвером Modbus в режиме Slave)

Перейдем на лист Tags_hwTopShUP.


Сразу бросается в глаза то, что некоторые ячейки столбца L (ID) заполнены недостоверными значениями (#Н/Д), хотя при этом остальные ячейки содержать вполне корректные
данные о сигналах с устройств нижнего уровня роутера primer-imx-ml (не всех, но это сейчас неважно).

Страница 41 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Так произошло потому, что на листе “TagDescriptions” в таблицах данных нет тегов с группами AS1-A3 и AS4-A5.
Перейдем на лист TagDescriptions и убедимся в этом.

Важное пояснение 14.


Лист TagDescriptions является копией списка тегов файла TagDescriptions.ini. Напомним, что это список тегов устройств только нижнего уровня роутера.
Список тегов файла TagDescriptions.ini содержит в себе не только все параметры тегов (заданные в перечне сигналов и соотвествующих листах конфигуратора), но и
автоматически назначенные идентификаторы для каждого тега. Это позволяет автоматизировать заполнение поля ID на листах тегов устройств верхнего уровня.
В данной версии конфигуратора лист TagDescriptions должен заполняться вручную копированием из текстового файла TagDescriptions.ini

На текущем шаге конфигурирования TagDescriptions.ini еще не существует. Для его создания необходимо выполнить макрос генерации конфигурационных файлов.

Страница 42 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Важное пояснение 15. Запустим макрос генерации.
В данной версии конфигуратора для корректного выполнения макроса Для этого откроем окно выбора макроса для выполнения (по меню
генерации необходимо, чтобы все доступные для обработки строки листов Вид-Макросы, или комбинацией клавиш Alt-F8).
конфигураций тегов, устройств, каналов и роутеров не содержали ячеек с данные, В открывшемся окне выбираем макрос AutomaticGeneration и нажимаем кнопку
которые приложение Excel считает ошибочными. “Выполнить”.
В таких “ошибочных” ячейках, как правило, отображаются следующие значения -
#ИМЯ?, #ЧИСЛО!, #ЗНАЧ!, #Н/Д, #ПУСТО!, #ССЫЛКА!
В текущей версии конфигуратора не предусмотрен анализ содержимого листов
на наличия “ошибочных” ячеек и выполнение макроса генерации просто
завершается (иногда с выдачей окна с описанием ошибки выполнения).
Поэтому необходим визуальный контроль наличия “ошибочных” ячеек на
листах конфигуратора.
Практически всегда это касается только листов с тегами устройств верхнего
уровня.
Есть несколько способов устранить ошибочные значения в ячейках, но наиболее
правильным будет следующий.
 переименовать листы с ячейками, содержащими ошибочные значения,
так чтобы макрос игнорировал их (допустим, добавив в начало названия
листа символы qqq);
 запустить макрос генерации;
 после успешной генерации файла TagDescriptions.ini скопировать из него
список тегов и заполнить лист TagDescriptions; ВНИМАНИЕ!!!
 на переименованных листах убедится в отсутствии ячеек, содержащих Макрос генерации обязательно завершит работу с выдачей окна с описанием
ошибочные значения; ошибки. Ошибка заключается в том, что макрос не находит файла тегов
 обратно переименовать листы с ячейками, содержащими ошибочные Tags_hwTopShUP. Это естественно, так как выше мы переименовали
значения. соответствующий лист тегов, сделав его игнорируемым.

Используя рекомендации Важного пояснения 15, устраним ошибочные


значения в ячейках листов тегов устройств верхнего уровня.

Переименуем названия листов Tags_hwTopShUP и Tags_hwTop104 (на нем


также есть ячейки с “ошибочными” значениями).

Важное пояснение 16.


При выполнении макроса происходит перевод Excel в режим ручного пересчёта
формул (для ускорения работы макроса).
Поэтому после ненормального завершения макроса рекомендуется закрыть
(сохранив) и открыть файл конфигуратора заново. Или восстановить настройку Excel
для автоматического пересчета (меню Формулы-Параметры вычислений)

Страница 43 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Но файл TagDescriptions.ini макрос всё же сумел сгенерировать, так как листы тегов устройств нижнего уровня были заполнены корректно.
Чтобы убедиться в этом, перейдем в папку, где находится наш открытый файл конфигуратора (for_ini_generate mv12 --- ТП Примерная (перечень v2) 001.xlsm).
Там должны были появиться четыре новые папки:
All_OnlyTags_hwX
All_Tags_hwX
Project
TemporaryFiles

Перейдем в папку Project и там в папке PRIMER-IMX-ML найдем искомый файл TagDescriptions.ini
Откроем его и, выделив только строки с описанием тегов, скопируем в буфер обмена (как на рисунке ниже, или комбинацией клавиш Ctrl-C)

Страница 44 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Перейдем на лист TagDescriptions файла конфигуратора.
Выделим ячейку C3. Вставим содержимое буфера обмена (комбинацией клавиш Ctrl-V).
Если это делается в первый раз после открытия файла, то заполнится только один столбец C.

Необходимо тут же выбрать в меню пункт Данные и нажать иконку Текст по столбцам

Страница 45 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Далее в открывшемся окне выбираем пункт “С разделителями” и нажимаем кнопку “Далее>”

Далее в открывшемся окне снимаем галочку с пункта “знак табуляции”, ставим галочку на пункт “точка с запятой”, нажимаем кнопку “Готово” и далее соглашаемся на замену
содержимого конечных ячеек.

Страница 46 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Перейдем на лист qqqTags_hwTopShUP.
Если копирование содержимого файла TagDescriptions.ini было сделано правильно, то наблюдаем, что все ячейки столбца L (ID) заполнены достоверными значениями.
Осталось добавить на этот лист теги остальных устройств нижнего уровня роутера primer-imx-ml.

Страница 47 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Последовательно и аккуратно добавим сначала недостающие теги ТС, а потом ТИ. Дальше приводится один из многочисленных возможных способов.

Выделим строки тегов ТС (строки 3-18) и скопируем в буфер обмена (комбинацией клавиш Ctrl-C)

Выделим строку 19 и, кликнув правой клавишей мыши, выбираем пункт “Вставить скопированные ячейки”

Страница 48 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Должны появиться строки тегов устройства AS3-A4, автоматически заполненные корректными значениями (в том числе, и идентификаторами)

Страница 49 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Проделаем похожую операцию со строками ТИ (строки 35-44) для добавления тегов еще одного устройства ТИ (ЭНИП 2)
После успешного добавления переименуем лист qqqTags_hwTopShUP обратно в Tags_hwTopShUP, так как теперь на этом листе все значения в ячейках корректны.

Страница 50 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 21. Создаем лист тегов устройства верхнего уровня роутера primer-imx-ml (в канале с драйвером IEC101 в режиме Server)

Важное пояснение 17.


В текущем примере “конечными потребителями тегов” являются ШУП и сервер РДУ.
ШУП является устройством верхнего уровня для роутера primer-imx-ml. Тут простое и понятное конфигурирование (см. шаг 20).
А вот сервер РДУ является устройством верхнего уровня для другого роутера (primer-imx-mw).
При этом в конфигураторе нет никакой информации о параметрах тегов, предаваемых с роутера primer-imx-ml на роутер primer-imx-mw.
Ведь перечень сигналов содержит информацию только для конечных устройств.

Между роутерами primer-imx-ml и primer-imx-mw согласно структурной схеме заложен канал с протоколом IEC101.
Это означает, что нельзя (в данной версии конфигуратора) применить автоматическое создание списка тегов для устройством верхнего уровня роутера primer-imx-ml
(в канале с драйвером IEC101), так как теги устройств нижнего уровня не имеют типы данных для протокола IEC101 и необходимо где-то прописать новые типы данных тегов.
Например, тип Bool должен будет преобразовываться в тип SinglePoint.
Всё осложняется еще и тем, что уже заданы параметры тегов (адреса, типы данных и т.п.) устройства верхнего уровня роутера primer-imx-mw (драйвер IEC104).

Выход из этой ситуации предлагается следующий (воспользуемся тем, что протоколы IEC101 и IEC104 одинаковы в части параметрирования тегов):
 создать и откорректировать лист тегов устройства верхнего уровня роутера primer-imx-ml (драйвер IEC101);
 далее сделать копию в лист тегов устройства верхнего уровня роутера primer-imx-mw (драйвер IEC104);
 откорректировать лист тегов устройства верхнего уровня роутера primer-imx-mw (драйвер IEC104).
Всё это будет проделано ниже.

Перейдем на лист qqqTags_hwTop104 и переименуем его в Tags_hwTop101.

Страница 51 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Дополним содержимое листа до полного набора тегов устройств нижнего уровня (за исключением тегов модуля ТУ, так они не участвуют в обмене данными согласно формуляру).

Важное пояснение 18.


Теги, у которых в поле Address стоит значение “-1” игнорируются программой роутера.

Важное пояснение 19.


Поле Multiplier у тегов ТС с типом TypeDoblePoint автоматически заполняется формулой для вычисления двухэлементной информации.

Страница 52 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 22. Создаем лист тегов устройства верхнего уровня роутера primer-imx-mw (в канале с драйвером IEC104 в режиме Server)

Создадим лист Tags_hwTop104 как копию листа Tags_hwTop101 (пример такого создания см. в шаге 16).
И поместим его за листом TagDescriptions (можно это сделать после копирования или во время его).

Важное пояснение 20.


Значения идентификаторов на листе Tags_hwTop101 заполняются автоматически по ссылкам на ячейки листа TagDescriptions.
После копирования созданный лист Tags_hwTop104 содержит такие же ссылки и это некорректно.

Для исправления ситуации необходимо сделать следующее (ниже описан один из возможных способов):
 переименовать лист TagDescriptions в TagDescriptions-ML (обозначив таким образом принадлежность к роутеру primer-imx-ml)
 проконтролировать изменение ссылок на листе Tags_hwTop101 (для этого выделить любую заполненную ячейку столбца ID и посмотреть на формулу)
 создать лист TagDescriptions-MW как копию TagDescriptions-ML (обозначив таким образом принадлежность к роутеру primer-imx-mw)
 изменить ссылку в ячейке L3 листа Tags_hwTop104, поменяв символы ML на MW

 далее на листе Tags_hwTop104 скопировать (или растянуть с копированием) ячейку L3 во все ячейки столбца L (ID)
 на листе Tags_hwTop104 удалить формулы в ячейках S3-S34 (то есть у тегов ТС), чтобы исключить повторное вычисление двухэлементной
информации (удаление производится выделением ячеек и нажатие клавиши Delete).

Важное пояснение 21.


Естественно необходимо не забыть потом заполнить лист TagDescriptions-MW копией содержимого файла TagDescriptions.ini роутера primer-imx-mw.
Файла TagDescriptions.ini роутера primer-imx-mw пока не существует, но на данном шаге содержимое листов Tags_hwTop104 и TagDescriptions-MW корректно, так они
являются копией листов с корректным содержимым.

Страница 53 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

Шаг 23. Корректируем лист устройства верхнего уровня роутера primer-imx-ml (в канале с драйвером IEC101 в режиме Server)

Перейдем на лист qqqDevice_IEC101S_DDD.ini (переименуем его в Device_IEC101S_DDD.ini)

Обращаем внимание на служебные слова в строке 2.


В ячейке G2 написано create. В ячейке Y2 написано SimpleOnlyTagFile.
В соответствии с Важнейшим пояснением 2 этим определяется способ создания файлов тегов устройств при генерации
Лист Служебное слово Назначение
Device_*_DDD*.ini create Теги устройств, конфигурируемых на этом листе, имеют свои уникальные листы Tags_hw*

Device_*_DDD*.ini SimpleOnlyTagFile Ниже следуют редактируемые ячейки с путем к файлам тегов, имеющих уникальные листы Tags_hw*

На данном листе выбран именно этот способ создания файлов тегов, так как существует уникальный лист тегов устройства Top101.

Контролируем значение ячейки Y3 (там прописан путь к временному файлу со списком тегов устройства Top101).
Обычно значение ячеек столбца Y (SimpleOnlyTagFile) заполняется автоматически, но на следующем шаге будет показано, что значение иногда необходимо задавать вручную.

Страница 54 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 24. Корректируем лист устройства нижнего уровня роутера primer-imx-mw (в канале с драйвером IEC101 в режиме Master)

Перейдем на лист qqqDevice_IEC101M_DDD.ini (переименуем его в Device_IEC101M_DDD.ini)

Изменяем название роутера


Примерная (IMX‐MW)  primer‐imx‐mw 

Важное пояснение 22.


Как уже отмечалось выше (в шаге 21), изначально отсутствовала информация о данных и их типах при обмене между двумя роутерами.
В шаге 21 было предложено решение (одно из возможных, но, как кажется, самое оптимальное) сформировать данные уже в роутере primer-imx-ml.
Сформировать в прямом смысле – вычислить значения, изменить типы данных.
И далее после передачи в роутер primer-imx-mw без всяких изменений передать на устройство верхнего уровня (сервер РДУ).
Теги устройства верхнего уровня описаны на соответствующем листе тегов (Tags_hwTop104).

Единственное, чего не хватает на данный момент в роутере primer-imx-mw – это списка тегов для устройства нижнего уровня роутера primer-imx-mw.
На самом деле, в силу принятого решения, этот список уже есть – это список тегов устройства верхнего уровня роутера primer-imx-ml.
Прописываем корректную ссылку на это список в ячейку столбца Y (SimpleOnlyTagFile) листа Device_IEC101M_DDD.ini.

PRIMER-IMX-ML/Channels/Devices/Tags/OnlyTags_Top101

Страница 55 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Также контролируем значения в ячейках столбцов Z (Server_Level должен быть 2, это уровень роутера primer-imx-mw) и AA (Channel_Level должен быть Bottom).

Далее исправляем уникальное название пары “канал-устройство” в ячейке столбца АС, которое используется для автоматического заполнения списка устройств на листе канала
верхнего уровня роутера primer-imx-ml (см. последний абзац шага 11).

Перейдем на лист Channel_IEC101M_CCC.ini и убедимся, что теперь путь к файлу устройства канала прописан

Страница 56 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 25. Добавляем лист web-устройства среднего уровня роутера primer-imx-mw

Создадим лист Device_HTTP_DDD_MW.ini как копию листа Device_HTTP_DDD.ini (пример такого создания см. в шаге 16).
А лист Device_HTTP_DDD.ini переименуем для порядка в Device_HTTP_DDD_ML.ini

Изменяем название роутера


Примерная (IMX‐MW)  primer‐imx‐mw 

Далее исправим название листа в столбце Y (CombineList)


Для роутера primer-imx-mw лист устройств нижнего уровня – это Device_IEC101M_DDD.ini
.

Также контролируем значения в ячейках столбцов Z (Server_Level должен быть 2, это уровень роутера primer-imx-mw) и AA (Channel_Level должен быть Middle).

Страница 57 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
Шаг 26. Корректируем лист устройства верхнего уровня роутера primer-imx-mw (в канале с драйвером IEC104 в режиме Server)

Перейдем на лист Device_IEC104S_DDD_to_RDU.ini

Изменяем название роутера


Примерная (IMX‐MW)  primer‐imx‐mw 

Также контролируем значения в ячейках столбцов Z (Server_Level должен быть 2, это уровень роутера primer-imx-mw) и AA (Channel_Level должен быть Top).

Страница 58 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 
На этом листе вроде всё правильно - название устройства, путь к файлу тегов, ссылка на список тегов.
Но оказывается, что есть нестыковка с листом Channel_IEC104S_CCC.ini, ведь там указан путь к файлу устройства Top104RDU, а здесь описано устройство Top104

Выход прост – переименуем устройство в Top104RDU. Автоматически изменятся пути в к файлу и списку тегов.

После всего этого естественно надо переименовать лист тегов устройства в Tags_hwTop104RDU

Страница 59 
 
НИИЭФА‐ЭНЕРГО 2018г. 
 

Шаг 27. Финальная генерация

Этап 1. Заполним лист TagDescriptions-MW Этап 2. Финальная генерация конфигурационных файлов

Генерацию произведем в два этапа, так как необходимо перед финальной Удаляем целиком четыре папки
генерацией заполнить лист TagDescriptions-MW копией содержимого файла All_OnlyTags_hwX
TagDescriptions.ini роутера primer-imx-mw (см. Важное пояснение 21). All_Tags_hwX
Project
Удаляем целиком четыре папки TemporaryFiles
All_OnlyTags_hwX
All_Tags_hwX Запускаем макрос генерации.
Project Ждем появление окна успешного окончания генерации.
TemporaryFiles

Запускаем макрос генерации.


Если всё до сих пор делалось в точном соответствии с руководством, то итогом
выполнения макроса будет появление окна успешного окончания генерации.

Сохраняем файл конфигуратора под новым именем.

for_ini_generate mv12 --- ТП Примерная (перечень v2) 002.xlsm

Скопируем на лист TagDescriptions-MW копию списка тегов файла


TagDescriptions.ini роутера primer-imx-mw. (как правильно копировать см. в шаге 20) Важное пояснение 23.
На листе Router.ini ячейки столбца D автоматически заполнятся
Файл TagDescriptions.ini находится в следующей папке значением текущей версии конфигурации
\Project\PRIMER-IMX-MW
Еще больше секретов успешного конфигурирования в книге
Если перейти на лист Tags_hwTop104RDU, то можно заметить, что все “Конфигурирование роутера для профессионалов”
идентификаторы стали недостоверными. Так произошло потому, что у тегов
роутера primer-imx-mw в названии группы тега добавляется название устройства-
источника тега (в данном случае это iMX-ML.Top101). Есть два варианта исправления
ситуации.

Вариант 1. Исправляем название группы тегов в столбце K.

Скопируем на листе TagDescriptions-MW ячейки столбца K у нужных тегов


и вставим на листе Tags_hwTop104RDU и убеждаемся, что все идентификаторы
заполнены достоверными значениями.

Вариант 2. Исправляем формулу в ячейке L3 (добавляем “iMX-ML.Top101.”)

=ВПР(СЦЕПИТЬ(J3;".iMX-ML.Top101.";K3);'TagDescriptions-MW'!A3:AF2000;12;0)

Растягиваем с копированием ячейку L3 на остальные ячейки столбца L и


убеждаемся, что все идентификаторы заполнены достоверными значениями.

Страница 60 
 

Вам также может понравиться